FormalConjecturesForMathlib/Combinatorics/SimpleGraph/EdgeColouring.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

2 declarations, 0 contain sorry, 0 declared as axioms

Edge colourings of a SimpleGraph

SimpleGraph.IsEdgeColouring H c asserts that c : ι → SimpleGraph V is a partition of the edges of H into colour classes indexed by ι. The classes must (1) cover H (H = ⨆ i, c i) and (2) be pairwise disjoint (each edge belongs to exactly one class).

This unifies the previous local IsNEdgeColouring (ι = Fin n) and IsCountableEdgeColouring (ι = ℕ) shapes used in FormalConjectures/ErdosProblems/596.lean. The two are now special cases of IsEdgeColouring parameterised by the index type.

SimpleGraph.TopEdgeLabeling.CliqueFree is the Ramsey-theoretic condition on the other edge-colouring shape Mathlib provides, a labelling of the edges of the complete graph: no colour class contains a clique of the given size.

Imports (3)
Imported by 2 files
  1. def SimpleGraph.IsEdgeColouring IsEdgeColouring H c asserts that c : ι → SimpleGraph V is a partition of the edges of H: the colour classes cover H (H = ⨆ i, c i) and are pairwise disjoint line 44 source

    Source documentation

    IsEdgeColouring H c asserts that c : ι → SimpleGraph V is a partition of the edges of H: the colour classes cover H (H = ⨆ i, c i) and are pairwise disjoint.

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

    Statement uses: SimpleGraph

    Proof uses: And, Eq, iSup, Ne, Disjoint

    8 instances, coercions and auxiliary constants left out.

    def IsEdgeColouring {V ι : Type*} (H : SimpleGraph V) (c : ι → SimpleGraph V) : Prop :=
    …

    Mentions: c

  2. def SimpleGraph.TopEdgeLabeling.CliqueFree A labelling of the edges of the complete graph on V by ι is n-clique-free when no colour class contains an n-clique, that is, when it admits no monochromatic n-clique line 49 source

    Source documentation

    A labelling of the edges of the complete graph on V by ι is n-clique-free when no colour class contains an n-clique, that is, when it admits no monochromatic n-clique.

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

    Statement uses: SimpleGraph.TopEdgeLabeling, Nat

    Proof uses: SimpleGraph.CliqueFree, SimpleGraph.EdgeLabeling.labelGraph, Top.top, SimpleGraph

    4 instances, coercions and auxiliary constants left out.

    def TopEdgeLabeling.CliqueFree {V ι : Type*} (C : TopEdgeLabeling V ι) (n : ℕ) : Prop :=
    …