Polyhedral convex sets and the Minkowski–Weyl theorem #
A convex set is polyhedral when it is the solution set of finitely many linear inequalities,
and finitely generated when it is conv P + cone D for finite sets of points P and
directions D. The Minkowski–Weyl theorem says the two agree in finite dimensions.
The proof is the cone case (Polyhedral/Cone.lean) plus homogenisation: a set C ⊆ E is the
level-one slice {x | (1, x) ∈ K} of a cone K ⊆ ℝ × E, the two descriptions of C correspond
to the two descriptions of K, and the correspondence is slice_hull_union.
Main definitions #
Polyhedral C—Cis cut out by finitely many inequalitiesφ x ≤ b.FinitelyGenerated C—C = conv P + cone Dfor finiteP,D.coneOver C hC— the convex cone inℝ × Egenerated by{1} × C, for convexC.
Main results #
slice_hull_union— the level-one slice of the cone generated by{1} × P ∪ {0} × Disconv P + cone D. This is the whole of the homogenisation dictionary.polyhedral_iff_finitelyGenerated— the Minkowski–Weyl theorem (Theorem 19.1 in [^1]).Polyhedral.isClosed,Polyhedral.convex, and the same forFinitelyGenerated.
Implementation notes #
Polyhedral is stated as {x | ∀ q ∈ s, q.1 x ≤ q.2} rather than as the equal
⋂ q ∈ s, {x | q.1 x ≤ q.2}, because that is the form every proof here manipulates;
Polyhedral.eq_biInter records the other. The empty set is both polyhedral (a system can be
inconsistent) and finitely generated (conv ∅ = ∅); the classical statement quietly assumes
C ≠ ∅ in places, but the slice picture handles it, since (1, x) never lies in the cone
generated by {0} × D.
References #
[^1]: R. T. Rockafellar, Convex Analysis, Princeton University Press, 1970, §19.
Lifting a set to level 0 or level 1 of ℝ × E #
The height-0 lift, as a map of ℝ≥0-modules. Building it by hand rather than restricting
scalars along ℝ≥0 → ℝ keeps Submodule.map_span applicable without an IsScalarTower detour.
Equations
Instances For
The height-0 lift of a cone hull is the cone hull of the height-0 lift.
The cone over a convex set #
The convex cone in ℝ × E generated by the height-one copy of a convex set C: the pairs
(a, x) with a > 0 and a⁻¹ • x ∈ C, together with the origin.
Equations
Instances For
The homogenisation dictionary. The level-one slice of the convex cone generated by
{1} × P ∪ {0} × D is conv P + cone D. Both halves of Minkowski–Weyl go through this identity.
Polyhedral and finitely generated sets #
A polyhedral convex set: the solution set of finitely many linear inequalities.
Equations
Instances For
A finitely generated convex set: conv P + cone D for finite sets of points P and
directions D.
Equations
- Tdaf.ConvexAnalysis.FinitelyGenerated C = ∃ (P : Finset E) (D : Finset E), C = (convexHull ℝ) ↑P + ↑(PointedCone.hull ℝ ↑D)
Instances For
Homogenisation of a polyhedral set #
The level-one slice of a polyhedral cone is a polyhedral set: substituting 1 for the
homogenising variable turns Ψ (a, x) ≤ 0 into ψ x ≤ b.
A polyhedral set is the level-one slice of a polyhedral cone lying in the closed upper
half-space. The cone is Rockafellar's homogenisation: a ≥ 0 together with φ x ≤ b a for each
inequality φ x ≤ b of the original system.
Rewriting a finite generating set of a cone contained in the closed upper half-space as a
height-one part and a height-zero part: the generators with p.1 > 0 are rescaled to height one,
those with p.1 = 0 are directions.
The Minkowski–Weyl theorem #
Weyl's half: a finitely generated convex set is polyhedral.
Minkowski's half: a polyhedral convex set is finitely generated.
The Minkowski–Weyl theorem: in a finite-dimensional space a convex set is polyhedral if and only if it is finitely generated.
A polyhedral set is closed.
A finitely generated convex set is closed; in particular the sum of a polytope and a finitely generated cone is closed.
The convex hull of a finite set — a polytope — is polyhedral.