Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chap03.section14_part9

A canonical bilinear pairing on triples (λ, x, μ) induced by a bilinear pairing p on E: ⟪(λ, x, μ), (λ★, x★, μ★)⟫ = λ * λ★ + p x x★ + μ * μ★.

Equations
    Instances For
      @[simp]
      theorem section14_triplePairing_apply {E : Type u_1} [AddCommGroup E] [Module E] (p : E →ₗ[] E →ₗ[] ) (z w : × E × ) :
      ((section14_triplePairing p) z) w = z.1 * w.1 + (p z.2.1) w.2.1 + z.2.2 * w.2.2
      @[simp]
      theorem section14_triplePairing_one_x_mu_negMuStar_xStar_negOne {E : Type u_1} [AddCommGroup E] [Module E] (p : E →ₗ[] E →ₗ[] ) (x xStar : E) (μ μStar : ) :
      ((section14_triplePairing p) (1, x, μ)) (-μStar, xStar, -1) = -μStar + (p x) xStar - μ
      theorem section14_fenchelConjugate_le_iff_forall {E : Type u_1} [AddCommGroup E] [Module E] {F : Type u_2} [AddCommGroup F] [Module F] (p : E →ₗ[] F →ₗ[] ) (f : EEReal) (xStar : F) (μStar : EReal) :
      fenchelConjugateBilin p f xStar μStar ∀ (x : E), ((p x) xStar) - f x μStar

      A pointwise reformulation of fenchelConjugateBilin p f x★ ≤ μ★.

      theorem section14_mem_dual_liftedEpigraphCone_slice_iff {E : Type u_1} [AddCommGroup E] [Module E] [TopologicalSpace E] {f : EEReal} (hf : ProperConvexERealFunction f) (p : E →ₗ[] E →ₗ[] ) (xStar : E) (μStar : ) :
      have q := section14_triplePairing p; have K := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) f x μ}); (-μStar, xStar, -1) (PointedCone.dual (-q) K) fenchelConjugateBilin p f xStar μStar

      Slice characterization for the lifted-epigraph cone (core of Theorem 14.4).

      Key inclusion for Theorem 14.3: any functional nonpositive on the closed cone generated by the 0-sublevel set {x | f x ≤ 0} lies in the closed cone generated by the 0-sublevel set of the Fenchel conjugate {φ | f* φ ≤ 0}.

      Theorem 14.3. Let f be a closed proper convex function such that f 0 > 0 > inf f. Then the closed convex cones generated by the sublevel sets {x | f x ≤ 0} and {x★ | f* x★ ≤ 0} are polar to each other, where f* denotes the Fenchel–Legendre conjugate of f with respect to the evaluation pairing.

      Coordinate involution used in Theorem 14.4: swapNeg (λ, x, μ) = (-μ, x, -λ).

      Equations
        Instances For
          @[simp]
          theorem section14_swapNegₗ_apply {E : Type u_1} [AddCommGroup E] [Module E] (z : × E × ) :
          (section14_swapNegₗ E) z = (-z.2.2, z.2.1, -z.1)

          The linear equivalence associated to section14_swapNegₗ.

          Equations
            Instances For
              @[simp]
              theorem section14_swapNeg_apply {E : Type u_1} [AddCommGroup E] [Module E] (z : × E × ) :
              (section14_swapNeg E) z = (-z.2.2, z.2.1, -z.1)
              @[simp]
              theorem section14_dual_liftedEpigraphCone_last_nonpos {E : Type u_1} [AddCommGroup E] [Module E] [TopologicalSpace E] {f : EEReal} (hf : ProperConvexERealFunction f) (p : E →ₗ[] E →ₗ[] ) :
              have q := section14_triplePairing p; have K := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) f x μ}); w(PointedCone.dual (-q) K), w.2.2 0

              Elements of the dual of the lifted-epigraph cone have nonpositive last coordinate.

              theorem section14_swapNeg_preimage_dual_subset_closure_Kstar {E : Type u_1} [AddCommGroup E] [Module E] [TopologicalSpace E] [IsTopologicalAddGroup E] [ContinuousSMul E] [T2Space E] [FiniteDimensional E] {f : EEReal} (hf : ProperConvexERealFunction f) (p : E →ₗ[] E →ₗ[] ) (hdom : ∃ (x0 : E) (μ0 : ), fenchelConjugateBilin p f x0 μ0) :
              have q := section14_triplePairing p; have K := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) f x μ}); have Kstar := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) fenchelConjugateBilin p f x μ}); {z : × E × | (section14_swapNeg E) z (PointedCone.dual (-q) K)} closure Kstar

              Cone-slicing reconstruction for the lifted-epigraph polar (reverse inclusion in Theorem 14.4).

              If swapNeg z lies in the polar of the lifted-epigraph cone, then z lies in the closure of the cone generated by the epigraph of the Fenchel conjugate.

              theorem closure_coneHull_liftedEpigraph_fenchelConjugate_eq_setOf_swapNeg_mem_dual {E : Type u_1} [AddCommGroup E] [Module E] [TopologicalSpace E] [IsTopologicalAddGroup E] [ContinuousSMul E] [T2Space E] [FiniteDimensional E] {f : EEReal} (hf : ProperConvexERealFunction f) (_hf_closed : LowerSemicontinuous f) (p : E →ₗ[] E →ₗ[] ) (q : × E × →ₗ[] × E × →ₗ[] ) (hq : q = section14_triplePairing p) :
              (∃ (x0 : E) (μ0 : ), fenchelConjugateBilin p f x0 μ0)have K := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) f x μ}); have Kstar := (ConvexCone.hull {z : × E × | ∃ (x : E) (μ : ), z = (1, x, μ) fenchelConjugateBilin p f x μ}); closure Kstar = {z : × E × | (-z.2.2, z.2.1, -z.1) (PointedCone.dual (-q) K)}

              Theorem 14.4. Let f be a closed proper convex function on ℝⁿ. Let K be the convex cone generated by points (1, x, μ) ∈ ℝ × ℝⁿ × ℝ such that μ ≥ f x, and let K★ be the convex cone generated by points (1, x★, μ★) such that μ★ ≥ f★ x★, where f★ is the Fenchel–Legendre conjugate of f. Then

              cl K★ = { (λ★, x★, μ★) | (-μ★, x★, -λ★) ∈ Kᵒ }.

              In this formalization, f★ is fenchelConjugateBilin p f for a chosen bilinear pairing p on E, and Kᵒ is modeled as PointedCone.dual (-q) K for a chosen bilinear pairing q on ℝ × E × ℝ.

              Sanity check for Theorem 14.5: mathlib's gauge is real-valued, so it cannot match a support function that can take the value (e.g. for C = {0}).