Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chapters.Chap03.section12_part2

noncomputable def fenchelConjugate (n : ) (f : (Fin n)EReal) :
(Fin n)EReal

Defn 12.2: The conjugate f* of a function f on ℝ^n is the function on ℝ^n defined by f*(x*) = sup_x (⟪x, x*⟫ - f x) = - inf_x (f x - ⟪x, x*⟫).

Equations
Instances For
    theorem fenchelConjugate_antitone (n : ) :
    Antitone fun (f : (Fin n)EReal) => fenchelConjugate n f

    Text 12.2.1: If f₁ and f₂ are functions on ℝ^n satisfying f₁ x ≤ f₂ x for every x, then their conjugates satisfy the reverse inequality: f₁*(x*) ≥ f₂*(x*) for every x*.

    theorem fenchelConjugate_eq_iSup (n : ) (f : (Fin n)EReal) (xStar : Fin n) :
    fenchelConjugate n f xStar = ⨆ (x : Fin n), ↑(x ⬝ᵥ xStar) - f x

    fenchelConjugate rewritten as a pointwise iSup (over Set.range).

    theorem continuous_dotProduct_const {n : } (x : Fin n) :
    Continuous fun (xStar : Fin n) => x ⬝ᵥ xStar

    The dot product with a fixed vector is continuous.

    theorem lowerSemicontinuous_dotProduct_sub_const {n : } (x : Fin n) (c : EReal) :
    LowerSemicontinuous fun (xStar : Fin n) => ↑(x ⬝ᵥ xStar) - c

    Lower semicontinuity of the affine pieces xStar ↦ ⟪x, xStar⟫ - c used in fenchelConjugate.

    theorem fenchelConjugate_le_coe_iff_affine_le (n : ) (f : (Fin n)EReal) (b : Fin n) (μ : ) :
    fenchelConjugate n f b μ ∀ (x : Fin n), ↑(x ⬝ᵥ b - μ) f x

    f*(b) ≤ μ iff the affine function x ↦ ⟪x,b⟫ - μ is pointwise below f.

    theorem affineMap_exists_dotProduct_sub {n : } (h : (Fin n) →ᵃ[] ) :
    ∃ (b : Fin n) (β : ), ∀ (x : Fin n), h x = x ⬝ᵥ b - β

    Any affine map h : ℝ^n → ℝ can be written as x ↦ ⟪x,b⟫ - β.

    theorem clConv_le (n : ) (f : (Fin n)EReal) :
    clConv n f f

    clConv n f is pointwise bounded above by f.

    theorem affine_le_clConv (n : ) (f : (Fin n)EReal) (h : (Fin n) →ᵃ[] ) (hh : ∀ (y : Fin n), (h y) f y) (x : Fin n) :
    (h x) clConv n f x

    Any affine minorant of f is pointwise below clConv n f.

    theorem EReal.eq_of_forall_le_coe_iff {a b : EReal} (h : ∀ (μ : ), a μ b μ) :
    a = b

    Two EReal values are equal if they have the same real upper bounds.

    The Fenchel conjugate is always closed and convex.

    theorem sub_eq_sSup_image_sub_of_le (x : ) (a : EReal) :
    x - a = sSup ((fun (β : ) => ↑(x - β)) '' {β : | a β})

    For a real x and a : EReal, x - a is the supremum of x - β over real β with a ≤ β.

    The Fenchel biconjugate coincides with clConv.

    theorem fenchelConjugate_clConv_eq (n : ) (f : (Fin n)EReal) :

    The conjugate of clConv agrees with the conjugate.

    theorem clConv_eq_const_top_of_forall_eq_top {n : } (f : (Fin n)EReal) (hf : ∀ (x : Fin n), f x = ) :
    clConv n f = fun (x : Fin n) =>

    If f is identically , then clConv n f is identically .

    A proper convex function has a proper Fenchel conjugate.

    Properness is preserved by Fenchel conjugation (for convex functions).

    Theorem 12.2. Let f be a convex function. Then its conjugate f* (here represented by fenchelConjugate n f) is a closed convex function, and it is proper if and only if f is proper. Moreover, the conjugate of the closure equals the conjugate, and the biconjugate equals the closure: (cl f)^* = f^* and f^{**} = cl f (here cl f is represented by clConv n f).

    Lower semicontinuity implies closedness of the book's epigraph epigraph univ f.

    theorem exists_affineMap_strictly_above_below_point_ereal {n : } {f : (Fin n)EReal} (hf_closed : LowerSemicontinuous f) (hf_proper : ProperConvexFunctionOn Set.univ f) (x0 : Fin n) (μ0 : ) :
    μ0 < f x0∃ (h : (Fin n) →ᵃ[] ), (∀ (y : Fin n), (h y) f y) μ0 < h x0

    Supporting affine minorant for a closed proper convex EReal-valued function: if (μ0 : EReal) < f x0, then there is an affine h with h ≤ f and μ0 < h x0.

    theorem clConv_eq_of_closedProperConvex {n : } {f : (Fin n)EReal} (hf_closed : LowerSemicontinuous f) (hf_proper : ProperConvexFunctionOn Set.univ f) :
    clConv n f = f

    A closed proper convex function agrees with its clConv envelope.