NRR.Geometry.ConvexBody — the support function #
This module introduces the support function of a ConvexBody K in a real inner product
space E:
h_K(u) = sup { ⟪x, u⟫ | x ∈ K }.
For a compact nonempty K and any direction u, the linear functional x ↦ ⟪x, u⟫ is
continuous, so it attains its maximum on K; hence the supremum is finite and attained. The
support function is the canonical analytic interface to a convex body: width and perimeter are
later expressed through it.
Design notes #
- The definition uses
sSupof the image ofKunderx ↦ ⟪x, u⟫, matching the mathematical formula. All order-theoretic boilerplate is discharged once, via the compactness maximizerIsCompact.exists_isMaxOn, which produces anIsGreatestwitness for the image; from that thesSupcharacterisation, the attained maximum, the upper bound, and the least-upper-bound property all follow without hand-written epsilon arguments. - The public API (
inner_le_supportFunction,supportFunction_le,exists_supportPoint, thesSupcharacterisation, the zero-direction value, and congruence) does not expose the implementation detail thatsSupis used; downstream files can treatsupportFunctionthrough these lemmas alone. - We follow the library convention
inner ℝ x ufor the real inner product.
Import policy #
Following the library-wide policy, Basic.lean already pulls in import Mathlib, so no extra
imports are required here. The decisive Mathlib results used are IsCompact.exists_isMaxOn,
IsGreatest.csSup_eq, le_csSup, csSup_le, and continuity of the inner product.
The support function of a convex body K in direction u:
h_K(u) = sup { ⟪x, u⟫ | x ∈ K }. For compact nonempty K the supremum is finite and
attained (see exists_supportPoint).
Instances For
Unfolding lemma: the support function is the supremum of the inner products over K.
The linear functional x ↦ ⟪x, u⟫ attains its maximum on the (compact, nonempty) body K:
there is a point of K that is a maximiser. This is the compactness core of the API.
The image of K under x ↦ ⟪x, u⟫ has a greatest element, attained at a support point.
Existence of a support point. For every direction u there is a point of K at which the
inner product equals the support function; equivalently, the supremum is attained.
The support function lies in the image, i.e. is attained as an inner product.
Upper bound. Every inner product ⟪x, u⟫ for x ∈ K is at most the support function.
Least upper bound. If a bounds every inner product over K, then it bounds the support
function.
Extensionality compatibility. The support function only depends on the carrier set.
Zero direction. The support function in the zero direction is zero.