Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
31 views53 pages

Sparsity

Uploaded by

Samuel Santos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views53 pages

Sparsity

Uploaded by

Samuel Santos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

Wydział Matematyki, Informatyki i Mechaniki UW

Sparsity
lecture notes

fall 2012/2013

Lecture given by Szymon Toruńczyk

Notes taken by Hong Hai Chu


Łukasz Czajka
Piotr Godlewski
Jakub Łącki
Paweł Pasteczka
Michał Przestrzelski
Adam Witkowski
Marcin Wrochna
Mikołaj Zhukov
Contents
1 Preliminaries 3
1.1 Planar graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Properties of k-degenerated graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Algorithmic aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Fixed-parameter tractability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Minors 10
2.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Minors vs. topological minors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Excluding minors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 Algorithmic aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Density bounds for minor-closed classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Shallow minors 16

4 Nowhere-density 17

5 Proof of Theorem 4.5 19


5.1 Proof of the implication 2̃ → 3̃ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.2 Proof of the implication 2 → 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.3 Proof of the implication 2̃ → 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6 Decompositions 27
6.1 Separators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.2 Treewidth and minors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.3 Algorithmic aspects of computing the treewidth . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.4 Treedepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

7 Bounded Expansion 32

8 Coloring 32

9 χtd
−  ∇− 36

10 Algorithmic aspects 41

11 FO formulas 44

12 Colored pointer structures 45

13 Independence 49

2
1 Preliminaries
In this lecture, we will talk about undirected, loopless, simple, finite graphs. The letters G, H, . . . always
denote graphs, C, D, . . . always denote classes of graphs. By Graphs we denote the class of all graphs.
Definition 1.1. A graph G is a pair (V, E), where
• V is finite set of vertices,
• E ⊆ V2 is a set of edges, that is unordered pairs of vertices.


We will denote the cardinality of V by |G| and the cardinality of E by kGk. Loopless means there are no
self-loops (that is {v, v} 6∈ E for any v). Simple graphs cannot have multiple edges between a pair of nodes.
Undirected graphs are, well, not directed.

1.1 Planar graphs


We will study the basic notions and techniques which will be developed further throughout the course, as
exemplified in the case of planar graphs.
Definition 1.2. A graph G = (V, E) is planar if it can be embedded into R2 . An embedding of a graph into
R2 is a pair of mappings (rV , rE ), where
• rV : V → R2 is injective.
• rE : E → C(I, R2 ) satisfies following conditions:
– C(I, R2 ) is set of continuous functions from the closed unit interval I to R2 ;
– For every e ∈ E, rE (e) : I → R2 is injective;
– If e = {u, v} then {rE (e)(0), rE (e)(1)} = {rV (u), rV (v)};
– If e, e0 ∈ E are two distinct edges, then rE (e)((0, 1)) ∩ rE (e0 )((0, 1)) = ∅.

In other words, a graph G is planar if one can


draw it on a the plane in such a way that edges
do not intersect, as depicted in the example on
the right.

Figure 1: Example of a planar embedding of K4

Remark 1.3. In the above definition of an embedding, we could replace R2 by any other topological space
X. Then we can talk of graphs which embed into X. For instance, we will also talk about graphs which
embed into the sphere, the torus, or a surface of genus g (a doughnut with g holes).
Remark 1.4. A more elegant (but equivalent) definition of an embedding is obtained by regarding a graph
G as an abstract metric or topological space. This can be done by treating each edge of G as an open unit
interval, and defining appropriately a distance function between the points of these intervals or the vertices of
G. This defines a topological space MG . More generally, a graph G is the same as a 1-dimensional simplicial
complex, and any such complex defines a topological space MG (called the geometric realization). Then, an
embedding of G into a topological space X is just a continuous and injective mapping of MG to X.
Fact 1.5. A graph embeds into R2 if and only if it embeds into the two-dimensional sphere S 2 .

3
Proof. Observe that there is an embedding γ of R2 into S 2 whose image is S 2 with a point p removed. An
example of such an embedding is the stereographic projection. Using this projection, any embedding of G
into R2 can be converted into an embedding of G into S 2 . Conversely, given an embedding of G into S 2 ,
there is a point S 2 which is not in the image of the embedding (this follows from topology). Assume without
loss of generality that this point is equal to p. Then, by composing with the inverse mapping γ −1 , the
embedding of G into S 2 gets converted to an embedding of G into R2 .
Remark 1.6. Any graph G embeds into R3 . Indeed, it suffices to draw G on a plane in an arbitrary way
– perhaps with intersecting edges – and then perturb the drawing slightly using the third dimension, so the
edges no longer intersect.
Also, any graph G embeds into a surface of a sufficiently high genus g. It suffices to take any embedding
of G into R3 and the draw sufficiently thin tubes along each edge, so that the edges are contained in the
surface of these tubes. By merging these tubes at the vertices in a proper way, one gets a surface to which
G embeds. The genus of this surface is bounded by the number of “basic cycles” in G.
Finally, observe that if G embeds into a surface Sg of genus g, then it also embeds into a surface of genus
g + 1. To see this, add a tiny handle to Sg , which does not touch the image of G. This gives a surface of
genus g + 1, into which G embeds.

Figure 2: K5 , the smallest non-planar graph.

Definition 1.7 (Subgraph). A graph H = (VH , EH ) is a subgraph of a graph G = (VG , EG ) (denoted


H ⊆ G) if VH ⊆ VG and EH ⊆ EG .
In other words, a subgraph of a graph G is a graph created by removing some vertices and/or edges from G.
Definition 1.8 (Induced subgraph). Let G = (V, E) and S ⊆ V . The subgraph of G induced by S is the
graph G[S] = (S, E ∩ S2 ). If S = V − T , then G[S] is also denoted by G − T . The induced subgraph
is a subgraph obtained from G by removing some vertices. Of course, when a vertex is removed, all edges
connected to it are also removed.
Fact 1.9. A subgraph of a planar graph is also planar.
We will now show probably the most famous theorem concerning planar graphs, Euler’s theorem. First,
we need to define what a face of an embedding is.
Definition 1.10. Let (rV , rE ) be an embedding of G into R2 . A face of the embedding is a (topologically)
connected component of [
R2 − Im(rE ).
e∈E

Now we can formulate Euler’s theorem.


Theorem 1.11 (Euler). Let G be a connected planar graph with at least one edge. Then:

v−e+f =2 (1)

4
where v = |G| is the number of vertices, e = kGk is the number of edges, and f is the number of faces in
any embedding of G.

Proof. The proof proceeds by induction on e.


Induction base:
G is a tree. Then e = kGk = |G| − 1 = v − 1 and there is only one face (formally, this requires a topological
argument). Therefore
v−e+f =v−v+1+1=2 (2)
Induction step:
G is connected and is not a tree, therefore, there must be a cycle in G. Suppose that E 3 e = {u, v} lies on
a cycle and Ge = (V, E − {e}) is the graph obtained from G by removing e.

Intuitively, it is clear that removing e connects


faces 1 and 2, therefore Ge has one edge and one
face less than G. Equation (1) holds in Ge by in-
ductive assumption, therefore it also holds in G.

What remains is to show that removing an edge from a cycle actually decreases the number of faces in G.
This can be proved using the Jordan curve theorem but it is outside the scope of these notes.
Euler’s theorem is a powerful tool for proving properties of planar graphs. For example, we get the following.
Corollary 1.12. Let G be planar. Then
kGk
<3 (3)
|G|
Definition 1.13. The value kGk/|G| is called the edge density of the graph G.

Proof. First, observe that each edge belongs to at most 2 faces (unless G is ). Furthermore, each face has at
least 3 edges touching it. Therefore, 2e ≥ 3f . It follows that:
2 1
0 < 2 = v − e + f ≤ v − e + e = v − e.
3 3

Definition 1.14. Let’s denote ∆(G) by the maximal degree of the vertices in G and by δ(G) as the minimal
degree. When G is clear form context,
P we will use simply ∆ and δ. Additionally, we define Edeg as average
v∈V deg(v)
degree of vertex in G, so Edeg = |G| = 2kGk
|G| .

Observe, that ∆ ≥ Edeg ≥ δ. As for planar graphs, Edeg < 6, we get:


Corollary 1.15. Each planar graph has a vertex of degree at most 5.
Remark 1.16. This bound is tight. The edges of the regular icosahedron (the regular polyhedron with 20
faces, see Figure 3) form a graph which embeds into the sphere (the regular icosahedron is, topologically
speaking, a sphere) and in which every vertex has degree 5.

Definition 1.17. We say that a graph G is n-colorable if there exists a coloring of the vertices using n
colors, such that neighboring vertices get different colors.
Fact 1.18. Planar graphs are 6-colorable.

5
Figure 3: The regular icosahedron.

Proof. Induction on number of vertices, |G|.


Induction base:
|G| ≤ 6. As there are at most 6 vertices, each can get a different color.
Induction step:
From 1.15, there exists a vertex v in G of degree at most 5. Let’s remove this vertex. By the inductive
assumption, the remaining graph can be colored using 6 colors. We apply this coloring to G and extend it
to v by assigning to v any legal color. We can always do this, because v has at most 5 neighbours in G,
therefore there is always one legal color available.
Remark 1.19. It is not very difficult to improve the above construction to obtain a 5-coloring of any planar
graph. The famous Four Color Theorem says that in fact any planar graph admits a 4-coloring.

1.2 Properties of k-degenerated graphs


Corollary 1.15 and the proof of Fact 1.18 lead us to the following notion.
Definition 1.20 (k-degeneration). A graph G is k-degenerate if in any non-empty subgraph H of G contains
a vertex of degree at most k (within H).
Examples:

• Trees are 1-degenerate.


• As a consequence of Corollary 1.15, planar graphs are 5-degenerate.
Fact 1.21. A k-degenerate graph is k + 1-colorable.
Proof. The same as in the proof of Fact 1.18.
Definition 1.22. The maximal average degree of graph G, denoted mad(G) is

2kHk
mad(G) = max Edeg(H) = max (4)
H⊆G H⊆G |H|

Maximal average degree and k-degeneration are closely related to each other.
Fact 1.23. 1. Every graph G is bmad(G)c-degenerate.
2. If G is k-degenerate then mad(G) < 2k.
Proof. For the first item, let H be a subgraph of G. Obviously δH ≤ Edeg(H) ≤ mad(G), because mad(G)
is maximum over all subgraphs of G.

To prove the second item, suppose that G is k-degenerate. We will need following lemma:
kGk
Lemma 1.24. For any graph G, there exists an (induced) subgraph H ⊆ G s.t. δH > |G| .

6
From this lemma the upper bound for mad(G) follows easily: suppose that mad(G) ≥ 2k. Then there is
kHk
a subgraph with 2kHk 0
|H| = mad(G) ≥ 2k. Therefore |H| ≥ k. By the lemma, there exists subgraph H of H
s.t. δH 0 > kHk
|H| ≥ k which contradicts the assumption that G is k-degenerate.
It remains to prove Lemma 1.24. We will use a common and useful technique: iterative removal of
vertices of small degree.
For a graph H, if there is a vertex v such that degH (v) ≤ kHk 0
|H| , then by H we denote the graph H − {v}
obtained by removing v. Observe that
kHk kHk kHk 0
kH 0 k ≥ kHk − = (|H| − 1) = |H |, (5)
|H| |H| |H|
kHk
so the operation H 7→ H 0 does not decrease the ratio |H| , i.e. the edge density.
kHk
We apply this operation iteratively to G until we obtain a graph H such that δH > |H| :

G ⊃ G0 ⊃ G00 ⊃ · · · ⊃ H (6)
kHk kGk
In particular, δH > |H| ≥ |G| which completes the proof.

We finish our study of graph degeneration with the following, useful characterization of k-degenerate
graphs, in terms of orientations small indegree.
Definition 1.25. An oriented graph is a pair G ~ = (V, E),
~ where E ~ ⊆ V × V is a set of non-repeating pairs
of elements of V (so there are no self-loops). We call elements of E~ directed edges. For a vertex v ∈ V , by
indegG~ (v) and outdegG
~
~ (v) we denote the indegree and outdegree of v in G, i.e. the number of directed edges
leading to (respectively, from) v.
We say that an oriented graph G ~ is an orientation of a graph G, if they have the same vertex sets, and
~ (but not both); and
• For each edge {u, v} of G, either (u, v) or (v, u) is a directed edge of G
~ {u, v} is an edge of G.
• conversely, for each directed edge (u, v) of G, ~

Note that there are 2kGk different orientations of G.


Theorem 1.26. Let G be a graph. The following conditions are equivalent:
1. G is k-degenerate.
2. There is a linear ordering ≺ on VG such that for each v ∈ VG , the number of edges connected with v
and ≺-greater than v is at most k, i.e.
|{u : v ≺ u and {u, v} ∈ EG }| ≤ k.

~ of G such that each vertex has in-degree at most k.


3. There is an acyclic orientation G
Proof. 1 ⇒ 2:
We construct ordering ≺ as follows:
v1 - vertex of G with degree at most k
f
v2 - vertex of G − {v1 } with degree at most k
f
v3 - vertex of G − {v1 , v2 } with degree at most k
f
.. ..
. .
f
vn - vertex of G − {v1 , . . . , vn−1 } with degree at most k

7
Why is this construction correct? G is k-degenerate, so any subgraph of G has a vertex of degree at most k.
The graphs Gi = G − {v1 , . . . , vi } are induced subgraphs of G, therefore each vi has at most k neighbours
in Gi and all vertices greater than vi with respect to ≺ belong to Gi so condition 2 holds.
2 ⇒ 3:
We direct G according to the ordering ≺:
(u, v) is an edge of G~ ⇐⇒ {u, v} ∈ E and u  v. (7)
This ordering is acyclic (since ≺ is an ordering) and the in-degree is at most k.
3 ⇒ 1:
Let G~ be an orientation of G fulfilling the condition 3. Consider any nonempty subgraph H of G and
~ There exists a vertex v in H
orient it according to orientation of G, yielding H. ~ with outdeg ~ (v) = 0.
H
~
Otherwise, we would find a cycle in H, which contradicts condition 3. Because indegH ~ (v) ≤ k, it follows
that degH (v) ≤ k.

1.3 Algorithmic aspects


We will present a simple algorithm, which will be central in the remaining part of the course. The algorithm
finds, for a given k-degenerate graph G, an acyclic orientation of indegree at most k, in linear time.
Proposition 1.27. There is an algorithm for the following problem:
Input: A k-degenerate graph G, given by its adjacency list representation (i.e. a table associating with
each vertex v the list of neighbors of v in G)
~ of outdegree at most k.
Output: An acyclic orientation G
whose running time is O(k · kGk).
Proof. The algorithm proceeds as follows. Let Lv denote the incidence list of a vertex v (i.e. the list of
neighbors of v).
First, compute a list L of vertices of degrees at most k; initially, let i = 1. Then, repeat the following
steps.
1. Remove a vertex v from the list L,
2. For every w ∈ Lv , remove v from the list Lw , and compute the new length of Lw ; if this length is at
most k, then add w to L,
3. Associate a number i with the vertex v, and increment i.
Terminate when L is empty.
The maintained invariant is that L is the set of vertices of degree at most k in the graph G − S, where S
is the set of vertices to which a number has been associated. In the end, every vertex has a distinct number
associated to it. It follows from the proof of Theorem 1.26 that this induces a linear ordering ≺ which satisfies
the second condition of the theorem. From this – similarly, but dually as in Theorem 1.26 – we can easily
compute an acyclic orientation of outdegree at most k: for each vertex v of G, remove from its incidence list
those vertices u, such that the number associated with u is smaller than the number associated with v. The
~ which satisfies the required condition.
resulting structure is the list representation of a graph G

Applications There are two common data structures for representing graphs:
• the adjacency matrix, whose size is O(|G|2 ), and checking adjacency can be done in time O(1)
• the adjacency list representation, whose size is O(kGk), but checking adjacency is in time O(kGk).
For k-degenerate graphs there is a data structure which combines the benefits of both representations: it
is the representation computed by the algorithm in Proposition 1.27. Indeed, given this data structure,
checking for adjacency of u and v can be done in time O(k): test whether v is on the adjacency list of u and
vice versa.

8
1.4 Fixed-parameter tractability
Fix an input alphabet A, and an alphabet for parameters, B.
Definition 1.28 (FPT). A decision problem L ⊆ (A+ , B + ):

Input: P , w ∈ A+ (called the input) p ∈ B + (called the parameter )


Output: Does (w, p) belong to L?
is called Fixed Parameter Tractable if there is an algorithm deciding (w, p) ∈ L in time f (|p|) · |w|d for some
computable function f and for some constant d. We say that L is fixed-parameter linear if d = 1.

Fact 1.29. Fix a number k. The following problem is decidable in time O(kGk):
Input: A k-degenerate graph G, given by its list representation, and a number n
Decide: Does G contain a clique of size n?
More precisely, the following problem is fixed-parameter linear:

Input: A k-degenerate graph G, given by its list representation, and a number n, where k, n are the
parameters
Decide: Does G contain a clique of size n?
One of the guiding themes of this course is to provide FPT algorithms for problems involving sparse
graphs. These algorithms will be obtained as generalizations of the above algorithm.
Remark 1.30. A widely believed complexity-theoretical assumption is that the following problem is not
decidable in time O(f (n) · |G|d ), for any fixed number d:
Input: A graph G, given by its list representation, and a number n

Decide: Does G contain a clique of size n?


Excercise 1.1. Show that the following problem is not decidable in time O(kGk · kHk):
Input: A k-degenerate graph G, given by its list representation, and a graph H
Decide: Does G contain a subgraph isomorphic to H?

9
2 Minors
2.1 Definitions
Definition 2.1 (subdivision). A subdivision of G is obtained by inserting new vertices on edges.

Example:

Definition 2.2 (contraction). A contraction of an edge e ∈ G i obtained by replacing the edge by a vertex.

Example:

Definition 2.3 (topological contraction). A contraction of {u, v} is topological if either u or v has deg ≤ 2
(almost inverse of subdivision).

Example:

Definition 2.4 (minor). Let H, G be two graphs. We say that H is a minor of G (H ≤m G) if H can
be obtained from a subgraph of G by a series of contractions. We say that H is a topological minor of G
(written H ≤t G) if the contractions can be made topological.

10
Example: ≤t

Fact 2.5. Suppose that H is obtained from G by any series of operations of the following types:
1. Edge removal,
2. Vertex removal,
3. Edge contraction.
Then H is a minor of G. If the edge contractions are topological, then H is a topological minor of G.
Corollary 2.6. ≤m and ≤t are partial orders.
There is yet another, useful characterization of minors.
Fact 2.7. Let H and G be graphs. Then H is a minor of G if and only if there is a family (Pv )v∈VH of
subgraphs of G such that:
• each graph Pv is connected,
• Pv and Pw are vertex-disjoint for v 6= w
• for each edge {u, v} ∈ EH there is an edge between Pu and Pv in G.
We call the family (Pv )v∈VH as above an H-decomposition of G.

2.2 Minors vs. topological minors


The following fact is obvious.
Fact 2.8. If H is a topological minor of G then H is a minor of G.
Is the other implication true? Consider K5 , and replace every vertex of degree four by a pair of connect
vertices of degree 3:

−→

Clearly, K5 ≤m G. We claim that K5 t G. Indeed, this is a consequence of the following.

11
Fact 2.9. If H ≤t G then ∆(H) ≤ ∆(G).
It is not difficult to prove the following.
Fact 2.10. Let G, H be graphs, and suppose that ∆(H) ≤ 3. Then, H ≤m G if and only if H ≤t G.
Corollary 2.11. ≤m and ≤t are equivalent on graphs with ∆ ≤ 3.

2.3 Excluding minors


Definition 2.12 (minor-closed). A class C is minor-closed if for any G ∈ C and any graph H if H ≤m G then
H ∈ C. We say that C is proper if C 6= Graphs. When speaking of minor-closed classes, we implicitly assume
that they are proper. We say that a class C excludes a minor if it is contained in a proper minor-closed class
of graphs. In other words, there exists a graph G which is not a minor of any graph from C.
We define analogous notions for topological minors: we may say that a class is topologically-minor-closed,
or that it excludes a topological minor.
Lemma 2.13. Planar graphs are minor-closed. They are also closed under topological minors.

Intuitively, it is clear that contracting an edge of a planar graph yields a planar graph. A formal proof
requires a topological argument.
Theorem 2.14 (Kuratowski 30). The following conditions are equivalent for a graph G
1) G is planar
2) K3,3 t G and K5 t G
Proof. 1 → 2. We show that K3,3 is not planar, by showing that it does not embed to the sphere. Observe that
K3,3 is a cycle x1 , x2 , . . . , x6 , x1 of length 6, together with the three diagonals: {x1 , x4 }, {x2 , x5 }, {x3 , x6 }.
In any embedding of K3,3 to the sphere, the image Γ of this cycle splits the sphere into two faces (by the
Jordan curve theorem); let these faces be denoted D and E (see image below).
Now, we need to draw one of the three diagonals, say {x1 , x4 }. The corresponding curve is a connected
topological space, so it must be contained in a connected component of R2 − Γ, so it is either contained in D
or in E. Without loss of generality, assume that the curve joining x1 and x4 is contained in D. This curve
splits (again, using the Jordan curve theorem) D into two faces. Let D1 be the face adjacent to x1 , x2 , x3 , x4 ,
and let D2 be the face adjacent to x1 , x4 , x5 , x6 .
Now we need to draw the diagonal {x2 , x5 }. The vertex x2 has two faces adjacent to it: D1 and E, and
the vertex x5 has two faces adjacent to it: D2 and E. A curve joining x2 and x5 can be only contained in
one connected component, so it needs to be contained in E.
This curve splits E into two faces, call them E1 and E2 . Assume that E1 is the face which is adjacent to
x3 , then E2 is the face which is adjacent to x6 .
Now, x3 is adjacent to the faces D1 and E1 , whereas x6 is adjacent to the faces E2 and D2 . Therefore,
there does not exist a curve joining x3 with x6 , which does not intersect the previously drawn curves. This
proves that K3,3 is not planar.

12
The fact that K5 is not planar is a simple consequence. Indeed, assume that K5 is planar. Split one of
the vertices v of K5 into two vertices v1 , v2 of degree 3 each, connected to each other (see image below).
This yields a graph G, which is also planar. This graph contains K3,3 as a subgraph – a contradiction, since
K3,3 is not planar.

This finishes the proof of the implication 1 → 2, since planar graphs are closed under topological minors
(indeed, under minors in general). The implication 2 → 1 is more involved...

There is a very similar theorem due to Wagner; the difference is that it speaks about minors rather than
topological minors. In a sense, Kuratowski’s theorem is stronger than Wagner’s theorem, since forbidding
topological minors is a weaker requirement than forbidding minors.
Theorem 2.15 (Wagner 37). The following conditions are equivalent for a graph G
1) G is planar
2) K3,3 m G and K5 m G
Proof. Neither K3,3 nor K5 are planar, and planar graphs are closed under minors. This proves the impli-
cation from 1 to 2.
The other implication follows from Kuratowski’s theorem: indeed, if a graph G does not contain K3,3
nor K5 as a minor, then it does not contain either of them as a topological minor, so it is planar.

Remark 2.16. It is also not difficult to deduce Kuratowski’s theorem from Wagner’s theorem.
Wagner’s conjecture (proved by Robertson and Seymour in a series of papers from 1983-2004).
If C is any minor-closed class of graphs then there exist finitely many graphs G1 , ..., Gk (forbidden minors)
such that the following are equivalent for any graph G
1) G ∈ C
2) G1 m G, G2 m G, . . . , and Gk m G.

13
Definition 2.17 (w.q.o.). A partial order ≤ over a set X is called a well quasi-order (w.q.o.) if for any
sequence x1 , x2 , x3 , . . . of elements of X there exist indices i < j such that xi ≤ xj .

For example, the linear order over N is a w.q.o. A more involved example is the subword order over the
set of finite words over a finite alphabet A: v is a subword of w if v can be obtained from w by arbitrarily
removing letters.
Fact 2.18. Let ≤ be a partial order over a set X. The following conditions are equivalent.

1. ≤ is a w.q.o.
2. For any sequence x1 , x2 , x3 , . . . there exists an infinite subsequence xn1 , xn2 , . . . such that

x n1 ≤ x n2 ≤ . . . .

3. For any downward-closed subset C of X, there exists a finite set of “forbidden elements”, {x1 , x2 , . . . , xn },
such that for all x ∈ X,

x ∈ C if and only if x1  x, x2  x, . . . , and xn  x,

The following theorem, due to Robertson and Seymour, is considered one of the deepest results of graph
theory. It says that Wagner’s conjecture holds.
Theorem (The Graph Minor Theorem) 2.18.1. ≤m is a w.q.o. on graphs.
Below is a table describing the forbidden minors for some minor-closed classes of graphs.

minor-closed class forbidden minors


planar graphs K3,3 , K5
edgeless graphs K2 =
forests K3
toric graphs ≥ 16000 forbidden minors

outer-planar graphs
graphs which embed into the surface of genus g some very long list

Table 1: minor-closed graphs and their forbidden minors

The corresponding result is false for ≤t . The fact that ≤t is not a w.q.o. is witnessed by the sequence of
graphs depicted below. This shows that topological minors and minors sometimes behave very differently.

...

14
2.4 Algorithmic aspects
In order to check if H ≤m G, it suffices to guess a subgraph of G and a sequence of contractions which lead
to a graph isomorphic to H (the isomorphism can be also guessed). This yields the following.
Fact 2.19. The following decision problem (MINOR)

Input: Graphs H, G
Output: Is H ≤m G
is decidable in NP.

Wagner’s theorem therefore implies the following.


Corollary 2.20. Planarity is in co-NP.
The work of Robertson and Seymour in fact implies the following result.
Theorem 2.21. MINOR is FPT where the parameter is |H| – it can be decided in time f (|H|) · |G|3

Remark 2.22. The known bound for the function f (|H|) is at least exponential in |H|. Note that this is
unavoidable, assuming that Hamiltonicity cannot be decided in subexponential time: testing whether G has
a Hamiltionian cycle amounts to testing whether the n-cycle is a minor of G, where n = |G|.
Theorem 2.21 implies that planarity, as well as embeddability into a fixed surface of genus g, can be
decided in polynomial time. This result, however, can be proved by simpler means (without the Robertson-
Seymour theorem), and giving a better bound:
Theorem 2.23. There exists a linear time algorithm for the following problem:
Input: A graph G.
Output: “Yes” if G is planar; if G is not planar, describe how K3,3 or K5 is a minor of G.

Remark 2.24. The theorem generalizes to surfaces of a fixed genus g.

2.5 Density bounds for minor-closed classes


Minor-closed classes of graphs are sparse. This is implied by the following.
Theorem 2.25. There is a function f such that for any number h and graph G such that Kh m G,

kGk
≤ f (h).
|G|
p
Remark 2.26. The above theorem is not difficult to prove. The optimal bound is f (h) = γ · h · log(h),
for some constant γ; this is a theorem proved independently by Kostochka and Thomason; it is substantially
more difficult to prove than the above theorem. A result analogous to Theorem 2.25 holds for topological
minors. Note that the result for topological minors is more general than the result for minors, since excluding
a minor implies excluding a topological minor.
Corollary 2.27. Let C be a proper (topological) minor-closed class. Then there exists a constant C such
that every graph G ∈ C has edge density bounded by C. In particular, the graphs in C are k-degenerate for
some constant k (since C is closed under taking subgraphs).

15
3 Shallow minors
In this section we introduce shallow minors, which are simply minors obtained with bags of small radius.
Definition 3.1 (radius). The radius of a graph G is the smallest d such that for some vertex v ∈ G we
have ∀w∈G dG (v, w) ≤ d. Sometimes we add that radius(G) ≤ d + 12 if there is an edge {u, v} of G such that
∀w∈G dG (u, w) ≤ d ∨ dG (v, w) ≤ d.

Example:

! !
radius = 2, radius = 2 12

Observe that a graph of radius d has a spanning tree of radius d (a tree of shortest paths). A related
notion, the diameter diam(G) = maxu,v∈G dG (u, v), is equivalent up to a factor of 2 (radius(G) ≤ diam(G) ≤
2 radius(G); ironically diam = radius for cycles Cn ).
Definition 3.2 (shallow minor). H is a shallow minor of G at depth d (or simply a minor at low depth) if
there are subgraphs (Pv )v∈VH of G such that:
• each graph Pv is connected, for v ∈ VH
• Pv and Pw are vertex-disjoint, for v 6= w
• for each edge {u, v} ∈ EH there is an edge between Pu and Pv in G,
• each Pv has radius at most d.
Definition 3.3 (shallow topological minor). H is a shallow topological minor of G at depth d if G contains
(as a subgraph) a ≤ 2d-subdivision of H (i.e. each edge is subdivided into a path of radius at most d).

Example: K4 is a minor at depth 1 of the graph shown.

≤d
≤d

˜ for shallow topological minors. Observe


We write G∇d for the set of minors of G at depth d and G∇d
that G∇0 is simply the set of subgraphs of G, while G∇|G| = G∇∞ is the set of all minors of G. For a class
of graphs C, we write

def
[
C∇d = G∇d,
G∈C
[
˜ =
C ∇d
def
˜
G∇d.
G∈C

16
The following inclusions hold for any class C:

C ⊆ C∇0 ⊆ C∇1 ⊆ C∇2 ⊆ ...


=


C ⊆ ˜
C ∇0 ⊆ ˜
C ∇1 ⊆ ˜
C ∇2 ⊆ ...

Definition 3.4 (resolution). The resolution of C is the sequence of classes C∇0, C∇1, C∇2, . . . Similarly,
˜ C ∇1,
the topological resolution of C is the sequence of classes C ∇0, ˜ C ∇2,
˜ ...

4 Nowhere-density
In this section we define a robust notion of sparseness that generalizes minor-closed classes (e.g. planar
graphs, graphs of bounded genus, graphs excluding Kn as a minor), classes of bounded degree, and other
classes arising in algorithmics and logic that intuitively seem “sparse”.

Definition 4.1 (nowhere-density). We say that a class of graphs C is nowhere-dense if for each number d,
C∇d 6= Graphs.

Examples:
• Let P be the class of planar graphs (or any other proper minor-closed class). Then P∇d = P =
6 Graphs,
so P is nowhere-dense.
• Let ∆3 be the class of graphs of degree ≤ 3. For each d the class ∆3 ∇d is a class of bounded degree
(an easy inductive
S argument shows that ∆3 ∇d = ∆3·2d ), therefore ∆3 is nowhere-dense, even though
∆3 ∇∞ = d ∆3 ∇d = Graphs.

log kGk
Definition 4.2 (logarithmic density). The logarithmic density of a graph G is defined as `dens(G) = log |G|
(if the graph has no edges define `dens(G) = −∞).

Examples:
log 1 log(|G|2 ) 2 log |G|
• For any graph with edges 1 ≤ kGk < |G|2 , thus 0 = log |G| ≤ `dens(G) < log |G| = log |G| = 2.
log 3|G| log 3
• For any planar graph G we have kGk < 3|G|, thus `dens(G) < log |G| =1+ log |G| .

n(n−1)
log log n2 +log n−1
n +log
1
log(1− n1
)−1 n→∞
• For cliques `dens(Kn ) = 2
log n = log n
2
=2+ log n −−−−→ 2.

• For complete bipartite graphs kKn,n k ' 21 kK2n k, so `dens(Kn,n ) is only smaller by approximately
log 2 n→∞
log n . Therefore we still have `dens(Kn,n ) −
−−−→ 2.

We extend any graph parameter f : Graphs → R ∪ {−∞, ∞} to a parameter of classes


def
f (C) = sup f (G)
G∈C

17
For example, the best possible bound on the chromatic number of planar graphs is χ(P) = 4. We also write

f¯(C) = lim sup f (G) = lim sup f (G)


def def

G∈C n→∞ G∈C


|G|>n

Observe that lim could be replaced by inf , so this is always defined.


n→∞ n∈N
˜
Finally for any class C the two resolutions C ∇ and C ∇ define the following two values:
˜
`dens(C ∇ ) = lim lim sup `dens(G) `dens(C ∇ ) = lim lim sup `dens(G).
def def

d→∞ G∈C∇d d→∞ ˜


G∈C ∇d

Remark 4.3. Observe that lim could be replaced by sup (we take more and more graphs into account),
d→∞ d∈N
˜
so `dens(C ∇ ) and `dens(C ∇ ) are defined for any class of graphs.
Lemma 4.4. For any class of graphs C, `dens(C ∇ ) ∈ {−∞, 0} ∪ [1, 2].

Proof.
• If a class C contains only finitely many graphs which have edges, then `dens(C ∇ ) is −∞. Otherwise,
after taking minors at depth d and disregarding finitely many graphs, the class will still have graphs
with edges, so `dens(C ∇ ) ≥ 0.
• If all graphs in C have a number of edges bounded by c, as we disregard all graphs with less than n ver-
log c
tices, the logarithmic density will tend to log n → 0. Otherwise there are graphs with arbitrarily many
edges, so C∇0 contains arbitrarly large subgraphs that eliminate isolated vertices – these subgraphs
have `dens(G) ≥ 1, so `dens(C ∇ ) ≥ 1.
• `dens(G) ≤ 2, so `dens(C ∇ ) ≤ 2.

Surprisingly, no class takes a value strictly between 1 and 2, that is `dens(C ∇ ) ∈ {−∞, 0, 1, 2}, which is the
statement of the trichotomy theorem (named so because `dens(C ∇ ) can take only three different values,
if we merge the degenerate cases of 0 and −∞). Also, the strong notion of sparseness this implies coincides
with nowhere-density. We prove both statements in one general theorem after giving some examples.

Examples:
log 3
• For planar graphs P∇d = P, so `dens(P ∇ ) = lim supG∈P `dens(G). But `dens(G) < 1 + log |G| , so as
we disregard small graphs, the supremum of `dens(G) will tend to 1.

• Similarly for classes of degree bounded by c. At every step d of the resolution we have
log cd
`dens(G) < 1 + log |G| → 1.

• If a class C contains arbitrarily large cliques (Kni )i∈N in some step of the resolution, so will every step
after it. Thus `dens(C ∇ ) ≥ lim sup `dens(Kni ) = lim `dens(Kn ) = 2.
i∈N n→∞

• The same holds for complete bipartite graphs, because lim `dens(Kn,n ) = 2.
n→∞

Theorem 4.5. Let C be any class of graphs. The following conditions are equivalent to nowhere-density:

18
1) ∀d C∇d 6= Graphs ˜ 6= Graphs
1̃ ) ∀d C ∇d (no step of the resolution contains all graphs)

2) ∀d ∃n∈N Kn ∈
/ C∇d 2̃ ) ∀d ∃n∈N Kn ∈ ˜
/ C ∇d (no step of the resolution contains all cliques)

˜
3) `dens(C ∇ ) ≤ 1 3̃ ) `dens(C ∇ ) ≤ 1

˜
4) `dens(C ∇ ) < 2 4̃ ) `dens(C ∇ ) < 2
The first item is the definition of a nowhere-dense class.

1 1̃

5.3
2 2̃
5.2 5.1
3 3̃

4 4̃

˜ is smaller than C∇d.


Implications 1 → 1̃, 2 → 2̃, 3 → 3̃, 4 → 4̃ are trivial, because C ∇d
Implications 2 → 1, 2̃ → 1̃, 3 → 4, 3̃ → 4̃ are trivial, because they’re just stronger statements.
The implications 1 → 2 and 1̃ → 2̃ are also easy, since excluding some graph with n nodes as a (topological)
minor at depth d implies excluding the clique Kn as a (topological) minor at depth d.
Implications 4 → 2, 4̃ → 2̃ follow from the contrapositive: if C∇d contains all cliques for some number d
(and all larger ones), then `dens(C ∇ ) = 2 (see third example above).
Therefore, to show the equivalence of the non-tilde items (1,2,3,4), it remains to prove the implication
2 → 3. This is done in Section 5.2. Similarly, to show the equivalence of the tilde items 1̃, 2̃, 3̃, 4̃, it suffices
to prove the implication 2̃ → 3̃; we do this in Section 5.1. Finally, to show the equivalence of the non-tilde
items with the tilde items, it suffices to show the implication 2̃ → 2; we do this in Section 5.3.

5 Proof of Theorem 4.5


1
Lemma 5.1. Let G be a graph and ε > |G| . Then there exists a subgraph H ⊆ G such that

(a) δ(H) ≥ (1 − ε) ||G||


|G| ,

(b) ||H|| > ε||G||.

Proof. Let us iteratively remove an arbitrary vertex with degree less than δ := (1 − ε) ||G||
|G| (with accidental
edges); if such a vertex does not exist then we do nothing. One gets a sequence of graphs

G = G0 ⊇ G1 ⊇ G2 ⊇ . . . ⊇ G|G| = H.

Graph H either satisfies (a) or is just an empty graph. But in each step we remove at most δ edges, so

||H|| ≥ ||G|| − |G|δ = ε||G|| > 0.

So (b) holds and, as H is a non-empty graph, (a) holds too.

19
5.1 Proof of the implication 2̃ → 3̃
˜
We prove by contraposition. Assume that `dens(C ∇ ) > 1. That implies that there exists an  > 0 and a d0
that for all n there exists a graph G such that

||G||
≥ |G|
|G|
˜ 0
G ∈ C ∇d
|G| > n

˜ We fix  > 0, d0 such as above.


We want to show that there is a d that for all n Kn ∈ C ∇d.
Proposition 5.2. Let  > 0. There exist n0 ∈ N, c ∈ N, µ > 0 such that for all graphs G
(
δ(G) ≥ |G| ˜
=⇒ K|G|µ ∈ G∇c.
|G| ≥ n0

˜ ⊆ G∇c
The implication 2̃ → 3̃ follows for d that satisfies 2d + 1 = (2c + 1)(2d0 + 1), G∇d ˜ ∇d
˜ 0

Lemma 5.3. Fix α = 5. For 0 <  < 1 there exist n0 ∈ N such that for every graph G, if
def
n = |G| ≥ n0
δ(G) ≥ |G| ,

then

either ˜
1)Knα ∈ G∇1
1− α
α
or ˜ δ(H) ≥ 1 ( 1 |H|) 1−−
2)∃H ∈ G∇1, α
≥ |H| ≥ 12 n−
8 4

Proof. The proof proceeds in two steps.

Step 1 Find A, B ⊆ VG such that

A∩B =∅ (5.1)
1
|B| ≥ n (5.2)
2
α α
n1−+ ≤ |A| ≤ 4n1−+ (5.3)

∀v ∈ B degA (v) ≥ n (5.4)

def
where degA (v) = number of neighbors of v in A.

20
A

B
v

We construct A by randomy choosing vertices from VG with probability


α
p = 2n−+

The expected size of A is: α


E|A| = p · n = 2n1−+
Given the Chernoff’s inequality we can control the size of A. That is for sufficiently large n we have:
1
P(|A| > 2pn) <
4
1 1
P(|A| < pn) >
2 4
1
so with probabily at least 2 the size of A does not exceed the desired size:
α α 1
/ [n−+ , 4n−+ ]) <
P(|A| ∈ (5.5)
2
Choose any v ∈ VG . Then we calculate estimations for A-neighbors of v:

degA (v) ≥ n
α
E[degA (v)] ≥ n p = 2n
α 1
P(degA (v) < n ) <
5
for sufficiently large n.
Lets define α
B 0 = {v : degA (v) ≥ n }
The expected value of number of vertices not in B 0 is:
X α X α X1 n
E|VG − B 0 | = E [degA (v) < n ] = E[degA (v) < n ] < =
v v v
5 5

Using Markov’s inequality we obtain:


2 2 n
P(|VG − B 0 | ≥n) · n ≤ E|VG − B 0 | =
5 5 5
0 2 1
⇒ P(|VG − B | ≥ n) < (5.6)
5 2

21
From inequalities (7.5) and (7.6) it follows that with positive probability A is such that
α α
n1−+ ≤ |A| ≤ 4n1−+
3
n ≥ |B 0 |
5
Let B = B 0 − A. Then |B| ≥ 12 n and the sets A and B satisfy the required conditions (7.1) − (7.4).

Step 2 We construct a graph G0 with a vertex set A and edges corresponding to the elements of B. Initially,
G0 has no edges. We add new edges to G0 as follows. We begin by choosing an element of B in some arbitrary
way.

If NG (v) ∩ A form a clique in G0 we terminate the construction of G0 . Otherwise we add a missing edge
associated with v and move on to the next arbitrarily chosen vertex of B. We terminate the construction if
we have used all vertices of B.
α
Either we have found a clique of size n (because of (7.4))
˜
Knα ∈ G∇1

or we have used all vertices of B and thereby constructed G0 ∈ G∇1˜ such that ||G0 || = |B| and |G0 | = |A|.
It follows, that
1
||G0 || |B| 2n 1 −α
= ≥ 1−+ α = n
|G| |A| 4n 8
We can now choose a subgraph H ⊆ G0 such that:
α 1 0 1
4n1−+ ≥ |A| ≥ |H| ≥ |G | = |A|,
2 2
and solve for n:
1 1 1 α 1 1 −α 1 1 2 1−α−1 −α−2
n ≥ ( |H|) 1−+α , δ(H) ≥ n− ≥ ( |H|) 1−+α = ( |H|)+ 1−+α
4 8 8 4 8 4
δ(H) > H is impossible and
1 −α
δ(H) ≥ n
8
α
|H| ≤ 4n1−+

22
That means if
1 −α α
n > 4n1−+ ,
8
then the second possibility does not hold. Hence the following corollary:
α
1
Corollary 5.4. If 32 > n1−2+2 then the second possibility does not hold. This is the case when 1−2+2α
is negative and n is large enough. For α = 5, 1 − 2 + 2α is negative for all 0, 56 <  < 43 .

To prove Proposition 5.2 we apply the lemma iteratively. At each step we either obtain a clique or a
subraph with larger minimal degree. In the first case we are done and the proposition is proved. Note that
the second case can occur only finitely many (depending on ) times in our iteration. This is because in each
step we increase the minimal degree of the obtained graph at least by a constant. Assuming that we began
with (
0 > 0
δ(H) ≥ |H|0
we then obtain the following sequence

0 −→ 1 = 0 + 20 · c −→ 2 = 1 + 21 · c > 0 + 220 · c −→ ... −→ n > 0 + n20 · c

We see that after finitely many steps we obtain an  that is greater than 0.56 and using the corollary above
we find the desired clique.

5.2 Proof of the implication 2 → 3


The proof follows closely the proof of the implication 2̃ → 3̃.
We prove by contraposition. Assume that `dens(C ∇ ) > 1. That implies that there exists an  > 0 and a d0
that for all n there exists a graph G such that

||G||
≥ |G|
|G|
G ∈ C∇d0
|G| > n

˜
We want to show that there is a d that for all n Kn ∈ C∇d. Notice that in proposition 5.2 if K|G|µ ∈ G∇c
than also K|G|µ ∈ G∇c. Thus the implication 2 → 3 follows from proposition 5.2 for d that satisfies
2d + 1 = (2c + 1)(2d0 + 1), G∇d0 ∇c ⊆ G∇d.

5.3 Proof of the implication 2̃ → 2


We will use the following notation:
def
ω(G) = max{n : Kn ⊆ G}
ω(C) = sup ω(G).
G∈C

Using this notation, we can rewrite the implication 2̃ → 2 in the following way:
˜ <∞
∀d ω(C ∇d) ⇒ ∀d ω(C∇d) < ∞.

Proposition 5.5. Let G be a graph and d ∈ N. Then,


˜ ≤ ω(G∇d) ≤ 2ω(G∇(3d
ω(G∇d) ˜ + 1))d+1 .

23
From this we deduce an analogous result, when G is replaced by a class of graphs C. The implication
˜ is finite for any d then so is 2ω(C ∇(3d
2̃ → 2 follows from the second inequality: if ω(C ∇d) ˜ + 1))d and in
consequence ω(C∇d) < ∞ for any d.
˜ ⊆ G∇d. We therefore focuns on the second
Proof. The first inequality follows from the inclusion G∇d
inequality.

Let ω(G∇d) = p. G contains Kp as a minor at depth d. Let {w1 , . . . , wp } be the set of the trees of
radius at most d (we will call them „bags”) corresponding to the nodes of this clique. We will also add the
edges connecting bag i to p − 1 other bags to the tree wi . That way each tree has exactly p − 1 leafs and
depth at most d + 1 (maximum distance from a selected node, which we will call the „centre of the bag”, to
the leafs).

Figure 4: Example of the initial minor Kp (for p = 5).

We construct q sets of bags: M1 , . . . , Mq . The construction proceeds in steps:

In each step i we have a working set of bags Wi . Initially W1 = {w1 , . . . , wp }. In step i we select any
bag wi ∈ Wi . Let’s direct wi from leafs to the centre of the bag. There exists a node vi ∈ wi with indeg(vi )
1
at least (|Wi | − 1) d+1 . Suppose q is chosen so that:
1
indeg(vi ) ≥ (|Wi | − 1) d+1 ≥ q − 1. (5.7)

We can then define Mi as a set containing wi and q − 1 other bags from Wi such that the paths from vi to
those bags are disjoint:
We then put Wi+1 = Wi − Mi . After q iterations we get q sets: M1 , . . . , Mq .
Because every two bags are connected by an edge, it follows that Kq is a topological minor of G at depth at
most 3d + 1.
We will now find q such that condition (5.7) is fulfilled. After q − 1 iterations we have q − 1 sets Mi of
size q, so:
|Wi | ≥ p − (q − 1)q for i ≤ q

24
Figure 5: Construction of set Mi .

Figure 6: Example of the constructed topological minor Kq (for q = 3).

For (5.7) to be fulfilled it is enough that:


1
(p − (q − 1)q − 1) d+1 ≥ q − 1

p − 1 ≥ (q − 1)d+1 + (q − 1)q,

25
from which we can define q as:
1 k
j p  d+1
q= .
2
˜
Kq ∈ G∇(3d + 1) so:
1 k
j p  d+1
˜
ω(G∇(3d + 1)) ≥ q = ,
2
from which we conclude that:
˜
ω(G∇d) = p ≤ 2ω(G∇(3d + 1))d+1 .

26
6 Decompositions
In this section, we will study two notions of a graph decomposition. The idea of decompositions is to
decompose a graph into simple parts which form a simple structure. In tree decompositions, the parts form
a tree, and each part is of bounded size.
Definition 6.1 (tree decomposition). Let G be a graph. A tree decomposition of G is a pair:
• a forest T = (B, ET ), called the decomposition tree, and
• a family of sets {Bb }b∈B (the bags of the decomposition) such that:
1. Each bag Bb is a set of vertices of G;
2. The family {Bb }b∈B is a covering of G – both vertexwise and edgewise – meaning that each
vertex of G belongs to some bag, and for each edge e of G, there is some bag which contains both
endpoints of e;
3. For each v ∈ VG the set {b : v ∈ Bb } is connected in T .
We will be interested in finding tree decompositions of small width.
Remark 6.2. The decomposition tree is a forest, which might be not connected, i.e. not be a tree. However,
one can always turn the decomposition tree T into a connected forest T 0 , by adding an extra root node b0 ,
connected with one vertex in each component of T , and defining the corresponding bag Bb0 to be the empty
set. This operation does not increase the width of the decomposition.
Definition 6.3 (decomposition width). The width of a tree decomposition is maxb∈B (|Bb | − 1).

Figure 7: Example of a tree decomposition of width 1.

Definition 6.4 (treewidth). The treewidth of a graph G (denoted tw(G)) is defined as the minimum width
of any tree decomposition of G.
Fact 6.5. If G ⊆ H then tw(G) ≤ tw(H).
Fact 6.6. tw(G ∪˙ H) = max(tw(G), tw(H)).
Lemma 6.7. Let G be a graph. If G is connected, then every decomposition tree of G is connected. If G is
disconnected, then every decomposition tree of G whose bags are nonempty is disconnected.
Proof. For one implication, we show that a path in G induces a path in T . For the other implication, we
show that a path in T induces a path in G.

27
Figure 8: Example of a tree decomposition of width 2.

6.1 Separators
Definition 6.8 (separator). Let G be a connected graph. A set of vertices S ⊆ VG is a separator if the
graph G − S has at least two connected components.
Proposition 6.9. Let G be a connected graph such that tw(G) ≤ n. Then either |G| ≤ n + 1 or G has a
separator S such that |S| ≤ n.
Lemma 6.10. Let G be a graph with a given decomposition tree T . Let {b, c} be an edge of T , and let T 0 be
obtained from T by removing the edge {b, c}. Let G0 be the graph G − (Bb ∩ Bc ). Then T 0 is a decomposition
tree for G0 , where the bags of T 0 are obtained by restricting the bags of T to G0 .
Proof. It is clear that the bags of T 0 form a covering of G0 . It remains to prove that for any vertex v of G0 ,
the set of vertices in T 0 whose corresponding bags contain v is connected.
Fix a vertex v of G. Let S be the set of vertices in T whose corresponding bags contain v. Since T is a
tree decomposition, the set S is connected in T .
Clearly, S is exactly the set of vertices in T 0 whose corresponding bags contain v. It remains to prove
that S is connected in T 0 . Suppose that S is not connected in T 0 . Since S is connected in T and is not
connected in T 0 , it follows that S must contain both endpoints of the edge {b, c} (this is because T is a tree,
T 0 is obtained from T only by removing the edge {b, c}). But the bags of T 0 corresponding to the endpoints
b and c have empty intersection. In particular, v cannot belong to both these bags. Therefore, b or c does
not belong to S, a contradiction.
Lemma 6.11. Let T be a tree decomposition of G, such that no bag of the decomposition is contained in
another bag. If {b, c} is an edge of T , then Bb ∩ Bc is a separator in G.
Proof. Let G0 be the graph G−(Bb ∩Bc ). This graph has a decomposition tree T 0 as described in the lemma.
This tree T 0 is not connected, as it is obtained from the tree T by removing one edge {b, c}. Moreover, the
tree T 0 does not contain an empty bag – indeed, this would imply that the tree T has a bag which is contained
in Gb and Gc .
Fact 6.7 implies that G0 is disconnected. This proves that Bb ∩ Bc is a separator.
Proof of Proposition 6.9. Take a decomposition tree T of G, whose width is at most n. We may assume that
no bag of the decomposition is contained in another bag – otherwise, we can remove the smaller bag.
If |G| > n + 1 then there are two nodes b and c which are connected by an edge in the decomposition
tree T . The previous lemma then implies that Bb ∩ Bc is a separator in G. As both Bb and Bc have at most
n + 1 elements, and neither is contained in the other, the size of Bb ∩ Bc is at most n.
Corollary 6.12. Cycles have treewidth 2.
Proof. Let C be a cycle. We have seen in the examples C has treewidth at most 2. Since C does not have
a separator of size 1, it follows that C must have treewidth at least 2.

28
Corollary 6.13. Let G be a graph. Then G has treewidth at most 1 if and only if G is a forest.
Proof. We have seen in the examples that a forest has treewidth at most 1. Conversely, if G has treewith at
most 1, then it cannot contain a cycle, since cycles have treewidth 2. Therefore, G is a forest.
Definition 6.14. Let G be a graph, W be a set of its vertices, and α be a real number such that 0 < α < 1.
A set S of vertices of G is called an α-separator for W if the following conditions hold:
• Some two vertices of W are in distinct components of G − S, and
• No component of G has more than α|W | vertices of W .
The following proposition is a strengthening of Proposition ??

Proposition 6.15. Let G be a connected graph of treewidth at most n, and let W be a set of at least n + 2
vertices of G. Then there is a 21 -separator for W .
Proof. Let T be a tree decomposition for G, of width at most n. Choose a root r for T . We call a subgraph
of G big if it contains more than 21 |W | vertices of W .
If Bv is a 21 -separator for W , we are done. Otherwise, some component D of G − Bv is big; let w be the
corresponding child of v.
If no component of G − Bv is big, then we are done – the required separator is Bv .
Otherwise, one of the components of G−Bv is big. We argue that this must be a component corresponding
to a child of w, and not to v, the parent of w.
Indeed, the component C of G − Bv which intersects Bv cannot be big: by Lemma 6.11, Bv ∩ Bw splits
G into two disjoint sets, one of which contains C, and the other contains D. It is impossible that both C
and D are big.
Therefore, C is not big, so there must be a child of w whose corresponding component is big.
We repeat the argument, with w being the root instead of v. If Bw is a 21 -separator for W , we are done.
Otherwise, some component of G − Bw is big, and this component must correspond to a child of w, and so
on. Finally, we must find a vertex w such that Bw is a 12 -separator for W .

Fact 6.16. Show that an n × n grid (with n2 vertices) has treewidth at least n.
Proof. Exercise.

6.2 Treewidth and minors


Fact 6.17. If G ≤m H, then tw(G) ≤ tw(H).
Corollary 6.18. For every n, the class of graphs of treewidth at most n is minor-closed.
The following theorem is a special case of the Graph Minor Theorem (Theorem 2.18.1).
Theorem 6.19. For every n, the minor relation is a w.q.o. over the class of graphs of treewidth at most n.

Remark 6.20. For n = 1, this result is known as Kruskal’s tree theorem. Its proof is not very difficult.
For n > 1, the proof follows similar lines. The above theorem is one of the ingredients of the Graph Minor
Theorem. Another, more difficult ingredient is the following result.
Theorem 6.21. Let C be a class of graphs. The following conditions are equivalent:

1. C∇∞ contains all planar graphs.


2. C∇∞ contains all square grids,
3. tw(C) = ∞,

29
Proof. The implication 1 → 2 is obvious. The implication 2 → 3 follows from Fact 6.16. The implication
3 → 1 is difficult. It can be restated as follows:
For every n ∈ N there is a number kn ∈ N such that tw(G) > kn implies that G contains the
n × n-grid as a minor.
This result is a theorem of Robertson and Seymour.

6.3 Algorithmic aspects of computing the treewidth


Theorem 6.22. The following problem (∗) is NP-complete:
• Input: A graph G and a number k
• Output: Does G have treewidth at most k?
However, we will se that the problem (∗) is FPT, if k is taken as the parameter:
Theorem 6.23 (Bodlaender). There is an algorithm for (∗) running in time O(|G|·2poly(k) ), which moreover
constructs a corresponding tree decomposition (if it exists).
Proof. We will only prove a weaker version of this theorem, where the running time is O(|G|2 · 9k ). The
idea is to recursively find good separators. For the proof, see e.g. this introductory text by Jiří Fiala:
iti.mff.cuni.cz/series/2003/132.ps, Section 4.1.

6.4 Treedepth
A rooted forest is a disjoint union of rooted trees. Let F be a rooted forest. For two nodes v, w of F , we
say that v is an ancestor of w, and write v ≤ w, if v are in the same connected component and v lies on the
path connecting w with the root. By < we denote the irreflexive relation corresponding to <.
The height of F is the maximal length of a chain with respect to <, i.e. the maximal number of vertices
on a root-to-leaf path in F .
By F + we denote the graph (VF , {{v, w} : v < w in F }); we call F + the closure of F .

Figure 9: A forest and its closure.

Definition 6.24. Let G be a graph. The treedepth of G, denoted td(G), is the minimal height of a forest F
such that G embeds into F + .
Example 6.25. If G is a star (i.e. a tree of depth 2), then td(G) = 2. If G is a discrete set, then td(G) = 1.
The treedepth of a path with n nodes is O(log(n)). The treedepth of the n-clique is n.
The following fact is obtained easily by induction on td(G).
Fact 6.26. Let G be a graph. Then:

1
 if |G| = 0
td(G) = max{td(H) : H is a connected component of G} if G is disconnected

1 + min{td(G − {v}) : v ∈ VG } if G is connected

30
Corollary 6.27. Let Pn denote the path with n vertices. Then td(Pn ) = dlog2 (n + 1)e.
Proposition 6.28. If G has no path of order greater than n, then td(G) ≤ n.
Proof. Without loss of generality, assume that G is connected. Run a DFS on G. By the assumption on G,
the depth of the search tree is at most n. The graph G embeds into the closure of this search tree.

31
7 Bounded Expansion
Definition 7.1 (Greatest reduced average degree). Let C be a class of graphs and let d ∈ N be a number .
The greatest reduced average degree at depth d of a graph G ∈ C is

kHk
∇d (G) = max .
H∈G∇d |H|

Definition 7.2 (Bounded expansion). A class of graphs C has bounded expansion if ∇d (C) < ∞ for all
d ∈ N, which means:
kHk
max < f (d).
H∈C∇d |H|

Fact 7.3. Let a class of graphs C exclude a minor, from the fact that C has bounded density follows:

∇d (C) < const.

Fact 7.4. If C is nowhere dense, then ∇d (G) ≤ |G|o(1) .


Proof. From theorem 4.5 we know that nowhere density is equivalent to the following condition:

log kHk
lim lim sup ≤ 1.
d→∞ H∈C∇d log |H|

By a simple reformulation of above statement we get:

G ∈ C∇d log kGk


∀d∀∃n such that ≤ 1 + .
|G| > n log |G|

We can now remove logarithms from inequality, and receive a bound on graph density:

kGk
< |G| .
|G|

Theorem 7.5 (Dvorak at al.; Grohe and Kreutzer). Let C be a class of bounded expansion graphs. Then
the following problem:

• Input: A formula φ of First Order logic (treated as a parameter) and a graph G.


• Decide: Does G |= φ hold?
is in FPT. More precisely, there exists an algorithm working in a time f (|φ|) · |G|.
Proof. We will prove this theorem later.

8 Coloring
Definition 8.1 (p-tree-width coloring). Let G be a graph and p be a number. A coloring c : Vg → C is a
p-tree-width coloring, if for any subgraph H ⊆ G colored with i ≤ p colors, tw(H) ≤ i − 1.

32
Example 8.2.

Any subgraph using exactly one color has tree width 0. This is a 1-tree-width coloring.

Example 8.3.

This is a 2-tree-width coloring.

Definition 8.4 (p-tree-width chromatic number). Let G be a graph. By the p-tree-width chromatic number
of G we call the minimal number of colors needed in a p-tree-width coloring of G and denote it χtw
p (G).

Fact 8.5. Let G be a graph. Then:


χtw
2 (G) ≤ n

iff G has a proper coloring with n colors, such that every cycle has more than 3 colors.
Fact 8.6. For any graph G,
χtw
1 (G) = χ(G).

Example 8.7.

Any graph induced by 2 colors is a sum of paths.

33
χtw
2 (G) = 3

Theorem 8.8. Let C be a class of graphs which excludes a minor. Then for all p ∈ N

χtw
p (C) < ∞.

Proof. We will prove a more general theorem later.


Definition 8.9 (p-tree depth coloring). Let G be a graph and p be a number. A coloring c : VG → C is a
p-tree-depth coloring, if for any subgraph H ⊆ G colored with i ≤ p colors, td(H) ≤ i.
Definition 8.10 (p-centered coloring). Let G be a graph and p be a number. A coloring c : VG → C is a
p-centered coloring, if for any connected subgraph H ⊆ G one of the following conditions holds:
• H has a vertex vi with a unique color. More precisely, ∃i : (vi ) = c(vj ) ⇐⇒ i = j

• H uses at least p colors.


Fact 8.11. For any graph G,
χtd tw
1 (G) = χ1 (G) = χ(G).

Example 8.12.

χcent
p (T ) = p

Definition 8.13 (f ). By f we denote a family of graph parameters, f = (f1 , f2 , f3 , ...), where fn :


Graphs → R ∪ {−∞, +∞}. If f , g are two such families, we write f  g when there exist increasing
functions s, t, such that fn (G) ≤ t(gs(n) (G)) for any graph G and n ∈ N.
Theorem 8.14. The following inequalities holds:

34
χtw  χtd  ∇


χcent

Proof. 1. We will show that χtw td


p (G) ≤ χp (G) Consider a p-tree-depth coloring of a graph G with n colors.
This coloring is also a p-tree-width coloring.

2. χtd  χcent Let G has a p + 1-centered coloring with n colors. We will show that this is also a p-tree-
depth coloring of G. From this follows χtd cent
p (G) ≤ χp+1 (G). First we are going to show that if H ⊆ G
uses i ≤ p colors, then td(H) ≤ i. We proceed by induction on i:
• For i = 1 it is indeed correct.
• Without loss of generality we can assume that H is connected. Then either:
– H uses more than p + 1 colors, which is a contradiction with the assumptions.
– H has a vertex v with an unique color.
Then H − {v} uses i − 1 colors. By inductive assumption, we now find a tree decomposition with a
depth i − 1 and add v as a root, while keeping the remaining edges.
3. To be continued.

Corollary 8.15. Let C be a class of graphs. Following conditions are equivalent:


• C has bounded expansion.
• χtw
p (C) < ∞ for all p ∈ N.

• χtd
p (C) < ∞ for all p ∈ N.

• χcent
p (C) < ∞ for all p ∈ N.

35
Figure 10: K6 with subdivided edges.

9 χtd
−  ∇−

We now show that χtd


−  ∇− .

Definition 9.1. A forest resolution of a graph G is a sequence G~ =G~1 ⊆ G


~ 2 ⊆ . . ., such that each graph is
obtained from the previous one by applying the following rules, whenever possible: TODO: list of rules.
Note that all rules are applied simultaneously.
Our intermediate goal is to show that after performing one step of the resolution, we can, in some sense,
bound the growth of the in-degree. Observe that a simplest approach does not work, that is there does not
~ i+1 ) ≤ f (maxdeg(G
exist a function f , such that maxdeg(G ~ i )). A possible example is shown in Fig. 10. Note
that the maximum degree grows up to Θ(n), no matter how the edges are directed.
However, in the example above ∇(G) is very big. It turns out that if this is not the case, we can derive
the desired bound. Namely, we can show that for some function f
~ i+1 ) ≤ f (maxdeg(G
maxdeg(G ~ i ), ∇(G
~ i ))

~ and its arbitrary forest augume-


Lemma 9.2. There exists a function f such that for any oriented graph G
~ 0 we have
nation G
~ ∇2r+1/2 (G)).
∇r (G0 ) ≤ f (r, maxindeg(G), ~
~ 0 after dropping the orientation.)
(G0 denotes graph G

Proof. We first show that G0 ∈ (G • Kd+1 )∇1, where d = maxindeg(G). ~ Observe that G • Kd+1 can be
constructed in two steps. First, for each v ∈ V (G) we add a clique Cv of size d + 1. Then for every directed
~ we add directed edges from every vertex in Cu to every vertex in Cv .
edge uv ∈ E(G),
We now construct a subgraph H ⊆ (G • Kd+1 ). Inside each clique Cv fix arbitrary vertex to be a sink
vertex (denoted by s(Cv )) of this clique. Now for each edge vw of G ~ we add a single edge to H. This
edge will connect the sink vertex s(Cv ) with some non-sink vertex of Cw . We choose the end vertex inside
Cw in such a way, that every vertex in H has at least one incoming edge. This can be done, as there are
d = maxindeg G~ vertices different from the sink in every clique.

36
Figure 11: Graph H. Sets of edges that are contracted to one vertex are marked with dotted lines.

We obtain a graph H depicted in Fig. 11. Clearly, H ⊆ (G • Kd+1 ). H is a collection of disjoint stars:
every edge starts in some sink and every vertex has at most one in-edge.
In order to show that G0 ⊆ (G • Kd+1 )∇1, we construct a minor H 0 of G • Kd+1 , and show that G0 is a
subgraph of H 0 . To obtain H 0 we contract all edges from H. Since H consists of stars, H 0 is a minor of H
at depth 1 and thus also H 0 ∈ (G • Kd+1 )∇1. It remains to show that G0 ⊆ H 0 .
There exists a natural correspondence between vertices of G and vertices of H 0 . Namely, each vertex v
corresponds to a vertex created by contracting out-edges of s(Cv ) (although it is a slight abuse of notation,
we will call this vertex s(Cv )). We now have to show that all edges of G0 can be traced in H 0 . There are
three types of edges in G0 :
1. Edges belonging to G.~ Consider an edge uv ∈ G. ~ In (G • Kd+1 there is an edge between s(Cu ) to
s(Cv ). Since these vertices are not contracted to one vertex, the same edge exists in H 0 .

2. Edges added by the ”transitive” rule. Assume that uv, vw ∈ G. ~ Then in H there is an edge from u to
a vertex v ∈ Cv . Moreover, in G • Kd+1 there is an edge from v 0 to s(Cw ). After the contraction, the
0

first of these edges gets contracted, so there is an edge between s(Cu ) and s(Cv ).

3. Edges added by the ”fraternal” rule. If uv, wv ∈ G ~ then in H one can go from s(Cu ) to s(Cv ) by
following first a directed edge, then an edge inside a clique and then going backwards along a directed
edge. Similarly as in case 1, after the contraction the corresponding vertices are connected with an
edge.

We conclude that G0 ∈ (G • Kd+1 )∇1. It follows easily that ∇r (G0 ) ≤ ∇r ((G • Kn )∇1).
We now use the following property:

||H||
∇r (K∇1) = max ≤ ∇2r+1/2 (K)
H∈K∇1∇r |H|

to derive

37
∇r ((G • Kn )∇1) ≤ ∇2r+1/2 (G • Kd+1 )
˜ g(2r+1/2) (G • Kd+1 ))
≤ f (∇
˜ g(2r+1/2) (G), d, r)
≤ F (∇
≤ F (∇g(2r+1/2) (G), d, r)

for some functions f , g and F , which do not depend on G or d. This completes the proof.
~ there exists an
Corollary 9.3. There exists a family of functions Ri (X, Y ), such that for every graph G
~ ~ ~
augmentation G = G1 ⊆ G2 ⊆ . . . in which
~ i ) ≤ Ri (maxindeg(G),
maxindeg(G ~ ∇2i−1 −1 (G)).

Proof. We use induction on i to prove the following claim. There exists an augumentation such that for
every r and i we have:
maxindeg(G ~ i ) ≤ Ri (maxindeg(G),
~ ∇2i−1 −1 (G))
and

~ ∇2i−1 (r+1)−1 (G)).


∇r (Gi ) ≤ Si (r, maxindeg(G),
For i = 1, we have to show that

~ 1 ) ≤ R1 (maxindeg(G),
maxindeg(G ~ ∇0 (G)))
and

~ ∇r (G)),
∇r (G1 ) ≤ S1 (r, maxindeg(G),
which follows immediately, since G1 = G.
Now, the induction step. We first use Lemma 9.2 and then the induction hyphothesis twice:

~ i ))
∇r (Gi+1 ) ≤ f (r, maxindeg(Gi ), ∇2r+1/2 (G
~ ∇2i−1 (2r+1/2+1)−1 )(G))
≤ f (r, Ri (maxindeg(G), ∇2i−1 −1 G), Si (r, maxindeg(G),
~ ∇2i (r+1)−1 (G)).
≤ Si+1 (r, maxindeg(G),

This gives us a bound on ∇r (Gi+1 ).


In order to bound maxindeg(G ~ i+1 ), consider a resolution G
~ = G ~1 ⊆ G ~2 ⊆ ... ⊆ G ~ i , which satisfies
~ ~
both claims. Our goal is to find such an augmentation Gi+1 of Gi , that we can bound the increase in the
maximum in degree.
There are at most d2 ”transitive” edges entering any vertex of G ~ i+1 , where d = maxindeg(G ~ i ). Let us
now deal with fraternal edges, added by the second augmentation rule. Denote by H the graph consisting
of fraternal edges. From Lemma 9.2 we have that ∇0 (H) ≤ f (0, d, ∇1/2 (G ~ i )). Hence we can direct H, so
~
that maxindeg(H) is bounded as follows
~ i ))
maxindeg(H) ≤ f (0, d, ∇1/2 (G
~ ∇2i−1 (1/2+1)−1 (G))
≤ f (0, d, Si (1/2, maxindeg(G),
~ ∇2i−1 (1/2+1)−1 (G))
≤ f (0, d, Si (1/2, maxindeg(G),
~ ∇2i −1 (G))
≤ f (0, d, Si (1/2, maxindeg(G),

38
Using this orientation, we have
~ i+1 ) ≤ d + d2 + f (0, d, Si (1/2, maxindeg(G),
maxindeg(G ~ ∇2i −1 (G)))

Now, since d = maxindeg(G ~ i ) ≤ Ri (maxindeg(G),


~ ∇2i−1 −1 (G)) we can bound maxindeg G
~ i+1 by a func-
~
tion Ri+1 (maxindeg(G), ∇2i−1 −1 (G)).
This completes the proof.

Remark. It is possible to make Ri polynomial functions.


Lemma 9.2 allows us to bound the in-degree in a forest augmentation of the graph. Our next goal is to
show that when we perform the augmentation of G and the in-degree does not grow too much, after a small
number of steps the augmented graph contains a forest order containing G.

Lemma 9.4. Fix p ∈ N. Consider any graph G and its resolution G ~ =G~1 ⊆ G
~ 2 ⊆ . . ..
Then, for T (d) = 1 + (d − 1)(2 + dlog2 pe), where d = td(G), either
~ T contains an acyclicly oriented clique of size p, or
• G
~ T contains a forest order F~ , such that G ⊆ F~ .
• G
Proof. The proof proceeds by induction on d. For d = 1, it is easy (G consists solely of isolated vertices).
Now, an induction step. Consider G, such that td(G) = d + 1. W.l.o.g let us assume that G is connected.
Hence, there exists a vertex s, such that td(G − {s}) = d. Then G − {s} is a collection of connected graphs
H i.

~ ti := G
H ~ t [VH i ]

Moreover, H ~i ⊆ H ~ i ⊆ . . . is a super-resolution of H i . We now apply the induction hyphothesis to the


1 2
resolution of H i . Consider a moment T . If any graph contains a directed clique of size p, we are done.
Thus, let us now assume the opposite, that is the other case holds for all H ~ i contains a
~ i . Thus, each H
T T
~ i
forest order Fi containing H . We now have to show that after a small number of steps, the entire graph
will contain a forest order containing G.
Consider a set of vertices Di = {v ∈ H i |∃w v ≥ w → s} (→ means there is an edge in HTi ). Hence, in the
S of resolution, all vertices of Di get connected to s and in the following, we get a clique on vertices
next step
of D = Di . If |D| ≥ p, we are done, we get a clique and it can be made an undirected one (TODO: how?).
Otherwise, the total size of Di ’s is less than p.
We pick a hamiltonian path in G ~ T +2 than goes through all vertices in D. This gives us an ordering of
vertices inside Di ’s, in particular of the vertices, whose descendants are outside Di .

39
The following lemma is a consequence of Lemma 9.4.
Lemma 9.5. Let p ∈ N. Consider a graph G together with its resolution
~ =G
G ~1 ⊆ G
~2 ⊆ ...

For S = S(p) = 1 + (p − 1)(2 + dlog2 pe) at least one of the following holds:
~ S contains an acyclic oriented clique of size p, or
(a) G
~ S contains a forest order F~ such that G ⊆ F .
(b) td(G) ≤ p − 1 and G
~ T where T = 1 + (td(G) − 1)(2 +
Proof. (1) If td(G) ≤ p − 1 then by Lemma 9.4 (a) or (b) holds for G
~ S.
dlog2 pe) < S, hence (a) or (b) also holds for G
(2) Suppose td(G) = p. We show that G contains an acyclic oriented clique of size p. Assume it does not.
By Lemma 9.4, G ~ S contains a forest order F~ such that G ⊆ F . Then F has depth at least p, because
td(G) = p. Therefore F~ contains a path of length p. Since F~ is a forest order, each two vertices on
this path are joined by exactly one edge in F~ , whose orientation is consistent with the orientation
of the path. Hence the vertices on the path induce an acyclic oriented clique of size p in F~ ⊆ G ~ S.
Contradiction.
(3) Suppose td(G) > p. Then there exists H ⊆ G such that td(H) = d. It is clear from the definition of a
resolution that there exists a resolution r of H
~ =H
H ~1 ⊆ H
~2 ⊆ ...

such that H~i ⊆ G~ i for i ∈ N+ . Indeed, by simply restricting the resolution of G to H and removing
edges unnecessarily added to H ~ in the resolution of G, we obtain a desired resolution of H. By
applying (2) to H with the resolution r, we conclude that H ~S ⊆ G~ S contains an acyclic oriented clique
of size p.

~ =G
Corollary 9.6. For a graph G and its resolution G ~1 ⊆ G
~ 2 ⊆ . . . we have:

χcent
p
~ S(p) ) + 1
(G) ≤ 2 maxindeg(G
where S is the function from Lemma 9.5.
Proof. Let D = maxindeg(G~ S(p) ). First, we show that GS(p) has a proper coloring using at most 2D + 1
colors.1 We have:
P
2kHk 2 v∈H ~ indeg(v)
mad(GS(p) ) = max = max ≤ max 2 maxindeg(H) ~ = 2 maxindeg(G ~ S(p) )
H⊆GS(p) |H| H⊆GS(p) |H| H⊆GS(p)

This implies that GS(p) is 2D-degenerate, so it may be colored with 2D + 1 colors (remove a vertex v of
degree 2D and inductively color the rest of the graph, then color v with a color not used by any of its 2D
neighbors).
So let c : VG → N be a coloring of GS(p) with 2D + 1 colors. Obviously, c is then also a coloring of G,
since G ⊆ GS(p) and VG = VGS(p) . We will show that c is a p-centered coloring of G.
Let H ⊆ G be connected. As in the proof of Lemma 9.5, there exists a resolution H ~ =H ~1 ⊆ H~2 ⊆ ...
~ ~ ~ ~
such that Hi ⊆ Gi for i ∈ N+ . Let S = S(p). If HS ⊆ GS contains an acyclic oriented clique of size p,
then cVH uses at least p colors. Otherwise, by Lemma 9.5, H ~ S contains a forest order F~ such that H ⊆ F .
Because H is connected, F~ has exactly one root u, which is connected with every other vertex in F~ ⊆ G ~ S.
Thus u must have a unique color in F~ , and hence also in H ⊆ F .
~ we denote by G the undirected graph obtained from G
1 For a directed graph G ~ by forgetting edge orientation and removing
duplicate edges.

40
By Corollary 9.3, there exist families of functions Ri (x, y), R̃i (x, y) and fi (x, y) (i = 1, 2, . . .) such that
for any graph G there exists a resolution of G
~ =G
G ~1 ⊆ G
~2 ⊆ ...

such that
~ i ) ≤ Ri (maxindeg(G),
maxindeg(G ~ ∇2i+1 −1 (G))
≤ R̃i (∇0 (G), ∇2i+1 −1 (G))
≤ fi (∇2i+1 −1 (G))

~ i in this
The resolution of G for which the above inequalities hold is called the canonical resolution, and G
resolution is denoted by ρi (G).

Corollary 9.7.
χcent
p (G) ≤ 2 maxindeg(ρS(p) (G)) + 1 ≤ fS(p) (∇g(p) (G))
for S and f as above, and an appropriate function g.

Conclusion
χtw  χtd  ∇


χcent  maxindeg(ρ )

10 Algorithmic aspects
Theorem 10.1. Let p ∈ N. There exists an FPL algorithm which given a graph G computes:
(1) canonical resolution of G up to the p-th augmentation:

~ =G
G ~1 ⊆ ... ⊆ G
~p

(∇2p+1 −1 (G) is a parameter),


(2) p-centered coloring of G (∇g(p) (G) is a parameter, with g as in the previous section),
(3) p-tree-depth coloring of G (∇h1 (p) (G) is a parameter, for some function h1 independent of G).
(4) p-tree-width coloring of G (∇h2 (p) (G) is a parameter, for some function h2 independent of G).

Proof. We assume that the representation of G is by adjacency lists, i.e. G is given as an array mapping
vertices to lists of their neighbors.
(1) Obviously, mad(G) = 2∇0 (G) ≤ 2∇2p+1 −1 (G), and the last value is a parameter. The graph G is
bmad(G)c-degenerate (see Section 1.2), so by Theorem 1.26 there exists an orientation G ~ of G with
~
maxindeg(G) ≤ mad(G). This orientation may be found by the method presented in the proof of
Theorem 1.26. We show that this method may implemented in time O(mad(G)|G|). First, we compute
the degree of every vertex of G and store the degrees in an array D mapping vertices to their degrees.
This may be done in time O(|G| + kGk) = O(mad(G)|G|). We maintain a list L of vertices with degree
≤ mad(G). The main algorithm works as follows.

1. Remove a vertex v from L.

41
2. Decrease the degrees of neighbours of v, adding them to L if their degree drops to ≤ mad(G),
unless they were in L before.
3. Inductively orient G − {v}.
4. Orient all edges from neighbours of v in G − {v} to v.

The cumulative time spent on step 2 is O(kGk) = O(mad(G)|G|). Note that there is no need to
update the adjacency lists of the neighbours of v in step 3 (the adjacency lists in recursive calls will
contain additional vertices, which we may simply ignore). Therefore, the whole algorithm works in
time O(mad(G)|G|).
Thus G may be oriented to G ~ =G ~ 1 with low maxindeg. Note that a directed graph may be represented
by an array of adjacency lists, each of length ≤ maxindeg – simply store in an adjacency list for a
vertex v only those verties w for which there is an edge w → v. This enables, for a given vertex v, to
list in time O(maxindeg) all vertices w such that w → v.
Assuming maxindeg(G ~ i ) ≤ fi (∇2i+1 −1 (G)), it now suffices to show how to compute from G ~ i a graph
~ ~ ~
Gi+1 such that maxindeg(Gi+1 ) ≤ Ri+1 (maxindeg(Gi ), ∇2i+2 −1 (G)), in time linear in |G|, where the
functions fi and Ri do not depend on G. Let Di = maxindeg(G ~ i ). We form two graphs.

1. The graph A~ formed from G~ i by adding all transitive edges (see the definition of augmentation).
This graph may be computed in O(Di2 |G|) (for each vertex w consider every path of length two
ending in w). Note that the in-degree of each vertex may grow by at most Di2 .
2. The undirected graph B formed from G ~ i by adding fraternal edges and dropping the orientation.
By Lemma 9.2 we have
mad(B) = 2∇0 (G) ≤ f (Di , ∇1/2 (Gi ))
for some f not depending on G. Let B 0 be B with only the fraternal edges. Then mad(B 0 ) ≤
~ 0 . Adding to B
mad(B) is bounded, so we may orient B 0 in linear time, obtaining B ~ 0 the directed
~ i we obtain a graph B,
edges from G ~ whose maximum in-degree is still bounded by a function
of maxindeg(Gi ) and ∇2i+2 −1 (G).

Now we join the two graphs A~ and B


~ into one directed graph G
~ i+1 . This graph still has maxindeg
bounded by a function of maxindeg(Gi ) and ∇2i+2 −1 (G).

(2) Using (1) we find the S(p)-th augmentation, where S is as in Corollary 9.6. We know that maxindeg(G~ S(p) ) ≤
~
f (∇g(p) (G)) for some function f not depending on G. Let D = f (∇g(p) (G)). This implies that GS(p) is
2D-degenerate, so it may be colored with 2D + 1 colors in linear time (see the proof of Corollary 9.6).
The proof of Corollary 9.6 then implies that this coloring is a p-centered coloring.

(3) Follows from (2) and the fact that every (p + 1)-centered coloring is also a p-tree-depth coloring (see
Theorem 8.14).
(4) Follows from (3) and the fact that every p-tree-depth coloring is a p-tree-width coloring (see Theo-
rem 8.14).

Definition 10.2. We say that C has effectively bounded expansion if

∀p ∇p (C) ≤ fC (p)

for a computable function fC .


Theorem 10.3. Let C be a class with effectively bounded expansion. Then the following problem is FPL.

42
Input: Graph G ∈ C and a formula ϕ (a parameter) of the form:

ϕ ≡ ∃X.(|X| ≤ p) ∨ (G[X] |= ψ)

where p ∈ N and ψ is an MSO formula.

Output: G |= ϕ
Proof. The algorithm is as follows.
1. Find a ≤ p-tree-depth coloring c : VG → C of G, where

|C| ≤ χtd
p (G) ≤ h(fC (g(p)))

C
we denote G[D] = G[c−1 (D)]. We have

for some functions h, g not depending on G. For D ∈ p
td(G[D]) ≤ p.
2. Repeat the following for each D ∈ Cp .


• Run DFS on G[D].


• This gives a spanning tree of G[D] of depth ≤ 2p (the tree-depth of a path of length m is exactly
dlog2 me, so if G[D] contains a path of length > 2p , then td(G[D]) > p).
• This gives a tree decomposition of G[D] of width ≤ 2p + 1.
• We apply Courcelle’s theorem to check G[D] |= ϕ in linear time.
3. If for some D ∈ Cp we obtain G[D] |= ϕ, then output YES, otherwise output NO.


If the algorithm outputs YES, then G[D] |= ϕ for some D ∈ Cp . Hence G |= ϕ. Conversely, if G |= ϕ then


there exists a subset of vertices X such that |X| ≤ p and G[X] |= ψ. The set X uses at most p colors, so
G[X] ⊆ G[D] for some D ∈ Cp . Thus G[D] |= ϕ. This shows that the algorithm is correct.
Now we analyze the running time. The first step takes f1 (p)|G| time, for some function f1 not depending
on G. Each of the |C|

p iterations in the second step takes time f2 (ϕ)|G|, where f2 does not depend on G.
Because |C| is bounded by a function of p, we conclude that the algorithm is FPL.

43
11 FO formulas
Definition 11.1. A signature Σ over a formal language is a list

Σ = (R1 , R2 , ..., Rk , f1 , f2 , ..., fl , ar)

where Ri are relation symbols or predicates, fj are function symbols and ar is the arity function defined
ar
Σ3σ −→ arity(σ) ∈ N

Example 11.2. A signature for a class of oriented, coloured graphs is

Σ = (E, C1 , C2 , ..., Cl )

where E is a binary relation defining edges and Ci are unary relations defining colourings ie. Ci (v) means
that edge v has colour i.
For each relation symbol Ri ∈ Σ there exists a unique arity relation RiA , where A is a structure over Σ.
For each function symbol fj ∈ Σ there exists a unique arity function fiA

fiA : An −→ A

Example 11.3. A structure over


Σ = (E, C1 , ..., Ck )
is an oriented graph (loopless) where each edge can have multiple colours.
FO formulas (over a signature Σ) can use symbols of Σ and ∨, ∧, ¬, ∀, ∃, = as in

ϕ(v) = ∀w E(v, w) ∨ E(w, v)

. Let A be a structure over Σ, then we denote

ϕ(x) − formula over Σ with free variables x = (x1 , ..., xk )


k
ϕ(A ) = {v ∈ Ak A |= ϕ[x → v]}

If ϕ is a sentence, then k = 0 and ϕ(A0 ) ∈ {∅, {}}, where /epsilon is an empty tuple.
Theorem 11.4. (Dvořàk, Kràl, T homas − 2010, Grohe, Krentzer − 2011)
Let C be a class of graphs with effectively bounded expansion. Then the following problem is FPL: (|G| · f (ϕ),
f computable)
Input: Sentence ϕ ∈ FO (parameter) and a graph G ∈ C
Output: Whether G |= ϕ
Example 11.5. Independent set of size k
^
∃v1 ∃v2 , ... , ∃vk ¬ E(vi , vj ) ∧ vi = vj
1≤i, j≤k
i6=j

Example 11.6. Dominating set of size k


_
∃v1 ∃v2 , ... , ∃vk ∀w E(vi , w)
1≤i≤k

44
12 Colored pointer structures
Fix d ∈ N. We define a Colored d-pointer structure over a signature Σ as

(C1 , ..., Ck , f1 , ..., fd )

where Ci are unary relations with any k and fj are the pointes with fixed d.
i
To simplify notation we will use v −→ w istead of fi (v) = w.
Example 12.1. 2-pointer structure

2
1 1

2 1
2

For a pointer structure H, by Graph(H) we denote the underlying undirected graph, defined by:
d
[
Graph(H) = (supp H, graph(f ) − diagonal )
i=1

Now we are going to reverse the arrows with regard to the last lecture.


Notation. For an oriented graph G we define

→ def →

Gi = Rev (→

ϕi (Rev ( G )))
−−−→ −

where Rev denotes reversing of the arrows. We obtain Gi+1 from Gi as follows:

Gi+1 Gi+1
or

Gi
Gi

Let D be a class of oriented graphs. We say that D has efectivelly bounded resolution if there is a

− −→
computable sequence d1 , d2 , ... such that for all n and for all graphs G ∈ D deg Gn ≤ dn .
Fact 12.2. From previous lectures it follows that the class of unoriented graphs C has a bounded expansion
iff the is a class of oriented graphs D with bounded resolution such that C = Undirect(D).
Definition 12.3. Assume that D has bounded resolution. We define a family of pointer structures.
−→ →

Dn = {H : H is a dn -pointer structure such that Graph(H) ∈ Gn for some G ∈ D}

45
(Proof based on Kazana, Segoufin, 2013)
Theorem 12.4. Let D be a class of oriented graphs with bounded resolution. Then the following problem is
FPL:
Input: Formula ϕ and an indicator structure H

Output: Whether H |= ϕ
Main step is the following proposition:
Proposition 12.5. Let p ∈ N and ψ(x, y) be a dp -pointer quantifierless formula. Then there exists q ∈ N and
a dq -pointer quantifierless formula ϕ(x) such that for any structure H ∈ Dp there is a dq -pointer structure
H 0 ⊇ H such that
(∃y ψ)(H) = ϕ(H 0 )
Moreover q and ϕ are computable from p and ψ and H 0 is computable from H in time O(|H|).

Example 12.6. Lets consider the following formula:

ϕ(x1 , x2 ) = d(x1 , x2 ) ≤ 2 ⇔
E(x1 , x2 ) ∨ E(x2 , x1 ) ∨ (∃z E(z, x1 ) ∧ E(z, x2 )) ∨ (∃z E(z, x1 ) ∧ E(x2 , z)) ∨ (∃z E(x1 , z) ∧ E(x2 , z))

We now act as follows

Step 1: d1 -pointer formula

z
i j
d1
∃z x1 x2 ∨ ...
i
_ _
(x1 = x2 ) ∨ x1 −→ x2 ∨
i=1 i,j

Step 2: Simplification

z
i j

∃z x1 x2 7−→ x = f (f (x ))
1 i j 2
z
i j

∃z x1 x2 7−→ f (x ) = f (x )
i 1 j 2

we are left with the case of “forks”.

Step 3: Reduction of the nesting depth to 1.


z
z
i j
x1 x2 in H 7−→ x τ
x
1
1
k in H2
2
x1 = fk (x2 ) ∧ τ (x2 ). τ means having colour τ in the augumen-
tation. τ (v) ⇔ (fi (fj (v)) = fk (v)).

46
Step 4: Elimination of “forks”:
z
z
i j
or τ
∃z x1 x2 7−→ x1
k
x2

x2 = fk (x1 ) ∧ τ (x1 ), τ (x1 ) ⇔ ∃zfi (z) = x1 fj (z) = fk (fi (z))

We obtained a formula ψ which is quantifierless and has a nesting depth of 1 (later referred to as a simple
formula). This means that for any structure H in linear time we can compute a structure H 0 such that
ϕ(H) = ψ(H 0 ).
We say that a formula φ is compatible with signature H if the signature of φ is contained in H.
Fix a class D of directed graphs, a sequence dn and families D1 , D2 , . . . of pointer structures, where Dn
is a familiy of dn -pointer structures H such that Graph(H) = G~ n for some G ∈ D.

Definition 12.7. Let φ be a dp -pointer structure and ψ a dq -pointer structure, where p ≤ q. We say that
φ and ψ are equivalent modulo augumentations if for every H ∈ Dp that is compatible with φ there exists
H 0 ∈ Dq computable in O(f (φ)|H|) time, such that

• φ(H) = ψ(H 0 )
• H 0 is a q − p-augumentation of H.

Proposition 12.8. Let p ∈ N and ψ(x̄, y) be a simple dp -pointer formula. Then, there exists q ∈ N and
φ(x̄) – a simple dq -pointer formula, such that φ and ∃y ψ are equivalent modulo augumentations.
Moreover, q and φ are computable from p and ψ.
From the above preposition, we will derive:
Theorem 12.9. Let D be a class with bounded augumentation and let φ(x̄) be a d1 -pointer formula. Then
we can compute q ∈ N and a q-pointer simple formula ψ(x̄), such that ψ and φ are equivalent modulo
augumentations.
Before we give the proof of the Theorem, we need the following fact:
Lemma 12.10. Let φ be an arbitrary dp -pointer formula. Then, there exists a formula ψ such that
• ψ has the same quantifier depth as φ.
• ψ has no nested functions.
• ψ is a dq -pointer formula for q =??.
• φ and ψ are equivalent modulo augumentations.
Proof. TODO
We can now prove the Theorem.
Proof. The proof proceeds on the induction on the construction of φ.

• If φ has no quantifiers then we can simply use Lemma 12.10.


• If φ = φ1 ∨ φ2 then we apply the induction hyphothesis to φ1 and φ2 . We set ψ := ψ1 ∨ ψ2 . This is
equialent to φ, since φ(H) = φ(H1 ) ∪ φ(H2 ). There exists H 0 which can be colored so that φ1 (H) =
ψ(HC0 ) (and similarly for φ2 ). Then φ(H) = ψ(HC∪D
0
).
• If φ = ¬φ0 , we do a similar (and a bit simpler) thing.

47
• If φ = ∃y φ0 (. . . , y), we apply the induction hyphothesis to φ0 and then use Proposition 12.8.

Corollary 12.11. Let φ be a d1 -pointer structure. For a given d1 -pointer structure H, after preprocessing
in O(|H|) time we can answer to questions ”Does x̄ ∈ φ(H)?” in constant time.
Proof. We compute ψ and graph H 0 (in O(|H|)). It now suffices to check if x̄ ∈ ψ(H 0 ), since the size of ψ is
constant.

Lemma 12.12. Let H ∈ Dp and u ∈ H. Let q = p + dp and let H 0 be a dp -augumentation of H.


Then H 0 contains a linear order on the the successors of u.
Proof. After one augumentation, we get a directed clique on the successors of u. It is a well-known fact
that a directed clique contains a Hamiltonian cycle. Thus, after dlog2 dp e more augumentations, we obtain
a linear order on the successors.

48
13 Independence
Definition 13.1. Set A ⊆ VG is d-independent if
∀v,w∈A, v6=w d(v, w) > d.
Definition 13.2. Set A ⊆ VG is d-scattered if
∀v,w∈A, v6=w Nd (v) ∩ Nd (w) = ∅.
Fact 13.3. A is d-scattered ⇐⇒ A is 2d-independent.
Let C be a class of graphs and let s : N → N be a function.
Definition 13.4 (quasi-wide class). Class C is quasi-wide with margin s if for all r, m ≥ 0 there exists an
N > 0 such that:
( (
G∈C ∃S⊆VG |S| ≤ s(r)
=⇒
|G| ≥ N G−S contains an r-scattered set of size at least m

Examples:
• K1,k graphs (stars) are quasi-wide with margin s(r) = 1 (N (r, m) = m + 1).
• Graphs with degree at most d are quasi-wide with margin s(r) = 0.

• Trees are quasi-wide with margin s(r) = 1.


• Graphs excluding H as a minor are quasi-wide with margin s(r) = |H|.

Definition 13.5 (uniformly quasi-wide class). Class C is uniformly quasi-wide with margin s if for all
r, m ≥ 0 there exists an N = NC (r, m) > 0 such that:

G ∈ C
 (
∃S⊆VG |S| ≤ s(r)
w ⊆ VG =⇒
 w contains an r-scattered subset of G − S of size at least m
|w| ≥ N

Theorem 13.6. Let C be a class of graphs that is closed under taking induced subgraphs. The following
conditions are equivalent:
1. C is quasi-wide,
2. C is uniformly quasi-wide,
3. C is nowhere-dense.
We will only proove the implication 2 ⇒ 3. The implication follows easily from the following:
Lemma 13.7. Let C be a uniformly quasi-wide class and let h > NC (r + 1, s(r + 1) + 1), then Kh ∈
/ G∇r.
Proof. We prove by contraposition. Assume that Kh ∈ G∇r where G ∈ C.
Let w = {u1 , u2 , . . . , uh } where ui are vertices of G such that ui ∈ Bi ⊆ Nr (ui ), where Bi are the sets of
vertices we contract to obtain Kh .
By the definition of quasi-wideness, there exists a set S ⊆ VG with |S| ≤ s(r + 1) such that w a subset A,
where A is an (r + 1)-scattered set in G − S and |A| ≥ s(r + 1) + 2.
The sets {Bi } are disjoint, so there exist 1 ≤ i < j ≤ h such that ui , uj ∈ A and S ∩ Bi = ∅ = S ∩ Bj . There
is an edge between some vertex in Bi and some vertex in Bj so Nr+1 (ui ) ∩ Nr+1 (uj ) 6= ∅, which contradicts
with the assumption that A is (r + 1)-scattered in G − S.

49
We will now focus on an FPT algorithm for the problem of finding a dominating set on nowhere dense
classes of graphs.
Definition 13.8. We say that a set X ⊆ VG d-dominates a set W ⊆ VG if

∀w∈W ∃x∈X d(w, x) ≤ d.

Theorem 13.9. Let C be a nowhere-dense class of graphs. Then the following problem:
Input: Graph G ∈ C, a set W ⊆ VG
Parameters: k, d
Output: A set X which d-dominates W such that |X| ≤ k
can be solved in time fC (k, d) · |G|3 (it is FPT).
To prove this theorem we will use the following lemmas:
Lemma 13.10. Given a graph G ∈ C, a set W ⊆ VG and parameters r, m we can compute in time O(|G|2 )
the sets:
S ⊆ VG , such that |S| ≤ fC (r) − 2 where fC (r) = min{k : Kk ∈
/ C∇r} and A ⊆ W , |A| ≥ m, such that A is
r-scattered in G − S (that is - we can compute the sets form the definition of uniform quasi-wideness).
Lemma 13.11. The following problem is FPT for all graphs:
Input: Graph G ∈ C, a set W ⊆ VG of size w
Parameters: k, d, w
Output: A set X of size k which d-dominates W .
Proof. We give the algorithm:
For every parition of W into k sets {W1 , W2 , . . . , Wk } we check (in O(|G|2 ) time) whether w∈Wi Nd (w) 6= ∅
T
for every i (that is, if for each set Wi there is a vertex that d-dominates Wi ).
Lemma 13.12. The following problem can be solved in f (k, d) · |G|2 time:
Input: Graph G ∈ C, a set W ⊆ VG such that |W | > N (d, (k + 2)(d + 1)s ) where s = fC (d) − 2
Output: A vertex w ∈ W such that for any set X ⊆ VG with |X| ≤ k, X d-dominates W iff X
d-dominates W − {w}.
Proof. By lemma 13.10 we can compute sets S and A such that |A| = m ≥ (k + 2)(d + 1)s , |S| ≤ s and A is
d-scattered in G − S.
For each a ∈ A, we compute the distance vector va = (dist|d+1 (a, s))s∈S . There are at most (d + 1)s distinct
distance vectors.
Since |A| ≥ (k + 2)(d + 1)s , there are at least k + 2 distinct vertices a1 , . . . , ak+2 ∈ A such that vai = vaj for
1 ≤ i ≤ j ≤ k + 2. We will show that w = a1 satisfies the lemma.
The implication from left to right is obvious. Now suppose X d-dominates W − {a1 }. The sets NdG−S (ai )
for 1 < i ≤ k + 2 are disjoint, and since there are k + 1 of them, then at least one (NdG−S (aj )) does not
contain any element of X. But since X dominates W − {a1 } there is a path of length at most d from some
x ∈ X to aj , which must go through an element of S.
But va1 = vaj , so there is also a path of length at most d from x to a1 , thus X d-dominates W .
We can now give the algorithm which prooves the Theorem 13.9:
Proof. Using lemma 13.12 we iteratively remove elements from set W , as long as |W | > N (d, (k + 2)(d + 1)s ).
Once |W | ≤ N we use lemma 13.11 to find the d-dominating set.

50
Let us recall the following
Theorem 13.13 (Ramsey). There exists a function R : N2 → N such that for all G sattisfying |G| ≥ R(p, q)
graph G either contains a p-clique or q-independent set.
Now we are going to prove the implication (1) ⇒ (2) in Theorem 13.6.

Lemma 13.14. Let G be a graph and A be its 2r-independent subset satisfying |A| ≥ R(c, n). Then either
Kc ∈ G∇r or A contains a (2r + 1)–independent subset of size n.

Proof. Let us merge each r-neighbourhood of some point in A. This transforms graph G into some graph
G0 ∈ G∇r and a subset A into some A0 ⊆ G0 . Then either
• A0 contains some big clique hence Kc ∈ G∇r or
• A0 contains some big 1-independent set and then A contains a big (2r + 1)–independent set.

Lemma 13.15. There exists a function θ : N4 → N such that if G is a graph and A its (2r + 1)–independents
subset satisfying |A| ≥ θ(m, a, b, s) then at least one of the following satisfies:
• Ka ∈ G∇r∇2,
• Ks+1,b ∈ G∇r,

• There exists a subgraph S ⊆ G such that |S| ≤ s and A\S contains a (2r + 2)-independent subset of
size at least m.2
Proof. Let us merge each r-neighbourhood of some point in A. Let us define G0 like in Lemma 13.14. Then
at least one of the following conditions is satisfied:

• G0 contains 1-partition of Ka ,
• G0 contains Ks+1,b ,
• it is possible to remove at most s vertex from A such that new graph (denoted by A0 ) contain 2-
nowhere-dense subset of size at least m.

2 in this statement we treat A\S as a subset of G\S

51
Figure 12: Example n = 3, A = 6

Lemma 13.16. Let G = (A ∪ B, E) be a bipartite graph, |A| ≥ R(p, q, n). Then at least one of the following
conditions is satisfied:
(i) A contains 2-independent set of size p,

(ii) A contains a main vertexes of 1-partition of clique Kq


(iii) B contains a vertex with degree at least n.

Proof. Let us suppose that deg v ≤ n for all v ∈ B. Let us color A2 using ≤ n2 colors (plus one extra color
 

”transparent”) such that each N (v) does not contain two edges with the same color.
By Ramsey’s Theorem we have a monochromatic Kq or a transparent Kp . If a clique is not transparent
we have 1-partition of Kq .
Otherwise we have a transparent Kp . But no vertex in B coincide with two vertexes in Kp . Hence Kp is
a 2-independent set.
Lemma 13.17. Let G = (A ∪ B, E) be a bipartite graph, |A| ≥ θ(m, a, b, s) . Then at least one of the
following conditions is satisfied:
(i) There exists A0 ⊆ A and B 0 ⊆ B, |A| = m, |B| = s such that each vertex from B − B 0 has at most one
neighbour in A0 (Figure 13),
(ii) A contains a main vertexes of 1-partition of Ka ,

(iii) B contains s + 1 vertexes of Ks+1,b .

Proof. We prove it by induction with respect to s. For s = 0 it is just the Lemma 13.16.
Inductive step s → s + 1. We apply the same lemma for n = θ(p, q, n, s). Then (i) and (ii) in Lemma 13.16
and this one implies respectively. The only case left is that B contains a vertex (denoted by v) with degree
at least n.
Let A0 = N (v) and B0 = N (A0 )\{v}. Then ,by induction applied to the graph (A0 ∪ B0 , E ∩ A0 × B0 ),
one obtain sets A00 and B00 . It is easy to verify that sets A0 = A00 and B 0 := B00 ∪ {v} satisfies (i).

52
Figure 13: Case (i)

Corollary 13.18. Let G be a graph. A ⊆ G be a independent subgraph with at least θ(m, a, b, s) vertexes.
Then at least one of the following conditions is satisfied:
• G contain a subset ∆ of size at most s, disjoint with A, such that A as a subset of G\∆ has a
2-independent set of size n,
• G contains a 1-partition of Ka ,

• G contains Ks+1,b .

53

You might also like