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

8 declarations, 2 contain sorry, 0 declared as axioms

Erdős Problem 74

Reference: erdosproblems.com/74

Imports (1)
  1. def Erdos74.SimpleGraph.edgeDistancesToBipartite For a given subgraph A, this is the set of all numbers k such that A can be made bipartite by deleting k edges line 43 source

    Source documentation

    For a given subgraph A, this is the set of all numbers k such that A can be made bipartite by deleting k edges.

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

    Statement uses: SimpleGraph, SimpleGraph.Subgraph, Set, Nat

    Proof uses: Set.ofPred, Exists, Sym2, LE.le, SimpleGraph.Subgraph.edgeSet, SimpleGraph.IsBipartite, SimpleGraph.Subgraph.verts, SimpleGraph.Subgraph.deleteEdges, SimpleGraph.Subgraph.coe, Eq, Set.ncard

    2 instances, coercions and auxiliary constants left out.

    def SimpleGraph.edgeDistancesToBipartite {G : SimpleGraph V} (A : G.Subgraph) : Set ℕ :=
    …
  2. theorem Erdos74.SimpleGraph.edgeDistancesToBipartite_nonempty The set of edge distances to a bipartite graph is always non-empty because deleting all edges from a graph makes it bipartite line 52 source

    Source documentation

    The set of edge distances to a bipartite graph is always non-empty because deleting all edges from a graph makes it bipartite.

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

    Statement uses: SimpleGraph, SimpleGraph.Subgraph, Set.Nonempty, Nat, Erdos74.SimpleGraph.edgeDistancesToBipartite

    Proof uses: id, Exists.intro, Membership.mem, Set, Set.ofPred, Exists, Sym2, LE.le, SimpleGraph.Subgraph.edgeSet, SimpleGraph.IsBipartite, SimpleGraph.Subgraph.verts, SimpleGraph.Subgraph.deleteEdges, SimpleGraph.Subgraph.coe, Eq, Set.ncard, Nonempty.intro, SimpleGraph.Coloring, Fin, OfNat.ofNat, RelHom.mk and 17 more

    16 instances, coercions and auxiliary constants left out.

    Tactic trace: 4 steps

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

    theorem SimpleGraph.edgeDistancesToBipartite_nonempty {G : SimpleGraph V} (A : G.Subgraph) :
        SimpleGraph.edgeDistancesToBipartite A |>.Nonempty := by
    …

    Mentions: Erdos74.SimpleGraph.edgeDistancesToBipartite

  3. def Erdos74.SimpleGraph.minEdgeDistToBipartite The minimum number of edges that must be deleted from a subgraph A to make it bipartite line 62 source

    Source documentation

    The minimum number of edges that must be deleted from a subgraph A to make it bipartite.

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

    Statement uses: SimpleGraph, SimpleGraph.Subgraph, Nat

    Proof uses: InfSet.sInf, Erdos74.SimpleGraph.edgeDistancesToBipartite

    1 instances, coercions and auxiliary constants left out.

    noncomputable def SimpleGraph.minEdgeDistToBipartite {G : SimpleGraph V} (A : G.Subgraph) : ℕ :=
    …
  4. def Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite For a graph G and a number n, this is the set of minEdgeDistToBipartite A for all induced subgraphs A of G on n vertices line 69 source

    Source documentation

    For a graph G and a number n, this is the set of minEdgeDistToBipartite A for all induced subgraphs A of G on n vertices.

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

    Statement uses: SimpleGraph, Nat, Set

    Proof uses: Set.ofPred, Exists, SimpleGraph.Subgraph, Eq, Set.ncard, SimpleGraph.Subgraph.verts, Set.Finite, Erdos74.SimpleGraph.minEdgeDistToBipartite

    def SimpleGraph.subgraphEdgeDistsToBipartite (G : SimpleGraph V) (n : ℕ) : Set ℕ :=
    …
  5. theorem Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite_bddAbove The set of minimum edge distances to bipartite for subgraphs of size n is bounded above line 80 source

    Source documentation

    The set of minimum edge distances to bipartite for subgraphs of size n is bounded above. A graph on n vertices has at most n choose 2 edges, and deleting all of them makes the graph bipartite, providing a straightforward upper bound.

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

    Statement uses: SimpleGraph, Nat, BddAbove, Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite

    Proof uses: Exists.intro, Membership.mem, Set, upperBounds, Nat.choose, OfNat.ofNat, Eq.mpr, Exists, SimpleGraph.Subgraph, Eq, Set.ncard, SimpleGraph.Subgraph.verts, Set.Finite, InfSet.sInf, Set.ofPred, Sym2, LE.le, SimpleGraph.Subgraph.edgeSet, SimpleGraph.IsBipartite, SimpleGraph.Subgraph.deleteEdges and 66 more

    35 instances, coercions and auxiliary constants left out.

    Tactic trace: 23 steps

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

    theorem SimpleGraph.subgraphEdgeDistsToBipartite_bddAbove (G : SimpleGraph V) (n : ℕ) :
        BddAbove (SimpleGraph.subgraphEdgeDistsToBipartite G n) := by
    …

    Mentions: Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite

  6. def Erdos74.SimpleGraph.maxSubgraphEdgeDistToBipartite For a given graph $G$ and size $n$, this defines the smallest number $k$ such that any subgraph of $G$ on $n$ vertices can be made bipartite by deleting at most $k$ edges line 118 source

    Source documentation

    For a given graph $G$ and size $n$, this defines the smallest number $k$ such that any subgraph of $G$ on $n$ vertices can be made bipartite by deleting at most $k$ edges.

    This value is optimal because it is the maximum of minEdgeDistToBipartite taken over all $n$-vertex subgraphs. This means there exists at least one $n$-vertex subgraph that requires exactly this many edge deletions. This is Definition 3.1 in [EHS82].

    [EHS82] Erdős, P. and Hajnal, A. and Szemerédi, E., On almost bipartite large chromatic graphs Theory and practice of combinatorics (1982), 117-123.

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

    Statement uses: SimpleGraph, Nat

    Proof uses: SupSet.sSup, Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite

    1 instances, coercions and auxiliary constants left out.

    noncomputable def SimpleGraph.maxSubgraphEdgeDistToBipartite
        (G : SimpleGraph V) (n : ℕ) : ℕ := sSup <| SimpleGraph.subgraphEdgeDistsToBipartite G n
    …

    Mentions: Erdos74.SimpleGraph.subgraphEdgeDistsToBipartite

  7. theorem Erdos74.erdos_74 sorry line 131 source

    depends on sorry what this means

    Statement uses: Iff, False, Nat, Filter.Tendsto, Filter.atTop, Exists, SimpleGraph, And, Eq, ENat, SimpleGraph.chromaticNumber, Top.top, LE.le, Erdos74.SimpleGraph.maxSubgraphEdgeDistToBipartite

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

    7 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

  8. theorem Erdos74.erdos_74.variants.sqrt Is there a graph of infinite chromatic number such that every finite subgraph on $n$ vertices can be made bipartite by deleting at most $\sqrt{n}$ edges? sorry line 141 source

    Source documentation

    Is there a graph of infinite chromatic number such that every finite subgraph on $n$ vertices can be made bipartite by deleting at most $\sqrt{n}$ edges?

    depends on sorry what this means

    Statement uses: Iff, True, Exists, SimpleGraph, And, Eq, ENat, SimpleGraph.chromaticNumber, Top.top, Nat, LE.le, Real, Erdos74.SimpleGraph.maxSubgraphEdgeDistToBipartite, Real.sqrt

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

    9 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

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

    theorem erdos_74.variants.sqrt : answer(sorry) ↔
        ∃ (V : Type u) (G : SimpleGraph V), G.chromaticNumber = ⊤ ∧
        ∀ n, G.maxSubgraphEdgeDistToBipartite n ≤ (n : ℝ).sqrt := by
    …