FormalConjectures/ErdosProblems/751.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

4 declarations, 4 contain sorry, 0 declared as axioms

Erdős Problem 751

References:

Imports (1)
  1. theorem Erdos751.erdos_751.parts.i Let $G$ be a graph with chromatic number $\chi(G)=4$ sorry line 50 source

    Source documentation

    Let $G$ be a graph with chromatic number $\chi(G)=4$. If $m_1<m_2<\cdots$ are the lengths of the cycles in $G$ then can $\min(m_{i+1}-m_i)$ be arbitrarily large?

    The answer is no: Bondy and Vince [BoVi98] proved that every graph with minimum degree at least $3$ has two cycles whose lengths differ by at most $2$, and hence the same is true for every graph with chromatic number $4$.

    erdos_751.variants.finite below carries the Lean proof. It assumes a finite vertex type, where this quantifies over any V : Type, and the two are joined by de Bruijn-Erdős: a graph that is not $3$-colourable has a finite subgraph that is not $3$-colourable, and cycles of that subgraph are cycles of the whole. Mathlib does not have de Bruijn-Erdős, so that step is not formalised here.

    depends on sorry what this means

    Statement uses: Iff, False, Nat, Exists, SimpleGraph, And, Eq, ENat, SimpleGraph.chromaticNumber, OfNat.ofNat, Membership.mem, Set, SimpleGraph.cycleLengths, LT.lt, LE.le, HAdd.hAdd

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

    20 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_751.parts.i :
        answer(False) ↔
          ∀ k : ℕ, ∃ (V : Type) (G : SimpleGraph V), G.chromaticNumber = 4 ∧
            ∀ m ∈ G.cycleLengths, ∀ m' ∈ G.cycleLengths, m < m' → m + k ≤ m' := by
    …
  2. theorem Erdos751.erdos_751.parts.ii Let $G$ be a graph with chromatic number $\chi(G)=4$ sorry line 66 source

    Source documentation

    Let $G$ be a graph with chromatic number $\chi(G)=4$. If $m_1<m_2<\cdots$ are the lengths of the cycles in $G$ then can $\min(m_{i+1}-m_i)$ be arbitrarily large? Can this happen if the girth of $G$ is large?

    The answer is no: Bondy and Vince [BoVi98] proved that every graph with minimum degree at least $3$ has two cycles whose lengths differ by at most $2$, and hence the same is true for every graph with chromatic number $4$.

    depends on sorry what this means

    Statement uses: Iff, False, Nat, Exists, SimpleGraph, And, Eq, ENat, SimpleGraph.chromaticNumber, OfNat.ofNat, LE.le, SimpleGraph.girth, Membership.mem, Set, SimpleGraph.cycleLengths, LT.lt, HAdd.hAdd

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

    20 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_751.parts.ii :
        answer(False) ↔
          ∀ k g : ℕ, ∃ (V : Type) (G : SimpleGraph V), G.chromaticNumber = 4 ∧ g ≤ G.girth ∧
            ∀ m ∈ G.cycleLengths, ∀ m' ∈ G.cycleLengths, m < m' → m + k ≤ m' := by
    …
  3. theorem Erdos751.erdos_751.variants.bondy_vince Bondy and Vince [BoVi98] proved that every graph with minimum degree at least $3$ has two cycles whose lengths differ by at most $2$ sorry line 77 source

    Source documentation

    Bondy and Vince [BoVi98] proved that every graph with minimum degree at least $3$ has two cycles whose lengths differ by at most $2$.

    depends on sorry what this means

    Statement uses: Fintype, SimpleGraph, DecidableRel, SimpleGraph.Adj, LE.le, Nat, OfNat.ofNat, SimpleGraph.minDegree, Exists, And, Membership.mem, Set, SimpleGraph.cycleLengths, LT.lt, HAdd.hAdd

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

    12 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_751.variants.bondy_vince {V : Type*} [Fintype V] (G : SimpleGraph V)
        [DecidableRel G.Adj] (hG : 3 ≤ G.minDegree) :
        ∃ m ∈ G.cycleLengths, ∃ m' ∈ G.cycleLengths, m < m' ∧ m' ≤ m + 2 := by
    …
  4. theorem Erdos751.erdos_751.variants.finite sorry line 95 source

    depends on sorry what this means

    Statement uses: Fintype, SimpleGraph, DecidableRel, SimpleGraph.Adj, LE.le, ENat, OfNat.ofNat, Nat, SimpleGraph.chromaticNumber, Exists, And, Membership.mem, Set, SimpleGraph.cycleLengths, LT.lt, HAdd.hAdd

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

    22 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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