1. Graph Theory
A.Benedict Balbuena
Institute of Mathematics, University of the Philippines in Diliman
8.2.2008
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 1 / 47
2. Definitions
Simple Graph
Definition
A simple graph G(V , E) consists of a nonempty set V of vertices
and a set E of edges such that each edge e ∈ E is associated
with an unordered pair of distinct vertices, called its endpoints.
Vertices are adjacent if there is an edge connecting the two
vertices.
An edge is incident to its endpoints.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 2 / 47
3. Definitions
Simple Graph
Definition
A simple graph G(V , E) consists of a nonempty set V of vertices
and a set E of edges such that each edge e ∈ E is associated
with an unordered pair of distinct vertices, called its endpoints.
Vertices are adjacent if there is an edge connecting the two
vertices.
An edge is incident to its endpoints.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 2 / 47
4. Definitions
Degree
Definition
The degree of a vertex in a simple graph, denoted deg(v ), is the
number of edges incident on it.
degree also means number of adjacent vertices
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 3 / 47
5. Definitions
Handshaking Lemma
Theorem
Given a simple graph G(V , E),
2|E| = deg(v )
v ∈V
Proof.
Each edge contributes 1 each to the degree of its endpoints.
Thus each edge adds 2 to the total degree of G.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 4 / 47
6. Definitions
Theorem
In any simple graph, there are an even number of vertices of
odd degree
Proof.
Let G(V , G) be a simple graph. The sum of all the degrees of
the vertices is 2|E|, an even number. Let deven be the sum of
degrees of vertices with even degree and dodd the sum of
degrees of vertices with odd degree. The total deven is even, thus
dodd is even. This implies that there must be an even number of
the odd degrees. Hence, there must be an even number of
vertices with odd degree.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 5 / 47
7. Paths
Paths and Cycles
Definition
A path is a sequence of vertices v0 , v1 , v2 , ..., vn where there is
an edge connecting vi and vi+1 for i = 0, 1, .., n − 1. A path with
the same starting and endpoint is called a cycle (circuit). A
graph is simple if no edge is repeated.
acyclic graph has no cycles
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 6 / 47
8. Paths
Adjacency Matrix
Definition
The adjacency matrix of a simple graph G with n vertices is a
binary n × n matrix such that each entry ai,j is either zero or one.
ai,j = 0 if there is no edge from vi to vj , otherwise it is 1.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 7 / 47
9. Paths
Theorem
Let G be a graph with adjacency matrix A with respect to the
ordering v1 , v2 , ..., vn and r a positive integer. The number of
different paths of length r from vi to vj is the (i, j)-th entry of Ar
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 8 / 47
10. Paths
Connectedness
Definition
A simple graph is called connected if there is a path between
every pair of distinct vertices. A graph that is not connected is
said to be disconnected
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 9 / 47
11. Paths
Theorem
There is a simple path between every pair of distinct vertices of
a connected simple graph
Proof.
Let u and v be two distinct vertices of a connected simple graph
G. SInce G is connected then there is a path from u to v , say
u = x0 , x1 , ..., xn−1 , xn = v . If this were not simple, then there is a
subpath where xi = xj for some i and j with 0 ≤ i ≤ j. Meaning
there is a path from u to v of shorter length with vertex
sequence u, x1 , ..., xi−1 , xj , ..., v obtained by deleting the edges of
the subpath.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 10 / 47
12. Paths
Euler Paths
Definition
A simple path that contains all edges of a graph is called an
Euler path. If this path is also a circuit, it is called an Euler
circuit.
eulerian graphs have euler circuits
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 11 / 47
13. Paths
Theorem
If a simple graph has an Euler circuit then every vertex of the
graph has even degree.
Proof.
Let G be a graph with an Euler circuit. Start at some vertex on
the circuit and follow the circuit from vertex to vertex, erasing
each edge as you go along it. When you go through a vertex
you erase one edge going in and one edge going out, reducing
the degree of the vertex by 2. Eventually every edge gets
erased and all the vertices have degree 0. So all vertices must
have had even degree to begin with.
contrapositive??
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 12 / 47
14. Paths
Corollary
If a graph has a vertex with odd degree then the graph can not
have an Euler circuit.
Theorem
If all the vertices of a connected graph have even degree, then
the graph has an Euler circuit.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 13 / 47
15. Paths
Theorem
A connected graph has an Euler path but not an Euler circuit if
and only if it has exactly two vertices of odd degree.
Proof.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 14 / 47
16. Paths
Fleury’s Algorithm
constructs an Euler circuit in a graph (if it’s possible).
âreduced graphâ = original graph minus the darkened (already
used) edges
1 Pick any vertex to start
2 From that vertex pick an edge to traverse, considering
following rule: never cross a bridge of the reduced graph
unless there is no other choice
3 Darken that edge, as a reminder that you can’t traverse it
again
4 Travel that edge, coming to the next vertex
5 Repeat 2-4 until all edges have been traversed, and you are
back at the starting vertex
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 15 / 47
17. Paths
Hamilton Paths
Definition
A path is called a Hamiltonian path if it visits every vertex of the
graph exactly once. A circuit that visits every vertex exactly once
except for the last vertex which duplicates the first one is called
a Hamiltonian circuit.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 16 / 47
18. Paths
Theorem
If G is a connected simple graph with n vertices where n ≥ 3,
then G has a Hamilton circuit if the degree of each vertex is at
n
least .
2
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 17 / 47
20. Special Graphs
Complete Graph Kn
Definition
A complete graph on n vertices (clique), denoted by Kn , is the
simple graph where each vertex is adjacent to all the other
vertices.
Find a formula for the number of edges in Kn
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 19 / 47
21. Special Graphs
Paths and Cycles
Definition
A path on n vertices Pn , is the simple graph consisting of a path.
The end-vertices have degree 1 and all vertices in between
have degree 2.
Definition
A Cycle on n vertices Cn , is the simple graph consisting of a
cycle where each vertex has degree two.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 20 / 47
22. Special Graphs
Wheels and Stars
Definition
A wheel on n vertices Wn , is the simple graph consisting of a
cycle Cn and another vertex which is adjacent to all vertices in
the cycle.
Definition
A star on n vertices is the simple graph consisting n + 1 vertice,
n of which are connected to the n + 1-th vertex.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 21 / 47
23. Special Graphs
Bipartite Graphs
Definition
A bipartite graph is a simple graph in which the vertices can be
partitioned into two disjoint sets V1 and V2 where every edge is
incident to one vertex in V1 and one vertex in V2 .
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 22 / 47
24. Special Graphs
Complete Bipartite Graph
Definition
A complete bipartite graph Km,n is the graph that has its vertex
set partitioned into two disjoint subsets of m and n vertices,
respectively. Moreover, there is an edge between two vertices if
and only if one vertex is in the first set and the other vertex is in
the second set.
Each vertex is connected to all the other vertices in the other
subset.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 23 / 47
25. Special Graphs
N-cube
Definition
The n-cube (hypercube) Qn is the graph whose vertices are
binary strings of length n. Two vertices are adjacent if and only if
the bit strings differ in eactly one position.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 24 / 47
26. Special Graphs
Regular Graphs
Definition
If each vertex of a simple graph has degree k then the graph is
called a regular graph of degree k
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 25 / 47
27. Relation Between Graphs
Definition
A graph H(VH , EH ) is a subgraph of G(V , E) if and only if
VH ⊆ V and EH ⊆ E
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 26 / 47
28. Relation Between Graphs
Isomorphic Graphs
Definition
Two simple graphs G1 (V1 , E1 ) and G2 (V2 , E2 ) are isomorphic,
denoted G1 ∼ G2 , if there is a one-to-one onto function
=
f : V1 −→ V2 such that if v1 , v2 are adjacent vertices in G1 then
f (v1 ), f (v2 ) are adjacent vertices in G2
Edges are preserved
The number of vertices, the number of edges, degrees of the
vertices, cycles, longest paths are all invariants under
isomorphism.
If any of these quantities differ in two graphs, they are not
isomorphic.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 27 / 47
29. Planar Graphs
Planar Graphs
Definition
A graph is planar if there is a way to draw it in the plane without
edges crossing.
such drawing is called a planar representation, which splits the
plane into regions
planar graphs are relatively easy for humans to grasp since
there are no crisscrossing edges. Sometimes the advantages of
planarity are more concrete; for example, when wires are
arranged on a surface, like a circuit board or microchip
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 28 / 47
30. Planar Graphs
Jordan Curve Theorem
Theorem
Every simple, closed curve separates the plane into two regions,
an inside and an outside.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 29 / 47
31. Planar Graphs
Drawing Planar Representations
For connected graphs
Start with a vertex and record faces while drawing.
Faces are enclosed by circuits
Precise rules defining the cycles that are the face boundaries of
a Planar Drawing:
1 Attach edge from vertex on a face to a new vertex.
2 Attach edge between nonadjacent vertices on a face.
Every connected planar drawing is obtained by starting with a
single vertex, and repeatedly applying the Rules. Properties of
planar drawings like Eulerâs formula can be proved by induction
on the number of rule applications used to create a drawing.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 30 / 47
32. Planar Graphs
Euler’s Formula
Theorem
If a connected planar representation of a graph has v vertices, e
edges, and f faces, then
v −e+f =2
Proof.
Show this by induction on the number of edges. For the base case, if
there is no edge then we have 1 verte and 1 face which satisfies the
equation. We assume that given n number of edges, v − e + f = 2. If
we add an edge, we let it attach it to a new vertex or to an old vertex.
For the first one, we choose a face and add an edge with a new
vertex, thus v + 1 − e − 1 + f = 2. On the other hand, we choose a
face and add an edge across it. This splits the face into two new faces,
thus v − e − 1 + f + 1 = 2.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 31 / 47
33. Trees
Definition
A simple graph is called a tree if each pair of distinct vertices
has exactly one path.
is a tree connected? do trees have cycles?
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 32 / 47
34. Trees
Theorem
Any tree with more than one vertex has at least one vertex of
degree 1.
Proof.
Let v0 and vn be two distinct vertices. Then there is a path
connecting v0 to vn . By the definition of a tree, there is only one
edge incident on either v0 or vn . Hence, either deg(v0 ) = 1 or
deg(v1 ) = 1.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 33 / 47
35. Trees
Theorem
A tree with n vertices has exactly n − 1 edges.
Proof.
We show this by induction on n.
Let P(n) = Any tree with n vertices has n − 1 edges.
P(1) is valid since a tree with one vertex has zero edges.
Suppose that P(n) holds, we show P(n + 1) holds, any tree with
n + 1 vertices has n edges.
Indeed, let T be any tree with n + 1 vertices. Since n + 1 ≥ 2
then by the previous theorem, T has a vertex v of degree 1. Let
T0 be the graph obtained by removing v and the edge attached
to v . Then T0 is a tree with n vertices. By the induction
hypothesis, T0 has n − 1 edges and so T has n edges.
is the converse true??
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 34 / 47
36. Trees
Theorem
Any connected graph with n vertices and n − 1 edges is a tree.
A rooted tree is a tree in which a particular vertex is designated
as the root.
The level of a vetex v is the length of the simple path from the
root to v .
The height of a rooted tree is the maximum length of a path in
the tree.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 35 / 47
37. Trees
Definition
Let T be a rooted tree with root v0 . Suppose v0 , v1 , ..., vn is a
simple path in T and x, y , z are three vertices. Then
1 vn−1 is the parent of vn
2 v0 , v1 , ..., vn−1 are the ancestors of vn :
3 vn is the child of vn−1
4 If x is an ancestor of y then y is a descendant of x
5 If x and y are children of z then x and y are siblings
6 If x has no children, then x is a leaf.
7 The subtree of T rooted at x is the graph whose vertices
consist of x and its descendants and whose edges are
edges in the graph T with e
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 36 / 47
38. Trees
Definition
A binary tree is a rooted tree such that each vertex has at most
two children, left child or a right child. A full binary tree is a
binary tree in which each vertex has either two or zero children.
maximum degree in a binary tree??
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 37 / 47
39. Trees
Definition
T is a spanning tree of a graph G if it is a subgraph of G that is a
tree and contains all of the vertices of G.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 38 / 47
40. Coloring
Coloring
Definition
A coloring of a simple graph is the assignment of a color to each
vertex so that no two adjacent vertices have the same color
Definition
A graph is k − colorable if each vertex can be assigned one of
the k colors so that adjacent vertex get different colors.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 39 / 47
41. Coloring
Theorem
A graph with maximum degree at most k is (k+1)-colorable.
Definition
The chromatic number of a graph is the least number of colors
needed to color a graph
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 40 / 47
42. Digraphs
Digraphs
Definition
A directed graph or digraph D(X , A) consists of a nonempty set
V of vertices and a set E of arcs such that each arc a ∈ A is
associated with an ordered pair of distinct vertices.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 41 / 47
43. Digraphs
Digraphs
Definition
A directed graph or digraph D(X , A) consists of a nonempty set
V of vertices and a set E of arcs such that each arc a ∈ A is
associated with an ordered pair of distinct vertices.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 41 / 47
44. Digraphs
In and Out Degrees
Definition
When (u, v ) is an arc a digraph then u is called the initial vertex
and v is called the terminal vertex. In a directed graph, the
in-degree of a vertex v , denoted by deg − (v ), is the number of
edges with v as their terminal vertex. Similarly, the out-degree
of v , denoted by deg + (v ), is the number of edges with v as an
initial vertex.
denote arc (u, v ) by u → v
u → v means u in-neighbor of v and v out-neighbor of u
Note that deg(v ) = deg + (v ) + deg − (v )
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 42 / 47
45. Digraphs
Definition
The set of out-neighbors of a vertex v and the vertex v itself is
called the vicinity of v , denoted N(v ).
Definition
A vertex is a source if it has no in-neighbor and is an in-neighbor
of at least one vertex. A vertex is a sink if it has no outneighbor
and is an out-neighbor of at least one other vertex
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 43 / 47
47. Digraphs
Directed Paths
Definition
A directed path of length n (where n is a positive integer) from u
to v in a digraph is a sequence of points u = v0 , v1 , v2 , ..., vn = v
where there is an arc connecting vi and vi+1 for i = 0, 1, .., n − 1.
A path with the same starting and endpoint is called a cycle
(circuit). A directed path is simple if no edge is repeated.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 45 / 47
48. Digraphs
Connectedness
Definition
A digraph is strongly connected if there is a path from a to b and
from b to a whenever a and b are vertices in the graph.
Definition
A digraph is weakly connected if there is a path between any
two vertices in its underlying undirected graph.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 46 / 47
49. Digraphs
Transitive Digraphs
Definition
A transitive digraph is a digraph D(V , A) such that for any three
vertices u, v , x ∈ V , if u → v and v → x then u → x.
Definition
The underlying undirected graph of a transitive digraph is called
a comparability graph.
A.B.C.Balbuena (UP-Math) Graph Theory 8.2.2008 47 / 47