0% found this document useful (0 votes)
8 views

graph-theory

This document is a set of notes on Graph Theory, covering definitions, common graphs, connectivity, and various theorems related to the subject. It serves as a comprehensive guide for a course taught at Cambridge in Lent 2021, detailing key concepts such as graph isomorphism, trees, bipartite graphs, and more advanced topics like Hall's Theorem and Ramsey Theory. The notes are structured with sections and subsections, providing a clear framework for understanding the principles of graph theory.

Uploaded by

Himanish
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

graph-theory

This document is a set of notes on Graph Theory, covering definitions, common graphs, connectivity, and various theorems related to the subject. It serves as a comprehensive guide for a course taught at Cambridge in Lent 2021, detailing key concepts such as graph isomorphism, trees, bipartite graphs, and more advanced topics like Hall's Theorem and Ramsey Theory. The notes are structured with sections and subsections, providing a clear framework for understanding the principles of graph theory.

Uploaded by

Himanish
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

Graph Theory

Adam Kelly ([email protected])


November 6, 2021

Graph theory is an area of combinatorics which has lots of fun problems and plenty of
interesting theorems.
This article constitutes my notes for the ‘Graph Theory’ course, held in Lent 2021 at
Cambridge. These notes are not a transcription of the lectures, and differ significantly
in quite a few areas. Still, all lectured material should be covered.

Contents
1 Introduction 2
1.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Common Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Subgraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.3 Graph Isomorphism . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.4 Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.5 Edges and Distance . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Bipartite Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 Hall’s Theorem 13
2.1 Matchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Matching in Bipartite Graphs . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Hall’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Corollaries of Hall’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 Connectivity 19
3.1 Measuring Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Preparing for Menger’s Theorem . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Actually Menger’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4 Edge Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4 Planar Graphs 25
4.1 Defining Planar Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.2 Which Graphs are Planar? . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5 Graph Colouring 29
5.1 Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.2 Brooks’ Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.3 Colouring Planar Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.4 Colouring Graphs on (Other) Surfaces . . . . . . . . . . . . . . . . . . . . 33

1
Adam Kelly (November 6, 2021) Graph Theory

5.5 Edge Colouring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

6 Extremal Graph Theory 36


6.1 Eulerian Circuits and Hamiltonian Cycles . . . . . . . . . . . . . . . . . . 36
6.2 Complete Subgraphs and Turan’s Theorem . . . . . . . . . . . . . . . . . 39
6.3 The Zarankiewicz Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.4 The Erdős-Stone Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

7 Ramsey Theory 43
7.1 Ramsey Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.2 Infinite Ramsey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.3 Ramsey Numbers for Hypergraphs . . . . . . . . . . . . . . . . . . . . . . 46
7.4 Lower Bounds for Ramsey Numbers . . . . . . . . . . . . . . . . . . . . . 46

8 The Probabilistic Method 48


8.1 Random Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
8.2 Random Graphs and Chromatic Number . . . . . . . . . . . . . . . . . . . 49
8.3 Structure of Random Graphs . . . . . . . . . . . . . . . . . . . . . . . . . 50

9 Algebraic Methods in Graph Theory 53


9.1 A Motivating Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
9.2 The Adjacency Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
9.3 Moore Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

§1 Introduction
For many people, ‘Graph Theory’ is a first course in combinatorics. It’s an area with
a big focus on problem solving, and it can give a perspective on many other areas of
mathematics.

§1.1 Definitions
We will begin this handout on graph theory naturally by defining what a graph is.

Definition 1.1 (Graph)


A graph is an ordered pair G = (V, E) where V is the set of vertices, and E ⊆
{{x, y} | x, y ∈ V, x 6= y} is a set of unordered pairs of vertices called edges.

We have a natural way of drawing a graph. For each vertex we have a point in the plane,
and for each edge we draw a line between the corresponding pair of vertices.

Example 1.2 (Example of a Graph)


The ordered pair (V, E) where V = {1, 2, . . . , 6} and E = {{1, 2}, {2, 3}, . . . , {5, 6}}
is a graph.

1 2 3 4 5 6
This graph is known as P6 , a path on 6 vertices.

2
Adam Kelly (November 6, 2021) Graph Theory

§1.1.1 Common Graphs


There are some graphs that will appear repeatedly when working on problems involving
graph theory, and we will define them now.

Definition 1.3 (Path)


We define Pn to be the graph V = {1, . . . , n}, E = {{1, 2}, {2, 3}, . . . , {n − 1, n}} as
shown.
···
1 2 3 n−1 n

We call this a path on n vertices, and say it has length n − 1.

Definition 1.4 (Cycle)


We define Cn (for n ≥ 3) to be the graph V = {1, . . . , n}, E = {{1, 2}, . . . , {n −
1, n}, {n, 1}} as shown.
1
n 2

3
...

7 4

6 5
We call this the cycle on n vertices.

Definition 1.5 (Complete Graph)


The complete graph on n vertices Kn is the graph {1, . . . , n} and E = {{i, j} |
i 6= j ∈ V }.

n=3 n=4 n=5


Note that there is an edge between every pair of vertices.

Definition 1.6 (Empty Graph)


We define the empty graph on n vertices Kn to have V = {1, . . . , n} but E = ∅.

Remark. In our definition of a graph, we don’t allow1 loops, and there cannot be

1
These limitations are inherent in our definition, where we use sets rather than multisets.

3
Adam Kelly (November 6, 2021) Graph Theory

multiple edges between the same set of vertices.


Multiple edges
Loops

You can define graphs where such things are allowed, but for now we will outlaw them.
We also note that edges are unordered pairs, so for now edges have no direction.
To be slightly more succinct, we will use some shorthand notation.
Notation. If G = (V, E) is a graph, and we have some edge {x, y} ∈ E, we will denote
it by xy. We will also define |G| = |V |, and e(G) = |E|.

Example 1.7 (Vertices and Edges of Kn )


k

Consider the graph Kn . We have |Kn | = n, and e(Kn ) = 2 , as there is an edge
between any pair of vertices.

§1.1.2 Subgraphs
Now we will define the notion of a subgraph, in the natural way.

Definition 1.8 (Subgraph)


We say that H = (V 0 , E 0 ) is a subgraph of G = (V, E) if V 0 ⊆ V and E 0 ⊆ E.

Informally, H is a subgraph of G if we can remove vertices and edges from G to get H.


Let’s look at some examples.

Example 1.9 (Example of a Subgraph)


The graph on the right is a subgraph of the graph on the left.

We are also going to use some notation for removing an edge or a vertex from a graph.
Of course, when removing a vertex you also have to remove the edges connecting to it.
Notation (Adding/Removing Vertices & Edges). For an edge xy or a vertex x, we
define G − xy to be the graph G with the edge xy removed, and G − x to be G with
vertex x removed, along with all edges incident to x. We will also define G + xy to be
G with the edge xy, and G + x to be G with the vertex x.
An easy way to get a subgraph is by taking a subset of the vertices and seeing what
edges you get from the original graph.

4
Adam Kelly (November 6, 2021) Graph Theory

Definition 1.10 (Inducted Subgraph)


If G = (V, E) is a graph and X ⊆ V , the subgraph inducted by X is defined to
be G[X] = (X, {xy ∈ E | x, y ∈ X}).

§1.1.3 Graph Isomorphism


Now that we have defined graphs, it’s natural to define some notion of isomorphism.

Definition 1.11 (Graph Isomorphism)


Let G = (V, E) and H = (V 0 , E 0 ) be graphs. We say that f : V → V 0 is a graph
isomorphism if f (u)f (v) ∈ E 0 ⇐⇒ uv ∈ E.
If there is a graph isomorphism between G and H then we say they are isomorphic.

Now for the following discussion, fix some graph G = (V, E), and let x ∈ V .

Definition 1.12 (Neighbourhood)


If xy ∈ E, then we say that x and y are adjacent. We define the neighborhood
of x to be the set N (x) = {y ∈ V | xy ∈ E} of all vertices adjacent to x.

Note that as in the diagram below, x is not in its own neighborhood.

x
N (x)

Definition 1.13 (Degree)


We define the degree of a vertex x to be d(x) = |N (x)|. This is equal to the number
of edges that are incident to x.

Definition 1.14 (Regularity)


A graph G is said to be regular if all of the degrees are the same. We say G is
k-regular if d(x) = k for all x ∈ V .

Example 1.15 (Regular and Non-Regular Graphs)


The graphs Kn is n − 1 regular, and Cn is 2-regular. The graph Pn is not regular.

§1.1.4 Connectivity
We now want to define some notion of connectivity, where a vertex u is connected to
vertex v if you can follow some path in the graph to get from u to v.

5
Adam Kelly (November 6, 2021) Graph Theory

x1

x2 v
u

v0
For example, in the graph above we want to say somehow that u and v are connected,
but u and v 0 are not. To do this, we will introduce some more definitions.

Definition 1.16 (uv Path)


A uv path is a sequence x1 , x2 , . . . , xl where x1 , . . . , xl are distinct, x1 = u, xl = v
and xi xi+1 ∈ E.

In the example above, ux1 x2 v is a uv path.


The slight subtlety in this condition is the distinctness condition. For example, if x1 . . . xl
is a uv path and y1 . . . yl0 is a vw path, then x1 . . . xl y1 . . . yl0 may not be a uw path since
we may have reused an edge. Of course, we can just not reuse edges by avoiding cycles.

Proposition 1.17 (Joining Paths)


If x1 . . . xl is a uv path and y1 . . . yl0 is a vw path, then x1 . . . xl y1 . . . yl0 contains a
uw path.

Proof. Choose a minimal subsequence w1 . . . wr of x1 . . . xl y1 . . . yl0 such that


1. wi wi+1 ∈ E.
2. w1 = u, wr = w.
We now claim that w1 . . . wr is a uw path. If this was not the case, then it must fail
on distinctness, so there would exist some z such that the sequence is

w1 . . . wa zwa+2 . . . wb zwb+2 wr ,

but now note that


w1 . . . wa zwb+2 . . . wr
also satisfies the conditions for the subsequence, but is strictly shorter length. This
contradicts the minimality condition.

Now given G = (V, E), let’s define an equivalence relation ∼ on V , where

x ∼ y ⇐⇒ there exists an xy path in G.

Proposition 1.18
∼ is an equivalence relation.

6
Adam Kelly (November 6, 2021) Graph Theory

Proof. Note that ∼ is reflexive and symmetric, and we get transitivity from our
previous proposition.

Example 1.19
In the graph below, the vertices that are the same colour are in the same equivalence
class under ∼.

Definition 1.20 (Connected Graph)


If there is a path between any two vertices in G then we say that G is connected.

Definition 1.21 (Connected Components)


We call the equivalence classes of ∼ on G the components or connected compo-
nents of G.

§1.1.5 Edges and Distance


We can also introduce some useful definitions relating to the edges of a graph.

Definition 1.22 (Minimum/Maximum Degree)


Let G be a graph. The maximum degree of G, 4(G) is defined to be 4(G) =
maxx∈V d(x). Similarly, we define the minimum degree of G, δ(G) to be δ(G) =
minx∈V d(x).

In a k-regular graph as mentioned above, we have 4(G) = δ(G) = k.

Definition 1.23 (Graph Distance)


Let G = (V, E) be a graph. The associated graph distance d : V ×V → R≥0 ∪{∞}
is defined so that d(x, y) is the minimum path length from x to y if it exists, and ∞
otherwise.

Proposition 1.24 (Graph Distance is a Metric)


Let G = (V, E) be a connected graph and let d be the associated graph distance.
Then (V, d) defines a metric space.

Proof Sketch. We have d(x, y) = 0, and d(x, y) = d(y, x) (taking the shortest path

7
Adam Kelly (November 6, 2021) Graph Theory

in the opposite direction), and d(x, z) ≤ d(x, y) + d(y, z) as we can find path from
x to z by taking paths from x to y and y to z and adjoining them, and this puts an
upper bound on d(x, z).

§1.2 Trees
We will now discuss a special class of graph called trees. This class is quite restrictive
(yet is quite useful), and they have some nice properties.
To define what a tree is, we first need a notion of when a graph is acyclic.

Definition 1.25 (Acyclic)


A graph G is said to be acyclic if it does not contain any subgraph isomorphic to
a cycle, Cn .

Example 1.26 (Example of Acyclic/Non-Acyclic Graphs)


In the example below, the two graphs are both acyclic.

Two non-acyclic graphs are shown below. The subgraphs isomorphic to C4 and C3
are highlighted.

Definition 1.27 (Tree)


A tree is a connected, acyclic graph.

Example 1.28 (Examples of Trees)


The following three graphs are trees.

8
Adam Kelly (November 6, 2021) Graph Theory

Proposition 1.29 (Characterising Trees)


The following are equivalent.
(a) G is a tree.
(b) G is a maximal acyclic graph (adding any edge creates a cycle).
(c) G is a minimal connected graph (removing any edge disconnects the graph).

Proof. (a) =⇒ (b). By definition G is acyclic. Let x, y ∈ V such that xy 6∈ E. As


G is connected, there is an xy path P . So xP y then defines a cycle.
(b) =⇒ (a). By definition G is acyclic. So for a contradiction assume G is not
connected and let x, y be vertices from different components. Now note G + xy is
acyclic, but this contradicts the claim that G is maximally acyclic.
(a) =⇒ (c). By definition G is connected. Suppose, for a contradiction, that there
exists some vertices x, y ∈ E with x 6= y and G − xy is connected. But then there is
some xy path P that does not use the edge xy, so xP y is then a cycle, contradicting
that G is acyclic.
(c) =⇒ (a). By definition G is connected. Again for a contradiction, assume
that G contains a cycle C. Then let xy be an edge on C. We claim G − xy is
still connected. If u, v ∈ V (G − xy) then let P be a path in G from u to v. If
xy does not appear as consecutive vertices on this path, then u is connected to v.
Otherwise, we can consider a new path where we replace x, y with the other vertices
in C − xy in order. Thus u and v are still connected. This contradicts the minimal
connectedness of G.

Definition 1.30 (Leaf)


Let G be a graph. A vertex v ∈ V (G) is a leaf if d(v) = 1.

For example, the tree below has three leaves.

In general, trees has a leaf.

9
Adam Kelly (November 6, 2021) Graph Theory

Proposition 1.31 (Trees Have Leaves)


Every tree T with |T | ≥ 2 has a leaf.

Proof. Let T be a tree with |T | ≥ 2, and let P be a path of maximum length


in T , with P = x1 . . . xk . We claim that d(xk ) = 1. Observe that deg(xk ) ≥ 1,
since xk xk−1 ∈ E. If xk is adjacent to another vertex y 6= xk−1 , then either y ∈
{x1 , . . . , xk−2 }, which would imply thar T contains a cycle, or y 6∈ {x1 , . . . , xk−2 },
then x1 . . . xk y is a path longer than P , which violates its maximality.

Remark. This proof gives us two leaves in T , which is the best we can hope for consid-
ering Pn is a tree with exactly two leaves.

Proposition 1.32 (Edges of a Tree)


Let T be a tree. Then e(T ) = |T | − 1.

Proof. We will do induction on n = |T |. If n = 1, this is trivial as there is only


one edge. Now given T with at least 2 vertices, let x be a leaf in T , and define
T 0 = T − x.
T 0 must be acyclic, since we have only removed vertices. T 0 must also be connected
since for all u, v ∈ V (T 0 ) there exists a path from u to v in T that does not use x,
so it is also a path from u to v in T 0 . Thus T 0 is a tree. Thus by induction, T 0 has
n − 2 edges, and e(T ) = e(T 0 ) + 1 = |T | − 1.

Now lets think about trees as subgraphs of other graphs.

Definition 1.33 (Spanning Tree)


Let G be a graph. We say T is a spanning tree of G if T is a tree on V (G) and is
a subgraph of G.

Tree

Spans all vertices

Spanning trees are useful in a number of contexts, one of which is giving a sensible
ordering to the vertices of a graph. They are particularly useful because of the following
result.

Proposition 1.34 (Connected Graphs have Spanning Trees)


Every connected graph contains a spanning tree.

10
Adam Kelly (November 6, 2021) Graph Theory

Proof. A tree is a minimal connected graph. So take the connected graph and
remove edges until it becomes a minimal connected graph. Then this will be a
subgraph of the original graph, and will thus be a spanning tree.

§1.3 Bipartite Graphs


The next type of graph we will look at is bipartite graphs.

Definition 1.35 (Bipartite Graphs)


A graph G = (V, E) is bipartite if V = A ∪ B where A ∩ B = ∅ and all edges
xy ∈ E have either x ∈ A, y ∈ B or x ∈ B, y ∈ A.

Example 1.36 (Example of Bipartite Graphs)


The graph below is bipartite, with vertices in the set A being coloured red and
vertices in the set B being coloured blue.

Bipartite
V =A∪B
An example of a non-bipartite graph is C5 . To see this, we can start by choosing a
vertex to be in A (without loss of generality), then the adjacent vertices must be in
B, but then their adjacent vertices must be in A, but then there is an edge between
two vertices in A. This is shown below.

C5 can’t be bipartite

The argument given for C5 works in general.

Proposition 1.37 (Bipartite Cyclic Graphs)


The cycle C2k+1 is not bipartite, and the cycle C2k is bipartite.

Proof. Assume that C2k+1 is bipartite. Then there must be disjoint sets A and B,
and as 2k + 1 is odd, we must have (without loss of generality), |A| > |B|. Now
let’s count the edges between A and B. This must be 2|A| and also 2|B|, as every
vertex has degree 2. But then |A| = |B|, which is a contradiction.

11
Adam Kelly (November 6, 2021) Graph Theory

For C2n , we can let vi ∈ A if i is even and vi ∈ B if i is odd. Then a vertex i only
has edges to vertices i − 1 and i + 1 (mod 2), which have opposite parity. Thus all
edges are between A and B, as required.

There is then a natural question: given some arbitrary graph G, how do we determine
if a given graph is bipartite? It turns out that there is a nice check for ‘bipartness’. We
will state the result and then do some setup before we prove it.

Proposition 1.38 (Bipartite Criterion)


A graph G is bipartite if and only if G contains no odd cycles.

We need to first develop some theory regarding circuits. Informally, a circuit is like a
cycle where we can revisit vertices.

Definition 1.39 (Circuit)


A circuit is a sequence x1 . . . xl where x1 = xl and xi xi+1 ∈ E. The length of the
circuit is l − 1, the number of edges traversed in the circuit.

Definition 1.40 (Odd Circuits)


If the length of a circuit is odd, then we say it is an odd circuit.

Proposition 1.41
An odd circuit contains an odd cycle.

Proof. We will prove this by induction on the length of the circuit. For a circuit of
length 3, the circuit must be a cycle. In general, let C = x1 . . . xl be our circuit. If
x1 , . . . , xl−1 are distinct, then C is a cycle and we are done.
Otherwise, there exists some z ∈ C that is repeated. We write

C = x1 . . . xa zxa+2 . . . xb zxb+2 . . . xl .

We define C 0 = x1 . . . xa zxb+2 . . . xl and C 00 = zxa+2 . . . xb z. The length of C 0 and


C 00 is strictly less than the length of C. One of these circuits must have odd length,
and by induction that odd circuit contains an odd cycle.

We can now prove our original bipartness criterion, that a graph is bipartite if and only
if it contains no odd cycles.
Proof (Bipartite Criterion). If G was bipartite and contained an odd cycle, then
there exists an odd cycle that is bipartite. But this is a contradiction.
Now if G is not bipartite, we can induct on the number of vertices. For |G| = 1,
this holds. Now if G is not connected, let C1 , . . . , Ck be the components of G.
We may now apply our induction to each component of G to obtain a bipartition
V (Ci ) = Ai ∪ Bi for each i ∈ 1, . . . , k. Then A = A1 ∪ . . . Ak and B = B1 ∪ Bk is a
bipartition for the whole graph.

12
Adam Kelly (November 6, 2021) Graph Theory

We may now assume without loss of generality that G is connected. Fix some vertex
v ∈ V , and define

A = {u ∈ V | d(u, v) is odd}
B = {u ∈ V | d(u, v) is even}

We claim that A ∪ B is a bipartition.


Assume (for a contradiction) that u1 is adjacent to u2 and d(u1 , v) = ∼ d(u2 , v)
(mod 2). Then there exists paths P1 from v to u1 and P2 from u2 to v with
|P1 | ≡ |P2 |. But this implies that vP1 u1 u2 P2 defines a odd circuit in G. Therefore,
by our previous proposition, G contains an odd cycle, which is a contradiction.

§2 Hall’s Theorem
In this section, we will build up our knowledge of matchings so that we can prove the
first theorem of the course – Hall’s theorem.

§2.1 Matchings
An appropriate place to start is probably by defining what a matching is.

Definition 2.1 (Matching)


A matching of G is a collection of edges M ⊆ E so that ∀e1 , e2 ∈ M with e1 6= e2
has e1 ∩ e2 = ∅.

Allowed Not allowed

Definition 2.2 (Saturated)


Given a graph G = (V, E) and a matching M in G, we say that a vertex v ∈ V is
saturated by M if there exists an edge in M containing v.

The matching B saturates


every vertex

M ⊆E

A matching where every vertex is saturated (such as the above) is known as a per-

13
Adam Kelly (November 6, 2021) Graph Theory

fect matching. However, there is no restriction in general on how many vertices are
saturated by a matching.

§2.2 Matching in Bipartite Graphs


Matchings are particularly interesting in bipartite graphs. We will be interested in the
following question: given a bipartite graph G = (A ∪ B, E), when can I find a matching
saturating A?

A B

A is saturated by M ⊆ E

This question is the same as asking when is there a function f : A → B where xf (x) ∈ E
that is an injection.
In trying to answer this question, we might try and think about why it may not be
possible. The simplest reason is when B isn’t large enough to have an injection, when
|B| ≤ |A|. In a similar way, we might have a graph is big enough, but that isn’t true for
a small part of the graph, like below.

B0

A0

What Hall’s theorem says is that this issue is the only obstruction to creating such a
matching.

Definition 2.3 (Neighbourhood of a Vertex Set)


[
If X ⊆ V , then we define N (X), the neighbourhood of X to be N (X) = N (x).
x∈X

With the notion of the neighborhood of a set of vertices, we can rephrase the issue
mentioned about as |N (A0 )| < |A0 | for some subset A0 ⊆ A. We will use this notation in
our statement for Hall’s theorem.
Before we prove the theorem, we will need to prepare a little bit.

Definition 2.4 (M -Alternating Path)

14
Adam Kelly (November 6, 2021) Graph Theory

Let G = (V, E) be a graph with a matching M in G. We say that a path P = x1 . . . xl


is M-alternating if xi xi+1 is alternately in M and not in M .

In M

Some path P in G

Another example of an M -alternating path is the one below.

If we saw the path above in the graph, and we knew that the end vertices was not
saturated, then we could change the edges that are in M , so we would still have a
matching. This move will be key in our proof of Hall’s theorem.

We are going to call this configuration an augmented path.

Definition 2.5 (M -Augmenting Path)


Given a graph G = (V, E) and a matching M in G, an M -alternating path P =
x1 . . . xl is said to be M -augmenting if x1 and xl are not saturated.

Proposition 2.6
If M is a matching in G of maximum size, then there are no M -augmenting paths.

Proof. If there is an M -augmenting path in G, then we can flip the edges of M


along P to find a strictly larger matching.

An important observation is that an M -alternating path in a bipartite graph G = (A ∪


B, E) with P = x1 . . . xl , with x1 ∈ A and x1 x2 ∈ M , then x2k+1 x2k+2 ∈ M , and vice
versa.

§2.3 Hall’s Theorem


We are now ready to state and proof Hall’s matching theorem, which formalises the ideas
mentioned in the previous section.

Theorem 2.7 (Hall’s Theorem)


Let G = (A ∪ B, E) be a bipartite graph. Then there exists a matching saturating
A if and only if every subset A0 ⊆ A satisfies |N (A0 )| ≥ |A0 |.

15
Adam Kelly (November 6, 2021) Graph Theory

Proof. First we prove the forward (and easy) direction. Let A0 = {x1 , . . . , xt } ⊆ A.
We have matching edges x1 y1 , . . . , xt yt ∈ M ⊆ E, and thus {y1 , . . . , yt } ⊆ N (A0 ),
and thus |N (A0 )| ≥ |A0 |.
Now for the other (harder) direction, which is that this condition implies the exis-
tence of such a matching. Choose a matching M in G with |M | maximized. For a
contradiction, assume there is some vertex a0 ∈ A that is not saturated by M .
We inductively define sets Ai ⊆ A, Bt ⊆ B by setting A0 = {a0 }, B0 = ∅. We will
maintain, for all t, that
1. |At | = t + 1, |Bt | = t.
2. Every vertex in At ∪ Bt is the endpoint of an alternating path that started at
a0 .
3. At \{a0 } is matched to Bt .
So given At , Bt , we need to define At+1 , Bt+1 .
First consider N (At ). We have |N (At )| ≥ |At | = t + 1 > |Bt |. So N (At )\Bt is
non-empty. So let bt+1 ∈ N (At )\Bt . Observe that bt+1 can be reached along an
alternating path which started at a0 . Call y ∈ At such that ybt+1 ∈ E. Then y can
be reached along an alternating path starting at a0 . Let P = a0 x1 . . . xl y be such
an alternating path. Since a0 x1 6∈ M , xl y ∈ M . Hence P bt+1 is a alternating path.
Now, bt+1 is saturated by M , as otherwise P bt+1 would be an M -augmenting path,
which is a contradiction. So let at+1 bt+1 ∈ M . We claim at+1 6∈ At , since At
is matched to Bt , and bt+1 6∈ Bt . So we may define At+1 = At ∪ {at+1 } and
Bt+1 = Bt ∪ {bt+1 }. We can check that what we claimed before holds.
Since at+1 6∈ At , and bt+1 6∈ Bt , we have |At+1 | = |At | + 1 and |Bt+1 | = |Bt | + 1.
Also every vertex is the endpoint of an alternating path starting at a0 by construc-
tion. Also At+1 \{a0 } is matched to Bt+1 since At \{a0 } is matched to Bt , and by
construction.
This completes the construction of At , Bt for all t. Then if t > |A|, then |At | > |A|,
but At ⊆ A, which is a contradiction.

§2.4 Corollaries of Hall’s Theorem


So Hall’s theorem gives us a nice way to guarantee the existence of matchings that
saturate a part of a bipartite graph. We are going to use Hall’s theorem to prove some
interesting results.

Corollary 2.8
A k-regular bipartite graph contains a perfect matching.

Proof. Let G = (A ∪ B, E), and let A0 ⊆ A. We want to show that |N (A0 )| ≥ |A0 |
so that we may apply Hall’s theorem.
We will count the number of edges between A0 and N (A0 ) in two different ways.
We know that each vertex in A0 has degree k, so there is k|A| edges. But on the

16
Adam Kelly (November 6, 2021) Graph Theory

other hand, the number of edges in N (A0 ) is |N (A0 )k|. Thus |N (A0 )k| ≥ |A0 |k, so
|N (A0 )| ≥ |A0 |, and by Hall’s theorem there exists a matching saturating A.
We claim that |B| = |A|. Indeed, the number of edges between A and B is k|A| and
is also k|B|, and thus |A| = |B|. So a matching saturating A also saturates B. So
there exists a perfect matching.

We can also consider an extension of Hall’s theorem. Hall’s theorem tells us when, in a
bipartite graph G = (A ∪ B, E), there is a matching saturating A, but what if we only
wanted a matching of size k?
Let’s say that a matching in G has deficiency d if it saturates |A| − d vertices.

Corollary 2.9
Let G be a bipartite graph. Then G contains a matching saturating |A| − d vertices
in A if and only if for all A0 ⊆ A, we have |N (A0 )| ≥ |A0 | − d.

Proof. If we have a matching with deficiency d, then this clearly holds.


Now if this condition holds for some graph G = (A ∪ B, E), we define a new graph
G̃ by by setting B̃ = B ∪ {z1 , . . . , zd } where z1 , . . . , zd are distinct from x ∈ A ∪ B,
and we define Ẽ = E ∪ {ei a | i ∈ {1, . . . , d}, a ∈ A}. So G̃ = (A ∪ B̃, Ẽ).
This is a bipartite graph, and we observe that is satisfies Hall’s condition. Thus G̃
has a matching M saturating A. So if we define M 0 by removing all of the edges
with an endpoint in {z1 , . . . , zd }, then M 0 saturates all but at most d vertices in
G.

Another way of stating Hall’s theorem is with set systems.

Definition 2.10 (System of Distinct Representatives)


Gives sets S1 , . . . , Sn ⊂ X where Si is finite for all i. Then we say that x1 , . . . , xn ∈ X
is a system of distinct representatives (or SDR) if they are distinct and xi ∈ Si .

The question is, for what set systems does there exist a system of distinct representatives?
The answer is if they satisfy some Hall-like condition.

Corollary 2.11 (Existence of SDRs)


Given S1 , . . . , Sn ⊆ X, with Si finite, then S1 , · · · Sn has a system of distinct repre-
sentatives if and only if
[
Si ≥ |I|,
i∈I

for all I ∈ {1, . . . , n}.

Proof. If such an SDR exists, then this condition clearly holds.


In the other direction, given S
that this condition holds, we define a graph G by setting
A = {S1 , . . . , Sn } and B = ni=1 Si , with E = {{Si , x} | x ∈ A, i ∈ {1, . . . , n}, x ∈
Si }. Then G = (A ∪ B, E). Now observe that a SDR is exactly a matching in G

17
Adam Kelly (November 6, 2021) Graph Theory

that saturates A.
We check Hall’s condition. Given A0 ⊆ A, then N (A0 ) =
S
Si ∈A0 Si . Thus

[
N (A0 ) = Si ≥ |A0 |,
Si ∈A0

by our condition. So such a matching exists.

Remark. The existence of SDRs is equivalent to Hall’s theorem.


The last example of using Hall’s theorem will be an application to group theory.

Example 2.12 (Left and Right Coset Representatives)


Let G be a group and let H < G, with G finite. We have the left cosets g1 H, . . . , gk H
and right cosets Hg10 , . . . , Hgk0 .
We want to know does there exists h1 , . . . , hk such that h1 H, . . . , hk H are all of
the left cosets and Hh1 , . . . , Hhk are all of the right cosets. It turns out that this
question is entirely combinatorial, and we can use Hall’s theorem.
Let’s form the bipartite graph (A ∪ B, E) with A = {g1 H, . . . , gk H} and B =
{Hg10 , . . . , Hgk0 } so that there is an edge between gi H and Hgj0 if the cosets have
non empty intersection.
A B
g1 H Hg10
g2 H Hg20

gk H Hgk0

Edges when the cosets have


non-empty intersection

If we had a perfect matching in this graph, then we could pick an element hi in the
(non-empty) intersection of the matched left and right cosets, and then h1 , . . . , hk
would be a set of coset representatives for all of the k left and right cosets.
So we want to show that Hall’s theorem is satisfied. S Given I ⊆ {1, . . . , k}, we want
to show that the number of right cosets intersecting i∈I gi H is at least |I|.
S
Observe that i∈I gi H = |H||I|. Since the right cosets S partition G, and each coset
has size |H|, so the number of right cosets intersecting gi H is at least |I|. Thus
|N ({gi H | i ∈ I})| ≥ |I|, and thus Hall’s theorem is satisfied, and we have a perfect
matching in the graph.

18
Adam Kelly (November 6, 2021) Graph Theory

§3 Connectivity
We have already defined what it means for a graph to be connected, but consider the
following connected graphs:

Clearly these are connected, but they are all ‘connected to different extents’. For exam-
ple, in the first graph, removing any vertex disconnects the graph. In the second graph,
any vertex could be removed and the graph would stay connected. We can also see that
in the first graph, there’s only one path from one vertex to another, whereas in the third
graph there is many. This also seems to correlate with ‘how connected’ a graph is.

§3.1 Measuring Connectivity


So looking at the graphs above, we two natural notions for ‘how connected a graph is’
can be informally described as
1. A ‘deletion notion’ of connectivity, where we consider how connected the graph is
after some vertices are removed.
2. A ‘paths notion’ of connectivity, where we consider how many independent paths
there is between vertices.
One of the main goals of this section will be turning this vague notion into a concrete
concept, and proving an interesting result about how the two notions relate to each
other.
Notation (Removing Vertex Sets). In this section (and for the rest of this article), if
G = (V, E) is a graph and S ⊆ V , we define G − S = G − x1 − x2 − · · · − xl where
S = {x1 , . . . , xl }.
We will begin with a definition.

Definition 3.1 (Cut Vertex)


Let G = (V, E) be a connected graph. We say that v ∈ V is a cut vertex if G − v
is disconnected.

19
Adam Kelly (November 6, 2021) Graph Theory

Cut Vertices

Definition 3.2 (Seperator)


If G = (G, V ) is a connected graph, we say that a subset S ⊆ V is a separator (or
separating set) if G − S is disconnected.

With these concepts defined, we can define our ‘deletion’ notion of connectivity.

Definition 3.3 (Connectivity)


Let G = (V, E) be a graph. The connectivity of G, denoted κ(G), is the size of
the smallest set S ⊆ V such that G − S is disconnected, or just a single vertexa .
a
This is needed for the case of a complete graph.

Example 3.4 (Connectivity of Cn )


Consider the graph Cn for n ≥ 3.

S
1
n 2

Removing one vertex will never disconnect Cn .


3
...

However, removing two vertices can disconnect it.

4 =⇒ κ(Cn ) = 2
7

6 5

Example 3.5 (Connectivity of the Petersen Graph)


We define the Petersen graph with 10 vertices and 15 edges as shown below.

We can see that the connectivity is at most 3, since that is the degree of each vertex,
and also removing two vertices won’t disconnect the graph. Thus the connectivity
of the Petersen graph is exactly 3.

20
Adam Kelly (November 6, 2021) Graph Theory

Definition 3.6 (k-Connected)


We say that a graph G is k-connected if κ(G) ≥ k. In particular, any set S ≤ V (G)
with |S| < k will have G − S connected.

We note this immediately implies that G is 1-connected if and only if it’s connected, and
it is 2-connected if and only if it has no cut vertex.
We can note some basic properties of connnectivity.

Lemma 3.7 (Increasing/Reducing Connectivity)


If G = (V, E) is a k-connected graph and v ∈ V then G − v is (k − 1)-connecteda .
Also, if we have some e ∈ E, then G − E is (k − 1)-connected.
a
Note that it is also possible that G − v is (k + 1)-connected, so connectivity can also increase by
deleting a vertex.

Proof Sketch. Check definitions.

§3.2 Preparing for Menger’s Theorem


We are going to prove Menger’s theorem about connectivity measures, but we have to
do some setting up beforehand.

Definition 3.8 (ab-Seperator)


If G = (V, E) is a graph and a, b ∈ V are distinct vertices, we say that S is an ab
seperator if a and b lie in different components of G − S (so a, b 6∈ S).

a
Removing S
S
a

Definition 3.9 (Seperator)


If G = (V, E) is a graph and F ⊆ E, we say that F is a separator of G if G − F is
disconnected.

We then have a number of useful lemmas, that we will employ later on.
Notation. We let κa,b (G) be the minimum size of an ab separator.

Lemma 3.10
Let G = (V, E) be a graph. Then κa,b (G) ≥ κa,b (G − v), where v ∈ V and v 6= a, b.

21
Adam Kelly (November 6, 2021) Graph Theory

Proof. If G − v has an ab separator S then S ∪ {v} is an ab separator in G.

Lemma 3.11
For a graph G = (V, E), κa,b (G − e) ≥ κa,b (G) = 1, for e ∈ E and a ∼ b.

Proof. If G − e has an ab separator S then S ∪ {x} and S ∪ {y} are ab separators


in G, where e = xy.

Lemma 3.12
Let G = (V, E) be a graph with distinct non-adjacent vertices a, b ∈ V . Also let
κa,b (G) ≥ k. Let S be an ab separator in G, and say G − S = A ∪ C, where A is the
connected component containing a. Then define G̃ as the induced graph G[A ∪ S]
with a vertex x joined to all of S. Then κa,x (G̃) ≥ k.

Proof Sketch. Check definitions.

We can now formalize our ‘independent paths’ notion of connectivity.

Definition 3.13 (Independent Paths)


We say that P1 , . . . , Pk are independent ab paths if each of P1 , . . . , Pk are ab-paths
and all of the vertices in these paths are distinct, apart from a and b.

§3.3 Actually Menger’s Theorem


Finally, we can state and prove Menger’s theorem.

Theorem 3.14 (Menger’s Theorem, First Form)


Let G = (V, E) be a graph, with distinct and non-adjacent a, b ∈ V . If every ab
separator in G has size at least k then we can find k independent ab paths.

Proof. Suppose for a contradiction, assume this is false and let G be the counterex-
ample that
(1) Minimizes κa,b (G)
(2) Subject to (1), minimizes the number of edges in the graph.
Then we observe that κa,b (G − e) = κa,b (G) − 1 for any edge e ∈ E. We will let
k = κa,b (G).
Claim. There exists an ab separator S with |S| = k so that S 6⊆ N (a) and S 6⊆ N (b).
We first observe that N (a) ∩ N (b) is empty. To see this, let x ∈ N (a) ∩ N (b) and
G0 = G − x. Then κa,b (G0 ) ≥ κa,b (G) − 1, thus there are k − 1 independent paths
P1 , . . . , Pk−1 in G0 , then P1 , . . . , Pk−1 , axb are k independent paths in G, and our
graph would then not be a counterexample.

22
Adam Kelly (November 6, 2021) Graph Theory

Now choose a shortest path P = ax1 . . . xl b. Let G0 = G − x1 x2 . We know that


κa,b (G0 ) = k − 1. Therefore there exists an ab separator S 0 of size k − 1. Let A be
the component of a in G0 − S 0 , and B be the component of b in G0 − S 0 . Note that
x1 x2 must have x1 ∈ A and x2 ∈ B.
Note x1 ∼ a, and x2 6∼ a since P is the shortest path. Also note that x2 6= b, since
N (a) ∩ N (b) = ∅.
If S 0 ⊆ N (a), then S 0 ∪ {x2 } is an ab separator of size k, and S 6⊆ N (a), N (b). If
S 0 ⊆ N (b), then S = S 0 ∪ {x1 } is an ab separator of size k, and S 6⊆ N (b), N (a).
Lastly, if S 0 6⊆ N (a) and S 0 6⊆ N (b), then S = S 0 ∪ {x1 } is an ab separator of size k
that is not in N (a) or N (b). So our claim holds.
So let S be an ab separator with |S| = k and S 6⊆ N (a), N (b). Define A, B to be
the components containing a and b in G − S. We also define G̃a as G[A ∪ S] with a
vertex x that joins to all of S. define G̃b likewise. We now have

e(G̃a ) < e(G), e(G̃b ) < e(G).

We also have κa,x (G̃a ) = k = κb,x (G̃b ). Thus G̃a and G̃b satisfy the theorem, by
minimality.
So we can find independent ax paths P1 , . . . , Pk ∈ G̃a and yb paths Q1 , . . . , Qk ∈ G̃b .
Thus we can find k independent ab paths by concatenation and reordering in G, as
desired.

Remark. It should be noted that we need the non-adjacent condition, otherwise there
is no ab separator. Before we write down the proof, we will isolate some notable facts
about connectivity. Also, this result implies Hall’s theorem.
Another form of Menger’s theorem is more common.

Theorem 3.15 (Menger’s Theorem, Second Form)


Let G = (V, E) be a graph. Then G is k-connected if and only for all u, v ∈ V with
u 6= v, there exists k independent uv-paths.

Proof. If u is not adjacent fo v, then apply Menger’s theorem (first form) to find
k-independent uv paths. If they are adjacent, then G0 = G − uv is k − 1 connected,
thus Menger’s theorem (first form) tells us that there are uv independent paths
P1 , . . . , Pk−1 in G − uv. Thus P1 , . . . , Pk−1 , uv are k independent paths. The other
direction is straightforward.

§3.4 Edge Connectivity


We have so far been looking at connectivity related to removing vertices and considering
independent paths. We will now look at connectivity related to removing edges, and we
will see that Menger’s theorem is still useful.
Notation. If G = (V, E) is a graph and F ⊆ E, define G − F = (V, E\F ).

Definition 3.16 (Edge Cut)

23
Adam Kelly (November 6, 2021) Graph Theory

An edge cut in a graph G = (V, E) is a set F ⊆ E so that G − F is disconnected.

F is an edge cut

Definition 3.17 (Cut Edge)


A cut edge e ∈ E is an edge so that G − e is disconnected.

Cut Edge

Now similarly to how we had independent paths before (that didn’t share vertices), we
can define a notion of edge independent paths.

Definition 3.18 (Edge Disjoint Paths)


We say that the uv paths P1 , . . . , Pk are edge disjoint if E(Pi ) ∩ E(Pj ) = ∅ for all
i 6= j.

The blue and red paths are edge disjoint

We can then define edge connectivity (our deletion notion).

Definition 3.19 (Edge Connectivity)


Define the edge connectivity of G, λ(G) to be the smallest |S| with S ⊆ E such
that G − S is disconnected.

Definition 3.20 (k-Edge-Connected)


We say a graph G is k-edge-connected if λ(G) ≥ k. In other words, G − F is
connected for all |F | ≤ k − 1, with F ⊆ E.

We note that G is 1-edge-connected if and only if it is connected, and it is 2-edge-


connected if and only if there is no cut edge.
We have a Menger’s theorem for this notion of connectivity also.

Theorem 3.21 (Menger’s Theorem, Edge Version)

24
Adam Kelly (November 6, 2021) Graph Theory

Let G = (V, E) be a graph, and u, v be distinct vertices of G. If every set of edges


F ⊆ E that separates u from v has size greater than or equal to k, then there exists
k edge disjoint paths from u to v.

We also have a similar second version.

Theorem 3.22 (Menger’s Theorem, Edge Version Two)


Let G = (V, E) be a graph. Then G is k-edge-connected if and only if for every
u, v ∈ V with u 6= v there exists k edge disjoint uv-paths P1 , . . . , Pk .

We are going to prove this by constructing a graph that we can then get the required
result from my applying vertex Menger. The construction will be based on the idea of
a line graph.

Definition 3.23 (Line Graph)


Given a graph G = (V, E), we define L(G) to be the line graph as follows.
V (L(G)) = E, and for e, f ∈ E, we have ef ∈ E(L(G)) if e ∩ f 6= ∅.

An example of a graph and its corresponding line graph is shown below.


e2 e3
e2 e3
e1 e7 e4 e1 e7 e4

e6 e5
e6 e5
G L(G)

We can now prove the edge version of Menger’s theorem.


Proof (Menger’s Theorem, Edge Version). We are given a graph G = (V, E) and
distinct vertices u, v ∈ V such that every u, v separator has size ≥ k.
Construct the graph G̃ which is L(G) along with vertices u and v with u joined to
all e ∈ V (L(G)) such that u ∈ e, and likewise for v.
Then applying Menger’s theorem (the vertex version, form one) to G̃ with u, v as
the distinguished vertices.

§4 Planar Graphs
Informally, a graph is planar if it can be drawn in the plane without any pair of edges
crossing.
For example the cube graph we mentioned earlier is planar, as we can draw it as below.

25
Adam Kelly (November 6, 2021) Graph Theory

No edges cross
in the drawing

Of course, a graph is planar only if there is some drawing where the edges don’t intersect.
For example, we could draw the cube graph as below (where edges intersect), and the
graph would still be planar.

Edges in the
drawing cross

§4.1 Defining Planar Graphs


Let’s formalize the notion of ‘planar graphs’ a bit. First we will define (a somewhat
obvious notion) what we mean for a graph to be in a plane.

Definition 4.1 (Plane Graph)


A plane graph is a finite set of points V ⊆ R2 and a collection of disjoint polygonal
curves (representing the edges) with start and endpoints in V .

Then we can define what it means for a graph to be planar.

Definition 4.2 (Planar Graph)


A graph G is planar if there exists a graph isomorphism from G to some plane
graph.

And again, informally this says that a graph is planar if there is some way to draw it in
the plane so that edges don’t intersect.
We can also define the notion of ‘faces’ of a plane graph, by looking at the components.

Definition 4.3 (Faces)


The faces of a plane graph G are the connected components of R2 − G.

With this we get a nice relation between the vertices, edges and faces of a plane graph.

Theorem 4.4 (Euler’s Formula)

26
Adam Kelly (November 6, 2021) Graph Theory

Let G be a connected plane graph with V vertices, E edges and F faces. Then

V − E + F = 2.

Proof. We apply induction on the number of edges of G. The base case is E = 0,


and then since G is connected, V = 1, and F = 1, and the formula holds. Now if
G contains a cycle C, then let e be on C. Then G0 = G − e is still connected, and
the number of faces increases by 1. The face enclosed is lost. So considering G0 and
applying Euler’s formula, V − (E − 1) + (F − 1) = 2, and V − E + F = 2, as required.
If G does not contain a cycle, then G is acyclic and connected and is then a tree.
Then E = V − 1, F = 1, and V − E + F = 2, as required.

Corollary 4.5 (Planar Graphs are Sparse)


Let G = (V, E) be a planar graph, with |V | ≥ 3. Then |E| ≤ 3|V | − 6. This bound
is also sharpa .
a
By considering plane graphs where every face is a triangle.

Proof. We may assume without loss of generality that G is connected (if not, then
we can add edges until it is connected). Also draw G in the plane so that there is
no edge crossings. Then by Euler’s formula we have V − E + F = 2.
Now since ever face has at least three edges on its boundary and every edge on the
boundary is incident to at most two faces, we obtain

3F ≤ {(e0 , f 0 ) | e0 ∈ E, f 0 is a face, and e0 is on the boundary of f 0 } ≤ 2E.

Thus 3F ≤ 2E, so 3(2 − V + E) ≤ 2E, and E ≤ 3V − 6, as required.

§4.2 Which Graphs are Planar?


In this section we really care about the following question:
Which graphs are planar?
The theorems proved at the end of the last section already give us a small amount of
control over planar graphs. For example, we can show that K5 is not planar.

Example 4.6 (K5 is Non-Planar)


We will show that K5 is not planar. Since the number of edges is 10, and the number
of vertices is 5, by the previous result we would need 10 ≤ 3 − 5 + 6, which is not
the case.

Let’s consider another type of graph.

Definition 4.7 (Bipartite Complete Graph)


Define the bipartite complete graph Kn,m to be the graph with vertex set V =
A∪B where A∩B = ∅ so that |A| = n, |B| = m, and E(Kn,m ) = {ab | a ∈ A, b ∈ B}.

27
Adam Kelly (November 6, 2021) Graph Theory

K2,3

If you play around a bit, you can see that K3,2 is planar, but we get a problem if we try
use K3,3 .

Example 4.8 (K3,3 is Non-Planar)


We will show that K3,3 is not planar. Note that there is 9 edges, and 6 vertices.
Then by the result in the previous section, we would need 9 ≤ 3 · 6 − 6, which holds.
However, recall in the proof that of our result that we had each face having at least
three edges on its boundary. But that for bipartite graphs, we can get something
stronger, as each face has at least four edges on its boundary (since there is no cycles
of length 3).
So if we repeat the proof of the previous theorem with the stronger bound, we obtain
E ≤ 2V − 4, which does not hold for this graph. Thus K3,3 is not planar.

Now these two examples were interesting, but of course we care about whether any graph
is planar. It turns out though that these are (in some sense) the only fundamentally
non-planar graphs, in that any non planar graph will have one of these graphs ‘behind
it’.
To look at this formally, we need to look at the idea of a subdivision.

Definition 4.9 (Subdivision)


A subdivision of a graph G is a graph G̃, obtained by replacing the edges of G
with disjoint paths.

Lemma 4.10
If G is non-planar, then a subdivision of G is non-planar also.

Proof. Given a plane drawing of the subdivided graph, then by disregarding the
vertices on the subdivided paths, we obtain a plane drawing of G (which is a con-
tradiction).

Corollary 4.11
Subdivisions of K3,3 and K5 are non-planar.

Proof. Follows directly from the previous lemma.

What ties all of this together is Kuratowski’s theorem, which gives us a nice necessary
and sufficient condition for a graph to be planar.

28
Adam Kelly (November 6, 2021) Graph Theory

Theorem 4.12 (Kuratowski’s Theorem)


A graph G is planar if and only if G contains no subdivisions of K3,3 or K5 .

Proof. Omitted.

We will leave the topic of planar graphs here (for now), but we note that there are some
other interesting notions that are related to planarity. For example, for what graphs is
it possible to draw on a torus with no edge crossings?

§5 Graph Colouring
Informally, a graph colouring is just a way of colouring in different vertices of a graph,
so that adjacent vertices are different colours. An example of a graph colouring is shown
below.

§5.1 Basic Concepts


Of course, we need to define what this means in a slightly more mathematical sense, so
we will define a colouring as follows.
Notation. We will write [n] = {1, 2, . . . , n}.

Definition 5.1 (r-Colouring)


Let G = (V, E) be a graph. An r-colouring of G is a function c : V → [r] that
satisfies xy ∈ E =⇒ c(x) 6= c(y).

An r-colouring divides up a graph into r different colour classes, where there is only
edges between the different colour classes.

Definition 5.2 (Chromatic Number)


The chromatic number of a graph G, denoted χ(G) is the smallest r for which
there exists an r-colouring.

Example 5.3 (Examples of Chromatic Numbers)


In the graph Pn , we have χ(Pn ) = 2 for n ≥ 2, and χ(P1 ) = 1.

The graph Cn has χ(Cn ) = 2 if n is even, and χ(Cn ) = 3 if n is odd.

29
Adam Kelly (November 6, 2021) Graph Theory

The complete graph Kn has χ(Kn ) = n.

The case for C2n follows from a more general fact about bipartite graphs.

Proposition 5.4 (Chromatic Number of Bipartite Graphs)


If G is a bipartite graph, then χ(G) ≤ 2, and indeed χ(G) = 2 unless E = ∅.

Proof Sketch. Colour the vertices in each part separately.

Indeed, one way to think about chromatic number is as a generalization of bipartite


graphs to multiple parts.
A straightforward observation to make is that the maximum degree of a graph (∆) puts
a bound on the chromatic number.

Proposition 5.5 (Degree Bound for Chromatic Number)


For a graph G, we have χ(G) ≤ ∆(G) + 1. This bound is also sharpa .
a
Take the complete graph or odd cycles. These are the only such examples though

To prove this, we are going to use a type of greedy algorithm.

Definition 5.6 (Greedy Colouring)


Given a graph G = (V, E) with vertices V = {v1 , v2 , . . . , vn }, the greedy colouring
of G is a function cg : V → N defined inductively by
• cg (v1 ) = 1,
• Given coloured v1 , . . . , vt , we have cg (vt+1 ) = min(N\{c(vi ) | vi ∼ vt+1 , i ≤ t}).

Proof of Proposition 5.5. Apply the greedy colouring to G with an arbitrary vertex
ordering v1 , . . . , vn . Then we note that

|{c(vi ) | vi ∼ vt+1 , i ≤ t}| ≤ ∆(G),

and thus cg (vt+1 ) ∈ [∆ + 1].

The ‘greedy’ approach need not give you any colouring that’s in any way optimal. For
example, if we have the graph P4 with vertices labelled as below, we get the following
colouring from our greedy approach.

30
Adam Kelly (November 6, 2021) Graph Theory

v3 v2 v3 v2

v1 v4 v1 v4

This is clearly not optimal.

§5.2 Brooks’ Theorem


One step up from the greedy approach to obtaining a colouring comes in the form of
Brooks’ Theorem. Before we look at that, we will make an observation.

Proposition 5.7
Let G be a connected graph for which δ(G) < ∆(G). Then χ(G) ≤ ∆(G).

Proof. We find a better ordering to apply the greedy colouring to. First define
vn = v, where d(v) ≤ ∆(G) − 1. Now choose an ordering of v1 , . . . , vn−1 so that

d(v1 , v) ≥ d(v2 , v) ≥ · · · ≥ d(vn−1 , v).

We claim that each vertex vi with i ∈ [n − 1] has at most ∆(G) − 1 neighbors in


v1 , . . . , vi−1 .
This is true for vn by definition. For vi with i 6= n, we observe that a shortest path
P from vi to vn contains a neighbor vj of vi with d(vj , v) < d(vi , v). Thus vj comes
later in the ordering (that is, j > i).
So the greedy colouring gives each vertex one of ∆(G) colours.

We can now extend this idea to prove Brook’s theorem.

Theorem 5.8 (Brooks’ Theorem)


Let G be a connected graph that is not complete or an odd cycle. Then χ(G) ≤
∆(G).

Proof. Let G be a counterexample with a minimal number of edges. We may assume


G is a regular graph (∆-regular), and also that ∆ ≥ 3.
Since G is not complete, there exists a vertex v so that G[N (v)] is not complete, so
let x, y ∈ N (v) where x 6∼ y. Colour these two vertices x, y the same colour.
If G is 3-connected then G0 = G − x − y is connected. In this case, we order the
vertices of G0 , labelled v3 , . . . , vn = v so that

dG0 (v3 , v) ≥ dG0 (v4 , v) ≥ · · · ≥ dG0 (vn−1 , v).

The greedy colouring with the ordering v3 , . . . , vn will give us a ∆-colouring of G.


Additionally, it’s possible to ensure that each w ∈ G0 adjacent to either v1 or v2 is
coloured differently from their common colour (check!). The key idea is that keeping
G0 connected allows the sequence of decreasing distances to be constructed.

31
Adam Kelly (November 6, 2021) Graph Theory

If G has a cut vertex w ∈ V , then let G − w = C1 ∪ · · · ∪ Ck be the components,


and Gi = G[Ci ∪ {w}]. The maximum degree in Gi is bounded by ∆, and therefore
Gi has a ∆-colouring for each i, by the minimality of the counter example. Note
that Gi cannot be a complete graph on ∆ + 1 vertices since dGi (w) ≤ ∆ − 1. By
permuting the colours, we can assume each colouring gives the vertex w colour 1.
Thus we have a colouring of G with ∆ colours, which is a contradiction.
If G − {w1 , w2 } is disconnected for w1 6= w2 with w1 , w2 ∈ V , then let C1 , . . . , Ck be
the components of G − {w1 , w2 }. We may assume that G has no cut vertex by the
previous case. Now let Gi = G[Ci ∪ {w1 , w2 }] + w1 w2 . Note that e(Gi ) < e(G) since
w1 , w2 both send at least one edge to each component C1 , . . . , Ck . Also dGi (w1 ) ≤ ∆
and likewise dGi (w2 ) ≤ ∆, thus the maximum degree Gi ≤ ∆ and thus we can find
a ∆-colouring of Gi for each i. That gives w1 , w2 different colours. After permuting
these colours, I can assume w1 is coloured 1 in each, and w2 is coloured 2 in each.
Thus we can put all of the colourings together to obtain a colouring of G.

§5.3 Colouring Planar Graphs


We will now consider colourings on graphs that are planar. It is in this section that the
theorem ever-present in the popular maths psyche is kept (without proof).

Theorem 5.9 (Four-Colour Theorem)


Let G be a planar graph. Then χ(G) ≤ 4.

Or informally: any map can be coloured with only four colours, where neighboring
regions have different colours. Note that this is the duel form of the theorem above.
This theorem was proved in 1976 by Appel & Haken and centers around reducing the
theorem to a large number of cases, that were checked by computer.
We are going to prove two slightly weaker versions, that are still quite interesting.

Theorem 5.10 (Six Colour Theorem – Warmup)


Let G be a planar graph. Then χ(G) ≤ G.

Proof. We will use induction on n = |G|. For n = 1, this is trivial. Now inductively,
we claim that there is a vertex v with deg(v) ≤ 5. We note
" #
1 X 2E 12
d(x) = ≤6− < 6.
n n n
x∈V

Thus there is a vertex v with deg(v) ≤ 5. By induction, G − v is 6-colourable, and


since v has at most 5 neighbors, there is a colour in [6] that does not appear in
N (v). Colouring v with this colour, we get that the graph is 6-colourable.

Now we are going to kick it up a notch shortly, by introducing one more ingredient.

Definition 5.11
Given a graph G and an r-colouring of G, let v ∈ V (G), and define the {i, j}-

32
Adam Kelly (November 6, 2021) Graph Theory

component of v to be all of the vertices that can be reached starting at v along a


path using only colours i and j.

We make the following observation, which gives us an extra ‘move’ to use in the stronger
proof

Proposition 5.12
Given a graph G with an r-colouring c, and for i, j ∈ [v] with i, j, we can swap the
colour on an {i, j}-component to obtain a new colouring.

Proof Sketch. This works because of the ‘being reached’ condition in the {i, j}-
component definition.

Now we can prove the five colour theorem, using a lot of the ideas from the proof of the
six colour theorem.

Theorem 5.13 (Five Colour Theorem)


Let G be a planar graph. Then χ(G) ≤ G.

Proof. By induction on n = |G|, we note n = 1 is trivial. Now we proceed with the


induction step. Let v be a vertex with d(v) ≤ 5. Then apply induction to get a
5-colouring of G − v. Let N (V ) = {x1 , . . . , x5 }, where x1 , . . . , x5 are arranged in a
clockwise manner. We may assume that c(xi ) = i (otherwise we can colour v with
the missing colour).
Now consider the {1, 3}-component containing x1 . If x3 is not in this component,
we can swap colours on this {1, 3} component so that x1 is colored with 3, and then
colour v with 1.
So we may assume there exists a path x1 → x3 using colours 1 and 3 only. By the
same argument there exists a path x2 → x4 using colours 2 and 4 only. But then
these paths must share a vertex, which is a contradiction.

§5.4 Colouring Graphs on (Other) Surfaces


Following on from the last section, we will consider a related guiding question:
If G is a graph, drawn on the torus, what can we say about χ(G)?
More generally, if G is a graph drawn on a surface of genus g, what can we say about
χ(G)? For example, the graph K7 can be drawn on a torus without edge crossings.

33
Adam Kelly (November 6, 2021) Graph Theory

We may wonder if there is an Euler’s formula for surfaces, and indeed there is, but
instead of equality, we get a bound.

Theorem 5.14 (Euler’s Formula for Surfaces)


If G is drawn in a surface of genus g, then V − E + F ≥ 2 − 2g, where F is the
number of connected components of (Surface − G).

Proof Sketch. A similar inductive proof to the planar case.

Remark. By a surface of genus g, we mean a compact orientable surface of genus g.


Informally this is the surface formed from taking a sphere and adding g ‘handles’ to it.
Also note that 2 − 2g is the Euler characteristic of a surface of genus g.
We can then use this to get a bound on the edges of a graph drawn on a surface with
no edge crossings.

Proposition 5.15
If G = (V, E) is a graph drawn on a surface of genus g, then |E| ≤ 3(|G| − (2 − 2g)).

Proof Sketch. We have 3F ≤ 2E, then apply Euler’s formula for surfaces.

We can now get a bound (similarly to the planar case) on the chromatic number of a
graph drawn on a surface.

Theorem 5.16 (Heawood’s Theorem)


If G is a graph drawn on a surface of Euler characteristic E, with E ≤ 0a , then
 √ 
7 + 49 − 24E
χ(G) ≤ .
2
a
This condition really is needed, as otherwise for the planar case we get χ(G) ≤ 4, which is correct
but this is not a proof for it!

34
Adam Kelly (November 6, 2021) Graph Theory

Proof. Let G = (V, E) be a given graph with χ(G) = k. We may assume that G has
the minimum number of edges, subject to χ(G) = k. Observe that δ(G) ≥ k − 1, as
otherwise there would be a vertex v with d(v) = k − 1, and thus χ(G − v) = k − 1,
and thus χ(G) = k − 1. Also k ≤ n, where n = |V |. Now the average degree of each
vertex is " #  
1 X 2e E
d(v) = ≤6 1− ,
n n n
v∈V

where e is the number of edges and E is the Euler characteristic.


Thus    
E E
k − 1 ≤ δ(G) ≤ avg degree ≤ 6 1 − ≤6 1− ,
n k
and so k 2 − k ≤ 6(k − E), then solving gives the required result.
j √ k
7+ 49−24E
Remark. It turns out that this estimate is sharp. Calling H(E) = 2 , we
find that KH(E) can be drawn on a surface of Euler characteristic E.

§5.5 Edge Colouring


Now instead of assigning vertices colours, we will assign them to edges.

Definition 5.17 (Edge Colouring)


Let G = (V, E) be a graph. A k-edge colouring is a function c : E → [k] so that
c(e) 6= c(f ) for all e, f ∈ E such that e ∩ f 6= ∅.

We have a similar notion to chromatic number for edge colourings.

Definition 5.18 (Edge Chromatic Number/Chromatic Index)


The edge chromatic number or chromatic index of a graph G is χ0 (G), the
minimum k for which a k-edge colouring exists.

Example 5.19 (Examples of Edge Chromatic Number)


The graph Cn has χ0 (Cn ) = 2 if n is even, and χ0 (Cn ) = 3 for n odd.

The Petersen graph G has χ0 (G) = 4.

35
Adam Kelly (November 6, 2021) Graph Theory

In contrast to the chromatic number, it is much easier to get a handle on the edge
chromatic number, as we will see in the following theorem.

Theorem 5.20 (Vizing’s Theorem)


Let G be a graph. Then ∆(G) ≤ χ0 (G) ≤ ∆(G) + 1.

Proof. We proceed by induction on e(G). The basis step is trivial, then for the
inductive step we are given a graph G, and let’s assume for a contradiction that
χ0 (G) > ∆ + 1.
By induction, G − e has a ∆ + 1 colouring, so let’s write e = xy with x 6= y ∈ G.
We define vertices y1 , . . . , yk inductively by setting y1 = y. Now assume y1 , . . . , yt
are defined, and the colours missing from y1 , . . . , yt are c1 , . . . , ct respectively. Then
if ct 6∈ {c1 , . . . , ct−1 }, then let yt+1 be so that xyy+1 receives colour ct . Note that
such a vertex exists as otherwise we could recolour xy1 with c1 , xy2 with c2 , and so
on until xyt is with ct , to obtain a ∆ + 1 colouring, which is a contradiction.
Now if ct ∈ {c1 , . . . , ct−1 }, then stop. Say we stop after k steps, so I have defined
y1 , . . . , yk with missing colours c1 , . . . , ck and ck = ci for some i < k. We may
assume that i = 1 (otherwise uncolour the edge xyi and recolour xy1 with c1 , and
so on until xyi−1 with ci−1 ).
Let’s call the colour missing at x, c0 . Consider the {c0 , c1 } component C, containing
y1 . If x 6∈ C, then we can flip colours on C so that c0 is missing at y1 , then colour
xy1 with c0 . Likewise, the {c0 , c1 }-component containing yk must contain x, as
otherwise we flip colours on this component so that the colour c0 is missing at yk .
Then recolour xyk to c0 and xyi to ci for i < k.
Thus x, y1 , yk ∈ C, the {c0 , c1 }-component. But this is impossible since x, y1 , yk all
have one of the colours {c0 , c1 } missing, thus dC (x), dC (y1 ), dC (yk ) ≤ 1. But this is
is impossible for a path or cycle.

Remark. This theorem is not true if we generalize to multigraphs, which are graphs
that have multiple edges between vertices.

§6 Extremal Graph Theory


Welcome to the section on extremal graph theory, where we think about problems in-
volving things with an ‘extreme’ flavour.

§6.1 Eulerian Circuits and Hamiltonian Cycles


We are going to begin our chapter on extremal graph theory with something that’s not
really extremal graph theory. Still, it will lead us nicely into the more extreme parts of
this chapter and the course. Let’s state a definition.

Definition 6.1 (Eulerian Circuit)


An Eulerian circuit is a circuit in a graph G that crosses each edge exactly once.
If a G has an Eulerian circuit, we say that the graph is Eulerian.

36
Adam Kelly (November 6, 2021) Graph Theory

Start here

What’s nice is that there is a straightforward characterisation of Eulerian graphs.

Theorem 6.2 (Euler’s Theorem)


A connected graph has an Eulerian circuit if and only if every vertex has even degree.

Proof. If a graph G has an Eulerian circuit, then the degree of each vertex must be
even. This is because a fixed vertex x is entered and exited a fixed number of times.
Now if each vertex of a graph G has even degree, we will apply induction on e(G).
If e(G) = 0, then we are done. Now if d(x) ≥ 1 for all vertices x, then d(x) ≥ 2, and
G contains a cycle C. Define G0 = G − E(C). Let G1 , . . . , Gk be the components
of G0 . The degree of each Gi has all degrees even. Thus by induction, there is an
Eulerian circuit W1 , . . . , Wk for each G1 , . . . , Gk respectively. Thus we can combine
C with W1 , . . . , Wk to obtain an Eulerian circuit for all of G.

Now we are going to define a similar looking notion, but it will not end up being so well
behaved as Eulerian circuits.

Definition 6.3 (Hamiltonian Cycle)


Let G be a graph, then a Hamiltonian cycle in G is a cycle that visits each vertex
exactly once. We say G is Hamiltonian if it contains a Hamiltonian cycle.

Follow red edges

Our first question might be ‘is there an iff type condition for Hamiltonian cycles’, and
so far there is no such property known. However there are some results that give us
information about whether a graph is Hamiltonian.

Theorem 6.4 (Dirac’s Theorem)


Let G be a graph with n ≥ 3 such that δ(G) ≥ n/2. Then G contains a Hamiltonian
cycle.

Proof. For a contradiction, assume that G is a counterexample to the theorem. Note


that G is connected, since x 6∼ y then N (x), N (y) ⊂ V \{x, y} and |N (x)|, |N (y)| ≥
n
2 , and thus N (x) ∩ N (y) 6= ∅, and thus d(x, y) ≤ 2.

37
Adam Kelly (November 6, 2021) Graph Theory

Let x1 , . . . , x` be the longest path in G. Note that x1 , . . . , x` does not form a cycle,
as otherwise if ` = n, then we have a contradiction, and if ` < n then there exists
y 6∈ {x1 , . . . , x` } that is y ∼ xi . Thus we can find a longer path (which is also a
contradiction).
Now if there exists i ∈ {1, . . . , `−1} so that xi ∼ x` and xi+1 ∼ x1 , then the vertices
x1 , . . . , x` form a cycle. This contradicts the above.
Define
N + (x` ) = {xi | xi−1 ∈ N (Xl ), 2 ≤ i ≤ `}.
We have N + (x` ) ∩ N (x1 ) =, but this is impossible since |N + (x` )| ≥ n/2, |N (x1 )| ≥
n/2, and N + (x` ), N (x1 ) ⊆ {x2 , . . . , x` }. Thus we have a contradiction.

Remark. We never really used this δ(G) ≥ n/2 condition fully. It suffices to have
d(x) + d(y) ≥ n for x 6∼ y.
We can use this same argument to prove a more general result about paths.

Proposition 6.5
Let G be a connected graph. Let k < n and assume δ(G) ≥ k/2. Then G ≥ Pk+1 .

Proof Sketch. Similar to Dirac’s theorem. Choose a longest path x1 , . . . , xP


` in G.
They
P don’t form a cycle, and then we can force a configuration like x 1 xi+1 ,
x` xi by using the minimum degree condition.

We may wonder in the above if it’s possible to replace ‘path’ with ‘cycle’ in the above.
The answer is, sadly, no.
A natural question is to wonder how many edges are needed to ‘force’ a (for example)
triangle. For a Hamilton cycle, this sort of question would have been a bit strange, and
a more natural question would be what is the minimum value of δ(G) to ensure that
G contains a Hamilton cycle. In the next theorem, we will give a result that answers a
simpler sort of question.

Theorem 6.6
Let G be a graph. If e(G) > n2 (k − 1), then G contains a path of length k.

Proof. We will prove the contrapositive: If G is Pk+1 free, then e(G) ≤ n2 (k − 1).
We will apply induction on n. This is true for n = 2. Then given a graph G on
|G| = n ≥ 3 vertices, if G is disconnected let G1 , . . . , Gk be the components of G.
Then each of these has Gi 6⊇ Pk+1 . Then by induction we have e(Gi ) ≤ n(Gi )(k−1)
2 .
Thus
Xk X n(Gi )(k − 1)  k − 1 
e(G) = e(Gi ) ≤ = n,
2 2
i=1

and we are done.


k−1
Now if there is a vertex v with d(v) ≤ 2 , then consider G − v. Then e(G − v) =

38
Adam Kelly (November 6, 2021) Graph Theory

n−1
e(G) − d(v), and also G − v does not contain Pk+1 . Thus e(G − v) ≤ 2 (k − 1). So

n−1 k−1 n
e(G) = e(G − v) + d(v) ≤ (k − 1) + ≤ (k − 1).
2 2 2
Thus we can assume G is connected and d(v) ≥ k2 . We we can apply Proposition 6.5
to find a path of length k, that is, Pk+1 ⊆ G, which is a contradiction.
k
 k < n for if k = n then e(G) ≤
[We may also assume 2 (n − 1), which reduces to
showing e(G) ≤ n2 , which is trivial].

§6.2 Complete Subgraphs and Turan’s Theorem


Let’s return to the question of how many edges are needed in a graph to guarantee the
existence of a triangle. Later on, we will look more generally at the question of the
number of edges needed to guarantee a Kn subgraph.

Theorem 6.7 (Mantel’s Theorem)


n2
If e(G) > 4 , then G ⊃ K3 , and this is sharp.

Proof. Given a K3 -free graph G and x, y ∈ V such that x ∼ y and d(x) + d(y) ≤ n,
and let m = e(G). Then summing we get
X
d(x) + d(y) ≤ mn.
xy∈E

We have that this is x y d(x)1(xy ∈ E) = x∈V (d(x))2 . Now x∈V d(x) = 2m,
P P P P

and by Cauchy-Schwarz we have ( d(x))2 ≤ n d(x)2 , and thus


P P

n2
mn2 ≥ (2m)2 =⇒ = e(G).
4

To see that this is sharp, consider the complete bipartite graph with n vertices.
Then this has n2 /4 edges, but no triangle. Thus this is sharp.

The next question we are going to answer is how many edges are needed to guarantee
the existence of a Kn subgraph. In the previous theorem, to see that our result was
sharp, we considered the complete bipartite graph on n vertices. To discuss this more
general question, a natural thing to look at is a generalisation of bipartite graphs.

Definition 6.8 (r-Partite Graph)


An r-partite graph is a graph of the form G = (V, E) where the vertices are
partitioned into r subsets V = V1 ∪ · · · ∪ Vr with Vi ∩ Vj = ∅ if i 6= j, and xy ∈
6 E
for all x, y ∈ Vi .

For example, the graph below is 3-partite.

39
Adam Kelly (November 6, 2021) Graph Theory

It’s worth noting that saying a graph is r-partite is the same as saying the graph has
chromatic number of at most r. We care particularly about the case of an r-partite
graph where all possible edges are included.

Definition 6.9 (Complete r-Partite Graph)


We say an r-partite graph is complete if no edge can be added with the graph
remaining r-partite.

Now if we consider a complete r-partite graph G on n vertices, with all parts of size n/r,
then we would have  n 2  r   1 n2

e(G) = = 1− .
r 2 r 2
The graph G can also have no Kr+1 subgraph, since that would imply there’s an edge
between two vertices in the same part. This gives us a lower bound on the number of
edges needed to have a Kr+1 subgraph, and it turns out that bound is sharp.

Theorem 6.10 (Turan’s Theorem)


 2
If e(G) > 1 − 1r n2 , then G ⊃ Kr+1 , and this is sharp.

Proof. Suppose we have some graph G on n vertices that had no Kr+1 subgraph,
and also that the result holds up to n, r. If r ≥ n then we are clearly done, so we
may suppose that n > r. Let A be a Kr subgraph in G, which must exist by our
assumption. Let B = V − A. Then we have e(G) = e(A) + e(B) + e(A, B), where
e(A, B) denotes the number of edges between vertices in A and B. We have an
upper bound of

1 (n − r)2
   
r
e(G) ≤ + 1− + (n − r)(r − 1),
2 r 2

where e(A, B) ≤ (n − r)(r − 1) since each vertex in B has at most r − 1 neighbours


in A. We can rewrite this as
   
1 1 1 1
e(G) ≤ 1− (r2 + (n − r)2 + (n − r)r) = 1− n2 ,
2 r 2 r

as required.

There’s another non-examinable proof called Zykov Symmetrisation

40
Adam Kelly (November 6, 2021) Graph Theory

§6.3 The Zarankiewicz Problem


Turan’s theorem answers the question ‘how many edges can a graph have without having
a Kt subgraph’. A natural follow on question is ‘how many edges can a bipartite graph
have without having a Kt,t subgraph’. This is the Zarankiewicz problem, and unfortu-
nately does not yet have a definite answer like the previous question. We can however
obtain some bounds.

Definition 6.11
We define Z(n, t) to be the maximum number of edges in a bipartite graph with n
vertices in each part and no Kt,t subgraph.

We really care about Z(n, t) where t is fixed and n is large. We will prove the following
theorem.

Theorem 6.12
We have Z(n, t) ≤ t1/t n2−1/t + tn for all n.

Proof. Given a graph G = (A ∪ B, E) where |A| = |B| = n, and G 6⊇ Kt,t , we want


to show that m = e(G) ≤ t1/t n2−1/t + tn.
For some set S ⊆ A, and |S| = t, we have

\
N (x) ≤ t − 1,
x∈S

as otherwise we would have a Kt,t subgraph. Then averaging over such subsets S,
we have  −1 X \
n
N (x) ≤ t − 1.
t
S⊆A, x∈S
|S|=t

This sum can be written as

1(y ∼ x1 , y ∼ x2 , . . . , y ∼ xt )
X \ X X
N (x) =
S⊆A, x∈S S={x1 ,...,xt }, y
|S|=t S⊆A

1(y ∼ x1 , y ∼ x2 , . . . , y ∼ xt )
X X
=
y S={x1 ,...,xt },
S⊆A
X d(y)
= .
y
t

We may assume that d(y) ≥ t − 1 for all y, as otherwise we can add an edge incident
with y and not create a Kt,t subgraph. Then by convexity and since d(y) ≥ t − 1,
we have
X d(y) X d  
d
≥ =n ,
y
t t t
y∈B

41
Adam Kelly (November 6, 2021) Graph Theory

where d = n1 y∈B d(y) = m/n. Combining this inequality with what we obtained
P
previously, we get the bound

n dt

d(d − 1) · · · (d − t + 1) (d − t + 1)t
t − 1 ≥ n = n ≥ ,
t
(n − 1) · · · (n − t + 1) nt−1

thus (t − 1)1/t nt−1 ≥ d − t + 1, and t1/t n2−1/t + tn ≥ m, as required.

While we do have this upper bound, we don’t know Z(n, t) for most values of n. We do
know, for example, that

cn3/2 ≤ Z(n, 2) ≤ 2n3/2 ,


c0 n5/2 ≤ Z(n, 3) ≤ 2n5/3 ,

for all large n, and some constants c, c0 . Still we don’t even know t = 4. The constructions
are based on finite geometry. As an example, we will sketch the construction that shows
the bound cn3/2 ≤ Z(n, 2).

Theorem 6.13
For infinitely many n we have Z(n, 2) ≥ cn3/2 for c > 0.

Proof Sketch. Let p be a prime, and considera (Z/pZ)2 . Define a line L = {(x, ax +
b) | x ∈ Z/pZ}, for some a, b ∈ Z/pZ with a 6= 0.
We need the following straightforward facts:
1. Two distinct lines intersect in at most one point.
2. Each line contains p points.
3. There are p2 points, p(p − 1) ≈ p2 linesb .
We are going to construct a graph bipartite graph G = (A∪B, E) where every vertex
in A corresponds to a line and every vertex in B corresponds to a point. There’s
approximately p2 vertices in each of these parts, so we will take n to be about p2 .
Then for ` ∈ A and x ∈ B, we define ` ∼ x if x ∈ `. Then e(G) ≈ p2 · p = p3 = n3/2 .
To see this graph works, if G contained a K2,2 then there would exist two lines `1 ,
`2 with |`1 ∩ `2 | ≥ 2, which is a contradiction.
a
You can consider this to be like a torus.
b
To make this a propper proof, we would have to fix all of the approximations

§6.4 The Erdős-Stone Theorem


So far we have been interested in questions of the form ‘how many edges do I need in a
graph before I force a subgraph H’. We’ve been able to prove a variety of interesting but
relatively scattered results of this form, but it turns out that if we consider the question
asymptotically, we can obtain a more general unifying result.
We begin by defining the following function.

42
Adam Kelly (November 6, 2021) Graph Theory

Definition 6.14 (Extremal Function)


Let H be a fixed graph. We define the extremal function ex(n, H) to be

ex(n, H) = max{e(G) | |G| = n, G 6⊇ H}.

Using this function we can restate some of the results we previously obtained, such as Ma-
tel’s theorem giving us ex(n, K3 ) ≤ n2 /4, and Turan’s theorem giving us ex(n, Kr+1 ) ≤
(1 − 1/r)n2 /2.
Looking a bit more at Turan’s theorem, if we consider things asymptotically on the scale
of n2 , we get a weaker version of Turan that looks like
 
ex(n, Kr+1 ) 1
lim n
 = 1− .
n→∞
2
r

The Erdős-Stone Theorem allows us to get these types of results generally, using just
the chromatic number of the graph.

Theorem 6.15 (Erdős-Stone Theorem)


Let H be a graph with χ(G) = r, and r ≥ 2. Then
 
ex(n, H) 1
lim n
 = 1− .
n→∞
2
r−1

Proof. Omitted

§7 Ramsey Theory
We are going to jump into Ramsey theory, an area of graph theory that has a similar
flavour to previous section. Ramsey theory is often described as the collection of results
showing ‘complete disorder is impossible’, but its easiest to see what we study with an
example.

Proposition 7.1 (Monochromatic Triangles)


Colour each of the edges of K6 red or bluea . Then there must be a monochromatic
triangle.

a
Note that we don’t have any restrictions on the colouring.

43
Adam Kelly (November 6, 2021) Graph Theory

Proof. Consider some vertex v in the graph. We know that at least three incident
edges must be the same colour, so suppose (without loss of generality) that they are
red, with endpoints v1 , v2 , v3 . Then either v1 v2 v3 is a monochromatic blue triangle,
or some vi vj is red, in which case vvi vj is a monochromatic red triangle.

Straight away we might wonder about K4 . Does there exist some large enough n such
that every 2−colouring of Kn contains a monochromatic K4 ? This is the type of problem
we will consider in Ramsey theory.

§7.1 Ramsey Numbers


We will begin our discussion of Ramsey theory by introducing the Ramsey numbers.

Definition 7.2 (Ramsey Numbers)


For t ∈ N, we define R(t) the tth Ramsey number to be the smallest n for which
every 2-colouring of Kn contains a monochromatic Kt .

We already know that R(3) = 6 (since we showed there’s always a monochromatic


triangle in K6 , and it’s not hard to find a colouring of K5 that doesn’t have one). We
haven’t yet proved though that such an R(t) exists though, so we will clear this up first.

Theorem 7.3 (Ramsey’s Theorem)


For all t ∈ N, R(t) is finite and R(t) ≤ 4t .

Proof. We will begin by proving a small lemma. For s, t ≥ 2, we define the Ramsey
number R(s, t) to be the smallest n such that every red/blue colouring of Kn either
contains a red Ks or a blue Kt .
We will prove that for all s, t ≥ 2,
 
s+t−2
R(s, t) ≤ . (†)
s−1

Claim. Assume that R(s − 1, t) and R(s, t − 1) exist. Then R(s, t) exists and
R(s, t) ≤ R(s − 1, t) + R(s, t − 1).
Let a = R(s − 1, t) and b = R(s, t − 1) and let c be a red/blue colouring of Ka+b .
Let x be a vertex in this graph, and we note d(x) = a + b − 1. Then x has either
(i) a red neighbors
(ii) b blue neighbors.
In case (i), let Nr be the red neighbors of x, and note |Nr | ≥ a. Then the colouring
induced on Nr contains either a Ks−1 in red or a Kt in blue. In the latter case
we are done, and in the former case we can add x to Ks−1 to finish. Case (ii) is
symmetric, and thus our claim is true.
Now we can return to showing (†). We are going to induct on s + t. Note that
R(s, 2) = s and R(2, t) = t. Inductively assume that R(s − 1, t), R(s, t − 1) exist

44
Adam Kelly (November 6, 2021) Graph Theory

and satisfy this relation, then


     
s+t−2 s+t−3 s+t−2
R(s, t) ≤ R(s − 1, t) + R(t, s − 1) ≤ + ≤ ,
s−2 s−1 s−1

as desired. Taking R(t) = R(t, t) gives R(t) ≤ 2t−2 t



t−1 ≤ 4 .

Ramsey numbers are generally quite mysterious. We know for example that R(3, 3) = 6,
R(4, 4) = 18, and R(3, 7) = 23, but even something like R(5, 5) is unknown, and our
best bounds are 43 ≤ R(5, 5) ≤ 48. The numbers R(3, t) are quite well understood, and
for  > 0 we have (for sufficiently large t)
 2
t2

1 t
+ε 6 R(3, t) 6 (1 + ε) .
4 log t log t

A big question though is getting a lower bound on R(t), which is currently nowhere as
close as our upper bound.

§7.2 Infinite Ramsey


Now instead of finite complete graphs, we are going to consider an infinite graph.

Definition 7.4 (Complete Countable Graph)


We define the complete countable graph G = (N, N(2) ).

Notation. For a set X, we let X (r) = {A ⊆ X | |A| = r}, the set of r element subsets
of X.
Our motivating question will be the following: given a 2-colouring of the complete count-
able graph, what can we say about the monochromatic structures that appear in the
colouring? Obviously by Ramsey’s theorem we can find arbitrarily large monochro-
matic complete graphs, but is it possible to find a monochromatic complete countable
subgraph?

Example 7.5 (Complete Countable Graph with Complete Countable Subgraph)


Consider the colouring of a complete countable graph where xy is red if x+y is even,
and blue if x + y is odd. Then the subgraph induced on the vertices {2, 4, 8, . . . } is
a monochromatic complete countable subgraph.
Now consider instead the colouring where x + y is red if it has an even number of
prime factors, and x + y is blue if it has an odd number of prime factors. Can you
find a monochromatic complete countable subgraph?

It turns out that by another theorem of Ramsey, it is always possible to find such a
subgraph.

Theorem 7.6 (Infinite Ramsey’s Theorem)


Let G = (N, N(2) ), the complete countable graph. Then for every 2-colouring of G
there exists an infinite set X ⊆ N so that X (2) is monochromatic.

45
Adam Kelly (November 6, 2021) Graph Theory

Proof. We begin by inductively defining T vertices x1 , x2 , . . . , xt and colours c1 , c2 , . . . , ct


such that Nci (xi ) ⊃ {xi+1 , . . . , xt }, and ti=1 Nci (xi ) is infinite, where Nci (xi ) is the
neighborhood of xi in the colour ci .
We can do this by taking x1 , . . . , xt and then choosing any xt+1 ∈ T ti=1 Nci (xi ).
T
Then we can define ci accordingly, since at least one of Nred (xt+1 ) ∩ ti=1 Nci (xi )
Tt 
is infinite, or Nblue (xt+1 ) ∩ i=1 Nci (xi ) is infinite.

This then gives us an infinite collection x1 , x2 , . . . so that xi xj with i < j are given
colour ci . Then since both

{xi | ci = red} and {xi | ci = blue}

are monochromatic cliques, at least one of them is infinite, giving a monochromatic


complete countable subgraph.

Remark. By keeping track of the sizes of sets at each step, we can adapt this proof to
give us a different proof of the finite case.

§7.3 Ramsey Numbers for Hypergraphs


Before, we were colouring X (2) , the pairs of a set X (the vertices of a graph). Of course,
we might wonder what happens when we colour r-sets?

Definition 7.7 (Hypergraph Ramsey Numbers)


We define R(r) (s, t) to be the smallest n such that every red/blue colouring of [n](r)
either contains a set X ⊆ [n] with |X| = s and X (r) red, or there exists Y ⊆ [n]
with |Y | = t and Y (r) blue.

And of course, it’s not guaranteed that these exist, but it is possible to show that they
do.

Theorem 7.8 (Hypergraph Ramsey Theorem)


For all r, s, t ≥ 2, R(r) (s, t) exists.

Proof. Omitted.

§7.4 Lower Bounds for Ramsey Numbers


We said and the end of subsection 7.1 that we were left to get a good lower bound on
the Ramsey numbers R(t). One way to do that might be by considering the following
extremal-seeming construction:

46
Adam Kelly (November 6, 2021) Graph Theory

t − 1 vertices

t − 1 blobs

This clearly doesn’t have a monochromatic Kt subgraph, and we can compute the num-
ber of vertices is (t − 1)2 , giving

R(t) ≥ (t − 1)2 .

However, it turns out that this quadratic bound is, quite frankly, awful. To show some-
thing better, we are going to need a new idea – considering random graphs and using
probability.

Theorem 7.9 (Erdős)


t
R(t) ≥ 2 2 .

Proof. We will show that for a random colouring of the edges of Kn ,


 
n −( t )
P(there exists a monochromatic Kt ⊂ Kn ) ≤ 2 2 2 .
t

Once we have shown this, we will then note for n = 2t/2 that the RHS of this
inequality is strictly less than 1, which implies that is some colouring of Kn with
no monochromatic Kt .
To prove this inequality, we first fix some A ⊆ Kn with |A| = t, and note that
t
P(A(2) is monochromatic) = 2 · 2−(2) .

Applying the union bound then gives us our desired result


 
X
−(2t ) n −( t )
P(there exists a monochromatic Kt ⊂ Kn ) ≤ 2·2 =2 2 2 .
(t)
t
A∈Kn

Then to show that this is less than 1 for n = 2t/2 , we can take
!t
nt t(t−1) 21/t
 
n −( t ) t−1
2 2 2 ≤2 2 2 = · n2− 2 ,
t t! t!1/t

and thus it is indeed less than 1 for n = 2t/2 .

The proof idea we employed is known as the probabilistic method, and is an immensely
powerful technique that can be used to show all kinds of interesting results.
Getting much better bounds on R(t) is still a major open problem, and surprisingly
the bounds we have proved so far aren’t far from state of the art – the base of the

47
Adam Kelly (November 6, 2021) Graph Theory

exponential term is still the same in best known results. Also, there’s currently no
known construction that gives an exponential lower bound directly.

§8 The Probabilistic Method


At the end of our discussion on Ramsey numbers, we used an argument that combines
probability and random graphs to prove a result. In this section we are going to look a
bit more closely at the type of argument that we used.

§8.1 Random Graphs


We first are going to come up with a probability space involving a graph where each
edge is included independently at random with probability p.

Definition 8.1 (Binomial Random Graph)


Let n ∈ N and p ∈ [0, 1], let G(n, p) be the probability space on all graphs with
vertex set {1, 2, . . . , n}, with P(ij ∈ E(G)) = p, and every edge included/excluded
independently.

Remark. For our ‘R(t) ≥ 2t/2 ’ result, we were working with G(n, 1/2), which is the
same as sampling uniformly on a graph on {1, . . . , n}.
Another use of random graphs is in the Zarankiewicz problem. Recall our definition of
Z(n, t). We proved already that Z(n, t) ≤ 2n2−1/t , and we hadn’t yet proved a lower
bound. We are able to come up with one using the probabilistic method.

Theorem 8.2
2
We have Z(n, t) ≥ 14 n2− t+1 .

Proof. Let G be a random bipartite graph with parts A, B and |A| = |B| = n.
Then, define G
e to be G with an edge removed from each Kt,t in G. Then

e ≥ e(G) − # (Kt,t ’s in G) ,
e(G)

and by linearity of expectation


h i
e ≥ E [e(G)] − E [# (Kt,t ’s in G)] .
E e(G)

We have E[e(G)] = pn2 , and also E [#(Kt,t ’s in G)] can be written using indicator
functions as  
 2
n
1 A , B induce a Kt,t  =
2
X
0 0
pt ,

E
0 0
t
A ,B

where we sum over A0 ≤ A, B 0 ≤ B with |A0 | = |B 0 | = t. Thus


 2
2 n 2
E[e(G)] ≥ pn −
e pt . (*)
t

48
Adam Kelly (November 6, 2021) Graph Theory

We want the RHS of this to be positive, so it’s enough to have


2
pn2 ≥ n2t p ⇐⇒ n− t+1 ≥ p,

so if p = n−2/(t+1) then (∗) ≥ pn2 /2 ≥ n2 /2 − 2/(t + 1), as desired.

This proof is an example of the ‘modification method’.

§8.2 Random Graphs and Chromatic Number


One big picture question in graph theory is ‘what makes χ(G) large?’ A possible answer
is that G contains a large clique, but that’s not the whole story. For example, there’s a
triangle free graph with arbitrarily large χ. Another possible answer is that G has lots
of short cycles, but it turns out that this is false too.

Definition 8.3 (Girth)


The girth of a graph G is the length of the shortest cycle in G, denoted girth(G).

Definition 8.4 (Independent Set)


An independent set in a graph is a subset of vertices no two of which are adjacent.
We will denote the size of the largest independent set α(G).

We can prove that graphs with large girth can also have arbitrarily large chromatic
number. We will first need to note that if G is a graph, then
n
χ(G) ≥ .
α(G)

Theorem 8.5
For every k, G ∈ N, there exists a graph G with girth(G) ≥ g and χ(G) ≥ k.

1
−1
Proof. Let G be a random graph sampled from G(n, p) where p = n g . We form
the new graph G
e be the graph where we remove a vertex from each cycle of length
g − 1.
We are going to do a few steps.
e ≥ n/2) → 1 as n → ∞.
1. We want to show that P(|G|
e ≥ |G|/α(
2. We want to use χ(G) e G),
e noting that α(G) e ≤ α(G). To do this, we
will prove P(α(G) ≤ n/2k) → 1 as n → ∞.
Step 1. Let Xi be the number of cycles of length i in G, and let X = g−1
P
i=1 Xi . We
can write

1 (x1 . . . xi are a cycle in G) .


X
Xi =
x1 ,...,xi ∈[n]

49
Adam Kelly (November 6, 2021) Graph Theory

Taking expectations,
X
E[Xi ] = P (x1 . . . xi are a cycle in G) ≤ ni pi .
x1 ,...,xi ∈[n]

Using this we have


g−1
X g−1
E [# of cycles of length ≤ g − 1] = E[X] = (np)i ≤ gn g .
i=1

Using Markov’s inequality,

E[X]
P(X > n/2) ≤ →0 as n → ∞,
n/2

e ≥ n/2) → 1, as we needed.
thus P(|G|
Step 2. Let Yt be the number of independent sets of size t = n/2k. Then

1 (I is independent) ,
X
Yt =
I∈[n](t)

and taking expectations


 
n t t
 t−1 t

(1 − p)(2) ≤ nt e−p(2) = ne−p 2
X
E[Yt ] = P (I is independent) = ,
(t)
t
I∈[n]

and with p = n1/g−1 and t = n/2k, so the RHS tends to 0 as n tends to infinity.
Then
P(Yt ≥ 1) ≤ E[Yt ] → 0,
and P(Yt ≥ 1) = P(α(G) ≥ t) = P(α(G) ≥ n/2k). Putting that together, χ(G)
e ≥
|G| |G| n/2
≥ α(G) ≥ n/2k ≥ k holds with probability tending to 1 as n tends to infinity,
e e
α(G)
e
finishing our proof.

§8.3 Structure of Random Graphs


So what does a typical graph sampled from G(n, p) look like? What does its structure
look like as p varies from 0 to 1? As a first example, we will consider the following more
precise question:
For what p does G sampled from G(n, p) contain a Kt ?

Theorem 8.6
Let G be sampled from G(n, p(n)), and let t ∈ N. Then limn→∞ P(G contains a Kt ) →
2 2
1 if p(n)n t−1 → ∞. Moreover, limn→∞ P(G contains Kt ) → 0 if p(n)n t−1 → 0.

50
Adam Kelly (November 6, 2021) Graph Theory

Proof. Define Xt to be the number of Kt s in G. Then

1 (G[A] is complete) ,
X
Xt =
A∈[n](t)

and  
X n (t)
E[Xt ] = P (G[A] is complete) = p2 .
(t)
t
A∈[n]

 (t) t
 2 ( t ) 2
We note that n
p 2 ≤ npt (2 ) = n t−1 p
2
, and this tends to 0 or ∞ if n t−1 p
t
tends to 0 or ∞ respectively. So
2
P(G contains a Kt ) = P(Xt ≥ 1) ≤ E[Xt ] → 0 if n t−1 p → 0.

2
We now need to show that P(G ⊇ Kt ) → 1 if pn t−1 → ∞. We will use P(G 6⊇ Kt ) =
P(Xt = 0) ≤ P(|Xt − E[Xt ]| ≥ E[Xt ]). By Chebyshev, we have

Var(Xt )
P(|Xt − E[Xt ]| ≥ E[Xt ]) ≤ ,
E[Xt ]2

so it suffices to show that this tends to 0.


We calculate the variance as

Var(Xt ) = E[X 2 ] − (E[X])2


X
= [P(G[A], G[B] complete) − P(G[A] complete)P(G[B] complete)] ,
A,B∈[n](t)

which we calculate by hand as


t    
n t n−t h t s t
i
p2(2)−(2) − p2(2) ,
X
Var(Xt ) =
t s t−s
s=1

n−t n
≤ t!/ns for n large, we have
 
and noting that t−s / t

 h 2( t )−(s) t
i
n
p 2 2 − p2(2)
 t n−t
t
Var(Xt ) X t s t−s
= ,
(E[X])2 n 2(2t )

s=1 t p
t
X 1 1
≤ 2t+1 t! ·
ns p(2s)
s=1
t  ( s )
2
X 1 2
≤ (t!) 2 p .
s=1 n s−1

2 2
Since n t−1 p → ∞, then n s−1 p → ∞ for each s ≤ t, this goes to zero as required.

This is an example of a threshold result, where almost suddenly when p goes to a certain
value, we start to see some consistent structure in the random graphs. Another somewhat
similar question is:

51
Adam Kelly (November 6, 2021) Graph Theory

What is the threshold for the graph to be connected?


We will find that this ‘transition’ will be much faster than with the previous example.

Theorem 8.7
Let G be sampled from G(n, p(n)), then limn→∞ P(G is connected) = 1 if p > (1 +
) logn n and limn→∞ P(G is disconnected) = 0 if p < (1 − ) logn n .

Proof. For the ‘first direction’ we will show that there is an isolated vertex with
probability going to 1 if p < (1 − ) logn n . Let I be the number of isolated vertices.
We are going to use a similar strategy to before, where we calculate the variance
and apply Chebyshev.
We have
X
E[I] = n(1 − p)n−1 and E[I 2 ] = P(u, v are isolated),
u,v∈[n]

which gives us the variance


X
Var(I) = [P(u, v isolated) − P(u isolated)P(v isolated)]
u,v∈[n]
   
X X
= P(u iso) − P(u iso)2  +  P(u, v iso) − P(u iso)P(v iso)
u∈[n] u6=v∈[n]
 
X
n−1
(1 − p)2(n−1)−1 − (1 − p)2(n−1) 

= n(1 − p) +
u6=v∈[n]
n−1
= n(1 − p) + n(n − 1)(1 − p)2(n−1)−1 p.

Then we can apply Chebyshev to get

Var(I)
P(I = 0) ≤ P(|I − E[I]| ≥ E[I]) ≤
E[I]2
n(1 − p)n−1 + n(n − 1)(1 − p)2(n−1)−1
=
n2 (1 − p)2(n−1)
1
= + p −→ 0,
(1 − p)n−1 n

as required.
Now for the ‘other direction’, we want to show that the P(G is disconnected) → 0.
We can write
 
[
P(G is disconnected) = P  {no edges between A and A0 
A⊆[n],0<|A|≤n/2
X
≤ P(no edges between A and A0 )
A⊆[n],0<|A|≤n/2

52
Adam Kelly (November 6, 2021) Graph Theory

n/2  
X n
= (1 − p)s(n−s) ,
s
s=1

so we want to show that this tends to zero. We can break up this sum as
n/2   n/2   
X n s(n−s)
X
−p(n−s)
s X n −ps(n−s)
(1 − p) ≤ ne + e
s s
s=1 s=1 n/2≤s≤n/2
 
n/2  s  
X 1 X n  −n log n/8
≤ /4
+ e
n s
s=1 n/2≤s≤n/2
n/2  s
X 1  n
≤ + 2e− log n/8 −→ 0,
s=1
n/4

thus P(G is disconnected) → 0, as required.

§9 Algebraic Methods in Graph Theory


The final aspect of graph theory we are going to look at is the use of linear algebraic
methods to solve problems. This is a naturally occurring technique, as will be shown by
the problem below.

§9.1 A Motivating Problem


The diameter of a graph is the maximum distance between two vertices in a graph. We
are going to try and attack the problem below:
How many vertices can a graph with fixed ∆ have, given its diameter is at most 2?
By just thinking a little bit, it’s not hard to come up with the bound

n ≤ 1 + ∆ + (∆ − 1)∆ = 1 + ∆2 ,

but is it possible to have a graph that attains this bound? We are going to call such
graphs Moore graphs.

Definition 9.1 (Moore Graph)


A Moore graph is a k-regular graph on k 2 + 1 vertices that has diameter 2.

Example 9.2 (Examples of Moore Graphs)


Below are Moore graphs for k = 2 and k = 3.

53
Adam Kelly (November 6, 2021) Graph Theory

k=2 k=3
Note that the graph for k = 3 is the Petersen graph. Playing around a bit, you
might find that such a graph for k = 4 does not exist, so it seems that Moore graphs
are somewhat special.

Remark. A Moore graph is a k-regular graph for which any x 6= y with x, y ∈ V (G)
has exactly one path of length ≤ 2 between x and y.
So Moore graphs don’t always exist, leading to a natural question – does there exist
infinitely many of them?

§9.2 The Adjacency Matrix


One way to encode a graph is using an adjacency matrix.

Definition 9.3 (Adjacency Matrix)


Given a graph G = (V, E) on n vertices, we define the adjacency matrix of G to
be the n × n matrix (
1 if ij ∈ E,
Aij =
0 otherwise.

Example 9.4 (Example of an Adjacency Matrix)


An graph and its associated adjacency matrix are given below.
Adjacency Matrix
1
 
2 0 1 0 0 1
5
1 0 1 1 1
 
0
A= 1 0 1 0
0 1 1 0 1
4 3 1 1 0 1 0

Now while this is just a straightforward representation of a graph, the fact that it’s a
matrix means that we can start asking questions about it, even if it’s not immediately
obvious that they have any meaning. For example, what do the eigenvalues of this
matrix look like? What about the eigenvectors?
We can observe that the adjacency matrix is symmetric, which we know implies that
it has real eigenvalues λ1 ≥ · · · ≥ λn , and an associated eigenbasis v1 , . . . , vn which is
orthonormal.
We can also observe that for a graph G with adjacency matrix A, since there’s no edge

54
Adam Kelly (November 6, 2021) Graph Theory

between a vertex and itself, that there is only zeros along the diagonal of A, so it has
zero trace and
Xn
λi = tr(A) = 0.
i=1

Also, if we call λ1 = λmax and λn = λmin , then

λmax = max xT Ax, and λmin = min xT Ax


x:|x|2 =1 x:|x|2 =1

Somewhat surprisingly, we are going to be able to connect all of these algebraic facts
back to our original graph.

Proposition 9.5
Let G = (V, E) be a graph with adjacency matrix A. Then
(i) n1 x∈V d(x) ≤ λmax (G) ≤ ∆(G).
P

(ii) λmax (G) = ∆(G) if and only if G is ∆-regular.


(iii) λmin (G) = ∆(G) if and only if G is ∆-regular and bipartite.

Proof. Part (i). For the lower bound, let w = √1n (1, . . . , 1). Then we observe by
interpreting the adjacency matrix in a graph theoretic sense that
1X
λmax = max xT Ax ≥ wT Aw = d(x).
x:|x|2 =1 n
x∈V

For the upper bound, let x = (x1 , . . . , xn ) be an eigenvector corresponding to λmax .


Assume WLOG that |x1 | ≥ |xi , for all i. Then
X
λx1 = (λmax x)1 = (Ax)1 = xi ,
i:vi ∼v1

which gives us X
|λmax x1 | ≤ |xi | ≤ |x1 |∆,
i:vi ∼v1

so |λmax | ≤ ∆, and λmax ≤ ∆.


Part (ii). If G is ∆-regular, then consider 1 = (1, . . . , 1). Then
A1 = ∆1,

thus λmax ≥ ∆, so λmax = ∆ by our previous result.


If λmax = ∆, then let x = (x1 , . . . , xn ) be an associated eigenvector, and as before
assume |x1 | ≥ |xi | for all i. Then
X
∆x1 = (∆x)1 = (Ax)1 = xi ,
i:vi ∼v1

therefore xi = x for all i where vi ∼ v1 . So now we repeat the argument for all
vi ∈ N (v1 ) to learn that all xj with d(vj , v1 ) ≤ 2 has xj = x1 and so on, until we

55
Adam Kelly (November 6, 2021) Graph Theory

get x1 = xi for all vj in the component of vi . We then repeat for each component,
to see that x is constant on each component, and thus G must be a regular graph.
Part (iii). Omitted.

Another fact that will bring us closer to Moore graphs concerns the interpretation of the
square of an adjacency matrix.

Proposition 9.6
Let G be a graph and let A be its adjacency matrix. Then (A2 )ij is the number of
walks of length 2 between i, j.

Proof Sketch. Consider how A2 is calculated.

§9.3 Moore Graphs


Now we can apply our newfound algebraic tools to our question about Moore graphs
and graph diameter. We will see that our result really does show that Moore graphs are
pretty special.

Lemma 9.7 (Necissary Condition for the Existence of Moore Graphs)


Let G be a Moore graph of degree k, then

k 2 − 2k
 
1
k2 ± √ are integers.
2 4k − 3

Proof. Let G be a Moore graph of degree k on n vertices, and let A be the adjacency
matrix of G. Then we have

k if i = j,

2
(A )ij = 1 if i 6= j and ij 6∈ E,

0 if ij ∈ E.

Thus A2 = (J − A) + (k − 1)I, where J is the matrix of all 1s. So we have

A2 + A − (k − 1)I = J.

Now let λmax be a maximum eigenvalue of A, and let x be a corresponding eigen-


vector. Since G is k-regular, 1 is an eigenvector of A, and thus we know that x ⊥ 1,
since λmax 6= ∆. Then

(A2 + A − (k − 1)I)x = Jx =⇒ (λ2max + λmax − (k − 1))x = 0,

so λ2max + λmax − (k − 1) = 0. Thus


p !  √ 
−1 ± 1 + 4(k − 1) −1 ± 4k − 3
λmax = = .
2 2

56
Adam Kelly (November 6, 2021) Graph Theory

So A has eigenvalues k with multiplicity 1, λmax with multiplicity say r, and µ with
multiplicity s, with r + s = n − 1. We also know that
n
X
λi = 0 = k + rλ + sµ,
i=1

and solving this for integers r and s and using n = k 2 +1 gives the desired result.

With this lemma, we can heavily restrict the possible Moore graphs.

Theorem 9.8 (Hoffman-Singleton Theorem)


Let G be a Moore graph of degree k. Then k ∈ {2, 3, 7, 57}.

Proof. We need to find out when

k 2 − 2k
 
1 2
k ±√
2 4k − 3

are integers. One case is when k 2 − 2k = 0, implying that k = 2. Another case is


when 4k − 3 = t2 , where t | k 2 − 2k. Then we have
2
t2 + 3 t3 + 3
  
t| −2 ,
4 4

and multiplying by 16,


t | t4 − 2t2 − 15,
so t | 15, and thus t ∈ {3, 5, 15}, and since 4k − 3 = t2 , this shows that k ∈
{3, 7, 57}.

Remark. For k = 2, 3 and 7, the graphs are known to exist, but a graph for k = 57 is
has not yet been found.

57

You might also like