Rothvoß's Lemma 8: one round of the partial-coloring method
Provedlemma8_partial_coloring_roundThis is Rothvoß's Lemma 8, the one-round partial-coloring lemma at the heart of Spencer's entropy-method proof of the discrepancy theorem, generalized here from a single set to rows handled jointly.
Fix rows on a common active column set of size , and satisfying the entropy budget
Then there exist two Boolean colorings that differ in more than coordinates (a substantial fraction of ), such that the signed half-difference — a partial coloring valued in , nonzero exactly where and disagree — keeps every row's signed sum small:
The proof combines subadditivity of Shannon entropy across the rows with Rothvo\u00df's Lemma 9 (the per-row entropy bound shannonEntropy_shellFin_le) to bound the joint entropy of the quantized row sums, a pigeonhole argument to find a large bucket of colorings whose row sums are pairwise close, and Kleitman's diameter theorem (via a Pinsker-type bound on the relevant Hamming-ball volume) to extract two colorings in that bucket at large Hamming distance. Iterating this lemma on a shrinking active column set is what proves the full discrepancy bound.
Formalization Note. is the platform definition of the same name (the -valued Rademacher sign of a Boolean coloring).
import Mathlib import Definitions.Def_RSign open Finset
theorem lemma8_partial_coloring_round (n : ℕ) {m : ℕ} (a : Fin n → Fin m → ℝ)
(h01 : ∀ i j, a i j = 0 ∨ a i j = 1) (hm : 1 ≤ m) (lam : ℝ) (hlam : 2 ≤ lam)
(hbudget : (n:ℝ) * ((12 / Real.log 2) * Real.exp (-lam^2/4)) ≤ (m:ℝ)/10) :
∃ x y : Fin m → Bool,
2 * (m/10) < (Finset.univ.filter (fun j => x j ≠ y j)).card ∧
∀ i : Fin n, |∑ j, a i j * ((RSign x j - RSign y j)/2)| ≤ lam * Real.sqrt (m:ℝ) := by sorry
Confirmed by the mission captain (proposal self-audit).