Farkas certificates of support at most
ProvedSmaleNinth.farkas_sparse_certificateIf the system has no solution in , then it has a Farkas certificate of infeasibility supported on at most of its rows: a vector with
The bound on the support does not depend on the number of inequalities. It follows by combining two facts. Helly's theorem says that an infeasible system always contains an infeasible subsystem of at most inequalities, since the half-spaces are convex subsets of a space of dimension . Farkas' lemma applied to that subsystem gives multipliers for its rows, which extend by zero to multipliers for the whole system.
The statement makes the cost of certifying a negative answer independent of the size of the instance: a refutation names at most constraints and the coefficients that combine them into the contradiction . Together with the dual certificate of optimality from linear programming duality, this is the sense in which linear programming has short proofs for both answers, and it is the invariant on which the sampling algorithms for fixed and small dimension are built. For Smale's ninth problem it isolates the remaining difficulty as one of search rather than of verification: what is missing is not a small certificate but a way to find one using a number of arithmetic operations polynomial in the number of constraints and variables.
import Definitions.Def_Polyhedron /-! Infeasibility certificates of bounded support: an infeasible system of linear inequalities in `n` variables carries a Farkas certificate with at most `n+1` nonzero multipliers. Source: Helly's theorem (in the form `SmaleNinth.lp_feasible_iff_subsystems`) combined with Farkas' lemma (`SmaleNinth.farkas_lemma`); see A. Schrijver, *Theory of Linear and Integer Programming*, Wiley 1986, Sections 7.1 and 7.2, and the discussion of combinatorial dimension in K. L. Clarkson, *Las Vegas algorithms for linear and integer programming when the dimension is small*, J. ACM 42 (1995) 488-499. -/ open Matrix LinearOptimization /-- **Sparse Farkas certificate.** An infeasible system `Ax >= b` in `n` variables has a nonnegative combination of its rows witnessing infeasibility with at most `n+1` nonzero coefficients. -/
theorem SmaleNinth.farkas_sparse_certificate {m n : ℕ} (A : Matrix (Fin m) (Fin n) ℝ)
(b : Fin m → ℝ) (hinf : ¬ (polyhedron A b).Nonempty) :
∃ y : Fin m → ℝ, (∀ i, 0 ≤ y i) ∧ (∀ k, ∑ i, y i * A i k = 0) ∧ 0 < ∑ i, y i * b i ∧
(Finset.univ.filter (fun i => y i ≠ 0)).card ≤ n + 1 := by sorry