Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

(2.2) — Fenchel–Young inequality with its equality case

Proved
RockafellarMaxMono.Maximality.fenchel_young_eq_iff

by mikedeng1 · Sep 27, 2026 · Mathlib 0df444a (Lean v4.33.1)

convex-analysisconvex-conjugatep2o-batch-p100bp2o-gran-per-chapterp2o-plan-paperp2o-v1

Let VVV be a real Banach space with dual V∗V^*V∗, and let fff be a lower semicontinuous proper convex function on VVV with conjugate f∗f^*f∗. Then for every x∈Vx \in Vx∈V and x∗∈V∗x^* \in V^*x∗∈V∗,

f(x)+f∗(x∗) ≥ ⟨x,x∗⟩,f(x) + f^*(x^*) \ \ge\ \langle x, x^* \rangle ,f(x)+f∗(x∗) ≥ ⟨x,x∗⟩,

with equality if and only if x∗∈∂f(x)x^* \in \partial f(x)x∗∈∂f(x).

This is display (2.2) of the paper. Applied with V=E∗V = E^*V=E∗ and f∗f^*f∗ in place of fff it also gives display (2.4), which relates f∗∗f^{**}f∗∗, f∗f^*f∗ and ∂f∗\partial f^*∂f∗; both are used to pass between subgradients and equality in the Fenchel–Young inequality.

Formalization Note The paper writes f(x)+f∗(x∗)−⟨x,x∗⟩≥0f(x) + f^*(x^*) - \langle x, x^*\rangle \ge 0f(x)+f∗(x∗)−⟨x,x∗⟩≥0; we state the equivalent form with the pairing on the other side, so that no extended-real subtraction appears. The space is an arbitrary real Banach space VVV (the paper's EEE), so that the statement applies to E∗E^*E∗ as well.

Preamble
import Mathlib
import Definitions.Def_RockafellarMaxMono_Shared_ProperConvex
import Definitions.Def_RockafellarMaxMono_Shared_Subdiff
import Definitions.Def_RockafellarMaxMono_Shared_Conj
Formal statement
namespace RockafellarMaxMono.Maximality

theorem fenchel_young_eq_iff {V : Type*} [NormedAddCommGroup V] [NormedSpace ℝ V]
    [CompleteSpace V] (f : V → EReal) (hf : Shared.ProperConvex f) (hlsc : LowerSemicontinuous f) :
    ∀ (x : V) (x' : StrongDual ℝ V),
      ((x' x : ℝ) : EReal) ≤ f x + Shared.conj f x' ∧
        (f x + Shared.conj f x' = ((x' x : ℝ) : EReal) ↔ x' ∈ Shared.subdiff f x) := by sorry

end RockafellarMaxMono.Maximality
Source
Rockafellar, On the maximal monotonicity of subdifferential mappings, Pacific J. Math. 33 (1970), p. 210, (2.2)
Read-back

What the Lean code literally says, in plain math · claude-opus-5-5

Setting. VVV is a real Banach space (a complete normed space) and V∗V^*V∗ is its continuous dual. The function f:V→R‾f : V \to \overline{\mathbb{R}}f:V→R takes values in the extended reals R‾=[−∞,+∞]\overline{\mathbb{R}} = [-\infty, +\infty]R=[−∞,+∞]. There are two hypotheses on fff:

  • fff satisfies the predicate Shared.ProperConvex, an imported definition not shown in this declaration's text. The name suggests "proper convex function", but its exact conditions cannot be unfolded here.
  • fff is lower semicontinuous on VVV with the norm topology.

Two more imported operations appear, also not shown here:

  • f∗(x∗)f^*(x^*)f∗(x∗) stands for Shared.conj f at x∗∈V∗x^* \in V^*x∗∈V∗. The name suggests the Fenchel conjugate sup⁡x (x∗(x)−f(x))\sup_x \,(x^*(x) - f(x))supx​(x∗(x)−f(x)).
  • ∂f(x)⊆V∗\partial f(x) \subseteq V^*∂f(x)⊆V∗ stands for Shared.subdiff f at xxx. The name suggests the subdifferential.

Claim. For every x∈Vx \in Vx∈V and every x∗∈V∗x^* \in V^*x∗∈V∗, both of the following hold:

x∗(x)  ≤  f(x)+f∗(x∗)in R‾,x^*(x) \;\le\; f(x) + f^*(x^*) \quad \text{in } \overline{\mathbb{R}},x∗(x)≤f(x)+f∗(x∗)in R, f(x)+f∗(x∗)=x∗(x)  ⟺  x∗∈∂f(x).f(x) + f^*(x^*) = x^*(x) \iff x^* \in \partial f(x).f(x)+f∗(x∗)=x∗(x)⟺x∗∈∂f(x).

Here x∗(x)x^*(x)x∗(x) is a real number, viewed as an extended real.

Degenerate cases. The sum is extended-real addition, with the convention (−∞)+(+∞)=(+∞)+(−∞)=−∞(-\infty) + (+\infty) = (+\infty) + (-\infty) = -\infty(−∞)+(+∞)=(+∞)+(−∞)=−∞. So if f(x)f(x)f(x) and f∗(x∗)f^*(x^*)f∗(x∗) were infinite with opposite signs, the sum would be −∞-\infty−∞, and the inequality would require x∗(x)≤−∞x^*(x) \le -\inftyx∗(x)≤−∞. That is false. Whether properness excludes this case depends on the unseen definitions. If f(x)=+∞f(x) = +\inftyf(x)=+∞ and f∗(x∗)>−∞f^*(x^*) > -\inftyf∗(x∗)>−∞, the inequality holds trivially. In that case the equation is false, so the claim says x∗∉∂f(x)x^* \notin \partial f(x)x∗∈/∂f(x). If V={0}V = \{0\}V={0}, then x∗=0x^* = 0x∗=0 and x∗(x)=0x^*(x) = 0x∗(x)=0, and the claim reduces to 0≤f(0)+f∗(0)0 \le f(0) + f^*(0)0≤f(0)+f∗(0), with equality exactly when 0∈∂f(0)0 \in \partial f(0)0∈∂f(0).

Human review
  • Endorsed by Shuze Chen · Sep 27, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Sep 27, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me