Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chapters.Chap04.section19_part8

theorem helperForTheorem_19_2_extractFiniteRepresentation {n : } {f : (Fin n)EReal} (hfpoly : IsPolyhedralConvexFunction n f) :
∃ (k : ) (m : ) (a : Fin mFin n) (α : Fin m), k m ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}

Helper for Theorem 19.2: extract a finite Text 19.0.10 representation from polyhedrality.

theorem helperForTheorem_19_2_kZero_forces_constTop {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hk0 : k = 0) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) (x : Fin n) :
f x =

Helper for Theorem 19.2: in a Text 19.0.10 representation, k = 0 forces f = ⊤.

theorem helperForTheorem_19_2_kZero_forces_constTop_and_conjugate_constNegInf {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hk0 : k = 0) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) :

Helper for Theorem 19.2: the degenerate k = 0 branch gives fenchelConjugate n f = constNegInf n.

Helper for Theorem 19.2: the constant -∞ function is polyhedral convex.

theorem helperForTheorem_19_2_existsPointIndex_of_posK {k m : } (hkpos : 0 < k) (hk : k m) :
∃ (i0 : Fin m), i0 < k

Helper for Theorem 19.2: positivity of k and k ≤ m provides a point-index below k.

theorem helperForTheorem_19_2_value_le_of_feasibleCoefficients {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) {x : Fin n} {lam : Fin m} (hlin : ∀ (j : Fin n), i : Fin m, lam i * a i j = x j) (hnorm : i : Fin m with i < k, lam i = 1) (hnonneg : ∀ (i : Fin m), 0 lam i) :
f x (∑ i : Fin m, lam i * α i)

Helper for Theorem 19.2: any feasible coefficient vector gives an upper bound on the represented function value.

theorem helperForTheorem_19_2_generatorValue_le_alpha {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) (i : Fin m) (hi : i < k) :
f (a i) (α i)

Helper for Theorem 19.2: each point-generator value is bounded above by its coefficient value.

theorem helperForTheorem_19_2_pointBounds_of_conjugateLe {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) {xStar : Fin n} {μ : } (hconj : fenchelConjugate n f xStar μ) (i : Fin m) :
i < ka i ⬝ᵥ xStar - α i μ

Helper for Theorem 19.2: a finite upper bound on the conjugate yields the point-generator inequalities.

theorem helperForTheorem_19_2_finiteBounds_of_conjugateLe {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) {xStar : Fin n} {μ : } (hconj : fenchelConjugate n f xStar μ) :
(∀ (i : Fin m), i < ka i ⬝ᵥ xStar - α i μ) ∀ (i : Fin m), k ia i ⬝ᵥ xStar - α i 0

Helper for Theorem 19.2: finite conjugate sublevel bounds imply the two finite generator inequality families (point and direction).

theorem helperForTheorem_19_2_conjugateLe_of_finiteBounds {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) {xStar : Fin n} {μ : } (hpoint : ∀ (i : Fin m), i < ka i ⬝ᵥ xStar - α i μ) (hdir : ∀ (i : Fin m), k ia i ⬝ᵥ xStar - α i 0) :
fenchelConjugate n f xStar μ

Helper for Theorem 19.2: finite point and direction generator bounds imply the corresponding finite upper bound for the conjugate.

theorem helperForTheorem_19_2_conjugate_le_iff_finiteGeneratorBounds {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) {xStar : Fin n} {μ : } :
fenchelConjugate n f xStar μ (∀ (i : Fin m), i < ka i ⬝ᵥ xStar - α i μ) ∀ (i : Fin m), k ia i ⬝ᵥ xStar - α i 0

Helper for Theorem 19.2: conjugate sublevel membership is equivalent to the two finite generator-bound families.

theorem helperForTheorem_19_2_memTransformedEpigraphCoord_iff_bounds {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) (y : Fin (n + 1)) :
y (fun (p : (Fin n) × ) => (prodLinearEquiv_append_coord n) p) '' epigraph Set.univ (fenchelConjugate n f) (∀ (i : Fin m), i < ka i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i ((prodLinearEquiv_append_coord n).symm y).2) ∀ (i : Fin m), k ia i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i 0

Helper for Theorem 19.2: transformed-epigraph membership is equivalent to the finite generator-bound families at the pulled-back pair coordinates.

Helper for Theorem 19.2: packed-coordinate dot products with (a i, -1) decode to the affine expression dotProduct (a i) x - μ.

Helper for Theorem 19.2: the last packed coordinate is the appended scalar.

Helper for Theorem 19.2: dot product in packed coordinates splits into the base dot product plus the product of appended scalar coordinates.

theorem helperForTheorem_19_2_dotPacked_point {n m : } {a : Fin mFin n} (i : Fin m) (y : Fin (n + 1)) :

Helper for Theorem 19.2: packed-coordinate dot products with (a i, -1) decode to the affine expression dotProduct (a i) x - μ.

theorem helperForTheorem_19_2_dotPacked_direction {n m : } {a : Fin mFin n} (i : Fin m) (y : Fin (n + 1)) :

Helper for Theorem 19.2: packed-coordinate dot products with (a i, 0) decode to dotProduct (a i) x.

theorem helperForTheorem_19_2_pointBoundsCoord_polyhedral {n k m : } {a : Fin mFin n} {α : Fin m} :
IsPolyhedralConvexSet (n + 1) {y : Fin (n + 1) | ∀ (i : Fin m), i < ka i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i ((prodLinearEquiv_append_coord n).symm y).2}

Helper for Theorem 19.2: the point-generator bound family in transformed coordinates is a polyhedral convex set.

theorem helperForTheorem_19_2_directionBoundsCoord_polyhedral {n k m : } {a : Fin mFin n} {α : Fin m} :
IsPolyhedralConvexSet (n + 1) {y : Fin (n + 1) | ∀ (i : Fin m), k ia i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i 0}

Helper for Theorem 19.2: the direction-generator bound family in transformed coordinates is a polyhedral convex set.

theorem helperForTheorem_19_2_transformedEpigraphCoord_eq_pointDirInter {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) :
(fun (p : (Fin n) × ) => (prodLinearEquiv_append_coord n) p) '' epigraph Set.univ (fenchelConjugate n f) = {y : Fin (n + 1) | ∀ (i : Fin m), i < ka i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i ((prodLinearEquiv_append_coord n).symm y).2} {y : Fin (n + 1) | ∀ (i : Fin m), k ia i ⬝ᵥ ((prodLinearEquiv_append_coord n).symm y).1 - α i 0}

Helper for Theorem 19.2: the transformed epigraph of the conjugate equals the intersection of the point- and direction-bound coordinate sets.

theorem helperForTheorem_19_2_polyhedralTransformedEpigraph_of_conjugate {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) :

Helper for Theorem 19.2: in the nondegenerate branch, the transformed epigraph of the conjugate is polyhedral.

theorem helperForTheorem_19_2_nondegenerate_branch_polyhedralConjugate {n k m : } {f : (Fin n)EReal} {a : Fin mFin n} {α : Fin m} (hkpos : 0 < k) (hk : k m) (hrepr : ∀ (x : Fin n), f x = sInf {r : EReal | ∃ (lam : Fin m), (∀ (j : Fin n), i : Fin m, lam i * a i j = x j) i : Fin m with i < k, lam i = 1 (∀ (i : Fin m), 0 lam i) r = (∑ i : Fin m, lam i * α i)}) :

Helper for Theorem 19.2: the nondegenerate representation branch (0 < k) already yields polyhedrality of the Fenchel conjugate.

Theorem 19.2: The conjugate of a polyhedral convex function is polyhedral.