Disjunctive Programming V: Moving Between Conjunctive and Disjunctive Normal FormsTextbook
Motivation
Chapter 2 gives a compact lifted description of the closed convex hull of a disjunctive set once it is written as a union of polyhedra (its disjunctive normal form, DNF). But most discrete optimization problems present their feasible region the opposite way: as a conjunction of many small disjunctions (the conjunctive normal form, CNF) — "linear constraints, and , and , and so on" — each easy to reason about on its own but expensive to convert to DNF directly, since converting a CNF with conjuncts of terms each can blow the DNF up to as many as polyhedra. Chapter 4 develops the machinery for moving between these two extremes without paying that combinatorial cost all at once: the basic step, which merges two conjuncts into one, and the hull-relaxation, an intermediate polyhedral relaxation that tightens monotonically with every basic step performed, converging exactly to the true convex hull once the disjunctive set reaches DNF.
Setting
A disjunctive set is in regular form (RF) if with each a union of polyhedra. is elementary if every is a halfspace (the RF is then the CNF), and improper if literally equals a single polyhedron . Writing for the improper indices, is 's polyhedral part. The hull-relaxation of a regular form is
a relaxation of distinct from itself: it convexifies each conjunct before intersecting, which is generally weaker. A basic step replaces two conjuncts () of a regular form by their intersection (itself brought to DNF via distributivity), reducing the number of conjuncts by one; repeating this times brings any regular form to DNF. For a convex set , its extreme direction vectors are the extreme rays of its recession cone.
Formalization targets
Theorem 4.7 (goal) — the hull-relaxation hierarchy
For a sequence of regular forms of the same disjunctive set, with in CNF, in DNF, and each obtained from by a basic step:
The chain of lemmas the goal is built from
Theorem 4.1 (, the basic-step identity), Theorem 4.4 (the hull of a union of halfspaces is or the halfspace itself), Lemma 4.5 ( for a CNF ), and Lemma 4.6 (, driving each inclusion of the chain).
The sharpening and payoff results
Theorem 4.8 (an exact extreme-point/extreme-direction criterion for when Lemma 4.6 is equality), Corollary 4.9 (a worked case where merging "0-1" disjunctions brings no gain), and Theorem 4.10 (any regular form is the projection of a mixed 0-1 program using no more binary variables than the original CNF).
Significance
The results themselves. Theorem 4.7 turns the exponential CNF-to-DNF blowup into a controllable, monotone process: rather than converting all at once, a solver can perform basic steps selectively — wherever Theorem 4.8's criterion promises a genuine tightening — and always have a valid, improving polyhedral relaxation available at every intermediate stage. Theorem 4.10 is what makes this practical for integer programming specifically: it shows the number of 0-1 variables needed never has to grow, no matter how many basic steps are performed, only the number of continuous lifted variables does.
Formalizing it. No object in this mission — regular form, the hull-relaxation operator, basic steps, or extreme direction vectors — exists on the platform prior to this mission or in Mathlib. This mission restates the disjunctive-set and convex-hull vocabulary of the earlier missions in this series locally (per the series convention that a draft mission cannot import another draft mission's definitions).
Difficulty
The obvious first attempt collapses h-rel to cl conv throughout, reasoning that since the
chain ends at , the intermediate terms should behave the same way.
This is exactly backwards: h-rel is always at least as large as the true convex hull at every
intermediate stage (Lemma 4.6 gives containment, not equality, in general), and the chapter's own
Example 1 exhibits a CNF whose hull-relaxation strictly exceeds
until enough basic steps have been performed. The real difficulty Theorem 4.8 isolates is
recognizing which basic steps actually tighten the relaxation: merging conjuncts whose extreme
points and directions already coincide with those of the pairwise intersections gains nothing
(Corollary 4.9's worked case), while merging conjuncts that interact more intricately can produce
a strictly tighter bound — and no general rule beyond Theorem 4.8's own extreme-point criterion
identifies which case holds.
Formalization scope
All results are stated over Fin n → ℝ with matrices Matrix (Fin m) (Fin n) ℝ. A regular
form's conjuncts are represented as an arbitrary function T → Set (Fin n → ℝ) (rather than
requiring every conjunct's internal polyhedral structure to be uniformly tracked through the whole
chapter), with IsDisjunctiveUnion/IsElementaryDisjunction as existential well-formedness
predicates asserting each conjunct genuinely is a union of polyhedra/halfspaces where that matters.
IsBasicStepOf states a basic step abstractly via an index-type equivalence, since its
mathematical content is which two conjuncts merge and into what, not any particular relabeling
scheme; Theorem 4.7's own sequence of regular forms is a dependent family T : Fin (t+1) → Type*
precisely because each basic step genuinely changes the index type (one fewer conjunct).
Theorem 4.7's three-part conclusion (initial equality, step-by-step containments, final equality) is stated as a conjunction rather than a single chained relation, since Lean has no native mixed equality/containment chain notation; this preserves the chapter's own warning that only the last hull-relaxation in the chain is asserted equal to the true convex hull. Theorem 4.10's index set (which term of each original disjunction a given conjunct's disjunct picked) is taken as given structural data satisfying the book's own defining relationship, matching the source's own treatment of as a named auxiliary index set rather than a from-scratch construction. Chapter 4's §4.5–4.6 (a machine-sequencing application with its own bespoke scheduling objects, Theorems 4.11–4.12) is out of scope for this mission — it introduces application-specific vocabulary not shared by the chapter's general hull-relaxation theory, not because it is difficult.
A trivializing formalization is ruled out explicitly: every theorem is stated for generic finite index types, never fixed at a small size that would collapse a union or intersection to a single term, and the chapter's own propositional-logic DNF/CNF conversion (informal narrative via truth tables in §1.3) is not itself a formalization target — this mission works entirely at the polyhedral-set level the chapter's own numbered results occupy.
Selected references
- E. Balas, Disjunctive Programming, Springer, 2018. DOI: 10.1007/978-3-030-00148-3, Chapter 4, §4.1–4.4.
- V. Chvátal, Linear Programming, W. H. Freeman, 1983 (cited in the text as [12], the origin of Theorem 4.1's basic step).
- E. Balas, Disjunctive programming: Properties of the convex hull of feasible points, Discrete Applied Mathematics 89 (1998), 3–44 (the origin of the hull-relaxation hierarchy).