Convex hulls of points and directions #
Convex analysis works throughout with the convex hull of a set S that mixes points and
directions (points at infinity): conv S is the smallest convex set that contains every point
of S and recedes in every direction of S, and it equals conv S₀ + cone S₁. This file
supplies that object and its API.
A set of directions is represented by a set of vectors, one or more per direction: cone D, and
hence convexHullPD P D, depends only on the directions of the vectors in D, so nothing is
lost and no quotient type is needed. Note that convexHullPD ∅ D = ∅ — a set of directions alone
has empty convex hull, since the empty set recedes in every direction — which is Rockafellar's
convention.
Main definitions #
convexHullPD P D— the convex hull of the pointsPtogether with the directions of the vectors inD, defined asconv P + cone D.halfLine x y— the closed half-line fromxin the direction ofy. It isconv Sfor a one-point, one-directionS, and it is the shape of the faces that carry the extreme and exposed directions of a convex set.coneOverPD P D— the cone overconv Sinℝ × E, enlarged by its level-zero directions; the auxiliary object in the proof of the homogenisation dictionary.affineSpanPD P D,finrankPD P D— the affine hullaff S = aff (conv S)and its dimension.AffineIndepPD P D— affine independence of a mixed set: the homogenisation is linearly independent inℝ × E.IsSimplexPD m C— a generalizedm-dimensional simplex, the convex hull ofm + 1affinely independent points and directions.
Main results #
isLeast_convexHullPD—convexHullPD P Dis Rockafellar's definition: the least convex set containingPand receding in every direction ofD. Everything else follows from thatIsLeastpair.convexHullPD_eq_slice— the homogenisation dictionary:conv Sis the level-one slice of the pointed cone inℝ × Egenerated byliftPD P D = ({1} × P) ∪ ({0} × D).exists_of_mem_convexHullPD— Carathéodory's theorem for points and directions.IsCompact.isClosed_convexHullPD—conv P + cone Dis closed whenPis compact andcone Dis closed.finrank_span_liftPD— the homogenisation raises the dimension by exactly one,dim K = d + 1; this is what makes the padding step of Carathéodory's theorem possible.convexHullPD_eq_iUnion_simplex—conv Sis the union of the generalizedd-dimensional simplices with vertices inS,d = dim (conv S).finrankPD_add_one_of_affineIndepPD,finrank_vectorSpan_of_isSimplexPD— a generalizedm-dimensional simplex has dimensionm, recovering Rockafellar's own definition of affine independence for a mixed set.
Implementation notes #
Rockafellar defines conv S by its minimality property and derives conv S₀ + cone S₁. Here the
formula is the definition, because it is what every proof manipulates, and isLeast_convexHullPD
recovers the minimality property. Polyhedral/Defs.lean's FinitelyGenerated C is definitionally
∃ P D : Finset E, C = convexHullPD ↑P ↑D, but sits above this file in the import order and so
carries its own copy of the homogenisation dictionary.
References #
- R. T. Rockafellar, Convex Analysis, Princeton University Press, 1970, §17.
The definition #
The convex hull of a set of points and directions. convexHullPD P D is the smallest convex
set containing the points P and receding in the direction of every vector of D; it is
conv P + cone D, Rockafellar's own formula (isLeast_convexHullPD proves the two agree).
Directions are represented by vectors, since cone D is unchanged by rescaling a generator.
Equations
- Tdaf.ConvexAnalysis.convexHullPD P D = (convexHull ℝ) P + ↑(PointedCone.hull ℝ D)
Instances For
conv S unfolded: the Minkowski sum of the convex hull of the points and the cone hull of
the directions.
Membership in conv S: a point of the convex hull of P plus a direction of cone D.
The convex hull of the points alone is contained in the hull of the points and directions.
The points of S belong to conv S.
With no directions, conv S is the ordinary convex hull.
A set of directions alone has empty convex hull, Rockafellar's convention.
conv S is convex.
conv S recedes in every direction of S — indeed in every direction of cone D.
conv S recedes in every direction of S.
Minimality: every convex set that contains the points of S and recedes in its directions
contains conv S.
Rockafellar's definition of conv S: it is the least convex set containing the points of
S and receding in all the directions of S.
conv S is monotone in the points and in the directions.
Monotonicity in the points.
Monotonicity in the directions.
Taking the convex hull of the points first changes nothing.
Taking the cone hull of the directions first changes nothing.
conv S absorbs its own recession directions: adding cone D again changes nothing.
A singleton of points with no directions.
With the origin as its only point, the hull of points and directions is just the cone hull.
The closed half-line issuing from x in the direction of y. Half-line faces, and with
them the extreme and exposed directions of a convex set, are all phrased with it.
Instances For
A half-line is the convex hull of one point and one direction.
The endpoint belongs to the half-line.
A half-line is convex.
The half-line issuing from x in the direction of y recedes in the direction of y.
The homogenisation dictionary #
The auxiliary cone behind the homogenisation dictionary: the pairs (a, x) with a > 0 and
a⁻¹ • x ∈ conv S, together with the pairs (0, x) with x ∈ cone D. It is the cone over
conv S enlarged by its level-zero directions — the largest cone whose level-one slice is still
conv S.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Membership in coneOverPD, unfolded.
The homogenisation dictionary. conv S is the level-one slice of the convex cone in ℝ × E
generated by liftPD P D, the copy of P at height 1 together with the copy of D at height
0. This is Rockafellar's S', and the identification is what carries almost every proof about
conv S.
The level-one slice form of membership in conv S.
Half-lines in a normed space #
A half-line in a nonzero direction is unbounded.
Carathéodory's theorem, and closedness #
Carathéodory's theorem for points and directions: every point of conv S is a convex
combination of at most n + 1 points and directions of S, all with strictly positive
coefficients.
The converse of exists_of_mem_convexHullPD: any convex combination of points and directions
of S lies in conv S.
A closedness criterion. conv S is closed as soon as the set of points is compact and the
cone generated by the directions is closed: the convex hull of a compact set is compact, and a
compact set plus a closed set is closed.
conv S is compact when there are no directions and the points are compact.
Vertices: affine independence, dimension, generalized simplices #
The pointed cone generated by a set lies inside its linear span.
The affine hull of a set of points and directions: aff S = aff (conv S), the smallest
affine set containing the points of S that recedes in all the directions of S.
Equations
Instances For
The dimension of a set of points and directions, dim S = dim (aff S), as the dimension
of the direction space of aff S. Rockafellar gives the empty set dimension -1; a natural number
cannot, so finrankPD ∅ D = 0 and every statement about it carries a non-emptiness hypothesis.
Equations
Instances For
dim S unfolded.
dim S is the dimension of the direction space of aff S.
A set of points and directions is affinely independent when its homogenisation — the points
lifted to height 1 and the directions to height 0 — is linearly independent in ℝ × E.
Rockafellar defines the notion by dim S = m - 1 and derives this criterion; here the criterion is
the definition. With no directions it is affine independence of the points.
Equations
Instances For
Affine independence of a mixed set, unfolded.
A generalized m-dimensional simplex: the convex hull of m + 1 affinely independent
points and directions. The points are its ordinary vertices and the directions its vertices at
infinity; the one-dimensional ones are the line segments and the closed half-lines, and one with a
single ordinary vertex is a skew orthant.
Equations
- Tdaf.ConvexAnalysis.IsSimplexPD m C = ∃ (p : Finset E) (d : Finset E), Tdaf.ConvexAnalysis.AffineIndepPD ↑p ↑d ∧ p.card + d.card = m + 1 ∧ C = Tdaf.ConvexAnalysis.convexHullPD ↑p ↑d
Instances For
The convex hull of m + 1 affinely independent points and directions is a generalized
m-dimensional simplex.
The homogenisation of a finite set of points and a finite set of directions has exactly as many
elements as there are points and directions: the heights 1 and 0 keep the two families apart,
and each lift is injective.
conv S as a union of simplices #
The homogenisation raises the dimension by exactly one. When S has at least one point,
the span of liftPD P D in ℝ × E has dimension dim S + 1 — Rockafellar's dim K = d + 1.
Fixing x₀ ∈ S, that span is the direct sum of the line through (1, x₀) and the copy of the
direction space of aff S at height 0.
A generalized m-dimensional simplex really has dimension m. Rockafellar defines affine
independence of a mixed set by dim S = m - 1; this recovers that definition from the
linear-independence criterion AffineIndepPD takes as primitive.
A generalized m-dimensional simplex has dimension m, in the form its name promises.
conv S is the union of all the generalized d-dimensional simplices whose vertices belong
to S, where d = dim (conv S). Carathéodory
produces an independent family of at most d + 1 generators; padding it to exactly d + 1 extends
that family to a basis of the span of liftPD P D, drawing the extra vectors from liftPD P D
itself — possible because that span has dimension exactly d + 1.