Documentation

Mathlib.Analysis.Convex.Approximation

Approximation to convex functions #

In this file we show that a convex lower-semicontinuous function is the upper envelope of a family of continuous affine linear functions. We follow the proof in [Bou87].

Main Statement #

theorem ConvexOn.convex_re_epigraph {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [AddCommMonoid E] [Module E] (hφcv : ConvexOn s φ) :
Convex {p : E × 𝕜 | p.1 s φ p.1 RCLike.re p.2}
theorem LowerSemicontinuousOn.isClosed_re_epigraph {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [TopologicalSpace E] (hsc : IsClosed s) (hφ_cont : LowerSemicontinuousOn φ s) :
IsClosed {p : E × 𝕜 | p.1 s φ p.1 RCLike.re p.2}
theorem ConvexOn.exists_affine_le_of_lt {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] {x : E} {a : } (hx : x s) (hax : a < φ x) (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
∃ (l : E →L[𝕜] 𝕜) (c : ), s.restrict (RCLike.re l) + Function.const (↑s) c s.restrict φ RCLike.re (l x) + c = a

Let φ : E → ℝ be a convex and lower-semicontinuous function on a closed convex subset s. For any point x ∈ s and a < φ x, there exists a continuous affine linear function f in E such that f ≤ φ on s and f x = a. This is an auxiliary lemma used in the proof of ConvexOn.sSup_affine_eq.

theorem ConvexOn.sSup_affine_eq {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
sSup {f : s | f s.restrict φ ∃ (l : E →L[𝕜] 𝕜) (c : ), f = s.restrict (RCLike.re l) + Function.const (↑s) c} = s.restrict φ

A function φ : E → ℝ that is convex and lower-semicontinuous on a closed convex subset s is the supremum of a family of functions that are the restrictions to s of continuous affine linear functions in E.

theorem ConvexOn.sSup_of_countable_affine_eq {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
∃ (𝓕' : Set (s)), 𝓕'.Countable sSup 𝓕' = s.restrict φ f𝓕', ∃ (l : E →L[𝕜] 𝕜) (c : ), f = s.restrict (RCLike.re l) + Function.const (↑s) c

The countable version of sSup_affine_eq.

theorem ConvexOn.sSup_of_nat_affine_eq {𝕜 : Type u_1} {E : Type u_2} {s : Set E} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
∃ (l : E →L[𝕜] 𝕜) (c : ), ⨆ (i : ), s.restrict (RCLike.re (l i)) + Function.const (↑s) (c i) = s.restrict φ

The sequential version of sSup_of_countable_affine_eq.

theorem ConvexOn.univ_sSup_affine_eq {𝕜 : Type u_1} {E : Type u_2} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] (hφc : LowerSemicontinuous φ) (hφcv : ConvexOn Set.univ φ) :
sSup {f : E | f φ ∃ (l : E →L[𝕜] 𝕜) (c : ), f = RCLike.re l + Function.const E c} = φ

A function φ : E → ℝ that is convex and lower-semicontinuous is the supremum of a family of of continuous affine linear functions.

theorem ConvexOn.univ_sSup_of_countable_affine_eq {𝕜 : Type u_1} {E : Type u_2} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hφc : LowerSemicontinuous φ) (hφcv : ConvexOn Set.univ φ) :
∃ (𝓕' : Set (E)), 𝓕'.Countable sSup 𝓕' = φ f𝓕', ∃ (l : E →L[𝕜] 𝕜) (c : ), f = RCLike.re l + Function.const E c

The countable version of univ_sSup_affine_eq.

theorem ConvexOn.univ_sSup_of_nat_affine_eq {𝕜 : Type u_1} {E : Type u_2} {φ : E} [RCLike 𝕜] [TopologicalSpace E] [AddCommGroup E] [Module E] [Module 𝕜 E] [IsScalarTower 𝕜 E] [IsTopologicalAddGroup E] [ContinuousSMul 𝕜 E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hφc : LowerSemicontinuous φ) (hφcv : ConvexOn Set.univ φ) :
∃ (l : E →L[𝕜] 𝕜) (c : ), ⨆ (i : ), RCLike.re (l i) + Function.const E (c i) = φ

The sequential version of univ_sSup_of_countable_affine_eq.

theorem ConvexOn.real_sSup_affine_eq {E : Type u_2} {s : Set E} {φ : E} [TopologicalSpace E] [AddCommGroup E] [Module E] [IsTopologicalAddGroup E] [ContinuousSMul E] [LocallyConvexSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
sSup {f : s | f s.restrict φ ∃ (l : E →L[] ) (c : ), f = s.restrict l + Function.const (↑s) c} = s.restrict φ

The real version of sSup_affine_eq.

theorem ConvexOn.real_sSup_of_countable_affine_eq {E : Type u_2} {s : Set E} {φ : E} [TopologicalSpace E] [AddCommGroup E] [Module E] [IsTopologicalAddGroup E] [ContinuousSMul E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
∃ (𝓕' : Set (s)), 𝓕'.Countable sSup 𝓕' = s.restrict φ f𝓕', ∃ (l : E →L[] ) (c : ), f = s.restrict l + Function.const (↑s) c

The real version of sSup_of_countable_affine_eq.

theorem ConvexOn.real_sSup_of_nat_affine_eq {E : Type u_2} {s : Set E} {φ : E} [TopologicalSpace E] [AddCommGroup E] [Module E] [IsTopologicalAddGroup E] [ContinuousSMul E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hsc : IsClosed s) (hφc : LowerSemicontinuousOn φ s) (hφcv : ConvexOn s φ) :
∃ (l : E →L[] ) (c : ), ⨆ (i : ), s.restrict (l i) + Function.const (↑s) (c i) = s.restrict φ

The real version of sSup_of_nat_affine_eq.

theorem ConvexOn.real_univ_sSup_affine_eq {E : Type u_2} {φ : E} [TopologicalSpace E] [AddCommGroup E] [Module E] [IsTopologicalAddGroup E] [ContinuousSMul E] [LocallyConvexSpace E] (hφc : LowerSemicontinuous φ) (hφcv : ConvexOn Set.univ φ) :
sSup {f : E | f φ ∃ (l : E →L[] ) (c : ), f = l + Function.const E c} = φ

The real version of univ_sSup_affine_eq.

theorem ConvexOn.real_univ_sSup_of_countable_affine_eq {E : Type u_2} {φ : E} [TopologicalSpace E] [AddCommGroup E] [Module E] [IsTopologicalAddGroup E] [ContinuousSMul E] [LocallyConvexSpace E] [HereditarilyLindelofSpace E] (hφc : LowerSemicontinuous φ) (hφcv : ConvexOn Set.univ φ) :
∃ (𝓕' : Set (E)), 𝓕'.Countable sSup 𝓕' = φ f𝓕', ∃ (l : E →L[] ) (c : ), f = l + Function.const E c

The real version of univ_sSup_of_countable_affine_eq.