Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chapters.Chap02.section08_part3

theorem image_add_subset_of_add_mem {n : } {C : Set (EuclideanSpace (Fin n))} {y : EuclideanSpace (Fin n)} (h : xC, x + y C) :
(fun (x : EuclideanSpace (Fin n)) => x + y) '' C C

If every x ∈ C satisfies x + y ∈ C, then the translation of C by y stays in C.

theorem subset_image_add_of_sub_mem {n : } {C : Set (EuclideanSpace (Fin n))} {y : EuclideanSpace (Fin n)} (h : xC, x + -y C) :
C (fun (x : EuclideanSpace (Fin n)) => x + y) '' C

If every x ∈ C satisfies x - y ∈ C, then C is contained in its translation by y.

theorem add_mem_of_image_eq {n : } {C : Set (EuclideanSpace (Fin n))} {y : EuclideanSpace (Fin n)} (hEq : (fun (x : EuclideanSpace (Fin n)) => x + y) '' C = C) :
(∀ xC, x + y C) xC, x + -y C

If C is invariant under translation by y, then C is closed under adding y and -y.

theorem linealitySpace_eq_translation {n : } {C : Set (EuclideanSpace (Fin n))} (hCne : C.Nonempty) (hCconv : Convex C) :

Theorem 8.4.5. For any non-empty convex set C, the lineality space lin(C) = (-0^+ C) ∩ 0^+ C equals { y ∈ ℝ^n | C + y = C }.

noncomputable def Set.rank {n : } (C : Set (EuclideanSpace (Fin n))) :

Definiton 8.4.6. Let C be a non-empty convex set with lineality space L = lin(C). The rank of C is defined by rank(C) = dim(C) - dim(L).

Equations
Instances For
    theorem properConvexFunctionOn_nonempty {n : } {C : Set (Fin n)} {f : (Fin n)EReal} (hf : ProperConvexFunctionOn C f) :

    Proper convexity implies the domain is nonempty.

    theorem diffQuotient_set_nonempty {n : } {C : Set (Fin n)} {f : (Fin n)} (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (y : Fin n) :
    {r : EReal | xC, r = ↑(f (x + y) - f x)}.Nonempty

    The difference-quotient set used in the recession formula is nonempty.

    theorem recessionFunction_zero {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) :
    f0_plus 0 = 0

    The recession formula forces f0_plus 0 = 0.

    theorem recessionFunction_ne_bot {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (y : Fin n) :
    f0_plus y

    The recession formula prevents f0_plus from taking the value .

    theorem recessionFunction_le_iff {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (y : Fin n) (v : ) :
    f0_plus y v xC, ↑(f (x + y) - f x) v

    The recession formula gives a pointwise inequality characterization.

    theorem recessionFunction_epigraph_nonempty {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) :

    The epigraph of the recession function is nonempty, witnessed at the origin.

    theorem convexOn_real_of_convexFunctionOn_ereal_univ {n : } {C : Set (Fin n)} {f : (Fin n)} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) :

    Proper convexity on the whole space gives real-valued convexity on Set.univ.

    theorem recessionFunction_ray_bound_real {n : } {C : Set (Fin n)} {f : (Fin n)} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) {y : Fin n} {v : } :
    (∀ (x : Fin n), f (x + y) - f x v)t > 0, ∀ (x : Fin n), f (x + t y) - f x t * v

    A convex real function with bounded unit increments along y has bounded increments at all positive scales.

    theorem recessionFunction_ray_bound {n : } {C : Set (Fin n)} {f : (Fin n)} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) {y : Fin n} {v : } :
    (∀ (x : Fin n), ↑(f (x + y) - f x) v)t > 0, ∀ (x : Fin n), ↑(f (x + t y) - f x) ↑(t * v)

    The ray bound rewritten in EReal form for the recession function.

    theorem recessionFunction_le_iff_ray {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (y : Fin n) (v : ) :
    f0_plus y v ∀ (x : Fin n) (t : ), 0 < t → (f (x + t y) - f x) / t v

    A pointwise bound on f0_plus is equivalent to bounds on all ray difference quotients.

    theorem recessionFunction_subadditive_univ {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (y1 y2 : Fin n) :
    f0_plus (y1 + y2) f0_plus y1 + f0_plus y2

    Subadditivity of the recession formula when the domain is the whole space.

    theorem recessionFunction_convex_univ {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (hpos : PositivelyHomogeneous f0_plus) :

    Convexity of the recession function on Set.univ from subadditivity and pos. homogeneity.

    theorem differenceQuotient_monotone {n : } {C : Set (Fin n)} {f : (Fin n)} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (x y : Fin n) :
    Monotone fun (t : { t : // 0 < t }) => (f (x + t y) - f x) / t

    Along a fixed ray, the difference quotient is monotone in the step length.

    theorem recessionFunction_iSup_formula {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (y : Fin n) :
    f0_plus y = ⨆ (x : Fin n), ↑(f (x + y) - f x)

    Rewrite the recession formula as an iSup over base points.

    theorem recessionFunction_lsc_of_closed {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (hclosed : ClosedConvexFunction fun (x : Fin n) => (f x)) :

    Closedness of f implies lower semicontinuity of the recession function.

    theorem closed_embedded_epigraph {n : } {f : (Fin n)EReal} (hls : LowerSemicontinuous f) :
    have C := (appendAffineEquiv n 1) '' ((fun (p : (Fin n) × ) => ((EuclideanSpace.equiv (Fin n) ).symm p.1, (EuclideanSpace.equiv (Fin 1) ).symm fun (x : Fin 1) => p.2)) '' epigraph Set.univ f); IsClosed C

    The embedded epigraph is closed when f is lower semicontinuous.

    theorem embedded_epigraph_add_smul {n : } :
    have eN := (EuclideanSpace.equiv (Fin n) ).symm.toAffineEquiv; have e1 := ((ContinuousLinearEquiv.funUnique (Fin 1) ).symm.toLinearEquiv ≪≫ₗ (EuclideanSpace.equiv (Fin 1) ).symm.toLinearEquiv).toAffineEquiv; have g := eN.prodCongr e1; have embed := fun (p : (Fin n) × ) => (appendAffineEquiv n 1) (g p); have dir := fun (q : (Fin n) × ) => (appendAffineEquiv n 1).linear (g.linear q); ∀ (p q : (Fin n) × ) (t : ), embed (p + t q) = embed p + t dir q

    The embedded epigraph map sends affine rays to affine rays.

    theorem ray_bound_extend_closed {n : } {f : (Fin n)} {x0 y : Fin n} {v : } (hclosed : ClosedConvexFunction fun (x : Fin n) => (f x)) (hbound : t > 0, (f (x0 + t y) - f x0) / t v) (x : Fin n) (t : ) :
    0 < t → (f (x + t y) - f x) / t v

    A ray bound at one base point extends to all base points for closed convex f.

    theorem ray_sSup_eq_of_closed {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (hpos : PositivelyHomogeneous f0_plus) (hclosed : ClosedConvexFunction fun (x : Fin n) => (f x)) (x y : Fin n) :
    f0_plus y = sSup {r : EReal | ∃ (t : ), 0 < t r = ↑((f (x + t y) - f x) / t)}

    Closed convexity makes the ray supremum independent of the base point.

    theorem ray_limit_monotone {n : } {C : Set (Fin n)} {f : (Fin n)} {f0_plus : (Fin n)EReal} (hC : C = Set.univ) (hf : ProperConvexFunctionOn C fun (x : Fin n) => (f x)) (hf0_plus : ∀ (y : Fin n), f0_plus y = sSup {r : EReal | xC, r = ↑(f (x + y) - f x)}) (hpos : PositivelyHomogeneous f0_plus) (hclosed : ClosedConvexFunction fun (x : Fin n) => (f x)) (x y : Fin n) :
    Filter.Tendsto (fun (t : ) => ↑((f (x + t y) - f x) / t)) Filter.atTop (nhds (f0_plus y))

    Along a fixed ray, the difference quotient converges to f0_plus.