No public endorsements yet.
Loading review…
Sign in with ORCIDConcept map
Evidence
Each proof establishes this claim relative to its assumptions.
Theorem
For all a and b there is an N such that every graph on at least N vertices contains a clique on a vertices or an independent set on b vertices. Equivalently: colouring the edges of a large enough complete graph with two colours always leaves a monochromatic clique.
Lean source view on GitHub
| 1 | import Mathlib.Combinatorics.SimpleGraph.Clique |
| 2 | import Mathlib.Data.Set.Card |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: Ramsey's theorem |
| 7 | type: theorem |
| 8 | --- |
| 9 | For all *a* and *b* there is an *N* such that every graph on at least *N* |
| 10 | vertices contains a clique on *a* vertices or an independent set on *b* |
| 11 | vertices. Equivalently: colouring the edges of a large enough complete |
| 12 | graph with two colours always leaves a monochromatic clique. |
| 13 | |
| 14 | # Formalization notes |
| 15 | |
| 16 | A clique is a set of pairwise adjacent vertices and an independent set a |
| 17 | set of pairwise non-adjacent vertices, both in mathlib's `Set`-valued, |
| 18 | `Prop`-valued form (`IsIndepSet` is by definition pairwise |
| 19 | non-adjacency, so no complement graph and no decidability appear in the |
| 20 | statement). Sizes are counted with `Set.ncard` and stated as "at least", |
| 21 | as everywhere in this submission. |
| 22 | |
| 23 | Graphs range over the canonical carriers `Fin n` for all `n` beyond the |
| 24 | bound, so the statement applies to a graph on any finite vertex set by |
| 25 | transport along a bijection. |
| 26 | |
| 27 | This is the two-colour case of the multicolour concept of this |
| 28 | submission — colour a pair by whether it is an edge — and it is proved |
| 29 | that way, by a glue proof assuming that statement. It gets its own |
| 30 | statement because it is the form the literature cites and the form |
| 31 | graph-theoretic applications consume, and because a submission's headline |
| 32 | should not be reachable only through a strengthening. |
| 33 | -/ |
| 34 | |
| 35 | namespace Lax14.Ramsey |
| 36 | |
| 37 | /-- Ramsey's theorem: a large enough graph contains a clique on `a` |
| 38 | vertices or an independent set on `b` vertices. -/ |
| 39 | axiom exists_clique_or_indepSet (a b : ℕ) : |
| 40 | ∃ N : ℕ, ∀ (n : ℕ) (G : SimpleGraph (Fin n)), N ≤ n → |
| 41 | (∃ S : Set (Fin n), G.IsClique S ∧ a ≤ S.ncard) ∨ |
| 42 | (∃ S : Set (Fin n), G.IsIndepSet S ∧ b ≤ S.ncard) |
| 43 | |
| 44 | end Lax14.Ramsey |
| 45 |
Formalization notes
A clique is a set of pairwise adjacent vertices and an independent set a set of pairwise non-adjacent vertices, both in mathlib's -valued, -valued form ( is by definition pairwise non-adjacency, so no complement graph and no decidability appear in the statement). Sizes are counted with and stated as "at least", as everywhere in this submission.
Graphs range over the canonical carriers for all beyond the bound, so the statement applies to a graph on any finite vertex set by transport along a bijection.
This is the two-colour case of the multicolour concept of this submission — colour a pair by whether it is an edge — and it is proved that way, by a glue proof assuming that statement. It gets its own statement because it is the form the literature cites and the form graph-theoretic applications consume, and because a submission's headline should not be reachable only through a strengthening.
Community review
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above; your ORCID profile must share a public name.
0 comments