Definitions for Grünbaum's centroid halfspace theorem #
Mathlib's ConvexBody permits lower-dimensional compact convex sets. In
finite-dimensional convex geometry, a convex body is normally required to
have nonempty interior. FullDimensionalConvexBody records precisely that
standard convention.
@[reducible, inline]
Euclidean space of positive dimension d + 1.
Equations
- Grunbaum.Euc d = EuclideanSpace ℝ (Fin (d + 1))
Instances For
A compact convex set with nonempty interior.
The underlying point set.
Convexity of the body.
Compactness of the body.
The body is full-dimensional.
Instances For
@[instance_reducible]
instance
Grunbaum.FullDimensionalConvexBody.instSetLikeEuc
{d : ℕ}
:
SetLike (FullDimensionalConvexBody d) (Euc d)
Equations
- Grunbaum.FullDimensionalConvexBody.instSetLikeEuc = { coe := Grunbaum.FullDimensionalConvexBody.carrier, coe_injective := ⋯ }
theorem
Grunbaum.FullDimensionalConvexBody.isCompact
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
IsCompact ↑C
theorem
Grunbaum.FullDimensionalConvexBody.isClosed
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
IsClosed ↑C
theorem
Grunbaum.FullDimensionalConvexBody.interior_nonempty
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
theorem
Grunbaum.FullDimensionalConvexBody.nonempty
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
(↑C).Nonempty
theorem
Grunbaum.FullDimensionalConvexBody.volume_ne_zero
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
theorem
Grunbaum.FullDimensionalConvexBody.volume_ne_top
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
noncomputable def
Grunbaum.FullDimensionalConvexBody.centroid
{d : ℕ}
(C : FullDimensionalConvexBody d)
:
Euc d
The volume centroid of a full-dimensional convex body.
Instances For
A (proper) closed halfspace, represented by a nonzero continuous linear functional and a threshold.
The defining normal functional.
- threshold : ℝ
The defining threshold.
A halfspace has a nonzero normal.
Instances For
@[instance_reducible]
Equations
- Grunbaum.ClosedHalfspace.instCoeSetEuc = { coe := fun (H : Grunbaum.ClosedHalfspace d) => Grunbaum.closedHalfspace H.normal H.threshold }
@[instance_reducible]
Equations
- Grunbaum.ClosedHalfspace.instMembershipEuc = { mem := fun (H : Grunbaum.ClosedHalfspace d) (x : Grunbaum.Euc d) => x ∈ Grunbaum.closedHalfspace H.normal H.threshold }
@[simp]
noncomputable def
Grunbaum.halfspaceVolumeRatio
{d : ℕ}
(C : FullDimensionalConvexBody d)
(ℓ : Euc d →L[ℝ] ℝ)
(a : ℝ)
:
The normalized volume of a body's intersection with a closed halfspace.
Equations
- Grunbaum.halfspaceVolumeRatio C ℓ a = (MeasureTheory.volume (↑C ∩ Grunbaum.closedHalfspace ℓ a) / MeasureTheory.volume ↑C).toReal