Corollary 7.3 — iterating over every 0-1 index reaches the integer hull,
ProvedDisjunctive.HigherDim.full_split_convexification_v2convex-hulldisjunctive-programminglift-and-projectmixed-integer-programming
This is Corollary 7.3 of Balas's Disjunctive Programming. Let be the LP relaxation of a mixed 0-1 program with 0-1 index set , the system containing the bound rows and (), and . Applying successively for every (in any order, each once) gives
Formalization Note. The retired version allowed an arbitrary polyhedron, for which the statement fails (unbounded line ). Throughout Chapter 7 the book works with : the bound constraints are rows of the system that every construction multiplies. This is now the explicit hypothesis HasBoundRows A b N' (the system contains the rows for every and for every ); it is satisfiable with nonempty (e.g. the unit box) and excludes the disproof's instance with no rows.
Preamble
import Mathlib import Definitions.Def_Disjunctive_HigherDim_Basic import Definitions.Def_Disjunctive_HigherDim_BoundRows
Formal statement
namespace Disjunctive.HigherDim
/-- Corollary 7.3 (Balas, *Disjunctive Programming*, Springer 2018, §7.1, p. 93): for
`K = {x : Ãx ≥ b̃}` the LP relaxation of a mixed 0-1 program with 0-1 index set `N'` (bound rows
`x ≥ 0`, `x_j ≤ 1`, `j ∈ N'`, included in the system, `HasBoundRows`), iterating the
one-variable convexification over all of `N'` (in any duplicate-free order) gives
`P_{1,…,p}(K) = conv(K₀)`.
Corrected: the retired version allowed an arbitrary polyhedron `Ax ≥ b` without the bounds. -/
theorem full_split_convexification_v2 {m n : ℕ} (A : Matrix (Fin m) (Fin n) ℝ) (b : Fin m → ℝ)
(Nprime : Finset (Fin n)) (hK : HasBoundRows A b Nprime) (l : List (Fin n)) (hnd : l.Nodup)
(heq : l.toFinset = Nprime) :
IteratedSplit (Poly A b) l = convexHull ℝ (K0Set A b Nprime) := by sorry
end Disjunctive.HigherDim
Source
E. Balas, Disjunctive Programming, Springer 2018, DOI 10.1007/978-3-030-00148-3, §7.1, p. 93, Corollary 7.3