Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chapters.Chap03.section13_part10

For any f : ℝ^n → (-∞, +∞], the direction of affineSpan (dom f) has finrank at most n.

theorem section13_rank_eq_rank_fenchelConjugate {n : } {f : (Fin n)EReal} (hf_closed : ClosedConvexFunction f) (hf_proper : ProperConvexFunctionOn Set.univ f) :

The book-defined rank dim(aff(dom f)) - lin(f) is invariant under Fenchel conjugation.

theorem rank_eq_of_conjugate {n : } {f g : (Fin n)EReal} (hf_closed : ClosedConvexFunction f) (hf_proper : ProperConvexFunctionOn Set.univ f) (hg_closed : ClosedConvexFunction g) (hg_proper : ProperConvexFunctionOn Set.univ g) (hfg : fenchelConjugate n f = g) (hgf : fenchelConjugate n g = f) :
have rank := fun (h : (Fin n)EReal) => Module.finrank (affineSpan (effectiveDomain Set.univ h)).direction - Module.finrank (Submodule.span (linearitySpace h)); rank f = rank g

Corollary 13.4.1. Closed proper convex functions conjugate to each other have the same rank.

def section13_dotProductHyperplane {n : } (y : Fin n) (a : ) :

The affine hyperplane {x | ⟪y, x⟫ = a} as an AffineSubspace.

Equations
Instances For
    theorem section13_fenchelConjugate_eq_top_of_affineLine {n : } (f : (Fin n)EReal) {x y xStar : Fin n} {a b : } (hline : ∀ (t : ), f (x + t y) = ↑(a * t + b)) (hcoeff : y ⬝ᵥ xStar a) :

    If f is affine along a line, then its Fenchel conjugate is off the corresponding hyperplane in the dual variable.

    theorem section13_not_nonempty_interior_dom_fenchelConjugate_of_exists_affineLine {n : } (f : (Fin n)EReal) (hline : ∃ (x : Fin n) (y : Fin n), y 0 ∃ (a : ) (b : ), ∀ (t : ), f (x + t y) = ↑(a * t + b)) :

    If f is affine along a line with direction y ≠ 0, then dom (f*) has empty interior.

    Addition by a real constant as an order isomorphism on EReal.

    Equations
    Instances For
      theorem section13_sSup_image_add_right (c : ) (s : Set EReal) :
      sSup ((fun (z : EReal) => z + c) '' s) = sSup s + c

      sSup commutes with addition by a real constant on EReal.

      theorem section13_fenchelConjugate_translate_of_dotProduct_const {n : } (g : (Fin n)EReal) (hg_bot : ∀ (xStar : Fin n), g xStar ) {y : Fin n} {μ : } ( : xStareffectiveDomain Set.univ g, xStar ⬝ᵥ y = μ) (x : Fin n) (t : ) :
      fenchelConjugate n g (x + t y) = fenchelConjugate n g x + ↑(t * μ)

      If the dot product xStar ↦ ⟪xStar, y⟫ is constant on dom g, then fenchelConjugate n g is affine along the line x + t • y.

      For the book’s orthogonalComplement, one has Lᗮ = ⊤ iff L = ⊥.

      In finite dimension, the book orthogonal complement is involutive: (Lᗮ)ᗮ = L.

      If dom (f*) has empty interior, then linearitySpace f contains a nonzero direction.

      theorem section13_exists_affineLine_of_mem_linearitySpace {n : } (f : (Fin n)EReal) (hclosed : ClosedConvexFunction f) (hproper : ProperConvexFunctionOn Set.univ f) {y : Fin n} (hy0 : y 0) (hy : y linearitySpace f) :
      ∃ (x : Fin n) (y : Fin n), y 0 ∃ (a : ) (b : ), ∀ (t : ), f (x + t y) = ↑(a * t + b)

      A nonzero direction in linearitySpace f yields an affine line along which f is finite and affine.

      theorem effectiveDomain_fenchelConjugate_interior_nonempty_iff_not_exists_affineLine {n : } (f : (Fin n)EReal) (hclosed : ClosedConvexFunction f) (hproper : ProperConvexFunctionOn Set.univ f) :
      (interior (effectiveDomain Set.univ (fenchelConjugate n f))).Nonempty ¬∃ (x : Fin n) (y : Fin n), y 0 ∃ (a : ) (b : ), ∀ (t : ), f (x + t y) = ↑(a * t + b)

      Corollary 13.4.2. Let f be a closed proper convex function. Then dom f^* has a non-empty interior if and only if there are no lines along which f is (finite and) affine.

      Here f^* is the Fenchel conjugate fenchelConjugate n f, and dom f^* is its effective domain effectiveDomain univ (fenchelConjugate n f). The absence of a line along which f is finite and affine is expressed by the nonexistence of x and a nonzero direction y such that t ↦ f (x + t • y) agrees with an affine function of t.

      theorem section13_levelSet_eq_setOf_sub_dotProduct_sub_le_zero {n : } (h : (Fin n)EReal) (bStar : Fin n) (β : ) :
      {x : Fin n | h x β + ↑(x ⬝ᵥ bStar)} = {x : Fin n | h x - ↑(x ⬝ᵥ bStar) - β 0}

      Rewriting a dot-product level set as a ≤ 0 sublevel set by moving affine terms across the inequality in EReal.

      theorem section13_fenchelConjugate_sub_const {n : } (g : (Fin n)EReal) (β : ) :
      (fenchelConjugate n fun (x : Fin n) => g x - β) = fun (xStar : Fin n) => fenchelConjugate n g xStar + β

      Subtracting a real constant from the primal function adds that constant to its Fenchel conjugate.

      theorem levelSet_le_add_dotProduct_eq_setOf_sub_dotProduct_sub_le_zero_and_fenchelConjugate {n : } (h : (Fin n)EReal) (bStar : Fin n) (β : ) :
      have C := {x : Fin n | h x β + ↑(x ⬝ᵥ bStar)}; have f := fun (x : Fin n) => h x - ↑(x ⬝ᵥ bStar) - β; C = {x : Fin n | f x 0} ∀ (xStar : Fin n), fenchelConjugate n f xStar = fenchelConjugate n h (xStar + bStar) + β

      Text 13.4.3: Let h : ℝ^n → (-∞, +∞] be a proper convex function, let bStar ∈ ℝ^n, and let β ∈ ℝ. Define the level set C := {x | h x ≤ β + ⟪x, bStar⟫} and the shifted function f x := h x - ⟪x, bStar⟫ - β. Then C = {x | f x ≤ 0}. Moreover, the Fenchel conjugate of f satisfies f^*(xStar) = h^*(xStar + bStar) + β for all xStar ∈ ℝ^n.

      theorem section13_posHom_dotProduct {n : } (xStar : Fin n) :
      PositivelyHomogeneous fun (x : Fin n) => ↑(x ⬝ᵥ xStar)

      The linear functional x ↦ ⟪x, xStar⟫ is positively homogeneous when viewed as an EReal-valued function.

      theorem section13_convexFunctionOn_dotProduct {n : } (xStar : Fin n) :
      ConvexFunctionOn Set.univ fun (x : Fin n) => ↑(x ⬝ᵥ xStar)

      The linear functional x ↦ ⟪x, xStar⟫ is convex on ℝ^n (its epigraph is a half-space).

      theorem section13_setOf_forall_dotProduct_le_posHomGenerated_eq {n : } {f : (Fin n)EReal} (hf : ConvexFunctionOn Set.univ f) :
      have k := positivelyHomogeneousConvexFunctionGenerated f; {xStar : Fin n | ∀ (x : Fin n), ↑(x ⬝ᵥ xStar) k x} = {xStar : Fin n | ∀ (x : Fin n), ↑(x ⬝ᵥ xStar) f x}

      Majorants of the positively homogeneous hull coincide with majorants of the original convex function.

      The closed positively homogeneous hull of a closed proper convex function f is the support function of the polar set {xStar | f*(xStar) ≤ 0}.

      The support function of the 0-sublevel set of f is the closed positively homogeneous hull of f*.

      Theorem 13.5. Let f be a closed proper convex function. The support function of { x | f x ≤ 0 } is cl g, where g is the positively homogeneous convex function generated by f*. Dually, the closure of the positively homogeneous convex function k generated by f is the support function of { xStar | f*(xStar) ≤ 0 }.

      Here f* is the Fenchel conjugate fenchelConjugate n f; the support function is represented by supportFunctionEReal; the closure cl is represented by clConv n; and the positively homogeneous convex function generated by a function h is positivelyHomogeneousConvexFunctionGenerated h.