FormalConjectures/Paper/DegreeSequencesTriangleFree.lean
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
18 declarations, 6 contain sorry, 0 declared as axioms
Title: Degree sequences in triangle-free graphs Authors: P. Erdős, S. Fajtlowicz and W. Staton, Published in Discrete Mathematics 92 (1991) 85–88.
Imports (1)
Imported by 1 file
- def
DegreeSequencesTriangleFree.IsCompactSequenceOnA sequence of natural numbers is compact on a setSif consecutive terms at distance2differ by1for allk ∈ Sline 35 sourceSource documentation
A sequence of natural numbers is compact on a set
Sif consecutive terms at distance2differ by1for allk ∈ S.no axioms what this means
Statement uses:
Nat,SetProof uses:
Membership.mem,Eq,HAdd.hAdd,OfNat.ofNat4 instances, coercions and auxiliary constants left out.
def IsCompactSequenceOn (d : ℕ → ℕ) (S : Set ℕ) : Prop := …
- def
SimpleGraph.degreeFreqThe number of vertices ofGhaving degreedline 45 sourceSource documentation
The number of vertices of
Ghaving degreed.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Fintype,SimpleGraph,NatProof uses:
Finset.card,Finset.filter,Eq,SimpleGraph.degree,Membership.mem,Set,SimpleGraph.neighborSet,Classical.propDecidable,SimpleGraph.Adj,Finset.univ4 instances, coercions and auxiliary constants left out.
noncomputable def degreeFreq (G : SimpleGraph α) (d : ℕ) : ℕ := …
- lemma
DegreeSequencesTriangleFree.lemma1_aLemma 1 (a) If a sequencedis nondecreasing and no three terms are equal, then terms at distance 2 differ by at least 1 line 58 sourceSource documentation
Lemma 1 (a) If a sequence
dis nondecreasing and no three terms are equal, then terms at distance 2 differ by at least 1.standard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Monotone,Ne,HAdd.hAdd,OfNat.ofNat,LE.le,HSub.hSubProof uses:
Decidable.byContradiction,Not18 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
lemma lemma1_a (h_mono : Monotone d) (h_no_three : ∀ k, d (k + 2) ≠ d k) : 1 ≤ d (k + 2) - d k := by … - lemma
DegreeSequencesTriangleFree.lemma1_bLemma 1 (b) If a sequencedis nondecreasing and no three terms are equal, then terms at distance2 * rdiffer by at leastrline 69 sourceSource documentation
Lemma 1 (b) If a sequence
dis nondecreasing and no three terms are equal, then terms at distance2 * rdiffer by at leastr.standard axioms: Quot.sound, propext what this means
Statement uses:
Nat,Monotone,Ne,HAdd.hAdd,OfNat.ofNat,LE.le,HSub.hSub,HMul.hMulProof uses:
Nat.recAux,of_eq_true,Eq.trans,True,congrArg,congrFun',MulZeroClass.mul_zero,add_zero,tsub_self,Eq,Mathlib.Tactic.Ring.of_eq,Nat.rawCast,HPow.hPow,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.mpr,id,Eq.symm,Eq.refland 18 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 11 steps
Open to load the checked before-and-after goal states.
lemma lemma1_b (h_mono : Monotone d) (h_no_three : ∀ i, d (i + 2) ≠ d i) : r ≤ d (k + 2 * r) - d k := by … - lemma
DegreeSequencesTriangleFree.lemma2_helper_shortHelper: additive form of Lemma 2(a)'s estimate, used bylemma2_a–lemma2_dline 86 sourceSource documentation
Helper: additive form of Lemma 2(a)'s estimate, used by
lemma2_a–lemma2_d. The upper sum (after reindexing) exceeds the lower sum by at least2 * n * n.private lemma lemma2_helper_short (h_mono : Monotone d) (h_no_three : ∀ i, d (i + 2) ≠ d i) : ∑ i ∈ Finset.Icc 1 (2 * n), d i + 2 * n * n ≤ ∑ i ∈ Finset.Icc (2 * n + 1) (4 * n), d i := by … - lemma
DegreeSequencesTriangleFree.lemma2_aLemma 2 (a) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal line 112 sourceSource documentation
Lemma 2 (a) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Monotone,LT.lt,OfNat.ofNat,Ne,HAdd.hAdd,LE.le,HMul.hMul,HSub.hSub,Finset.sum,Finset.IccProof uses:
Decidable.byContradiction,Not27 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
lemma lemma2_a (h_mono : Monotone d) (_h_pos : ∀ k, 0 < d k) (h_no_three : ∀ i, d (i + 2) ≠ d i) : 2 * n * n ≤ ∑ i ∈ .Icc (2 * n + 1) (4 * n), d i - ∑ i ∈ .Icc 1 (2 * n), d i := by … - lemma
DegreeSequencesTriangleFree.lemma2_bLemma 2 (b) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal line 125 sourceSource documentation
Lemma 2 (b) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Monotone,LT.lt,OfNat.ofNat,Ne,HAdd.hAdd,LE.le,HMul.hMul,HSub.hSub,Finset.sum,Finset.IccProof uses:
Eq,Eq.mpr,Insert.insert,Finset,id,congrArg,Finset.ext,Iff,Membership.mem,And,Or,congr,Eq.trans,congrFun',Decidable.byContradiction,Not,Finset.sum_insert,of_eq_true,False,Trueand 31 more98 instances, coercions and auxiliary constants left out.
Tactic trace: 25 steps
Open to load the checked before-and-after goal states.
lemma lemma2_b (h_mono : Monotone d) (h_pos : ∀ k, 0 < d k) (h_no_three : ∀ i, d (i + 2) ≠ d i) : 2 * n * n + 2 * n + 1 ≤ ∑ i ∈ .Icc (2 * n + 1) (4 * n + 1), d i - ∑ i ∈ .Icc 1 (2 * n), d i := by … - lemma
DegreeSequencesTriangleFree.lemma2_helper_shiftDocumented declaration: lemma2_helper_shift line 158 sourceSource documentation
Helper for
lemma2_candlemma2_d: shifting the index by2 * (n + 1)raises each term by at leastn + 1, so a block ofmterms starting at2 * n + 3exceeds the blockd 1, …, d mby at leastm * (n + 1).private lemma lemma2_helper_shift (m : ℕ) (h_mono : Monotone d) (h_no_three : ∀ i, d (i + 2) ≠ d i) : ∑ i ∈ Finset.Icc 1 m, d i + m * (n + 1) ≤ ∑ i ∈ Finset.Icc (2 * n + 3) (2 * n + 2 + m), d i := by … - lemma
DegreeSequencesTriangleFree.lemma2_cLemma 2 (c) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal line 183 sourceSource documentation
Lemma 2 (c) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Monotone,LT.lt,OfNat.ofNat,Ne,HAdd.hAdd,LE.le,HMul.hMul,HSub.hSub,Finset.sum,Finset.IccProof uses:
Eq,Eq.mpr,Insert.insert,Finset,id,congrArg,Finset.ext,Iff,Membership.mem,And,Or,congr,Eq.trans,Decidable.byContradiction,Not,Finset.sum_insert,of_eq_true,False,True,eq_false_of_decideand 32 more96 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
lemma lemma2_c (h_mono : Monotone d) (_h_pos : ∀ k, 0 < d k) (h_no_three : ∀ i, d (i + 2) ≠ d i) : 2 * n * n + 2 * n ≤ (∑ i ∈ .Icc (2 * n + 2) (4 * n + 2), d i) - ∑ i ∈ .Icc 1 (2 * n + 1), d i := by … - lemma
DegreeSequencesTriangleFree.lemma2_dLemma 2 (d) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal line 212 sourceSource documentation
Lemma 2 (d) Inequality involving sums of terms of a nondecreasing sequence with no three terms equal.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Monotone,LT.lt,OfNat.ofNat,Ne,HAdd.hAdd,LE.le,HMul.hMul,HSub.hSub,Finset.sum,Finset.IccProof uses:
Eq,Eq.mpr,Insert.insert,Finset,id,congrArg,Finset.ext,Iff,Membership.mem,And,Or,congr,Eq.trans,Decidable.byContradiction,Not,Finset.sum_insert,of_eq_true,False,True,eq_false_of_decideand 34 more76 instances, coercions and auxiliary constants left out.
Tactic trace: 20 steps
Open to load the checked before-and-after goal states.
lemma lemma2_d (h_mono : Monotone d) (h_pos : ∀ k, 0 < d k) (h_no_three : ∀ i, d (i + 2) ≠ d i) : 2 * n * n + 4 * n + 2 ≤ (∑ i ∈ .Icc (2 * n + 2) (4 * n + 3), d i) - ∑ i ∈ .Icc 1 (2 * n + 1), d i := by … - def
SimpleGraph.HasCompactdegreeSequenceThe degree sequence ofGis compact if it satisfiesIsCompactSequenceOnfor all valid indicesksuch thatk + 2 < Fintype.card αline 247 sourceSource documentation
The degree sequence of
Gis compact if it satisfiesIsCompactSequenceOnfor all valid indicesksuch thatk + 2 < Fintype.card α.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Fintype,SimpleGraph,DecidableRel,SimpleGraph.AdjProof uses: DegreeSequencesTriangleFree.IsCompactSequenceOn,
Nat,List.getD, SimpleGraph.degreeSequence,OfNat.ofNat,Set.ofPred,LT.lt,HAdd.hAdd,Fintype.card4 instances, coercions and auxiliary constants left out.
def HasCompactdegreeSequence (G : SimpleGraph α) [DecidableRel G.Adj] : Prop := …
- theorem
SimpleGraph.theorem1Theorem 1 sorry line 254 sourceSource documentation
Theorem 1. If a triangle-free graph has
f = 2, then it is bipartite, has minimum degree1, and its degree sequence is compact.depends on sorry what this means
Statement uses:
Fintype,DecidableEq,SimpleGraph,SimpleGraph.Connected,DecidableRel,SimpleGraph.Adj,SimpleGraph.CliqueFree,OfNat.ofNat,Nat,Eq, SimpleGraph.degreeSequenceMultiplicity,And,SimpleGraph.IsBipartite,SimpleGraph.minDegree, SimpleGraph.HasCompactdegreeSequenceProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem theorem1 (G : SimpleGraph α) (h_conn: G.Connected) [DecidableRel G.Adj] (h₁ : G.CliqueFree 3) (h₂ : degreeSequenceMultiplicity G = 2) : G.IsBipartite ∧ G.minDegree = 1 ∧ HasCompactdegreeSequence G := by …Mentions: SimpleGraph.degreeSequenceMultiplicity, SimpleGraph.HasCompactdegreeSequence
- lemma
SimpleGraph.lemma3Lemma 3 sorry line 262 sourceSource documentation
Lemma 3. For every
nthere exists a bipartite graph with8 nvertices, minimum degreen + 1, andf = 3.depends on sorry what this means
Statement uses:
Nat,LT.lt,OfNat.ofNat,Exists,SimpleGraph,Fin,HMul.hMul,DecidableRel,SimpleGraph.Adj,And,SimpleGraph.IsBipartite,Eq,SimpleGraph.minDegree,HAdd.hAdd, SimpleGraph.degreeSequenceMultiplicityProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous14 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
lemma lemma3 (n : ℕ) (hn : 0 < n) : ∃ (G : SimpleGraph (Fin (8 * n))) (_ : DecidableRel G.Adj), G.IsBipartite ∧ G.minDegree = n + 1 ∧ degreeSequenceMultiplicity G = 3 := by …Mentions: SimpleGraph.degreeSequenceMultiplicity
- lemma
SimpleGraph.lemma4Lemma 4 sorry line 274 sourceSource documentation
Lemma 4. Let
Gbe a triangle-free graph withnvertices and letvbe a vertex ofG. There exists a triangle-free graphHcontainingGas an induced subgraph such that: (i) the degree ofvinHis one more than its degree inG; (ii) for every vertexwofGother thanvthe degree ofwinHis the same as its degree inG; (iii) ifJis the subgraph ofHinduced by the vertices not inG, thenf(J)=3andδ(J) ≥ 2n.depends on sorry what this means
Statement uses:
Fintype,DecidableEq,SimpleGraph,DecidableRel,SimpleGraph.Adj,SimpleGraph.Connected,SimpleGraph.CliqueFree,OfNat.ofNat,Nat,Exists,SimpleGraph.Embedding,And,Eq,SimpleGraph.degree,Membership.mem,Set,SimpleGraph.neighborSet,HAdd.hAdd,Ne,Set.compland 11 moreProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous28 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
lemma lemma4 (G : SimpleGraph α) [DecidableRel G.Adj] (h_conn: G.Connected) (h₁ : G.CliqueFree 3) (v : α) : ∃ (β : Type*) (_ : Fintype β) (H : SimpleGraph β) (_ : DecidableRel H.Adj) (i : G ↪g H), H.CliqueFree 3 ∧ H.degree (i v) = G.degree v + 1 ∧ (∀ w ≠ v, H.degree (i w) = G.degree w) ∧ let J := H.induce (Set.compl (Set.range i)) … - theorem
SimpleGraph.theorem2Theorem 2 sorry line 287 sourceSource documentation
Theorem 2. Every triangle-free graph is an induced subgraph of one with
f = 3.depends on sorry what this means
Statement uses:
Fintype,DecidableEq,SimpleGraph,DecidableRel,SimpleGraph.Adj,SimpleGraph.Connected,SimpleGraph.CliqueFree,OfNat.ofNat,Nat,Exists,SimpleGraph.Embedding,And,Eq, SimpleGraph.degreeSequenceMultiplicityProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem theorem2 (G : SimpleGraph α) [DecidableRel G.Adj] (h_conn: G.Connected) (h : G.CliqueFree 3) : ∃ (β : Type*) (_ : Fintype β) (H : SimpleGraph β) (_ : DecidableRel H.Adj) (i : G ↪g H), H.CliqueFree 3 ∧ degreeSequenceMultiplicity H = 3 := by …Mentions: SimpleGraph.degreeSequenceMultiplicity
- def
SimpleGraph.FF nis the smallest number of vertices of a triangle-free graph with chromatic numbernandf = 3line 296 sourceSource documentation
F nis the smallest number of vertices of a triangle-free graph with chromatic numbernandf = 3.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
InfSet.sInf,Set.ofPred,Exists,SimpleGraph,Fin,DecidableRel,SimpleGraph.Adj,And,SimpleGraph.CliqueFree,OfNat.ofNat,Eq,ENat,SimpleGraph.chromaticNumber, SimpleGraph.degreeSequenceMultiplicity5 instances, coercions and auxiliary constants left out.
noncomputable def F (n : ℕ) : ℕ := …
- theorem
SimpleGraph.F_threeThe smallest number of vertices of a triangle-free graph with chromatic number 3 and f=3 is 7 sorry line 302 sourceSource documentation
The smallest number of vertices of a triangle-free graph with chromatic number 3 and f=3 is 7.
depends on sorry what this means
Statement uses:
Eq,Nat, SimpleGraph.F,OfNat.ofNatProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem F_three : F 3 = 7 := by …
Mentions: SimpleGraph.F
- theorem
SimpleGraph.F_four_leThe smallest number of vertices of a triangle-free graph with chromatic number 4 and f=3 is at most 19 sorry line 307 sourceSource documentation
The smallest number of vertices of a triangle-free graph with chromatic number 4 and f=3 is at most 19.
depends on sorry what this means
Statement uses:
LE.le,Nat, SimpleGraph.F,OfNat.ofNatProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous4 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem F_four_le : F 4 ≤ 19 := by …
Mentions: SimpleGraph.F