Samplinglib
Lean gate not recorded for this source state main · 0e31a3cda412
ASTIS mathematical exposition

The negative logarithm is a convex potential

AutoSamplingTheory.TechnicalLemmas.Geometry.LogConcavity.LogConcaveOn.convexOn_neg_log · theorem · Teaching coverage

Statement

Let E be a real module and f:E→ℝ positive log-concave on s⊆E. Then V(x)=−log f(x) is convex on s.

\[\operatorname{LC}_s(f)\Longrightarrow \operatorname{Convex}_s(V),\qquad V=-\log f,\quad V(ax+by)\le aV(x)+bV(y).\]

All objects and hypotheses

  • E : Type* with [AddCommMonoid E] and [Module ℝ E]. These are the exact algebraic ambient structures; no topology, norm, measure or finite-dimensionality is assumed.
  • s : Set E, f : E → ℝ, hf : LogConcaveOn s f.
  • {'term': 'Positive log-concavity', 'text': 'LC_s(f) means strict positivity of f at every point of s and concavity of log f on the convex domain s. No zero-valued points are included in this convention.', 'formula': '\\operatorname{LC}_s(f)\\iff(\\forall x\\in s,\\ f(x)>0)\\land\\operatorname{Concave}_s(\\log f).'}
  • {'term': 'Convex combinations and Jensen inequalities', 'text': 'Throughout, x,y lie in the stated domain; λ,θ are nonnegative real weights with λ+θ=1. The Lean code often names these weights a,b, independently of the a,b coefficients in specialized potentials.', 'formula': 'z=\\lambda x+\\theta y,\\quad \\lambda,\\theta\\ge0,\\quad\\lambda+\\theta=1;\\qquad V(z)\\le\\lambda V(x)+\\theta V(y)\\text{ for convex }V.'}
  • {'term': 'Geometry, not probability normalization', 'text': 'The module proves shapes and convexity properties of real-valued functions. It has no reference measure in its declarations. In particular, names containing normalized_density do not themselves prove normalization, and the quadratic prefactor is not certified as the integral of an arbitrary norm-based shape.', 'formula': '\\operatorname{LC}(Z^{-1}e^{-V})\\quad\\text{does not assert}\\quad Z=\\int e^{-V}\\,d\\mu\\quad\\text{or}\\quad \\int Z^{-1}e^{-V}\\,d\\mu=1.'}

Mathematical proof

1. Read the concavity inequality

Positive log-concavity supplies convexity of s and the lower bound on log f at a convex combination.

\[a\log f(x)+b\log f(y)\le\log f(ax+by).\]
Corresponding Lean step

hf.concaveOn_log

The identifiers refer to the assumptions or previously proved facts described in this step; the full original proof below supplies their exact context.

2. Negate the inequality

Multiplication by −1 reverses the inequality, giving the convexity inequality for −log f on the same convex domain. Mathlib packages this exact sign reversal.

\[-\log f(ax+by)\le a[-\log f(x)]+b[-\log f(y)].\]
Corresponding Lean step
change ConvexOn ℝ s (-(fun x => Real.log (f x)))
exact hf.concaveOn_log.neg

Negation reverses the inequality and exchanges convexity with concavity.

Lean statement · convexOn_neg_log

Braces name inputs Lean can infer, and bracketed classes state the ambient structures listed above. The assumptions before the final colon are inputs; the expression after it is the exact property this declaration establishes. The minus sign outside a function is pointwise negation. The .neg theorem changes concavity into convexity by reversing its inequality.

Braces mark parameters Lean can infer; square brackets request structures such as a measurable space or probability measure. Named hypotheses are mathematical premises, not facts established by this declaration. Section parameters are described in the mathematical hypotheses above; the module link retains their exact source context.

theorem LogConcaveOn.convexOn_neg_log {E : Type*} [AddCommMonoid E] [Module ℝ E]
    {s : Set E} {f : E → ℝ}
    (hf : LogConcaveOn s f) :
    ConvexOn ℝ s (fun x => - Real.log (f x))

Exact module and namespace context

Lean proof · convexOn_neg_log

The minus sign outside a function is pointwise negation. The .neg theorem changes concavity into convexity by reversing its inequality.

Braces mark parameters Lean can infer; square brackets request structures such as a measurable space or probability measure. Named hypotheses are mathematical premises, not facts established by this declaration. Section parameters are described in the mathematical hypotheses above; the module link retains their exact source context.

theorem LogConcaveOn.convexOn_neg_log {E : Type*} [AddCommMonoid E] [Module ℝ E]
    {s : Set E} {f : E → ℝ}
    (hf : LogConcaveOn s f) :
    ConvexOn ℝ s (fun x => - Real.log (f x)) := by
  change ConvexOn ℝ s (-(fun x => Real.log (f x)))
  exact hf.concaveOn_log.neg

/-- Sublevel sets of the negative-log potential of a positive log-concave
function are convex. -/

Exact module and namespace context

Scope and omitted-condition boundaries

  • Potential convexity only; no differentiability, strong convexity, normalizing integral or measure is supplied.
  • This documentation adds no Lean theorem, compilation evidence, source-equivalence verdict, or new source-fidelity certification.

Source and reuse

ASTIS parents called

Mathlib API called (external library)

  • ConcaveOn.neg

Mathematical sources

ASTIS prose is not a quotation or a source-equivalence certificate. Definitions and aliases are explained as constructions, not counted as new mathematical proofs.