Turán's theorem #
In this file we prove Turán's theorem, the first important result of extremal graph theory,
which states that the r + 1
-cliquefree graph on n
vertices with the most edges is the complete
r
-partite graph with part sizes as equal as possible (turanGraph n r
).
The forward direction of the proof performs "Zykov symmetrisation", which first shows constructively that non-adjacency is an equivalence relation in a maximal graph, so it must be complete multipartite with the parts being the equivalence classes. Then basic manipulations show that the graph is isomorphic to the Turán graph for the given parameters.
For the reverse direction we first show that a Turán-maximal graph exists, then transfer
the property through turanGraph n r
using the isomorphism provided by the forward direction.
Main declarations #
SimpleGraph.IsTuranMaximal
:G.IsTuranMaximal r
means thatG
has the most number of edges for its number of vertices while still beingr + 1
-cliquefree.SimpleGraph.turanGraph n r
: The canonicalr + 1
-cliquefree Turán graph onn
vertices.SimpleGraph.IsTuranMaximal.finpartition
: The result of Zykov symmetrisation, a finpartition of the vertices such that two vertices are in the same part iff they are non-adjacent.SimpleGraph.IsTuranMaximal.nonempty_iso_turanGraph
: The forward direction, an isomorphism betweenG
satisfyingG.IsTuranMaximal r
andturanGraph n r
.isTuranMaximal_of_iso
: the reverse direction,G.IsTuranMaximal r
given the isomorphism.isTuranMaximal_iff_nonempty_iso_turanGraph
: Turán's theorem in full.
References #
- https://en.wikipedia.org/wiki/Turán%27s_theorem
An r + 1
-cliquefree graph is r
-Turán-maximal if any other r + 1
-cliquefree graph on
the same vertex set has the same or fewer number of edges.
Equations
- G.IsTuranMaximal r = (G.CliqueFree (r + 1) ∧ ∀ (H : SimpleGraph V) [inst_1 : DecidableRel H.Adj], H.CliqueFree (r + 1) → H.edgeFinset.card ≤ G.edgeFinset.card)
Instances For
The canonical r + 1
-cliquefree Turán graph on n
vertices.
Equations
Instances For
An r + 1
-cliquefree Turán-maximal graph is not r
-cliquefree
if it can accommodate such a clique.
In a Turán-maximal graph, non-adjacent vertices have the same degree.
In a Turán-maximal graph, non-adjacency is transitive.
In a Turán-maximal graph, non-adjacency is an equivalence relation.
The non-adjacency setoid over the vertices of a Turán-maximal graph
induced by equivalence_not_adj
.
Instances For
Equations
- h.instDecidableRelR = inferInstanceAs (DecidableRel fun (x1 x2 : V) => ¬G.Adj x1 x2)
The finpartition derived from h.setoid
.
Equations
- h.finpartition = Finpartition.ofSetoid h.setoid
Instances For
The parts of a Turán-maximal graph form an equipartition.
There are min n r
parts in a graph on n
vertices satisfying G.IsTuranMaximal r
.
min
handles the n < r
case, when G
is complete but still r + 1
-cliquefree
for having insufficiently many vertices.
Turán's theorem, forward direction.
Any r + 1
-cliquefree Turán-maximal graph on n
vertices is isomorphic to turanGraph n r
.
Turán's theorem, reverse direction.
Any graph isomorphic to turanGraph n r
is itself Turán-maximal if 0 < r
.
Turán-maximality with 0 < r
transfers across graph isomorphisms.
For 0 < r
, turanGraph n r
is Turán-maximal.
Turán's theorem. turanGraph n r
is, up to isomorphism, the unique
r + 1
-cliquefree Turán-maximal graph on n
vertices.