Disjunctive Programming II: The Convex Hull of a Disjunctive Set via Lifting and ProjectionTextbook
Motivation
Convexity is what makes optimization tractable: a linear program's feasible region is convex, and this single fact underwrites the simplex method, LP duality, and everything built on top of them. Integer and disjunctive programs have no such luck — their feasible regions are unions of polyhedra, and a union of convex sets is generally not convex. If the convex hull of such a union could always be described compactly, integer programming would reduce to linear programming: optimize the same linear objective over the hull instead of the union, and any optimal vertex of the hull is automatically integral. The obstacle has always been that the convex hull of a union of polyhedra in , described directly by its facets in , typically needs exponentially many inequalities.
Balas's Theorem 2.1, proved in the 1970s and presented here as Chapter 2 of Disjunctive Programming (Balas, Springer 2018), breaks this exponential barrier by changing where the description lives. Rather than writing down the hull's facets in , Theorem 2.1 lifts the problem to a higher-dimensional space — one auxiliary copy of per polyhedron in the union — where the hull becomes the projection of a single, explicitly given polyhedron whose size grows only linearly with the number of polyhedra. This "extended formulation" technique, born here, became one of the central tools of modern integer programming and combinatorial optimization: representing a hard polytope as the projection of an easy one in higher dimension underlies, for instance, the polynomial-size extended formulations known for many combinatorial polytopes.
Setting
Fix a finite index set . For , let be a real matrix and a vector of matching row dimension, and set . The union is the disjunctive set. Write for the feasible disjuncts.
The recession cone of a nonempty polyhedron is : the set of directions along which one can travel indefinitely from any point of while remaining in . For a subset and sets (), the (finite) Minkowski sum is . The maximal indices are the feasible disjuncts whose polyhedron is not contained in any other feasible disjunct's polyhedron.
Given a set , its projection onto is .
Formalization targets
Theorem 2.1 (goal) — the convex hull of a disjunctive set
This is the weakest correct statement: it claims only that the closed convex hull equals the projection of this specific lifted polyhedron , not any stronger uniqueness or minimality claim about lifted representations in general (that refinement is Theorem 2.1's own follow-up discussion, not part of the theorem itself).
Corollary 2.2 — the extreme-point correspondence
Extreme points of correspond bijectively to the extreme points of that place all of their mass on a single disjunct's coordinates.
Theorem 2.3 — tightness of the lifted representation
where is the variant of indexed by all of rather than only .
Theorem 2.4 — from the convex hull to the union itself
Under two recession-cone conditions on , restricting 's variables to makes its -projection recover itself, not merely .
Significance
The result itself. Theorem 2.1 is the founding extended-formulation result of integer programming: it shows that every union of finitely many polyhedra — hence every mixed-integer program's feasible region, once expressed in disjunctive normal form — has a lifted description of size linear in the number of disjuncts, in stark contrast to the union's own facet description, which is generally exponential. Corollary 2.2 shows this lifting is not merely an upper bound with extraneous points: its extreme points correspond exactly, one-to-one, with the extreme points of the object it represents. Theorems 2.3 and 2.4 sharpen the picture: 2.3 tells you exactly when you can avoid knowing in advance which disjuncts are nonempty, and 2.4 tells you exactly when the same family of lifted systems, restricted to integral , describes the union exactly rather than only its convex hull — this is Jeroslow and Lowe's characterization of when a disjunctive set is representable as the feasible region of an integer program at all.
Formalizing it. No object in this mission — the disjunctive set , its lifted polyhedron
, recession cones of a union's components, or the extreme-point correspondence between a
polytope and its lift — exists on the platform prior to this mission or anywhere in Mathlib
(substrate.md records zero LP/polyhedron modules in Mathlib as of this writing). This mission is
a from-scratch formalization of the book's central construction, restating (rather than importing)
the disjunctive-set vocabulary introduced by the companion IntroDuality mission, per the series'
convention that a draft mission cannot import another draft mission's definitions.
Difficulty
The natural first attempt at Theorem 2.1 tries to prove the two inclusions and by a direct facet-by-facet or vertex-by-vertex argument in — exactly the exponential-size approach the theorem exists to avoid. The book's own first proof instead works entirely with convex combinations: an arbitrary point of is a combination of at most points, one from each polyhedron in the union (Carathéodory-style), which converts directly into a point of by splitting the combination's weight across the lifted coordinates — and conversely, a point of decomposes, disjunct by disjunct, into a convex combination of that disjunct's own vertices and extreme rays. Neither direction ever needs to enumerate facets of in . The second proof (via projection and the polar cone of the lifted system) shows the projected inequalities coincide with exactly the valid-inequality characterization of Theorem 1.2 (disjunctive Farkas), which is a different, complementary way of seeing why no facet of is missed.
Formalization scope
All theorems are stated over a finite index set Q : Type* with [Fintype Q], matrices
Matrix (Fin (m h)) (Fin n) ℝ with m : Q → ℕ allowed to depend on h, and vectors in
Fin n → ℝ. DisjunctiveSet, FeasibleIndices, MaximalIndices, RecessionCone, and
MinkowskiSumOver fix the chapter's vocabulary; ProjX, LiftedPolyhedron, and
IntegerRestricted fix the lifted system and its variants. cl conv F is Mathlib's
closure (convexHull ℝ ·); extreme points use Mathlib's Set.extremePoints.
LiftedPolyhedron ranges its auxiliary vectors , over all of rather
than only the index subset Qidx the book restricts to, forcing the components outside Qidx to
zero. This is an equivalent, Finset/decidability-free encoding — appending zero terms changes
neither the defining sums nor the constraints — documented as a convention, not a weakening, in
MODERATION_NOTES.md; the same definition instantiates both the system (Qidx = Q^*) and
the variant (Qidx = Q) that Theorem 2.3 compares.
A trivializing formalization is ruled out explicitly: taking collapses the lifted
system to , , a vacuous restatement of that proves nothing about
unions. Every theorem here is stated for a generic finite Q, never specialized to a fixed small
size. Contributions beyond this mission's statements would need genuine polyhedral machinery
(vertex/extreme-ray decomposition of a polyhedron, Carathéodory's theorem for cones) that is itself
absent from Mathlib and would be welcome as a separate, reusable definitions layer.
Selected references
- E. Balas, Disjunctive Programming, Springer, 2018. DOI: 10.1007/978-3-030-00148-3, Chapter 2, §2.1.
- E. Balas, Disjunctive programming: Properties of the convex hull of feasible points, Discrete Applied Mathematics 89 (1998), 3–44 (reprint of a 1974 MSRR, cited in the text as [6], the origin of Theorem 2.1).
- M. Conforti, M. Di Summa, Y. Faenza, On the size of extended formulations for polytopes associated with unions of polyhedra, SIAM Journal on Discrete Mathematics, cited in the text as [59] — establishes the tightness (minimum additional-variable count) of Theorem 2.1's lifted representation.
- R. G. Jeroslow, J. K. Lowe, Modelling with integer variables, Mathematical Programming Study 22 (1984), 167–184 (cited in the text as [86]; the characterization behind Theorem 2.4's significance).