The S-procedure (losslessness)
ProvedConvexOptimization.s_procedureThe S-procedure — the goal of this mission: one quadratic inequality implies another exactly when a single nonnegative multiplier certifies it.
Let be symmetric real matrices, , , and set
with associated block matrices . Assume the strict-feasibility (Slater) condition: some satisfies . Then
The right-hand side is a linear matrix inequality in , so an implication between two quadratic inequalities — a statement quantified over all of , and in general nonconvex — becomes a small semidefinite feasibility problem. The direction is elementary; it is the converse, losslessness, that is the theorem, and it holds only for a pair of quadratics: with two or more constraints the analogous procedure is merely sufficient.
Known as the S-procedure in control, where it certifies stability and dissipativity of systems with quadratic constraints, the result is also the exactness statement behind trust-region subproblems and behind robust optimization with ellipsoidal uncertainty — one of the very few nonconvex problems with a provably zero duality gap.
Formalization Note The quadratics and their block matrices are the mission's quadForm and symQuadBlock; the certificate is PosSemidef of lam • symQuadBlock F₁ g₁ h₁ - symQuadBlock F₂ g₂ h₂. Strict feasibility is a hypothesis of the whole iff, matching the book. Source: B&V §B.2, p. 655, proved in §B.4, pp. 657–658.
import Mathlib import Definitions.Def_ConvexOptimization_quadraticForms open scoped RealInnerProductSpace ENNReal open MeasureTheory
theorem ConvexOptimization.s_procedure {nn : ℕ}
(F₁ F₂ : Matrix (Fin nn) (Fin nn) ℝ) (hF₁ : F₁.IsSymm) (hF₂ : F₂.IsSymm)
(g₁ g₂ : Fin nn → ℝ) (h₁ h₂ : ℝ)
(xh : Fin nn → ℝ) (hxh : quadForm F₁ g₁ h₁ xh < 0) :
(∀ x, quadForm F₁ g₁ h₁ x ≤ 0 → quadForm F₂ g₂ h₂ x ≤ 0) ↔
∃ lam : ℝ, 0 ≤ lam ∧
(lam • symQuadBlock F₁ g₁ h₁ - symQuadBlock F₂ g₂ h₂).PosSemidef := by
sorry
Read-back
What the Lean code literally says, in plain math · claude-fable-5
Theorem. Fix a natural number ; real matrices , , each assumed symmetric; vectors ; scalars ; and a point with (strict feasibility of the first quadratic), where the file's ConvexOptimization_quadForm unfolds as (factor on the linear term). No convexity or definiteness is assumed of or . The theorem asserts the equivalence:
where, unfolding the file's ConvexOptimization_symQuadBlock, is the block matrix over the index type ( coordinates plus one extra index)
Note the exact orientation of the matrix condition: multiplies and is subtracted, i.e. in Loewner order; both implications relating and are nonstrict, and is nonstrict. Positive semidefiniteness in Mathlib includes the symmetry requirement (satisfied here since are symmetric). Edge case: for everything is scalar — the hypothesis forces , and the statement reads , i.e. on the left.
Confirmed by the mission captain (proposal self-audit).