Theorem 4.2 — a small integral objective with the same optimal solutions and optimal dual bases
ProvedDiophantinePreprocessing.FrankTardos.same_optimal_solutions_and_dual_basesLet , let be a rational objective and put . There is an integral vector with
such that for every , every matrix with entries in and every , with :
- a point is -maximal if and only if it is -maximal;
- a set of rows of is an optimal dual basis for if and only if it is an optimal dual basis for .
In the paper is the output of the preprocessing algorithm applied to and . The theorem lets any linear-programming algorithm whose running time is polynomial in and in the length of the objective be run on instead of , whose length is polynomial in alone, which is how polynomial algorithms over polyhedra become strongly polynomial.
Formalization Note "The output of the preprocessing algorithm" is replaced by the guarantee it provides: the statement asserts the existence of an integral with the explicit size bound of the Output line (p. 55). is chosen before and , so one vector works for every matrix with columns and every right-hand side. The size bound is essential: without it a multiple of by a common denominator would satisfy the conclusion.
import Mathlib import Definitions.Def_DiophantinePreprocessing_FrankTardos_IsWMaximal import Definitions.Def_DiophantinePreprocessing_FrankTardos_IsOptimalDualBasis
namespace DiophantinePreprocessing.FrankTardos
/-- Frank–Tardos, Theorem 4.2 (p. 58), existence form: for every rational `w ∈ ℚⁿ` there is an
integral `w̃` with `‖w̃‖∞ ≤ 2^{4n³} N^{n(n+2)}`, `N = (n+1)! + 1` (the output of the
preprocessing algorithm applied to `w` and `N`), such that for every matrix `A` with entries
`0, ±1` and every `b`: (i) `x ∈ P = {x : A x ≤ b}` is `w`-maximal iff it is `w̃`-maximal, and
(ii) a set of rows of `A` is an optimal dual basis for `max (w x : A x ≤ b)` iff it is one for
`max (w̃ x : A x ≤ b)`. -/
theorem same_optimal_solutions_and_dual_bases (n : ℕ) (w : Fin n → ℚ) :
∃ wt : Fin n → ℤ,
(∀ j, |wt j| ≤ 2 ^ (4 * n ^ 3) * (((n + 1).factorial : ℤ) + 1) ^ (n * (n + 2))) ∧
∀ (m : ℕ) (A : Matrix (Fin m) (Fin n) ℤ),
(∀ i j, A i j = -1 ∨ A i j = 0 ∨ A i j = 1) →
∀ b : Fin m → ℝ,
(∀ x : Fin n → ℝ,
IsWMaximal A b (fun j => (w j : ℝ)) x ↔ IsWMaximal A b (fun j => (wt j : ℝ)) x) ∧
(∀ B : Finset (Fin m),
IsOptimalDualBasis A b (fun j => (w j : ℝ)) B ↔
IsOptimalDualBasis A b (fun j => (wt j : ℝ)) B) := by sorry
end DiophantinePreprocessing.FrankTardos
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Fix a natural number and a rational vector (indexed by ). There is no other hypothesis on or . The statement says there exists an integer vector with two properties.
(Size bound.) Every coordinate satisfies
computed exactly in the integers.
(Invariance.) The same works for every , every and every integer matrix whose entries all lie in . Since is chosen before , and , it depends only on and . Here and are both read as real vectors through the exact embeddings and . For every such , and :
- For every real vector :
- For every finite set of row indices of :
The two predicates are not shown here. and are defined in separate files of this bundle, and I was given only their names and argument lists, not their definitions. So this read-back cannot say what they mean. In particular it cannot say whether they refer to the polyhedron , whether they require to be feasible or to have a particular size or linear independence, or what they say when that system is infeasible or the objective is unbounded. The theorem only says that swapping for in the objective-vector argument leaves each predicate's truth value unchanged, with , and (or ) held fixed.
What the statement does not say. It is purely an existence claim. It names no algorithm and does not say how is computed. It says nothing about the sign of , about whether is nonzero, or about whether is unique. The bound above is always at least , so for example is never ruled out by the bound alone.
Degenerate cases.
- : and each contain only the empty vector, so is the empty vector. The bound becomes and is vacuous because there are no coordinates. Once both are read as real vectors, and are the same empty vector, so both equivalences hold trivially.
- : and are empty, the entry condition on holds vacuously, and the only choice of is .
- arbitrary: may be any real vector, including one that makes infeasible. What the equivalences then say depends entirely on the unseen definitions.
No division, natural-number subtraction, integral, supremum or other default-valued total function appears in the statement itself. The factorial is computed in and embedded exactly into .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.