introduction to graph theory - ucsd mathematicsjverstra/342.pdf · 1 introduction throughout these...

70

Upload: duongdiep

Post on 06-Jun-2018

251 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Introduction to Graph TheoryDRAFT COPY

J. A. Verstraete

[email protected]

Page 2: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

1 Introduction

Throughout these notes, a graph G is a pair (V;E) where V is a set and E is a set of

unordered pairs of elements of V . The elements of V are called vertices and the elements

of E are called edges. If G = (V;E) is a graph, then we typically denoted by V (G) = V

its vertex set and E(G) = E its edge set. In almost all situations, V (G) is a �nite set,

and we will make it clear when V (G) is allowed to be in�nite. If u; v 2 V (G), then u and

v are adjacent if fu; vg 2 E(G), and the edge fu; vg is said to be incident with vertices u

and v. We refer to u and v as the endpoints of the edge fu; vg. It is convenient to draw

V (G) as a set of points in the plane and each edge as a curve between its endpoints in

the plane, as in Figure 1(a).

A multigraph is a pair (V;E) where V is a set and E is a multiset of unordered pairs of

elements of V { we allow E to contain repetitions of the same unordered pair. Occasionally

we allow E(G) to consist of pairs fv; vg which are referred to as loops, in which case G

is referred to as a pseudograph { see Figure 1(b). A directed graph { digraph for short

{ is a pair (V;E) where V is a set and E is a set of ordered pairs of G. The elements of

E are called arcs, and we draw them in the plane as curves with an arrow indicating the

direction of the arc { see Figure 1(c). If G = (V;E) is a graph, then an orientation of G

is a digraph ~G = (V; ~E) where one of (u; v), (v; u) is in ~E for each fu; vg 2 E(G). Figure

1(c) is an orientation of Figure 1(a).

(a) (b) (c)

Figure 1 : Graphs, multigraphs, pseudographs, digraphs.

Page 3: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

1.1 Degrees and Neighbourhoods

The degree of a vertex v in a graph G is the number of edges incident with v, and is

denoted dG(v), or just d(v) for short. An important fact involving the degrees of a graph

G, which we will use on numerous occasions, is

Xv2V (G)

dG(v) = 2jE(G)j:

This is known as the handshaking lemma { when we add up the degrees of vertices every

edge is counted twice, once for each of its endpoints. An important consequence of the

handshaking lemma is that the number of vertices of odd degree in any graph must be

even. The neighbourhood of v in G is denoted �G(v), and is the set of vertices of G which

are adjacent to v. We write �(G) and �(G) for the smallest and largest degree of a vertex

in G, respectively. For example, if G is the graph in Figure 1(a), then �(G) = 1 and

�(G) = 3. The neighbourhood of a set X � V (G), which we denote by �(X), is the set

of vertices of V (G)nX with at least one neighbour in X. For sets X; Y � V (G), we write

e(X; Y ) for the set of edges of G with one endpoint in X and the other endpoint in Y .

1.2 Basic classes of graphs

Let Kn denote the complete graph on n vertices: this is the graph consisting of all�n2

�possible edges on n vertices. A bipartite graph is a graph G such that V (G) can be

partitioned into two sets A and B such that each edge of G has one endpoint in A and

one endpoint in B. The sets A and B are called the parts of G. Let Ks;t denote the

complete bipartite graph with s vertices in one part and t vertices in the other: this

graph consists of all st possible edges between a set of size s and a set of size t. We refer

to K1;t as a star. A planar graph is a graph which can be drawn in the plane in such a way

that no two edges cross. The n-dimensional cube, or n-cube, is the graph whose vertex

set is the set of binary strings of length n, and whose edge set consists of pairs of strings

di�ering in one position. A tree is a connected graph without cycles, and a forest is a

vertex-disjoint union of trees and isolated vertices. The vertices of degree one in a tree

or forest are often called leaves. A cycle is a connected graph all of whose vertices have

degree two, and a path is a tree with exactly two vertices of degree one. Those vertices are

sometimes called the endpoints of the paths, and the other vertices of the path are called

internal vertices. Two paths are internally disjoint if they share no internal vertices.

1.3 Subgraphs

If H and G are graphs and V (H) � V (G) and E(H) � E(G), then H is called a subgraph

of G. To denote that H is a subgraph of G, we write H � G. If in addition V (H) = V (G)

thenH is called a spanning subgraph of G. The subgraph of G induced by a setX � V (G)

Page 4: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

is the subgraph of G whose vertex set is X and whose edge set consists of all edges of G

with both endpoints in X. An induced subgraph of G is a subgraph of the form G[X] for

some set X � V (G). If F � E(G) is a set of edges of G, then the subgraph of G spanned

by F , denoted G hF i, is the subgraph (X;F ) where X is the set of vertices covered by

the edges of F . For example, the graph K1;3 is a subgraph, but not an induced subgraph,

of the graph in Figure 1(a).

1.4 Deletions and Contractions

If G = (V;E) is a graph and X � V and L � E, then G � X denotes G[V nX] and

G�L denote G hEnLi. In the case that X = fxg, we write G� x instead of G�X. For

example, if G is the graph in Figure 1(a) and x is the vertex of degree three in Figure

1(a), and y is the vertex of degree one, then G � x consists of a disjoint union of K1

and K2, and G � y is K3. If G = (V;E) is a graph and F is a set of unordered pairs

in V , then G + F denotes the graph (V;E [ F ). If H = (W;F ) is a graph, then G [H

is the graph (V [W;E [ F ) and G \ H is the graph (V \W;E \ F ). If X is a set of

vertices of G = (V;E), then G=X = (W;F ) denotes the contraction of X in G, de�ned

by W = (V nX)[ fxg and F = G[V nX][ ffv; xg : v 2 �(X)g. In other words, we shrink

X to a single vertex x, and join x to all neighbours of X. For example, Kn=e = Kn�1 for

any edge e 2 Kn and any n � 2. Another example is given below.

XY

G=X

G=Y

Figure 2 : Contraction

A graph H is a minor of a graph G if H can be obtained from G by a sequence of

contractions and deletions of edges of G. This is usually written H � G. A subdivision

of a graph H is a graph consisting of the union of internally disjoint paths Pe : e 2 E(H)

where Pe has the same endpoints as e. In other words, we subdivide each edge of G by

replacing it with a path.

1.5 Walks and Paths

A walk in a graph G = (V;E) is an alternating sequence of vertices and edges, whose

�rst and last elements are vertices, and such that each edge joins the vertices immediately

Page 5: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

preceding it and succeeding it in the sequence. For example,

afa; dgdfd; egefe; agafa; dgcis a walk in the graph in Figure 3. If the vertices of a walk are all distinct, then it is

referred to as a path, and the length of the path is the number of edges in the path. The

vertices of degree one in a path are called endvertices and the remaining vertices are called

internal vertices. For example, the walk given above is not a path, but afa; dgdfd; ege isa path. For convenience, we often omit the edges and list the vertices in order along the

path, such as ade instead of afa; dgdfd; ege. If the endpoints of a walk are u and v, then

we say the walk is a uv-walk. If the �rst and last vertex of the walk are the same, then

the walk is referred to as a closed walk. A cycle is a closed walk with the same number

of edges as vertices. For example, in Figure 3, the di�erent cycles are adea, abea, bcdeb,

adeba, adcba, aedcba, and aebcda.

a

c

b

d

e

Figure 3 : Walks, paths and cycles.

1.6 Connected Graphs

Vertices u and v in a graph G are joined (or connected) by a path if there is a uv-path

in G. A graph G 6= K1 is connected if and only if every pair of vertices of G is joined by

a path, and G is disconnected otherwise. It is convenient to de�ne the complete graph

K1 to be disconnected. A component of a graph G = (V;E) is a maximal connected

subgraph of G or an isolated vertex of G (that is, a vertex of degree zero, which we refer

to as a trivial component). Here the word `maximal' means maximal with respect to the

number of edges: in other words, if we add any other edge of E(G) to a component of G,

we obtain a disconnected graph. The graphs in Figure 1(a) and Figure 3 are connected,

whereas the graph below has three (nontrivial) components.

Page 6: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Figure 4 : Components.

The following elementary proposition gives necessary and su�cient conditions for a graph

to be connected:

Proposition 1.6.1 Each of the following is equivalent to a graph G 6= K1 being con-

nected:

1. There is only one component in G.

2. Every pair of vertices of G is joined by a walk.

3. Every pair of vertices of G is joined by a path.

4. For some vertex u 2 V (G), there is a uv-walk for every v 2 V (G).

5. Every cut of G is non-empty.

1.7 Trees and Bridges

A bridge of G is an edge e 2 E(G) such that G � e has more components than G. For

example, in Figure 1(a), the top edge e is a bridge since G has one component but G� e

has two components. It is easy to spot the bridges of a graph, using the following lemma:

Lemma 1.7.1 An edge e 2 E(G) is a bridge if and only if it is not contained in any cycle

in G.

Consequently in a graph with no bridges, every edge is in a cycle. A tree is a connected

graph with no cycles (graphs with no cycles are often called acyclic). The following

proposition characterizes trees:

Proposition 1.7.2 Each of the following is equivalent to a graph G being a tree:

1. The graph G is connected and every edge of G is a bridge.

2. Every pair of vertices of G is joined by a unique path.

3. The graph G is minimally connected.

4. The graph G is maximally acyclic.

Once more, the words `maximal' and `minimal' are taken to be with respect to the number

of edges in the graph. Thus Proposition 1.7.2.4 says that a graph is a tree if and only if

whenever we add a new edge to the graph we create a cycle. By part 1, if we remove any

edge from a tree, we obtain two components, each of which is a tree. From this, by strong

induction on the number of edges in a tree, one can prove that a tree on n vertices has

n� 1 edges.

Proposition 1.7.3 A tree with n vertices has exactly n� 1 edges.

Page 7: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Let G be a connected graph. While the current graph contains a cycle, pick an edge

of the cycle and remove it. By Lemma 1.7.1, we did not disconnect the graph, so if we

repeat this procedure we eventually obtain a spanning subgraph of G which is acyclic and

connected { a tree.

Proposition 1.7.4 Any connected graph contains a spanning tree.

2 Connectivity and Menger's Theorem

In this section, we will prove Menger's Theorem (Theorem 2.5.2), which states that a graph

is k-connected if and only if each pair of its vertices is joined by k internally disjoint paths.

We also consider the edge-connectivity version of Menger's Theorem (Theorem 2.5.3. To

lead up to Menger's Theorem, we discuss a structural characterization of graphs with no

bridges and graphs with no cut vertices, called ear decomposition.

2.1 Vertex and Edge Cuts

A cut of a connected graph G is a set of vertices or edges whose removal from G gives a

disconnected graph. A cut vertex of a connected graph G is a vertex x such that G � x

is disconnected. A graph G is k-connected if every vertex cut of G has size at least k,

and k-edge-connected if every edge cut of G has size at least k. The connectivity of a

graph G, denoted �(G), is the smallest size of a vertex cut of G. Thus a graph G 6= K1

is k-connected if and only if �(G) � k and disconnected if and only if �(G) = 0. As an

example, notice that �(Kn) = n�1 for all n � 1 { by convention K1 is disconnected. The

edge-connectivity of G, denoted �(G), is the smallest size of an edge cut of G. A vertex

cut of size �(G) or edge cut of size �(G) is called a minimum cut. The following lemma

is intuitively clear, however a little work is required to prove �(G) � �(G), and we leave

the proof as an exercise.

Lemma 2.1.1 For any graph G, �(G) � �(G) � �(G).

The lemma actually follows immediately from Menger's Theorem 2.5.2. It can also be

shown that for any non-negative integers k � l � d there exists a graph with �(G) = k,

�(G) = l and �(G) = d, so the lemma cannot be improved in general. In the next lemma

we make two elementary observations about minimum cuts:

Lemma 2.1.2 Let X be a minimum cut in a connected graph G.

1. If X � E(G), then G�X has exactly two components.

2. If X � V (G), and W is the vertex set of a component of G�X, then �(W ) = X.

Page 8: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

For example, if e is a bridge of G, then Lemma 2.1.2 says that G � e has exactly two

components. Note that if X is a minimum vertex cut in G, then G � X may have any

number of components. Another useful lemma concerns the parity of �(G) relative to the

degrees of vertices in G:

Lemma 2.1.3 If all vertices of a graph G have even degree, then �(G) is even.

Proof. If G is not connected, then �(G) = 0, as required. Suppose G is connected

and let L be a minimum edge cut in G. By Lemma 2.1.2 part 1, G � L has exactly two

components, say G1 and G2. The number of vertices of odd degree in G1 is even, by the

handshaking lemma. On the other hand, this number is congruent modulo two to the

number of vertices of G1 incident with an odd number of edges in L. So the number of

vertices of odd degree in L must also be even, which implies �(G) = jLj is even.

Our �nal observation will be used many times in the material to follow. The proof is left

as an exercise.

Lemma 2.1.4 Let G be a k-connected graph and let A be a set of at least k vertices in

G. Then the graph obtained from G by adding a new vertex adjacent to all vertices in A

is k-connected.

To approach Menger's Theorem 2.5.2, we consider �rst the case of 2-edge-connected graphs

and 2-connected graphs, which admit good characterizations.

2.2 Ear Decomposition I*

In this section we will give method for constructing all 2-connected graphs, called ear-

decomposition. Let G be a graph and P � G a path all of whose internal vertices have

degree two in G. Then P is called an ear of G (see Figure 5).

P

G

Figure 5 : Ear decomposition.

Page 9: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

The main theorem in this section says that a graph is 2-connected if and only if it can be

built from a cycle by adding ears. More precisely, a graph G has an ear decomposition

if there is sequence of subgraphs of G, say G0 � G1 � � � � � Gt such that G0 is a cycle,

Gt = G, and Gi is obtained from Gi+1 by removing the internal vertices of some ear in

Gi+1.

Theorem 2.2.1 (Ear decomposition)

A graph G is 2-connected if and only if it has an ear-decomposition.

Before proceeding to the proof of this theorem, we establish a few structural properties

of 2-connected graphs.

Definition 2.2.2 An equivalence relation on a set S is a set R of ordered pairs of

elements of S with the following properties:

1. (a; a) 2 R

2. if (a; b) 2 R then (b; a) 2 R.

3. if (a; b); (b; c) 2 R then (a; c) 2 R.

The properties 1, 2 and 3 of an equivalence relation are called re exivity, symmetry and

transitivity, respectively. If (a; b) 2 R, we say that a and b are equivalent under R. For

example, if G = (V;E) is a graph and

R = f(u; v) 2 V � V : u and v are joined by a pathg;

then R is an equivalence relation, and any two vertices in a component of G are equivalent

under R. To prove this, the main thing to check is transitivity: that if u and v are joined

by a path and v and w are joined by a path then also u and w are joined by a path. It

is convenient, rather than writing (u; v) 2 R, to write u � v. For our purposes, we de�ne

an equivalence relation � on the edge set of a graph G = (V;E) as follows: for e; f 2 E,

e � f if and only if e = f or some cycle in G contains both e and f . The following lemma

says that � is indeed an equivalence relation:

Lemma 2.2.3 For any graph G, the relation � is an equivalence relation on E(G).

Proof. By de�nition we know e � e for any edge e 2 E(G), and e � f is clearly the

same as f � e. It remains to verify transitivity: we have to prove that if some cycle

C � G contains e and f , and some cycle D � G contains f and g, then some cycle in G

contains both e and g. Suppose g = fu; vg and e = fs; tg. If e; g 2 E(C) or e; g 2 E(D),

then C or D is a cycle containing e and g, as required. Suppose this is not the case. Then

we can �nd vertex-disjoint paths P1; P2 � D from u to V (C) and v to V (C), such that P1

and P2 are internally disjoint from C (see Figure 6). Similarly, we can �nd vertex-disjoint

Page 10: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

paths Q1; Q2 � C from s to V (D) and t to V (D) such that Q1; Q2 are internally disjoint

from D. Now

P1 [ P2 [Q1 [Q2 + e+ g

is a cycle containing e and g, as required.

e

gC

D

P1

P2

Q1

Q2

Figure 6 : Transitivity of �

Theorem 2.2.4

For a graph G with at least three vertices and no isolated vertices, the following three

statements are equivalent:

1. G is 2-connected

2. every two edges of E(G) are in a common cycle

3. any two vertices of V (G) are in a common cycle.

Proof. We show �rst that 1 implies 2. Let e0 = fx0; x1g and ek = fxk; xk+1g be edges

of G. We have to show e0 � ek. Since G is connected, there is a path P � G of the form

x0e0x1e1x2e2 : : : xkekxk+1 Since G � xi is connected, there is a path in G � xi from xi�1to xi+1, which means that ei�1 and ei are contained in a common cycle in G, for all i. In

other words, ei�1 � ei for all i. But by transitivity, this means e0 � ek, as required. So

1 implies 2. To prove that 2 implies 3, let u; v 2 V (G) and select an edge e containing u

and an edge f 6= e containing v (this edge exists because G has at least three vertices).

Then e � f by assumption, so some cycle in G contains both u and v, as required. So 2

implies 3. Finally, to show 3 implies 1, G � x is connected for any x 2 V (G), otherwise

we get the contradiction that two vertices in di�erent components of G� x are not on a

cycle in G.

Proof of Theorem 2.2.1 Suppose G is 2-connected, and let H be a maximal sub-

graph of G with an ear decomposition. Since G contains a cycle, and a cycle exists, H

Page 11: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

certainly exists. Suppose, for a contradiction, that H 6= G. Then there exists an edge

e 2 E(G)nE(H). If e joins two vertices of H, then H + e has an ear decomposition,

contradicting the maximality of H. Therefore e has an endpoint not in H. Let f be

any edge of H. Then e and f are contained in a common cycle, C, by Theorem 2.2.4

part 2. In particular, C contains at least two vertices of H, so there is a path P � C,

internally disjoint from H, and with both endpoints in H. But then P is an ear of H [P ,contradicting the maximality of H. We conclude that H = G. The proof of the converse

statement is left as an exercise.

The following theorem is an immediate corollary of the ear decomposition theorem. For

this theorem, we require the notion of contraction of a set of vertices in a graph.

Theorem 2.2.5

Let G be a 2-connected multigraph with at least four vertices. Then, for any edge e 2E(G), at least one of G� e or G=e is 2-connected.

Proof. If e is an ear of G, then G� e is 2-connected. One shows that if e is not an ear

of G, then G=e is 2-connected, by considering the ear decomposition of G. The details

are left as an exercise.

The theorem on ear decomposition is very useful for proving statements about 2-connected

graphs by induction. For example, it is possible to show that a 2-connected graph with

m edges and n vertices has at least�m�n+2

2

�di�erent cycles.

2.3 Ear Decomposition II

Here we prove an ear-decomposition theorem for 2-edge-connected graphs. It cannot

be the same as the 2-connected case, since the graph consisting of the union of two

cycles sharing exactly one vertex does not have an ear decomposition in the sense of the

last section. The new ear decomposition is described as follows: a graph G has an ear

decomposition if there is a sequence of subgraphs of G, G0 � G1 � � � � � Gt such that

G0 is a cycle, Gt = G, and Gi+1 = Gi [ P for a path P internally disjoint from Gi or

Gi+1 = Gi [ C for a cycle C with exactly one vertex in common with Gi.

C

G

Page 12: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Figure 7 : New ear decomposition.

The proof of the ear-decomposition theorem is similar to that of Theorem 2.2.1:

Theorem 2.3.1

A graph is 2-edge-connected if and only if it has an ear decomposition.

Proof. Suppose G has an ear decomposition. Let e be an edge of G. It is su�cient to

prove that e is contained in a cycle { then e cannot be a bridge of G by Lemma 1.7.1. If

e is not in a cycle, then e is a bridge of G. Let P be an ear of G. Since e is a bridge of

G, P can never contain e, since there is a cycle in G containing all edges of P . Therefore

e survives our procedure, but then e must be in a cycle, a contradiction. So G must be

2-edge-connected. Now suppose that G is 2-edge-connected. Then G contains a cycle,

so G has a subgraph with an ear decomposition. Therefore H be a maximal subgraph

of G which has an ear decomposition. We'll show H = G. If H 6= G, then there is an

edge e of G joining a vertex of H to a vertex of G not in H, otherwise H + e has an ear

decomposition. This edge is in a cycle C, by Lemma 1.7.1. If this cycle contains only one

vertex of H, then H [ C has an ear-decomposition, a contradiction. Therefore the cycle

contains two vertices in H, and we can �nd a shortest path between two vertices of H in

G to add to H, a contradiction. So H = G.

2.4 Connected digraphs*

A directed path in a digraph is an orientation of a path such that all edges are oriented

from one end of the path to the other. There is a natural notion of connectivity in digraphs,

which we call strong connectivity. The basic idea is to replace paths with directed paths

in the de�nition of connectivity: a digraph G is strongly connected if for each ordered pair

(u; v) of vertices of G, there is a directed path in G from u to v { we call this a (u; v)-path

for short. For example, if we direct all the edges of a cycle clockwise, then we have a

strongly connected digraph. On the other hand, the digraph with vertex set f1; 2; : : : ; ngand arc set f(i; j) : 1 � i < j � ng is far from strongly connected. Recall that an

orientation of a graph G is a digraph obtained by replacing each edge fu; vg 2 E(G) with

an ordered pair (u; v) or (v; u). For example, the last example above of a non-strongly

connected digraph is an orientation of Kn, the complete graph on n vertices. A digraph

G is strongly k-connected if the removal of fewer than k vertices of G gives a strongly

connected digraph. Later we will prove the analog of Menger's Theorem 4.2.1 for strongly

k-connected digraphs, but for now we concentrate on the case k = 1.

Corollary 2.4.1 A graph is 2-edge-connected if and only if it has a strongly connected

orientation.

Page 13: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. Let fx; yg be an edge of G. Then there is an orientation giving a directed

path from x to y and a directed path from y to x. It follows that the edge fx; yg is

contained in a cycle in G, and G is 2-edge-connected, by Lemma 1.7.1. Next suppose G is

2-edge-connected and consider an ear decomposition of G. Proceed by induction on the

number of edges of G. If G is a cycle, then we orient all the edges clockwise for a strongly

connected orientation. Suppose G is not a cycle, and P is an ear in the ear decomposition.

Then G = H [ P where H is 2-edge-connected and P is internally disjoint from H. By

induction, H has a strongly connected orientation. An appropriate orientation of P gives

a strongly connected orientation of G.

In fact this theorem generalizes to 2k-edge-connected graphs for all k � 1, but we do not

prove this here:

Theorem 2.4.2 A graph G is 2k-edge-connected if and only if it has a strongly k-

connected orientation.

We are, however, able to prove Menger's Theorem 2.5.2 in the case of 2-edge-connected

graphs. Unfortunately the proof is rather technical.

Theorem 2.4.3

A graph G is 2-edge-connected if and only if there exist two edge-disjoint uv-paths for

each pair of distinct vertices u; v 2 V (G).

Proof. It is evident that G is 2-edge-connected if there exist two edge-disjoint u-v paths

for each fu; vg � V (G). For the converse, �x a pair fu; vg � V (G). By Lemma 1, we

may choose an orientation ~G of G containing directed u-v and v-u paths, P and Q. We

choose ~G and the paths P;Q so that jE(P )[E(Q)j is a minimum. It will be shown that

P and Q are edge-disjoint. Let H be the graph spanned by E(P )4E(Q) and let F be the

component of H containing u. If v 62 V (F ), then there is an edge-cut L � E(P ) \ E(Q)

separating V (F ) from v. However there is no orientation of the edges of L which admits

the directed paths P and Q, a contradiction. So v 2 V (F ). Observe that every vertex

of H, and therefore F , has even degree. By Lemma 2, �(F ) is even, and so F is 2-edge

connected. By Lemma 1, we may choose an orientation of F containing directed u-v

and v-u paths, P 0 and Q0. Now jE(P 0) [ E(Q0)j � jE(P ) [ E(Q)j, by the minimality of

jE(P ) [ E(Q)j. Since jE(P 0) [ E(Q0)j � jE(P )4E(Q)j � jE(P ) [ E(Q)j, we conclude

that E(P )4E(Q) = E(P ) \ E(Q), so P and Q are edge-disjoint, as required.

2.5 Menger's Theorem

So far we have characterized 2-edge-connected graphs and 2-connected graphs. The situ-

ation for k-connected graphs is more complicated when k > 2. For k = 3, it is possible to

Page 14: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

give a good structural characterization of k-connected graphs, but for larger values of k no

such characterization is available. The characterization for 3-connected graphs includes

the following useful theorem:

Theorem 2.5.1

Let G be a 3-connected graph on at least �ve vertices. Then there exists an edge e 2 E(G)

such that G=e is 3-connected.

From this theorem, one can deduce that by a sequence of edge-contractions, every 3-

connected graph can be reduced to K4. There is no such characterization for k-connected

graphs in general.

Fortunately, Menger's Theorem 2.5.2 gives a necessary and su�cient condition for a graph

to be k-connected. Let u and v be vertices in a graph G, and let P and Q be uv-paths.

Then P and Q are internally disjoint if the only vertices they have in common are u and

v. A uv-separator is a setW � V (G)nfu; vg such that u and v are in distinct components

of G�W .

Theorem 2.5.2 (Menger's Theorem - Vertex Form)

The minimum size of a uv-separator in a graph G is equal to the maximum number of

pairwise internally disjoint uv-paths in G. In particular, a graph is k-connected if and

only if each pair of its vertices is connected by k pairwise internally disjoint paths.

The vertex-form of Menger's Theorem has an edge-form, for k-edge-connected graphs. A

set L � E(G) is a uv-edge-separator if u and v are in di�erent components of G� L.

Theorem 2.5.3 (Menger's Theorem - Edge Form)

The minimum size of a uv-edge-separator in a graph G equals the maximum size of a set

of pairwise edge-disjoint uv-paths in G. In particular, a graph is k-edge-connected if and

only if each pair of its vertices is connected by k pairwise edge-disjoint paths.

We will not give a direct proof of the edge form of Menger's Theorem; rather it may

be proved by using the vertex form of Menger's Theorem applied to line graphs (see the

exercises).

Proof of Theorem 2.5.2*

For k = 1 the theorem is just the de�nition of a connected graph. Now suppose k � 2.

If there are k internally disjoint uv- paths in G, then clearly k vertices are required to

separate u from v, as at least one vertex is required to destroy each of the internally

disjoint uv-paths. Now suppose k vertices are required to separate u from v. Let G

be a counterexample to the theorem with the smallest possible value of k, and with the

smallest number of edges. Now u and v do not have a common neighbour x, otherwise

Page 15: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

G� x is a counterexample to the theorem with k � 1 vertices separating u from v but at

most k � 2 internally disjoint u-v paths. Now let W be a set of k vertices separating u

from v. We consider two cases.

Case 1. Both u and v are not adjacent to all vertices in W { in other words there is a

vertex of W which is not adjacent to u, and there is a vertex of W which is not adjacent

to v.

Let Hu and Hv be the components of G�W containing u and v respectively. Note that Hu

and Hv have each at least two vertices, by the assumption that u and v are not adjacent

to all vertices in W . By the minimality of G, G=V (Hu) contains k internally disjoint wv-

paths, where w is the vertex to which V (Hu) is contracted. Similarly, G=V (Hv) contains

k internally disjoint ux-paths, where V (Hv) is contracted to x. Deleting w from the �rst

set of paths and x from the second, and taking the union of all the resulting paths, we

obtain the requisite k internally disjoint uv-paths.

Case 2. One of u and v is adjacent to all vertices in W .

We reduce this case to Case 1. Let uu1u2u3 : : : v be a shortest uv-path. Since u and v

have no common neighbours, this path has length at least three. In particular, v is not

adjacent to u1 and u is not adjacent to u2. If G � fu1; u2g has no uv-separator of size

k� 1, then by the minimality of G we have k internally disjoint uv-paths in G�fu1; u2g,and hence in G, a contradiction. So G�fu1; u2g contains a uv-separator W0 of size k�1.

Finally Wi = W0 [ ui for i 2 f1; 2g are uv-separators of size k in G, and we can assume

that u is not adjacent to all vertices of W0 (i.e some vertex of W0 is not adjacent to u),

since u and v have no common neighbours. Now both u and v are not adjacent to all

vertices in W1. So we are back in Case 1.

If A and B are sets of vertices in a graph G, then an AB path is a path with one endpoint

in A and the other in B, and no other vertices in A [B.

Corollary 2.5.4 (Fan Lemma) Let G be a graph with at least k + 1 vertices. Then

the following statements are equivalent:

1. G is k-connected.

2. for any set X � V (G) of size k and any u 2 V (G)nX, there are k paths from u

to X with only the vertex u in common.

3. for any sets A;B � V (G) of size k, there exist k vertex-disjoint AB paths.

Proof. First suppose G is k-connected. To prove 2 from 1, let G� be the graph obtained

from G by adding a vertex x adjacent to all vertices in X. Since jXj � k, the graph G�

is k-connected, by Lemma 2.1.4. By Theorem 2.5.2, there exist k internally disjoint ux

paths in G�. Removing x from all of these paths, we have k paths from u to X with only u

in common. To prove 3 from 1, let G�� be the graph obtained from G by adding a vertex

a adjacent to all vertices in A and a vertex b adjacent to all vertices in B. Since jAj � k

Page 16: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

and jBj � k, the graph G�� is k-connected. By Menger's Theorem, there exist k internally

disjoint ab paths in G��. Removing a and b from these paths gives k vertex-disjoint AB

paths in G. To prove 1 from 2, we will show that every pair of vertices of G is joined by

k internally disjoint paths. Let u; v 2 V (G). If fu; vg 2 E(G), then we remove the edge

fu; vg from G to get a (k � 1)-connected graph. By induction on k, this graph has k � 1

internally disjoint paths, so together with the edge fu; vg, we have a set of k internally

disjoint uv-paths. So we assume fu; vg 62 V (G). Now u has degree at least k, since 2

provides k paths from u to any set in V (G)nfug of size k, such that the paths have only

u in common. Now let X � �(u) have size k. By 2, there are k paths from v to X with

only the vertex v in common. These paths are easily modi�ed to give k internally disjoint

paths from u to v (note that at most one of the k paths from v to X may contain u).

Therefore 2 implies 1. The proof that 3 implies 1 is similar.

Page 17: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

2.6 Exercises

1: Determine the minimum degree �(G), edge connectivity �(G) and vertex connec-

tivity �(G) for each of the following two graphs. You do not need to justify your

answers.

(a) (b)

2: (a) Prove that for any graph G, �(G) � �(G) � �(G).

(b) For each three positive integers d; k and ` where k � ` � d, �nd an example of

a graph where �(G) = d, �(G) = k and �(G) = `.

3: Let G be a graph of order n � k + 1 such that �(G) � n+k�22

. Prove that G is

k-connected.

4: Let G be a graph of maximum degree at most three. Prove that �(G) = �(G).

5* Let G be a 2-connected graph with m edges and n vertices. Prove that G contains

at least m�n+2 distinct paths connecting u and v for any pair of distinct vertices

u; v 2 V (G), and at least�m�n+2

2

�distinct cycles.

6: The line graph of a graph G = (V;E) is the graph L(G) = (E;F ), where the edge

set is F = ffe; fg � E : e\ f 6= ;g. Prove the edge-form of Menger's Theorem by

applying the vertex form of Menger's Theorem 2.5.2 to line graphs.

7: (a) Prove that every 3-connected graph contains a subdivision of K4. Deduce that

every 3-connected graph has a sequence of edge-contractions to K4.

(b) Is it true that every 4-connected graph contains a subdivision of K5?

Page 18: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3 Matchings and Factors

A matching in a graph is a set of pairwise disjoint edges of the graph. In this section we are

interested in determining the size of a largest matching in a given graph and when a graph

has a perfect matching { that is, a matching covering all its vertices. For bipartite graphs,

this question is completely answered by Hall's Theorem 3.2.1 and the K�onig-Ore Formula.

For general graphs, Tutte's 1-Factor Theorem 3.6.1 and the Tutte-Berge Formula 3.9.1

apply. At the end of the chapter, we consider the more general notion of an f -factor in a

graph: this is a spanning subgraph where the vertex degrees are prescribed by the non-

negative integer-valued function f . Some of the proofs of the main results in this chapter

are algorithmic { in the sense that maximum matchings in graphs can be found very

fast { see Edmonds' Matching Algorithm. It turns out that this problem can be reduced

to the problem of �nding perfect matchings. The problem of determining a maximum

matching is related to the problems of �nding largest independent sets, edge-covers and

vertex covers in a graph.

3.1 Independent Sets and Covers

An independent set in a graph G is a set X of vertices no pair of which is an edge of

G { in other words the subgraph G[X] induced by X has no edges. The maximum size

of an independent set in a graph G is denoted �(G). An independent set of edges in a

graph is a set of vertex-disjoint edges in the graph { a matching. The maximum size

of a matching in a graph G is denoted �0(G), and any matching of size �0(G) is called

a maximum matching in G. If the matching covers all vertices of G, then it is called a

perfect matching or 1-factor of G. A vertex which is not covered by a given matching is

called unsaturated or exposed, and those vertices which are covered are called saturated.

A vertex cover of G is a set of vertices X � V (G) such that e \ X 6= ; for every edge

e 2 E(G) { in other words, a set of vertices which intersects every edge of G. The

minimum size of a vertex cover of G is denoted �(G). An edge cover of G is a set of edges

covering every vertex of G { that is a set E � E(G) such that for every vertex v 2 V (G),

there is an edge of E incident with v. The minimum size of an edge-cover is denoted

�0(G). In this subsection we describe equations relating �(G), �0(G), �(G) and �0(G).

Lemma 3.1.1 For any multigraph G, �(G) + �(G) = jV (G)j.

Proof. * If I is an independent set of vertices in G, then V (G)nI is a vertex cover: everyedge of G has at least one endpoint in V (G)nI since no edges have both endpoints in I.

Conversely, if C is a vertex cover, then every edge is incident with C so no edges have

both endpoints in V (G)nC. Therefore V (G)nC is an independent set of G. We conclude

that �(G) + �(G) = jV (G)j.

Page 19: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Lemma 3.1.2 (Gallai's Lemma) LetG be a multigraph with no isolated vertices. Then

�0(G) + �0(G) = jV (G)j.

Proof. Let M be a matching in G of size �0(G) { a maximum matching. Then no edge

of G has both endpoints in V (G)nV (M), so V (G)nV (M) is an independent set of vertices.

Now let us choose one edge incident with each vertex in V (G)nV (M) and all edges of

M . The set of edges we get, say F , is an edge-cover of size jE(M)j + jV (G)nV (M)j =jV (G)j � �0(G). Therefore �0(G) � jV (G)j � �0(G).

Conversely, let F be an edge-cover of G of size �0(G) { a minimum edge-cover. Then

F � e is not an edge cover for any e 2 E(F ). This means that each edge of F must cover

one of its endpoints uniquely, so every edge of F has an endpoint of degree one in F . In

particular, every component of F is a star { a K1;t for some t � 1 (see Figure 8). Pick one

edge from each component of F to get a matching M with jE(M)j equal to the number

of components of F . Since all components of F are stars,

�0(G) � jE(F )j = jV (F )j � jE(M)j = jV (G)j � jE(M)j � jV (G)j � �0(G):

This completes the proof.

Figure 8 : Structure of minimal edge-covers

Theorem 3.1.3 (K�onig's Theorem)

If G(A;B) is a bipartite multigraph with no isolated vertices, then �0(G) = �(G) and

�0(G) = �(G).

Proof. * It is su�cient to show �0(G) = �(G), by the last two lemmas. We give a proof

of the theorem using Menger's Theorem 2.5.2. Add a vertex a adjacent to all vertices in

A and a vertex b adjacent to all vertices in B. By Menger's Theorem 2.5.2, the maximum

number of internally disjoint ab-paths in this new graph equals the minimum number of

vertices required to separate a from b. The maximum number of internally disjoint paths

is �0(G), and the minimum number of vertices required to separate a from b is �(G).

Therefore �0(G) = �(G).

Page 20: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.2 Hall's Theorem

Let X be a set of vertices in a graph G. Recall that �(X) denotes the neighbourhood of

X, namely

fy 2 V (G)nX : xy 2 E(G) for some x 2 Xg:Hall's Theorem gives a necessary and su�cient condition for a bipartite graph to have a

perfect matching { and in fact a matching covering all vertices of one part. There are

many proofs of Hall's Theorem; we give two proofs.

Theorem 3.2.1 (Hall's Theorem)

Let G(A;B) be a bipartite multigraph. Then G has a perfect matching if and only if

j�(X)j � jXj Hall0sCondition

for every set X � A and every set X � B.

First Proof. The �rst proof we give is based on Menger's Theorem 2.5.2. First we

observe that jAj = jBj, since jBj � j�(A)j � jAj and jAj � j�(B)j � jBj. Let H be the

graph obtained from G by adding a vertex a adjacent to all vertices of A and a vertex

b adjacent to all vertices of B. Then G has a perfect matching if and only if there exist

jAj internally disjoint paths from A to B. By Menger's Theorem 2.5.2, such paths exist

if and only if the minimum number of vertices required to separate a from b is jAj. For acontradiction, suppose that there exists a set S separating a from b with jSj < jAj. LetX = AnS and Y = BnS. Now there are no edges of G between X and Y , so �(X) � S\Band �(Y ) � S \ A. Therefore

jAnSj � j�(X)j � jS \BjjBnSj � j�(Y )j � jS \ Aj

Since jSj < jAj and jAj = jBj, we have

jAnSj+ jBnSj = jAj+ jBj � jSj > jAj:

So if we add the two preceding inequalities, we obtain jAj < jSj, a contradiction.

Second Proof. The second proof is a direct proof, and we prove something a bit

stronger: by induction on jAj, we prove that if j�(X)j � jXj for every set X � A in

a graph G, then G contains a matching saturating all vertices of A. Note that this

proves Hall's Theorem, since we could apply the same statement to B to get a matching

saturating all vertices of B. If jAj = 1, then the statement is true. Suppose jAj > 1.

We consider two cases. The �rst case is that j�(X)j > jXj for all X � A. In this case,

pick any edge of G and remove both endpoints of that edge, say a and b. Then we obtain

the bipartite graph H(Anfag; Bnfbg). In this bipartite graph, Hall's Condition holds

Page 21: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

in Anfag, and therefore H has a matching, M , saturating all vertices of Anfag. Now

M [ fa; bg is the required matching in G. The second case is that for some X � A or

X � B, j�(X)j = jXj. Let Y = �(X). In this case, consider the graph G1(A1; B1)

obtained from G by removing all vertices of X [ Y , and the graph G2(X; Y ) consisting

of all edges between X and Y . Then Hall's Condition holds in G1 and also in G2. To see

that it holds in G1, take any set S � A1. Then:

j�G1(S)j+ j�G2

(X)j � j�G(X [ S)j � jX [ Sj = jXj+ jSj

and since j�G2(X)j = j�G(X)j = jXj, we have j�G1(S)j � jSj for any S � A1. By

induction G1 and G2 have matchings, say M1 and M2, saturating all their vertices in A,

and M1 [M2 is a matching in G saturating all vertices of A.

A 1-factorization of a graph G is a collection of edge-disjoint 1-factors M1;M2; : : : ;Mr

such that G =M1[M2[ � � � [Mr. For example, for even values of n, the complete graph

Kn has a 1-factorization.

Corollary 3.2.2 Let G(A;B) be a k-regular bipartite multigraph, where k � 1. Then

G has a 1-factorization.

Proof. It su�ces to prove that G has a perfect matching. To see this, we apply Hall's

Theorem 3.2.1. For a set X � A or X � B, there are kjXj edges of G incident with

exactly one vertex of X. There are also kj�(X)j edges incident with exactly one vertex of

�(X). This set of edges contains all edges incident with X, so kj�(X)j � kjXj and Hall's

Condition is satis�ed. Therefore by Hall's Theorem 3.2.1 G has a 1-factor.

3.3 Doubly Stochastic Matrices*

A natural application of this corollary is to doubly stochastic matrices. A matrix A is

doubly stochastic if all its entries are non-negative and all its columns and rows have the

same sum, say k. A matrix is a permutation matrix if it has exactly one non-zero entry

in each row and column. Examples of a doubly stochastic matrix A and a permutation

matrix P are given below:

A =

0BBB@

1 1 0 0

0 1 1 0

0 0 1 1

1 0 0 1

1CCCA P =

0BBB@

0 1 0 0

0 0 1 0

0 0 0 1

1 0 0 0

1CCCA

Corollary 3.3.1 Let A be a doubly stochastic 0-1 matrix, where all columns and rows

sum to k. Then A is a sum of k permutation matrices.

Page 22: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. The matrix A can be considered as a bipartite graph: let r1; r2; : : : ; rn be the

rows of the matrix and c1; c2; : : : ; cn the columns of the matrix. Form a bipartite graph

G where one part is fr1; r2; : : : ; rng, the other part is fc1; c2; : : : ; cng, and ri is adjacent

to cj if and only if Aij = 1. Then since each row has k ones and each column has

k ones, the bipartite graph is k-regular. In particular, this bipartite graph has a 1-

factorization, say G = F1 [ F2 [ � � � [ Fk. Now let Pm be the matrix whose ijth entry is

1 if and only if fi; jg 2 Fm. Then Pm is a permutation matrix for m 2 f1; 2; : : : ; kg and

A = P1 + P2 + � � �+ Pk, as required.

A more general fact is left as an exercise: if A is any doubly stochastic matrix, and

the rows and columns sum to 1, then A is contained in the convex hull of the set of

permutation matrices, namely

A = �1P1 + � � �+ �NPN

where Pi is a permutation matrix and �i � 0 for all i andP

�i = 1.

3.4 Systems of Distinct Representatives*

Another application of Hall's Theorem 3.2.1 is to systems of distinct representatives. Let

S1; S2; : : : ; Sn be �nite sets. A system of distinct representatives (abbreviated SDR) for

S1; S2; : : : ; Sn is a set fs1; s2; : : : ; sng such that si 2 Si for all i. For example, the sets

f1; 2; 3g, f2g, f3g have a system of distinct representatives whereas f1; 2; 3g, f2; 3g, f1; 3g,f2g do not.

Corollary 3.4.1 Let S = fS1; S2; : : : ; Sng be a family of �nite sets. Then S has a

system of distinct representatives if and only if for all I � f1; 2; : : : ; ng,�����[i2I

Si

����� � jIj:

Proof. Let A = S and B = f1; 2; : : : ; ng. Then the bipartite graph G(A;B), where

a 2 A is joined to b 2 B if b 2 A, satis�es Hall's Condition, and therefore has a perfect

matching. A perfect matching in this bipartite graph is equivalent to a system of distinct

representatives for S.

In the proof of this corollary, we gave a one-to-one correspondence between bipartite

graphs and collections of sets. For a given collection of sets S, the graph so formed is

often called the bipartite incidence graph of S. Since a bipartite k-regular graph has a

perfect matching, we see that if S is a collection of sets such that each set S 2 S has

size k, and each point inSfS : S 2 Sg is contained in exactly k sets in S, then S has a

system of distinct representatives, since the bipartite incidence graph is k-regular.

Page 23: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.5 K�onig-Ore Formula

Hall's Theorem 3.2.1 gives a formula for �nding �0(G) in a bipartite graph. For a bipartite

graph G(A;B), de�ne ex(G;A) = jAj��0(G): this is the number of vertices of A exposed

by a maximum matching. Hall's Theorem 3.2.1 gives a formula for ex(G;A):

Theorem 3.5.1 (K�onig-Ore Formula)

Let G(A;B) be a bipartite graph. Then

ex(G;A) = maxS�A

fjSj � j�(S)jg:

Proof.* Let d be the left hand side of the identity in the corollary. Add d vertices to

B, all adjacent to all vertices of A. Then Hall's Condition { namely j�(X)j � jXj forall X � A { is satis�ed in this new graph, so it has a matching covering all vertices of

A, by Hall's Theorem 3.2.1. It follows that G has a matching of size at least jAj � d.

Therefore ex(A) � d. Conversely, if M is a matching of size jAj � ex(A), then each set

S � A has at least jSj � ex(A) neighbours in B. In other words, j�(S)j � jSj � ex(A) so

d � jSj � j�(S)j � ex(A), as required.

As an exercise, one can prove that a bipartite graph G(A;B) of minimum degree � and

maximum degree � contains a matching of size at least �jAj=�.

3.6 Tutte's 1-Factor Theorem

There is a natural condition for a graph G to have a perfect matching: if S is a set of

vertices of G and H1; H2; : : : ; Hr are the odd components of G� S, then none of the Hi

can have a perfect matching, so each sends at least one edge of a perfect matching to S.

In particular jSj � r, so we have for all S � V (G),

jSj � odd(G� S):

Note that if S = ;, this asserts that G has an even number of vertices. Tutte's Theorem

shows, remarkably, that this is also a su�cient condition.

Theorem 3.6.1 (Tutte's 1-Factor Theorem)

Let G be a graph. Then G has a perfect matching if and only if

jSj � odd(G� S) Tutte0sCondition

for every set S � V (G).

Page 24: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof.* The proof we give is by induction on jV (G)j, the case jV (G)j = 2 being trivial.

Let S be the largest subset of G such that equality holds in jSj � odd(G � S). Such an

S exists, because jV (G)j is even, and so G � s has at least one odd component for each

s 2 V (G). Let F and H denote generic odd and even components of G� S.

Claim 1. The graph H has a 1-factor.

For any R � V (H), as required we have:

odd(H �R) + odd(G� S) = odd(G�R [ S) � jRj+ jSj:By induction H has a 1-factor.

Claim 2. The graph F 0 = F � v has a 1-factor for any v 2 V (F ).

By induction, if this is false, then there exists a setQ � V (F 0) such that odd(F 0�Q) > jQj.Now for any set R � V (F ),

odd(F �R) + jRj � jV (F )j � 1 mod 2

since F has an odd number of vertices (this step is really key to the proof). Therefore

odd(F 0 �Q) � jQj+ 2, and so if T = S [ fvg [Q, then

jT j � odd(G� T )

= odd(G� S)� 1 + odd(F 0 �Q)

� jSj+ jQj+ 1:

This shows odd(G�T ) = jT j, contradicting the maximality of S, and the claim is proved.

Claim 3. Let G(S;C) be the bipartite graph formed from G by contracting each odd

component of G � S to a single vertex, and taking all edges with one end in S and one

end in the set C of contracted vertices. Then G(S;C) has a perfect matching.

To prove this, we use Hall's Theorem 3.2.1: for every set X � C,

jXj = odd(G� �(X)) � j�(X)jas required. Since jSj = jCj = odd(G� S), there is a 1-factor in G(S;C).

To complete the proof of Tutte's 1-Factor Theorem, put together all the 1-factors that we

found in Claims 1{3. Let M1;M2; : : : ;Mr be 1-factors in the even components of G. Now

let M be a 1-factor in G(S;C). Then the edges of M form a matching in G, and for each

odd component Hi of G� S, for i 2 f1; 2; : : : ; sg where s = odd(G� S), there is exactly

one vertex of H, say vi, incident with an edge of M . Now Claim 2 gives a 1-factor Ni in

H � vi. Then

M [M1 [ � � � [Mr [N1 [N2 [ � � � [Ns

is a perfect matching of G.

Page 25: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Even components

Matching Mi !Odd components

Matching Ni

vi

Hi

M

Figure 9 : The proof of Tutte's Theorem.

An alternative, shorter proof of Tutte's 1-Factor theorem was given by Lov�asz, and is

standard in many books. We give a simple example of an application of Tutte's Theorem

to �nding matchings in graphs with large minimum degree:

Theorem 3.6.2 *

Let G be a graph on 2n vertices of minimum degree at least n. Then G has a perfect

matching.

Proof. We have to check Tutte's Condition: jXj � odd(G�X) for all sets X � V (G).

Since G has minimum degree at least n and 2n vertices, G is connected by assignment 1

question 4. In particular, G is its own even component, so odd(G � X) = 0 when X is

empty. So Tutte's Condition holds for X = ;. Now suppose X is not empty. If jXj � n,

then we are done since the number of components of G�X is at most 2n�jXj � n (they

could all have one vertex in the worst case), so Tutte's Condition holds in that case. Next

suppose 0 < jXj < n, and let F be any component of G�X. Then every vertex of F has

at most jXj neighbours in X (see illustration), so every vertex of F has degree at least

n�jXj in F . In particular, jV (F )j � n�jXj+1. So we've proved that every component

of G�X has at least n� jXj+1 vertices. If there are k � jXj+1 components in G�X,

then the number of vertices in G is at least

k(n� jXj+ 1) + jXj � (jXj+ 1)(n� jXj+ 1) + jXj� jXjn+ n� jXj2 + jXj+ 1

� 2n+ 1:

But jV (G)j = 2n. This contradiction shows that jXj � k = odd(G�X), as required.

SinceKn+1;n�1 does not have a perfect matching, the theorem really requires the minimum

degree n, and n� 1 will not do.

Page 26: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.7 Factors in Regular Graphs*

In the last section we gave an example of a cubic graph with no perfect matching. However,

the cubic graph has three bridges (see Figure 9), and bridges restrict the possibilities for

a perfect matching { it is not hard to see that every bridge of a cubic graph is contained

in all perfect matchings of the graph.

An r-regular graph is a graph in which all vertices have degree r, and a cubic graph is a

graph in which all vertices have degree three. A graph is bridgeless if and only if it has

no bridges { that means that every one of its components is 2-edge-connected.

Theorem 3.7.1 (Petersen's Theorem)

Any cubic bridgeless graph has a 1-factor.

Proof. We have to check Tutte's Condition. Pick a set S � V (G). If S = ;, thenTutte's Condition holds since G has an even number of vertices and is connected. Then

there are at least two edges from S to each odd component of G � S. If H is an odd

component of G � S, then it contains an even number of vertices of degree three, so it

must send to S an odd number of edges. It must send at least three edges. So we have 3r

edges out of odd components. On the other hand, G is cubic so jSj � r, as required.

An extension of Petersen's Theorem is that we can actually allow at most two bridges

and still �nd a 1-factor. In fact every (r � 1)-edge-connected r-regular graph has a 1-

factor. This we leave as an exercise since the proof is similar to Petersen's Theorem. As

an exercise, it is possible to construct an (r � 2)-edge-connected r-regular graph with no

1-factors. In case r = 3 the following cubic graph has no matching of size more than

fourteen, and the graph has sixteen vertices:

Figure 10 : A cubic graph with no perfect matching

A natural generalization of a 1-factor is a d-factor. A d-factor of a graph is a spanning

d-regular subgraph. For example, we showed that every k-regular bipartite graph has a

1-factorization (see Corollary 3.2.2), which means that if we take any d of the 1-factors in

Page 27: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

a 1-factorization, we get a d-factor. So every k-regular bipartite graph has a d-factor for

all d � k. Our aim here is to prove that every 2k-regular graph has a 2d-factor for any

d � k. To do so, we need the notion of an eulerian tour. An eulerian tour of a graph G

is a closed walk with no repeated edges such that every edge in the graph is contained in

the walk, and a graph with an eulerian tour is called eulerian. It is clear that all vertices

in an eulerian graph must have even degree, but this necessary condition turns out also

to be su�cient:

Theorem 3.7.2 (Euler's Theorem)

Let G be a connected multigraph in which all vertices have even degree. Then G has an

eulerian tour.

The proof of this theorem is fairly straightforward: one proves that a maximal closed walk

in G which does not repeat edges must in fact be eulerian { otherwise we could extend

the walk). In loose terms, this says that we can draw the graph in the plane without

lifting our pen. If we are given a graph with exactly two vertices of odd degree, then we

can �nd an eulerian trial: a walk which does not repeat edges, and starts at one vertex

and ends at the other, using all the edges of the graph. For example, an eulerian trail is

shown in the graph below:

Theorem 3.7.3

Let d � k be non-negative integers. Then

1. Every 2k-regular with an even number of nodes has a k-factor.

2. Every 2k-regular graph has a 2d-factor.

Proof. 1. If G is 2k-regular and connected, then G has an eulerian tour. Now delete

every second edge in an eulerian tour of G (we can do this since the number of edges in the

graph is djV (G)j which is even by, assumption) to obtain a k-regular spanning subgraph

{ that is, a k-factor.

2. We may assume G is connected, otherwise we pass to the components of G. Orient

the edges of an eulerian tour of G consistently, from the �rst to the last vertex of the tour

(this is called a pseudosymmetric orientation of G). Then form a bipartite graph H with

parts A = V (G) and B = V (G) where fa; bg 2 H if the edge fa; bg 2 G was directed from

a to b, where a 2 A and b 2 B. Then this bipartite graph is k-regular, so by Corollary

3.2.2, it has a 1-factor. A 1-factor of H clearly corresponds to a 2-factor of G, since a

vertex v 2 V (G) is incident with exactly two edges of any 1-factor of H. Now we remove

2-factors from G until we �nd a 2d-factor.

Page 28: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.8 The f-Factor Theorem*

Let G be a graph and let f : V (G)! N be any function. An f -factor of G is a subgraph

H of G such that the degree of vertex v 2 V (G) in H is f(v). For example, if f(v) = 1

for all v 2 V (G), then an f -factor corresponds to a perfect matching. A k-factor is an

f -factor where f(v) = k for all v 2 V (G).

Remarkably, Tutte's 1-Factor Theorem 3.6.1 can be extended to give a necessary and

su�cient condition for a graph to have an f -factor. For a graph G in which we wish to

�nd an f -factor, we construct an auxiliary graph Gf such that if Gf has a 1-factor, then

G has an f -factor. Let f : V (G) ! N be any function, and suppose we want to �nd

an f -factor in G. The �rst step in constructing Gf is to replace each edge e 2 E(G)

by a path Pe of length three with the same endpoints as e such that the paths of length

three are pairwise internally disjoint. Let this new graph be denoted by G0 (see Figure

11). Now for each vertex v 2 V (G), we replace v with (or split into) a set of f(v) new

vertices, and join all f(v) new vertices to all neighbours of v in G0 to obtain Gf . These

new sets of vertices will be denoted S(v). The graph Gf is said to be constructed from G

by vertex-splitting. An illustration is given below with f(x1) = 2, f(x2) = 1, f(x3) = 1,

f(y1) = 2, f(y2) = 2.

x1

x2

x3 G0

y1

y2

S(x1)S(y1)

Gf

Figure 11 : Vertex Splitting

Note that if we contract the sets S(v) in Gf , we obtain G0, so in this sense splitting is

the inverse of contraction.

Lemma 3.8.1 Let f : V (G)! N, and let Gf be constructed from G by vertex-splitting.

Then Gf has a 1-factor if and only if G has an f -factor.

Proof* First suppose Gf has a 1-factor. Let H be the subgraph of Gf spanned by

the edges of this 1-factor. Let H0 � G0 be obtained from H by contracting each set

Page 29: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

S(v) � V (H) to a single vertex. Now for all e 2 E(G), either the middle edge of Pe is

in H0 or the �rst and last edges of Pe are in H0, since H is a 1-factor of G. The number

of edges e 2 E(G) incident with v 2 V (G) such that jE(Pe) \ E(H0)j = 2 is exactly

jS(v)j = f(v), since H is a 1-factor in Gf . Let

F = fe 2 E(G) : jE(Pe) \ E(H0)j = 2g:

Then the degree of v 2 V (F ) is f(v), and F is an f -factor of G. Next suppose F � G

is an f -factor. De�ne H0 so that the �rst and last edge of Pe are in H0 if and only if

e 2 E(F ), and the middle edge of Pe is in H0 if and only if e 62 E(F ). It is now easy to

construct a 1-factor of Gf from H0.

Using this lemma, a necessary and su�cient condition can be presented for a graph to

have an f -factor: one just translates Tutte's 1-Factor Theorem 3.6.1 for the graph Gf

to the graph G. However, the formula is complicated, so for simplicity we restrict our

attention to f -factors in bipartite graphs.

Theorem 3.8.2 (Bipartite f-factor theorem)

Let G(A;B) be a bipartite graph and let f : V (G)! N be any function. Then G has an

f -factor if and only if the following two conditions hold for any set X � A and Y � B:

1:P

x2A f(x) =P

y2B f(y)

2:P

x2X f(x) � e(X; Y ) +P

y2BnY f(y):

Proof* Suppose G has an f -factor, F . ThenP

x2A f(x) = jE(F )j = Py2B f(y) and

this gives Theorem 3.8.2.1. To prove Theorem 3.8.2.2 let X � A and Y � B. Let m(Y )

be the number of edges of F between X and Y . Then

m(B) =Xx2X

f(x) = m(Y ) +m(BnY ):

Now Theorem 3.8.2.2 follows since m(Y ) � e(X; Y ) and m(BnY ) �Py2BnY f(y).

Assume Theorem 3.8.2.1 and Theorem 3.8.2.2 hold and let Gf be constructed from G by

vertex-splitting. If Af and Bf are the parts ofGf , then Theorem 3.8.2.1 shows jAf j = jBf j.We now prove that j�(X�)j � jX�j for all setsX� � Af , and deduce thatGf has a 1-factor,

by Hall's Theorem 3.2.1. By Lemma 3.8.1, this gives an f -factor in G. Let

X = fx 2 A : S(x) \X� 6= ;g and Y = fy 2 B : �(X�) \ S(y) = ;g:

In words, X is the set of vertices of A obtained from X� when we contract all the sets

S(x) for x 2 A, and Y is the set of vertices of B obtained from �(X�) when we contract

Page 30: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

all the sets S(y) for y 2 B. Let Z be the set of vertices of X� which are internal vertices

of the paths Pe. Since S(x) has size f(x), jX�j =Px2X f(x) + jZj. By Theorem 3.8.2.2,

j�(X�)j � e(X; Y ) + jZj+X

y2BnY

f(y) � jX�j:

This completes the proof.

A bipartite graph G(A;B) is said to be (r; s)-regular if every vertex of A has degree r and

every vertex of B has degree s. As an example of an application of the bipartite f -factor

theorem, we prove that every (r; s)-regular bipartite graph has an (a; b)-regular spanning

subgraph provided as = br and a � r, b � s.

Corollary 3.8.3 * Let G(A;B) be an (r; s)-regular bipartite graph, and let a and b be

non-negative integers such that as = br. Then G has a spanning (a; b)-regular bipartite

graph.

Proof. De�ne f(x) = a for x 2 A and f(y) = b for y 2 B. We have to �nd an f -factor

in G, so we check the conditions (1) and (2) of Theorem 3.8.2. Condition (1) holds since

rjAj = sjBj = jE(G)j andXx2A

f(x) = ajAj = a

rjE(G)j = as

rjBj = bjBj =

Xy2B

f(y):

Now we check (2): let X � A and Y � B. Then

Xx2X

f(x)�X

y2BnY

f(y) = ajXj � bjBnY j:

We have to prove that e(X; Y ) is at least this quantity. Now as every vertex of B has

degree s in G, we have

e(X;BnY ) � sjBnY j:Therefore

e(X; Y ) = e(X;B)� e(X;BnY )� rjXj � sjBnY j= ajXj � sa

rjBnY j

= ajXj � bjBnY j:

This completes the proof.

Page 31: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.9 Tutte-Berge Formula

The Tutte-Berge Formula is the analog of the K�onig-Ore Formula for non-bipartite graphs,

and gives a method for �nding �0(G). We de�ne ex(G) to be the minimum number of

vertices of G exposed by a matching of G { thus ex(G) = jV (G)j � 2�0(G).

Theorem 3.9.1 (Tutte-Berge Formula)

For any graph G,

ex(G) = maxS�V (G)

fodd(G� S)� jSjg:

The proof of this theorem is left as an exercise. The theorem can be used to give lower

bounds on �0(G) for various graphs. For example, we apply the Tutte-Berge Formula

3.9.1 to cubic graphs { graphs where all the vertices have degree three { to get a lower

bound on �0(G):

Theorem 3.9.2 *

Let G be a cubic graph on n vertices. Then G has a matching of size at least 7n16.

Proof. It may be assumed that G is connected, otherwise we pass to the components

of G. We have to �nd an upper bound for ex(G), namely ex(G) � n=8. By the Tutte-

Berge Formula 3.9.1, this is the same as showing odd(G � X) � jXj � n=8 for all sets

X � V (G). Let X � V (G) have size , and let � be the number of odd components of

G � X with at most three vertices, and � be the number of odd components of G � X

with at least �ve vertices. Let's call these �-components and �-components, respectively.

Then odd(G�X)�jXj = �+�� . Now each �-component H of G is K1 or K3 or a path

on three vertices. In each case, since G is cubic, e(V (H); X) � 3. Each �-component F

of G has e(V (F ); X) � 1. On the other hand, e(X; V (G)nX) � 3jXj, since every vertex

of X has degree three. Therefore

3� + � � 3 :

Next we observe that there are n� vertices in G�X, but also at least �+ 5� vertices

in G�X, so

� + 5� � n� :

We want to maximize �+�� subject to the above two inequalities. It is not hard to see

that we must have � = 0, � = 3n=16 and = n=16, in which case ex(G) = �+�� = n=8,

as required.

In fact, one can show that for an r-regular graph

ex(G) �

8>>><>>>:

n

r + 1if r is even

(r � 1)n

(r + 1)2if r is odd:

Page 32: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

The proof is similar to Theorem 3.9.2, and is left as an exercise. These results cannot be

improved: for example Theorem 3.9.2 is best possible: if we take k copies of the graph

shown in Figure 10, we get a cubic graph on n = 16k vertices with no matching of size

more than 7k = 7n=16.

3.10 Matching Algorithms*

In bipartite graphs, K�onig's Theorem gives a practical way to �nd a maximum matching,

using the notion of an augmenting path. An alternating path in a graphG with a matching

M is a path whose every alternate edge is in M . An augmenting path for a matching M

is an alternating path whose �rst and last edges are not in M .

Theorem 3.10.1 (Berge)

A matching M in a graph G is a maximum matching if and only if M does not admit any

augmenting paths.

Proof. IfM is a maximum matching, it clearly admits no augmenting path. Conversely,

suppose M is a matching which does not admit an augmenting path, and jM j < jN j forsome maximum matching N . Then M [ N is a graph of maximum degree at most two,

and so all the components of M [ N are paths or cycles (a linear forest). But since

jN j > jM j, and any cycle in M [ N has as many edges of M as of N , there must be a

path P such that jE(P ) \M j < jE(P ) \ N j. This means that the �rst and last edge of

the path are in N , and so the path augments M , a contradiction.

K�onig's matching algorithm (also known as the Hungarian Method) is as follows: start

with the set of exposed vertices with respect to a matching M , and grow all alternating

paths in G, starting at the exposed vertices. At some point, an alternating path must

become an augmenting path, unlessM is already a maximum matching. Having found an

augmenting path, we �nd a larger matching than M and repeat the process. The details

of implementation are omitted.

The situation for general graphs is more complicated. In the case of general graphs, the

algorithm we present is known as Edmonds' Matching Algorithm. The idea is similar to

K�onig's Algorithm, except that the following lemma is needed:

Lemma 3.10.2 (Cycle Shrinking) Let G be a graph and let C be an odd cycle in G.

Suppose that M is a matching in G such that every edge of M contains two vertices or

no vertices of C. Let M 0 be the matching in G=V (C) obtained from M . Then M is a

maximum matching in G if and only if M 0 is a maximum matching in G=V (C).

Similar to K�onig's Algorithm, Edmonds' Algorithm begins with the construction of an

alternating forest, each of whose components is rooted at a vertex exposed by a matching

Page 33: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

M . Those vertices at even distance from the roots are called outer vertices, the rest are

called inner vertices. Let F be a maximal alternating forest in G, with respect to M . It

is clear that no outer vertex of F is joined to a vertex of V (G)nV (F ), otherwise we couldadd that vertex as an inner vertex of F and get a larger forest. Also no edge of G joins

two di�erent components of F , else we could add such an edge to make F larger. Finally

we consider an edge e of G joining two vertices of F . By maximality of F , F + e contains

an odd cycle, C. We now apply Lemma 3.10.2 and contract C and repeat. An example

is shown below.

Page 34: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

3.11 Exercises

1: Prove that in a bipartite graph, the condition odd(G � X) � jXj implies Hall's

Condition, without using Tutte's 1-Factor Theorem.

2: In each case, prove that the graph G has a perfect matching when G is

(a) a 2n� 2n bipartite graph of minimum degree at least n.

(b) a 2n-vertex graph of minimum degree at least n.

(c) a 2n-vertex 2-connected graph not containing an induced K1;3.

3: Let G be a 2r-regular graph on n vertices and ; 6= X � V (G).

(a) Show that at most jXj components of G�X have at most 2r vertices.

(b) Via the Tutte-Berge Formula 3.9.1, show that �0(G) � n2(1� 1

2r+1).

(c) Find in�nitely many examples with �0(G) = n2(1� 1

2r+1).

4: Let G(A;B) be a bipartite graph such that jBj = kjAj, and let f(x) = k for all

x 2 A and f(y) = 1 for all y 2 B. Prove that G has an f -factor if and only if

j�(X)j � kjXj for each set X � A.

5. Let G(A;B) be an n by n bipartite graph with j�(X)j � minfkjXj; ng for all setsX � A and X � B. Prove that G has a k-factor.

6* A square matrix A is doubly stochastic if each of its entries is non-negative and

every row and every column of A has the same sum, s. A permutation matrix is a

matrix with exactly one non-zero entry in each row and column. Prove that if A

is a doubly stochastic, then

A = �1P1 + �2P2 + � � �+ �kPk

where each Pi is a permutation matrix, and �i � 0 are reals satisfyingPk

i=1 �i = s.

7. (a) Prove that every (r�1)-edge-connected r-regular graph has a 1-factor for r � 2.

(b) Find an example of an r-regular (r�2)-edge-connected graph with no 1-factor,

for each r � 2.

Page 35: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

4 Flows and Cuts

In a digraph ~G = (V; ~E), let �+(x) and ��(x) denote the sets of vertices adjacent from x

and to x, respectively. Thus

�+(x) = fy : (x; y) 2 ~Eg ��(x) = fy : (y; x) 2 ~Eg:Let s; t 2 V (G). A static (s; t)- ow is a function f : ~E ! R0 such that for all x 2 V nfs; tg:

Xy2�+(x)

f(x; y) =X

y2��(x)

f(y; x)

This last requirement is known as Kircho�'s Law. The ow in an arc e 2 ~E is f(e). The

value of the ow f from s to t is de�ned by

v(f) =X

y2�+(s)

f(s; y)�X

y2��(s)

f(y; s):

Lemma 4.0.1 For any (s; t)- ow f ,

v(f) =X

y2��(t)

f(y; t)�X

y2�+(t)

f(t; y):

Proof. This follows from Kircho�'s Law. First note that

Xx2V (G)nfs;tg

24 Xy2�+(x)

f(x; y)�X

y2��(x)

f(y; x)

35 = 0:

In the bracketed term, the ow f(e) through an arc e is counted once with positive sign

and once with negative sign, except for arcs containing s or t. So the sum is exactly

Xx2fs;tg

24 Xy2��(x)

f(y; x)�X

y2�+(x)

f(x; y)

35 = 0

which gives the lemma.

4.1 The Max-Flow Min-Cut Theorem

The aim of this section is to give a formula for v(f) when each arc can accept only a

limited ow. The capacity of an arc e 2 ~E is denoted c(e), and we required that the ow

f(e) in arc e is at most c(e) for every arc e 2 ~E. An example of a network with capacities

is shown below.

Page 36: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

s t

2

1

2

1

2

Figure 11 : Flows and cuts

In the network in Figure 11, we could assign a ow of 1 in every arc except the top left

and lower right arc of capacity 2, where the ow can be made 2. It is easily checked that

this is a ow, and its value is 3. It turns out that this is a maximum ow. The max- ow

min-cut theorem gives an algorithm for �nding the largest ow in terms of cuts in any

network

If S � V and s 2 S and t 62 S, then the cut induced by S is the set of arcs from S to

V nS. This set of arcs is denoted (S; S), and is called an (s; t)-cut. The capacity of S is

c(S; S) =X

e2(S;S)

c(e):

Evidently c(S; S) � v(f) for any ow f . The main theorem of this section states that

equality holds for minimum cuts and maximum ows. A minimum (s; t)-cut is an (s; t)-cut

(S; S) with a minimum value of c(S; S). For example, in Figure 11, a minimum cut, such

as (fsg; V nfsg), has size three. A maximum (s; t)- ow is an (s; t)- ow with maximum

value. It is an exercise to check that the set fv(f) : f is an (s; t)- owg has a maximum

value.

Theorem 4.1.1 (Max-flow Min-cut Theorem)

The maximum value of an (s; t)- ow equals the minimum value of an (s; t)-cut.

Proof. Let f be a maximum ow. Then v(f) � c(S; S) for every S with s 2 S and

t 62 S, so v(f) is at most the capacity of a minimum cut. We show that some cut has

capacity v(f) by de�ning a set S � V with c(S; S) = v(f). De�ne S as follows: �rst put

s into S. Then for every arc (x; y) such that x 2 S and c(x; y) > f(x; y), put y 2 S,

and for every arc (y; x) with x 2 S and f(y; x) > 0, put y 2 S. We claim t 62 S and

c(S; S) = v(f). Suppose that t 2 S. Then there exists a path x1x2 : : : xr where xi 2 S for

all i and x1 = s and xr = t and, de�nition of S,

c(xi; xi+1)� f(xi; xi+1) > 0 or f(xi+1; xi) > 0

for each i. Let � be the smallest of all these positive numbers. De�ne a new ow g by

taking

g(xi; xi+1) = f(xi; xi+1) + �

Page 37: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

if c(xi; xi+1)� f(xi; xi+1) > 0, and taking

g(xi+1; xi) = f(xi+1; xi)� �

if f(xi+1; xi) > 0. Then v(g) = v(f) + �, contradicting the maximality of f . We conclude

that t 62 S. Finally, since f(y; x) = 0 for every x 2 S and y 2 S,

v(f) =X

(x;y)2(S;S)

f(x; y)�X

(x;y)2(S;S)

f(y; x)

=X

(x;y)2(S;S)

c(x; y) = c(S; S):

This completes the proof.

The proof of the max- ow min-cut theorem gives an algorithm for �nding a maximum

ow. Start with a ow f . Then one constructs the set S in the theorem, and consider the

cases t 2 S and t 62 S separately. If t 2 S, then we can increase the ow f by � along a

path from s to t. If t 62 S, then f is a maximum ow and v(f) = c(S; S).

4.2 Menger's Theorem in Digraphs

An (a; b)-path in a digraph is a directed path from a to b Recall that a digraph is strongly

connected if and only if each ordered pair (a; b) of its vertices is joined by an (a; b)-path,

and k-arc-connected if the deletion of any k� 1 arcs leaves a strongly connected digraph.

For a pair of vertices (a; b) in a digraph, a set X separates (a; b) if the removal of X

gives a digraph with no (a; b)-path. It is possible to generalize Menger's Theorem 2.5.3

to digraphs in the following manner:

Theorem 4.2.1 (Edge-Form of Menger's Theorem in Digraphs)

The maximum number of arc-disjoint (a; b)-paths in a digraph is equal to the minimum

number of arcs separating (a; b). In particular, a digraph is k-arc-connected if and only if

each ordered pair its vertices is joined by k arc-disjoint directed paths.

The analog of Menger's Theorem 2.5.2 for k-vertex-connected digraphs is also true. These

two theorems as well as Hall's Theorem 3.2.1 follow from the max- ow min-cut theorem,

due the following result about integer valued ows:

Theorem 4.2.2 (Integrality Theorem)

Let f be a maximum (s; t)- ow in a digraph where all arcs have integer capacities. Then

f(e) is an integer for all e 2 ~E.

Page 38: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. In the proof of the max- ow min-cut theorem, the number � is an integer. So

if t 2 S, then we can increase the value of a given ow by � along a path from s to t. If

t 62 S, then c(S; S) is the value of a maximum ow, and it is clearly an integer. Since the

total capacity is �nite, the algorithm must terminate.

We leave the veri�cation of Menger's and Hall's Theorems as an exercise. The max- ow

min-cut theorem can also be generalized to the case of multiple sources and sinks. The

vertex form of the max- ow min-cut theorem involves restrictions on the capacities c(x)

of vertices: we require that for every vertex x 2 V ,

X(x;y)

f(x; y) � c(x):

An (s; t)-cut is a set S of vertices such that there is no (s; t)- ow in ~G�S. The capacity ofan (s; t) cut S is de�ned by c(S) =

Px2S c(x). The vertex form of the max- ow min-cut

theorem is as follows:

Theorem 4.2.3 (Vertex-Form of Max-Flow Min-Cut Theorem)

The maximum value of an (s; t)- ow equals the minimum capacity of an (s; t)-cut.

In fact this theorem follows from the max- ow min cut theorem: we can create a new

digraph ~H = (W; ~F ) from ~G = (V; ~E) by replacing each x 2 V with two vertices x� and

x+, joined by the arc (x�; x+), and add the arc (x+; y�) to ~F whenever (x; y) 2 ~E. By

adding appropriate capacities on the arcs, one can show

minS�W

c(S; S) = minS�V

c(S)

and the value of a maximum ow in H equals the value of a maximum ow in G. The

details are left as an exercise.

4.3 Maximum Cuts

In this section, a cut in a graph G is the set of edges (X; Y ) for some partition of V (G)

into two sets X and Y . The size of the cut is e(X; Y ), the number of edges between X

and Y . A maximum cut is a cut of maximum size. In other words, a maximum cut is a

maximum bipartite subgraph of G. The �rst result we state shows that a maximum cut

of G has size at least 12jE(G)j. The proof uses the pigeonhole principle { and the idea will

be used in later material many times.

Proposition 4.3.1 Every graph has a cut containing half of its edges.

Page 39: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. We consider the sum of the sizes of all cuts (X; Y ) of a graph G = (V;E). Recall

that the number of ordered partitions (X; Y ) of a set V into two parts is exactly 2jV j,

since there are 2jV j ways to choose X, and this choice completely determines Y . Therefore

X(X;Y )

e(X; Y ) = 2Xe2E

2jV j�2 = 2jV j�1jEj:

Since there are 2jV j ordered partitions of V , there must be a partition (X; Y ) such that

e(X; Y ) � 1

2jV j� 2jV j�1jEj = 1

2jEj

as required.

The above proposition does not give an algorithm for �nding a cut containing 12jEj edges.

The next result gives an alternative proof which gives a linear time algorithm. A balanced

cut is a cut (X; Y ) such that jXj � jY j � jXj+ 1.

Theorem 4.3.2

Let G be a graph. Then there exists a balanced cut (X; Y ) of G of size at least 12jE(G)j.

Proof. For convenience, we assume jV (G)j = 2n (the case that jV (G)j is odd is dealt

with similarly). Let (A;B) be any partition of G, where A = fa1; a2; : : : ; ang and B =

fb1; b2; : : : ; bng. Let X1 = fa1g and Y1 = fb1g. At stage i � n, if

e(ai; Yi�1) + e(bi; Xi�1) � e(bi; Xi�1) + e(ai; Yi�1)

then we let Xi = Xi�1 [ ai and Yi = Yi�1 [ bi, otherwise we let Yi = Yi�1 [ ai and

Xi = Xi�1[ bi. Let X = Xn and Y = Yn. Then (X; Y ) is a balanced cut of G. It remains

to check e(X; Y ) � 12jE(G)j. It is su�cient to prove that e(Xi; Yi) � 1

2jEij where Ei is the

set of edges in the subgraph induced by Xi [ Yi. For i = 1, this is clear, since X = fa1gand Y = fb1g. Suppose the statement is true for i < j. Then by induction

e(Xj; Yj) � e(Xj�1; Yj�1) +1

2e(faj; bjg; Xj�1 [ Yj�1)

� 1

2jEj�1j+ 1

2e(faj; bjg; Xj�1 [ Yj�1)

� 1

2jEjj:

This completes the proof.

The algorithmic question of �nding a maximum cut is well-researched. It is known that it

is NP-hard to determine the size of a maximum cut in a general graph. According to the

above theorem a maximum cut can be found in linear time if it has size 12jEj, however it

is more challenging to �nd a maximum cut if its size is larger than 12jEj. A breakthrough

Page 40: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

came with an algorithm of Goemans and Williamson, who showed that in polynomial

time, one can �nd a cut in a graph whose size is 87% of the maximum cut, and that it is

NP-hard to �nd a cut of size 94% of the maximum cut. Their algorithm starts with the

following idea: sprinkle the vertices of the graph along a rigid circle, and replace the edges

of the graph with springs. The vertices are free to move along the circle, until equilibrium

is reached. At equilibrium, one then checks all possible cuts of the graph along a diameter

of the circle, and one is likely to obtain larger cuts than guaranteed by Proposition 4.3.1.

Page 41: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

4.4 Exercises

1. Find a maximum (s; t)- ow in the network shown in Figure 12, starting with the

given ow f consisting of unit ow in the (s; t)-path of length four at the top of

the diagram. Also �nd a minimum cut in the network.

2. Prove the edge-form of Menger's Theorem 4.2.1 for digraphs by using the max- ow

min-cut theorem and the integrality theorem.

3. Prove the bipartite f -factor theorem using the max- ow min-cut theorem and the

integrality theorem.

4. Prove that every graph G contains a bipartite subgraph H such that dH(v) �12dG(v) for every v 2 V (G).

5. Prove that every graph G contains a cut (X; Y ) such that e(X; Y ) � 12e(G) and

e(X) � 13e(G) and e(Y ) � 1

3e(G), where e(X) and e(Y ) are the number of edges

in G[X] and G[Y ] respectively.

6. Prove that for every graph G = (V;E), there is a partition (X1; X2; : : : ; Xr) of V

such thatrXi=1

i�1Xj=1

e(Xi; Xj) � (1� 1

r)jEj:

7. Let ~G = (V; ~E) be a digraph. Prove that there exists a cut (X; Y ) of ~G such that

the number of arcs from X to Y is at least 14j ~Ej.

Page 42: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

5 Vertex and Edge-Colouring

A proper k-edge-colouring of a graph G is a function � : E(G) ! f1; 2; : : : ; kg such that

if e; f 2 E(G) intersect, then �(e) 6= �(f). The minimum k for which G has a proper

k-edge-colouring is denoted �0(G), and referred to as the edge-chromatic number of G.

Another way of saying it is: �0(G) is the minimum number of matchings which partition

E(G). A graph G is k-edge colourable if �0(G) � k, and k-edge-chromatic if �0(G) = k.

It is left as an exercise to verify that �0(Kn) = n� 1 when n is even and �0(Kn) = n if n

is odd. The main theorem we prove on edge colouring is Vizing's Theorem, which states

that �0(G) is either �(G) or �(G) + 1, where �(G) denotes the maximum degree of G.

A proper k-colouring of a graph G is a function � : V (G) ! f1; 2; : : : ; kg such that if

u; v 2 V (G) are adjacent, then �(u) 6= �(v). The chromatic number of G is denoted �(G),

and is the minimum k for which G has a proper k-colouring. Thus �(G) is the minimum

number of independent sets which partition V (G). For example, �(Kn) = n, and a graph

G is bipartite if and only if �(G) � 2. We say that a graph is k-colourable if �(G) � k

and k-chromatic if �(G) = k. The main theorem on vertex colouring is Brook's Theorem,

which states that �(G) � �(G) when G is not an odd cycle or a complete graph (for

those graphs one has �(G) = �(G) + 1).

5.1 Vizing's Theorem

For any graph, it is clear that �0(G) � �(G) { all the edges incident with a vertex of

degree �(G) must have di�erent colours in a proper colouring. The main theorem we

prove on edge-colouring is Vizing's Theorem. Before proceeding to Vizing's Theorem, we

discuss edge-colourings of bipartite graphs. K�onig's Theorem states that �0(G) = �(G)

for any bipartite graph G { thus determining �0(G) in bipartite graphs is relatively easy:

Theorem 5.1.1 (K�onig's Theorem)

For any bipartite multigraph G, �0(G) = �(G).

First Proof. The �rst proof we give relies on Hall's Theorem 3.2.1: we know by

Corollary 3.2.2 that every k-regular bipartite multigraph has a k-colouring. So if we can

show that G is contained in a �(G) regular bipartite multigraph, then we are done. To

prove this, add edges to G until we obtain a multigraph H such that all vertices in one

part of G = G(A;B), say A, have degree �(G). Now take two copies of H, say H1(A;B)

and H2(A;B), and if y 2 B has degree d, add �(G)�d multiple edges between the vertex

of H1(A;B) corresponding to y and the vertex in H2(A;B) corresponding to y. Then we

obtain a graph J which is �(G)-regular, so �0(J) = �(G) = �0(G).

Second Proof. The second proof we give is by induction on jE(G)j. If jE(G)j = 0 then

the theorem is clear. Suppose jE(G)j > 0 and let e = fx; yg 2 E(G). By induction, the

Page 43: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

graph G� e is �(G)-edge-colourable. If there is a colour i which is not used on any edges

incident with x or y, then we can assign colour i to fx; yg to get a �(G)-edge-colouring

of G. So we may assume that the colours at x are 1; 2; : : : ;�(G) � 1 and the colours

at y are 2; 3; : : : ;�(G). Let H be the subgraph of G spanned by edges of colours 1 and

�(G). Then the component of H containing x is a path or a cycle. It cannot be a cycle,

otherwise x would be incident with an edge of colour 1 and colour �(G) in the cycle,

contradicting that �(G) is missing at x. So the component of H containing x is a path,

P . If P ends at y, then since P has odd length we would have an edge of colour 1 at y, a

contradiction. So P ends at a vertex z 6= y. Now z is not incident with any edge of colour

1 or �(G) in G�E(P ), otherwise we could extend the path or the edge is incident with a

vertex w of the path, but then the colouring would not be a proper edge-colouring. Now

interchange colours 1 and �(G) along the path P , to obtain a proper colouring of G� e

where the colour 1 does not appear at x. Finally, assign e the colour 1 to get a proper

colouring of G.

The next remarkable theorem tells us that �0(G) is either the maximum degree of G or

one more than that. For example, for the complete graph Kn, we have �0(Kn) = n � 1

if n is even and �0(Kn) = n if n is odd (the �rst statement does require a proof { it is

equivalent to saying we can partition Kn into n�1 edge-disjoint matchings when n is even

{ this is left as an exercise). Perhaps surprisingly, it is NP-hard to determine whether

�0(G) = �(G) or �0(G) = �(G) + 1.

Theorem 5.1.2 (Vizing's Theorem)

For every graph G of maximum degree �, �0(G) = � or �0(G) = � + 1.

Proof.* Since � di�erent colours are needed at a vertex of degree � in G, �0(G) � �.

Now we prove by induction on jE(G)j that G is � + 1-colourable, which gives �0(G) �� + 1. If jE(G)j = 0, then the theorem is clearly true. Suppose jE(G)j > 0, and let

fx; y1g 2 E(G) be any edge of G. By induction, G1 = G � fx; y1g is � + 1-colourable.

Now if there is a colour, say colour c1, missing at y1 and missing at x, then we can assign

edge fx; y1g the colour c1. So we can assume that an edge on x, say fx; y2g has colour

c1. Let c be a colour missing at x { we know c appears on y1 otherwise fx; y1g could

be coloured with colour c. In general, we construct a maximal sequence y1; y2; : : : ; yk of

neighbours of x such that ci is missing at yi and fx; yi+1g has colour ci for all i < k, and

colour ck is missing at yk and does not appear on any edge fx; yg for y 62 fy1; y2; : : : ; ykg.

Case 1. For all i < k, ck 6= ci. In this case, a proper edge-colouring of G is found by

recolouring fx; yjg with colour cj for all j � k. Note that the colouring is proper since

colour cj is missing at yj for all j � k. An illustration is provided in Figure 13.

Page 44: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

y1y4

y5

y2y3

yk

c1c2

ck�1

c3

c4

no c1

no c2no c3

no c4

no c5

no ck

y1y4

y5

y2y3

yk

c2c3

ck

c4

c5

c1

Figure 13 : Rotate colours around x

Case 2. For some i < k, ck = ci. In this case, recolour all edges fx; yjg for j � i with

colour cj { so far we still have a proper colouring since colour cj is missing at yj for

j � i. This is shown for i = 4 in the left diagram in Figure 14. Then fx; yi+1g is the newuncoloured edge, since the edge fx; y1g has now received colour c1. Now let H denote the

subgraph of G consisting of edges of colour c and edges of colour ck. Then the components

of H are paths and cycles, since H has maximum degree at most two. Also x; yi+1; yk all

have degree one in H, so either x; yi+1 are in di�erent components of H or x; yk are in

di�erent components of H. We consider these cases separately. If x; yi+1 are in di�erent

components of H, then we interchange colours c and ci in the component of H containing

yi+1. In this new colouring, colour c is missing at x and missing at yi+1, so we can assign

the edge fx; yi+1g the colour c (see Figure 14). If x; yk are in di�erent components of H,

then recolour the edge fx; yjg for i < j < k with colour cj, so that fx; ykg is the new

uncoloured edge. Then H is unchanged (we never recoloured edges of colour c or ci) so we

may interchange the colours c and ck in the component of H containing yk. In doing so,

c becomes a missing colour at x and yk, so the uncoloured edge fx; ykg can be coloured

with colour c. This completes the proof.

y1y4

y5c

c4

y2y3

yk

c1c2c3

ck�1

c4 y1y4

y5

y2y3

yk

c2c3

ck�1

c4

c

c1

c4

c

Figure 14 : Interchanging colours in components of H

Page 45: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

5.2 Brook's Theorem

The chromatic number of a graph G is the minimum number of colours which can be

assigned to the vertices of G so that no two adjacent vertices have the same colour. This

number is denoted �(G). Unlike in the case of edge-colouring, �(G) can be arbitrarily

small relative to �(G): for example �(G) � 2 if and only if G is a bipartite graph. One

also notices that �(G) = �(G) + 1 is possible, since �(Kn) = n and �(C) = 3 when C is

an odd cycle. In fact these are the only cases where �(G) = �(G) + 1:

Theorem 5.2.1 (Brook's Theorem) Let G be a connected graph of maximum degree

�. Then �(G) � �(G), unless G is an odd cycle or a complete graph.

To prove this theorem, we will �rst prove a proposition which often gives a better bound

for �(G) than �(G). The idea is to remove vertices of small degree from the graph and to

notice that whenever we remove a vertex of degree k from a graph G and obtain a graph

with a proper (k+ 1)-colouring, then we can reinsert the vertex and colour it to obtain a

proper (k + 1)-colouring of G.

Proposition 5.2.2 Let d(G) denote the largest possible value of �(H) taken over all

subgraphs of G. Then �(G) � d(G) + 1.

Proof. By de�nition, G has a vertex v of degree at most d(G). When we remove this

vertex from G, we obtain a graph G0 and clearly d(G0) � d(G). Therefore G0 is (d(G)+1)-

colourable. Now v has d(G) neighbours, so we can de�nitely assign v a colour from the

d(G) + 1 colours used to colour G0, to obtain a proper colouring of G.

A graph is called d-degenerate if d(G) � d, and we refer to d(G) as the degeneracy of the

graph. So the proposition states that a d-degenerate graph is (d+ 1)-colourable. We will

use this fact later on when colouring planar graphs.

Proof of Brook's Theorem. Since a graph G of maximum degree � is de�nitely �-

degenerate, �(G) � �+1, by the last proposition. We omit the proof that if �(G) = �+1

then G is an odd cycle or a complete graph.

Recall that the contracting of a pair of vertices fa; bg � V (G) is the graph G=fa; bgobtained from G by identifying the vertices a and b and joining the new vertex ab to all

neighbours of a and all neighbours of b. Suppose a and b are not adjacent in G; then a

k-colouring of G=fa; bg gives a k-colouring of G: all vertices of G have the same colour

as G=fa; bg, except the vertices a and b are both assigned the colour of ab. So the set

of all proper colourings of G=fa; bg is in 1-1 correspondence with the set of all proper

colourings of G in which a and b receive the same colour. Similarly, the set of colourings

of G� e for an edge e 2 E(G) is in 1-1 correspondence with the colourings of G in which

the endpoints of e get di�erent colours. These two notions are key reductions throughout

the theory of graph colouring.

Page 46: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

5.3 Exercises

1. Determine �(G) and �0(G) for each of the graphs drawn below. Determine also

d(G), the degeneracy of each graph. You need not justify your answers.

G1 G2

Figure 15

2. Prove that �0(K2n�1) = 2n� 1.

3. Prove that �0(K2n) = 2n� 1.

4. Let G1 and G2 be graphs and suppose that G1 \ G2 is a complete graph. Prove

that �(G1 [G2) � �(G1) + �(G2)� �(G1 \G2).

5. A decomposition of a graph G into bipartite graphs is a collection of edge-disjoint

bipartite graphs B1; B2; : : : ; Bk such that G = B1 [ B2 [ � � � [ Bk. Prove the

following:

(a) if G has a decomposition into k bipartite graphs, then G is 2k-colourable.

(b) K2k has a decomposition into k bipartite graphs.

(c) K2k+1 does not have a decomposition into k bipartite graphs.

(d) Let X be a set of 2k + 1 distinct points in the plane. Prove some three points

in X form a triangle whose largest angle is at least �(1� 1=k).

[Hint: for 0 � i < k de�ne a graph Bi consisting of all edges fa; bg where a; b 2 X

and the line through a and b has slope in the range [tan i�=k; tan(i+1)�=k). Now

use 4(c).]

6. Prove that �(G)�(G) � jV (G)j for any graph G (recall that �(G) is the indepen-

dence number of G.)

Page 47: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

6 Planar Graphs

Roughly speaking, a graph is planar if and only if it can be drawn in the plane without

any two of its edges crossing. More formally, an embedding of a graph G = (V;E) is a

function f : V ! R2 together with a set of continuous curves Ce : e 2 E such that f is

one-to-one and the curve Ce for e = fu; vg has endpoints f(u) and f(v). The graph G

is planar if the curves Ce : e 2 E intersect only at their endpoints { that is any point in

the intersection of two of the curves is an endpoint of both of the curves. A drawing of

G without crossings is called a plane embedding of G, or a plane graph. Thus a graph is

planar if and only if it has a plane embedding. These notions can be made more rigorous

using the terminology of topology and, more generally, we can talk about embeddings

of a graph in a topological space. For example, a geometric realization of a graph is a

topological space whose points are the vertices and such that the edges are homeomorphic

to the closed interval [0; 1]. For details, the reader is referred to the survey of topological

graph theory by Archdeacon.

The main theorem of this section, which we will prove, is a necessary and su�cient

condition for a graph to be planar { and a characterization of planar graphs. Recall that

a subdivision of a graph G is any graph obtained from G by replacing each edge of G

with a path with the same endpoints as the edge, such that paths may meet only at their

endpoints.

Theorem 6.0.1 (Kuratowski's Theorem)

A graph is planar if and only if it contains no subdivision of K5 and no subdivision of

K3;3.

The proof of this theorem is in Section 6.3.

6.1 Euler's Formula

Throughout this section, we deal only with connected graphs. If G is a plane graph, then

R2nG consists of a union of disjoint connected plane regions, which are called faces of G.

The boundary @F of a face F of G is the set of points in the closure of F which are not

in the interior of F . Each plane graph has a face which is in�nite, which we refer to as

the in�nite face. The boundary walk of F , which we also denote by @F , is the closed

walk consisting of edges and vertices in the boundary of F . We denote by F (G) the set

of faces of a plane graph G. The degree of a face F 2 F (G) is the length of the walk @F ,

and denoted deg(F ).

Page 48: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Figure 16

The graph on the left in Figure 16 has six faces, all boundary walks of which are cycles

of length four { so every face has degree four. The tree in the centre has only one face {

the in�nite face { and since a tree on n vertices has n � 1 edges and the boundary walk

goes through each edge twice, the degree of the in�nite face is 2(n� 1). In the graph on

the right, there are two faces, one of degree six and one of degree ten.

The degrees of the faces in a plane graph depend very much on the way the graph is

drawn in the plane: for example, the graph on the right in Figure 16 can be redrawn as

a new plane graph by ipping one of the bridges into the in�nite face, thereby producing

two new faces, both of degree eight. In Section 1.2, we will come back to the issue of

uniqueness of the face degrees.

There is a very useful analog of the handshaking lemma for face degrees in a plane graph.

If we add up the degree of every face F 2 F (G), we observe that every edge of the graph

is counted exactly twice. This is true since an edge in a cycle is counted once for each

of the faces on either side of it, and an edge which is not in a cycle is a bridge (Lemma

1.7.1), and therefore counted twice in one boundary walk. These observations give the

following useful fact:

Theorem 6.1.1

Let G be a plane graph. Then

XF2F (G)

deg(F ) = 2jE(G)j:

For the examples in Figure 16, one checks that the theorem holds. In general, note the

a bridge on the boundary of a face is counted twice in the boundary walk of that face,

whereas all other edges in the boundary are counted once.

Theorem 6.1.1 is very useful in conjunction with Euler's Formula and the handshaking

lemma for proving non-existence of planar graphs with given face and vertex degrees.

Euler's Formula relates jF (G)j, jE(G)j and jV (G)j as follows:

Page 49: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Theorem 6.1.2 (Euler's Formula)

Let G be a connected plane graph. Then

jV (G)j � jE(G)j+ jF (G)j = 2:

The proof of this theorem is quite straightforward: if one proceeds by induction on jE(G)j,starting with trees, where jE(G)j = jV (G)j � 1, then the induction step goes as follows:

for jE(G)j > jV (G)j � 1, if e 2 E(G), then by induction

jV (G� e)j � jE(G� e)j+ jF (G� e)j = 2:

Now sinceG is not a tree, we can choose e to be part of a cycle inG, and so e is not a bridge.

Therefore G� e is connected, and jE(G� e)j = jE(G)j � 1 and jF (G� e)j = jF (G)j � 1.

It follows that

jV (G)j � (jE(G)j � 1) + (jF (G)j � 1) = 2

and this gives Euler's Formula 6.1.2.

As an example of an application, it has been known for millenia that there are only platonic

solids { these are the unique r-regular plane graphs in which all faces have degree s, where

(r; s) 2 f(3; 3); (3; 4); (4; 3); (5; 3); (3; 5)g. For example, lets see why (r; s) = (4; 4) is not

possible. By Theorem 6.1.1, we have 4jF (G)j = 2jE(G)j. By the handshaking lemma,

4jV (G)j = 2jE(G)j. By Euler's Formula 6.1.2, jV (G)j � jE(G)j + jF (G)j = 2. But the

left hand side is zero, so this is a contradiction { so there is no 4-regular plane graph with

all faces of degree four. The platonic solids are shown below.

Another useful application is to give a su�cient condition for non-planarity, rather than

trying to draw the graph in every possible way:

Theorem 6.1.3

Let G be a planar graph containing a cycle. Then jE(G)j � gg�2

(jV (G)j�2), where g is thelength of a shortest cycle inG. In particular, for any planar graphG, jE(G)j � 3jV (G)j�6,and therefore G is 5-degenerate.

Proof. Since every face has degree at least g, Theore 6.1.1 gives gjF (G)j � 2jE(G)j.Putting this in Euler's Formula 6.1.2, we get

jV (G)j � jE(G)j+ 2

gjE(G)j � 2

which, rearranged, gives the required bound on jE(G)j. The right side of the formula

is maximized when g = 3, in which case we get jE(G)j � 3jV (G)j � 6 for all planar

graphs G. By the handshaking lemma, if all vertices of G had degree at least six, then

jE(G)j � 3jV (G)j, a contradiction to what we just proved. So every planar graph has a

Page 50: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

vertex of degree at most �ve. Since every subgraph of G is also planar, this means that

every subgraph of G has a vertex of degree at most �ve, so G is 5-degenerate.

By Theorem 6.1.3, any graph satisfying jE(G)j > gg�2

(jV (G)j � 2) can't be planar. In

particular, K5 is not planar since jE(K5)j = 10 and g = 3, and K3;3 is not planar since

jE(K3;3)j = 9 and g = 4. If a graph is not planar, then neither is any subdivision of it.

So in particular any subdivision of K5 or K3;3 is not planar, and Kuratowski's Theorem

6.0.1 states that these are the two reasons for a graph not being planar: either it contains

a subdivision of K5, or a subdivision of K3;3. We will prove this in Section 6.3.

6.2 Colouring Planar Graphs

Euler's Formula 6.1.2 also can be applied to vertex-colouring of planar graphs. Recall that

a graph is d-degenerate if every subgraph of G (including G itself) has minimum degree

at most d. Also, any d-degenerate graph is (d + 1)-colourable, by Proposition 5.2.2. By

Theorem 6.1.3, every planar graph is 5-degenerate, so this means that every planar graph

is 6-colourable. Here is another example: suppose we have a planar graph G of girth

at least six. Then jE(G)j � 32(jV (G)j � 2) by Theorem 6.1.3, so every subgraph of G

must have a vertex of degree at most two, by the handshaking lemma. Therefore G is

2-degenerate, which means that G is 3-colourable.

In fact, every planar graph is 5-colourable. We prove this theorem, since the ideas can be

used later in Kuratowski's Theorem 6.0.1.

Theorem 6.2.1

Every planar graph is 5-colourable.

Proof.* Proceed by induction on jV (G)j. If jV (G)j � 5, then the theorem is true: just

assign all vertices di�erent colours. Now suppose jV (G)j > 5. If G has a vertex v of

degree at most four, then G � v is 5-colourable by induction, and we can extend this

colouring to v by assigning to v a colour which does not appear on any of its neighbours,

since there were �ve colours but at most four neighbours of v. So now we assume G has

no vertex of degree at most four. Since G is 5-degenerate, by Theorem 6.1.3, G has a

vertex v of degree �ve. If all neighbours of v are adjacent to each other, then they form

a K5, but K5 is not planar, so that is a contradiction. Therefore we can pick neighbours

a and b of v which are not adjacent. Now consider the graph H = G=fa; b; vg { that is,

we contract a; b and v to a single vertex w. By induction, H is 5-colourable. For each

u 2 V (G)nfa; b; vg, assign to u the colour it received in H. Assign a and b the colour

that w received in H { we can do that since a and b are not adjacent. Finally, we've used

four colours on the neighbours of v, since a and b got the same colour, so there is a �fth

colour which can be assigned to G. This proves that G is 5-colourable.

Page 51: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Perhaps the most famous theorem in all of graph theory is the 4-colour theorem, proved

by Appel and Haken (1976): every planar graph is 4-colourable. Unfortunately, there is

no proof known which is not computer assisted. The shortest proof is currently the one

in Robertson and Seymour (1997).

Theorem 6.2.2 (4-Colour Theorem)

Every planar graph is 4-colourable.

6.3 Drawing Planar Graphs*

We remarked earlier that there are many plane embeddings for a given planar graph G;

even the degrees of the faces can change with di�erent embeddings. In fact, we can go

from any plane embedding of G to any other plane embedding of G using the notion of

Stereographic Projection. In particular, we can make any face of a plane embedding the

in�nite face:

Proposition 6.3.1 Every face of a plane embedding G0 of a graph G is the in�nite face

of some plane embedding of G. Furthermore, if every edge of G0 is a straight line, then

we can ensure that every edge of the new embedding is also a straight line.

Proof.* Let S denote a sphere of diameter one placed so that the xy-plane is tangent to

S at the origin. Then wrap the plane embedding G0 of G around the sphere. Formally,

consider the function f which maps a point (x; y) to the point (x; y; z) 2 S which is at

height 1 � 1=(1 + x2 + y2) in the plane de�ned by the line through the origin and (x; y)

and the z-axis. Note that f is a bijection between R2 and SnN , where N = (0; 0; 1)

denotes the north pole of S. Let H be the image of G0 under f . Keeping H �xed, rotate

the sphere until some face F of H contains the north pole of S. Now apply f�1 to get

an embedding of G, namely f�1(H), with the property that the face F of f�1(H) is the

in�nite face. The second statement of the theorem is left as an excercise.

Figure 17 : Stereographic projection

Page 52: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Perhaps the most natural embedding would be to try to draw the edges as striaght lines.

This can be done, by the following theorem:

Theorem 6.3.2 (Fary's Theorem)

Every simple planar graph has a plane embedding in which all edges are straight line

segments.

Proof. By Theorem 6.1.3, every planar graph is 5-degenerate. Now we proceed by

induction on jV (G)j, the number of vertices in a planar graph G. If jV (G)j � 3, then

the result is obvious. Suppose G is a planar graph with jV (G)j > 3. We may assume

that G is maximal planar { so G + e is not planar anymore for any edge e. Then if G0

is a plane embedding of G, all faces of G0 have degree three, otherwise we could add a

diagonal edge in some face. Now let v be a vertex of degree at most �ve in G0. Then

G0 � v has a plane embedding, call it H, such that all the edges are straight lines. Let

v1; v2; : : : ; vk be the neighbours of v, where k � 5. Then there is a cycle C � H such

that V (C) = fv1; v2; : : : ; vkg { since every face of G0 is of degree three, every face of H

containing non-neighbours of v on its boundary is a triangle. This means that C is the

boundary of a face of H. By Proposition 6.3.1, we can make C the boundary of a �nite

face of H. Now place v in the interior of C so that v sees all vertices of C { that is, we can

draw a straight line segment from v to each vertex v1; v2; : : : ; vk. This is an embedding of

G in which all edges are straight line segments.

Concerning properties of the drawing of a planar graph, we have seen that there are,

in general, plane embeddings with di�erent face degrees (Figure 16). Furthermore, we

can't ensure that the faces are convex, even for 2-connected planar graphs, for example

K2;3 has no embedding in which all faces are convex. However, Tutte showed that every

3-connected planar graph can be drawn with convex faces and straight line edges, and

Whitney's Theorem states that the embedding is unique.

Theorem 6.3.3 (Tutte-Whitney Theorem)

Every 3-connected planar graph has a unique embedding in the plane in which every face

is a convex polygon and every edge is a straight line segment.

A natural physical interpretation is to nail down the edges of a cycle which is a face in

a plane embedding of G, and replace the edges with rubber bands. Then, allowing this

dynamical system to reach equilibrium in terms of the laws of physics, Tutte proved that

the plane embedding at equilibrium is a convex straight line embedding. We do not prove

this or Theorem 6.3.3 here.

Page 53: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

6.4 Duality*

Let G be a plane graph, and let G� denote the pseudograph obtained by placing a vertex

vf in the interior of each face f 2 F (G) and whose edges are de�ned as follows: (1)

for each bridge on the boundary of a face f 2 F (G), join vf to vf with a loop in G�

passing through the bridge. (2) for each edge e 2 E(G) on the boundary of distinct faces

f; g 2 F (G), join vf and vg by an edge in G� which crosses e. Then G� is referred to as

the plane (or combinatorial) dual of G. Examples of duals are shown in Figure 18:

Figure 19 : Duality

There are many uses of duality in planar graphs, but for brevity we mention one example

in colouring. The map colouring problem is to colour the faces of a plane graph in such a

way that whenever two faces share an edge, they have di�erent colours. Now by drawing

the dual of a planar graph, we see that the map colouring problem on a plane graph is

equivalent to the vertex colouring problem in the dual, except that we have to remove all

loops in the dual. By the 4-colour theorem, this means that the regions of any map can

be coloured in four colours in such a way that adjacent regions have di�erent colours. In

fact, even more is true: if we want to prove the 4-colour theorem for plane graphs, it is

su�cient to consider maximal plane graphs on at least three vertices(i.e. if we add any

edge we get a non-planar graph). In a maximal plane graph, all faces are bounded by

triangles (exercise), and therefore the dual of a maximal plane graph is a cubic graph. It

can also be checked that every maximal plane graph, except a triangle, is 3-connected, and

that the dual is therefore also 3-connected. The oldest approach to the 4-colour theorem

is to try to prove that every cubic graph is 3-edge-colourable: in fact this is equivalent to

the 4-colour theorem.

Theorem 6.4.1 Every planar graph is 4-colourable if and only if every cubic planar

3-connected graph has edge-chromatic number three.

Proof. Let G be a planar graph and let G0 be a plane embedding of G. Then G0 is

contained in a maximal plane graph G1. If every planar graph is 4-colourable, then G1 is

Page 54: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

4-colourable which means that the map G�1 is 4-face-colourable and cubic. Since G1 is 3-

connected, no edge of G�1 is a bridge so every edge of G

�1 is on the boundary of exactly two

faces. Now assign edge-colour 1 to those edges of G�1 on the boundary of faces of colour

1 and 2, or colour 3 and 4, assign edge-colour 2 to those edges of G�1 on the boundary

of faces of colours 1 and 3, or colours 2 and 4, and assign edge-colour 3 to all remaining

edges of G. One checks that this is a proper 3-edge-colouring of G�, as required.

De�ne G;G0; G1; G�1 as in the �rst part of the proof. If every cubic planar graph is 3-edge-

colourable, then G�1 has a proper 3-edge-colouring, with colours 1, 2 and 3. That is to say

that G�1 = M1 [M2 [M3 where Mi is the perfect matching consisting of edges of colour

i. Then H1 =M1 [M2 is a plane graph and H2 =M1 [M3 is a plane graph. Colour the

faces of H1 with colours 1 and 2, and colour the faces of H2 with colours 1' and 2'. To

get a colouring of the faces of G�1, and hence a colour of G, colour a face F with colour

(i; j0) if it is contained in a region of colour i in H1 and a region of colour j0 in H2. Then

the number of colours we used is four, and one checks that this a proper colouring of the

faces of G�1.

Tait conjectured that all 3-connected cubic planar graphs are hamiltonian { i.e. contain

a spanning cycle { but this is false, as a counterexample of Tutte on 46 vertices showed.

If Tait's conjecture had been true, then we could colour the hamiltonian cycle red and

blue, and the remaining matching with green to get a proper 3-colouring of every cubic

3-connected graph.

6.5 Kuratowski's Theorem

In this section, we'll give a proof of Kuratowski's Theorem 6.0.1. Before doing so, we

de�ne �-graphs: a �-graph is any graph consisting of the union of three internally disjoint

paths between two points. Recall that a block of a graph is a maximal 2-connected

subgraph of G, or a bridge of G. To prove Kuratowski's Theorem 6.0.1, we need the

following decomoposition theorem for graphs with no �-subgraphs:

Proposition 6.5.1 Let G be a connected graph containing no �-graph. Then every

block of G is a cycle or K2 and G is a tree of cycles and K2s, as shown in Figure 19 below.

Proof.* Let B be a block of G. If B 6= K2, then B has an ear-decomposition, by

Theorem 2.2.1. If B is not a cycle, then we can �nd a cycle C � B and an ear P � B

internally disjoint from C such that P [ C is a �-graph, a contradiction. So every block

is a cycle. We prove the second statement by induction on the number of blocks in G. It

is clear if G has only one block, since then G is a cycle or K2. Suppose G has at least two

blocks, and let v be a cutvertex of G. Then G = G1 [ G2 where G1 and G2 share only

the vertex v. By induction, G1 and G2 are trees of cycles and K2s, and joining G1 and

G2 at v, we get that G itself is a tree of cycles and K2s.

Page 55: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Figure 19 : Tree of cycles and K2s

In the chapter on connectivity, we saw that it is true that every connected graph has a

\tree of blocks" structure { instead of cycles and K2s, we allow any pattern of blocks

intersecting in a tree like manner. An endblock of a graph is a block of G containing at

most one cutvertex of G. In Proposition 6.5.1, these correspond to the leaves of the tree

in the tree structure of blocks. In Figure 19, there are exactly fourteen endblocks. A �nal

bit of notation is the following: if C is a cycle in a plane graph G, then int(C) denotes

the set of vertices of G inside C, and ext(C) denotes the set of vertices of G outside C.

Proof.* We already saw that if a graph contains a subdivision of K5 or K3;3, then it is

not planar. Now we prove that if G is not planar, then G contains a subdivision of K5 or

K3;3. Let G be a minimal non-planar graph which contains no subdivision of K5 or K3;3.

This means that every proper subgraph of G is planar. We may assume G is connected.

Also we assume jV (G)j > 6 { this is a matter of checking some cases.

Part 1 �(G) � 3.

Suppose, for a contradiction, that v 2 V (G) has degree less than three. Contract an edge

fu; vg 2 E(G). Then G=fu; vg is planar, by minimality of G, and since v has degree at

most two, it follows easily that G is planar. Therefore �(G) � 3.

Part 2 For e 2 E(G), G(e) = G=e�fzeg contains no �-graph, where e is contracted to ze.

Suppose T � G=e�fzeg is a �-graph. Now G=e has a plane embedding, H, by minimality

of G. Now T � H �fzeg splits the plane into three connected regions. So by Proposition

6.3.1, we can assume ze 2 int(C) and ext(C) is non-empty, for some cycle C � H � fzeg.By minimality ofG, G�ext(C) has a plane embedding, G1 (see Figure 20). By Proposition

6.3.1, we can ensure C is on the boundary of the in�nite face in G1. Now combine the

plane graphs H � int(C) (dotted in Figure 20) and G1 to get a plane embedding of G.

Page 56: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Figure 20 : Plane embedding of G1

Part 3 For e 2 E(G), G(e) has at most one vertex of degree one.

Since �(G) � 3, by Part 1, G(e) has no isolated vertices and if G(e) has two leaves, u and

v, then u and v are both adjacent to both endpoints of e. So u and v have degree exactly

three. If e = fx; yg, then the edges fx; yg; fu; xg; fu; yg; fv; xg; fv; yg form a �-graph in

G. By Part 2, this implies G � fu; v; x; yg has no edges, and so the neighbourhood of

every vertex of G�fu; v; x; yg is a subset of fu; v; x; yg. But u and v have degree exactly

three, so there can be at most two vertices in G � fu; v; x; yg, and G has at most six

vertices, a contradiction to jV (G)j > 6 (see Figure 21).

Figure 21 : Vertices of degree one in G(e)

Now we complete the proof. By Part 2 and Proposition 6.5.1, every block of G(e)� fzegis K2 or a cycle, for any e 2 E(G). By Part 3, G(e) has at most one vertex of degree

one, so some endblock of G(e) is a cycle, C. Let fu; vg 2 E(C), where neither u nor v is

a cutvertex of G(e). Then u and v have degree two in G(e), so they are each adjacent to

an endpoint of e. Therefore the subgraph of G induced by V (C) [ e contains a �-graph.

By Part 2, this means no edge of G(e) is vertex-disjoint from C. By Part 3, this means

G(e) = C [ fw; ag for some a 62 V (C), or G(e) = C. Now since jV (G)j > 6, there is

Page 57: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

a path P � C � fwg with jV (P )j � 3 (see Figure 22). The subgraph of G induced by

V (P ) [ e contains a �-graph, by the same argument as above. But if G(e) = C [ fw; ag,then fw; ag is disjoint from this �-graph since jV (C)j � 4, and if G(e) = C, some edge

of C is disjoint from this �-graph since jV (C)j � 5, contradicting Part 2. This completes

the proof.

Figure 22 : The path P � C

6.6 Graphs on Surfaces

In this section, we study drawing graphs on general surfaces without crossings. Rather

than assume background in general topology, we will de�ne everything in elementary

terms, keeping in mind that everything can be made rigorous through topology. The

surfaces we look at will all be orientable: these are closed surfaces which consist of a sphere

with a �nite number of handles (or tube) attached. For example, the torus consists in

attaching one handle to the sphere, and the double torus consists in attaching two handles

to the sphere. The number of handles attached to S is called the genus of S, and denoted

(S). The Euler characteristic of S is �(S), de�ned by 2� 2 (S). For example, the Euler

characteristic of the sphere is two, whereas the euler characteristic of the torus is zero.

Let G be a graph. An embedding of G in S is a map f : V (G) ! S together with a

continuous curve on S joining f(u) to f(v) whenever fu; vg 2 E(G). For example, an

embedding of K5 on the torus is shown below. It is convenient to call a graph toroidal if

it can be embedded on the torus without crossings.

Figure 23 : Toroidal embedding of K5.

Page 58: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

The de�nition of faces in a drawing without crossings, and their boundaries and degrees,

are the same as for plane graphs. For example, in the toroidal embedding of K5 in Figure

23, there are �ve faces, four having degree three and one having degree four. It is a good

exercise to try to embed other graphs, for example K4;4, in the torus.

The genus of a graph G, denoted (G), is the minimum possible value of such that G

embeds without crossings in a surface of genus . So (K5) = 1. The Euler characteristic

of G is �(G) = 2 � 2 (G) )not to be confused with the chromatic number). The Euler-

Poincar�e formula is an analog of Euler's Formula 6.1.2 for surfaces, and it says that the

number of faces in any embedding of a graph on a surface of characteristic � does not

depend on the embedding:

Theorem 6.6.1 (Euler-Poincar�e Formula)

Let G be a graph of Euler characteristic � embedded without crossings in a surface S of

characteristic �, then

jV (G)j � jE(G)j+ jF (G)j = �:

The proof of this theorem can be achieved by induction on e. Actually it is convenient

rather to prove that jV (G)j � jE(G)j � jF (G)j = �(G) + c(G) � 1 where c(G) is the

number of components of G. For instance, if G has a bridge e, then �(G) = �(G � e)

and jF (G)j = jF (G � e)j and c(G � e) = c(G) + 1 so the induction step works. Now

suppose G has no bridges. Then for an edge e 2 E(G) such that �(G � e) = �(G), we

have jF (G� e)j = jF (G)j � 1 and again the induction step works. Finally if �(G� e) =

�(G) � 1, then e must have been the only edge on some handle of S. Then one veri�es

that jF (G � e)j = jF (G)j + 1, so the induction step works. The details are left to the

reader. The formula is called the Euler-Poncar�e Formula 6.6.1, since Poincar�e gave a

topological generalization of it, where edges are replaced by simplices. The �rst proof of

the Euler-Poincar�e Formula 6.6.1 for general � was given by Lhuilier.

A natural consequence of the Euler-Poincar�e Formula 6.6.1 is that jE(G)j � 3jV (G)j�3�

whenever G is a graph which can be embedding in a surface of characteristic � without

crossings. This shows, for example, that K8 cannot be embedding on the torus without

crossings, since jE(K8)j =�82

�= 28 whereas 3jV (K8)j � 3� = 24. Another consequence is

that the degeneracy of a graph G embedded in S without crossings satis�es

d(G) � b6� 6�

jV (G)jc:

So we can extend our result about planar graphs being 6-colourable to higher genus

surfaces.

Page 59: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Theorem 6.6.2 (Heawood's Map-Colouring Theorem)

The chromatic number of a graph embedding without crossings in a surface of character-

istic � � 0 is at most

h(�) = b12(7 +

p49� 24�)c

Furthermore, if G is a minimal h(�)-chromatic graph drawn on a surface of characteristic

� 6= �2, then G = Kh(�).

Proof. First we prove the upper bound h(�) � b12(7+

p49� 24�)c. Let G be embedded

on a surface S of characteristic � without crossings. We may assume that G is a minimal

k-chromatic graph on S, where k = h(�). By Proposition 5.2.2 (or by just deleting a

vertex of small degree) it follows that �(G) � k � 1. Therefore jE(G)j � k�12jV (G)j, by

the handshaking lemma. On the other hand jE(G)j � 3jV (G)j�3�, by the Euler-Poincar�eFormula 6.6.1. Therefore

k � 1

2jV (G)j � 3jV (G)j � 3�

which is the same as

(k � 7)jV (G)j+ 6� � 0:

Since we assumed � � 0, k � 7 follows from the fact that K7 can be embedded on the

torus. Now jV (G)j � k since �(G) � k � 1, so

k2 � 7k + 6� � 0:

This gives 2k � 7�p49� 24�, and we clearly must take the positive square root. This

proves the upper bound on h(�).

* The second part of the proof is to show G = Kk. If G 6= Kk then jV (G)j � k + 2, and

it is an excercise to prove that if jV (G)j = k + 2, then G consists of a pentagon disjoint

from Kk�3 together with all edges between the pentagon on the Kk�3. In particular,

jE(G)j = �k+22

�� 5. This is greater than 3(jV (G)j � �), contradicting the Euler-Poincar�e

Formula 6.6.1. Therefore jV (G)j � k + 3. Now �(G) � k � 1 � 6, and by Brook's

Theorem, G is not k � 1 regular, otherwise it would be k � 1 colourable. Therefore

jE(G)j > jV (G)j(k � 1)

2:

This gives k2 � 4k � 20 + 6� � 0 and so k � 2 +p24� 6�. This is not possible unless

� = �2.

Note that we do not include the case of plane graphs, where h(�) = 4. Surprisingly, this

case also agrees with the above formula for h(�). Also, we avoided � = �2. The full

classi�cation, for all � and even for all surfaces (not only orientable ones) was given by

Page 60: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Ringel and Youngs. It should be notes that better results can be obtained for a graph of

girth g > 3: in that case, the Euler-Poincar�e Formula 6.6.1 can be used to give

jE(G)j � g

g � 2(jV (G)j � �)

and then one can colour these graphs with fewer colours, by repeating the pattern of the

proof of Theorem 6.6.2.

6.7 Characterization of Graph on Surfaces*

We give the following quote from the book of Mohar and Thomassen:

\Graphs on surfaces form a natural link between discrete and continuous

mathematics. They enable us to understand both graphs and surfaces bet-

ter. It would be di�cult to prove the celebrated classi�cation theorem for

(compact) surfaces without the use of graphs. Map color problems are

usually formulated and solved as problems concerning graphs."

Which graphs are embed in a surface of genus without crossings? A consequence of

one of the deepest theorems in mathematics, called the Graph Minors Theorem, due to

Robertson and Seymour, is that for any , there exists a �nite list of graphs H such that

any graph which does not embed on a surface of genus contains a graph inH as a minor.

Kuratowski's Theorem 6.0.1 is such a result for planar graphs, where H0 = fK5; K3;3g.Unfortunately, for surfaces of higher genus, the known list is prohibitively long, and the

smallest possible list is not known. The shortest proof that there is a �nite list is due to

Thomassen.

A very natural question on embedding graphs is the following: in the last section, we

gave embeddings of graphs on surfaces where some of the faces were a bit unorthodox:

they are not homeomorphic to plane disks. While it is true that every 2-connected planar

graph has an embedding where every face is homeomorphic to a disk, it is not known if

every 2-connected graph can be embedded in some surface in such a way that all faces

are homeomorphic to disks. This is known as the strong embeddability conjecture, and

it remains open It has many other consequences in graph theory; for example, does every

2-connected graph contain a set of cycles such that every edge is in either one or two of

the cycles? For planar graphs, this is clear: the boundaries of the faces will do, and then

every edge is in exactly two cycles. The conjecture also has implications for the existence

of nowhere zero 5- ows. For more information on graphs on surfaces, see Archdeacon or

Mohar and Thomassen.

Page 61: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

6.8 Exercises

1: A maximal plane graph is a plane graph G = (V;E) with n � 3 vertices such that

if we join any two non-adjacent vertices in G, we obtain a non-plane graph.

(a) Draw a maximal plane graphs on six vertices.

(b) Show that a maximal plane graph on n points has 3n � 6 edges and 2n � 4

faces.

2: Which of the graphs in Figure 1 is planar? Justify your answer.

Figure 1

3: Show that every planar graph with no triangles is 3-degenerate, and 4-colourable.

4. (a) Prove that if G is a graph of girth g which can be embedded in a surface of

characteristic � without crossings, then jE(G)j � g(jV (G)j � �)=(g � 2).

(b) Use (a) to prove that the graph in Figure 2 is not toroidal. [2]

Figure 2

Page 62: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

5: Prove that K5;5 does not embed on the torus, and give a drawing of K4;4 on the

torus.

6: (a) The crossing number of a graph G is the smallest number of pairs of edges

which cross, taken over all drawings of G in the plane, where no three edges cross

at a single point. Find the crossing number of K5 and the crossing number of K3;3.

(b) Prove that the crossing number of Kn;n is at most

jn2

k2jn� 1

2

k2:

[Hint: draw the vertices in one part of Kn;n along the y-axis and the vertices in

the other part of Kn;n along the x-axis.]

Page 63: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

7 Extremal Graph Theory

Let ex(n;H) denote the maximum number of edges that an n-vertex graph can have

without containing a copy of the graph H. This is known as the extremal number for

H, and in this section we study the value of ex(n;H) for various H. A graph on n

vertices with no H and with ex(n;H) edges is called an extremal graph. Let's start

by observing ex(n;K2) = 0 and ex(n;K1;2) = bn=2c { for the last statement, notice

that a graph with no K1;2 must be a matching. In fact, more generally, ex(n;K1;s) can

be determined quite easily: a graph with no K1;s has maximum degree at most s � 1.

Therefore ex(n;K1;s) = b(s� 1)n=2c, by the handshaking lemma. There is one problem:

this is only valid for n � s. If n � s, then the answer is ex(n;K1;s) =�n2

�. This is a

general trend: if n is less than jV (H)j, then ex(n;H) =�n2

�. However, we are usually

interested in the behaviour of ex(n;H) for large values of n. The �rst case of interest

which we study is the case H = Kr.

7.1 Tur�an's Theorem

To go about constructing a graph on n vertices with many edges and no complete graph

on r + 1 vertices, take disjoint sets V1; V2; : : : ; Vr, where jV1j+ jV2j+ : : : jVrj = n and join

all vertices in Vi to all vertices in Vj for all i 6= j and i; j 2 f1; 2; : : : ; rg. This graph is

called a complete r-partite graph { for r = 2 it is a bipartite graph with parts V1 and V2.

Note that an r-partite graph cannot possibly contain Kr+1, since �(Kr+1) = r + 1. The

number of edges an r-partite graph is

Xi6=j

jVijjVjj:

Since jV1j + jV2j + � � � + jVrj = n, this expression is maximized when all the Vis are as

equal in size as possible, so jVij = bn=rc or jVij = dn=re for all i 2 f1; 2; : : : ; rg.

The Tur�an graph, denoted Tr(n), is the unique r-partite graph all of whose parts have sizes

as equal as possible. For r = 2, this corresponds to a complete bipartite graph with parts

of size bn=2c and dn=2e. So the number of edges in T2(n) is exactly bn2=4c. In general, we

let tr(n) denote the number of edges in Tr(n) { it is not a very nice number to determine,

but it is roughly (1 � 1r)�n2

�. Tur�an's Theorem ?? states that ex(n;Kr+1) = tr(n) when

n � r. But it says even more: the only graph with tr(n) edges and no Kr+1 is Tr(n) { so

Tr(n) is the unique extremal graph. The inductive proof we give is fairly subtle. It relies

on two facts: �rst that we can't add any edges to Tr(n) without creating a Kr+1, and

second, the degrees of Tr(n) are as close together as possible amongst all n-vertex graphs

with tr(n) edges.

Page 64: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Theorem 7.1.1 (Tur�an's Theorem)

Let G be an n-vertex graph containing no Kr+1. Then jE(G)j � tr(n), with equality if

and only if G = Tr(n).

Proof.* We prove the theorem by induction on n, the number of vertices in G, starting

with n = r. The statement we prove is that if G is an n-vertex graph with no Kr+1

and jE(G)j � tr(n), then G = Tr(n). This proves the theorem: if jE(G)j > tr(n) then

delete edges until tr(n) edges remain, but then the graph is Tr(n), and we can't add

any edges to Tr(n) without creating a Kr+1. If n = r, then tr(n) = tr(r) =�rr

�, and

clearly jE(G)j � �r2

�implies G = Kr = Tr(r), as required. Now suppose n > r, and

let G be a graph on n vertices containing no Kr+1 and with at least tr(n) edges. Delete

edges from G until jE(G)j = tr(n). Now Tr(n) is a graph with tr(n) edges with the

largest minimum degree amongst all graphs with tr(n) edges. Therefore �(G) � �(Tr(n)).

Now every vertex of Tr(n) has degree n � bn=rc or n � dn=re, so �(Tr(n)) = n � dn=re.Furthermore, if x has degree �(Tr(n)) in Tr(n), then Tr(n)� fxg = Tr(n� 1). Therefore

tr(n)� �(Tr(n)) = tr(n� 1). This shows that if v is a vertex of smallest degree in G, then

jE(G� v)j = jE(G)j � �(G) � tr(n)� �(Tr(n)) = tr(n� 1):

By induction, G � v = Tr(n � 1). This means that v has degree exactly �(Tr(n)) =

n�en=re. Now since G has no Kr+1, v is joined to vertices in r � 1 parts of Tr(n � 1).

But since v has degree exactly n� dn=re, v must be joined to the r� 1 smallest parts of

Tr(n� 1), which means that G = Tr(n), as required.

There are some very di�erent proofs of Tur�an's Theorem, for example using probability

and using algebra. We refer to Bollob�as for some other proofs. If H is any graph of

chromatic number r � 3, one can prove in theory that ex(n;H) = ex(n;Kr) + n2� for

some real number > 0. This is the Erd}os-Simonovits-Stone Theorem, but the proof is

beyond the scope of this text:

Theorem 7.1.2 * (Erd}os-Simonovits-Stone Theorem)

Let H be a graph of chromatic number r � 3. Then

limn!1

ex(n;H)

ex(n;Kr)= 1:

The proof consists in showing that the theorem is true when H = Tr(N), for any N � r.

For general H, if H has chromatic number r, then H � Tr(N) where N = jV (H)j,so proving the theorem for Tr(N) is enough to prove the theorem for all graphs H of

chromatic number r. We give an explicit example for �nnding the extremal number for a

non-complete graph of chromatic number three:

Proposition 7.1.3 Let G be a graph with bn2=4c + 2 edges and n � 5 vertices. Then

G contains two triangles intersecting in one vertex (a bowtie).

Page 65: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. Proceed by induction on n, starting with n = 5. For n = 5, we have at least

eight edges. The cases must be checked. Now suppose n > 5 and let G be an n-vertex

graph with at least bn2=4c+2 edges. By deleting some edges from G, we can assume that

G has exactly bn2=4c+ 2 edges. Now by the handshaking lemma:

1

2�(G)n �

jn24

k+ 2:

This means �(G) � 2nbn2

4c+ 4

n. If n is even, say n = 2m where m � 3, then

�(G) � m+2

m

and since m � 3 and �(G) is an integer, we have �(G) � bn=2c. Now suppose n = 2m+1

where m � 3. Then

�(G) � 2m2

2m+ 1+

4

2m+ 1< m+

2

m

so again �(G) � bn=2c. Now let v be a vertex of degree �(G) in G. Then

jE(G� v)j �jn24

k+ 2�

jn2

k=j(n� 1)2

4

k+ 2:

By induction, G� v contains a bowtie, so G contains a bowtie.

As an exercise, the reader should construct an n-vertex graph with bn2=4c edges and no

bowtie, for all n � 5. In fact, the reader will notice that the proof depends only on the

base case n = 5, in the sense that we can reduce everything to the case n = 5 by deleting

vertices of small degree. This approach is valid for all graphs of chromatic number at least

three, however, the base cases become very di�cult to verify, and ex(n;H) is generally

very hard to determine exactly.

7.2 K�ovari-S�os-Tur�an Theorem*

The Erd}os-Simonovits-Stone Theorem tells us asymptotically that ex(n;Kr) and ex(n;H)

are the same, provided H has chromatic number at least three. This leaves the case

of chromatic number two { bipartite graphs. Unfortunately, ex(n;H) is a mystery for

a general bipartite graph H, so we restrict our attention to H = Kr;s, the complete

bipartite graph with parts of sizes r and s. Since every bipartite graph H is contained in

the complete bipartite graph with parts of size jV (H)j, this shows that ex(n;H) � cn1�1=h

when jV (H)j = h. Before we prove the main theorem for ex(n;Kr;s), we state a numerical

lemma:

Lemma 7.2.1 Let a1; a2; : : : ; an and positive real numbers and let a be their average. If

a � r, thennXi=1

�air

�� n

�a

r

�:

Page 66: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof This lemma is really saying that the function f(x) =�xr

�is convex when x � r.

So it is enough to show that f 00(x) � 0 for all real x � r. Now

f(x) =x(x� 1) : : : (x� r + 1)

r!

so

f 00(x) = x(x� 1) : : : (x� r + 1) �r�1Yi=0

1

x� i> 0:

Theorem 7.2.2 (K�ovari-S�os-Tur�an Theorem)

Let r; s be positive integers, and suppose r � s. Then

ex(n;Kr;s) � cn2�1=r

where c is a constant depending only on r and s.

Proof. Let G be an n-vertex graph not containing Kr;s. The number of sets of r vertices

of G is exactly�nr

�. Now for a vertex v 2 V (G) of degree d(v), there are exactly

�d(v)r

�sets of size r in the neighbourhood of v. So the total number of sets of size r which are

in the neighbourhood of a vertex is

Xv2V (G)

�d(v)

r

�:

Note that we might have counted some sets of size r more than once. But what we do

know is that no set of size r could have been counted s times, otherwise that set of size r

would be in the neighbourhood of s vertices in V (G), and that would give a Kr;s in G. So

Xv2V (G)

�d(v)

r

�� (s� 1)

�n

r

�:

Applying Lemma 7.2.1,

n

�2jE(G)j=n

r

�� (s� 1)

�n

r

�:

After a calculation, we get jE(G)j � cn2�1=r.

The Zarankiewicz Problem asks for the maximum number of ones in a 0-1 matrix which

contains no r by r submatrix of 1s. Using the K�ovari-S�os-Tur�an Theorem, it is possible

to show that there are at most cn2�1=r ones in such a matrix. This follows by noting that

every 0-1 matrix is the incidence matrix of a bipartite graph, and the bipartite graph

cannot contain Kr;r if the matrix has no r by r submatrix of 1s. This problem has been

solved only in the cases r = 2 and r = 3, and remains open even for r = 4.

Page 67: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

8 Ramsey Theory

Ramsey theory quali�es the statement that in a su�ciently large irregular system, there

must be a subsystem in which there is complete order. In the particular case of graph

theory, Ramsey's Theorem 8.0.3 says that every su�ciently large graph contains either a

complete graph of order k or an independent set of size k. The graph Ramsey number

R(s; t) is minimum number n such that every graph on n vertices contains either an

independent set of size s or a complete graph of order t. Note that R(s; t) and R(t; s) are

equal. That R(s; t) is �nite is given by the following theorem:

Theorem 8.0.3 (Ramsey's Theorem for Graphs)

For all integers s; t � 2,

R(s; t) � R(s� 1; t) +R(s; t� 1):

In particular, R(s; t) � �s+t�2s�1

�.

Proof. We proceed by induction on s + t. The theorem is true if s = 2 or t = 2, since

R(1; t) = 1 and R(2; t) = t for all t � 1. Now suppose s > 2 and t > 2. Let G be a

graph with R(s� 1; t) +R(s; t� 1) vertices. Then for a vertex v 2 V (G), there are either

R(s � 1; t) vertices of G adjacent to v or R(s; t � 1) vertices which are not adjacent to

v. If there are R(s� 1; t) vertices adjacent to v, then amongst those vertices, there must

be a complete graph of order s � 1 or an independent set of size t. In the latter case,

we are done, and in the former, a complete graph of order s� 1 in the neighbourhood of

v together with v gives a complete graph of order s in G. A similar argument works if

R(s; t�1) vertices of G are not adjacent to v. Therefore R(s; t) � R(s�1; t)+R(s; t�1).

The second statement follows by induction on s+ t, since

�s+ t� 2

s� 1

�=

�s+ t� 3

s� 2

�+

�s+ t� 3

t� 2

�:

An equivalent statement of the theorem is to say that if we colour the edges of a complete

graph red and blue, then we are guaranteed to �nd either a red Ks or a blue Kt { the blue

edges are the ones missing from the graph G and the red ones are in G in the theorem

above. The theorem can be slightly improved in the case R(s � 1; t) and R(s; t � 1) are

both even: in this case one can get R(s; t) � R(s� 1; t) +R(s; t� 1)� 1. The details are

left as an exercise.

A graph on R(s; t)� 1 vertices containing no Ks and no independent set of size t is called

a Ramsey graph. Constructions of graphs without Ks and without independent sets of

size t are most generally given by a technique known as the probabilistic method { it is

Page 68: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

accepted as a very di�cult problem to give explicit constructions of Ramsey Graphs. In

fact, the value of R(s; t) is not known for any pair (s; t) where s; t > 5. It is known that

R(3; 3) = 6, and this follows from the above proof: R(3; 3) � R(2; 3) + R(3; 2) = 6 and

R(3; 3) > 5 since a cycle of length �ve does not contain a triangle or an independent set

of size three. The Ramsey Numbers R(3; t) are known for t � 9, and R(4; 4) = 18 and

R(4; 5) = 25. No other Ramsey Numbers are known; in particular, R(5; 5) is not known.

Ramsey Theory is much more general than the above description for graphs. For example,

if we colour all�nr

�of the r-element subsets of f1; 2; : : : ; ng, Ramsey's Theorem 8.0.4 says

that there will be k points such that all r-element subsets of the k points are red or all

r-element subsets of the k points are blue.

Theorem 8.0.4 * (Ramsey's Theorem for Set Systems)

Let r; s; t be positive integers. Then there exists a number N = R(r)(s; t) such that if

we colour the r-element subsets of f1; 2; : : : ; Ng with two colours, then either we �nd an

s-element set all of whose r-element sets are red or a t-element set all of whose r-element

subsets are blue.

Upper bounds for the numberR(r)(s; t) are extremely large, and can be found by induction,

as in the proof of the last theorem, which is the case r = 2.

8.1 Erd}os-Szekeres Problem*

Ramsey Theory has some nice applications, and we discuss one of them here. Suppose we

are given f(n) points in general position in the plane { this means that no three are in a

straight line. We want to know how large f(n) must be to guaranteee that n of the points

are in convex position { meaning that they form the vertices of a convex n-gon. This

problem is known as the Erd}os-Szekeres Problem. Erd}os and Szekeres conjectured that

f(n) = 2n�2 + 1, and this problem remains open. For small n it is quite easy: f(3) = 3,

and f(4) = 5: to see that f(4) = 5: let the points be x1; x2; x3; x4; x5. If x1; x2; x3; x4 are

not in convex position and then one of those points is inside three of the others. Let's

say x4 is inside x1; x2; x3. If x5 is not inside x1; x2; x3, then x1; x2; x3; x5 are in convex

position, and we are done. So we can assume x5 is inside x1; x2; x3. Then the line through

x4 and x5 does not cross one of the sides of the triangle with vertices x1; x2; x3 { say it

does not cross the side x1x2. Now x1x2x4x5 are in convex position, as required. It can

be shown that f(5) = 9, but this is more complicated. The existence of f(n) for n > 5 is

guaranteed by Ramsey's Theorem 8.0.4:

Theorem 8.1.1

Amongst any set of R(4)(n; 5) points in the plane, there are n points in convex position.

In particular, f(n) � R(4)(n; 5).

Page 69: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

Proof. Let X be a set of R(4)(n; 5) points in the plane. Colour a quadruple of points red

or blue according to whether the triangle formed by the points has no other point of X

inside. Since jXj = R(4)(n; 5) points, there must be n points all of whose quadruples are

red or �ve points all of whose quadruples are blue. But it is impossible to draw �ve points

in the plane so that any four of them form a blue quadruple - this is precisely f(4) = 5!

So there must be n points all of whose quadruples are red { that means all the n points

form a convex polygon.

This theorem gives an upper bound on f(n), but does not tell us how big f(n) really is

as a function of n, since R(4)(n; 5) is very large indeed { in fact R(4)(n; 5) � 2cn2

for some

c > 0. While it is possible to show f(n) � R(3)(n; n), this Ramsey number is also too big

to be of practical use in estimating f(n). The best bound on f(n) known for large n is

f(n) ��2n� 5

n� 3

�+ 2 < 22n�5

and it can be shown that there are 2n�2 + 1 points in the plane such that no n are in

convex position, so 2n�2 + 1 � f(n) < 22n�5 for large n.

Page 70: Introduction to Graph Theory - UCSD Mathematicsjverstra/342.pdf · 1 Introduction Throughout these notes, a graph G is a pair ( V;E ) where V is a set and E is a set of unordered

8.2 Exercises

1: (a) Let G be a graph on n � 4 vertices. Prove that if jE(G)j � bn2=4c + 1, then

G contains two triangles sharing exactly one edge.

(b) Construct a graph on n vertices with bn2=4c edges and which does not contain

two triangles sharing an edge.

2: Prove that ex(n;C5) = bn2=4c+ 1 for n � 6, where C5 is the pentagon.

3: (a) Let G be an r-regular graph of girth at least 2g+1. Prove that for any vertex

v 2 V (G), the number of vertices at distance at most g from v is at least

f(d; g) = 1 + d+ d(d� 1) + +d(d� 1)2 + � � �+ d(d� 1)g�1:

(b) Prove that the Petersen graph has exactly f(3; 5) vertices at distance at most

two from every vertex.

4. Let G(A;B) be a bipartite graph containing no cycle of length six and no K2;3.

Prove that we can delete a quarter of the edges of G to get a subgraph with no

cycles of length four.

[Hint: delete edges independently from di�erent cycles of length four.]

5: (a) Prove that R(s; t) � R(s; t�1)+R(s�1; t)�1 when R(s; t�1) and R(s�1; t)

are both even.

(b) Use (a) to show that R(3; 4) = 9.

[Hint: for (a) use the fact that every graph with an odd number of vertices contains

a vertex of even degree. For (b), create a graph on f0; 1; 2; : : : ; 7g where i is joinedto i+ 3; i+ 4 and i+ 5 mod 8.]

6: Prove that f(n) � R(3)(n; n).

[Hint: colour fx; y; zg red if in clockwise order around the triangle with vertices

x; y and z, x appears before y and y appears before z.]