12 The method of Hypergraph Containers
Definition 12.1.
For graphs ,
,
|
|
Example.
.
We are interested in
when .
Theorem 12.2 (Frankl, Rödl).
For
and ,
with high probability.
Remark.
-
Easy to see “”:
consider a bipartition
-
If , then recall from earlier
in the course our work on :
in this regime for ,
we have few triangles compared to number of edges, so we can get a triangle-free subgraph by just
deleting an edge from every triangle.
Let .
Let
|
|
If , then
by Markov done. But:
So first moment method fails horribly here.
Remark.
This quantity is useluss because these triangle free graphs are very correlated.
Idea: What if every -free
graph was bipartite? (This is a massive lie, but we discuss it anyway to motivate the proof of Frankl,
Rödl).
(the is
to emphasise that here we use the false statement that “every triangle-free graph is bipartite”). On the
penultimate step, we used that
|
|
But .
Note that there exist triangle-free graphs that are far from being bipartite:
So we need something a little different:
Theorem 12.3 (Containers for triangle-free graphs).
For all
, there exists a
collection of graphs
with the following properties:
-
(1)
.
-
(2)
every
contains at most
triangles.
-
(3)
every triangle-free graph on
vertices is contained in some .
Remark.
This result is essentially sharp. Before we constructed very “random like” graphs with density
. So we
expect
such graphs. Intuitively, these should be in different containers.
Lemma 12.4 (Supersaturation).
For all ,
there exists
such that: If
is an
vertex graph with
then
contains
triangles.
Proof.
Let be a large
constant. Note
Consider
If the number of
subsets with
edges is ,
then
So . Apply Turán to this
proportion of subsets.
This gives us pairs of
. But each triangle
is counted at most .
So there must exist
triangles, for some .
□
Proof of Frankl, Rödl for .
Let ,
,
.
Note that by Supersaturation,
|
|
So we can continue the earlier calculation to get
if .
□
Theorem 12.5.
If
and
then
with high probability.
Remark.
If
then
with high probability for
small.
Sketch proof: pick an edge from each triangle and colour it blue. Since the number of triangles is small
compared to the number of edges, we don’t colour too many blue. Colour the rest red. Now as long as we
didn’t create any blue triangles, this works.
Lemma 12.6 (“Supersaturation” Lemma).
Let
be sufficiently small. Let
be coloured with red / blue /
grey with the property that
are grey. Then there are
monochromatic triangles in red or blue.
Proof.
There are at most
’s
that contain a grey edge. So there are
’s
that are only red / blue coloured. Each one of these contains a monochromatic triangle. So we have
many pairs (,
monochromatic ).
So there exist
monochromatic ’s
in red or blue. □
Proof of Theorem 12.5 for .
Let ,
.
Then
By Lemma 12.6, ,
the above is
|
|
for some large ,
so as
.
□
12.1 Proving the earlier container lemma
We will sketch the proof of Theorem 12.3.
Consider the -uniform
hypergraph
defined by
|
|
Key observation is that
is a graph on ,
and that is
independent in
if and only if
is a triangle-free graph.
Here we say is independent
if it induces no edge of .
Notation.
Given a hypergraph ,
define
|
|
where .
We will write
to mean .
Theorem 12.7 (Hypergraph Container Theorem for -uniform hypergraphs).
For , there exists
so that the following
holds. Let be a
-uniform hypergraph
with average degree
and
Then there exists a collection
with the following properties:
-
(1)
.
-
(2)
,
.
-
(3)
For every independent set
in ,
there exists
such that .
Due to Saxton, Thomason and Balogh, Morris, Samotij.
Sketch proof of container lemma for -free
graphs (Theorem 12.3) using Hypergraph Container Theorem for
-uniform
hypergraphs:
We note that all degrees are
So average degree is ,
and .
We have , since for
a pair of edges ,
, we
have is
either
or .
So we can apply Hypergraph Container Theorem for
-uniform
hypergraphs to
with and
. We obtain
a collection
of graphs
Note that every triangle-free graph is contained in some
. We also
have .
We now repeat the following:
Suppose some (current
set of containers) has
triangles. Then consider .
The average degree is
and ,
. So apply
Theorem 12.7 again to
with
and .
Now put all of these containers into my collection.
We can imagine this process as creating a rooted tree, whose vertices are containers, and whose leaves are containers
with
triangles.
Note we can only apply this at most
times to a container (because after this many steps we have so few edges of
left that we
must have
triangles). Thus the total number of containers at the end is
as desired.
By construction each of the containers has at most
triangles. Note that
every triangle-free graph
on vertices is
contained in some
for our initial application. This property is preserved when we replace a
with a collection
of containers for .
This lecture is non-examinable.
Theorem 12.8.
For all ,
there exists
() such that the following
holds. Let be a graph
with average degree
and . Then
there exists
such that:
-
(1)
.
-
(2)
For
we have .
-
(3)
Every independent set in
is contained in some .
Due to Kleitman and Winston, 80s.
Given and
, we run an algorithm
that produces ,
satisfying
|
|
Graph Containers algorithm. We maintain, as the algorithm runs, a partition
|
|
and we start with ,
,
. While
, we
loop the following:
Let be a vertex of maximum
degree in (and tiebreak according
to some fixed ordering of
specified in advance, so that the algorithm is deterministic / reproducible: useful for observation later).
-
(1)
If ,
then just move
into .
-
(2)
If ,
then move
into
and move all of
into .
When algorithm stops, we define
and .
Observation: .
Proof.
First inclusion holds by definition. For second one: I never move a vertex of
into .
□
Observation: is
determined by .
Proof.
We claim that if we run algorithm on input
then we would get same output (here we use the fact that we defined and used an ordering of
to make the algorithm deterministic / reproducible). □
Observation: .
Proof.
We show that if we move a vertex into ,
we move
vertices in
to .
Note that at all times in the algorithm,
So for
all steps.
If , then
,
contradiction. □
Proof of Theorem 12.8.
We define
|
|
Property (3) holds by the first observation.
For (2), note that .
For property (1), note that the number of ’s
is at most ,
and each
determines
by the second observation. □
Informal explanation of the proof:
Suppose Alice and Bob both know the structure of a certain graph. Suppose Alice is given an independent set
, and
wants to communicate about its structure to Bob, by giving him a list of some vertices from
.
It makes sense for Alice to start by telling Bob which vertex has the highest degree in
, since this then tells him
a lot of vertices aren’t in :
For the next vertex, Alice shouldn’t just tell Bob the next highest degree vertex, because its neighbourhood
might overlap a lot with the first vertex, in which case telling Bob about this vertex wouldn’t give him
much new information. So instead, it makes more sense to pick the vertex with highest degree
into the set of vertices which Bob hasn’t yet discarded; this gives us the algorithm described
above.
If none of the vertices in
have large degree, then Bob actually can still gain a lot of information from Alice, if Alice (implicitly) says “this
vertex is in
, and it is the
most informative vertex I could have told you about”. Using this strategy, Bob can gain useful no matter what: if
contains a large
degree vertex, then Bob can immediately discard a lot of vertices. If it doesn’t, then when Alice tells Bob a vertex, Bob
now knows
doesn’t contain any high degree vertices, which in itself is very valuable information.
Generalising to hypergraphs:
We employ a similar strategy.
In this case, when Alice tells Bob about a vertex, he can’t immediately discard any vertices. Instead we have the following:
is an edge, and Alice tells Bob
that , then Bob now knows that
it can’t be the case that both of ,
are in
. Bob
can keep track of this information in a graph, where we can borrow ideas from the proof of graph
containers. The proof will be more complex, and we will need to make use of the condition on
.
Container algorithm for -uniform
hypergraphs. We maintain
a partition. We also have a graph ,
that we keep track of throughout the algorithm. We keep the following until
.
We then put ,
at the
end of the loop.
The proof that this algorithm works is somewhat similar to the proof for graph containers, but more
complicated.