NRR.ConvexBody — public convex‑body API (unified over the geometry layer) #
This module is the public entry point for planar convex bodies. It no longer maintains an independent convex‑body type: everything is a thin wrapper/alias over the implemented geometry layer
NRR.Geometry.ConvexBody (NRR/Geometry/ConvexBody/*)
whose bundled bodies are compact, convex, and solid (nonempty interior) by construction.
Public surface #
NRR.E2— the Euclidean plane, an alias ofGeometry.Plane.NRR.Body— planar convex bodies, an alias ofGeometry.ConvexBody E2.- Area API in
NRR.Geometry.ConvexBody:area,IsSolid,isSolid,area_nonneg,area_lt_top, and the robust positivity lemmaarea_pos_of_contains_closedBall. NRR.SolidConvexBody— a bundled solid body wrappingGeometry.ConvexBody, withofConvexBody,coe_ofConvexBody, and the derived positivityarea_pos_of_solid(also exposed asarea_pos).
Every geometry ConvexBody is already solid, so IsSolid/SolidConvexBody are provided for
downstream compatibility rather than as genuine extra data.
The Euclidean plane ℝ², the ambient space fixed throughout the development.
Definitional alias of NRR.Geometry.Plane.
Equations
Instances For
Planar convex bodies. Definitional alias of the implemented geometry convex‑body type
NRR.Geometry.ConvexBody E2.
Equations
Instances For
The forgetful map from a solid geometry convex body to Mathlib's root ConvexBody,
dropping the solidity (nonempty-interior) witness and keeping only compactness, convexity, and
nonemptiness. This names the map inducing the Hausdorff-metric topology below.
Instances For
The Hausdorff‑metric topology on geometry convex bodies, induced from Mathlib's
ConvexBody metric via the named forgetful map Geometry.ConvexBody.toMathlib that drops the
solidity witness. This lets the public API speak about Hausdorff continuity of body‑valued and
body‑indexed functionals.
Area of a planar convex body: the (real‑valued) Lebesgue measure of its carrier.
Equations
- K.area = (MeasureTheory.volume K.carrier).toReal
Instances For
Every geometry convex body is solid: it has nonempty interior by construction.
The Lebesgue measure of a convex body is finite (its carrier is compact).
The area of a convex body is nonnegative.
Robust positivity. If a convex body contains a closed ball of positive radius then it has strictly positive area.
A solid convex body: a bundled Geometry.ConvexBody Geometry.Plane together with the
(automatic) solidity witness. This is the input type of the fair‑partition theorem.
- toConvexBody : Geometry.ConvexBody Geometry.Plane
The underlying convex body.
- isSolid : self.toConvexBody.IsSolid
The body has nonempty interior.
Instances For
Bundle any geometry convex body as a SolidConvexBody: geometry bodies are always solid.
Equations
- NRR.SolidConvexBody.ofConvexBody K = { toConvexBody := K, isSolid := ⋯ }
Instances For
A solid convex body has strictly positive area, derived from the interior closed‑ball
theorem of the geometry layer (exists_closedBall_subset) and
area_pos_of_contains_closedBall.
A solid convex body has strictly positive area. (Alias of area_pos_of_solid.)