def
ConvexGeometry.IsConvexBody
{E : Type u_1}
[TopologicalSpace E]
[AddCommGroup E]
[Module ℝ E]
(C : Set E)
:
Instances For
theorem
ConvexGeometry.IsConvexBody.convex
{E : Type u_1}
[TopologicalSpace E]
[AddCommGroup E]
[Module ℝ E]
{C : Set E}
(h : IsConvexBody C)
:
theorem
ConvexGeometry.IsConvexBody.isCompact
{E : Type u_1}
[TopologicalSpace E]
[AddCommGroup E]
[Module ℝ E]
{C : Set E}
(h : IsConvexBody C)
:
theorem
ConvexGeometry.IsConvexBody.interior_nonempty
{E : Type u_1}
[TopologicalSpace E]
[AddCommGroup E]
[Module ℝ E]
{C : Set E}
(h : IsConvexBody C)
:
@[reducible, inline]
noncomputable abbrev
ConvexGeometry.minkowskiFunctional
{E : Type u_1}
[AddCommGroup E]
[Module ℝ E]
(C : Set E)
(x : E)
:
Instances For
def
ConvexGeometry.banachMazurAdmissible
{E : Type u_1}
[AddCommGroup E]
[Module ℝ E]
(K L : Set E)
:
Instances For
noncomputable def
ConvexGeometry.banachMazurDist
{E : Type u_1}
[AddCommGroup E]
[Module ℝ E]
(K L : Set E)
:
Instances For
Instances For
Instances For
Instances For
Instances For
theorem
ConvexGeometry.john_conditions_imply_max_vol
(n : ℕ)
(K : Set (EuclideanSpace ℝ (Fin n)))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_symm : IsOriginSymmetric K)
(hJ : JohnConditions n K)
:
IsMaxVolInscribedEllipsoid (unitBall n) K ∧ ∀ (E : Set (EuclideanSpace ℝ (Fin n))), IsMaxVolInscribedEllipsoid E K → E = unitBall n
theorem
ConvexGeometry.max_vol_implies_john_conditions
(n : ℕ)
(K : Set (EuclideanSpace ℝ (Fin n)))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_symm : IsOriginSymmetric K)
(hMax :
IsMaxVolInscribedEllipsoid (unitBall n) K ∧ ∀ (E : Set (EuclideanSpace ℝ (Fin n))), IsMaxVolInscribedEllipsoid E K → E = unitBall n)
:
JohnConditions n K
theorem
ConvexGeometry.john_ellipsoid_characterization
(n : ℕ)
(K : Set (EuclideanSpace ℝ (Fin n)))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_symm : IsOriginSymmetric K)
:
(IsMaxVolInscribedEllipsoid (unitBall n) K ∧ ∀ (E : Set (EuclideanSpace ℝ (Fin n))), IsMaxVolInscribedEllipsoid E K → E = unitBall n) ↔ JohnConditions n K
theorem
ConvexGeometry.separating_hyperplane
{E : Type u_1}
[TopologicalSpace E]
[AddCommGroup E]
[Module ℝ E]
[T2Space E]
[IsTopologicalAddGroup E]
[ContinuousSMul ℝ E]
[LocallyConvexSpace ℝ E]
{K : Set E}
{p : E}
(hK : IsConvexBody K)
(hp : p ∉ K)
:
theorem
ConvexGeometry.john_theorem_containment
(n : ℕ)
(hn : 0 < n)
(K : Set (EuclideanSpace ℝ (Fin n)))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_symm : IsOriginSymmetric K)
:
∃ (T : EuclideanSpace ℝ (Fin n) ≃ₗ[ℝ] EuclideanSpace ℝ (Fin n)),
⇑T '' Metric.closedBall 0 1 ⊆ K ∧ K ⊆ √↑n • ⇑T '' Metric.closedBall 0 1
theorem
ConvexGeometry.banachMazur_distance_ball
(n : ℕ)
(hn : 0 < n)
(K : Set (EuclideanSpace ℝ (Fin n)))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_symm : IsOriginSymmetric K)
:
def
ConvexGeometry.halfspacePolytope
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
{ι : Type u_2}
(a : ι → E)
:
Set E
Instances For
theorem
ConvexGeometry.polarBody_halfspacePolytope_eq_convexHull
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
{ι : Type u_2}
[Fintype ι]
(a : ι → E)
(hC : Bornology.IsBounded (halfspacePolytope a))
:
noncomputable def
ConvexGeometry.volumeRatio
{α : Type u_1}
[MeasurableSpace α]
(μ : MeasureTheory.Measure α)
(K L : Set α)
:
Instances For
theorem
ConvexGeometry.cone_with_prescribed_volumes
(n : ℕ)
(hn : 1 ≤ n)
(v_total v_pos : ENNReal)
(hv_total_pos : v_total ≠ 0)
(hv_total_fin : v_total ≠ ⊤)
(hv_pos_pos : v_pos ≠ 0)
(hv_pos_le : v_pos ≤ v_total)
:
∃ (C' : Set (Fin (n + 1) → ℝ)),
IsConeAligned C' ∧ MeasureTheory.volume C' = v_total ∧ MeasureTheory.volume (C' ∩ posHalfSpace n) = v_pos ∧ ∃ L' ⊆ posHalfSpace n, ENNReal.ofReal (Real.exp (-1)) ≤ volumeRatio MeasureTheory.volume C' L'
theorem
ConvexGeometry.lemma8_cone_construction
(n : ℕ)
(hn : 1 ≤ n)
(K' : Set (Fin (n + 1) → ℝ))
(hK' : IsConvexBody K')
(hpos : MeasureTheory.volume K' ≠ 0)
(hfin : MeasureTheory.volume K' ≠ ⊤)
(hH_pos : ∃ x ∈ K', x 0 > 0)
(hH_neg : ∃ x ∈ K', x 0 < 0)
(hcentroid : 0 ≤ ∫ (x : Fin (n + 1) → ℝ) in K', x 0)
:
∃ (C' : Set (Fin (n + 1) → ℝ)),
IsConeAligned C' ∧ MeasureTheory.volume C' = MeasureTheory.volume K' ∧ MeasureTheory.volume (C' ∩ posHalfSpace n) = MeasureTheory.volume (K' ∩ posHalfSpace n) ∧ ∃ L' ⊆ posHalfSpace n, ENNReal.ofReal (Real.exp (-1)) ≤ volumeRatio MeasureTheory.volume C' L'