FormalConjectures/Wikipedia/BeckFialaConjecture.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1

3 declarations, 2 contain sorry, 0 declared as axioms

Beck–Fiala theorem and conjecture

Discrepancy of bounded-degree set systems. Given sets $S_1, \dots, S_m \subseteq [n]$ such that every element of $[n]$ belongs to at most $t$ of the sets (the system has degree at most $t$), one seeks a colouring $\chi \colon [n] \to \{-1, +1\}$ making every set as balanced as possible, i.e. minimizing the discrepancy $\max_i \left|\sum_{j \in S_i} \chi(j)\right|$.

The Beck–Fiala theorem (1981) states that every set system of degree at most $t \ge 1$ has discrepancy at most $2t - 1$. The Beck–Fiala conjecture asserts that the truth is much stronger: the discrepancy of a degree-$t$ system is $O(\sqrt{t})$, with a constant independent of $n$, $m$ and $t$.

Despite considerable attention the bound $2t - 1$ has been improved only slightly: Bukh (2016) proved a bound of the form $2t - \log^* t$ (where $\log^*$ is the iterated logarithm), and Banaszczyk's vector balancing theorem yields $O(\sqrt{t \log n})$. The Komlós conjecture (see KomlosConjecture.lean) would imply the Beck–Fiala conjecture, since scaling the incidence vectors of a degree-$t$ system by $1/\sqrt{t}$ produces vectors of Euclidean norm at most $1$.

References:

Imports (1)
  1. theorem BeckFiala.beck_fiala_theorem sorry line 72 source

    depends on sorry what this means

    Statement uses: Nat, LE.le, OfNat.ofNat, Fin, Finset, Finset.card, Finset.filter, Membership.mem, Finset.univ, Exists, Real, And, Or, Eq, Neg.neg, abs, Finset.sum, HSub.hSub, HMul.hMul

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    46 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

  2. theorem BeckFiala.beck_fiala_conjecture The Beck–Fiala conjecture There exists a universal constant sorry line 87 source

    Source documentation

    The Beck–Fiala conjecture

    There exists a universal constant $C > 0$ such that every set system $S_1, \dots, S_m \subseteq [n]$ of degree at most $t$ admits a colouring $\chi \colon [n] \to \{-1, +1\}$ with $\left|\sum_{j \in S_i} \chi(j)\right| \le C \sqrt{t}$ for every $i$.

    depends on sorry what this means

    Statement uses: Exists, Real, And, LT.lt, OfNat.ofNat, Nat, Fin, Finset, LE.le, Finset.card, Finset.filter, Membership.mem, Finset.univ, Or, Eq, Neg.neg, abs, Finset.sum, HMul.hMul, Real.sqrt

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    41 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem beck_fiala_conjecture :
        ∃ C : ℝ, 0 < C ∧ ∀ (n m t : ℕ) (S : Fin m → Finset (Fin n)),
          (∀ j, (Finset.univ.filter fun i => j ∈ S i).card ≤ t) →
          ∃ χ : Fin n → ℝ, (∀ j, χ j = 1 ∨ χ j = -1) ∧
            ∀ i, |∑ j ∈ S i, χ j| ≤ C * Real.sqrt t := by
    …
  3. theorem BeckFiala.beck_fiala_conjecture.variants.no_sets Sanity check: a system with no sets at all ($m = 0$) admits any colouring vacuously; in particular the all-ones colouring satisfies every discrepancy bound line 99 source

    Source documentation

    Sanity check: a system with no sets at all ($m = 0$) admits any colouring vacuously; in particular the all-ones colouring satisfies every discrepancy bound.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Nat, Fin, OfNat.ofNat, Finset, LE.le, Finset.card, Finset.filter, Membership.mem, Finset.univ, Exists, Real, And, Or, Eq, Neg.neg, abs, Finset.sum, Real.sqrt

    Proof uses: Exists.intro, And.intro, Or.inl, rfl, Fin.elim0

    32 instances, coercions and auxiliary constants left out.

    theorem beck_fiala_conjecture.variants.no_sets (n t : ℕ) (S : Fin 0 → Finset (Fin n))
        (_hdeg : ∀ j, (Finset.univ.filter fun i => j ∈ S i).card ≤ t) :
        ∃ χ : Fin n → ℝ, (∀ j, χ j = 1 ∨ χ j = -1) ∧
          ∀ i, |∑ j ∈ S i, χ j| ≤ Real.sqrt t :=
    …