theorem
BrunnMinkowski.measure_singleton_add
{G : Type u_1}
[AddCommGroup G]
[MeasurableSpace G]
[MeasurableAdd G]
(μ : MeasureTheory.Measure G)
[μ.IsAddLeftInvariant]
(a : G)
(B : Set G)
:
theorem
BrunnMinkowski.measure_add_ge_right
{G : Type u_1}
[AddCommGroup G]
[MeasurableSpace G]
[MeasurableAdd G]
(μ : MeasureTheory.Measure G)
[μ.IsAddLeftInvariant]
{A B : Set G}
(hA : A.Nonempty)
:
theorem
BrunnMinkowski.measure_add_ge_left
{G : Type u_1}
[AddCommGroup G]
[MeasurableSpace G]
[MeasurableAdd G]
(μ : MeasureTheory.Measure G)
[μ.IsAddLeftInvariant]
{A B : Set G}
(hB : B.Nonempty)
:
theorem
BrunnMinkowski.measure_add_ge_max
{G : Type u_1}
[AddCommGroup G]
[MeasurableSpace G]
[MeasurableAdd G]
(μ : MeasureTheory.Measure G)
[μ.IsAddLeftInvariant]
{A B : Set G}
(hA : A.Nonempty)
(hB : B.Nonempty)
:
theorem
BrunnMinkowski.convex_bodyOfRevolution
{E : Type u_2}
[SeminormedAddCommGroup E]
[NormedSpace ℝ E]
{s : Set ℝ}
{f : ℝ → ℝ}
(hs : Convex ℝ s)
(hf : ConcaveOn ℝ s f)
:
Convex ℝ (bodyOfRevolution s f)
theorem
BrunnMinkowski.convex_bodyOfRevolution_of_convex
{n : ℕ}
(hn : 0 < n)
(K : Set (ℝ × (Fin n → ℝ)))
(hK : Convex ℝ K)
(s : Set ℝ)
(hs : s = {t : ℝ | (slice K t).Nonempty})
(f : ℝ → ℝ)
(hf : f = fun (t : ℝ) => (MeasureTheory.volume (slice K t)).toReal ^ (1 / ↑n))
:
Convex ℝ (bodyOfRevolution s f)
theorem
GrunbaumsTheorem.grunbaum_wlog_reduction
{n : ℕ}
(K : Set (Fin (n + 1) → ℝ))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_meas : MeasurableSet K)
(f : (Fin (n + 1) → ℝ) →ₗ[ℝ] ℝ)
(c : ℝ)
(hcentroid : centroid K ∈ closedHalfspace f c)
(hKnotsubH : ¬K ⊆ closedHalfspace f c)
:
1 ≤ n ∧ ∃ (K' : Set (Fin (n + 1) → ℝ)),
ConvexGeometry.IsConvexBody K' ∧ MeasureTheory.volume K' ≠ 0 ∧ MeasureTheory.volume K' ≠ ⊤ ∧ (∃ x ∈ K', x 0 > 0) ∧ (∃ x ∈ K', x 0 < 0) ∧ 0 ≤ ∫ (x : Fin (n + 1) → ℝ) in K', x 0 ∧ MeasureTheory.volume (K ∩ closedHalfspace f c) / MeasureTheory.volume K = MeasureTheory.volume (K' ∩ {x : Fin (n + 1) → ℝ | 0 ≤ x 0}) / MeasureTheory.volume K'
noncomputable def
GrunbaumConeReplacement.volumeRatio
{α : Type u_1}
[MeasurableSpace α]
(μ : MeasureTheory.Measure α)
(K L : Set α)
:
Instances For
theorem
GrunbaumConeReplacement.volumeRatio_eq_of_measures_eq
{α : Type u_1}
[MeasurableSpace α]
(μ : MeasureTheory.Measure α)
{K C L : Set α}
(hvol_total : μ K = μ C)
(hvol_part : μ (K ∩ L) = μ (C ∩ L))
:
theorem
GrunbaumConeReplacement.volumeRatio_mono_right
{α : Type u_1}
[MeasurableSpace α]
(μ : MeasureTheory.Measure α)
(K : Set α)
{L₁ L₂ : Set α}
(h : L₁ ⊆ L₂)
:
theorem
GrunbaumConeReplacement.volume_ratio_chain
{α : Type u_1}
[MeasurableSpace α]
(μ : MeasureTheory.Measure α)
{K C L L' : Set α}
{b : ENNReal}
(hvol_total : μ K = μ C)
(hvol_part : μ (K ∩ L) = μ (C ∩ L))
(hL' : L' ⊆ L)
(hbound : b ≤ volumeRatio μ C L')
:
theorem
GrunbaumConeReplacement.lemma8_cone_construction
(n : ℕ)
(hn : 1 ≤ n)
(K' : Set (Fin (n + 1) → ℝ))
(hK' : ConvexGeometry.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) → ℝ)),
ConvexGeometry.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'
theorem
GrunbaumConeReplacement.lemma8_volume_ratio_bound
(n : ℕ)
(hn : 1 ≤ n)
(K' : Set (Fin (n + 1) → ℝ))
(hK' : ConvexGeometry.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)
:
theorem
GrunbaumsTheorem.grunbaum_theorem
{n : ℕ}
(K : Set (Fin (n + 1) → ℝ))
(hK_convex : Convex ℝ K)
(hK_compact : IsCompact K)
(hK_interior : (interior K).Nonempty)
(hK_meas : MeasurableSet K)
(f : (Fin (n + 1) → ℝ) →ₗ[ℝ] ℝ)
(c : ℝ)
(hcentroid : centroid K ∈ closedHalfspace f c)
:
Real.exp (-1) * (MeasureTheory.volume K).toReal ≤ (MeasureTheory.volume (K ∩ closedHalfspace f c)).toReal