Advanced Topics in Graph Theory
Advanced Topics in Graph Theory
The interplay continues to grow between graph theory and a wide variety of models and appli-
cations in mathematics, computer science, operations research, and the natural and social sciences.
Topics in Graph Theory is geared toward the more mathematically mature student. The first three
chapters provide the basic definitions and theorems of graph theory and the remaining chapters
introduce a variety of topics and directions for research. These topics draw on numerous areas of
theoretical and applied mathematics, including combinatorics, probability, linear algebra, group
theory, topology, operations research, and computer science. This makes the book appropriate for
a first course at the graduate level or as a second course at the undergraduate level.
The authors build upon material previously published in Graph Theory and Its Applications,
Third Edition, by the same authors. That text covers material for both an undergraduate and
graduate course, while this book builds on and expands the graduate-level material.
Features
• Extensive
exercises and applications.
• Flexibility: appropriate for either a first course at the graduate level or an advanced course at
the undergraduate level.
• Opens avenues to a variety of research areas in graph theory.
• Emphasis on topological and algebraic graph theory.
Jay Yellen is a professor of mathematics at Rollins College. His current areas of research include
graph theory, combinatorics, and algorithms.
Mark Anderson is a professor of mathematics and computer science at Rollins College. His
research interests in graph theory center on the topological or algebraic side.
Discrete Mathematics and Its Applications
Series editors:
Miklos Bona, Donald L. Kreher, Douglas B. West
Algorithmics of Nonuniformity
Tools and Paradigms
Micha Hofri, Hosam Mahmoud
Analytic Combinatorics
A Multidimensional Approach
Marni Mishna
[Link]
Topics in Graph Theory
Jonathan L. Gross
Jay Yellen
Mark Anderson
First edition published 2023
by CRC Press
6000 Broken Sound Parkway NW, Suite 300, Boca Raton, FL 33487-2742
Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot as-
sume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have
attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright hold-
ers if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged
please write and let us know so we may rectify in any future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or
utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including pho-
tocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission
from the publishers.
For permission to photocopy or use material electronically from this work, access [Link] or contact the
Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. For works that are
not available on CCC please contact mpkbookspermissions@[Link]
Trademark notice: Product or corporate names may be trademarks or registered trademarks and are used only for
identification and explanation without intent to infringe.
DOI: 10.1201/9781003051237
Publisher’s note: This book has been prepared from camera-ready copy provided by the authors.
CONTENTS
PREFACE ix
1 FOUNDATIONS 1
1.1 Basic Definitions and Terminology . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Walks and Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Subgraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.4 Graph Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
1.5 Directed Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.6 Formal Specifications for Graphs and Digraphs . . . . . . . . . . . . . . . . 44
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
v
vi Contents
A APPENDIX 483
A.1 Logic Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
A.2 Relations and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
A.3 Some Basic Combinatorics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
A.4 Algebraic Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
A.5 Algorithmic Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
A.6 Supplementary Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
BIBLIOGRAPHY 497
A.1 General Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
A.2 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
INDEX 507
PREFACE
This graduate-level text seeks to unify a wide variety of concepts, both abstract and
concrete. Establishing connections between seemingly diverse topics strengthens one’s un-
derstanding and appreciation of the power and beauty of graph theory. Many of the topics
draw on numerous areas of theoretical and applied mathematics. These include combina-
torics, probability, linear algebra, group theory, topology, operations research, and computer
science.
ix
Chapter 1
FOUNDATIONS
INTRODUCTION
A graph is a mathematical structure, representing a symmetric relation on a set. The
elements of the set are called vertices or nodes, and the edges of a graph are pairs of vertices
that are related. Graphs can be used to model a variety of situations, both concrete and
abstract. Examples include electrical circuits, roadways, molecular structure, interactions
within ecosystems, sociological relationships, and databases. The chapter begins with a
formal definition of graph, basic terminology that allows us to describe and differentiate
graphs, and examples of different families of graphs.
One prominent aspect of the structure is the system of smaller graphs inside a graph,
which are called its subgraphs. Subgraphs arise explicitly or implicitly in almost any discus-
sion of graphs. For instance, in the process of building a graph G from scratch, vertex by
vertex, and edge by edge, the entire sequence of graphs formed along the way is a nested
chain of subgraphs in G.
Relations that are not symmetric are modeled by directed graphs. In this case, edges are
ordered pairs of vertices. Directed graphs are used to model roadways that include one-way
streets, interactions within ecosystems (predator to prey) the flow of control in a computer
program, and the subset relations of the members of the power set of a set (superset to
subset). The concepts of undirected graphs are extended to concepts for directed graphs.
1
2 Chapter 1 FOUNDATIONS
p q k
v
A B c
g
u f
a b h
r s d
w
Example 1.1.1: The vertex- and edge-sets of graph A in Figure 1.1.1 are given by
VA = {p, q, r, s} and EA = {pq, pr, ps, rs, qs}
and the vertex- and edge-sets of graph B are given by
VB = {u, v, w} and EB = {a, b, c, d, f, g, h, k}
Notice that in graph A, we are able to denote each edge simply by juxtaposing its endpoints,
because those endpoints are unique to that edge. On the other hand, in graph B, where
some edges have the same set of endpoints, we use explicit names to denote the edges.
Degree of a Vertex
definition: The degree (or valence) of a vertex v in a graph G, denoted deg(v), is the
number of proper edges incident on v plus twice the number of self-loops.‡
terminology: A vertex of degree d is also called a d-valent vertex.
notation: The smallest and largest degrees in a graph G are denoted δmin and δmax (or
δmin (G) and δmax (G) when there is more than one graph under discussion). Some authors
use δ instead of δmin and ∆ instead of δmax .
definition: The degree sequence of a graph is the sequence formed by arranging the
vertex degrees in non-increasing order.
Example 1.1.2: Figure 1.1.2 shows a graph and its degree sequence.
k
v
y x c h6, 6, 4, 1, 1, 0i
u f g v uwz y x
a b h
z d
w
Figure 1.1.2 A graph and its degree sequence.
Although each graph has a unique degree sequence, two structurally different graphs
can have identical degree sequences.
† We use the term “self-loop” instead of the more commonly used term “loop” because loop means something
else in many applications.
‡ Applications of graph theory to physical chemistry motivate the use of the term valence.
4 Chapter 1 FOUNDATIONS
Example 1.1.3: Figure 1.1.3 shows two different graphs, G and H, with the same degree
sequence.
G H
Figure 1.1.3 Two graphs whose degree sequences are both h3, 3, 2, 2, 2, 2i.
The following result shows that the degree sequence of a simple graph must have at least
two equal terms.
Proposition 1.1.1: A simple graph G on two or more vertices must have at least one pair
of vertices whose degrees are equal.
Proof: Suppose that the graph G has n vertices. Then there are n possible degree values,
namely 0, . . . , n − 1. However, there cannot be both a vertex of degree 0 and a vertex of
degree n − 1, since the presence of a vertex of degree 0 implies that each of the remaining
n − 1 vertices is adjacent to at most n − 2 other vertices. Hence, the n vertices of G can
realize at most n − 1 possible values for their degrees. Thus, the pigeonhole principle implies
that at least two of the n vertices have equal degree. ♦
The work of Leonhard Euler (1707–1783) is regarded as the beginning of graph theory
as a mathematical discipline. The following theorem of Euler establishes a fundamental
relationship between the vertices and edges of a graph.
Theorem 1.1.2: [Euler’s Degree-Sum Theorem] The sum of the degrees of the ver-
tices of a graph is twice the number of edges.
Proof: Consider separately, the sum of the degrees that are odd and the sum of those
that are even. The combined sum is even by Theorem 1.1.2, and since the sum of the even
degrees is even, the sum of the odd degrees must also be even. Hence, there must be an
even number of vertices of odd degree. ♦
Regular Graphs
There is a multitude of standard examples of graphs that recur throughout graph theory.
Many of them are regular graphs.
definition: A regular graph is a graph whose vertices all have equal degree. A k-regular
graph is a regular graph whose common degree is k. That is, the degree sequence of a
k-regular graph is hk, k, k, . . . , ki.
definition: A complete graph is a simple graph such that every pair of vertices is joined
by an edge. Any complete graph on n vertices is denoted Kn ; it is an (n − 1)-regular graph.
definition: The complete graph on one vertex, K1 , is referred to as a trivial graph.
Section 1.1 Basic Definitions and Terminology 5
Example 1.1.4: Complete graphs on one, two, three, four, and five vertices are shown in
Figure 1.1.4.
K1 K2 K3 K4 K5
definition: The five regular polyhedra illustrated in Figure 1.1.5 are known as the pla-
tonic solids. Their vertex and edge configurations form regular graphs called the platonic
graphs.
Dodecahedron Icosahedron
definition: The Petersen graph is the 3-regular graph represented by the line drawing
in Figure 1.1.6. Because it possesses a number of interesting graph-theoretic properties,
the Petersen graph is frequently used both to illustrate established theorems and to test
conjectures.
definition: The hypercube graph Qn is the n-regular graph whose vertex-set is the set
of bitstrings of length n, such that there is an edge between two vertices if and only if they
differ in exactly one bit.
Example 1.1.5: The 8-vertex cube graph that appeared in Figure 1.1.5 is a hypercube
graph Q3 (see Exercises).
definition: The circular ladder graph CLn is visualized as two concentric n-cycles in
which each of the n pairs of corresponding vertices is joined by an edge.
Example 1.1.6: The circular ladder graph CL4 is shown in Figure 1.1.7.
0 7 0
5 0
6 1
4 1
4 1
5 2
3 2 3 2 4 3
circ(5 : 1, 2) circ(6 : 1, 2) circ(8 : 1, 4)
Remark: Notice that circulant graphs are simple graphs. Circulant graphs are a special case
of Cayley graphs, which are themselves derived from a special case of voltage graphs.
These are discussed in Chapter 10.
Section 1.1 Basic Definitions and Terminology 7
Bipartite Graphs
definition: A bipartite graph G is a graph whose vertex-set V can be partitioned into
two subsets U and W , such that each edge of G has one endpoint in U and one endpoint
in W. The pair U , W is called a (vertex) bipartition of G, and U and W are called the
bipartition subsets.
Example 1.1.8: Two bipartite graphs are shown in Figure 1.1.9. The bipartition subsets
are indicated by the solid and hollow vertices.
Line Graphs
definition: The line graph L(G) of a graph G has a vertex for each edge of G, and two
vertices in L(G) are adjacent if and only if the corresponding edges in G are adjacent.
Example 1.1.10: Figure 1.1.11 shows a graph G and its line graph L(G).
a
a
b f b
f d
c c
e e
d
G L(G)
Graphic Sequences
Remark: By Theorem 1.1.2, the sum of the terms of a degree sequence of a graph is
even. Theorem 1.1.5 establishes the following converse: any non-increasing, nonnegative
sequence of integers whose sum is even is the degree sequence of some graph. Example
1.1.11 illustrates the construction used in its proof.
Theorem 1.1.5: Suppose that hd1 , d2 , . . . , dn i is a sequence of nonnegative integers whose
sum is even. Then there exists a graph with vertices v1 , v2 , . . . , vn such that deg(vi ) = di ,
for i = 1, . . . , n.
Proof: Start with n isolated vertices v1 , v2 , . . . , vn . For each i, if di is even, draw d21 self-
loops on vertex vi , and if di is odd, draw d12−1 self-loops. By Corollary 1.1.3, there is an
even number of odd di ’s. Thus, the construction can be completed by grouping the vertices
associated with the odd terms into pairs and then joining each pair by a single edge. ♦
Example 1.1.11: To construct a graph whose degree sequence is h5, 4, 3, 3, 2, 1, 0i, start
with seven isolated vertices v1 , v2 , . . . , v7 . For the even-valued terms of the sequence, draw
the appropriate number of self-loops on the corresponding vertices. Thus, v2 gets two self-
loops, v5 gets one self-loop, and v7 remains isolated. For the four remaining odd-valued
terms, group the corresponding vertices into any two pairs, for instance, v1 , v3 and v4 , v6 .
Then join each pair by a single edge and add to each vertex the appropriate number of
self-loops. The resulting graph is shown in Figure 1.1.12.
v1 v3 v2 v4 v6 v5 v7
The construction in Theorem 1.1.5 is straightforward but hinges on allowing the graph
to be non-simple. A more interesting problem is determining when a sequence is the degree
sequence of a simple graph.
definition: A non-increasing sequence hd1 , d2 , . . . , dn i is said to be graphic if it is the
degree sequence of some simple graph. That simple graph is said to realize the sequence.
Remark: If hd1 , d2 , . . . , dn i is the degree sequence of a simple graph, then, clearly, d1 ≤
n − 1.
Theorem 1.1.6: Let hd1 , d2 , . . . , dn i be a graphic sequence, with d1 ≥ d2 ≥ . . . ≥ dn . Then
there is a simple graph with vertex-set {v1 , . . . , vn } satisfying deg (vi ) = di for i = 1, 2, . . . , n,
such that v1 is adjacent to vertices v2 , . . . , vd1 +1 .
Proof: Among all simple graphs with vertex-set {v1 , v2 , . . . , vn } and deg(vi ) = di , i =
1, 2, . . . , n, let G be one for which r = |NG (v1 ) ∩ {v2 , . . . , vd1 +1 }| is maximum. If r = d1 ,
then the conclusion follows. If r < d1 , then there exists a vertex vs , 2 ≤ s ≤ d1 + 1, such that
v1 is not adjacent to vs , and there exists a vertex vt , t > d1 + 1 such that v1 is adjacent to vt
(since deg(v1 ) = d1 ). Moreover, since deg(vs ) ≥ deg(vt ), there exists a vertex vk such that
vk is adjacent to vs but not to vt . Let G̃ be the graph obtained from G by replacing the edges
v1 vt and vs vk with the edges v1 vs and vt vk (as shown in Figure 1.1.13). Then the degrees are
all preserved and vs ∈ NG̃ (v1 ) ∩ {v3 , . . . , vd1 +1 }. Thus, |NG̃ (v1 ) ∩ {v2 , . . . , vd1 +1 }| = r + 1,
which contradicts the choice of G and completes the proof. ♦
Section 1.1 Basic Definitions and Terminology 9
v1 v1
vt vt
vs vs
vk vk
Remark: Corollary 1.1.7 yields a recursive algorithm that decides whether a non-increasing
sequence is graphic.
Example 1.1.12: We start with the sequence h3, 3, 2, 2, 1, 1i. Figure 1.1.14 illustrates the
use of Corollary 1.1.7 to iteratively determine if the sequence is graphic and then backtracks,
leading to a graph that realizes the original sequence. The hollow vertex shown in each
backtracking step is the new vertex added at that step.
< 3, 3, 2, 2, 1, 1 >
Cor. 1.1.7
< 2, 1, 1, 1, 1 >
Cor. 1.1.7
< 0, 0, 1, 1 >
permute
< 1, 1, 0, 0 >
Cor. 1.1.7
< 0, 0, 0 >
1.1.3 Either draw a simple graph that realizes the given number sequence or explain, with-
out resorting to Corollary 1.1.7, why no such graph can exist.
(a) h2, 2, 1, 0, 0i (b) h4, 3, 2, 1, 0i (c) h4, 2, 2, 1, 1i
(d) h2, 2, 2, 2i (e) h4, 4, 4, 4, 3, 3, 3, 3i (f) h3, 2, 2, 1, 0i
1.1.4 Apply Corollary 1.1.7 to the given sequence to determine whether it is graphic. If the
sequence is graphic, then draw a simple graph that realizes it.
(a) h7, 6, 6, 5, 4, 3, 2, 1i (b) h5, 5, 5, 4, 2, 1, 1, 1i
(c) h7, 7, 6, 5, 4, 4, 3, 2i (d) h5, 5, 4, 4, 2, 2, 1, 1i
1.1.14 What is the maximum possible number of edges in a simple bipartite graph on m
vertices?
1.1.15 Draw the smallest possible non-bipartite graph.
1.1.16 Determine the values of n for which the given graph is bipartite.
(a) Kn (b) Cn (c) Pn
u v u v
u v u v u v
Section 1.2 Walks and Connectivity 11
1.1.19 Label the vertices of the cube graph in Figure 1.1.5 with 3-bit binary strings so that
the labels on adjacent vertices differ in exactly one bit.
1.1.20 Prove that the graph Qn is bipartite.
1.1.21 For each of the platonic graphs, is it possible to trace a tour of all the vertices by
starting at one vertex, traveling only along edges, never revisiting a vertex, and never lifting
the pen off the paper? Is it possible to make the tour return to the starting vertex?
1.1.22 Prove or disprove: There does not exist a 5-regular graph on 11 vertices.
1.1.23 Chartrand and Lesniak [ChLe04] define a pair of sequences of nonnegative inte-
gers ha1 , a2 , . . . ar i and hb1 , b2 , . . . bt i to be bigraphical if there exists a bipartite graph
G with bipartition subsets U = {u1 , u2 , . . . ur } and W = {w1 , w2 , . . . wt } such that
deg (ui ) = ai , i = 1, 2, . . . , r, and deg(wi ) = bi , i = 1, 2, . . . , t. Prove that a pair of non-
increasing sequences of nonnegative integers ha1 , a2 , . . . , ar i and hb1 , b2 , . . . , bt i with r ≥ 2,
0 < a1 ≤ t, and 0 < a1 ≤ r is bigraphical if and only if the pair ha2 , . . . , ar i and
hb1 − 1, b2 − 1, . . . , ba1 − 1, ba1 +1 , ba1 +2 , . . . , bt i is bigraphical.
1.1.24 Find all the 4-vertex circulant graphs.
1.1.25 Show that each of the following graphs is a circulant graph.
(a)a. a. a. b. (b) b. b. c. c.
(c) c.
1.1.26 State a necessary and sufficient condition on the positive integers n and k for
circ( n : k) to be the cycle graph Cn .
1.1.27 Find necessary and sufficient conditions on the positive integers n and k for
circ(n : k) to be the graph consisting of n/2 mutually nonadjacent edges.
Walks
In proceeding continuously from a starting vertex to a destination vertex of a physical
representation of a graph, one would alternately encounter vertices and edges. Accordingly,
a walk in a graph is modeled by such a sequence.
12 Chapter 1 FOUNDATIONS
a b
W1 =< a, b, c, d >
c
W2 =< d, b, a >
W1 ◦ W2 =< a, b, c, d, b, a >
e d
Distance
definition: The distance d(s, t) from a vertex s to a vertex t in a graph G is the length
of a shortest s − t walk if one exists; otherwise, d(s, t) = ∞.
Example 1.2.2: In the following graph, d(u, w) = 4 and d(x, y) = 1.
x v
w
y
Section 1.2 Walks and Connectivity 13
s t
Figure 1.2.2 How might you find a shortest walk from s to t in this graph?
definition: The eccentricity of a vertex v in a graph G, denoted ecc( v), is the distance
from v to a vertex farthest from v. That is,
ecc (v) = max {d (v, x)}
x∈VG
definition: The radius of a graph G, denoted rad(G), is the minimum of the vertex
eccentricities. That is,
rad (G) = min {ecc (x)}
x∈VG
x v
w
y
Example 1.2.4: Let G be the graph whose vertex-set is the set of all people on the planet
and whose edges correspond to the pairs of people who are acquainted. Then according to
the six degrees of separation conjecture, the graph G has diameter 6.
14 Chapter 1 FOUNDATIONS
Connectedness
definition: Vertex v is reachable from vertex u if there is a walk from u to v.
definition: A graph is connected if for every pair of vertices u and v, there is a walk
from u to v.
Proposition 1.2.1: If G is a graph, then the relation ‘reachable from’ is an equivalence
relation on VG . ♦ (Exercises)
Corollary 1.2.2: A graph is connected if and only if there is a vertex v such that for every
other vertex is reachable from v.
Example 1.2.5: The non-connected graph in Figure 1.2.4 is made up of connected pieces
called components, and each component consists of vertices that are all reachable from one
another. This concept is defined formally in §2.1.
k
v
y x c
u f g
a b h
z d
w
Paths
definition: A trail is a walk with no repeated edges.
definition: A path is a trail with no repeated vertices (except possibly the initial and
final vertices).
definition: A walk, trail, or path is trivial if it has only one vertex and no edges.
terminology note: Unfortunately, there is no universally agreed-upon terminology for
walks, trails, and paths. For instance, some authors use the term path instead of walk and
simple path instead of path. Others use the term path instead of trail. It is best to check
the terminology when reading articles about this material.
Example 1.2.6: For the graph shown in Figure 1.2.5, W = hv, a, e, f, a, d, zi is the edge
sequence of a walk but not a trail, because edge a is repeated, and T = hv, a, b, c, d, e, ui is
a trail but not a path, because vertex x is repeated.
u e x d z
f b c
a W =< v, a, e, f, a, d, z >
v y T =< v, a, b, c, d, e, u >
Figure 1.2.5 Walk W is not a trail, and trail T is not a path.
definition: A graph is a path graph if there exists a non-closed path that contains all
of its vertices and edges. A path graph with n vertices has n − 1 edges and is denoted Pn .
Note that P1 is considered to be a path graph.
Section 1.2 Walks and Connectivity 15
P2 P4
Thus, W − W 0 is obtained by deleting from W all of the vertices and edges of W 0 except
vk . Or, less formally, W − W 0 is obtained by deleting W 0 from W .
Example 1.2.8: Figure 1.2.7 shows a simple graph and the edge sequences of three walks,
W , W 0 , and W − W 0 . Observe that W − W 0 is traversed by starting a traversal of walk W
at vertex u and avoiding the detour W 0 at vertex v by continuing directly to vertex w.
w g t
f
a v b x W =< u, a, b, c, d, e, f, g, t >
u c
y
W 0 =< v, b, c, d, e, v >
W − W 0 =< u, a, f, g, t >
e d
z
Figure 1.2.7 The reduction walk W − W 0 .
Remark: The reduction of a walk by a (nontrivial) closed subwalk yields a walk that is
obviously shorter than the original walk.
definition: Given two walks A and B, the walk B is said to be a reduced walk of A if
there exists a sequence of walks A = W1 , W2 , . . . , Wr = B such that for each i = 1, . . . , r −1,
walk Wi+1 is the reduction of Wi by some closed subwalk of Wi .
The next three results show that the concepts of distance and reachability in a graph
can be defined in terms of paths instead of walks. This often simplifies arguments in which
the detours of a walk can be ignored.
Lemma 1.2.3: Every open x-y walk W is either an x-y path or contains a closed subwalk.
Proof: If W is not an x-y path, then the subsequence of W between repeated vertices
defines a closed subwalk of W. ♦
Theorem 1.2.4: Let W be an open x-y walk. Then either W is an x-y path or there is an
x-y path that is a reduced walk of W.
Proof: If W is not an x-y path, then delete a closed subwalk from W to obtain a shorter
x-y walk. Repeat the process until the resulting x-y walk contains no closed subwalks and,
hence, is an x-y path, by Lemma 1.2.3. ♦
16 Chapter 1 FOUNDATIONS
Corollary 1.2.5: The distance from a vertex x to a reachable vertex y is always realizable
by an x-y path.
Cycles
definition: A nontrivial closed path is called a cycle.
definition: A graph is a cycle graph if there exists a cycle that contains all of its vertices
and edges. A cycle graph with n vertices has n edges and is denoted Cn .
Example 1.2.9: The cycle graphs C1 , C2 , and C4 are shown in Figure 1.2.8.
C1 C2 C4
definition: A cycle that includes every vertex of a graph is called a Hamiltonian cycle.†
definition: A Hamiltonian graph is a graph that has a Hamiltonian cycle.
Example 1.2.11: The graph in Figure 1.2.10 is Hamiltonian. The edges of the Hamiltonian
cycle hu, z, y, x, w, t, v, ui are shown in bold.
u t z y
v w x
† The term “Hamiltonian” is in honor of the Irish mathematician William Rowan Hamilton.
Section 1.2 Walks and Connectivity 17
Proof: Necessity (⇒): Suppose that G is bipartite. Since traversing each edge in a walk
switches sides of the bipartition, it requires an even number of steps for a walk to return to
the side from which it started. Thus, a cycle must have even length.
Sufficiency (⇐): Let G be a graph with n ≥ 2 vertices and no cycles of odd length. Without
loss of generality, assume that G is connected. Pick any vertex u of G, and define a partition
(X, Y ) of V as follows:
X = {x | d(u, x) is even}
Y = {y | d(u, y) is odd}
If (X, Y ) is not a bipartition of G, then there are two vertices in one of the sets, say v
and w, that are joined by an edge, say e. Let P1 be a shortest u − v path, and let P2 be a
shortest u − w path. By definition of the sets X and Y , the lengths of these paths are both
even or both odd. Starting from vertex u, let z be the last vertex common to both paths
(see Figure 1.2.12).
Since P1 and P2 are both shortest paths, their u → z sections have equal length. Thus, the
lengths of the z → v section of P1 and the z → w section of P2 are either both even or
both odd. But then the concatenation of those two sections with edge e forms a cycle of
odd length, contradicting the hypothesis. Hence, (X, Y ) is a bipartition of G. ♦
v
e
u z
w
Trails
The following proposition is similar to Theorem 1.2.4.
Proposition 1.2.7: Every nontrivial, closed trail T contains a subwalk that is a cycle.
Proof: We use a proof by induction on the number of edges. A closed trail having only one
edge is itself a cycle. Assume that the theorem is true for all closed trails having m or fewer
edges. Next, let T be a closed trail with m + 1 edges. By Proposition 1.2.7, the trail T
contains a cycle, say C, and T −C is a closed trail having m or fewer edges. By the induction
hypothesis, the trail T − C can be decomposed into edge-disjoint cycles. Therefore, these
cycles together with C form an edge-decomposition of trail T. ♦
Example 1.2.13: Consider the closed trail T =< u, a, b, c, d, e, f, g, h, i, j, k, u > in Fig-
ure 1.2.13. The three cycles C1 , C2 , and C3 , depicted with bold, dashed, and solid lines,
respectively, form a decomposition of T .
k
u c t f z j y
C1
d e g C2
a i
b
C3
v w h x
T =< u, a, b, c, d, e, f, g, h, i, j, k, u >
Eulerian Trails
definition: An Eulerian trail in a graph is a trail that contains every edge of that graph.
definition: An Eulerian tour is a closed Eulerian trail.
definition: An Eulerian graph is a connected graph that has an Eulerian tour.†
Example 1.2.14: The graph in Figure 1.2.14 is an Eulerian graph illustrated by the Eu-
lerian tour T , shown in Figure 1.2.13.
k
u c t f z j y
d e g
a i
b
v w h x
Application 1.2.1: Traversing the Edges of a Network Suppose that the graph shown
in Figure 1.2.14 represents a network of railroad tracks. A special cart equipped with a
sensing device will traverse every section of the network, checking for imperfections. Can
the cart be routed so that it traverses each section of track exactly once and then returns
to its starting point?
The problem is equivalent to determining whether the graph is Eulerian, and as seen from
Example 1.2.14, trail T does indeed provide the desired routing.
By Theorem 1.2.8, every Eulerian tour decomposes into edge-disjoint cycles, which es-
tablishes the following corollary.
Corollary 1.2.9: Every vertex in an Eulerian graph has even degree.
Establishing the converse of Corollary 1.2.9 results in the following classical characteri-
zation of Eulerian graphs, which appears in Chapter 3.
Theorem 3.2.11: [Eulerian-Graph Characterization] The following statements are
equivalent for a connected graph G.
1. G is Eulerian.
2. The degree of every vertex in G is even.
3. EG is the union of the edge-sets of a set of edge-disjoint cycles of G.
u v z y
x w
1.2.2 Find all walks of length 4 or 5 from vertex w to vertex r in the following graph.
w s
u v z y
x r
1.2.3 Find the distance between vertices x and y in the following graph.
x
1.2.4 Is there an even-length walk between two antipodal vertices (i.e., endpoints of a long
diagonal) of a cube?
1.2.5 Draw an 8-vertex connected graph with as few edges as possible.
20 Chapter 1 FOUNDATIONS
1.2.6 Draw a 7-vertex connected graph such that the removal of any one edge results in a
non-connected graph.
1.2.7 Draw an 8-vertex connected graph with no closed walks, except those that retrace at
least one edge.
1.2.8 Draw a 5-vertex connected graph that remains connected after the removal of any
two of its vertices.
1.2.9 A 3 × 3 mesh graph and a 3 × 4 mesh graph are shown below. For what values of m
and n is the m × n grid graph Hamiltonian?
3x3 3x4
1.2.10 Determine the diameter, radius, and central vertices of the given graph.
(a) The graph in Exercise 1.2.1.
(b) The graph in Exercise 1.2.2.
(c) The path graph Pn , n ≥ 3.
(d) The cycle graph Cn , n ≥ 4.
(e) The complete graph Kn , n ≥ 3.
(f) The complete bipartite graph Km,n , m ≥ n ≥ 3.
(g) The Petersen graph.
(h) The hypercube graph Qn ?
(i) The circular ladder graph CLn , n ≥ 4.
(j) The circulant graph circ(n : m).
(k) The circulant graph circ(n : a, b).
1.2.15 Prove that the distance function d on a graph G satisfies the triangle inequality.
That is,
For all x, y, z ∈ VG , d(x, z) ≤ d(x, y) + d(y, z).
Section 1.2 Walks and Connectivity 21
f
e b
j
g
i
h
d c
1.2.24 Prove that if v is a vertex on a nontrivial, closed trail, then v lies on a cycle.
1.2.25 Prove or disprove: Every graph that has a closed walk of odd length has a cycle.
1.2.26 Prove that in a digraph, a shortest directed walk from a vertex x to a vertex y is a
directed path from x to y.
1.2.27 Suppose G is a simple graph whose vertices all have degree at least k.
a. Prove that G contains a path of length k.
b. Prove that if k ≥ 2, then G contains a cycle of length at least k.
22 Chapter 1 FOUNDATIONS
1.2.28 Prove that if v is a vertex on a nontrivial, closed trail, then v lies on a cycle.
1.2.29 Prove or disprove: Every graph that has a closed walk of odd length has a cycle.
1.2.30 Prove that in a digraph, a shortest directed walk from a vertex x to a vertex y is a
directed path from x to y.
1.2.31 Suppose G is a simple graph whose vertices all have degree at least k.
a. Prove that G contains a path of length k.
b. Prove that if k ≥ 2, then G contains a cycle of length at least k.
1.3 Subgraphs
v a w
b c
d
x
e
y z
f
v a w v a w v w
b c b c
d d
x x
e
y z y z
f
H1 H2 H3
Induced Subgraphs
definition: For a given graph G, the subgraph induced on a vertex subset U of VG ,
denoted G(U ), is the subgraph of G whose vertex-set is U and whose edge-set consists of
all edges in G that have both endpoints in U . That is,
VG(U ) = U and EG(U ) = { e ∈ EG | endpts(e) ⊆ U }
Example 1.3.2: Figure 1.3.2 shows a 10-vertex graph G and two induced subgraphs
(shown in bold), one on a 5-vertex subset, and the other on a 7-vertex subset.
q r q r q r
s s s
t u t u v t u v
v
w x w x w x
y z y z y z
G G( {r, t, u, v, z} ) G( {q, r, t, u, w, y, z} )
a a a
b d b d b d
c c c
e g g g
e e
f f f
h i h i h i
j k l j k l j k l
p p p
m n o m n o m n o
q q q
G G( {a, c, h, i, j, m, n, p} ) G( {e, g, l, m, p, q } )
definition: The center of a graph G, denoted Z(G), is the subgraph induced on the set
of central vertices of G.
Example 1.3.4: The vertices of the graph in Figure 1.3.4 are labeled by their eccentricities.
Since the minimum eccentricity is 3, the vertices of eccentricity 3 lie in the center.
Remark: In §1.4, we show that any graph can be the center of a graph.
24 Chapter 1 FOUNDATIONS
3 3
4 4 3 3 4 4
3
3 3
Local Subgraphs
definition: The (open) local subgraph (or (open) neighborhood subgraph) of a
vertex v is the subgraph L(v) induced on the neighbors of v.
Example 1.3.5: Figure 1.3.5 shows a graph and the local subgraphs of three of its vertices.
u u u
u
v v v
v
G w w w w
L (u ) L(v ) L(w )
Components
definition: A component of a graph G is a maximal connected subgraph of G. In other
words, a connected subgraph H is a component of G if H is not a proper subgraph of any
connected subgraph of G.
The only component of a connected graph is the entire graph. Intuitively, the components
of a non-connected graph are the “whole pieces” it comprises.
Example 1.3.6: The 7-vertex graph in Figure 1.3.6 has four components.
u v
y z
x
Example 1.3.8: If G is a simple graph, then it follows from the definition of a clique that
the subgraph induced on a clique is a complete graph. Some authors refer to this complete
graph as a clique.
definition: A subset S of VG is said to be an independent set if no pair of vertices in S
is joined by an edge. That is, S is a subset of mutually nonadjacent vertices of G.
definition: The independence number of a graph G is the number α(G) of vertices in
a largest independent set in G.
Remark: The clique number ω(G) and the independence number α(G) of a graph may be
regarded as complementary concepts, as will be shown in §1.4, by Theorem 1.4.1.
Spanning Subgraphs
definition: A spanning subgraph H of a graph G is a subgraph such that VH = VG .
Vertex-Deletion Subgraphs
definition: If v is a vertex of a graph G, then the vertex-deletion subgraph G−v is the
subgraph with vertex-set VG − {v} and edge-set EG−v = {e ∈ EG | e is not incident on v}.
More generally, if U ⊆ VG , then the result of iteratively deleting all the vertices in U is
denoted G − U .
definition: If e is an edge of a graph G, then the edge-deletion subgraph G − e is the
subgraph with vertex-set VG and edge-set EG − {e}. More generally, if D ⊆ EG , then the
result of iteratively deleting all the edges in D is denoted G − D.
Example 1.3.11: The next Figure 1.3.10 shows a vertex-deletion subgraph and an edge-
deletion subgraph of a graph G.
v v v
c c c
a u h a u a u h
b f b b
d g d g
G w G-w G-f w
Figure 1.3.10 The result of deleting the vertex w or edge f from graph G.
Remark: Note that the Graph G−w in Figure 1.3.10 is also the graph induced on the edge
set {a, b, c}. It is not an edge-deletion subgraph of G since it does not have the vertex w.
This shows that the assertion analogous to Proposition 1.3.4 does not hold for edge-subsets.
Section 1.3 Subgraphs 27
Network Vulnerability
The following definitions identify the most vulnerable parts of a network. These defini-
tions lead to different characterizations of a graph’s connectivity, which appear in Chapter
2.
definition: A vertex-cut in a graph G is a vertex-set U such that G − U has more
components than G.
definition: A vertex v is a cut-vertex (or cutpoint) in a graph G if {v} is a vertex-cut.
Example 1.3.12: If the graph in Figure 1.3.11 represents a communications network, then
a breakdown at any of the four cut-vertices w, x, y, or z would destroy the connectedness of
the network. Also, {u, v} and {w, x} are both vertex-cuts, and {u, v} is a minimal vertex-cut
(i.e., no proper subset of {u, v} is a vertex-cut).
w x y z
r s
a c
t
Observation: In a connected graph G, let e be any edge, with endpoints u and v. Then in
the edge-deletion graph G − e, every vertex is reachable either from u or from v (or possibly
from both). Thus, the only possible components of G − e are the component CG−e (u) that
contains the vertex u and the component CG−e (v). These two components coincide if and
only if there is a path in G from u to v that avoids the edge e (in which case G − e is
connected). For example, in Figure 1.3.13, the graph G − e has two components, CG−e (u)
and CG−e (v). Notice that had there been an edge in the original graph joining the vertices
w and z, then G − e would have been connected.
u
e
v
w z
Proof: Let u and v be the endpoints of the edge e. If e lies in some cycle of G, then the long
way around that cycle is a path between vertices u and v, and by the observation above,
the graph G − e is connected. Conversely, if G − e is connected, then there is a path P from
u to v that avoids e. Thus, adding edge e to path P forms a cycle in G containing e. ♦
The first of the following two corollaries restates Proposition 1.3.5 as a characterization of
cut-edges. The second corollary combines the result of the proposition with the observation
above to establish that deleting a cut-edge increases the number of components by at most
one.
Corollary 1.3.6: An edge of a graph is a cut-edge if and only if it is not a cycle-edge.
Proof: Apply Proposition 1.3.5 to the component that contains that edge. ♦
Corollary 1.3.7: Let e be any edge of a graph G. Then
c(G), if e is a cycle-edge
c(G − e) =
c(G) + 1, otherwise
Example 1.3.14: A graph G and its labeled vertex-deletion subgraph list is shown in Fig-
ure 1.3.14. Notice that the first, third, and fourth vertex-deletion subgraphs are essentially
the same graph, as are the second and fifth. A more precise definition of what it means for
two graphs to be the same (i.e., isomorphic) will be given in Chapter 2.
† A set has no order and no repetitions, while a list has order and can have repetitions. A multiset is a
v5 v2
G
v4 v3
Remark: Observe that the two different 2-vertex graphs shown below have the same vertex-
deletion subgraph list.
G1 G2
definition: The deck of a graph is its vertex-deletion subgraph list, with no labels on the
vertices. We regard each individual vertex-deletion subgraph as being a card in the deck.
Example 1.3.14 continued: The deck for the graph G is shown in Figure 1.3.15.
Theorem 1.3.8: The number of vertices and the number of edges of a simple graph G can
be calculated from its vertex-deletion subgraph list.
Proof: If the length of the vertex-deletion subgraph list is n, then clearly |VG | = n. More-
over, since each edge appears only Pin the n − 2 subgraphs that do not contain either of its
endpoints, it follows that the sum v |EG−v | counts each edge n − 2 times. Thus,
1 X
|EG | = |EG−v |
n−2 v
♦
Corollary 1.3.9: The degree sequence of a graph G can be calculated from its deck.
Proof: First calculate |EG |. For each card, the degree of the missing vertex is the difference
between |EG | and the number of edges on that card. ♦
The following example shows how Theorem 1.3.8 and its corollary can be used to find
a graph G having a given deck. Although the uniqueness is an open question, the example
shows that if only one graph can be formed when vk is joined to Hk , for some k, then G is
unique and can be retrieved.
Example 1.3.16: Suppose G is a graph with the following deck. Consider H5 . By
H1 H2 H3 H4 H5
Theorem 1.3.8 and Corollary 1.3.9, deg(v5 ) = 2, and hence, there are two ways in which
v5 could be joined to H5 . Either v5 is adjacent to two nonadjacent vertices of H5 (case 1)
or to two vertices that are adjacent (case 2). In the first case, three of the vertex-deletion
subgraphs would be a 4-cycles, rather than just one. In the second case, the resulting graph
would have the given deck, and hence must be the graph G.
v5
v5
Case 1 Case 2
Corollary 1.3.10: A regular graph can be reconstructed from its deck and no other graph
has the same deck.
Proof: Suppose G is a d-regular graph, for some d. By Corollary 1.3.9, we can see that
G is regular and determine the value of d from the deck. On any card in the deck, there
would be d vertices of degree d − 1. Any graph reconstructed from this deck must join those
vertices to the missing vertex. ♦
Remark: McKay [Mc97] and Nijenhuis [Ni77] have shown, with the aid of computers, that
a counterexample to the conjecture would have to have at least 12 vertices.
Section 1.3 Subgraphs 31
u a v
q g b
f
m p c w
y d
r h
k
z x e
1.3.2 Find the local subgraphs L(u) and L(y) of the graph from Exercise 1.3.1.
1.3.3 Prove Proposition 1.3.1.
1.3.4 Find upper and lower bounds for the size of a largest independent set of vertices in
an n-vertex connected graph. Then draw three 8-vertex graphs, one that achieves the lower
bound, one that achieves the upper bound, and one that achieves neither.
r
x z y
y z
r
(a) Find all of the cliques and determine the clique number.
(b) Find all the maximal independent sets and determine the independence number.
(c) Find the center.
(d) Find a largest set of mutually adjacent vertices that is not a clique.
1.3.6 Consider the following graph.
u v w u v
x y z x y
(a) Find all of the cliques and determine the clique number.
(b) Find all the maximal independent sets and determine the independence number.
(c) Find the center.
(d) Find a largest set of mutually adjacent vertices that is not a clique.
1.3.7 Find all the spanning trees of the given graph.
u a v u u d d v v
(a) (b)
p g
m y a a c e e f f
r
z ww b b z z
32 Chapter 1 FOUNDATIONS
1.3.8 Draw a forest having ten vertices, seven edges, and three components.
1.3.9 Given six vertices in the plane, how many 2-component forests can be drawn having
those six vertices?
1.3.10 Prove or disprove: Every subgraph of a bipartite graph is a bipartite graph.
1.3.11 Prove or disprove:
(a) For every subgraph H of any graph G, there exists a vertex subset W such that
H = G(W ).
(b) For every subgraph H of any graph G, there exists an edge subset D such that H =
G(D).
1.3.12 Suppose U and W are vertex subsets and D and F are edge subsets of a graph G,
under what conditions will the following be true?
(a) G(U ) ∪ G(W ) = G(U ∪ W ).
(b) G(D) ∪ G(F ) = G(D ∪ F ).
1.3.13 Prove Proposition 1.3.2. (Hint: Prove that an edge-minimal connected spanning
subgraph of G must be a spanning tree of G.)
1.3.14 Prove Proposition 1.3.3. (Hint: Let H be an acyclic subgraph of a connected graph
G, and let S be the set of all supergraphs of H that are spanning subgraphs of G. Then
show that an edge-minimal element of the set S must be a spanning tree of G that contains
H.)
1.3.15 Prove Proposition 1.3.4.
1.3.16 Find the vertex-deletion subgraphs G − y and G − {v, y, z}, and the edge-deletion
subgraph G − p, of the graph G shown below.
u a v
q g b
f
m p c w
y d
r h
k
z x e
1.3.17 Find all the cut-vertices and cut-edges of the given graph.
b x b x
(a) (b) p
a a
z z
s s
u v u v
d d
y t y t
c c
1.3.18 Find all the minimal vertex-cuts of maximum cardinality for the graph of Exercise
1.3.17(a).
1.3.19 Find all the minimal edge-cuts of maximum cardinality for the graph of Exercise
1.3.17(b).
Section 1.4 Graph Operations 33
(b)
1.3.21 How would you recognize, from its deck, that a graph is bipartite? (Give a proof
that your method works.)
1.3.22 How would you recognize, from its deck, that a graph on at least three vertices is
connected? (Give a proof that your method works.)
1.3.23 Let v be one of the n vertices of a connected graph G. Find an upper bound for the
number of components of G − v, and give an example that achieves the upper bound.
1.3.24 Let e be one of the edges of a connected graph G. Find an upper bound for the
number of components of G − e, and justify your answer.
v v
c c
a u h +e a u h
b f b f
d g d g
e
w w
Graph Union
The iterative application of adding vertices and edges results in the graph operation
called graph union.
34 Chapter 1 FOUNDATIONS
definition: The (graph) union of two graphs G and G0 is the graph G ∪ G0 whose vertex-
set and edge-set are the disjoint unions, respectively, of the vertex-sets and edge-sets of G
and G0 .
Example 1.4.2: Figure 1.4.2 shows the graph C4 ∪ P3 .
definition: The n-fold self-union of a graph G, denoted nG, is the iterated union of n
copies of G.
Example 1.4.3: The graph in Figure 1.4.3 is the 4-fold self-union K3 ∪ K3 ∪ K3 ∪ K3 .
Edge-Complementation
definition: Let G be a simple graph. Its edge-complement (or complement) G is the
graph on the same vertex-set, such that two vertices are adjacent in G if and only if they
are not adjacent in G. More generally, if H is a subgraph of a graph G, the relative
complement G − H is the graph G − EH . Thus, if G has n vertices, then G is the graph
Kn − G.
Example 1.4.4: A graph and its edge-complement are shown in Figure 1.4.4.
G G
Remark: Observe that the edge-complement of the edge-complement always equals the
original graph, i.e., G = G.
The following theorem formulates precisely the sense in which the independence number
of a graph and the clique number are complementary.
Theorem 1.4.1: Let G be a simple graph. Then
Cartesian Product
definition: The Cartesian product G × H of graphs G and H is the graph whose
vertex-set and edge-set are defined in terms of Cartesian products of sets:
VG×H = VG × VH
EG×H = (VG × EH ) ∪ (EG × VH )
• The edge (u, d) ∈ VG × EH has endpoints (u, y), (u, z) ∈ VG × VH , where y and z are
the endpoints of d.
• The edge (e, x) ∈ EG × VH has endpoints (v, x), (w, x) ∈ VG × VH , where v and w are
the endpoints of e.
P3
x y z
c d
P2 X P3
Example 1.4.6: Figure 1.4.6 illustrates the Cartesian product of the 4-cycle graph C4 and
the complete graph K2 .
(u, 0) (a, 0) (v, 0)
(e, e) (u, e)
u v 0 (a, 1)
a (u, 1) (v, 1)
Observe that C4 ×K2 is essentially the same (i.e., isomorphic) as both the circular ladder
graph CL4 and the hypercube graph Q3 , introduced in §1.1. This motivates alternative
definitions for CLn and Qn .
36 Chapter 1 FOUNDATIONS
01 010 011
10 100 101
00 000 001
Q2 Q3
Figure 1.4.9 Q4 = Q3 × K2 .
Observation: This recursive definition shows that Qn is the (iterated) Cartesian product
of n copies of K2 . That is,
Qn = K2 × · · · × K2
| {z }
n copies
Section 1.4 Graph Operations 37
+ =
v
v
G H
v
v1
Join
definition: The join G + H of the graphs G and H is obtained from the graph union
G ∪ H by adding an edge between each vertex of G and each vertex of H.
+ =
Example 1.4.8: Figure 1.4.15 illustrates the first four octahedral graphs.
O1 O2 O3 O4
Figure 1.4.15 The octahedral graphs O1 , O2 , O3 , and O4 .
Example 1.4.9: Figure 1.4.16 illustrates that the edge-complement of the graph 3K2 (in
K6 ) is essentially the same as O3 . Notice that the bijection that sends vertex vi in the
first graph to ui in the second, i = 1, . . . , 6, illustrates the structural similarity of the two
graphs; the only missing edges are {v0 v3 , v1 v4 , v2 v5 } in the edge-complement of 3K2 and
{u0 u3 , u1 u4 , u2 u5 } in O3 . Structural similarity will be addressed more precisely in Chapter
2, when graph isomorphism is introduced. It will be shown that the complement of K2n is
isomorphic to On .
v2 v1 u1
u2
v3 v u3 u0
0
u5
v4 v5 u4
3K2 O3
1.4.9 Prove that the Cartesian product of two bipartite graphs is always a bipartite graph.
1.4.10 Prove that the Cartesian product C4 × C4 of two 4-cycles is isomorphic to the
hypercube graph Q4 .
1.4.12 Give a necessary and sufficient condition that the join of two bipartite graphs be
non-bipartite.
u v w
definition: A mixed graph (or partially directed graph) is a graph that has both
undirected and directed edges.
definition: The underlying graph of a directed or mixed graph G is the graph that
results from deleting all the edge-directions.
Section 1.5 Directed Graphs 41
Example 1.5.2: The digraph D in Figure 1.5.2 has the graph G as its underlying graph.
D v G v
c c
u g u g
h h
d d
w w
k
v
c vertex u v w
f g
a b
u indegree 3 4 1
h
outdegree 3 2 3
d
w
Figure 1.5.3 The indegrees and outdegrees of the vertices of a digraph.
The next theorem is the digraph version of Euler’s Degree-Sum Theorem 1.1.2. The
proof is analogous to the proof of Theorem 1.1.2 and is left as an exercise.
Theorem 1.5.1: In a digraph, the sum of the indegrees and the sum of the outdegrees
both equal the number of directed edges.
Application 1.5.1: Markov Diagrams Suppose that the inhabitants of some remote area
purchase only two brands of breakfast cereal, O’s and W’s. The consumption patterns of the
two brands are encapsulated by the transition matrix shown in Figure 1.5.4. For instance,
if someone just bought O’s, there is a 0.4 chance that the person’s next purchase will be
W’s and a 0.6 chance it will be O’s.
O’s W’s
O’s .6 .4
W’s .3 .7
In a Markov process, the transition probability of going from one state to another depends
only on the current state. Here, states “O” and “W” correspond to whether the most recent
purchase was O’s or W’s, respectively. The digraph model for this Markov process, called a
Markov diagram, is shown in Figure 1.5.4. Each arc is labeled with the transition probability
of moving from the state at the tail vertex to the state at the head. Thus, the probabilities
on the outgoing edges from each vertex must sum to 1. This Markov diagram is an example
of a weighted graph.
42 Chapter 1 FOUNDATIONS
< O, W, W, W, O >
The product of the transition probabilities along a walk in any Markov diagram equals the
probability that the process will follow that walk during an experimental trial. Thus, the
probability that this walk occurs, when starting from O’s equals .4 × .7 × .7 × .3 = 0.0588.
Example 1.5.4: In the figure below, the closed directed walk hv, x, y, z, vi is a subwalk of
the open directed walk hu, v, x, y, z, v, w, ti.
w t
x
u
v y
y
u
x
w
Figure 1.5.5 A strongly connected digraph.
Section 1.5 Directed Graphs 43
Example 1.5.6: Suppose the graph in Figure 1.5.6 represents the network of roads in a
certain national park. The park officials would like to make all of the roads one-way, but
only if visitors will still be able to drive from any one intersection to any other.
b
a
c
e d
g
This problem can be expressed in graph-theoretic terms with the following definition.
definition: A graph is said to be strongly orientable if there is an assignment of direc-
tions to its edges so that the resulting digraph is strongly connected. Such an assignment
is called a strong orientation.
1.5.2 Determine whether the pair of sequences h3, 1, 1, 0i and h1, 1, 1, 2i is digraphic.
1.5.3 Establish a result analogous to Corollary 1.1.7 for a pair of sequences to be digraphic.
1.5.4 Prove that every tournament has at most one vertex of indegree 0 and at most one
vertex of outdegree 0.
1.5.5 Suppose that n vertices v1 , v2 , . . . , vn are drawn in the plane. How many different
n-vertex tournaments can be drawn on those vertices?
1.5.6 Prove that a digraph must have a closed directed walk if each of its vertices has
nonzero outdegree.
1.5.7 Let D be a digraph. Prove that mutual reachability is an equivalence relation on VD .
44 Chapter 1 FOUNDATIONS
0 3
2
4 5
7 6
9
8
10 11
12
1.5.9 For each of the following graphs, either find a strong orientation or argue why no such
orientation exists.
(a) (b)
a. a. b. b.
p q
p: q r s
q: p s
r: p s
s: p q r
r s
General Graphs
A general graph G = (V, E, endpts) can be formally specified by giving a list of its
vertices, a list of its edges, and an incidence table, which designates the endpoints of each
edge, allowing for multi-edges and self-loops. An isolated vertex will appear in the vertex
list but not in any column of the table.
definition: The incidence table of a general graph has columns indexed by the edges.
The entries in the column corresponding to edge e are the endpoints of e. The same endpoint
appears twice if e is a self-loop.
Example 1.6.2: Figure 1.6.2 shows a line drawing and a formal specification for a general
graph.
v
V = {u, v, w, x} and E = {a, b, c, d, f, g, h, k}
c
a b u g x edge a b c d f g h k
f
h
endpts u u u u v v v v
d u u v w w w w v
w
k
u v w x
v u 4 1 1 0
c
a b u g x
AG = v 1 2 3 0
f w 1 3 0 0
h
x 0 0 0 0
d
w
Usually the vertex order is implicit from context, in which case the adjacency matrix AG
can be written as a matrix without explicit row or column labels.
46 Chapter 1 FOUNDATIONS
definition: The incidence matrix of a general graph G is the matrix IG whose rows and
columns are indexed by some orderings of VG and EG , respectively, such that†
0 if v is not an endpoint of e
IG [v, e] = 1 if v is an endpoint of e
2 if e is self-loop at v
Example 1.6.4: Figure 1.6.4 shows a general graph and its incidence matrix.
k
a b c d f g h k
v u 2 2 1 1 0 0 0 0
c
a b u g x
IG = v 0 0 1 0 1 1 1 2
f w 0 0 0 1 1 1 1 0
h
x 0 0 0 0 0 0 0 0
d
w
General Digraphs
A formal specification of a general digraph D = (V, E, endpts, head, tail) is obtained
from a formal specification of the underlying graph by adding the functions head : EG → VG
and tail : EG → VG , which designate the head vertex and tail vertex of each arc. One way
to specify these designations in the incidence table is to mark in each column the endpoint
that is the head of the corresponding arc.
Example 1.6.5: Figure 1.6.5 gives a formal specification for the digraph shown, including
the corresponding values of the functions head and tail. A superscript “h” is used to indicate
the head vertex.
v
c arc a b c d f g h k
a b u g endpts uh uh uh u v vh v vh
f
h
u u v wh wh w wh v
d
w
† An alternative definition seen elsewhere, which uses 1 for a self-loop instead of 2, takes more effort to
find the self-loops. It also has the theoretical inconsistency that row-sums are not necessarily equal to
vertex-degrees and column-sums are not necessarily equal to 2.
Section 1.6 Formal Specifications for Graphs and Digraphs 47
Remark: A mixed graph is specified by simply restricting the functions head and tail to a
proper subset of EG . In this case, a column of the incidence table that has no mark means
that the corresponding edge is undirected.
definition: The adjacency matrix of a general digraph D, denoted AD , is the matrix
whose rows and columns are both indexed by identical orderings of VD , such that for distinct
vertices u and v, AD [u, v] is the number of arcs from vertex u to vertex v; and AD [u, u] is
twice the number of self-loops at u.
Example 1.6.6: The adjacency matrix of the digraph D in Figure 1.6.6 uses the vertex
ordering u, v, w.
v u v w
c u " 4 1 0 #
u g AD = v 0 2 1
a b
f
h w 1 2 0
d
w
definition: The incidence matrix of a general digraph D is the matrix whose rows and
columns are indexed by some orderings of VD and ED , respectively, such that
0 if v is not an endpoint of e
1 if v is the head of e
ID [v, e] =
−1 if v is the tail of e
2 if e is a self-loop at v
Example 1.6.7: Figure 1.6.7 shows a digraph and its incidence matrix.
v aa bb c cd e df ge h f g h
u u 2 22 1 10 0 00 00 -1 0 0 −1
2
c
u -1−1 −1 0
a b
f IGID== v v00 00 1 1 1 -1 01 0 0
h e w w
00 00 0 00 0 00 10 1 0 1 1
d
x x 00 00 0 0-1 −11
-1 −10
-1 1 −1 0
D w g x
Proof: The assertion holds for r = 1, by the definition of the adjacency matrix and the
fact that walks of length 1 are the edges of the graph. The inductive step follows from the
definition of matrix multiplication (see Exercises). ♦
Example 1.6.8: Squaring the adjacency matrix for the graph from Example 1.6.1 gives
the number of walks of length 2.
p q p q r s p q r s
p 0 1 1 1 p 3 1 1 2
AG = q 1 0 0 1 (A )2 = q 1
G
2 2 1
r 1 0 0 1 r 1 2 2 1
r s s 1 1 1 0 s 2 1 1 3
Since (AG )2 [p, p] = 3, there are three p-p walks of length 2: hp, q, pi, hp, r, pi, hp, s, pi. Also,
(AG )2 [p, q] = 1, and there is only one p-q walk of length 2: hp, s, qi.
Proposition 1.6.3: If AD is the adjacency matrix of a simple digraph D, then the sum of
the entries of a row of the adjacency matrix gives the outdegree of the corresponding vertex
and the sum of the entries of a column of the adjacency matrix gives the indegree of the
corresponding vertex. ♦ (Exercises)
Proposition 1.6.4: Let D be a simple digraph with adjacency matrix AD . Then the value
of element ArD [u, v] of the rth power of matrix AD equals the number of directed u-v walks
of length r. ♦ (Exercises)
The definition of graph isomorphism implies that two graphs are isomorphic if and only
if it is possible to order their respective vertex-sets so that their adjacency matrices are
identical. If two graphs G and H have different degree-sequences, then they are not graph
isomorphic. A brute-force algorithm to test for graph isomorphism would fix an order for VG
in non-increasing degree order and create the adjacency matrix. It would then compare this
matrix to every adjacency matrix for H for which the vertices are ordered in non-increasing
degree order. For all but the smallest graphs, this exhaustive method is inefficient, which is
not surprising in light of the discussion of the isomorphism problem in §2.1.
Example 1.6.9: The graphs in Figure 1.6.8 are isomorphic, because under the orderings
u, w, v, x and a, c, d, b, they have identical adjacency matrices.
uu vv ww uxx v w x
uu vv
uu 00 1u
1 11 011 1 1 1
vv 1 0 11 100
AAGG == AG 1= 0w 0 1 1
ww 11 v
11
00 111 1 0 0
xx ww xx 11 0
0x 11 100 1 0 0
aa dd
cca bbc b d
aa bb
aa 00 a11 110 111 1 1
cc dd 11 00 111 000
AAHH == AH = c 1 1
cc 11 b 11 001 111 0 0
bb 11 d00 111 001 0 0
dd
Observe that changing the orderings of VG and EG permutes the rows and columns of their
incidence matrix, IG . The next two propositions follow immediately from the definition of
the incidence matrix.
Section 1.6 Formal Specifications for Graphs and Digraphs 49
Proposition 1.6.5: If IG is the incidence matrix of a general graph G, then the sum of
the entries in any row of IG equals the degree of the corresponding vertex. ♦ (Exercises)
Proposition 1.6.6: If IG is the incidence matrix of a general graph G, then the sum of
the entries in any column of IG equals 2. ♦ (Exercises)
These two propositions lead to another proof of Euler’s theorem that the sum of the
degrees equals twice the number of edges. In particular, the sum of the degrees is simply
the sum of the row-sums of the incidence matrix, and the sum of the column-sums equals
twice the number of edges. The result follows since these two sums both equal the sum of
all the entries of the matrix.
Remark: Our approach treats a digraph as an augmented type of graph, where each edge
e of a digraph is still associated with a subset endpts(e), but which now also includes a
mark on one of the endpoints to specify the head of the directed edge.
This viewpoint is partly motivated by its impact on computer implementations of graphs
(see the computational notes below), but it has some advantages from a mathematical
perspective as well. Regarding digraphs as augmented graphs makes it easier to view certain
results that tend to be established separately for graphs and for digraphs as a single result
that applies to both.
edges e f g h
endpts u xh v v
wh u z u
derlying graph.
1.6.3 How many different matrices specify, as incidence matrices, general graphs on four
vertices and seven edges, two of which are self-loops?
1.6.4 Given an adjacency matrix for a general graph, how would you determine the number
of vertices, edges, and self-loops?
1.6.6 Determine whether the given incidence table represents a strongly connected digraph.
Assume that there are no isolated vertices.
(c) edges a b c d e
endpts u v wh v w
vh uh x xh vh
1.7.3 Draw a simple connected graph H whose line graph L(H) has the degree sequence
h3, 3, 2, 2, 2, 1, 1i, such that H is not isomorphic to the graph G of Exercise 1.10.2.
1.7.4 What is the diameter of the Petersen graph? Explain.
1.7.5 Find an r-regular graph with diameter 2 and girth 5, or show it does not exist for the
following values of r.
(a) r = 2 (b) r = 3 (c) r = 4
1.7.8 Prove that a graph G is bipartite if and only if it has the following property:
Every subgraph H contains an independent set of vertices whose cardinality is at least half
the cardinality of VH .
1.7.9 Prove that in a connected graph, any two longest paths must have a vertex in common.
1.7.10 Let G be a simple bipartite graph with at least 5 vertices. Prove that G is not
bipartite.
1.7.11 Let G be a graph whose vertices are the bitstrings of length 4 such that two bitstrings
are adjacent if they differ either in exactly one bit or in all four bits.
a. Write the vertex sequence of a minimum length cycle in the edge-complement G.
b. What is the diameter of the graph G? Explain.
Glossary 51
definition: A graph G is edge-critical for a property P if G has property P, but for every
edge e, the graph G − e does not have property P.
GLOSSARY
acyclic: having no cycles.
adding an edge between two vertices u and v of a graph G: creating a supergraph with
vertex-set VG and edge-set EG ∪ {e}.
adding a vertex v to a graph G: creating a supergraph, denoted G ∪ {v}, with vertex-set
VG ∪ {v} and edge-set EG .
adjacency matrix of a simple digraph D, denoted AD : the matrix whose rows and
columns are both indexed by identical orderings of VG , such that
1 if there is an edge from u to v
AD [u, v] =
0 otherwise
adjacency matrix of a simple graph G, denoted AG : the matrix whose rows and
columns are both indexed by identical orderings of VG , such that
1 if u to v are adjacent
AG [u, v] =
0 otherwise
adjacency table: a table with a row for each vertex, each containing the list of neighbors
of that vertex.
adjacent edges: two edges that have an endpoint in common.
adjacent vertices: two vertices joined by an edge.
arc: an edge, one of whose endpoints is designated as the tail, and whose other endpoint
is designated as the head; a synonym for directed edge.
arc multiplicity: the number of arcs within a multi-arc.
52 Chapter 1 FOUNDATIONS
endpoints of an edge: the one or two vertices that are associated with that edge.
Eulerian graph: a connected graph that has an Eulerian tour.
Eulerian tour: a closed Eulerian trail.
Eulerian trail in a graph: a trail that contains every edge of that graph.
forest: an acyclic graph.
girth of a graph G: the length of a shortest cycle in G.
graph G = (V, E): a mathematical structure consisting of two sets, V and E. The elements
of V are called vertices (or nodes), and the elements of E are called edges. Each edge
has a set of one or two vertices associated to it, which are called its endpoints.
graphic sequence: a non-increasing sequence hd1 , d2 . . . dn i that is the degree sequence of
a simple graph.
Hamiltonian cycle in a graph: a cycle that uses every vertex of that graph.
head of an arc: the endpoint to which that arc is directed.
hypercube graph Qn of dimension n: the iterated product K2 ×· · ·×K2 of n copies of K2 .
Equivalently, the graph whose vertices correspond to the 2n bitstrings of length n and
whose edges correspond to the pairs of bitstrings that differ in exactly one coordinate.
incidence: the relationship between an edge and its endpoints.
incidence matrix ID of a digraph D: a matrix whose rows and columns are indexed by
VD and ED , respectively, such that
0 if v is not an endpoint of e
1 if v is the head of e
ID [v, e] =
−1 if v is the tail of e
2 if e is a self-loop at v
incidence matrix IG of a graph G: a matrix whose rows and columns are indexed by
VG and EG , respectively, such that
0 if v is not an endpoint of e
IG [v, e] = 1 if v is an endpoint of e
2 if e is a self-loop at v
incidence table of a graph or digraph: a table that specifies the endpoints of every edge
and, for a digraph, which endpoint is the head.
indegree of a vertex v: the number of arcs directed to v.
independence number of a graph G: the number of vertices in a largest independent set
in G; denoted α(G).
independent set of vertices in a graph G: a vertex subset W ⊆ VG such that no pair of
vertices in S is joined by an edge, i.e., S is a subset of mutually nonadjacent vertices
of G.
induced subgraph on an edge-set D: the subgraph with edge-set D and with vertex-
set consisting of the endpoints of all edges in D.
induced subgraph on a vertex-set W : the subgraph with vertex-set W and edge-set
consisting of all edges whose endpoints are in W .
Glossary 55
join of a new vertex v to a graph G: the graph that results when each of the preexisting
vertices of G is joined to vertex v; denoted G + v.
join of two graphs G and H: the graph obtained from the graph union G ∪ H by adding
an edge between each vertex of G and each vertex of H; denoted G + H.
length of a walk: the number of edge-steps in the walk sequence.
line graph L(G) of a graph G: the graph that has a vertex for each edge of G, and two
vertices in L(G) are adjacent if and only if the corresponding edges in G have a vertex
in common.
local subgraph of a vertex v: synonym of neighborhood subgraph of v; denoted L(v).
matching in a graph G: a set of mutually nonadjacent edges in G.
mesh, (m1 × m2 × · · · × mn -): the iterated product Pm1 × Pm2 × · · · × Pmn of paths.
—, wraparound: the iterated product Cm1 × Cm2 × · · · × Cmn of paths.
mixed graph: a graph that has undirected edges as well as directed edges.
Möbius ladder graph MLn : a graph obtained from the circular ladder CLn by deleting
from the circular ladder two of its parallel curved edges and replacing them with two
edges that cross; analogous to the relationship between a Möbius band and a cylindrical
band.
multi-arc in a digraph: a set of two or more arcs such that each arc has the same head
and the same tail.
multi-edge in a graph: a set of two or more edges such that each edge has the same set of
endpoints.
mutual reachability of two vertices u and v in a digraph D: the existence of both a
directed u-v walk and a directed v-u walk.
neighbor of a vertex v: any vertex adjacent to v.
(open) neighborhood subgraph of a vertex v: the subgraph induced on the neighbors
of v; denoted L(v). Also called local subgraph.
node: synonym for vertex.
null graph: a graph whose vertex- and edge-sets are empty.
octahedral graph, n-dimensional: the graph On defined recursively, using the join op-
eration, as
2K1 if n = 0
On =
2K1 + On−1 if n ≥ 1
open (directed) walk: a walk whose initial and final vertex are different.
outdegree of a vertex v: the number of arcs directed from v.
partially directed graph: synonym of mixed graph.
path: a walk with no repeated edges and no repeated vertices (except possibly the initial
and final vertex); a trail with no repeated vertices.
path graph: a connected graph that can be drawn so that all of its vertices and edges lie
on a single straight line.
Petersen graph: a special 3-regular, 10-vertex graph first described by Julius Petersen.
platonic graph: a vertex-and-edge configuration of a platonic solid.
56 Chapter 1 FOUNDATIONS
platonic solid: any one of the five regular 3-dimensional polyhedrons - tetrahedron, cube,
octahedron, dodecahedron, or icosahedron.
product G × H of graphs G and H: shortened term for Cartesian product.
proper edge: an edge that is not a self-loop.
proper subgraph of a graph G: a subgraph of G that is neither G nor an isomorphic copy
of G.
radius of a graph G, denoted rad(G): the minimum of the vertex eccentricities.
reachability relation for a graph G: the equivalence relation on VG , where two vertices
are related if one is reachable from the other.
reachable from a vertex v: said of a vertex for which there is a walk from v.
deck of a graph G: the vertex-deletion subgraph list of G, with no labels on the vertices.
reconstruction problem for graphs: the unsolved problem of deciding whether two non-
isomorphic graphs with three or more vertices can have the same vertex-deletion sub-
graph list.
reduction of a walk W by a walk W 0 : the walk that results when all of the vertices and
edges of W 0 , except for one of the vertices common to both walks, are deleted from W.
regular graph: a graph whose vertices all have equal degree.
self-loop: an edge whose endpoints are the same vertex.
simple graph (digraph): a graph (digraph) with no multi-edges or self-loops.
spanning subgraph of a graph G: a subgraph H of G with VH = VG .
spanning tree: a spanning subgraph that is a tree.
strongly connected digraph: a digraph in which every two vertices are mutually reach-
able.
strong orientation of a graph: an assignment of directions to the edges of a graph so that
the resulting digraph is strongly connected.
subdigraph of a digraph D: a digraph whose underlying graph is a subgraph of the un-
derlying graph of D, and whose edge directions are inherited from D.
subgraph of a graph G: a graph H whose vertices and edges are all in G, or any graph
isomorphic to such a graph.
—, proper: a subgraph that is neither G nor an isomorphic copy of G.
—, spanning: a subgraph H with VH = VG .
subwalk of a walk W : a walk consisting of a subsequence of consecutive entries of the walk
sequence of W .
supergraph: the “opposite” of subgraph; that is, H is a supergraph of G if and only if G
is a subgraph of H.
suspension of a graph G from a new vertex v: a synonym for join.
tail of an arc: the endpoint from which that arc is directed.
tournament: a digraph whose underlying graph is a complete graph.
trail: a walk with no edge that occurs more than once.
tree: a connected graph that has no cycles.
Glossary 57
trivial walk, trail, path, or graph: a walk, trail, path, or graph consisting of one vertex and
no edges.
underlying graph of a directed or mixed graph G: the graph that results from removing
all the designations of head and tail from the directed edges of G (i.e., deleting all the
edge directions).
(graph) union of two graphs G = (V, E) and G0 = (V 0 , E 0 ): the graph G∪G0 whose vertex-
set and edge-set are the disjoint unions, respectively, of the vertex-sets and edge-sets of
G and G0 .
—, n-fold self- : the iterated disjoint union G∪· · ·∪G of n copies of the graph G; denoted
nG.
valence: a synonym for degree.
vertex: an element of the first constituent set of a graph; a synonym for node.
vertex-cut of a graph: a subset of vertices whose removal increases the number of compo-
nents.
vertex-deletion subgraph G − v: the subgraph of G induced on the vertex subset VG −
{v}.
vertex-deletion subgraph list: a list of the isomorphism types of the collection of vertex-
deletion subgraphs.
walk from vertex u to vertex v: an alternating sequence of vertices and edges, representing
a continuous traversal from vertex u to vertex v.
weighted graph: a graph in which each edge is assigned a number, called an edge-weight.
n-wheel Wn : the join K1 + Cn of a single vertex and an n-cycle.
—, even: a wheel for n even.
—, odd: a wheel for n odd.
Chapter 2
INTRODUCTION
Deciding when two line drawings represent the same graph can be quite difficult for
graphs containing more than a few vertices and edges. A related task is deciding when two
graphs with different specifications are structurally equivalent, that is, whether they have
the same pattern of connections. Designing a practical algorithm to make these decisions is
a famous unsolved problem, called the graph-isomorphism problem.
59
60 Chapter 2 ISOMORPHISMS AND SYMMETRY
a
1 2 1' 2'
b b'
c
d e d' e'
G H
3 3'
Proof: The first statement follows from the definition of graph homomorphism. To prove
the converse, let e be an arbitrary edge in EG with endpoints v and w. Since, fV preserves
adjacency, fV (v) and fV (w) are adjacent in H, and since H is a simple graph, there is exactly
one edge e0 with endpoints fV (v) and fV (w). Thus, for any homomorphism (fV , fE ) from
G to H, it must be the case that fE (e) = e0 . ♦
Section 2.1 Graph Homomorphisms and Isomorphisms 61
Example 2.1.2: Figure 2.1.2 specifies an isomorphism between the two simple graphs
shown. Checking that the given vertex bijection is structure-preserving is left to the reader.
6 7 v1 = f(0) v5 = f(1)
a=f(0) b=f(1)
2 v2 = f(3)
d=f(3) v6 = f(2)
c=f(2)
3
4 5 f=f(5) e=f(4)
v3 = f(5) v7 = f(4)
g=f(6)
v4 = f(6) h=f(7)
v8 = f(7)
0 1
Alternatively, one may simply relabel the vertices of the second graph with the names of
the vertices in the first graph, as shown in Figure 2.1.3.
6 7 0 1
a=f(0) b=f(1)
2 d=f(3) 3 2
c=f(2)
3
4 5 f=f(5) 5 e=f(4)
4
g=f(6) 6 h=f(7)
7
0 1
Example 2.1.3: The vertex function j 7→ j + 4 depicted in Figure 2.1.4 is bijective and
adjacency-preserving, but it is not an isomorphism since it does not preserve nonadjacency.
In particular, the nonadjacent pair {0, 2} maps to the adjacent pair {4, 6}.
1 2 5 6
0 3 4 7
Example 2.1.4: The vertex function j 7→ j mod 2 depicted in Figure 2.1.5 preserves
adjacency and nonadjacency, but it is not an isomorphism, since it is not bijective.
Example 2.1.5: Any graph isomorphism from graph G to H shown in Figure 2.1.6, must
send the edges in {x, y, z} to edges in {a, b, c}, and thus must send vertices in {2, 3} to ver-
tices in {1, 3}. Thus, there are two possible vertex bijections and six possible edge bijections,
giving 12 distinct graph isomorphisms from G to H.
1 2 1 2
x c
y
z a b
G H
3 3
f(110)
101
100
f(000) f(100) f(011)
011 f(111)
010
f(101)
Figure 2.1.7 Hypercube graph Q3 and circular ladder CL4 are isomorphic.
Section 2.1 Graph Homomorphisms and Isomorphisms 63
Example 2.1.7: The complete bipartite graph K3,3 is shown on the left in Figure 2.1.8,
and the Möbius ladder M L3 is shown on the right (obtained from the circular ladder CLn
by deleting from the circular ladder two of its parallel curved edges and replacing them with
two edges that cross-match their endpoints). Both graphs have 6 vertices and 9 edges, and
both are 3-regular. The vertex labelings for the two drawings specify an isomorphism.
0
0 2 4
1
4 2
1 3 5 5 3
K 3,3 ML 3
Figure 2.1.8 Bipartite graph K3,3 and Möbius ladder ML3 are isomorphic.
Figure 2.1.9 The four isomorphism types for a simple 3-vertex graph.
Example 2.1.8: The cycle graphs C3 , C4 , and C5 are all subgraphs of the graph G of
Figure 2.1.10.
G B2 D3 K3
Remark: In general, the ideal situation in which the available network (the host) is a
supergraph of the required network (the guest) is not likely to occur. More realistically, one
would like to associate the nodes of the guest with the nodes of the host in such a way as
to minimize the decrease in performance of the algorithm.
Section 2.1 Graph Homomorphisms and Isomorphisms 65
Amalgamations
One way to construct new graphs is to paste together a few standard recognizable “graph
parts”, which become subgraphs of the resulting big new graph. Pasting on vertices leads
directly to pasting on arbitrary subgraphs, via an isomorphism between them.
definition: Let G and H be disjoint graphs, with u ∈ VG and v ∈ VH . The vertex
amalgamation (G ∪ H)/{u = v} is the graph obtained from the union G ∪ H by merging
(or amalgamating) vertex u of graph G and vertex v of graph H into a single vertex, called
uv.† The vertex-set of this new graph is (VG − {u}) ∪ (VH − {v}) ∪ {uv}, and the edge-set
is EG ∪ EH , except that any edge that had u or v as an endpoint now has the amalgamated
vertex uv as an endpoint instead.
Example 2.1.10: Figure 2.1.12 illustrates an amalgamation of a 3-cycle and a 4-cycle, in
which vertex u of the 3-cycle is identified with vertex v of the 4-cycle.
u v
uv
In this example, no matter which vertices are chosen in the 3-cycle and the 4-cycle,
respectively, the isomorphism type of the amalgamated graph is the same. This is due to
the symmetry of the two cycles.
Example 2.1.11: Figure 2.1.13 illustrates the four different isomorphism types of graphs
that can be obtained by amalgamating P3 and P4 at a vertex.
When pasting on an arbitrary pair of isomorphic subgraphs, the isomorphism type of the
resulting graph may depend on exactly how the vertices and edges of the two subgraphs are
matched together. The matching of subgraph to subgraph is achieved by an isomorphism.
definition: Let G and H be disjoint graphs, with X a subgraph of G and Y a subgraph
of H. Let f : X → Y be an isomorphism between these subgraphs. The amalgamation
of G and H modulo the isomorphism f : X → Y is the graph obtained from the
union G ∪ H by merging each vertex u and each edge e of subgraph X with their images
f (u) and f (e) in subgraph Y . The amalgamated vertex is generically denoted uf (u), and
† In other contexts, the juxtaposition notation uv often denotes an edge with endpoints u and v. In this
the amalgamated edge is generically denoted ef (e). The vertex-set of this new graph is
(VG − VX ) ∪ (VH − VY ) ∪ {uf (u)|u ∈ VX }, and the edge-set is (EG − EX ) ∪ (EH − EY ) ∪
{e f (e)|e ∈ VX }, except that any edge that had u ∈ VX or f (u) ∈ VY as an endpoint now
has the amalgamated vertex uf (u) as an endpoint instead. This general amalgamation is
denoted (G ∪ H)/f : X → Y .
definition: In an amalgamated graph (G ∪ H)/f : X → Y , the image of the pasted sub-
graphs X and Y is called the subgraph of amalgamation.
Example 2.1.12: Each of the six different isomorphisms from the 3-cycle in graph G to
the 3-cycle in graph H in Figure 2.1.14 leads to a different amalgamated graph.
b y
a c x z
G H
Figure 2.1.14 Two graphs that each contain a 3-cycle.
by bz
bx
cz ay az cy
ax cx
by bz
bx
cx az ax ay
cy cz
Example 2.1.13: The four different isomorphism types of a simple digraph with three
vertices and three arcs are shown in Figure 2.1.16. Notice that non-isomorphic digraphs can
have underlying graphs that are isomorphic.
The following results about digraphs are analogous to those for graphs, mentioned earlier
in this section.
Theorem 2.1.8: Let G and H be isomorphic digraphs. Then they have the same number
of vertices and the same number of arcs.
Theorem 2.1.9: Let f : G → H be a digraph isomorphism and let v ∈ VG . Then
indegree(f (v)) = indegree(v) and outdegree(f (v)) = outdegree(v).
Corollary 2.1.10: Let G and H be isomorphic digraphs. Then they have the same indegree
and outdegree sequences.
Corollary 2.1.11: Let f : G → H be a digraph isomorphism and let d ∈ DG . Then the
head of arc f (d) has the same indegree and outdegree as the head of d, and the tail of arc
f (d) has the same indegree and outdegree as the tail of d.
2.1.8 Find a vertex-bijection that specifies an isomorphism between the two graphs.
(a) u v
r s t z
x w
(b) u v
s z
r t
x w
(c) u v
s z
y
q
r t
x w
(d) u v
s
z
r t
x w
2.1.9 Give an example of two non-isomorphic 5-vertex digraphs whose underlying graphs
are isomorphic.
2.1.10 Give an example of two non-isomorphic 9-vertex graphs with the same degree se-
quence.
2.1.11 Find all possible isomorphism types of the given kind of graph.
(a) A 6-vertex forest with exactly two components.
(b) A simple 4-vertex graph with exactly two components.
(c) A simple 5-vertex graph with exactly three components.
(d) A simple 6-vertex graph with exactly three components.
π = (1 7 9 3)(2 4 8 6)(5)
Remark: Often the disjoint cycle form excludes the cycles of length 1. Thus, the permu-
tation π in Example 2.2.1 would typically be written π = (1 7 9 3)(2 4 8 6).
Geometric Symmetry
A geometric symmetry on a graph drawing can be used to represent an automorphism
on the graph.
70 Chapter 2 ISOMORPHISMS AND SYMMETRY
Example 2.2.2: The graph K1,3 has six automorphisms. Each of them is realizable by a
rotation or reflection of the drawing in Figure 2.2.1.
u
a
x
c b
w v
For instance, a 120◦ clockwise rotation of the figure corresponds to the graph automor-
phism with vertex-permutation (x)(u v w) and edge-permutation (a b c). Also, reflection
through the vertical axis corresponds to the graph automorphism with vertex-permutation
(x)(u)(v w) and edge-permutation (a)(b c). The following table lists all the automorphisms
of K1,3 and their corresponding vertex- and edge-permutations.
Vertex- Edge-
Symmetry Permutation Permutation
identity (u)(v)(w)(x) (a)(b)(c)
120◦ rotation (x)(u v w) (a b c)
240◦ rotation (x)(u w v) (a c b)
refl. thru a (x)(u)(v w) (a)(b c)
refl. thru b (x)(v)(u w) (b)(a c)
refl. thru c (x)(w)(u w) (c)(a b)
Since the graph K1,3 has four vertices, the total number of permutations on its vertex-set
is 24. By Theorem 2.1.4, every automorphism on K1,3 must fix the 3-valent vertex. Since
there are only six permutations of four objects that fix one designated object, it follows
that there can be no more than six automorphisms of K1,3 .
Remark: Except for a few exercises, the focus of this section is on simple graphs. Since
each automorphism of a simple graph G is completely specified by a structure-preserving
vertex-permutation, the automorphism and its corresponding vertex-permutation are often
regarded as the same object.
Example 2.2.3: Figure 2.2.2 shows a graph with four vertex-permutations, each written
in disjoint cyclic notation. It is easy to verify that these vertex-permutations are structure-
preserving, so they are all graph automorphisms. We observe that the automorphisms λ0 , λ1 ,
λ2 , and λ3 correspond, respectively, to the identity, vertical reflection, horizontal reflection,
and 180◦ rotation. Proving that there are no other automorphisms is left as an exercise.
4 Automorphisms
Automorphisms
3 λ0=(1)(2)(3)(4)(5)(6)(7)(8)
λ0 = (1)(2)(3)(4)(5)(6)(7)(8)
1 2 7 8 λ1=(1
λ1 =8)(2(17)(3)(4)(5)(6)
8)(2 7)(3)(4)(5)(6)
λ2 = (1)(2)(3 5)(4 6)(7)(8)
λ2=(1)(2)(3 5)(4 6)(7)(8)
5 λ3 = (1 8)(2 7)(3 5)(4 6)
λ3=(1 8)(2 7)(3 5)(4 6)
6
0 0 5 1
(a) (b) (c) 2 0
5
4 1 8 1
9 6 6 3 4
4 7
6
8 7 8 9
9
3 2 3 2 5 7
Example 2.2.6: The complete graph Kn is vertex-transitive and edge-transitive for every
n. (See Exercises.)
10 3
9 4
8 5
7 6
4 Automorphisms
Automorphisms
3 λ0=(1)(2)(3)(4)(5)(6)(7)(8)
λ0 = (1)(2)(3)(4)(5)(6)(7)(8)
1 2 7 8 λ1=(1
λ1 =8)(2(17)(3)(4)(5)(6)
8)(2 7)(3)(4)(5)(6)
λ2 = (1)(2)(3 5)(4 6)(7)(8)
λ2=(1)(2)(3 5)(4 6)(7)(8)
5 λ3 = (1 8)(2 7)(3 5)(4 6)
λ3=(1 8)(2 7)(3 5)(4 6)
6
Theorem 2.2.1: All vertices in the same orbit have the same degree.
Example 2.2.10: The complete graph Kn has one vertex orbit and one edge orbit.
Example 2.2.11: Each of the two partite sets of the complete bipartite graph Km,n is a
vertex orbit. The graph is vertex-transitive if and only if m = n; otherwise it has two vertex
orbits. However, Km,n is always edge-transitive (see Exercises).
4 1
Vertex orbits: {0}, {1, 4}, and {2, 3}
Edge orbits: {23}, {01, 04}, and {12, 13, 24, 34}
3 2
Since edge 23 is the only edge, both of whose endpoints have three 3-valent neighbors, it
is in an orbit by itself. The edges 01 and 04 are the only edges with a 2-valent endpoint
and a 3-valent endpoint, so they could not be in the same orbit with any edges except each
other. The vertical reflection establishes that the pair {01, 04} is indeed in the same orbit,
as are the pair {12, 34} and the pair {13, 24}. The latter two pairs combine into a single
edge orbit, because of the automorphism (0)(1)(4)(2 3), which swaps edges 12 and 13 as
well as edges 24 and 34. Thus, the edge orbits are {23}, {01, 04}, and {12, 13, 24, 34}.
Example 2.2.13: Notice how the orbits in the previous example reflect the symmetry of
the graph. In general, recognizing the symmetry of a graph expedites the determination of
its orbits. Consider the 4-regular graph G in Figure 2.2.7.
0 1
3
6 2
5 4
When we look at vertices 0, 2, 3, and 5, we discover that each of them has a set of 3
neighbors that are independent, while vertices 1, 4, and 6 each have two pairs of adjacent
vertices. The redrawing of the graph G shown in Figure 2.2.8 reflects this symmetry.
1 4 6
0 5 2 3
Figure 2.2.8 A redrawn graph and its orbits.
In that form, we see immediately that there are two vertex orbits, namely {0, 2, 3, 5} and
{1, 4, 6}. One of the two edge orbits is {05, 23}, and the other contains all the other edges.
x w u w x w x w
x b w x b w x b w
2.2.3 Determine the number of distinct automorphisms of the graph shown below.
u v
x w
2.2.5 When is the complete bipartite graph Km,n vertex-transitive? Justify your answer.
2.2.6 When is the specified graph edge-transitive? Justify your answer.
(a) circ(9 : 1, m) (b) circ(13 : 1, m) (c) Km,n (d) CLn
Section 2.3 Tests for Non-Isomorphism 75
2.2.7 Find the vertex and edge orbits of the given graph.
55 55 0
0 1 1 2 2 0 0 1 1
(a) (b) (c) (d)
00 66
99 66 99 44 2
00 1 1 0 0 2
44 11 11 7 87 3 3
5 35 8
33 22 3
33 5 5
22
88 77 88 4 4 77 2 2 4 3 6 6 4 4
4 3
In this section, we establish several other graph invariants that are useful for isomorphism
testing and in the construction of isomorphisms.
That the degree sequence is a graph invariant is an immediate consequence from Theorem
2.1.4, which establishes that the degree of a vertex equals the degree of its image under any
graph isomorphism. The invariance of vertex degree under isomorphism is referred to as a
“local invariant.” The following theorem provides another local invariant for isomorphism,
from which the fourth graph invariant in Table 2.3.1 is derived.
76 Chapter 2 ISOMORPHISMS AND SYMMETRY
Example 2.3.1: Figure 2.3.1 shows two non-isomorphic graphs with the same number
of vertices, the same number of edges, and the same degree sequence: (3, 2, 2, 1, 1, 1). By
Theorem 2.1.3, an isomorphism would have to map vertex v in graph G to vertex w in
graph H since they are the only vertices of degree 3 in their respective graphs. However,
the three neighbors of v have degrees 1, 1, and 2, and the structure-preservation property
implies that they would have to be mapped bijectively to the three neighbors of w (i.e., a
forced match), with degrees 1, 2, and 2. This would violate Theorem 2.3.1.
v w
G H
Figure 2.3.1 Non-isomorphic graphs with the same degree sequence.
The following example shows how the same strategy can be used to show that two
digraphs are not isomorphic.
Example 2.3.2: Although the indegree and outdegree sequences of the digraphs in Figure
2.3.2 are identical, these digraphs are not isomorphic. To see this, first observe that vertices
u, v, x, and y are the only vertices in their respective digraphs that have indegree 2. Since
indegree is a local isomorphism invariant (by a digraph analogy to Theorem 2.3.1), u and v
must map to y and x, respectively. But the directed path of length 3 that ends at u would
have to map to a directed path of length 3 that ends at y. Since there is no such path, the
digraphs are not isomorphic.
u v x y
Distance Invariants
definition: Let f : G → H be a graph homomorphism. If W = hv0 , e1 , v1 , . . . , en , vn i
is a walk in graph G, then the image of the walk W is the walk f (W ) =
hf (v0 ) , f (e1 ) , f (v1 ) , . . . , f (en ) , f (vn )i in graph H.
Theorem 2.3.2: The homomorphic image of a graph walk is a walk of the same length.
Proof: This follows directly from the definition of the image of a walk. ♦
† A set has no order and no repetitions, while a list has order and can have repetitions. A multiset is a
5 5
4 4
0 2 0 2
6 6
7 7
CL 4 ML 4
3 3
To reduce the calculation of diameter from checking all 82 = 28 vertex pairs to check-
ing the maximum distance from any one vertex, we first establish that both graphs are
vertex-transitive. For the circular ladder we observe the symmetries of rotation and the iso-
morphism that swaps the inner cycle with the outer cycle. For the Möbius ladder, we observe
that j 7→ j + 1 mod 8 is an automorphism, whose iteration establishes vertex-transitivity.
The maximum distance from vertex 0 in CL4 is 3, to vertex 6. The maximum distance from
vertex 0 in M L4 is 2. Thus, they are not isomorphic.
Subgraph Invariant
Theorem 2.3.6: For each graph-isomorphism type, the number of distinct subgraphs in a
graph having that isomorphism type is a graph invariant.
Proof: Let f : G1 → G2 be a graph isomorphism and H a subgraph of G1 . Then f (H) is
a subgraph of G2 , of the same isomorphism type as H. The bijectivity of f establishes the
invariant. ♦
Corollary 2.3.7: Independence number and clique number are graph invariants.
Example 2.3.3 continued: Independence number could also have been used to show
that CL4 and ML4 are not isomorphic, since α (CL4 ) = 4 and α (M L4 ) = 3.
Example 2.3.4: The five graphs in Figure 2.3.4 are mutually non-isomorphic, even though
they have the same degree sequence. Whereas A and C have no K3 subgraphs, B has two,
D has four, and E has one. Thus, Theorem 2.3.6 implies that the only possible isomorphic
pair is A and C. However, graph C has a 5-cycle, but graph A does not.
78 Chapter 2 ISOMORPHISMS AND SYMMETRY
A B C D E
Figure 2.3.4 Five mutually non-isomorphic, 8-vertex, 3-regular graphs.
Proof: This follows since f maps the vertices of L(u) bijectively to the vertices of L(f (u)),
and since f is edge-multiplicity preserving, by Theorem 2.1.4. ♦
Example 2.3.5: The local subgraphs for graph G of Figure 2.3.5 are all isomorphic to
4K1 . The local subgraphs for graph H are all isomorphic to P4 . Thus, the two graphs are
not isomorphic. Alternatively, we observe that α(G) = 4, but α(H) = 2, and also that
ω(G) = 2, but ω(H) = 3.
G H
Edge-Complementation
The next invariant is particularly useful when analyzing simple graphs that are dense
(i.e., most of the vertex pairs are adjacent).
Theorem 2.3.9: Let G and H both be simple graphs. They are isomorphic if and only if
their edge-complements are isomorphic.
Summary
Table 2.3.1 summarizes these results on graph-isomorphism invariants.
1
1 2
9 4
5 2
6 7 5 3
9 8 7
8 10
4 6 10
3
(a) (b)
2.3.2 Determine whether the graphs in the given pair are isomorphic.
(a) 1 2 a b
5 6 e
f
8 7
g h
4 3 d c
(b) a
1 2 3 4 b c
5 d e
(c) 2 5
g i
6 b
e
1 3 9 10
7 a c h
4 8 f j
d
(d) 1 2 a
5 e b
4 3 d c
(e) 1 2 a b
5 6 c
d
4 3 e f
(f) 1 2 a b
5 6 c d
4 3 e f
(a)
1 3 a b c d
2 4
(b) 1 4 e
7 a b c f g
2
5 6 h
3 8 d
(c) 1 2 3 a b
c
d
4 5 e
(d) 1 2 a b
4 3 d c
(e) 1 a
2 b
4 3 d c
(f) 1 2 3 a b
d c
4 5 6 e f
2.4.7 Draw the isomorphism types of simple graphs with the given degree sequence.
(a) h433222i (b) h333331i
2.4.8 Draw two non-isomorphic 4-regular, 7-vertex simple graphs, and prove that every
4-regular, 7-vertex simple graph is isomorphic to one of them. Hint: consider edge comple-
ments.
2.4.9 Either draw two non-isomorphic 10-vertex, 4-regular bipartite graphs, or prove that
there is only one such graph.
2.4.10 Prove that the graphs circ(13 : 1, 4) and circ(13 : 1, 5) are not isomorphic.
2.4.11 Prove that the complete bipartite graph K4,4 is not isomorphic to the Cartesian
product graph K4 × K2 .
2.4.12 Determine which pairs of graphs in the following list are isomorphic.
circ(8 : 1, 2), circ(8 : 1, 3), circ(8 : 1, 4), circ(8 : 2, 3), circ(8 : 2, 4), circ(8 : 3, 4)
2.4.13 Show that the following two graphs are not isomorphic.
2.4.14 Determine which pairs of the three given graphs are isomorphic.
(a)
A B C
(b)
Glossary 83
(c)
A B C
2.4.15 List the vertex orbits and the edge orbits of the given graph.
(a) (b) u
8 9
6 7 w x
2 5 v
3 4
y z
0 1
2.4.16 Draw each isomorphism type for a 4-vertex, simple graph with exactly two vertex
orbits.
GLOSSARY
adjacency-preserving vertex function f VG → VH between two simple graphs G and
H: for every pair of adjacent vertices u and v in graph G, the vertices f (u) and f (v)
are adjacent in graph H.
—, non- : f (u) and f (v) are nonadjacent in H whenever u and v are nonadjacent in G.
automorphism of a graph G: an isomorphism from the graph to itself, that is, a structure-
preserving permutation πV on VG and a consistent permutation πE on EG ; often written
as π = (πV , πE ).
digraph invariant: a property of a digraph that is preserved by isomorphisms.
disjoint cycle form of a permutation: a notation for specifying a permutation; see Exam-
ple 2.2.1.
edge orbit of a graph G: an edge subset F ⊆ EG such that for every pair of edges d, e ∈ F ,
there is an automorphism of G that maps d to e. Thus, an edge orbit is an equivalence
class of EG under the action of the automorphisms of G.
edge-transitive graph: a graph G such that for every edge pair d, e ∈ EG , there is an
automorphism of G that maps d to e.
graph invariant: a property of a graph that is preserved by isomorphisms.
invariant: a shortened term for graph (or digraph) invariant.
isomorphic digraphs: two digraphs that have an isomorphism between their underlying
graphs that preserves the direction of each edge.
isomorphic graphs: two graphs G and H that have a structure-preserving vertex bijection
between them; denoted G ∼
= H.
84 Chapter 2 ISOMORPHISMS AND SYMMETRY
vertex orbit of a graph G: a vertex subset W ⊆ VG such that for every pair of vertices
u, v ∈ W , there is an automorphism of G that maps u to v. Thus, a vertex orbit is an
equivalence class of VG under the action of the automorphisms of G.
vertex-transitive graph: a graph G such that for every vertex pair u, v ∈ VG , there is an
automorphism of G that maps u to v.
Chapter 3
INTRODUCTION
Trees are important to the structural understanding of graphs and to the algorithmics of
information processing, and given their central role in the design and analysis of connected
networks, they are the backbone of optimally connected networks. A main task in informa-
tion management is deciding how to store data in space-efficient ways that also allow their
retrieval and modification to be time-efficient, and tree-based structures are often the best
way of balancing these competing goals.
Spanning trees capture the connectedness of a graph in the most efficient way, and they
provide a foundation for a systematic analysis of the cycle structure of a graph. Mathemati-
cians regard the algebraic structures underlying the collection of cycles and edge-cuts of a
graph as beautiful in their own right. Establishing connections between linear algebra and
graph theory (in §3.3) provides some powerful analytical tools for understanding a graph’s
structure.
Some connected graphs are “more connected” than others. That is, a connected graph’s
vulnerability to disconnection by edge- or vertex-deletion varies. Two numerical parameters,
vertex-connectivity and edge-connectivity, are useful in measuring a graph’s connectedness.
Intuitively, a network’s vulnerability should be closely related also to the number of al-
ternative paths between each pair of nodes. There is a rich body of mathematical results
concerning this relationship, many of which are variations of a classical result of Menger,
and some of these extend well beyond graph theory.
85
86 Chapter 3 TREES AND CONNECTIVITY
v1 vm
v3
w v2
w
v1 vm
v3
v2
Corollary 3.1.2: If the degree of every vertex of a graph is at least 2, then that graph
must contain a cycle.
Proof: Apply Proposition 3.1.1 to any one of the components of that graph. ♦
The next proposition establishes a fundamental property of trees. Its proof is the first
of several instances that demonstrate the effectiveness of the inductive approach to proving
assertions about trees.
Section 3.1 Characterizations and Properties of Trees 87
Proof: A tree on one vertex is the trivial tree, which has no edges.
Assume for some number k ≥ 1, as an induction hypothesis, that every tree on k vertices
has exactly k − 1 edges. Next consider any tree T on k + 1 vertices. By Proposition 3.1.1, T
contains a leaf, say v. Then the graph T − v is acyclic, since deleting pieces from an acyclic
graph cannot create a cycle. Moreover, T − v is connected, since the vertex v has degree 1
in T. Thus, T − v is a tree on k vertices, and, hence, T − v has k − 1 edges, by the induction
hypothesis. But since deg(v) = 1, it follows that T −v has one edge fewer than T. Therefore,
T has k edges, which completes the proof. ♦
Proof: If G has cycle-edges, then remove them one at a time until the resulting graph G
b
b has n − c(G)
is acyclic. Then G b edges, by Corollary 3.1.4; and c(G)
b = c(G), by Corollary
1.3.7. ♦
Corollary 3.1.5 provides a lower bound for the number of edges in a graph. The next two
results establish an upper bound for certain simple graphs. This kind of result is typically
found in extremal graph theory.
Proposition 3.1.6: Let G be a simple graph with n vertices and k components. If G has
the maximum number of edges among all such graphs, then
n−k+1
|EG | =
2
Proof: Since the number of edges is maximum, each component of G is a complete graph.
If n = k, then G consists of k isolated vertices, and the result is trivially true. If n > k,
then G has at least one nontrivial component. We show that G has exactly one nontrivial
component. Suppose, to the contrary, that C1 = Kr and C2 = Ks , where r ≥ s ≥ 2. Then
the total number of edges contained in these two components is 2r + 2s . However, the graph
that results from replacing C1 and C2 by Kr+1 and Ks−1 , respectively, has r+1 + s−1
2 2
edges in those two components. By expanding these formulas, it is easy to show that the
second graph has r − s + 1 more edges than the first, contradicting the maximality of the
first graph. Thus, G consists of k − 1 isolated vertices and a complete graph on n − k + 1
vertices, which shows that |EG | = n−k+1
2 and completes the proof.
♦
Corollary 3.1.7: A simple n-vertex graph with more than n−1
2 edges must be
connected. ♦
Theorem 3.1.8: Let T be a graph with n vertices. Then the following statements are
equivalent.
1. T is a tree.
2. T contains no cycles and has n − 1 edges.
3. T is connected and has n − 1 edges.
4. T is connected, and every edge is a cut-edge.
5. Any two vertices of T are connected by exactly one path.
6. T contains no cycles, and for any new edge e, the graph T + e has exactly one cycle.
Figure 3.1.2
(5 ⇒ 6) T contains no cycles since any two vertices on a cycle have two different paths
between them, consisting of the opposite routes around the cycle. Furthermore, the addition
of any new edge e to T will create a cycle, since the endpoints of e, say u and v, are already
connected by a path in T. To show that this cycle is unique, suppose two cycles were created.
They both would contain edge e, and the long way around each of these cycles would then
be two different u − v paths in T , contradicting Statement 5.
(6 ⇒ 1) By way of contradiction, assume that T is not connected. Then the addition of
an edge joining a vertex in one component to a vertex in a different component would not
create a cycle, which would contradict Statement 6. ♦
The fundamental properties of a tree are summarized in Table 3.1.1 for easy reference.
1. T is connected.
2. T contains no cycles.
3. Given any two vertices u and v of T , there is a unique u − v path.
4. Every edge in T is a cut-edge.
5. T contains n − 1 edges.
6. T contains at least two vertices of degree 1 if n ≥ 2.
7. Adding an edge between two vertices of T yields a graph with exactly one cycle.
Section 3.1 Characterizations and Properties of Trees 89
Trees as Subgraphs
An arbitrary graph is likely to contain a number of different trees as subgraphs. The
following theorem shows that if a simple n-vertex graph is sufficiently dense (i.e., it has
sufficiently many edges), then it will contain every type of tree up to a certain order.
review from §1.1: The minimum degree of the vertices of a graph G is denoted δmin (G).
Theorem 3.1.9: Let T be any tree on n vertices, and let G be a simple graph such that
δmin (G) ≥ n − 1. Then T is a subgraph of G.
Proof: The result is clearly true if n = 1 or n = 2, since K1 and K2 are subgraphs of every
graph having at least one edge.
Assume that the result is true for some n ≥ 2. Let T be a tree on n + 1 vertices, and let G
be a graph with δmin (G) ≥ n. We show that T is a subgraph of G.
Let v be a leaf of T, and let vertex u be its only neighbor in T. The vertex-deletion subgraph
T − v is a tree on n vertices, so, by the induction hypothesis, T − v is a subgraph of G.
Since degG (u) ≥ n, there is some vertex w in G but not in T − v that is adjacent to u. Let
e be the edge joining vertices u and w (see Figure 3.1.3). Then T − v together with vertex
w and edge e form a tree that is isomorphic to T and is a subgraph of G. ♦
Tree Growing
Several different problem-solving algorithms involve growing a spanning tree, one edge
and one vertex at a time. All these techniques are refinements and extensions of the same
basic tree-growing scheme given in this section.
terminology: For a given tree T in a graph G, the edges and vertices of T are called
tree edges and tree vertices, and the edges and vertices of G that are not in T are called
non-tree edges and non-tree vertices.
Frontier Edges
definition: A frontier edge for a given tree T in a graph is a non-tree edge with one
endpoint in T , called its tree endpoint, and one endpoint not in T , its non-tree endpoint.
Example 3.1.1: For the graph in Figure 3.1.4, the tree edges of a tree T are drawn in
bold. The tree vertices are black, and the non-tree vertices are white. The frontier edges
for T , appearing as dashed lines, are edges a, b, c, and d. The plain edges are the non-tree
edges that are not frontier edges for T .
Observe that when any one of the frontier edges in Figure 3.1.4 is added to the tree T ,
the resulting subgraph is still a tree. This property holds in general, as we see in the next
proposition, and its iterative application forms the core of the tree-growing scheme.
90 Chapter 3 TREES AND CONNECTIVITY
Proposition 3.1.10: Let T be a tree in a graph G, and let e be a frontier edge for T . Then
the subgraph of G formed by adding edge e to tree T is a tree.
Proof: The addition of the frontier edge e to the tree T cannot create a cycle, since one
of its endpoints is outside of T . Moreover, the vertex that was added to the tree is clearly
reachable from any other vertex in the resulting tree. ♦
Remark: Formally, adding a frontier edge to a tree involves adding a new vertex to the
tree, as well as the primary operation of adding an edge, defined in §1.4.
3.1.4 Let G be a connected simple graph on n vertices. Determine a lower bound on the
average degree of a vertex, and characterize those graphs that achieve the lower bound.
92 Chapter 3 TREES AND CONNECTIVITY
3.1.5 Prove that if G is a tree having an even number of edges, then G must contain at
least one vertex having even degree.
3.1.6 Suppose the average degree of the vertices of a connected graph is exactly 2. How
many cycles does G have?
3.1.7 Prove or disprove: A connected n-vertex simple graph with n edges must contain
exactly one cycle.
3.1.8 Prove or disprove: There exists a connected n-vertex simple graph with n + 2 edges
that contains exactly two cycles.
3.1.9 Prove or disprove: There does not exist a connected n-vertex simple graph with n + 2
edges that contains four edge-disjoint cycles.
3.1.10 Prove that H is a maximal acyclic subgraph of a connected graph G if and only if
H is a spanning tree of G. What analogous statement can be made for graphs that are not
necessarily connected?
3.1.11 Prove that if a graph has exactly two vertices of odd degree, then there must be a
path between them.
3.1.12 Show that any nontrivial simple graph contains at least two vertices that are not
cut-vertices.
n−1
3.1.13 Let G be a simple graph on n vertices. Prove that if δmin (G) ≥ 2 , then G is
connected.
3.1.14 Prove that if any single edge is added to a connected graph G, then at least one
cycle is created.
3.1.15 Prove that a graph G is a forest if and only if every induced subgraph of G contains
a vertex of degree 0 or 1.
3.1.16 Characterize those graphs with the property that every connected subgraph is an
induced subgraph.
3.1.17 Indicate the set of frontier edges for the given tree.
w d x
(a)
m
c e r i s
u a f
l y g h
b
v j z k t
w d x
(b)
m
c e r i s
u a f
l y g h
b
v j z k t
w d x
(c)
m
c e r i s
u a f
l y g h
b
v j z k t
Section 3.2 Cycles, Edge-Cuts, and Spanning Trees 93
v1 X1
S e
v2 X2
Then every path in G from v1 to v2 must use at least one edge of hX1 , X2 i − S1 . Thus,
hX1 , X2 i − S1 is an edge-cut of G and, hence, contains a minimal edge-cut S2 . Applying the
same argument, hX1 , X2 i − (S1 ∪ S2 ) either is empty or is an edge-cut of G. Eventually, the
process ends with hX1 , X2 i − (S1 ∪ S2 ∪ . . . Sr ) = ∅, where the Si are edge-disjoint minimal
edge-cuts of G. ♦
Remark: Observe that all of the edges in the relative complement of a spanning forest
could be removed without increasing the number of components. Thus, the cycle rank β(G)
equals the maximum number of edges that can be removed from G without increasing the
number of components. Therefore, β(G) is a measure of the edge redundancy with respect
to the graph’s connectedness.
definition: A full spanning forest of a graph G is a spanning forest consisting of a
collection of trees, such that each tree is a spanning tree of a different component of G.
Example 3.2.1: The subgraph shown with bold edges in Figure 3.2.1 is a spanning forest,
but is not a full spanning forest. To be a full spanning forest two more edges would need to
be added.
definition: Let F be a full spanning forest of a graph G, and let e be any edge in the
relative complement of forest F . The cycle in the subgraph F + e (existence and uniqueness
guaranteed by Theorem 3.1.8 (item 6)) is called a fundamental cycle of G (associated
with the spanning forest F ).
Remark: Each of the edges in the relative complement of a full spanning forest F gives
rise to a different fundamental cycle.
definition: The fundamental system of cycles associated with a full spanning forest
F of a graph G is the set of all fundamental cycles of G associated with F .
By the remark above, the cardinality of the fundamental system of cycles of G associated
with a given full spanning forest of G is the cycle rank β(G).
definition: Let F be a full spanning forest of a graph G, and let e be any edge of F . Let V1
and V2 be the vertex-sets of the two new components of the edge-deletion subgraph F − e.
Then the partition-cut hV1 , V2 i which is a minimal edge-cut of G by Proposition 3.2.3, is
called a fundamental edge-cut (associated with F ).
Remark: For each edge of F , its deletion gives rise to a different fundamental edge-cut.
definition: The fundamental system of edge-cuts associated with a full spanning
forest F is the set of all fundamental edge-cuts associated with F .
Thus, the cardinality of the fundamental system of edge-cuts associated with a given full
spanning forest of G is the edge-cut rank of G.
Remark: If F is a full spanning forest of a graph G, then each of the components of F is a
spanning tree of the corresponding component of G. Since the removal or addition of an edge
in a general graph affects only one of its components, the definitions of fundamental cycle
and fundamental edge-cut are sometimes given in terms of a spanning tree of a connected
graph. All of the remaining assertions in this section are stated in terms of a connected
graph but can easily be restated for graphs having two or more components.
96 Chapter 3 TREES AND CONNECTIVITY
Example 3.2.2: Figure 3.2.2 shows a fundamental system of cycles and a fundamental
system of edge-cuts for a graph G. Both systems are associated with the spanning tree
whose edges are drawn in bold. Notice that the fundamental system of edge-cuts does not
contain every minimal edge-cut of graph G. For instance, the edge-cut consisting of the
three edges incident on vertex v is a minimal one but is not in the fundamental system.
f
fund. system a e b d
of cycles f c
a e
f
d e
b
c fund. system f
b d a e
G of edge-cuts c c c
Proof: By Proposition 3.2.2, edge-set C contains a cycle if and only if C is not contained
in any spanning tree of G, which means that the relative complement of every spanning
tree of G has at least one edge in common with C. ♦
Proposition 3.2.8: A cycle and a minimal edge-cut of a connected graph have an even
number of edges in common.
Proof: Let C be a cycle and S be a minimal edge-cut of a connected graph G. Let V1 and
V2 be the vertex-sets of the two components G1 and G2 of G − S. Then each edge of S
joins a vertex in V1 to a vertex in V2 . Now consider a traversal of the edges of the cycle
C. Without loss of generality, assume that the traversal begins at some vertex in V1 . Then
each time the traversal uses an edge in S in moving from V1 to V2 , it will have to return to
V2 by traversing another edge of S. This is possible only if C and S have an even number
of edges in common. ♦
Example 3.2.2 continued: It is easy but tedious to check that each of the three cycles in
graph G of Figure 3.2.2 has either zero or two edges in common with each minimal edge-cut
of G.
Section 3.2 Cycles, Edge-Cuts, and Spanning Trees 97
Proposition 3.2.9: Let T be a spanning tree of a connected graph, and let C be a funda-
mental cycle with respect to an edge e∗ in the relative complement of T . Then the edge-set
of cycle C consists of edge e∗ and those edges of tree T whose fundamental edge-cuts contain
e∗ .
Proof: Let e1 , e2 , . . . , ek be the edges of T that, with e∗ , make up the cycle C, and let Si
be the fundamental edge-cut with respect to ei , 1 ≤ i ≤ k.
Edge ei is the only edge of T common to both C and Si (by the definitions of C and Si ).
By Proposition 3.2.8, C and Si must have an even number of edges in common, and, hence,
there must be an edge in the relative complement of T that is also common to both C and
Si . But e∗ is the only edge in the complement of T that is in C. Thus, the fundamental
edge-cut Si must contain e∗ , 1 ≤ i ≤ k.
To complete the proof, we must show that no other fundamental edge-cuts associated
with T contain e∗ . So let S be the fundamental edge-cut with respect to some edge b of T ,
different from e1 , e2 , . . . , ek . Then S does not contain any of the edges e1 , e2 , . . . , ek (by
definition of S). The only other edge of cycle C is e∗ ; so by Proposition 3.2.8, edge-cut S
cannot contain e∗ . ♦
Example 3.2.2 continued: The 3-cycle in Figure 3.2.2 is the fundamental cycle obtained
by adding edge e to the given spanning tree. Of the four fundamental edge-cuts associated
with that spanning tree, only the second and fourth ones contain edge e. The tree edges in
these two edge-cuts, namely f and a, are the other two edges of the 3-cycle.
The proof of the next proposition uses an argument similar to the one just given and is left
as an exercise.
Proposition 3.2.10: The fundamental edge-cut with respect to an edge e of a spanning
tree T consists of e and exactly those edges in the relative complement of T whose funda-
mental cycles contain e. ♦
(Exercises)
Eulerian Graphs
This section closes with a characterization of Eulerian graphs that dates back to as early
as 1736, when Euler solved and generalized the Königsberg Bridge Problem.
review from §1.2: An Eulerian tour in a graph is a closed trail that contains every edge
of that graph. An Eulerian graph is a graph that has an Eulerian tour.
(2 ⇒ 3) Since G is connected and every vertex has even degree, G cannot be a tree and
therefore contains a cycle, say C1 . If C1 includes all the edges of G, then statement 3 is
established. Otherwise, the graph G1 = G − EC1 has at least one nontrivial component.
Furthermore, since the edges that were deleted from G form a cycle, the degree in G1 of each
vertex on C1 is reduced by 2, and, hence, every vertex of G1 still has even degree. It follows
that G1 contains a cycle C2 . If all of the edges have been exhausted, then EG = EC1 ∪ EC2 .
Otherwise, consider G2 = G − EC1 − EC2 , and continue the procedure until all the edges are
exhausted. If Cn is the cycle obtained at the last step, then EG = EC1 ∪ EC2 ∪ . . . ∪ ECn ,
which completes the proof of the implication 2 ⇒ 3.
(3 ⇒ 1) Assume that EG is the union of the edge-sets of m edge-disjoint cycles of G. Start
at any vertex v1 on one of these cycles, say C1 , and consider T1 = C1 as our first closed
trail. There must be some vertex of T1 , say v2 , that is also a vertex on some other cycle,
say C2 . Form a closed trail T2 by splicing cycle C2 into T1 at vertex v2 . That is, trail T2 is
formed by starting at vertex v1 , traversing the edges of T1 until v2 is reached, traversing all
the edges of cycle C2 , and completing the closed trail T2 by traversing the remaining edges
of trail T1 . The process continues until all the cycles have been spliced in, at which point
Tm is an Eulerian tour of G. ♦
Corollary 3.2.12: A connected graph G has an open Eulerian trail if and only if it has
exactly two vertices of odd degree. Furthermore, the initial and final vertices of an open
Eulerian trail must be the two vertices of odd degree.
Proof: The addition of an edge between the two odd vertices creates an Eulerian graph.
The removal of that edge from any Eulerian tour, gives an open Eulerian trail on the original
graph, starting at one of the odd vertices and ending at the other. ♦
v
u
(a) {a, e, c, d} y
a e
(b) {a, e, g, d} f
v x
(c) {e, f, c, d} g
G b d
(d) {a, b, g, c}
w z
c
(e) {e, f, g, d}
3.2.2 Prove that each edge of a connected graph G lies in a spanning tree of G.
3.2.3 Give an alternative proof of Proposition 3.2.2 that avoids the “repeat the process”
phrase by considering a connected spanning subgraph of G that contains H, and that has
the least number of edges among all such subgraphs.
3.2.4 Prove that in a tree, every vertex of degree greater than 1 is a cut-vertex.
3.2.5 Prove that every nontrivial connected graph contains a minimal edge-cut.
3.2.6 Prove that the removal of a minimal edge-cut from any graph increases the number
of components by exactly 1.
3.2.7 Let T1 and T2 be two different spanning trees of a graph. Show that if e is any edge
in tree T1 , then there exists an edge f in tree T2 such that T1 − e + f is also a spanning tree.
(Hint: Apply Proposition 3.2.6 to the fundamental edge-cut associated with T1 and e.)
3.2.8 Prove that a subgraph of a connected graph G is a subgraph of the relative complement
of some spanning tree if and only if it contains no edge-cuts of G.
definition: The line graph L(G) of a graph G has a vertex for each edge of G, and two
vertices in L(G) are adjacent if and only if the corresponding edges in G are adjacent.
3.2.12 Prove that if a simple graph G is Eulerian, then its line graph L(G) is Eulerian.
100 Chapter 3 TREES AND CONNECTIVITY
E1 ⊕ E2 = (E1 − E2 ) ∪ (E2 − E1 )
The next proposition asserts that WE (G) under the ring-sum operation forms a vector
space over the field of scalars GF (2), where the scalar multiplication ∗ is defined by 1 ∗ S
= S and 0 ∗ S = ∅ for any S in WE (G). Its proof is a straightforward verification of each
of the defining properties of a vector space and is left as an exercise. (The basic definitions
and properties of a vector space and of the finite field GF (2) appear in Appendix A.4.)
Proposition 3.3.1: WE (G) is a vector space over GF (2). ♦ (Exercises)
Proof: If H = {ei1 , ei2 , . . . , eir } is any vector in WE (G), then H = {ei1 }⊕{ei2 }⊕· · ·⊕{eir }.
Clearly, the elements {e1 }, {e2 }, . . . , {em } are also linearly independent. ♦
definition: Let s1 , s2 . . . , sn be any sequence of objects, and let A be a subset of
S = {s1 , s2 . . . , sn }. The characteristic vector of the subset A is the n-tuple whose
jth component is 1 if sj ∈ A and 0 otherwise.
A general result from linear algebra states that every m-dimensional vector space over
a given field F is isomorphic to the vector space of m-tuples over F . For the vector space
WE (G), this result may be realized in the following way. If EG = {e1 , e2 , . . . , em }, then
the mapping charvec that assigns to each subset of EG its characteristic vector is an iso-
morphism from WE (G) to the vector space of m-tuples over GF(2). Proving this assertion
first requires showing that the mapping preserves the vector-space operations. If E1 and
E2 are two subsets of EG , then the definitions of the ring-sum operator ⊕ and mod 2
component-wise addition +2 imply
C1 C2
C3 C4
C5
C6 C1 + C3
Figure 3.3.1 A graph G and the non-null elements of cycle space WC (G).
Notice that each vector of WC (G) is a subgraph having no vertices of odd degree, and
that the sum of any two of the vectors of WC (G) is again a vector of WC (G). The first
of these observations follows directly from the characterization of Eulerian graphs from
the previous section (Theorem 3.2.11). The next result shows that the second property of
WC (G) is also true in general.
Proposition 3.3.3: Given a graph G, the cycle space WC (G) is a subspace of the edge
space WE (G).
Proof: It suffices to show that the elements of WC (G) are closed under ⊕. So consider any
two distinct members C1 and C2 of WC (G) and let C3 = C1 ⊕ C2 . By Theorem 3.2.11, it
must be shown that degC3 (v) is even for each vertex v in C3 .
Consider any vertex v in C3 , and let Xi denote the set of edges incident with v in Ci for
i = 1, 2, 3. Since |Xi | is the degree of v in Ci , |X1 | and |X2 | are both even, and |X3 | is nonzero.
Since C3 = C1 ⊕ C2 , X3 = X1 ⊕ X2 . But this implies that |X3 | = |X1 | + |X2 | − 2 |X1 ∩ X2 |,
which shows that |X3 | must be even. ♦
Example 3.3.2: Figure 3.3.2 shows a graph G and three of its edge-cuts. Since R and T
are edge-disjoint minimal ones, all three edge-cuts are in WS (G).
y y
y v x v x
v x
v x w z w z
w z
G R T R∪T
Example 3.3.2 continued: Figure 3.3.3 shows graph G and the 15 non-null elements of
WS (G). The non-minimal edge-cuts appear in the bottom row.
y y y
v x v x x v x v
z w z w w z
y
y y y y
v x v x v x v x v x v x
z w z w z w w z
w z
G
y y y y y
v x v x v x v x v x
w z w z w z w z w z
Proposition 3.3.4: Given a graph G, the edge-cut space WS (G) is closed under the ring-
sum operation ⊕ and, hence, is a subspace of the edge space WE (G).
Proof: By Proposition 3.2.3, it suffices to show that the ring sum of any two partition-cuts
in a graph G is also a partition-cut in G. So let S1 = hX1 , X2 i and S2 = hX3 , X4 i be any
two partition-cuts in G, and let Vij = Xi ∩ Xj , for i = 1, 2 and j = 3, 4.
Then the Vij are mutually disjoint, with
S1 = hV13 ∪ V14 , V23 ∪ V24 i = hV13 , V23 i ∪ hV13 , V24 i ∪ hV14 , V23 i ∪ hV14 , V24 i and
S2 = hV13 ∪ V23 , V14 ∪ V24 i = hV13 , V14 i ∪ hV13 , V24 i ∪ hV23 , V14 i ∪ hV23 , V24 i
Hence,
S1 ⊕ S2 = hV13 , V23 i ∪ hV14 , V24 i ∪ hV13 , V14 i ∪ hV23 , V24 i
But
hV13 , V23 i ∪ hV14 , V24 i ∪ hV13 , V14 i ∪ hV23 , V24 i = hV13 ∪ V24 , V14 ∪ V23 i
which is a partition-cut in G, and the proof is complete. ♦
Section 3.3 Graphs and Vector Spaces 103
Example 3.3.3: To illustrate Proposition 3.3.4, it is easy to check that the elements of
WS (G) in Figure 3.3.3 are closed under ring sum ⊕ and that each element is a partition-
cut. For instance, if S1 denotes the last element in the second row of five elements, and
S2 and S3 are the first and last elements of the third row, then S1 = h{v, w}, {x, y, z}i;
S2 = h{v, x, y}, {w, z}i; and S3 = S1 ⊕ S2 = h{x, y, w}, {v, z}i.
Example 3.3.1 continued: Figure 3.3.4 shows a spanning tree and the associated fun-
damental system of cycles {C3 , C4 , C6 } for the graph of Figure 3.3.1. Each of the other four
non-null elements of cycle space WC (G) can be expressed as the ring sum of some or all of
the fundamental cycles. In particular,
C1 = C4 ⊕ C6
C2 = C3 ⊕ C4
C5 = C3 ⊕ C6
C1 ⊕ C3 = C3 ⊕ C4 ⊕ C6
2
1
3 4
5
6 +
1 3
The next theorem and its proof are analogous to Theorem 3.3.5 and its proof.
Theorem 3.3.6: Let T be a spanning tree of a connected graph G. Then the fundamental
system of edge-cuts associated with T is a basis for the edge-cut space WS (G).
♦ (Exercises)
104 Chapter 3 TREES AND CONNECTIVITY
Example 3.3.2 continued: Figure 3.3.5 shows a spanning tree and the associated funda-
mental system of edge-cuts {S1 , S2 , S3 , S4 } for the graph of Figure 3.3.3. It is easy to verify
that each of the 15 non-null elements of the edge-cut space WS (G) can be expressed as the
ring sum of some or all of the fundamental edge-cuts S1 , S2 , S3 , S4 (see Exercises). For in-
stance, the edge-cut appearing on the lower right in Figure 3.3.3 is equal to S1 ⊕S2 ⊕S3 ⊕S4 .
a e e
f b f
c d a e
c
G c
b d
c S1 S2 S3 S4
Application 3.3.1: Applying Ohm’s and Kirchhoff’s Laws Suppose that the graph
shown in Figure 3.3.6 represents an electrical network with a given voltage E on wire
e1 , oriented as shown. Also let Rj be the resistance on ej .
E
v w
e1
e5 e6 e7 e2
z e4 y e3 x
The problem is to determine the electric current ij for wire ej , using Ohm’s Law, Kirch-
hoff ’s current law (KCL), and Kirchhoff ’s voltage law (KVL), given by:
• Ohm’s Law: For a current i flowing through a resistance r, the voltage drop v
across the resistance satisfies v = ir.
• KCL: The algebraic sum of the currents at each vertex is zero.
• KVL: The algebraic sum of voltage drops around any cycle is zero.
To apply these laws, a direction must be assigned to the current in each wire. These direc-
tions are arbitrary and do not affect the final solution, in the sense that a negative value
for an ij simply means that the direction of flow is opposite to the direction assigned for ej .
Illustration: Figure 3.3.7 shows an arbitrary assignment of directions for the wires in the
example network.
The five (KCL)-equations corresponding to the five vertices are
−i1 + i5 − i6 =0
i2 − i3 =0
i4 − i5 =0
i3 − i4 + i6 − i7 =0
i1 − i2 + i7 =0
Section 3.3 Graphs and Vector Spaces 105
E
v w
i1
i5 i6 i7 i2
z i4 y i3 x
Notice that the sum of these equations is the equation 0 = 0, which indicates that one
of them is redundant. Furthermore, if one circuit is the sum of other circuits, then its
(KVL)-equation is redundant. For instance, the (KVL)-equations for the circuits hv, w, y, vi,
hw, x, y, wi, and hv, w, x, y, vi are, respectively,
i1 R1 − i7 R7 − i6 R6 − E = 0
i2 R2 + i3 R3 + i7 R7 = 0
i1 R1 + i2 R2 + i3 R3 − i6 R6 − E = 0
The third equation is the sum of the first two, since the third circuit is the sum of the first
two circuits.
A large network is likely to have a huge number of these redundancies. The objective for an
efficient solution strategy is to find a minimal set of circuits whose corresponding equations,
together with the equations from Kirchhoff’s circuit law, are just enough to solve for the
ij ’s. Since a fundamental system of cycles is a basis for the cycle space, their corresponding
equations will constitute a full set of linearly independent equations and will meet the
objective.
Illustration: One of the spanning trees of the example network is shown below.
v
The fundamental system of cycles and their corresponding equations for this spanning tree
are as follows:
hz, v, w, y, zi : i5 R5 + i1 R1 − i7 R7 + i4 R4 − E = 0
hv, w, y, vi : i1 R1 − i7 R7 − i6 R6 − E = 0
hw, x, y, wi : i2 R2 + i3 R3 + i7 R7 = 0
These three equations, together with any four of the five (KCL)-equations will determine
the ij ’s. If, for example, the voltage E = 28 and all the Rj ’s are taken to be 1, then it is
easy to verify that the solution for the currents is
i1 = 12; i2 = i3 = 4; i4 = i5 = 4; i6 = i7 = −8
106 Chapter 3 TREES AND CONNECTIVITY
Proof: This follows directly from Theorems 3.3.5 and 3.3.6 and the definitions of cycle
rank and edge-cut rank. ♦
Proof: Necessity (⇒) Each subgraph in the cycle space is a union of edge-disjoint cycles,
and each subgraph in the edge-cut space is a union of edge-disjoint edge-cuts. Thus, necessity
follows from Proposition 3.2.8.
Sufficiency (⇐) It may be assumed without loss of generality that G is connected, since
the argument that follows may be applied separately to each of the components of G if G
is not connected.
Suppose H has an even number of edges in common with each subgraph in the edge-cut
space of G, and let T be a spanning tree of G. Let e1 , e2 , . . . , er be the non-tree edges of
H, and consider C = C1 ⊕ C2 ⊕ . . . ⊕ Cr , where each Ci is the fundamental cycle in T + ei ,
i = 1, . . . , r. Arguing as in the proof of Theorem 3.3.5, H ⊕ C has no non-tree edges. Thus,
the only possible edges in H ⊕ C are edges of T . So suppose b is an edge in both T and
H ⊕ C. Now if S is the fundamental edge-cut associated with b, then b is the only edge
in H ⊕ C ⊕ S. But, since C ∈ WC (G), C has an even number of edges in common with
each subgraph in the edge-cut space of G, as does H. This implies that H ⊕ C has an
even number of edges in common with each subgraph in the edge-cut space. In particular,
H ⊕ C ⊕ S must have an even number of edges. This contradiction shows that H ⊕ C must
be the null graph, that is, H = C. Hence, H is a subgraph in the cycle space of G. ♦
Theorem 3.3.10: Given a graph G, the cycle space WC (G) and the edge-cut space WS (G)
are orthogonal subspaces of WE (G).
Proof: Let H be a subgraph in the cycle space, and let K be a subgraph in the edge-cut
space. By either Proposition 3.3.8 or Proposition 4.6.9, H and K have an even number of
edges in common and, hence, are orthogonal. ♦
Theorem 3.3.11: Given a graph G, the cycle space WC (G) and the edge-cut space WS (G)
are orthogonal complements in WE (G) if and only if WC (G) ∩ WS (G) = {∅}.
Proof: If WC (G) ⊕ WS (G) denotes the direct sum of the subspaces WC (G) and WS (G),
then
dim (WC (G) ⊕ WS (G)) = dim (WC (G)) + dim (WS (G)) − dim (WC (G) ∩ WS (G))
By Corollary 3.3.7, dim (WC (G)) + dim (WS (G)) = |EG |. Thus, dim (WC (G) ⊕ WS (G)) =
|EG | = dim (WE (G)) if and only if dim (WC (G) ∩ WS (G)) = 0. ♦
FROM LINEAR ALGEBRA: The column space of a matrix M is the set of column vectors
that are linear combinations of the columns of M . When the entries of M come from GF(2),
linear combinations are simply mod 2 sums. (Also see Appendix A.4.)
Let G be a simple graph with n vertices and m edges, and let he1 , e2 , . . . , em i and
hv1 , v2 , . . . , vn i be fixed orderings of EG and VG , respectively.
Review From §1.6: The incidence matrix IG of G is the matrix whose (i, j)th entry is
given by
0, if vi is not an endpoint of ej
IG [i, j] =
1, otherwise
Analogous to the edge space WE (G), the collection of vertex subsets of VG under ring
sum forms a vector space over GF (2), which is called the vertex space of G and is denoted
WV (G). Each element of the vertex space WV (G) may be viewed as an n-tuple over GF (2).
In this setting, IG represents a linear transformation from edge space WE (G) to vertex
space WV (G), mapping the characteristic vectors of edge subsets to characteristic vectors
of vertex subsets.
Example 3.3.4: Consider the graph G and its corresponding incidence matrix IG shown
in Figure 3.3.8.
a b c d e
x a y x 1 0 0 1 1
y 1 1 0 0 0
e IG =
G d b z 0 1 1 0 1
w 0 0 1 1 0
w c z
The characteristic vector of the image of the subset E1 = {a, c, e} under the mapping is
obtained by multiplying the characteristic vector of E1 by IG (mod 2), as follows:
1
1 0 0 1 1 0 0
1 1 0 0 0 1
0 1 1 0 1 1 = 0
0
0 0 1 1 0 1
1
Thus, E1 is mapped to the vertex subset V1 = {y, w}. Notice that V1 consists of the
endpoints of the path formed by the edges of E1 . It is not hard to show that every open
path in G is mapped to the vertex subset consisting of the path’s initial and terminal
vertices. For this reason, IG is sometimes called a boundary operator.
terminology note: Algebraists and topologists sometimes refer to the edge subsets of
WE (G) and the vertex subsets of WV (G) as 1-chains and 0-chains, respectively, and denote
these vector spaces C1 (G) and C0 (G). In this context, the chains are typically represented
as sums of edges or vertices. For example, the expression e1 + e2 + e3 would represent the
edge subset {e1 , e2 , e3 }.
In general, the image under IG of any edge subset is obtained by simply computing the
mod 2 sum of the corresponding set of columns of IG . For instance, in Example 3.3.4, IG
maps the edge subset E2 = {c, d, e} to ∅ (which is the zero element of the vertex space
WV (G)), since the mod 2 sum of the third, fourth, and fifth columns of IG is the column
vector of all zeros. It is not a coincidence that E2 comprises the edges of a cycle, as the
next proposition confirms.
notation: For any edge subset D of a simple graph G, let CD denote the corresponding
set of columns of IG .
Proposition 3.3.12: Let D be the edge-set of a cycle in a simple graph G. Then the mod
2 sum of the columns in CD is the zero vector.
Proof: For a suitable ordering of the edges and vertices of G, a cycle of length k corresponds
to the following submatrix of IG . ♦
1 0 ··· 0 1
.
1 1 . . . .. 0
.
0 1 . . . 0 ..
. .
.. .. ... 1 0
0 ··· 0 1 1
Proof: The column set CD spans the column space of IG if and only if each column of
IG can be expressed as the sum of the columns in a subset of CD . But each column of IG
corresponds to some edge e = xy of G, and that column is a sum of the columns in some
subset of CD if and only if there is a path from x to y whose edges are in D. ♦
Proposition 3.3.16: Let G be a connected, simple graph. Then an edge subset D induces
a spanning tree of G if and only if the columns corresponding to the edges of D form a basis
for the column space of IG over GF (2).
a b
d e
c
f g
(a) Show that the collection {{a, c, d, f }, {b, c, e, g}, {a, b, h}} of edge subsets of EG forms
a basis for the cycle space WC (G) of G.
(b) Find a different basis by choosing some spanning tree and using the associated funda-
mental system of cycles.
110 Chapter 3 TREES AND CONNECTIVITY
3.3.3 Express each of the 15 non-null elements of WS (G) in Figure 3.3.3 as the ring sum of
some or all of the four fundamental edge-cuts in Figure 3.3.5.
3.3.4 For Application 3.3.1, reverse the directions assigned to i1 , i2 , and i3 , and show that
the solution for the actual currents does not change.
3.3.5 Verify that Corollary 3.3.13 and Proposition 3.3.16 hold for the given edge subset of
the following graph.
(a) {a, b, c, d}. a
x z
c d f
(b) {a, b, e, f }. b
y
u e w
(c) {a, b, e, d}.
x b v
G c
y a w
Proof: Let v be a vertex of graph G, with degree k = δmin (G). Then the deletion of the k
edges that are incident on vertex v separates v from the other vertices of G. ♦
review from §3.2: A partition-cut hX1 , X2 i is an edge-cut each of whose edges has one
endpoint in each of the vertex bipartition sets X1 and X2 .
The following proposition characterizes the edge-connectivity of a graph in terms of the
size of its partition-cuts.
Proposition 3.4.2: A graph G is k-edge-connected if and only if every partition-cut con-
tains at least k edges.
Proof: (⇒) Suppose that graph G is k-edge-connected. Then every partition-cut of G has
at least k edges, since a partition-cut is an edge-cut.
(⇐) Suppose that every partition-cut contains at least k edges. By Proposition 3.2.4, every
minimal edge-cut is a partition-cut. Thus, every edge-cut contains at least k edges.
♦
Proof: Let W = {w1 , w2 , . . . , wk−2 } be any set of k − 2 vertices in G − e, and let x and
y be any two different vertices in (G − e) − W . It suffices to show the existence of an x-y
walk in (G − e) − W .
First, suppose that at least one of the endpoints of edge e is contained in set W . Since the
vertex-deletion subgraph G − W is connected (in fact, 2-connected), there is an x-y path
in G − W . This path cannot contain edge e and, hence, it is an x-y path in the subgraph
(G − e) − W . Next, suppose that neither endpoint of edge e is in set W . Then there are two
cases to consider.
112 Chapter 3 TREES AND CONNECTIVITY
Case 1 : Vertices x and y are the endpoints of edge e. Graph G has at least k + 1 vertices
(since G is k-connected). So there exists some vertex z ∈ G − {w1 , w2 , . . . , wk−2 , x, y}.
Since graph G is k-connected, there exists an x-z path P1 in the vertex-deletion subgraph
G − {w1 , w2 , . . . , wk−2 , y} and a z-y path P2 in the subgraph G − {w1 , w2 , . . . , wk−2 , x}
(shown on the left in Figure 3.4.2). Neither of these paths contains edge e, and, therefore,
their concatenation is an x-y walk in the subgraph G − {w1 , w2 , . . . , wk−2 }.
Case 2 : At least one of the vertices x and y, say x, is not an endpoint of edge e. Let u
be an endpoint of edge e that is different from vertex x. Since graph G is k-connected,
the subgraph G − {w1 , w2 , . . . , wk−2 , u} is connected. Hence, there is an x-y path P in
G − {w1 , w2 , . . . , wk−2 , u} (shown on the right in Figure 3.4.2). It follows that P is an x-y
path in G − {w1 , w2 , . . . , wk−2 } that does not contain vertex u and, hence, excludes edge e
(even if P contains the other endpoint of e, which it could). Therefore, P is an x-y path in
(G − e) − {w1 , w2 , . . . , wk−2 }. ♦
w w
w1 ...2 w1
...2
. wk-2 . wk-2
x y x y
e
u
P1 P2 e P
z
Corollary 3.4.4: Let G be a k-connected graph, and let D be any set of m edges of G, for
m ≤ k − 1. Then the edge-deletion subgraph G − D is (k − m)-connected.
Proof: Let k = κv (G), and let S be any set of k − 1 edges in graph G. Since G is k-
connected, the graph G − S is 1-connected, by Corollary 3.4.4. Thus, edge subset S is not
an edge-cut of graph G, which implies that κe (G) ≥ k. ♦
Corollary 3.4.6: Let G be a connected graph. Then κv (G) ≤ κe (G) ≤ δmin (G).
Proof: The assertion simply combines Proposition 3.4.1 and Corollary 3.4.5. ♦
Proof: (⇐) Arguing by contrapositive, suppose that graph G is not 2-connected. Then let
v be a cut-vertex of G. Since G − v is not connected, there must be two vertices x and y
such that there is no x-y path in G − v. It follows that v is an internal vertex of every x-y
path in G.
(⇒) Suppose that graph G is 2-connected, and let x and y be any two vertices in G. We
use induction on the distance d(x, y) to prove that there are at least two vertex-disjoint
x-y paths in G. If there is an edge e joining vertices x and y, (i.e., d(x, y) = 1), then the
edge-deletion subgraph G − e is connected, by Corollary 3.4.4. Thus, there is an x-y path
P in G − e. It follows that path P and edge e are two internally disjoint x-y paths in G.
Next, assume for some k ≥ 2 that the assertion holds for every pair of vertices whose
distance apart is less than k. Suppose d(x, y) = k, and consider an x-y path of length k.
Let w be the vertex that immediately precedes vertex y on this path, and let e be the edge
between vertices w and y. Since d(x, w) < k, the induction hypothesis implies that there
are two internally disjoint x-w paths in G, say P and Q. Also, since G is 2-connected, there
exists an x-y path R in G that avoids vertex w. This is illustrated in the figure below for
the two possibilities for path Q: either it contains vertex y (as shown on the right), or it
does not (as on the left).
z R z R
P P
P P
e y e y
Q
x w x w
R R Q
Let z be the last vertex on path R that precedes vertex y and is also on one of the paths P
or Q (z might be vertex x). Assume, without loss of generality, that z is on path P . Then G
has two internally disjoint x-y paths. One of these paths is the concatenation of the subpath
of P from x to z with the subpath of R from z to y. If vertex y is not on path Q, then a
second x-y path, internally disjoint from the first one, is the concatenation of path Q with
the edge joining vertex w to vertex y. If y is on path Q, then the subpath of Q from x to y
can be used as the second path. ♦
Corollary 3.4.8: Let G be a graph with at least three vertices. Then G is 2-connected if
and only if any two vertices of G lie on a common cycle.
Proof: This follows from Theorem 3.4.7, since two vertices x and y lie on a common cycle
if and only if there are two internally disjoint x-y paths. ♦
Remark: Theorem 3.4.7 is a prelude to Whitney’s more general result for k-connected
graphs, which appears in §3.5. Corollary 3.4.8 is used in Chapter 4 in the proof of Kura-
towski’s characterization of graph planarity.
The following theorem extends the list of characterizations of 2-connected graphs. Its
proof uses reasoning similar to that used in the proof of the last two results (see Exercises).
114 Chapter 3 TREES AND CONNECTIVITY
1. Graph G is 2-connected.
2. For any two vertices of G, there is a cycle containing both.
3. For any vertex and any edge of G, there is a cycle containing both.
4. For any two edges of G, there is a cycle containing both.
5. For any two vertices and one edge of G, there is a path from one of the vertices to the
other, that contains the edge.
6. For any sequence of three distinct vertices of G, there is a path from the first to the
third that contains the second.
7. For any three distinct vertices of G, there is a path containing any two of them which
does not contain the third.
3.4.2 Either draw a graph meeting the given specifications or explain why no such graph
exists.
(a) A 6-vertex graph G such that κv (G) = 2 and κe (G) = 2.
(b) A connected graph with 11 vertices and 10 edges and no cut-vertices.
(c) A 3-connected graph with exactly one bridge.
(d) A 2-connected 8-vertex graph with exactly two bridges.
e e e e
(c) a a b b (d) a a d d
c cd d e e
f f
bc
e g e g c
b f f
h h
3.4.4 Determine the vertex- and edge-connectivity of the complete bipartite graph Km,n .
3.4.5 Determine the vertex-connectivity and edge-connectivity of the Petersen graph (§1.1),
and justify your answer. (Hint: Use the graph’s symmetry to reduce the number of cases to
consider.)
Section 3.5 Max-Min Duality and Menger’s Theorems 115
(c) κv (G) < κe (G) = δmin (G) (d) κv (G) < κe (G) < δmin (G)
need not be a minimum-size edge-cut (vertex-cut). For instance the set {a, b, c, d, e} is not
a minimum-size edge-cut, because the set of edges incident on the 3-valent vertex y is an
edge-cut of size 3.
x
a
b y
c
u v
w
d
e
Figure 3.5.1 Vertex- and edge-cuts that are u-v separating sets.
Proof: Since Suv is a u-v separating set, each u-v path in Puv must include at least one
vertex of Suv . Since the paths in Puv are internally disjoint, no two of them can include the
same vertex. Thus, the number of internally disjoint u-v paths in G is at most |Suv | (by the
pigeonhole principle). ♦
Corollary 3.5.2: Let u and v be any two nonadjacent vertices of a connected graph G.
Then the maximum number of internally disjoint u-v paths in G is less than or equal to the
minimum size of a u-v separating set of vertices of G.
The main result of this section is Menger’s Theorem, which states that these two quan-
tities are in fact equal. But even the weak duality result by itself provides certificates of
optimality, as the following corollary shows. It follows directly from Proposition 3.5.1.
Corollary 3.5.3: [Certificate of Optimality] Let u and v be any two nonadjacent ver-
tices of a connected graph G. Suppose that Puv is a collection of internally disjoint u-v paths
in G, and that Suv is a u-v separating set of vertices in G, such that |Puv | = |Suv |. Then
Puv is a maximum-size collection of internally disjoint u-v paths, and Suv is a minimum-size
u-v separating set. ♦ (Exercises)
Section 3.5 Max-Min Duality and Menger’s Theorems 117
Example 3.5.2: Consider the graph G shown below. The vertex sequences hu, x, y, t, vi,
hu, z, vi, and hu, r, s, vi represent a collection P of three internally disjoint u-v paths in G,
and the set S = {y, s, z} is a u-v separating set of size 3. Therefore, by Corollary 3.5.3, P
is a maximum-size collection of internally disjoint u-v paths, and S is a minimum-size u-v
separating set.
x y z
u v
G
r s t
Menger’s Theorem
The next theorem, proved by K. Menger in 1927, establishes a strong duality between
the two optimization problems introduced earlier. The theorem and its variations are closely
related (and in many cases, equivalent) to several other max-min duality results for graphs
and directed networks and to several results outside graph theory as well. Some of these are
stated in this section.
The proof, which involves several steps, appears at the end of this section so that we
may first present a number of consequences and related results.
Theorem 3.5.4: [Menger] Let u and v be distinct, nonadjacent vertices in a connected
graph G. Then the maximum number of internally disjoint u-v paths in G equals the
minimum number of vertices needed to separate u and v.
Proof: Since each s-t separating vertex-set of the graph G is a vertex-cut, it follows that
κv (G) ≤ κv (s, t) for all pairs of nonadjacent vertices s and t. Thus, κv (G) is less than or
equal to the minimum of κv (s, t) over all nonadjacent s and t. On the other hand, if S is a
vertex-cut of size κv (G), then there are at least two vertices, say s and t, that lie in different
components of the vertex-deletion subgraph G−S. But then κv (s, t) ≤ κv (G), which implies
that the minimum of κv (s, t) over all nonadjacent s and t is less than or equal to κv (G). ♦
118 Chapter 3 TREES AND CONNECTIVITY
Proof: If every two vertices in G are adjacent, then the special case of the vertex-
connectivity definition applies, and the theorem assertion is immediately true. So assume
that G has at least two nonadjacent vertices.
If G is k-connected, then there are at least k vertices in any vertex-cut of G. Thus, there
are at least k vertices in any u-v separating set. Theorem 3.5.4 implies that the maximum
number of internally disjoint u-v paths is at least k. Hence, there are at least k internally
disjoint u-v paths.
Conversely, if for each pair of vertices u and v, there are at least k internally disjoint, u-v
paths, then Proposition 3.5.1 implies that κv (u, v) ≥ k, for each pair u, v of nonadjacent
vertices. Therefore, κv (G) ≥ k, by Lemma 3.5.5. ♦
Corollary 3.5.7: Let G be a k-connected graph and let u, v1 , v2 , . . . , vk be any k+1 distinct
vertices of G. Then there are paths Pi from u to vi , for i = 1, . . . , k, such that the collection
{Pi } is internally disjoint.
Proof: Construct a new graph Gw from graph G by adding a new vertex w to G together
with an edge joining w to vi , for i = 1, . . . , k, as in Figure 3.5.2.
v1
v2
u w
v3
G vk
Since graph G is k-connected, it follows that graph Gw is also k-connected (by Exercise
5.1.18). By Theorem 3.5.6, there are k internally disjoint u-w paths in Gw . The u-vi portions
of these paths are k internally disjoint paths in G. ♦
The following theorem, proved by Dirac in 1960, generalizes one-half of the characteri-
zation of 2-connected graphs given in Corollary 3.4.8.
Theorem 3.5.8: [Dirac Cycle Theorem] Let G be a k-connected graph with at least
k + 1 vertices, for k ≥ 3, and let U be any set of k vertices in G. Then there is a cycle in G
containing all the vertices in U .
Proof: Let C be a cycle in G that contains the maximum possible number of vertices of set
U , and suppose that {v1 , . . . , vm } is the subset of vertices of U that lie on C. By Corollary
3.4.8, m ≥ 2. If there were a vertex u ∈ U not on cycle C, then by Corollary 3.5.7, there
would exist a set of internally disjoint paths Pi from u to vi , one for each i = 1, . . . , m. But
then cycle C could be extended to include vertex u, by replacing the cycle edge between v1
and v2 by the paths P1 and P2 (see Figure 3.5.3), and this extended cycle would contradict
the maximality of cycle C. ♦
Section 3.5 Max-Min Duality and Menger’s Theorems 119
v1
u v2
vm
C
Theorem 3.5.10: [Edge Form of Menger’s Theorem] Let u and v be any two dis-
tinct vertices in a graph G. Then the minimum number of edges of G needed to separate u
and v equals the maximum size of a set of edge-disjoint u-v paths in G. ♦ (Exercises)
Example 3.5.3: For the graph shown below, it is easy to find four edge-disjoint u-v paths
and a u-v separating edge-set of size 4. Thus, the maximum number of edge-disjoint u-v
paths and the minimum size of a u-v separating set are both 4.
u v
Example 3.5.4: Corresponding to the u-v separating set W = {y, s, z} in the graph shown
below, the vertex sequences hu, x, yi, hu, r, yi, hu, r, si, and hu, zi represent the four strict
u-W paths, and the three strict W -v paths are given by hz, vi, hy, t, vi, and hs, vi.
x y z
v
u
G
r s t
Proof: The proof uses induction on the number of edges. The smallest graph that satisfies
the premises of the theorem is the path graph from u to v of length 2, and the theorem
is trivially true for this graph. Assume that the theorem is true for all connected graphs
having fewer than m edges, for some m ≥ 3.
Now suppose that G is a connected graph with m edges, and let k be the minimum number
of vertices needed to separate the vertices u and v. By Corollary 5.3.2, it suffices to show
that there exist k internally disjoint u-v paths in G. Since this is clearly true if k = 1 (since
G is connected), we may assume that k ≥ 2.
Assertion 5.3.4a: If G contains a u-v path of length 2, then G contains k internally disjoint
u-v paths.
Proof of 5.3.4a: Suppose that P = hu, e1 , x, e2 , vi is a path in G of length 2. Let W be a
smallest u-v separating set for the vertex-deletion subgraph G − x. Since W ∪ {x} is a u-v
separating set for G, the minimality of k implies that |W | ≥ k − 1.
By the induction hypothesis, there are at least k − 1 internally disjoint u − v paths in G − x.
Path P is internally disjoint from any of these, and, hence, there are k internally disjoint
u-v paths in G. ♦ (Assertion 5.3.4a)
If there is a u-v separating set that contains a vertex adjacent to both vertices u and v,
then Assertion 5.3.4a guarantees the existence of k internally disjoint u-v paths in G. The
argument for distance (u, v) ≥ 3 is broken into two cases, according to the kinds of u-v
separating sets that exist in G.
w1 w1 w1
w2 w2 w2
u w3 v w3 w3
u v u v
wk wk wk
Case 1 Case 2
Figure 3.5.4 The two cases remaining in the proof of Menger’s Theorem.
In Case 1, there exists a u-v separating set W , as depicted on the left in Figure 3.5.4, where
neither u nor v is adjacent to every vertex of W . In Case 2, no such separating set exists.
Thus, in every u-v separating set for Case 2, either every vertex is adjacent to u or every
vertex is adjacent to v, as shown on the right in the figure.
Section 3.5 Max-Min Duality and Menger’s Theorems 121
u w2 v
G w3
w1 w1
u w2 w2 v
Gu Gv
w3 w3
Assertion 5.3.4b: Both of the subgraphs Gu and Gv have more than k edges.
Proof of 5.3.4b: For each wi ∈ W , there is a u-v path Pwi in G on which wi is the only
vertex of W (otherwise, W − {wi } would still be a u-v separating set, contradicting the
minimality of W ). The u-wi subpath of Pwi is a strict u-W path that ends at wi . Thus, the
final edge of this strict u-W path is different for each wi . Hence, Gu has at least k edges.
The only way Gu could have exactly k edges would be if each of these strict u-W paths
consisted of a single edge joining u and wi , i = 1, . . . , k. But this is ruled out by the condition
for Case 1. Therefore, Gu has more than k edges. A similar argument shows that Gv also
has more than k edges. (Assertion 5.3.4b)
Assertion 5.3.4c: The subgraphs Gu and Gv have no edges in common.
Proof of 5.3.4c: By way of contradiction, suppose that the subgraphs Gu and Gv have an
edge e in common. By the definitions of Gu and Gv , edge e is an edge of both a strict u-W
path and a strict W -v path. Hence, at least one of its endpoints, say x, is not a vertex in
the u-v separating set W (see Figure 3.5.6). But this implies the existence of a u-v path in
G − W , which contradicts the definition of W . ♦ (Assertion 5.3.4c)
u v u v
W
W
e e
x x
We now define two auxiliary graphs G∗u and G∗v : Gxu is obtained from G by replacing the
subgraph Gv with a new vertex v ∗ and drawing an edge from each vertex in W to v ∗ and
G∗v is obtained by replacing Gu with a new vertex u∗ and drawing an edge from u∗ to each
vertex in W (see Figure 3.5.7).
w1 w1
w2 v* u*
u w2 v
Gu* Gv*
w3 w3
Figure 3.5.7 Illustration for the construction of graphs G∗u and G∗v .
Assertion 5.3.4d: Both of the auxiliary graphs G∗u and G∗v have fewer edges than G.
Proof of 5.3.4d: The following chain of inequalities shows that graph G∗u has fewer edges
than G.
A similar argument shows that G∗v also has fewer edges than G. ♦ (Assertion 5.3.4d)
By the construction of graphs G∗u and G∗v , every u-v ∗ separating set in graph G∗u and every
u∗ -v separating set in graph G∗v is a u-v separating set in graph G. Hence, the set W is
a smallest u-v ∗ separating set in G∗u and a smallest u∗ -v separating set in G∗v . Since G∗u
and G∗v have fewer edges than G, the induction hypothesis implies the existence of two
collections, Pu∗ and Pv∗ , of k internally disjoint u-v ∗ paths in G∗v and k internally disjoint
u∗ -v paths in G∗v , respectively (see Figure 3.5.8 below). For each wi , one of the paths in Pu∗
consists of a u-wi path Pi0 in G plus the new edge from wi to v ∗ , and one of the paths in
Pv∗ consists of the new edge from u∗ to wi followed by a wi -v path Pi00 in G.
Let Pi be the concatenation of paths Pi0 and Pi00 , for i = 1, . . . , k. Then the set {Pi } is a
collection of k internally disjoint u-v paths in G. ♦ (Case 1)
P1' w1 w1
P1''
w2 w2
u v* u* v
Pu* wk wk Pv*
Figure 3.5.8 Each of the graphs G∗u and G∗v has k internally disjoint paths.
Section 3.5 Max-Min Duality and Menger’s Theorems 123
Case 2: Suppose that for each u-v separating set of size k, one of the vertices u or v is
adjacent to all the vertices in that separating set.
Let P = hu, e1 , x1 , e2 , x2 , . . . , vi be a shortest u-v path in G. By Assertion 5.3.4a, we can
assume that P has length at least 3 and that vertex x1 is not adjacent to vertex v. By
Proposition 3.4.3, the edge-deletion subgraph G − e2 is connected. Let S be a smallest u-v
separating set in subgraph G − e2 (see Figure 3.5.9). Then S is a u-v separating set in the
vertex-deletion subgraph G − x1 (since G − x1 is a subgraph of G − e2 ). Thus, S ∪ {x1 } is
a u-v separating set in G, which implies that |S| ≥ k − 1, by the minimality of k. On the
other hand, the minimality of |S| in G − e2 implies that |S| ≤ k, since every u-v separating
set in G is also a u-v separating set in G − e2 .
x1 x2
u v
e1 e2
If |S| = k, then, by the induction hypothesis, there are k internally disjoint u-v paths in
G − e2 and, hence, in G. If |S| = k − 1, then xi ∈ / S, i = 1, 2 (otherwise S − {x1 } would
be a u-v separating set in G, contradicting the minimality of k). Thus, the sets S ∪ {x1 }
and S ∪ {x2 } are both of size k and both u-v separating sets of G. The condition for Case 2
and the fact that vertex x1 is not adjacent to v imply that every vertex in S is adjacent to
vertex u. Hence, no vertex in S is adjacent to v (lest there be a u-v path of length 2). But
then condition for Case 2 applied to S ∪ {x2 } implies that vertex x2 is adjacent to vertex
u, which contradicts the minimality of path P and completes the proof. ♦
ss a
a b
b zz ss a
a b
b zz
t y t y t
(c) c (d) cc
w x w x
u v u v u
e e
s a b z s a b z s
124 Chapter 3 TREES AND CONNECTIVITY
3.5.2 Find the maximum number of arc-disjoint directed u-v paths for the given graph,
and use the digraph version of Proposition 3.5.9 to justify your answer. That is, find k
arc-disjoint u-v paths and a set of k arcs that separate vertices u and v, for some integer k.
tt yy tt yy
(a) (b)
xx xx
uu ww vv vv
uu ww
ss aa bb zz zz
ss aa bb
w x
t s
v z
Remark: By definition, a block H of a graph G has no cut-vertices (of H), but H may
contain vertices that are cut-vertices of G. For instance, in the above figure, the vertices w,
x, and y are cut vertices of G.
The complete graphs Kn have no cut-vertices. The next result concerns the other ex-
treme.
Proposition 3.6.1: Every nontrivial connected graph G contains two or more vertices that
are not cut-vertices.
Proof: Let B1 and B2 be two different blocks of a graph G, and suppose that x and y
are vertices in B1 ∩ B2 . Since the vertex-deletion subgraph B1 − x is a connected subgraph
of B1 , there is a path in B1 − x between any given vertex w1 in B1 − x and vertex y.
Similarly, there is a path in B2 − x from vertex y to any given vertex w2 in B2 − x (see
Figure 3.6.2). The concatenation of these two paths is a w1 -w2 walk in the vertex-deletion
subgraph (B1 ∪B2 )−x, which shows that x is not a cut-vertex of the subgraph B1 ∪B2 . The
same argument shows that no other vertex in B1 ∩ B2 is a cut-vertex of B1 ∪ B2 . Moreover,
none of the vertices that are in exactly one of the Bi ’s is a cut-vertex of B1 ∪ B2 , since
such a vertex would be a cut-vertex of that block Bi . Thus, the subgraph B1 ∪ B2 has no
cut-vertices, which contradicts the maximality of blocks B1 and B2 . ♦
B1 ∩ B2
x w2
w1
y
B1 B2
Figure 3.6.2 Two blocks cannot have more than one vertex in common.
Corollary 3.6.5: Let B1 and B2 be distinct blocks of a connected graph G. Let y1 and y2
be vertices in B1 and B2 , respectively, such that neither is a cut-vertex of G. Then vertex
y1 is not adjacent to vertex y2 . ♦ (Exercises)
definition: The block graph of a graph G, denoted BL(G), is the graph whose vertices
correspond to the blocks of G, such that two vertices of BL(G) are joined by a single edge
whenever the corresponding blocks have a vertex in common.
126 Chapter 3 TREES AND CONNECTIVITY
Example 3.6.2: Figure 3.6.3 shows a graph G and its block graph BL(G).
B3
B5
B3
B1 B4
B2 B2 B4 B5
B1
G BL(G)
Figure 3.6.3 A graph and its block graph.
definition: A leaf block of a graph G is a block that contains exactly one cut-vertex of
G.
The following result is used in §6.1 to prove Brooks’s Theorem concerning the chromatic
number of graph.
Proposition 3.6.6: Let G be a connected graph with at least one cut-vertex. Then G has
at least two leaf blocks. ♦ (Exercises)
vv aa bb zz vv aa bb zz
uu yy uu yy
(c) (d)
ww xx ww xx
tt ss tt ss
vv aa bb zz vv aa bb zz
3.6.12 Let G be a simple connected graph with at least two blocks. Prove that the block-
cutpoint graph bc(G) is a tree.
3.6.13 Prove Proposition 3.6.6. (Hint: See Exercise 3.6.12.)
3.7.9 How many vertices must be removed from the graph below to separate vertex s from
vertex t? s
t
128 Chapter 3 TREES AND CONNECTIVITY
Glossary
Betti number of a graph: synonym for cycle rank.
block of a loopless graph G: a maximal connected subgraph H of G such that no vertex of
H is a cut-vertex of H; in a graph with self-loops, each self-loop and its endpoint are
regarded as a distinct block, isomorphic to the bouquet B1 .
—, leaf: a block that contains exactly one cut-vertex.
block-cutpoint graph bc(G) of a simple connected graph G with at least two blocks:
the bipartite graph with vertex bipartition hVb , Vc i, where the vertices in Vb bijectively
correspond to the blocks of G and the vertices in Vc bijectively correspond to the cut-
vertices of G, and where vertex vb is adjacent to vertex vc if cut-vertex c is a vertex of
block b.
block graph BL(G) of a graph G: the graph whose vertices correspond to the blocks of G,
such that two vertices of BL (G) are joined by a single edge whenever the corresponding
blocks have a vertex in common.
cycle addition to a graph G: the addition of a cycle that has exactly one vertex in common
with G.
cycle rank of a graph G: the number of edges in the complement of a full spanning forest
of G; the quantity |EG | − |VG | plus the number of components of G.
cycle space of a graph G: the subspace WC (G) consisting of the null graph ∅, all cycles
in G, and all unions of edge-disjoint cycles of G.
disconnects a connected graph G: said of a subset of vertices or edges whose deletion from
G results in a non-connected graph.
k-edge-connected graph G: a connected graph such that every edge-cut has at least k
edges (i.e., κe (G) ≥ k.
edge-connectivity of a connected graph G: the minimum number of edges whose removal
can disconnect G; denoted κe (G).
edge-cut in a graph G: a subset D of edges such that G − D has more components than
G.
edge-cut rank of a graph G: the quantity |VG | minus the number of components of G;
the number of edges in a spanning forest of G.
Glossary 129
edge-cut space of a graph G: the subspace WS (G) consisting of the null graph ∅, all
minimal edge-cuts of G, and all unions of edge-disjoint minimal edge-cuts of G.
edge space WE (G) of a graph G: the vector space over GF (2) consisting of the collection
of edge subsets of EG under ring sum.
Eulerian graph: a graph that has an Eulerian tour.
Eulerian tour in a graph: a closed trail that contains every edge of that graph.
forest: an acyclic graph.
full spanning forest of a graph G: a spanning forest consisting of a collection of trees,
such that each tree is a spanning tree of a different component of G.
fundamental cycle of a graph G associated with a full spanning forest F and an edge e
not in F : the unique cycle that is created when the edge e is added to the forest F .
fundamental edge-cut of a graph G associated with a full spanning forest F and an edge
e in F : the unique partition-cut hV1 , V2 i of G, where V1 and V2 are the vertex-sets of
the two components of the subgraph F − e.
u-v separating set S of vertices or of edges: a set S such that the vertices u and v lie in
different components of the deletion subgraph G − S.
spanning forest of a graph G: an acyclic spanning subgraph of G.
—, full: a spanning forest consisting of a collection of trees, such that each tree is a span-
ning tree of a different component of G.
spanning tree of a (connected) graph: a spanning subgraph that is a tree.
130 Chapter 3 TREES AND CONNECTIVITY
strict x-W path: a path joining vertex x to a vertex in vertex-set W and containing no
other vertex of W . A strict W -x path is the reverse of a strict x-W path.
unicyclic graph: a connected graph with exactly one cycle.
vertex-connectivity of a connected graph G: the minimum number of vertices whose
removal can disconnect G or reduce it to a 1-vertex graph; denoted κv (G).
—, local between nonadjacent vertices s and t: the size of a smallest s-t separating vertex-
set; denoted κv (s, t).
vertex-cut in a graph G: a subset U of vertices such that G − U has more components
than G.
vertex space WV (G) of a graph G: the vector space over GF (2) consisting of the collection
of vertex subsets of VG under ring sum.
Chapter 4
INTRODUCTION
The central theme of this chapter is the topological problem of deciding whether a given
graph can be drawn in the plane or sphere with no edge-crossings. Some planarity tests for
graphs are in the form of algebraic formulas (see §4.5) based on the numbers of vertices
and edges. These are the easiest tests to apply, yet they are one-way tests, and there are
difficult cases in which they are inconclusive.
A celebrated result of the Polish mathematician Kasimir Kuratowski transforms the
planarity decision problem into the combinatorial problem of calculating whether the given
graph contains a subgraph homeomorphic (defined in §4.2) to the complete graph K5 or
to the complete bipartite graph K3,3 . Directly searching for K5 and K3,3 would be quite
inefficient, but this chapter includes a simple, practical algorithm (see §4.6) to test for
planarity.
The relationship of planarity to topological graph theory is something like the relation-
ship of plane geometry to what geometers call geometry, where mathematicians long ago
began to develop concepts and methods to progress far beyond the plane. Whereas planarity
consists mostly of relatively accessible ideas that were well understood several decades ago,
topological graph theorists use newer methods to progress to all the other surfaces.
131
132 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Planar Drawings
Consistent with our temporary informality, we introduce the main topic of this chapter
with the following definition.
definition: A planar drawing of a graph is a drawing of the graph in the plane without
edge-crossings.
definition: A graph is said to be planar if there exists a planar drawing of it.
Example 4.1.1: Two drawings of the complete graph K4 are shown in Figure 4.1.1. The
planar drawing on the right shows that K4 is a planar graph.
Example 4.1.2: An instance of the problem of determining whether a given graph is planar
occurs in the form of a well-known puzzle, called the utilities problem, in which three
houses are on one side of a street and three utilities (electricity, gas, and water) are on the
other. The objective of the puzzle is to join each of the three houses to each of the three
utilities without having any crossings of the utility lines. Later in this section, we show that
this is impossible, by proving that K3,3 is non-planar.
Remark: A graph G and a given drawing of G are categorically different objects. That is,
a graph is combinatorial and a drawing is topological. In particular, the vertices and edges
in a drawing of a graph are actually images of the vertices and edges in that graph. Yet, to
avoid excessive formal phrasing, these distinctions are relaxed when it is discernible from
context what is intended.
terminology: Intuitively, we see that in a planar drawing of a graph, there is exactly one
exterior (or infinite) region whose area is infinite.
Example 4.1.3: The exterior region, Re , and the three finite regions of a planar drawing
of a graph are shown in Figure 4.1.2.
R R1
3 Re
R2
Remark: If we consider a planar drawing of a graph on a piece of paper, then the intuitive
notion of region corresponds to the pieces of paper that result from cutting the paper along
the length of every edge in the drawing. If one adds new edges to a graph without crossing
an existing edge, then a region may be subdivided into more regions.
terminology note: We restrict the use of the word “regions” to the case of crossing-free
drawings, since many assertions that are true in that case may be untrue when there are
edge-crossings.
y y
x x
z z
definition: The circle of intersection, as in Figure 4.1.4(a), of the standard torus with the
half-plane {(x, y, z) | x = 0, z ≥ 0} is called the standard meridian. We observe that the
standard meridian bounds a disk inside the standard donut.
definition: The circle of tangent intersection of the standard torus with the plane y = 1
is called the standard longitude. Figure 4.1.4(b) illustrates the standard longitude. We
observe that the standard longitude bounds a disk in the plane y = 1 that lies outside the
standard donut.
y y
x x
z z
Figure 4.1.4
134 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
terminology: Any closed curve that circles the torus once in the meridian direction (the
“short” direction) without circling in the longitude direction (the “long” direction) is called
a meridian. Any closed curve that circles the torus once in the longitude direction without
circling in the meridian direction is called a longitude.
Remark: Surfaces generally fall into two infinite sequences. The three surfaces described
above are all relatively uncomplicated and lie in the sequence of orientable surfaces. Surfaces
such as the Möbius band and the Klein bottle are examples of unorientable surfaces.
Proposition 4.1.1: A graph is planar if and only if it can be drawn without edge-crossings
on the sphere.
definition: A closed path or closed curve in a Euclidean set is the image of a continuous
function 1 from the unit interval [0, 1] to a subset of that space such that f (0) = f (1), but
which is otherwise a bijection. (For instance, this would include a “knotted circle” in space.)
Example 4.1.4: Figure 4.1.6 shows an open path and a closed curve in the plane.
f (0) f (1)
f (0) = f (1)
What makes the plane and the sphere the simplest surfaces for drawing graphs is the
Jordan separation property. By invoking this property, we can prove that K5 and K3,3
cannot be drawn without edge-crossings in the plane or the sphere.
definition: A Euclidean set X has the Jordan separation property if every closed
curve in X separates X.
Theorem 4.1.2: [Jordan Curve Theorem] Every closed curve in the sphere (plane)
has the Jordan separation property, that is, it separates the sphere (plane) into two regions,
one of which contains the North Pole (contains “infinity”).† ♦ (proof omitted)
Corollary 4.1.3: A path from one point on the boundary of a disk through the interior
to another point on the boundary separates the disk. ♦ (proof omitted)
We again emphasize that the Jordan separation property distinguishes the plane and
sphere from other surfaces. For instance, although it is possible to draw a closed curve on
a torus that separates the surface into two parts (e.g., just draw a little circle around a
point), a meridian does not, nor does a longitude, as one sees clearly in Figure 4.1.4.
The Jordan Curve Theorem is quite difficult to prove in full generality; in fact, Jordan
himself did it incorrectly in 1887. The first correct proof was by Veblen in 1905. A proof
for the greatly simplified case in which the closed curve consists entirely of straight-line
segments, so that it is a closed polygon, is given by Courant and Robbins in What Is
Mathematics?.
Proof: Label the vertices 0, . . . , 4. By the Jordan Curve Theorem, any drawing of the cycle
(1, 2, 3, 4, 1) separates the sphere into two regions. Consider the region with vertex 0 in
its interior as the “inside” of the cycle. By the Jordan Curve Theorem, the edges joining
vertex 0 to each of the vertices 1, 2, 3, and 4 must also lie entirely inside the cycle, as
illustrated in Figure 4.1.8. Moreover, each of the 3-cycles (0, 1, 2, 0), (0, 2, 3, 0), (0, 3, 4, 0),
and (0, 4, 1, 0) also separates the sphere, and, hence, edge 24 must lie to the exterior of the
cycle (1, 2, 3, 4, 1), as shown.
It follows that the cycle formed by edges 24, 40, and 02 separates vertices 1 and 3, again
by the Jordan Curve Theorem. Thus, it is impossible to draw edge 13 without crossing an
edge of that cycle. ♦
† By the Schönfliess theorem, both regions on a sphere and the interior region in a plane are topologically
4 0 2
5 4
Thus, there are three regions: the exterior of cycle (2, 3, 4, 5, 2), and the inside of each of
the other two cycles. It follows that no matter which region contains vertex 1, there must
be some even-numbered vertex that is not in that region, and, hence, the edge from vertex
1 to that even-numbered vertex would have to cross some cycle edge. ♦
Corollary 4.1.6: If either K5 or K3,3 is a subgraph of a graph G, then every drawing of
G in the sphere (or plane) contains at least one edge-crossing.
definition: The complete graph K5 and the complete bipartite graph K3,3 are called the
Kuratowski graphs, as shown in Figure 4.1.10.
K5 K 3,3
Example 4.1.7: Figure 4.1.11 illustrates that K5 can be drawn without edge-crossings on
the torus, even though this is impossible on the sphere. It can be shown that for every graph
there is a surface on which a crossing-free drawing is possible.
y
4.1.2 For the given point w in the xz-plane, calculate the coordinates of the point ρ−1 (w)
in the unit sphere under the inverse Riemann stereographic projection. (Hint: Use analytic
geometry, as in the previous four exercises.)
√
3 (b) (3, 0, 4)
(a) 3 , 0, 0
(d) 12 , 0, 0
(c) (1, 0, 1)
4.1.3 Explain why every complete graph Kn , n ≥ 5, and every complete bipartite graph
Km,n , m, n ≥ 3, is not planar.
4.1.4 Determine if the hypercube Q3 is planar.
4.1.5 Determine if the complete tripartite graph K2,2,2 = 2K1 + K2,2 is planar.
4.1.6 Determine if the complete tripartite graph K2,2,3 = 2K1 + K2,3 is planar.
4.1.7 Determine if the complete 4-partite graph K2,2,2,2 = K2,2 + K2,2 is planar.
Graph Subdivision
definition: Let e be an edge in a graph G. Subdividing the edge e means that a new
vertex w is added to VG , and that edge e is replaced by two edges. If e is a proper edge with
endpoints u and v, then it is replaced by e0 with endpoints u and w and e00 with endpoints
w and v. If e is a self-loop incident on vertex u, then e0 and e00 form a multi-edge between
w and u.
e'
u v u w e u
e v u w
e' e" e"
definition: Let w be a 2-valent vertex in a graph G, such that two proper edges e0 and
e00 are incident on w. Smoothing away (or smoothing out) vertex w means replacing
w and edges e0 and e00 by a new edge e. If e0 and e00 have only the endpoint w in common,
then e is a proper edge joining the other endpoints of e0 and e00 . If e0 and e00 have endpoints
w and u in common (i.e., they form a multi-edge), then e is a self-loop incident on u.
e'
u w v u v u e
e w u
e' e" e"
Example 4.2.1: The (n + 1)-cycle graph can be obtained from the n-cycle graph by sub-
dividing any edge, as illustrated in Figure 4.2.4. Inversely, smoothing away any vertex on
the (n + 1)-cycle, for n ≥ 1, yields the n-cycle. It is not permitted to smooth away the only
vertex of the 1-cycle C1 (= the bouquet B1 ).
e'
e
e"
Proof: When the operations of subdivision and smoothing are performed on a copy of the
graph already drawn on the surface, they neither introduce nor remove edge-crossings.
♦
140 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Barycentric Subdivision
The operation of subdivision can be used to convert a general graph into a simple graph.
This justifies a brief digression on our path toward a proof of Kuratowski’s theorem.
definition: The (first) barycentric subdivision of a graph is the subdivision in which
one new vertex is inserted in the interior of each edge.
Example 4.2.3: The concept of barycentric subdivision and the next three propositions
are illustrated by Figure 4.2.5.
Proof: Let G0 denote the barycentric division of graph G. One endpoint of each edge in G0
is an “old” vertex (i.e., from VG ), and the other endpoint is “new” (i.e., from subdividing).
♦
Proposition 4.2.3: Barycentric subdivision of any graph yields a loopless graph.
Proof: Clearly, barycentric subdivision of a loopless graph cannot create loops. If two edges
of a barycentric subdivision graph have the same “new” vertex w as an endpoint, then the
other endpoints of these two edges must be the distinct “old” vertices that were endpoints
of the old edge subdivided by w. ♦
definition: For n ≥ 2, the nth barycentric subdivision of a graph is the first barycentric
subdivision of the (n − 1)st barycentric subdivision.
Proposition 4.2.5: The second barycentric subdivision of any graph is a simple graph.
Proof: By Proposition 4.2.3, the first barycentric subdivision is loopless, and thus, by
Proposition 4.2.4, the second barycentric subdivision is simple. See Figure 4.2.6. ♦
Graph Homeomorphism
definition: The graphs G and H are homeomorphic graphs if there is an isomorphism
from a subdivision of G to a subdivision of H.
Example 4.2.4: Graphs G and H in Figure 4.2.7 cannot be isomorphic, since graph G is
bipartite and graph H contains a 3-cycle. However, they are homeomorphic, because if edge
d in graph G and edge e in graph H are both subdivided, then the resulting graphs are
isomorphic.
d
e
G H
0 2
1 3
Notice in Figure 4.2.8 that each side of the bipartition of K3,3 contains two of the images
of vertices of K4 . A homeomorphic copy of K4 in K3,3 cannot have three vertex images on
one side of the bipartition. To see this, suppose (without loss of generality) that vertex
images 0, 1, and 2 are on one side, and that vertex 3 is on the other side, as illustrated
in Figure 4.2.9 below. A homeomorphic copy of K4 would require three internally disjoint
142 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
paths joining the three possible pairs of vertices 0, 1, and 2. But this is impossible, since
there are only two remaining vertices on the other side that can be used as internal vertices
of these paths.
0 1 2
Example 4.2.6: Figure 4.2.10 shows that the hypercube graph Q4 contains a subgraph
that is homeomorphic to the complete graph K5 . The five labeled white vertices represent
vertices of K5 . The 10 internally disjoint paths joining the 10 different pairs of these vertices
are given bold edges. Gray vertices are internal vertices along such paths.
1 0
4
(a) (b)
(c) (d)
4.2.2 What is the minimum number of subdivision vertices required to make the bouquet
Bn simple? (Hint: The second barycentric subdivision is not the minimum such subdivision.)
4.2.3 Show that two graphs are homeomorphic if and only if they are isomorphic to subdi-
visions of the same graph.
Section 4.3 Extending Planar Drawings 143
4.2.4 Prove that a homeomorphic copy of the first of the given graphs is contained in the
second graph.
(a) K4 in K3,4 . (b) K3,3 in K4,5 .
(c) W4 in K4,5 . (d) K5 in K4,5 .
4.2.5 Prove that the second given graph does NOT contain a homeomorphic copy of the
first graph.
(a) K4 in K2,3 . (b) K3,3 in K4,4 − 4K2 .
(c) K5 in K4,4 . (d) Q3 in K3,5 .
Proof: Draw graph G in the plane. Alongside any existing edge e of the drawing, another
edge can be drawn between the endpoints of e, sufficiently close to e that it does not intersect
any other edge. Moreover, at any vertex v, inside any region with v on its boundary, it is
possible to draw a self-loop with endpoint v, sufficiently small that it does not intersect
another edge. (See Figure 4.3.1.) ♦
v v
e e
Proposition 4.3.3: A planar graph G remains planar if any edge is subdivided or if a new
edge e is attached to a vertex v ∈ VG (with the other endpoint of e added as a new vertex).
Proof: Clearly, placing a dot in the middle of an edge in a planar drawing of G to indicate
subdivision does not create edge-crossings. Moreover, it is easy enough to insert edge e into
any region that is incident on vertex v. (See Figure 4.3.2.) ♦
v v e
The following proposition applies to imbeddings in all surfaces, not just to imbeddings
in the sphere.
Proposition 4.3.4: Let ι : G → S be a graph imbedding on a sphere or on any other
surface. Let d be an edge of G with endpoints u and v. Then the imbedding of the graph
G − d obtained by deleting edge d from the imbedding ι : G → S has a face whose boundary
contains both of the vertices u and v.
Proof: In the imbedding ι : G → S, let f be a face whose boundary contains edge d. When
edge d is deleted, face f is merged with whatever face lies on the other side of edge d, as
illustrated in Figure 4.3.3. On surface S, the boundary of the merged face is the union of
the boundaries of the faces containing edge d, minus the interior of edge d. (This is true
even when the same face f lies on both sides of edge d.) Vertices u and v both lie on the
boundary of that merged face, exactly as illustrated. ♦
Section 4.3 Extending Planar Drawings 145
u u
f d
v v
Proof: Copy the planar drawing of G onto the sphere so that the North Pole lies in the
interior of face f . Then apply the Riemann stereographic projection. ♦
Proposition 4.3.6: Let f be a face of a planar drawing of a graph H, and let u1 , . . . , un
be a subsequence of vertices in the boundary walk of f . Let f 0 be a face of a planar drawing
of a graph J, and let w1 , . . . , wn be a subsequence of vertices in the boundary walk of f 0 .
Then the amalgamated graph (H ∪ J)/{u1 = w1 · · · , un = wn } is planar.
Proof: Planar drawings of graphs H and J with n = 3 are illustrated in Figure 4.3.4.
x
b a f'
y z
f
c
H J
Figure 4.3.4 Two planar graph drawings.
First redraw the plane imbedding of H so that the unit disk lies wholly inside face f . Next
redraw graph J so that the boundary walk of face f 0 surrounds the rest of graph J, which
is possible according to Proposition 4.3.5. Figure 4.3.5 shows these redrawing of graphs H
and J.
y
f'
b a x
z
c
H J
Figure 4.3.5 Redrawings of the two planar graph imbeddings.
146 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
We may assume that the cyclic orderings of the vertex sequences {u1 , . . . , un } and
{w1 , . . . , wn } are consistent with each other, since the drawing of graph J can be reflected,
if necessary, to obtain cyclic consistency. Now shrink the drawing of graph J so that it fits
inside the unit disk in face f , as shown on the left in Figure 4.3.6 below. Then stretch the
small copy of J outward, as illustrated on the right side of that figure, thereby obtaining a
crossing-free drawing of the amalgamation (H ∪ J)/{a = x, b = y, c = z}. ♦
b a b=y a=x
y x
z
c c=z
Figure 4.3.6 Position the two graphs and then amalgamate by stretching.
Corollary 4.3.7: Let H and J be planar graphs. Let U be a set of one, two, or three
vertices in the boundary of a face f of the drawing of H, and let W be a set of the same
number of vertices in the boundary of a face f 0 of the drawing of J. Then the amalgamated
graph (H ∪ J)/{U = W } is planar.
Proof: Whenever there are at most three vertices in the vertex subsequences to be amalga-
mated, there are only two possible cyclic orderings. Since reflection of either of the drawings
is possible, the vertices of sets U and W in the boundaries of faces f and f 0 , respectively,
can be aligned to correspond to any bijection U → W. ♦
Remark: The requirement that vertices of amalgamation be selected in their respective
graphs from the boundary of a single face cannot be relaxed. Amalgamating two planar
graphs across two arbitrarily selected vertices may yield a non-planar graph. For instance,
Figure 4.3.7 shows how the non-planar graph K5 can be derived as the amalgamation of the
planar graphs G and K2 . This does not contradict Corollary 4.3.7, because the two vertices
of amalgamation in G do not lie on the same face of any planar drawing of G.
w1
u1 u2 u1 = w1 u2 = w2
w2
G K2 K5
Remark: Amalgamating two planar graphs across sets of four or more vertices per face
may yield a non-planar graph, as shown in Figure 4.3.8. The resulting graph shown is K3,3
with two doubled edges. The bipartition of K3,3 is shown in black and white.
w1 u2 = w 2 u1 = w1
u2 u1
w4
u3 u0 w2 u3 u0
u4 u5
w5 u4 = w 4 u5 = w 5
Appendages to a Subgraph
In an intuitive sense, subgraph H of a graph G separates two edges if it is impossible
to get from one edge to the other without going through H. The following definition make
this precise.
definition: Let H be a subgraph of a connected graph G. Two edges e1 and e2 of EG −EH
are unseparated by subgraph H if there exists a walk in G that contains both e1 and
e2 , but whose internal vertices are not in H.
Remark: The relation unseparated by subgraph H is an equivalence relation on EG − EH ;
that is, it is reflexive, symmetric, and transitive.
definition: Let H be a subgraph of a graph G. Then an appendage to subgraph H
is the induced subgraph on an equivalence class of edges of EG − EH under the relation
unseparated by H.
definition: Let H be a subgraph of a graph. An appendage to H is called a chord if
it contains only one edge. Thus, a chord joins two vertices of H but does not lie in the
subgraph H itself.
definition: Let H be a subgraph of a graph, and let B be an appendage to H. Then a
contact point of B is a vertex of both B and H.
Example 4.3.1: In the graph G of Figure 4.3.9, subgraph H is the bold cycle. Appendage
B1 is the broken-edge subgraph with contact points a1 , a2 , and a3 . Appendage B2 is the
exterior subgraph with contact points a3 and a4 . Appendage B3 is the interior subgraph
with contact points a1 , a5 , and a6 . Appendage B4 is an exterior chord. Notice that within
each of the three non-chord appendages, it is possible to get from any edge to any other
edge by a walk in which none of the internal vertices is a contact point.
a2
B4
B1 a1
a3
H
a6 B3
a5
B2
a4 G
Also notice that each non-chord appendage contains a single component of the deletion
subgraph G − VH . In addition to a component of G − VH , a non-chord appendage also
contains every edge extending from that component to a contact point, and the contact
point as well.
Remark: Every subgraph of a graph (not just cycles) has appendages. Even a subgraph
comprising a set of vertices and no edges would have appendages.
Overlapping Appendages
The construction of a planar drawing of a connected graph G commonly begins with the
selection of a “large” cycle to be the subgraph whose appendages constitute the rest of G.
148 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
In this case, some special terminology describes the relationship between two appendages,
in terms of their contact points.
definition: Let C be a cycle in a graph. The appendages B1 and B2 of C overlap if either
of these conditions holds:
i. Two contact points of B1 alternate with two contact points of B2 on cycle C.
ii. B1 and B2 have three contact points in common.
Example 4.3.2: Both possibilities (i) and (ii) for overlapping appendages are illustrated
in Figure 4.3.10.
v1 C
C
u1 B2 v2
B1 B1
B2
v2 v3
v1
u2
Proposition 4.3.8: Let C be a cycle in a planar drawing of a graph, and let B1 and B2 be
overlapping appendages of C. Then one appendage lies inside cycle C and the other outside.
Proof: Overlapping appendages on the same side of cycle C would cross, by Corollary 4.1.3
to the Jordan Curve Theorem. ♦
terminology: Let C be a cycle of a connected graph, and suppose that C has been drawn
in the plane. Relative to that drawing, an appendage of C is said to be inner or outer,
according to whether that appendage is drawn inside or outside of C.
Example 4.3.3: In both parts of Figure 4.3.10, appendage B1 is an inner appendage, and
appendage B2 is an outer appendage.
(a) v1 v1 (b) v1 v1
u1 u1 u2 u2 u1 u1 u2 u2
v2 v2 v2 v2
u2u2
v3v3
(c) u2u2
(d)
v1v1
v2v2
4.3.2 The given graphs are to be amalgamated so that each vertex labeled ui is matched
to the vertex vi with the same subscript. Either draw a planar imbedding of the resulting
graph or prove that it is non-planar.
u2 u2
(a) (b)
u2 u2
v1 v1
v1 v1 v2 v2
v3 v3
u1 u1 u3 u3 u1 u1 v2 v2
(c) (d) u2 u2
v3 v3
v1 v1
u1 u1u v2 v2
2 u2
u1 u1 v1 v1
v2 v2 u3 u3
c c c c
d d b b d d b b
x x e e w w x x e e w w
(c) u u a a v v (d) u u a a v v
c c f f f f
c c
d d b b d d b b
x x e e w w x x e e w w
4.3.4 Given two graph imbeddings ι : G → S0 and ι0 : H → S0 in the sphere, suppose that
two vertices u1 and u2 are selected from G that do not lie on the same face boundary of
the imbedding of G, and two vertices v1 and v2 are selected from H that do not lie on the
same face boundary of the imbedding of H. Decide whether the amalgamation of G and H
across these two pairs of vertices must be non-planar. Explain your answer.
150 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
v v v
L
v v v v
u v
Figure 4.4.3 Cycle C has the maximum number of edges inside it.
Assertion 2.2: Let B be an appendage of C that has only two contact points, neither of
which is u or v. Then appendage B is a chord.
Proof of Assertion 2.2: If B were a non-chord appendage, then those two contact points
of B would separate vertices u and v in G from the other vertices of B, which would
contradict the 3-connectivity of G. ♦ (Assertion 2.2)
Assertion 2.3: Let d be an outer appendage of cycle C. Then d is a chord, and its
endpoints alternate on C with u and v, so that edges e and d are overlapping chords of cycle
C.
Proof of Assertion 2.3: Suppose that two of the contact points, say a1 and a2 , of ap-
pendage d do not alternate with vertices u and v on cycle C. Then appendage d would
contain a path P between vertices a1 and a2 with no contact point in the interior of P .
Under such a circumstance, cycle C could be “enlarged” by replacing its arc between a1 and
a2 by path P . The enlarged cycle would still pass through vertices u and v and would have
more edges inside it than cycle C, as shown in Figure 4.4.4, thereby contradicting the choice
of cycle C. Moreover, if outer appendage d had three or more contact points, then there
would be at least one pair of them that does not alternate with u and v. Thus, appendage
d has only two contact points, and they alternate with u and v. By Assertion 2.2, such an
appendage is a chord. ♦ (Assertion 2.3)
u u
a1 a1
a2 a2
v v
Assertion 2.4: There is an inner appendage of cycle C that overlaps edge e and also
overlaps some outer chord.
Proof of Assertion 2.4: One or more inner appendages must overlap chord e, because
otherwise edge e could be drawn inside cycle C without crossing any inner appendages,
thereby completing a planar drawing of graph G. Moreover, at least one inner appendage
that overlaps e also overlaps some outer appendage d. Otherwise, every such inner appendage
could be redrawn outside cycle C, which would permit edge e to be drawn inside, thereby
completing the drawing of G. By Assertion 2.3, outer appendage d is necessarily a chord.
♦ (Assertion 2.4)
Completion of Step 2: Let G be a non-planar graph containing no Kuratowski subgraph
and with the minimum number of edges for any such graph. Then graph G contains a cycle
that has three mutually overlapping appendages, two of which are chords.
Proof: The cycle C selected at the start of Step 2 meets the requirements of this concluding
assertion. In particular, one of the appendages of cycle C is the chord e designated at the
start of Step 2. Assertion 2.4 guarantees the existence of a second appendage B that not
only overlaps chord e, but also overlaps some outer chord d. By Assertion 2.3, chord d also
overlaps chord e. Thus, the three appendages e, B, and d are mutually overlapping.
♦ (Step 2)
x y
e
v
d
Case 1. Suppose that appendage B has at least one contact point s that differs from u, v,
x, and y.
By symmetry of the C-e-d configuration, it suffices to assume that contact point s lies
between vertices u and x on cycle C. In order to overlap chord e, appendage B must have
a contact point t on the other side of u and v from vertex s. In order to overlap chord d,
appendage B must have a contact point t0 on the other side of x and y from vertex s.
u u
s s
t
P'
e y
x x P y
w
P ⊂B
e
t
t'
v v
d d
Subcase 1a. Contact point t lies in the interior of the arc between v and y on cycle C, in
which case it may be considered that t0 = t, as in Figure 4.4.6. In this subcase, let P be a
path in appendage B between contact points s and t. Then the union of cycle C, path P ,
and chords e and d forms a homeomorphic copy of K3,3. ♦ (Subcase 1a)
Subcase 1b. Contact point t lies on arc uy, with t 6= u (so that appendage B overlaps
chord e), and contact point t0 lies on arc xv with t0 = 6 x (so that B overlaps chord d), as
in Figure 4.4.6. In this subcase, let P be a path in appendage B between contact points t0
and t. Let w be an internal vertex on path P such that there is a w-s path P 0 in B with
no internal vertices in P . (Such a path P 0 exists, because appendage B is connected.) Then
this configuration contains a homeomorph of K3,3 in which each of the vertices w, x, and
u is joined to each of the vertices s, t, and t0 . As is apparent in Figure 4.4.6, it does not
matter if t = y or if t0 = v. ♦ (Subcase 1b)
Case 2. Appendage B has no contact points other than u, v, x, and y.
Vertices x and y must be contact points of B so that it overlaps chord e. Vertices u and v
must be contact points of B, so that it overlaps chord d. Thus, all four vertices u, v, x, and
y must be contact points of appendage B. Appendage B has a u-v path P and an x-y path
Q whose internal vertices are not contact points of B.
u u
P' e
x w Q y t
x y
s Q
P e P"
v v
d d
Subcase 2a. Paths P and Q intersect in a single vertex w, as shown in Figure 4.4.7. Then the
union of the C-e-d configuration with paths P and Q yields a configuration homeomorphic
to K5 , as illustrated, in which the five mutually linked vertices are u, v, y, x, and w.
♦ (Subcase 2a)
Section 4.4 Kuratowski’s Theorem 155
To find a homeomorphic copy of K5 , look for a 4-wheel with a pair of disjoint paths
joining two pairs of vertices that alternate on the rim, as illustrated in Figure 4.4.8(b).
Example 4.4.1: The bold edges show the crossed paths joining a white vertex on one cycle
with a black vertex on the other in Figure 4.4.9, thereby forming a subdivided K3,3 .
Example 4.4.2: The bold edges show the crossed paths joining a white vertex on one cycle
with a black vertex on the other in Figure 4.4.10, thereby forming a subdivided K3,3 .
Example 4.4.3: The bold edges show the crossed paths joining vertices that alternate on
the rim of the wheel in Figure 4.4.11, thereby forming a subdivided K5 .
(a) (b)
(c) (d)
Section 4.5 Algebraic Tests for Planarity 157
(e) (f)
(k) K2 × K4 . (l) C5 × C5 .
(m) Q3 + K1 . (n) K7 − C7 .
About Faces
definition: The face-set of a graph imbedding ι : G → S is the set of all faces of
the imbedding, formally denoted Fι . Informally, when there is no ambiguity regarding the
imbedding, the face-set is often denoted FG or F .
Example 4.5.1: The graph imbedding in Figure 4.5.1 has four faces, labeled f1 , f2 , f3 ,
and f4 . Observe that the boundary of face f4 is not a cycle.
v2
a
f3 e
d g
b f1 f2
v1 v4
f4
c
v3
Proof: Choose any point x in the interior of edge e. Let C be a curve in face f from the
instance of point x on one occurrence of edge e to the instance of x on the other occurrence
of edge e, as illustrated in Figure 4.5.2.
f C
x
e
Since curve C starts and stops at the same point x, it is a closed curve, so it separates the
plane (by the Jordan Curve Theorem). Thus, curve C separates whatever subgraph of G
lies on one side of curve C from whatever subgraph lies on the other side. Since curve C
intersects graph G only in edge e, it follows that deleting edge e would separate graph G.
In other words, edge e is a cut-edge. ♦
The number of faces of a drawing of G can vary from surface to surface, as we observe
in the following example.
Example 4.5.3: When the graph of Figure 4.5.1 is imbedded in the torus, as shown in
Figure 4.5.3, the number of faces drops from four to two. One face is the monogon hdi shaded
with wavy lines. The other face is 11-sided, with boundary walk ha, b, d, b, c, e, g, c, a, e, gi.
The surface is not the plane, so it should not be surprising that even though edge a occurs
twice on the boundary of the 11-sided face, edge a is not a cut-edge.
Section 4.5 Algebraic Tests for Planarity 159
v4
d d
b g
c v4
v1
a b
c a e v3
g
v2 v1 v2
v3
e
Figure 4.5.3 Two views of the same graph imbedding in the torus.
Face-Size Equation
Theorem 4.5.2: [Face-Size Equation] Let ι : G → S be an imbedding of graph G into
surface S. Then X
2 |EG | = size(f )
f ∈F
Proof: Each edge either occurs once in each of two different face boundary walks or occurs
twice in the same boundary walk. Thus, by definition of face-size, each edge contributes two
sides to the sum. ♦
Example 4.5.4: The graph in Figure 4.5.4 has six edges, so the value of the left side of
the equation is 2 |E| = 12. The value of the right side of the equation is
X
size(f ) = size(f1 ) + size(f3 ) + size(f4 )
f ∈F
= 1 + 2 + 3 + 6 = 12
f3
f1 f2
f4
Edge-Face Inequality
definition: A proper walk in a graph is a walk in which no edge occurs immediately
after itself.
Proposition 4.5.3: Every proper closed walk W in a graph contains a subwalk (possibly
W itself) that is a cycle.
Proof: If length(W ) = 1, then walk W itself is a cycle. If length(W ) = 2, then walk W has
the form
W = hv, d, v 0 , e, vi
where d =6 e, since walk W is proper. If v 0 = v, then the subwalk v, d, v of length 1 is a
cycle. Otherwise, walk W itself is a 2-cycle.
160 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Now suppose that length(W ) ≥ 3. If walk W contains no repeated vertex, then walk W
itself is a cycle. Otherwise, let v be a vertex with two occurrences on walk W such that the
subwalk between them contains no repeated occurrences of any vertex and no additional
occurrences of v. Then that subwalk is a cycle. ♦
Proposition 4.5.4: Let f be a face of an imbedding ι : G → S whose boundary walk W
contains no 1-valent vertices and no self-loops. Then W is a proper closed walk.
h. . . , u, e, v, e, w, . . .i
occurs in boundary walk W . This means that face f meets itself on edge e, and that the
two occurrences of e are consecutive sides of f when f is regarded as a polygon. Clearly, the
direction of the second traversal of edge e is opposite to that of the immediately preceding
traversal, since e is not a self-loop. Moreover, since edge e has only one endpoint other than
v, it follows that u = w. This situation is illustrated by Figure 4.5.5(i) below.
Consider a closed curve C in surface S that begins at some point x on edge e near vertex
v, and runs down the end of e around vertex v and back out the other side of that end of e
to that same point x on the other side of edge e. Since all of curve C except point x lies in
the interior of face f , it follows that no edge other than e intersects curve C. Since curve
C separates surface S (one side is a topological neighborhood of an end of edge e, and the
other is the rest of surface S), it follows that no edge except e is incident on v, as shown in
Figure 4.5.5(ii). Thus, vertex v is 1-valent, which contradicts the premise. ♦
u
bdry(f)
e
x C
v C f u e f
v
x
e
u
(i) (ii)
Figure 4.5.5 Surface configuration of an improper boundary walk.
We recall that the girth of a non-acyclic graph G is defined to be the length of a smallest
cycle in G.
Proposition 4.5.5: The number of sides of each face f of an imbedding ι : G → S of a
connected graph G that is not a tree is at least as large as girth(G).
Proof: (Case 1) If the boundary walk of face f is a proper walk, then its length is at least
as large as the girth, by Proposition 4.5.3.
(Case 2) If the boundary walk of face f contains a self-loop, then
girth(G) = 1 ≤ size(f )
(Case 3) By Proposition 4.5.4, the remaining case to consider is when the boundary walk
contains one or more 1-valent vertices and no self-loop. In this case, consider the imbedding
ι0 : G0 → S 0 that results from iteratively contracting every edge with a 1-valent endpoint,
until no such edges remain, with f 0 denoting the face that results from deleting all these
edges that “spike” into face f . Then
size(f ) ≥ size(f 0 )
≥ girth(G0 ) by case 1
= girth(G) since contracting a cut-edge preserves the girth ♦
Theorem 4.5.6: [Edge-Face Inequality] Let G be a connected graph that is not a tree,
and let ι : G → S be an imbedding. Then
2 |E| ≥ girth(G) · |F |
Proof: In the Face-Size Equation
X
2 |E| = size(f )
f ∈F
each term in the sum on the right side is at least girth(G), and there are exactly |F | terms.
♦
tree T
e circuit C T (e)
By Theorem 3.1.8, the subgraph T + e contains a unique cycle, CT (e). By the Jordan Curve
Theorem, the cycle CT (e) separates the sphere, which implies that two different faces meet
at edge e. Thus, deleting edge e from the imbedding merges those two faces. This yields an
imbedding of the connected graph G − e in the sphere. Therefore,
(3) |FG | = |FG−e | + 1
Accordingly,
|VG | − |EG | + |FG | = |VG−e | − |EG | + |FG | by (1)
= |VG−e | − (|EG−e | + 1) |FG | by (2)
= |VG−e | − (|EG−e | + 1) + (|FG−e | + 1) by (3)
= |VG−e | − |EG−e | + |FG−e |
=2 (by the induction hypothesis) ♦
Theorem 4.5.7 specifies the Euler equation only for an imbedding of a connected graph in
the sphere, not for other kinds of drawings. Figure 4.5.7 illustrates two drawings for which
the equation does not apply.
Example 4.5.5: The non-connected graph 2K3 in Figure 4.5.7(a) has 6 vertices and 6
edges. When it is imbedded in the plane, there are 3 faces, so the Euler equation does not
hold. We observe that there is a face (the exterior face) with two boundary components,
which cannot happen with a connected graph in the plane. We also observe that the equation
does not hold for the drawing in Figure 4.5.7(b), because it has edge-crossings and, thus, is
not an imbedding.
Poincaré Duality
The French mathematician Henri Poincaré [1900] invented a method by which, for every
(cellular ) imbedding ι : G → S of any graph G in any (closed ) surface S, one can construct
a new imbedding ι∗ : G∗ → S of a new graph C ∗ in that same surface S. The formal
definition of cellular imbedding and closed surface is beyond the scope of this chapter.
The sphere is closed, and an imbedding of a connected graph on the sphere is cellular.
Section 4.5 Algebraic Tests for Planarity 163
dual vertices: Into the interior of each primal face f , insert a new vertex f ∗ (as in Figure
4.5.8), to be regarded as dual to face f . The set {f ∗ |f ∈ Fι } is denoted V ∗ .
dual edges: Through each primal edge e, draw a new edge e∗ (as in Figure 4.5.9), joining
the dual vertex in the primal face on one side of that edge to the dual vertex in the
primal face on the other side, to be regarded as dual to edge e. If the same primal
face f contains both sides of primal edge e, then dual edge e∗ is a self-loop through
primal edge e from the dual vertex f ∗ to itself. The set {e∗ |e ∈ EG } is denoted E ∗ .
definition: In Poincaré duality, the graph is the graph G∗ with vertex-set V ∗ and edge-set
E ∗ . (The vertices and edges of the primal graph are not part of the dual graph.)
definition: In Poincaré duality, the dual imbedding is the imbedding ι∗ : G∗ → S of
the dual graph G∗ that is constructed in the dualization process.
definition: In the Poincaré duality construction, the dual faces are the faces of the dual
imbedding. The dual face containing the vertex v is denoted v ∗ . (For each vertex v ∈ VG ,
there is only one such face.) The set {v ∗ |v ∈ VG } of all dual faces is denoted F ∗ .
notation: Occasionally, a dual graph (or its vertex-set, edge-set, or face-set) is subscripted
to distinguish it from the dual graph of other imbeddings of the same graph.
Proposition 4.5.8: (Numerics of Duality) Let ι : G → S be a cellular graph imbedding.
Then the following numerical relations hold.
(i) |V ∗ | = |F |
(ii) |E ∗ | = |E|
(iii) |F ∗ | = |V |
164 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Proof: Parts (i) and (ii) are immediate consequences of the definition of the Poincaré
duality construction. Part (iii) holds because the dual edges that cross the cyclic sequence
of edges emanating from a primal vertex v of graph G form a closed walk that serves as
boundary of the dual face v ∗ that surrounds primal vertex v, as illustrated in Figure 4.5.10.
♦
dual
edges
dual dual
vertex face v *
vertex v
primal
edges
Example 4.5.6: The same graph may have many different cellular imbeddings in a given
surface and many more over the full range of possible surfaces. Figure 4.5.11 shows a different
imbedding of the primal graph from the imbedding of Figure 4.5.9. The dual graph of the
previous imbedding has degree sequence h1, 2, 5i, and the dual graph of Figure 4.5.11 has
degree sequence h1, 3, 4i, so the dual graphs are not isomorphic.
Remark: Applying the Poincaré duality construction to the dual graph imbedding simply
reconstructs the primal graph and the primal imbedding. This restoration of the original
object through redualization is an essential feature of any “duality” construction.
Remark: The Edge-Face Inequality (Theorem 4.5.6) is dual to Euler’s theorem on degree-
sum (Theorem 1.1.2).
Theorem 4.5.9: Let G be any connected simple graph with at least three vertices and an
imbedding ι : G → S0 in the sphere or plane. Then
|EG | ≤ 3 |VG | − 6
Proof: Since 3 |V |−6 = 9 and |E| = 10, the inequality |E| > 3 |V |−6 is satisfied. According
to Theorem 4.5.9, the graph K5 must be non-planar. ♦
Remark: The Jordan Curve Theorem was used to derive the Euler Polyhedral Equation,
which was used, in turn, to derive the planarity criterion |EG | ≤ 3 |VG | − 6. It remains the
ultimate reason why K5 is not imbeddable in the sphere.
Whereas an ad hoc proof of the non-planarity of K5 establishes that fact alone, the
inequality of Theorem 4.5.9, derived by the algebraic approach, can be used to prove the
non-planarity of infinitely many different graphs. The next proposition is another application
of that inequality.
Proposition 4.5.11: Let G be any 8-vertex simple graph with |EG | ≥ 19. Then graph G
has no imbeddings in the sphere or plane.
Theorem 4.5.12: Let G be any connected bipartite simple graph with at least three ver-
tices and an imbedding ι : G → S0 in the sphere or plane. Then
|EG | ≤ 2 |VG | − 4
Proof: Since 2 |V | − 4 = 8 and |E| = 9, the inequality |E| > 2 |V | − 4 is satisfied. According
to Theorem 4.5.12, the graph K3,3 must be non-planar. ♦
review from §7.1: The complete graph K5 and the complete bipartite graph K3,3 are
called the Kuratowski graphs.
K5 K 3,3
Non-planar Subgraphs
Another way to prove a graph is non-planar, besides applying Theorem 4.5.9 or Theorem
4.5.12, is to establish that it contains a non-planar subgraph.
Theorem 4.5.14: If a graph contains a non-planar subgraph, then that graph is non-
planar.
Proof: Every planar drawing of a graph remains free of edge-crossings after the deletion
(e.g., by erasure) of any set of edges and vertices. This establishes the contrapositive, that
every subgraph of a planar graph G is planar. ♦
Section 4.5 Algebraic Tests for Planarity 167
Example 4.5.8: The graph G = K7 − E(K4 ) is obtained by deleting the six edges joining
any four designated vertices in K7 . Since |VG | = 7 and |EG | = 21 − 6 = 15, it follows that
|EG | ≤ 3 |VG | − 6
Thus, the planarity formula does not rule out the planarity of K7 − E(K4 ). However,
K7 − E(K4 ) contains the Kuratowski graph K3,3 as indicated by Figure 4.5.13. Hence,
K7 − E(K4 ) is non-planar, by Theorem 4.5.14.
1 3 5
0 2 4 6
Figure 4.5.14 Two graphs with too few edges for the non-planarity formula.
168 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
G1 G2 G3 G4
4.5.3 Do the following for the given imbedded graph in Figure 4.5.15:
i. calculate |V |, |E|, and |F |;
ii. show that the Euler Polyhedral Equation |V | − |E| + |F | = 2 holds.
4.5.4 Draw the Poincaré dual of the given planar graph imbedding in Figure 4.5.15:.
4.5.5 Draw two additional planar imbeddings of the given imbedded graph in Figure 4.5.15,
so that the degree sequences of all three duals (including the given imbedding) of the
indicated graph are mutually distinct.
4.5.6 Either draw an imbedding establishing self-duality of the given graph, or prove that
no such imbedding is possible.
(a) K4 (b) K4 − K2 (c) D2
(d) K5 − K2 (e) B1 + K1 (f) K6 − 3K2
4.5.8 Either draw a plane graph that meets the given description or prove that no such
graph exists.
(a) A simple graph with 6 vertices and 13 edges.
(b) A non-simple graph with 6 vertices and 13 edges.
(c) A bipartite simple graph with 7 vertices and 11 edges.
(d) A bipartite non-simple graph with 7 vertices and 11 edges.
(e) A simple planar graph with 144 vertices and 613 edges.
(f) A simple planar graph with 1728 vertices and 5702 edges.
(g) A bipartite simple graph with 36 vertices and 68 edges.
(h) A planar simple graph with 36 vertices and 102 edges.
4.5.9 Draw a bipartite graph G with 15 vertices and 18 edges that is not planar, even
though it satisfies the formula |EG | ≤ 2 |VG | − 4.
4.5.10 Show that the given graph satisfies the planarity inequality |EG | ≤ 3 |VG | − 6, and
that it is nonetheless non-planar.
(a) K3,3 + K1 . (b) K3,3 × K2 .
(c) K8 − (K5 ∪ K3 ). (d) W5 × C4 .
170 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Example 4.6.2: In Figure 4.6.2, a subgraph isomorphic to K2,3 is shown with black ver-
tices and solid edges, and its only appendage is shown with a white vertex and broken
edges. The appendage is forced into region R, because it is the only region whose boundary
contains all three contact points.
Algorithmic Preliminaries
By iterative application of Corollary 4.3.7, a graph is planar if and only if all its blocks
are planar. Performing a prior decomposition into blocks (see §5.4) frees the main part of
the algorithm from a few cluttersome details and permits a focus on the most interesting
case, in which the graph to be tested for planarity is 2-connected.
In testing the planarity of a 2-connected graph G, the basis for a Whitney synthesis (see
§5.2) is to find a cycle and to draw it in the plane. (If there is no cycle, then the graph is a
tree, and it is planar.) The cycle is designated as the basis subgraph G0 .
The Algorithm
Naively searching for a homeomorphic copy of K5 or of K3,3 in an n-vertex graph
would require exponentially many steps. The planarity algorithm given here requires O(n2 )
execution steps.
R'
A
R
The second step is to demonstrate that regardless of which region is chosen, the eventual
algorithmic decision on planarity is the same. For further details, see §9.8 of [BoMu76] or
§6.3 of [We0l].
Hopcroft and Tarjan [HoTa74] have published a linear-time planarity algorithm. Topo-
logical arguments of Gross and Rosen [GrRo8l] enabled them to achieve a linear time re-
duction of planarity-testing for 2-complexes [GrR079] to a planarity-test for graphs.
Section 4.7 Crossing Numbers and Thickness 173
(a) The graph of Exercise 4.4.1 (b) The graph of Exercise 4.4.2
(c) The graph of Exercise 4.4.3 (d) The graph of Exercise 4.4.4
(e) The graph of Exercise 4.4.5 (f) The graph of Exercise 4.4.6
(g) K3,3 (h) K5
(i) K3 + K1 (j) (K4 − K2 ) × P3
(k) K9 − K4,5 (l) (K5 − K3 ) × P2
Crossing Numbers
Although it is easy to count the edge-crossings in a graph drawing, it is usually very
difficult to prove that the number of crossings in a particular drawing is the smallest possible.
The context of most such calculations is that the drawing has been normalized so that no
edge crosses another more than once and that at most two edges cross at any point.
definition: Let G be a simple graph. The crossing number cr(G) is the minimum num-
ber of edge-crossings that can occur in a normal drawing of G in the plane.
The usual way to calculate the crossing number of a graph G has two parts. A lower
bound cr(G) ≥ b is established by a theoretical proof. An upper bound cr(G) ≤ b is
established by exhibiting a drawing of G in the plane with b crossings. If one is able to draw
the given graph with only one edge-crossing, then calculating the crossing number reduces
to a planarity test.
Proof: By Theorem 4.1.4, every drawing of K5 in the plane must have at least one crossing.
Thus, cr(K5 ) ≥ 1. Since the drawing of K5 in Figure 4.7.1 has only one crossing, it follows
that cr(K5 ) ≤ 1. ♦
Proof: By Theorem 4.1.5, it follows that cr(K3,3 ) ≥ 1. The drawing of K3,3 in Figure 4.7.2
with only one crossing implies that cr(K3,3 ) ≥ 1. ♦
Figure 4.7.2 A drawing of K3,3 in the plane with only one crossing.
Proof: Let H be a planar spanning subgraph of G with the maximum number of edges.
Theorem 4.5.9 implies that |EH | ≤ 3 |VH | − 6, from which it follows that |EH | ≤ 3 |VG | − 6,
since VH = VG . Since H is maximum planar, we infer that no matter how each of the
remaining |EG | − |EH | edges is added to a planar drawing of H, it crosses at least one edge
of H. Thus, cr(G) ≥ |EG | − |EH | ≥ |EG | − 3 |VG | + 6. ♦
cr(K6 ) ≥ 15 − 3 · 6 + 6 = 3
The drawing of K6 in Figure 4.7.3 with three crossings establishes that cr(K6 ) ≤ 3. ♦
Proof: Let H be a planar spanning subgraph of G with the maximum number of edges.
Theorem 4.5.12 implies that |EH | ≤ 2 |VH | − 4, from which it follows that |EH | ≤ 2 |VG | − 4,
since VH = VG . Since H is maximum planar, it follows that no matter how each of the
remaining |EG | − |EH | edges is added to a planar drawing of H, it crosses at least one edge
of H. Thus, cr(G) ≥ |EG | − |EH | ≥ |EG | − 2 |VG | + 4. ♦
Proposition 4.7.6: cr(K3,4 ) = 2.
cr(K3,4 ) ≥ 12 − 2 · 7 + 4 = 2
The drawing of K3,4 in Figure 4.7.4 with two crossings implies that cr(K3,4 ) ≤ 2. ♦
Example 4.7.1: The requirement that no more than two edges cross at the same intersec-
tion is necessary for these results to hold. Figure 4.7.5 shows that if a triple intersection is
permitted, then K3,4 can be drawn in the plane with only one crossing.
Thickness
Application 4.7.1: Partitioning a Network into Planar Layers One technique involved
in miniaturizing a non-planar electronic network is to sandwich layers of insulation between
planar layers of uninsulated wires, which connect nodes that pierce through all the layers.
Minimizing the number of layers tends to reduce the size of the chip. Moreover, in applying
the technique to mass production, minimizing the number of layers tends to reduce the cost
of fabrication.
definition: The thickness of a simple graph G, denoted θ(G), is the smallest cardinality
of a set of planar spanning subgraphs of G whose edge-sets partition EG .
176 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Example 4.7.2: The two planar graphs in Figure 4.7.6 below both span K8 . The union of
their edge-sets is EK8 . Thus, a chip implementing K8 would need only two planar layers.
0 1 3 6
7 2 0 1
6 3 5 4
5 4 2 7
Proof: By Theorem 4.7.7, θ(K8 ) ≥ 2. Figure 4.7.6 shows two planar graphs whose union
is K8 , which implies that θ(K8 ) ≤ 2. ♦
Theorem 4.7.9: Let G be a connected simple bipartite graph. Then
EG
θ(G) ≥
2 |VG | − 4
4.7.2 Derive this lower bound for the crossing number of the complete bipartite graph Km,n .
cr(Km,n ) ≥ (m − 2)(n − 2)
4.7.3 Draw the Petersen graph in the plane with two (normal) crossings.
4.7.4 Draw K7 in the plane with nine (normal) crossings.
4.7.5 Calculate the crossing number of a given graph.
(a) K4,4 (b) K4,5
(c) Q3 + K1 (d) C4 + K2
l m
mn
4.7.6 Prove that θ(Km,n ) ≥ 2(m+n−2) .
A
B
4.8 Supplementary Exercises 179
A B C
A B
4.8.16 a. Show how to add one edge to graph A so that the resulting graph is non-planar
(and prove non-planarity). b. Show how to delete one edge from graph B so that the resulting
graph is planar.
A B
A B
4.8.18 Use the planarity algorithm to show that the circulant graph circ(7 : 1, 2) is non-
planar. Find a Kuratowski subgraph.
4.8.19 Use the planarity algorithm to show that the circulant graph circ(9 : 1, 3) is non-
planar. Find a Kuratowski subgraph.
180 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
Glossary
appendage to a subgraph H: the induced subgraph on a set of edges such that each
pair lies on a path with no internal vertices in H and is maximal with respect to this
property.
—, blocked: for a subgraph H drawn on a surface, an appendage that is undrawable in
every region.
—, forced into region R: an appendage B such that R is the only region whose boundary
contains all the contact points of B.
—, overlapping pair for a cycle C: appendages B1 and B2 such that either of these
conditions holds:
(i) Two contact points of B1 alternate with two contact points of B2 on cycle C.
(ii) B1 and B2 have three contact points in common.
barycentric subdivision, (first) of a graph G: the subdivision of G such that every edge
of G is subdivided exactly once.
—, nth : the first barycentric subdivision of the (n − 1)st barycentric subdivision.
boundary of a region of an imbedding of a graph G: the subgraph of G that comprises
all vertices that abut the region and all edges whose interiors abut the region.
boundary walk of a face of an imbedding of a graph G: a dosed walk in graph G that
corresponds to a complete traversal of the perimeter of the polygonal region within the
face.
cellular imbedding ι : G → S: a graph imbedding such that every region is topologically
equivalent to an open disk.
chord of a subgraph H: an appendage of H that consists of a single edge.
connected Euclidean set: see Euclidean set.
contact point of an appendage B to a subgraph H: a vertex in both B and H.
crossing number cr(G) of a simple graph G: the minimum number of edge-crossings that
can occur in a normal planar drawing of G.
curve, closed or open in a Euclidean set: see path.
digon: a 2-sided region.
dual edges: the edges of the dual graph.
dual faces: the faces of the dual imbedding.
dual graph and dual imbedding: the new graph and its imbedding derived, starting
with a cellular imbedding of a graph, by inserting a new vertex into each existing face,
and by then drawing through each existing edge a new edge that joins the new vertex
in the region on one side to the new vertex in the region on the other side.
dual vertices: the vertices of the dual graph.
edges separated in a graph G by the subgraph H: two edges e1 and e2 of EG − EH
such that every walk in G from an endpoint of e1 to an endpoint of e2 contains a vertex
of H.
edges unseparated in a graph G by the subgraph H: two edges e1 and e2 of EG − EH
that are not separated.
Euclidean set X: a subset of any Euclidean space Rn .
—, connected: a Euclidean set X such that for every pair of points s, t ∈ X, there exists
a path within X from s to t.
—, separation of X by a subset W ⊂ X: the condition that there exists a pair of points
s and t in X − W , such that every path in X from s to t intersects the set W .
face of a graph imbedding ι : G → S: the union of a region and its boundary. (A drawing
does not have faces unless it is an imbedding.)
face-set of a graph imbedding ι : G → S: the set of all faces of the imbedding, denoted
Fι , FG , or F , depending on the context.
182 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM
face-size: the number of edge-steps in the closed walk around its boundary (in which some
edges may count twice). A face of size n is said to be n-sided.
girth of a non-acyclic graph: the length of the smallest closed cycle (undefined for an ayclic
graph).
homeomorphic graphs: a pair of graphs G and H such that there is an isomorphism
from a subdivision of G to a subdivision of H.
planar drawing of a graph: a drawing of the graph in the plane without edge-crossings.
planar graph: a graph such that there exists a planar drawing of it.
plane in Euclidean 3-space R3 : a set of points (x, y, z) such that there are numbers a, b, c,
and d with ax + by + cz = d.
Riemann stereographic projection: a function ρ that maps each point w of the unit-
diameter sphere (tangent at the origin (0, 0, 0) to the xz -plane in Euclidean 3-space) to
the point ρ(x) where the ray from the North Pole (0, 1, 0) through the point w intersects
the xz -plane.
self-dual graph: a graph G with an imbedding in the sphere (or sometimes another sur-
face) such that the Poincaré dual graph G∗ for that imbedding is isomorphic to G.
INTRODUCTION
We are ready to say with more precision what it means to draw a graph on a surface.
For that purpose, it is necessary to have spatial models for surfaces and graphs, in which
the edges of a graph have length, just as they do in drawings.
In practical applications, most graph drawings are on the plane or the sphere. Both
these surfaces have the simplifying feature described in §4.1, called the Jordan separation
property, that every closed curve separates it into two parts. As described there, applying
the Jordan separation property provides an elementary method for solving the problem of
deciding which graphs can be drawn on the plane or sphere.
However, some elementary methods of algebraic topology for solving this drawability
problem, once mastered, yield correct results with far less effort, and they also apply to
the more complicated surfaces. Chapter 4 presented the most basic principles for such
endeavors, in particular, the Euler Polyhedral Equation, the face-size equation, the edge-
face inequality, and Poincaré duality. These principles are applied in §5.4 to the problem
of drawing highly symmetric maps on the sphere. They are subsequently generalized to
the higher-order surfaces in §5.5, and then applied to the problem of drawing graphs on
higher-order surfaces, where the Jordan Curve Theorem is of no avail. This chapter may be
regarded as the starting point of topological graph theory.
185
186 Chapter 5 DRAWING GRAPHS AND MAPS
definition: The unit sphere is the 3-dimensional Euclidean set containing the points
{(x1 , x2 , x3 ) | x21 + x22 + x23 = 1}.
definition: The unit cylinder is the 3-dimensional Euclidean set containing the points
{(x1 , x2 , x3 ) | 0 ≤ x1 ≤ 1 and x22 + x23 = 1}. See Figure 5.1.2.
Example 5.1.3: A topological equivalence between the open unit disk and the entire plane,
which illustrates how topological equivalence permits spaces to be stretched, is given by the
function
x y
f ((x, y)) = ,
1 − x2 − y 2 1 − x2 − y 2
Example 5.1.4: The interior region R in the plane enclosed by any polygon but not in-
cluding the polygon itself is topologically equivalent to the open unit disk. Writing out the
continuous bijection with precise formulas is tedious. Instead, we describe the equivalence
informally.
Case 1: a convex polygon P . Place the geometric center (or any other interior point) of
the polygon at the origin. Next observe that the ray at angle α from the origin to infinity
α
intersects the open disk in a half-open segment ID and intersects region R in a half-open
α α α
segment IR , as illustrated in Figure 5.1.3. Let the function f map ID to IR by linear
stretching or compression. Then f is a topological equivalence from the unit open disk to
the polygonal region R.
Case 2: a non-convex polygon P . First fill polygon P with “mathematical helium” that
“inflates” it into a convex polygon with the same cycle of side-lengths, as illustrated in
Figure 5.1.4. This inflation process is a topological equivalence. Then apply the method of
the convex case.
188 Chapter 5 DRAWING GRAPHS AND MAPS
definition: A sphere is any Euclidean set that is topologically equivalent to the unit
sphere.
Example 5.1.5: The surface of any convex 3-dimensional solid is a sphere. This follows by
a construction analogous to the convex-polygon example above. For instance, Figure 5.1.5
illustrates a ball, ovoid, and cube, each a 3-dimensional convex solid. Thus, the surface of
each of these solids is a sphere.
Remark: In this topological sense, every edge has two distinct ends, even if it is a self-loop
with only one endpoint. If a large segment {f (t) | t ∈ (, 1 − )} of the interior of a space
edge is discarded, what remains is the two whisker-like ends, as illustrated in Figure 5.1.6.
1
4
0-end 1-end
0-end
1
2
1-end
1 1 3
0 4 2 4 1
3
4
Figure 5.1.6 The 0-end and the 1-end of a proper edge and of a self-loop.
Remark: The direction of a space edge may coincide with parametric increase or with
parametric decrease. In the incidence table, a marker on the upper copy of the endpoint of
a self-loop designates direction of parametric increase from the 0-end to the 1-end, and a
marker on the lower copy of the endpoint designates direction of parametric decrease from
the 1-end to the 0-end. Thus, even though a self-loop may have only one possible direction
in a standard combinatorial model of a graph, it has two directions in a topological model.
Akin to the way that the Riemann stereographic projection enables us to represent
drawings on a sphere by drawings on a flat piece of paper, there is a way to represent
toroidal drawings on a flat piece of paper.
The rectangle in Figure 5.2.2 represents a torus. The top edge and the bottom edge of
the rectangle are both marked with the letter “a”. This indicates that these two edges are
to be identified with each other, that is, pasted together. This pasting of edges creates a
cylinder.
Once the top and bottom edges are pasted together, the left and right edges become
closed curves, both marked with the letter “b”. When the left end of the cylinder is pasted
to the right end, the resulting surface is a torus.
Section 5.2 Higher-Order Surfaces 191
Remark: Pasting the left edge to the right edge converts line “a” into a closed curve.
Indeed, on the resulting torus, what was once edge “a” has become a longitude, and what
was once edge “b” has become a meridian.
definition: A Möbius band is a space formed from a rectangular strip with a half-twist,
as illustrated in Figure 5.2.3, by identifying the left edge with the right edge, to form a
continuous band, as shown in Figure 5.2.4.
definition: The central circuit of a Möbius band (Figure 5.2.5) is the result of match-
ing one end of the line halfway between the top and bottom of the rectangular strip to the
other end, as the right and left ends are identified.
central
circuit
Theorem 5.2.1: The Möbius band does not have the Jordan separation property.
Proof: The central circuit does not separate a Möbius band into two parts. ♦
Remark: To illustrate that the Jordan Curve Theorem does not hold for the Möbius band,
make a paper model of a Möbius band. Cut the Möbius band open along the central circuit.
Notice that the result is a single connected surface, not two surfaces.
Example 5.2.3: A sphere is a boundaryless surface. Although a sphere may bound a solid
ball, the sphere itself is boundaryless.
Example 5.2.4: The closed unit disk is not boundaryless. The points on the unit circle
are its boundary points.
Example 5.2.5: The unit cylinder is not boundaryless. The points on the circles at either
end are its boundary points.
Closed Surfaces
definition: A Euclidean set is finite if there is a real number M such that the maximum
distance of any point from the origin is at most M .
definition: A connected surface S is closed if it is a Euclidean set that satisfies or is
topologically equivalent to a Euclidean surface that satisfies these three conditions:
(i) The surface is finite.
Example 5.2.9: The Möbius band is not closed, because it has boundary points.
Example 5.2.10: The open unit disk is not closed, because the endpoints of the open line
segment { (x1 , x2 )| x1 = 0 and − 1 < x2 < 1} are on the unit circle, not in the open disk
itself.
terminology note: As readers familiar with topology may recognize, the present usage
of “closed” in the geometric-topology sense of a closed surface differs from the usage of
“closed” in point-set topology.
definition: A surface is non-orientable if it contains a subspace that is topologically
equivalent to a Möbius band, and orientable otherwise.
Remark: Suppose that a small square is placed with its bottom edge on the central circuit
of a Möbius band in 3-space. Suppose that the square is slid forward around the band
exactly once (not twice). Then the top of the square will be positioned below the bottom.
This reversability of top and bottom is the intuitive idea of “non-orientability”.
Section 5.2 Higher-Order Surfaces 193
Classification of Surfaces
definition: By attaching a handle to a surface, we mean punching two separate holes
in the surface and connecting one to the other with a tube.
definition: The sequence of orientable surfaces S0 , S1 , S2 , . . . is defined recursively.
S0 is the sphere, and S1 is the torus. Surface Sn+1 is obtained by attaching a handle to
surface Sn . This sequence is illustrated in Figure 5.2.6.
S0 S1 S2 S3
definition: The genus of a closed orientable surface is the subscript of the surface
Sg to which it is topologically equivalent. That is, the genus is the “number of handles” on
the surface.
definition: By adding a crosscap to a surface, we mean punching a hole in the surface
and reclosing it by attaching a Möbius band. That is, the boundary of the Möbius band is
identified with the boundary of the hole by a topological equivalence, which specifies exactly
how to make the attachment.
Remark: The topological operation of replacing a disk on a sphere or other surface by a
Möbius band can be readily performed in 4-space, but not in 3-space. Fortunately, there is
a way to conceptualize the operation without thinking 4-dimensionally. The result of the
operation is simply that whenever we cross through from the “main part” of the surface
through the boundary of a removed disk, we cross into the Möbius band that replaced the
disk.
Remark: Trying to draw a surface from 4-space in the plane would be a drop of two
dimensions. (In other words, it would be a loss of detail comparable to representing a 3-
dimensional figure by a subset of a single line.) The circle with the × is the graphic device
by which the result of the crosscap operation is represented.
definition: The sequence of non-orientable surfaces N1 , N2 , N3 , . . . is defined re-
cursively, starting from the sphere, which in this context is denoted N0 , even though it is
orientable. Surface Nn + 1 is obtained by adding a crosscap to surface Nn . Surface N1 is
called the projective plane and surface N2 the Klein bottle. See Figure 5.2.7.
N1 N2 N3
(a) The result of deleting the origin (0, 0) from the open unit disk.
(b) The result of deleting the origin (0, 0) from the closed unit disk.
(c) The result of deleting the point (1, 0) from the closed unit disk.
(d) The result of deleting a single point from a torus in 3-space.
(e) The result of deleting a meridian from the standard torus in 3-space.
5.2.3 Cut a paper model of a Möbius band open along the central circuit, and see that the
Jordan Curve Theorem does not hold for the Möbius band, thereby confirming Theorem
5.2.1.
5.2.4 Draw a closed circuit on a flat polygon representation of the torus that traverses the
meridian direction once and the longitudinal direction once. Does this circuit separate the
torus?
5.2.5 Draw a closed circuit on the torus that traverses the torus once in the meridian
direction and once in the longitudinal direction.
5.2.6 Draw a closed circuit on the torus that traverses the torus three times in the meridian
direction and twice in the longitudinal direction.
Section 5.3 Mathematical Model for Drawing Graphs 195
u pu u
qe w pu qe pw
pv e e
v
v pv
(i) (ii) (iii)
Figure 5.3.1 Three forbidden singularity types for graph drawings.
196 Chapter 5 DRAWING GRAPHS AND MAPS
(i) The interiors of the images of two edges meet at more than one point of the surface.
(ii) The interiors of the images of two different edges meet but fail to cross each other.
(ii) The interiors of the images of three or more edges meet at the same point of the
surface.
Figure 5.3.2 illustrates the remedies for the three kinds of abnormalities: (i) an edge that
crosses another several times can stay on the same side until it gets to the final crossing;
(ii) if one edge just touches another, then it can be pulled away from the other edge; (iii) if
an edge crosses a place where two other edges already cross, then it can be rerouted to go
around that preexisting crossing.
Eliminating Edge-Crossings
Frequently, it is desirable to keep the number of edge-crossings to a minimum, which
may involve some redrawing.
Remark: Every graph can be imbedded in 3-space. First draw the graph in the plane, and
then eliminate the crossings by adding handles, as in Example 5.3.2. Different handles can
be at different heights off the plane, so they do not intersect.
Application 5.3.1: Printed Circuit Boards A planar electronic circuit can be printed
onto a board. Since the wires of a planar circuit need not cross, no insulation is needed.
When a circuit is non-planar, one practical approach, described in §4.7, is to partition its
edges into a few layers.
Map Theory
definition: A map on a surface is an imbedding of a graph on that surface.
terminology note: Whereas the term mapping is a generic synonym for function, the
term map refers to a function from a graph to a surface.
review from §4.5: The (Poincaré) dual graph and the dual imbedding are derived,
starting with a cellular imbedding of a graph, by inserting a new vertex into each existing
face, and by then drawing through each existing edge a new edge that joins the new vertex
in the region on one side to the new vertex in the region on the other side.
definition: A simple map on a surface is an imbedding of a simple graph on that surface,
such that the dual graph is also a simple graph.
definition: A regular map on a surface is an imbedding of a regular graph such that the
dual graph is also a regular graph.†
Example 5.4.1: The graphs for the sphere maps (i.e., maps on a sphere) in Figure 5.4.1
are both simple and regular. However, the dual graph of map (i) is the dipole D3 , which is
regular but not simple. Furthermore, the dual graph of map (ii) is the graph K5 − e, which
is simple but not regular. These assertions are easily verified by drawing the dual graphs.
(i) (ii)
Figure 5.4.1 Two sphere maps: (i) one non-simple, (ii) the other non-regular.
Example 5.4.2: The maps in Figure 5.4.2 are both regular and simple. The first map is of
the 3-regular simple graph K4 on the sphere S0 , with all four faces 3-sided; the dual graph
is K4 . The second map is of the 3-regular simple graph CL4 on the sphere S0 , with all six
faces 4-sided; the dual graph is the octahedron graph O3 (see Exercises). These assertions
are easily verified by drawing the dual graphs.
† The algebraic map-regularity criterion prescribed by Coxeter and Moser [CoM072] and others is equivalent
for maps on the sphere and less inclusive for maps on other surfaces.
Section 5.4 Regular Maps on a Sphere 199
K 4 → S0 CL4 → S0
Proof: (⇒) Assume that the map ι : G → S is regular. Then graph G is regular. Moreover,
since the dual graph G∗ is regular, each dual vertex has the same degree. Since the degree
of a dual vertex equals the number of sides of a primal face, each primal face has the same
number of sides.
(⇐) Assume that graph G is regular and that every face has the same number of sides.
The latter condition implies that the dual graph G∗ is regular. Thus, the map ι : G → S is
regular. ♦
definition: A self-dual map on a surface is a map ι : G → S such that there is a
topological equivalence of the surface S to itself that takes graph G onto the dual graph
G∗ .
Example 5.4.3: The map K4 → S0 in Figure 5.4.2 is self-dual, but the map CL4 → S0 is
not.
Corollary 5.4.3: The only possible degrees of a graph with a regular simple map on the
sphere are 3, 4, and 5.
Proof: Theorem 5.4.2 precludes the possibility of any degree greater than 5. ♦
Corollary 5.4.4: The only possible face-sizes of a regular simple map on the sphere are 3,
4, and 5.
Proof: Solving the following three linear equations for the “unknowns” |V |, |E|, and |F |
in terms of d and r yields the result.
4r 2dr 4d
d r Y Name of polyhedron
Y Y Y
3 3 3 4 6 4 Tetrahedron
3 4 2 8 10 6 Cube
3 5 1 20 30 12 Dodecahedron
4 3 2 6 12 8 Octahedron
4 4 0 undef undef undef no solution
4 5 −2 −10 −20 −8 no solution
5 3 1 12 30 20 Icosahedron
5 4 −2 −8 −20 −10 no solution
5 5 −5 −4 −10 −4 no solution
Example 5.4.4: The five platonic solids, graphs, and maps are illustrated in Figure 5.4.3.
Dodecahedron Icosahedron
Remark: The five maps in Figure 5.4.3 are the only regular simple maps on the sphere.
The illustration proves their existence.
Remark: Since the three numerical equations used in the proof of Theorem 5.4.5 are true
for non-simple graphs, the resulting formulas can be used to determine possibilities for
non-simple regular maps on the sphere.
5.4.2 Find all non-simple regular maps on the sphere with degree at least 3.
5.4.3 Draw the dual of the map CL4 → S0 (see Figure 5.4.2), and prove that the dual
graph is isomorphic to the octahedron graph O3 .
5.4.4 Prove that for degree 2, there is a regular map on the sphere with any positive integer
specified as the face-size.
5.4.5 Prove that for face-size 2, there is a regular map on the sphere with any positive
integer specified as the degree.
202 Chapter 5 DRAWING GRAPHS AND MAPS
Cellular Imbeddings
When drawing a graph on a closed surface other than the sphere, we usually avoid having
handles or crosscaps in the interiors of regions.
definition: A region of a graph imbedding ι : G → S on a surface S is a cellular region if
it is topologically equivalent to an open disk. (Topologists sometimes call a disk a “2-cell”.)
It is a strongly cellular region if, moreover, the boundary walk is a cycle in the graph
(that is, has no repeated vertices or edges).
definition: A graph imbedding ι : G → S on a surface S is a cellular imbedding if
every region is cellular. It is a strongly cellular imbedding if every region is strongly
cellular.
Example 5.5.1: In Figure 5.5.1, the imbeddings of the bouquets B1 and B2 are both non-
cellular. In Figure 5.5.1(a), the “big” region is not cellular, because it does not have the
Jordan separation property. In Figure 5.5.1(b), the big region is topologically equivalent to
the unit cylinder minus its two boundary components.
(a) (b)
Proof: A closed loop drawn just inside one of the boundary components of face f would
separate the sphere, by the Jordan Curve Theorem. Since graph G is connected, all of it lies
on the same side of that closed loop as that boundary component. Thus, there is no other
boundary component. ♦
Section 5.5 Imbeddings on Higher-Order Surfaces 203
(a) (b)
Proof: This follows from Proposition 5.5.1 and the Schoenfliess theorem, that every closed
curve on a sphere bounds a disk (see the footnote for Theorem 4.1.2). ♦
Example 5.5.2: In the planar imbedding of K4 in Figure 5.5.3(a), there are four regions, all
strongly cellular. In the toroidal imbedding of K4 in Figure 5.5.3(b), there are two regions.
Centered in drawing (b) is a 4-sided strongly cellular region. The other (8-sided) region
is cellular, but its boundary walk includes the vertical and horizontal edges (which wrap
around the sides and top/bottom of the picture) twice and each vertex twice. Accordingly,
that region is not strongly cellular.
Observe in drawing (b) that the partial edge incident on the topmost vertex meets the
partial edge incident on the bottommost vertex. These two parts of the same edge are
joined when the top broken edge of the rectangle is identified with the bottom broken edge.
Similarly, the partial edge incident on the leftmost vertex is part of the same edge as the
partial edge incident on the rightmost vertex.
(a) (b)
Figure 5.5.3 Two imbeddings of K4 : (a) on the plane; (b) on the torus.
Example 5.5.3: Figure 5.5.4 recalls how the torus was represented in §5.2 as a rectangle
with its sides identified in pairs. Another perspective on this representation is that cutting
the torus open on its meridian and longitude permits it to be flattened into a rectangle.
Every orientable surface Sg can be represented as a flat polygon with 4g sides (for a
detailed proof, see [Ma67]). As one traverses the boundary of the polygon, each handle is
represented by a sequence of four consecutive sides, which are marked with the pasting
pattern sts−1 t−1 .
Example 5.5.4: Figure 5.5.5 shows a representation of the double torus S2 as an octagon,
from which one handle is formed by the four sides marked aba−1 b−1 and the other by the
four sides marked cdc−1 d−1 .
v a v
d b
b
v v
a
c v
a c
v v
d
d b
v c v
c a
b
c N3
b
In a drawing of a graph on the flat polygon representation of a surface, an edge may cross
through one copy of a matched side to the other copy. For instance, Figure 5.5.7 shows an
imbedding of K3,3 on the torus with three hexagonal regions. One edge crosses through the
meridian cut a, two edges cross through the longitudinal cut b, and one edge cuts through
the point where the meridian and longitude intersect.
b
a
a
Surgery on Imbeddings
Trying to draw graph imbeddings on flat polygon representations of surfaces more com-
plicated than a torus (S1 ) or a Klein bottle (N2 ) is often quite frustrating. It is frequently
easier to draw most of the graph on a simpler surface and to complete the imbedding
by attaching extra handles and drawing edges across the extra handles. Informally, such
modifications are called surgery.
Example 5.5.5: Drawing K4,5 on a flat polygon representation of S2 is no easy task. (Try
it and see!) A surgical approach to this imbedding problem is to start by drawing K4,4 on
S1 , as shown in Figure 5.5.8.
f f'
a
a
Figure 5.5.8 Toroidal imbedding of K4,4 , with holes punched in two regions.
Two regions f and f 0 of this imbedding are selected so that the union of their face-boundary
walks contains all the black vertices. Next, a hole is punched in regions f and f 0 , shown by
shaded disks in Figure 5.5.8. Then a tube is attached from one hole to the other, thereby
reclosing the surface, so that a single new non-cellular region is formed from the two regions
with the holes plus the tube. The resulting surface is S2 , and the new region has two
boundary components, at opposite ends of the tube. Finally, a fifth white vertex is drawn,
as shown in Figure 5.5.9, on the tube (depicted as shaded) and joined to both black vertices
on the boundary components. That final result of this surgery is a cellular imbedding of
K4,5 on S2 .
206 Chapter 5 DRAWING GRAPHS AND MAPS
c
f f'
holds for every graph imbedding ι : G → S, cellular or not, in every surface. Similarly, the
Edge-Face Inequality: 2|E| ≥ girth(G) · |F |
holds whenever the graph is connected but not a tree (for which girth is undefined), in every
surface, even if the imbedding is non-cellular. Moreover, for any cellular graph imbedding
ι : G → S, the following Poincaré duality relations hold.
(i) |V ∗ | = |F |
(ii) |E ∗ | = |F |
(iii) |F ∗ | = |V |
However, the Euler Polyhedral Equation is restricted to cellular imbeddings. As the following
theorems indicate, the value of this formula is unique on each orientable surface, and it is
unique on each non-orientable surface.
Lemma 5.5.3: Let G → S be a cellular imbedding of a graph in a surface. Then the result
of subdividing an edge of the imbedded copy of G, or of joining two vertices on the boundary
of a face by a new edge is an imbedding whose Euler formula has the same value as for the
imbedding G → S.
Proof: Subdividing an edge adds one new vertex and increases the number of edges by one.
Drawing a new edge across a cellular face f separates f into two faces. Either operation
causes offsetting effects on the value of the Euler formula. ♦
Theorem 5.5.4: Let a graph G be cellularly imbedded in the orientable surface Sg . Then
|V | − |E| + |F | = 2 − 2g.
Proof: For imbeddings on the sphere S0 , we proved in §4.5 that the value of the Euler
formula |V | − |E| + |F | must be equal to 2. This serves as the base case for an induction. As
an inductive hypothesis, assume that the equation is correct for every cellular imbedding in
the surface Sg . We consider a cellular imbedding of a graph G in the surface Sg+1 .
Draw a meridian on the rightmost handle of Sg+1 so that it meets graph G in finitely
many points, each in the interior of some edge of G. If necessary, we subdivide edges of G so
that no edge crosses the meridian more than once. By Lemma 5.5.3, the value of the Euler
formula in the resulting graph imbedding is unchanged from the original.
Section 5.5 Imbeddings on Higher-Order Surfaces 207
Next we thicken the meridian to an annulus A, as shown at the left of Figure 5.5.10, and
we subdivide each edge of G that crosses the annulus at both of its intersection points with
a boundary component of the annulus, which, by Lemma 5.5.3, also preserves the value of
the Euler formula. Then we augment the edge-set of the graph by adding to it each segment
of annulus boundary that joins two vertices on it. By Lemma 5.5.3, the resulting graph
imbedding has the same value of the formula |V | − |E| + |F | as the original imbedding.
In the interior of annulus A, edges and faces alternate, so there are equally many. Thus,
excising the interior of the annulus preserves the value of the formula |V | − |E| + |F |.
Finally, by capping the two resulting holes in the surface with disks, as shown at the right
of Figure 5.5.10, we obtain a surface that is topologically equivalent to Sg and a cellular
imbedding with vertex-set V 0 , edge-set E 0 , and face-set F 0 , such that |V 0 | − |E 0 | + |F 0 | =
|V | − |E| + |F | + 2. By the induction hypothesis, |V 0 | − |E 0 | + |F 0 | = 2 − 2g. It follows that
|V | − |E| + |F | = −2g = 2 − 2(g + 1). ♦
Theorem 5.5.5: Let a graph G be cellularly imbedded in the non-orientable surface Nk .
Then |V | − |E| + |F | = 2 − k.
Proof: This proof follows the same pattern as that of Theorem 5.5.4, except that the role
of the meridian is filled by the central cycle on a Möbius band. ♦
Example 5.5.6: The imbedding K3,3 → S1 in Figure 5.5.7 above is cellular, and the value
of the Euler polyhedral formula |V | − |E| + |F | is 6 − 9 + 3 = 0 = 2 − 2g.
Example 5.5.5, continued: The imbedding K4,5 → S2 in Figures 5.5.8 and 5.5.9 above
is cellular, and the value of the Euler polyhedral formula |V | − |E| + |F | is
9 − 20 + 9 = −2 = 2 − 2g.
Example 5.5.7: The imbedding of K6 into N2 in Figure 5.5.11 has nine regions, each
marked with a distinguishing numeral. Thus, |V | − |E| + |F | = 6 − 15 + 9 = 0 = 2 − k.
a
5 7 9
6 8 5
6
1 2
7
b 4
5 a
3 8
9
6 5
definition: The Euler characteristic for a surface equals the value of the Euler polyhe-
dral formula |V | − |E| + |F | for any cellular imbedding on that surface. It is denoted χ(S).
That is,
2 − 2g for the orientable surface Sg
χ(S) =
2 − k for the non-orientable surfaceNk
notation: Graph theorists denote the chromatic number of a graph G by χ(G), as we do
in Chapter 6, while topologists and geometers denote the Euler characteristic of a surface
S by χ(S), as we do in this chapter.
2|E| |E|
χ(S) = |V | − |E| + |F | ≤ |V | − |E| + = |V | −
F 3
by the edge-face inequality. That is,
2|E| 6 · χ(G)
≤6−
|V | |V |
1 X 2|E| 6 · χ(G)
δavg (G) = deg(v) = ≤6−
|V | |V | |V | ♦
v∈V
Example 5.5.8: Since χ(N1 ) = 1, the average degree of an imbedding in the non-orientable
surface N1 is less than 6. Thus, K7 cannot be imbedded in N1 .
(j) K8 − C5
Section 5.6 Geometric Drawings of Graphs 209
5.5.2 Draw the given graph on a flat polygon representation of the surface N1 .
(a) K6 (b) K3,4 (c) ML4 (d) ML5
5.5.3 Draw the given graph on a flat polygon representation of the surface N2 .
(a) K7 − K2 (b) K4,4 (c) K9 − K6 (d) K8 − C5
(a) (b)
Figure 5.6.1 Two drawings of K5 : (a) general polyline; (b) orthogonal grid.
Remark: For a set of points in R2 , knowing the locations of the points permits a solution
in O(n log n) time, i.e., faster than Prim’s algorithm.
definition: A convex set S in Rn is a set such that for every pair of points x, y ∈ S,
every point of the straight-line segment joining x and y is also in S.
definition: The convex hull of a set of points in Rn is the smallest convex set that
contains all the points.
definition: A triangulation of a set S of points in R2 is a straight-line graph drawing
whose vertices are the points in S, with the property that the graph subdivides the convex
hull of S into triangular faces, as in Figure 5.6.3.
definition: A triangulation of a set of points in Rn is a minimum weight triangulation
if it minimizes the total edge length.
Remark: It is not presently known ([LiTa04]) whether the problem of finding minimum
weight triangulations is NP-hard.
Minimizing Area
There are algorithms to shrink various kinds of polyline drawings. Doing it ad hoc is
something of an art.
Example 5.6.1: Figure 5.6.4 shows three grid drawings of K5 , progressively reduced in
area.
Example 5.6.2: Figure 5.6.5 shows three orthogonal grid drawings of K5 , progressively
reduced in area.
Representability
We seek combinatorial characterizations of graphs that are amenable to drawings of
various types and with various geometric properties.
BY ORTHOGONAL DRAWING. Obviously, a graph with a vertex of degree more than
4 has no orthogonal drawing. To visualize how to construct an orthogonal drawing for
an arbitrary graph with maximum degree at most 4, consider the orthogonal drawings of
circ(7 : 2, 3) in Figure 5.6.6.
0 1 2 3 4 5 6
0 2 4 6 1 3 5
The lower drawing indicates savings in total edge-length and area if the vertices are placed
judiciously.
BY MINIMUM SPANNING TREE. When drawing a tree T in the plane, quite possibly
the geometric minimum spanning tree for the assigned locations of the vertices of T is not
the tree T itself.
definition: A tree T is minimum-weight drawable if there exists a set of points whose
geometric minimum spanning tree is isomorphic to T .
Remark: Each tree with maximum vertex degree at most 5 can be drawn as a minimum
spanning tree of some set of vertices, by a linear-time algorithm, but no tree with maximum
degree greater than 6 can be drawn as a minimum spanning tree ([MoSu92]). It is NP -
hard to decide whether trees of maximum degree equal to 6 can be drawn as minimum
spanning trees ([EaWh96]). No trees with maximum degree greater than 12 can be drawn
as a Euclidean minimum spanning tree in R3 , whereas all trees with vertex degree at most
9 are R3 -drawable ([LiDi95]).
It follows from the definition that the Delaunay graph of a set of points is isomorphic
to the topological dual of the Voronoi diagram for that set. Figure 5.6.7 shows the Voronoi
diagram for a set of points in the plane and the corresponding Delaunay graph. Observe
that their straight-line geometric specification may cause a Delaunay edge to traverse a
region containing neither of its endpoints.
5.7.3 Draw two cellular imbeddings of the following graph on a torus, such that the dual
graphs are not isomorphic.
5.7.4 Draw the two dual graphs of Exercise 5.7.3 in the plane.
5.7.7 Draw a 2-complex whose 1-skeleton is planar, but which cannot be drawn in the
sphere with no overlap of edges or regions.
5.7.8 What is the minimum number of vertices in a 2-complex that cannot be drawn in the
sphere with no overlap of edges or regions.
Glossary
abnormality in a drawing of a graph on a surface: any of these three types of singu-
larities:
(i) The images of two edges meet at more than one point of the surface.
(ii) The images of two different edges meet, but fail to actually cross each other (i.e.,
a tangency).
(iii) Images of three or more edges meet at the same point of the surface.
angular resolution of a polyline drawing: the smallest angle formed by any two segments
of an edge at a bend or between any two edges incident at the same vertex. It does not
usually take into account the angle at which two edges cross.
area of a geometric drawing: usually the area either of its convex hull or of the smallest
rectangle with vertical and horizontal sides that covers the drawing.
Glossary 215
aspect ratio of a drawing: the ratio of the length of the longer side to the shorter side of
the smallest rectangle covering the drawing.
bend in a polyline drawing: a point where two segments belonging to the same edge
meet.
boundary point of a surface: a point that is not an interior point.
boundary walk of a face f : a closed walk that corresponds to a complete traversal of
the perimeter of the face.
boundaryless surface: a surface such that every point is an interior point.
carrier of a graph: synonym for topological model.
cellular imbedding ι : G → S: a graph imbedding such that every region is topologically
equivalent to an open disk.
—, strongly: a cellular imbedding whose regions are strongly cellular.
cellular region of a graph imbedding: a region that is topologically equivalent to an open
disk.
—, strongly: a cellular region whose boundary walk is a cycle in the graph.
central circuit of a Möbius band: the circuit formed from the line halfway between the
top and bottom of the rectangular strip when the right and left edges are identified.
closed surface: a connected surface that is finite and boundaryless, such that the end-
points of every open arc are in the surface itself.
closed unit disk: the plane set {(x1 , x2 ) | x21 + x22 ≤ 1}.
2-complex K = (VK , EK , RK ): a generalization of a graph to a 2-dimensional object, com-
prising a graph G = (VK , EK ), called the 1-skeleton of the complex, and a set RK of
regions, to each of which is associated a closed walk in the graph that is the boundary
walk of the polygon.
convex hull of a set of points in Rn : the smallest convex set that contains all the points.
convex polytope: the intersection of a finite number of half-spaces
{(x1 , . . . , xn ) | a1 x1 + · · · + an xn ≥ b}
Delaunay graph for a set S = {p1 , . . . , pn } of points in the plane: a graph whose vertex-
set is the set S, and such that two vertices pi and pj are joined by a straight line
(representing an edge) if and only if the Voronoi regions V (pi ) and V (pj ) share an
edge.
Delaunay triangulation of a point set P in R2 : a straight-line triangulation with all
internal faces triangles, such that three points are the vertices of a face if and only if
their convex hull does not contain any other point of P .
donut, standard: the solid obtained by revolving the xy-plane disk of radius 1 centered
at (0, 2) around the z-axis.
drawing of a graph G = (V, E): the continuous image on a surface of a topological model
of G, that is one-to-one everywhere except possibly the interior of one edge crossing the
interior of another.
—, grid drawing: a polyline drawing such that the vertices, crossings, and bends all
have integer coordinates.
—, polyline: a plane drawing in which each edge is a chain of line segments.
—, orthogonal: a drawing in which each edge is a chain of horizontal and vertical
segments.
—, straight-line: a drawing such that each edge is a single line segment.
dual graph and dual imbedding: the new graph and its imbedding derived, starting
with a cellular imbedding of a graph, by inserting a new vertex into each existing face,
and by then drawing through each existing edge a new edge that joins the new vertex
in the region on one side to the new vertex in the region on the other side.
edge-crossing in a graph drawing: a point on the surface where the images of two different
edges meet.
ends of a space edge: the parts of the space edge nearest to the image of the endpoint(s).
—, 0-end: the part of the space edge near the image of the 0-end of the unit interval
[0, 1].
—, 1-end: the part of the space edge near the image of the 1-end of the unit interval
[0, 1].
Euclidean metric: the usual distance metric on real n-dimensional space
p
δ ((x1 , . . . , xn ), (y1 , . . . , yn )) = (x1 − y1 )2 + · · · + (xn − yn )2
Euclidean MST problem: to produce a geometric minimum spanning tree for a set S of
points in Rn , that is, to determine the pairs of points that are endpoints of the edges
of the minimum spanning tree.
Euclidean set: a subset X of a Euclidean space.
—, connected: a Euclidean set X such that for every pair of points s, t ∈ X, there
exists a path in X from s to t.
—, finite: a Euclidean set in which the maximum distance of any point from the origin
is at most M , for some real number M .
Glossary 217
Euclidean space: the usual real vector space Rn , for any positive integer n, with the
Euclidean metric.
Euler characteristic of a surface: the value of the Euler polyhedral formula |V |−|E|+|F |
for any cellular imbedding on that surface; it is usually denoted by χ(S). Thus,
2 − 2g for the orientable surface Sg
χ(S) =
2 − k for the non-orientable surface Nk
genus of a closed orientable surface: the subscript of the surface Sg to which it is topolog-
ically equivalent, i.e., the “number of handles” on the surface.
geometric minimum spanning tree for a set S of points in Rn : a geometric spanning
tree that minimizes the total edge length.
geometric spanning tree for a set S of points in Rn : a drawing of a tree that has S as
its vertex-set.
half-disk, standard: the plane set {(x1 , x2 ) | x1 ≥ 0 and x21 + x22 < 1}.
handle on a surface: a subspace topologically equivalent to the result of removing the
interior of a closed disk from a torus.
—, adding a: the operation on a surface of replacing a subspace that is homeomorphic
to a closed disk by a handle, or equivalently, by punching two separate holes in the
surface Sn and then connecting them with a “tube”.
imbedding of a graph G: a drawing with no edge-crossings at all.
interior of a space curve: all of the space curve except for its endpoints.
interior point of a surface: a point that has an -neighborhood topologically equivalent
to an open disk.
Klein bottle: the non-orientable surface N2 with two crosscaps.
map on a surface: an imbedding of a graph on that surface.
—, regular: an imbedding of a regular graph such that the dual graph is also a regular
graph.
—, self-dual: an imbedding such that there is a topological equivalence from the imbed-
ding surface to itself that takes the primal graph to the dual graph.
—, simple: an imbedding of a simple graph, such that the dual graph is also a simple
graph.
218 Chapter 5 DRAWING GRAPHS AND MAPS
resolution rule for a drawing: a constraint that prevents the drawing from being arbi-
trarily scaled down, for instance, a minimum unit distance between vertices.
singularity in a graph drawing: a place where the drawing is not one-to-one.
1-skeleton of a 2-complex K = (VK , EK , RK ): the graph G = (VK , EK ).
space curve between two points x and y in 3-space: the image of a continuous 1-to-
1 function from the unit interval [0, 1] into 3-space that maps the endpoints 0 and 1 of
[0, 1] to x and y.
space edge: see topological model of a graph.
surface: a Euclidean set in which every point has a neighborhood that is topologically
equivalent either to the open unit disk or to the standard half-disk.
—, boundaryless: a surface such that every point is an interior point.
topological equivalence between two Euclidean sets X and Y : a continuous function
f : X → Y that is one-to-one and onto, and whose inverse function f −1 : Y → X is
continuous.
topological model of a graph G = (V, E): a model of G in Euclidean 3-space R3 , where
each vertex v ∈ V is represented by a point pv in 3-space, called a space vertex, and
each proper edge e ∈ E is represented by a space curve qe joining its endpoints, called
a space edge. The topological model of a graph G is usually also denoted G.
torus: any Euclidean set that is topologically equivalent to the standard torus.
total edge-length of a drawing: the sum of the lengths of its edges.
triangulation of a set S of points in R2 : a straight-line graph drawing whose vertices
are the points in S, with the property that the graph subdivides the convex hull of S
into triangular faces.
—, minimum weight: a triangulation that minimizes the total edge length.
unit cylinder: the Euclidean set {(x1 , x2 , x3 ) | 0 ≤ x1 ≤ 1 and x22 + x23 = 1}.
unit sphere: the Euclidean set {(x1 , x2 , x3 ) | x21 + x22 + x23 = 1}.
Voronoi diagram for a set S = {p1 , . . . , pn } of points in Rn :] a partition of Rn into n
convex polytopes V (p1 ), . . . , V (pn ) such that the interior of the region V (pj ) contains
all points that are closer to pj than to any other point in S.
Chapter 6
GRAPH COLORINGS
INTRODUCTION
The first known mention of coloring problems was in 1852, when Augustus De Morgan,
Professor of Mathematics at University College, London, wrote Sir William Rowan Hamilton
in Dublin about a problem posed to him by a former student, named Francis Guthrie.
Guthrie noticed that it was possible to color the counties of England using four colors so
that no two adjacent counties were assigned the same color. The question raised thereby
was whether four colors would be sufficient for all possible decompositions of the plane into
regions.
The Poincaré duality construction transforms this question into the problem of deciding
whether it is possible to color the vertices of every planar graph with four colors so that
no two adjacent vertices are assigned the same color. Wolfgang Haken and Kenneth Appel
provided an affirmative solution in 1976.
Numerous practical applications involving graphs and some form of coloring are de-
scribed in this chapter. Factorization is included here, because, like edge-coloring, it involves
a partitioning of the edge-set of a graph.
221
222 Chapter 6 GRAPH COLORINGS
6.1 VERTEX-COLORINGS
In the most common kind of graph coloring, colors are assigned to the vertices. From a
standard mathematical perspective, the subset comprising all the vertices of a given color
would be regarded as a cell of a partition of the vertex-set. Drawing the graph with colors
on the vertices is simply an intuitive way to represent such a partition.
notation: The maximum degree of a vertex in a graph G is denoted δmax (G), or simply
by δmax when the graph of reference is evident from context.
Proof: This follows directly from the definitions of proper and independent. ♦
definition: A graph is said to be vertex k-colorable if it has a proper vertex k-coloring.
Example 6.1.1: The vertex-coloring shown in Figure 6.1.1 demonstrates that the graph
is vertex 4-colorable.
1
4
2 2
3 3
G 1 1
1
1
4
2
definition: The (vertex) chromatic number of a graph G, denoted χ(G), is the min-
imum number of different colors required for a proper vertex-coloring of G. A graph G is
(vertex) k-chromatic if χ(G) = k. A chromatic coloring of G is a proper coloring of G
that uses χ(G) colors.
Thus, χ(G) = k, if graph G is k-colorable but not (k − 1)-colorable.
Section 6.1 Vertex-Colorings 223
Example 6.1.1, continued: The 3-coloring in Figure 6.1.2 shows that the graph G in
Figure 6.1.1 is 3-colorable, which means that χ(G) ≤ 3. However, graph G contains three
mutually adjacent vertices and hence is not 2-colorable. Thus, G is 3-chromatic.
1
3
2 2
G 3 2
1
1
1
1
3
2
Example 6.1.2: The 4-coloring of the graph G shown in Figure 6.1.3 establishes that
χ(G) ≤ 4, and the K4 -subgraph (drawn in bold) shows that χ(G) ≥ 4. Hence, χ(G) = 4.
4 1
4
G 2
1
3
Application 6.1.3: University Course Scheduling Suppose that the vertices of a simple
graph G represent the courses at a university. In this model, two vertices are adjacent if the
classes they represent should not be offered at the same time (i.e., some students need to
take both classes or the same instructor is assigned to both). The chromatic number χ(G)
gives the minimum number of time periods needed to schedule all the classes so that no
time conflicts occur.
Example 6.1.3: When the sequential vertex-coloring algorithm is applied to the graph of
Figure 6.1.4, the result is a 4-coloring.
v1 v2 1 2
v3 3
v4 v5 v6 1 2 2
v7 1
v8 v9 v10 3 4 2
However, if the coloring assignment relaxes its obsessiveness with using the smallest possible
color number at vertex v4 and at vertex v7 , then a 3-coloring can be obtained for the same
graph, as shown in Figure 6.1.5.
1 2
3
2 2
2
3
3 1 1
Remark: Notice that if the vertices of the graph in Figure 6.1.5 are ordered so that v1 ,
v2 , v3 are the vertices with color 1, vertices v4 , v5 , v6 , v7 are the ones with color 2, and
v8 , v9 , v10 are the vertices with color 3, then the sequential coloring algorithm would have
produced that minimum coloring. More generally, for a given minimum coloring for a graph
G (obtained by whatever means), if the vertices of G are linearly ordered so that all the
vertices with color i precede all the vertices with color j whenever i < j, then, when G
along with this vertex ordering is supplied as input to the sequential-coloring algorithm,
the result is a minimum coloring. Thus, for any n-vertex graph, there is at least one vertex
ordering (of the n! orderings) for which Algorithm 6.1.1 will produce a minimum coloring.
Proof: The sequential coloring algorithm never uses more than δmax (G) + 1 colors, no mat-
ter how the vertices are ordered, since a vertex cannot have more than δmax (G) neighbors.
♦
Proposition 6.1.3: Let G be a graph that has k mutually adjacent vertices. Then χ(G) ≥
k.
Proof: Using fewer than k colors on graph G would result in a pair from the mutually
adjacent set of k vertices being assigned the same color. ♦
review from §1.3: A clique in a graph G is a maximal subset of VG whose vertices are
mutually adjacent. The clique number ω(G) of a graph G is the number of vertices in a
largest clique in G.
Corollary 6.1.4: Let G be a graph. Then χ(G) ≥ ω(G).
review from §1.3: The independence number α(G) of a graph G is the number of
vertices in an independent set in G of maximum cardinality.
Proposition 6.1.5: Let G be any graph. Then
|VG |
χ(G) ≥
α(G)
Proof: Since each color lclass mcontains at most α(G) vertices, the number of different color
|VG |
classes must be at least α(G) . ♦
Example 6.1.4: Consider the graph G = circ(7 : 1, 2), shown in Figure 6.1.6 (§1.1). If G
had an independent set of size 3 (i.e., if α(G) ≥ 3), then its edge-complement G would
contain a 3-cycle. However, G = circ(7 : 3) is a 7-cycle. Thus, α(G) = 2, and, consequently,
by Proposition 6.1.5,
|VG | 7
χ(G) ≥ = =4
α(G) 2
There is a proper 4-coloring with color classes {0, 3}, {1, 4}, {2, 5}, and {6}.
0
6 1
5 2
4 3
Proof: Whatever colors are used on the vertices of subgraph H in a minimum coloring of
graph G can also be used in a coloring of H by itself. ♦
review from §1.4: The join G + H of the graphs G and H is obtained from the graph
union G ∪ H by adding an edge between each vertex of G and each vertex of H.
Lemma 6.1.7: For any proper coloring of the join of two graphs, G + H, each color class
lies entirely in G or in H.
Proof: If a color class had vertices in both G and H, the coloring would not be proper,
since every vertex in G is adjacent to every vertex in H. ♦
Proposition 6.1.8: The join of graphs G and H has chromatic number
Proof: Lower Bound : For any proper coloring of the join G + H, no color used on the
subgraph G can be the same as a color used on the subgraph H, by Lemma 6.1.7. Since
χ(G) colors are required for subgraph G and χ(H) colors are required for subgraph H, it
follows that χ(G + H) ≥ χ(G) + χ(H).
Upper Bound : Using χ(G) colors to color the graph G, and χ(H) different colors to color
the graph H creates a proper (χ(G) + χ(H))-coloring of G + H, establishing the upper
bound. ♦
Graph G χ(G)
trivial graph 1
bipartite graph 2
nontrivial path graph Pn 2
nontrivial tree T 2
cube graph Qn 2
even cycle graph C2n 2
odd cycle graph C2n+1 3
even wheel W2n 3
odd wheel W2n+1 4
complete graph Kn n
228 Chapter 6 GRAPH COLORINGS
Proof: A 2-coloring is obtained by assigning one color to every vertex in one of the bipar-
tition parts and another color to every vertex in the other part. If G is not edgeless, then
χ(G) ≥ 2, by Proposition 6.1.3. ♦
Corollary 6.1.11: Path Graphs: χ(Pn ) = 2, for n ≥ 2.
♦
review from §1.4: The wheel graph Wn = K1 + Cn is called an odd wheel if n is odd,
and an even wheel if n is even.
Proof: Using the fact that W2m = C2m + K1 , Proposition 6.1.8 and Corollary 6.1.14 imply
that χ(W2m ) = χ(C2m ) + χ(K1 ) = 2 + 1 = 3. ♦
Proposition 6.1.17: Odd Wheels: χ(W2m+1 ) = 4, for all m ≥ 1.
Proof: Using the fact that the wheel graph W2m+1 is the join C2m+1 + K1 , Propositions
6.1.8 and 6.1.15 imply that χ(W2m+1 ) = χ(C2m+1 ) + χ(K1 ) = 3 + 1 = 4, for all m ≥ 1. ♦
Proposition 6.1.18: Complete Graphs: χ(Kn ) = n.
Proof: The second inequality in each statement follows from Proposition 6.1.6. The first
inequalities are left as an exercise. ♦
definition: An edge e in a graph G is (chromatically) critical if χ(G − e) = χ(G) − 1.
A vertex v in a graph G is (chromatically) critical if χ(G − v) = χ(G) − 1.
definition: A graph G is k-critical if G is connected, χ(G) = k, and every edge is critical.
The next two results will be used in Section 6.2.
Example 6.1.5:
1. The complete graph Kn is n-critical.
2. An odd cycle is 3-critical.
Proof: If c assigned different colors to the endpoints of edge e, then c would be a chromatic
coloring of G, contradicting the criticality of e. ♦
Example 6.1.6: The odd wheel W5 is 4-chromatic, by Proposition 6.1.17, and Figure 6.1.7
illustrates how removing either a spoke-edge or a rim-edge reduces the chromatic number
to 3. Thus, W5 is 4-critical. The argument that all odd wheels W2m+1 with m ≥ 1 are
4-critical is essentially the same (see Exercises).
3 1
1 3 2 2 3 2
2 1 1 1
Theorem 6.1.22: If G is a k-critical graph, then every vertex has degree greater than or
equal to k − 1.
Proof: By way of contradiction, suppose a vertex v had degree less than k − 1. Consider a
(k − 1)-coloring of the vertex-deletion subgraph G − v, which exists by Proposition 6.1.21.
Since vertex v has fewer than k − 1 neighbors, there is a color that is not assigned to any
neighbor of v. Assigning v that color gives a (k − 1)-coloring of G, which is a contradiction.
♦
230 Chapter 6 GRAPH COLORINGS
Obstructions to k-Chromaticity
For a relatively small graph G, it is usually easier to calculate a plausible upper bound
for χ(G) than a lower bound. Finding a configuration, called an obstruction, that forces
the number of colors to exceed some value is the general approach to establishing a lower
bound. The presence of either a subgraph or a graph property can serve as an obstruction.
definition: An obstruction to k-chromaticity (or k-obstruction) is a subgraph that
forces every graph that contains it to have chromatic number greater than k.
Example 6.1.7: The complete graph Kk+1 is an obstruction to k-chromaticity. (This is
simply a restatement of Proposition 6.1.3.)
Proof: If any edge is deleted from a (k + 1)-critical graph, then, by definition, the resulting
graph is not an obstruction to k-chromaticity. ♦
definition: A set {Gj } of chromatically (k + 1)-critical graphs is a complete set of
obstructions if every (k + 1)-chromatic graph contains at least one member of {Gj } as a
subgraph.
Example 6.1.8: The singleton set {K2 } is a complete set of obstructions to 1-chromaticity.
review from §1.2: [Characterization of bipartite graphs] A graph is bipartite if and only
if it contains no cycles of odd length.
Example 6.1.9: The bipartite-graph characterization above implies that the family
{C2j+1 | j = 1, 2, . . . } of all odd cycles is a complete set of 2-obstructions.
Example 6.1.10: Although the odd-wheel graphs W2m+1 with m ≥ 1 are 4-critical, they
do not form a complete set of 3-obstructions, since there are 4-chromatic graphs that contain
no such wheel. For example, the graph G in Figure 6.1.8 does not contain an odd wheel,
but its independence number is 2, which implies, by Proposition 6.1.5, that χ(G) ≥ 4. The
4-coloring shown below shows that χ(G) = 4.
2 3 2
G 1
3 4
Brooks’s Theorem
review from §3.4: The vertex-connectivity of a connected graph G, denoted κv (G),
is the minimum number of vertices, whose removal can either disconnect G or reduce it to
a 1-vertex graph.
review from §3.6:
• A block of a loopless graph is a maximal connected subgraph H such that no vertex
of H is a cut-vertex of H.
• A leaf block of a graph G is a block that contains exactly one cut-vertex of G.
Lemma 6.1.24: Let G be a non-complete, k-regular 2-connected graph with k ≥ 3. Then
G has a vertex x with two nonadjacent neighbors y and z such that G−{y, z} is a connected
graph.
Proof: Let w be any vertex in graph G. First suppose that subgraph G − w is 2-connected.
Since the graph G is regular and non-complete, there is a vertex z at distance 2 from vertex
w. If x is a vertex adjacent to both w and z, then vertices x, w, and z satisfy the conditions
of the assertion (with w playing the role of y).
If G − w is not 2-connected, then it has at least one cut-vertex. By Proposition 3.6.6, there
exist two leaf blocks B1 and B2 of G − w. Since graph G has no cut-vertices, it follows
that vertex w is adjacent to some vertex y1 in B1 that is not a cut-vertex of G − w and,
likewise, adjacent to some vertex y2 in B2 that is not a cut-vertex of G − w. By Corollary
3.6.5, vertex y1 is not adjacent to vertex y2 . Then w, y1 , and y2 satisfy the conditions of
the assertion (with w playing the role of x). ♦
Theorem 6.1.25: [Brooks, 1941] Let G be a non-complete, simple connected graph
with maximum vertex degree δmax (G) ≥ 3. Then χ(G) ≤ δmax (G).
Proof: In this proof of [Lo75], the sequential coloring algorithm enables us to make some
simplifying reductions. Suppose that |VG | = n.
Case 1. G is not regular.
First choose vertex vn to be any vertex of degree less than δmax (G). Next grow a spanning
tree (see §3.1) from vn , assigning indices in decreasing order. In this ordering of VG , every
vertex except vn has a higher-indexed neighbor along the tree path to vn . Hence, each
vertex has at most δmax (G) − 1 lower-index neighbors. It follows that the sequential coloring
algorithm uses at most δmax (G) colors.
Case 2. G is regular, and G has a cut-vertex x.
Let C1 , . . . , Cm be the components of the vertex-deletion subgraph G − x, and let Gi be
the subgraph of G induced on the vertex-set VCi ∪ {x}, i = 1, . . . , m. Then the degree of
vertex x in each subgraph Gi is clearly less than δmax (G). By Case 1, each subgraph Gi
has a proper vertex-coloring with δmax (G) colors. By permuting the names of the colors in
each such subgraph so that vertex x is always assigned color 1, one can construct a proper
coloring of G with δmax (G) colors.
Case 3. G is regular and 2-connected.
By Lemma 6.1.24, graph G has a vertex, which we call vn , with two nonadjacent neighbors,
which we call v1 and v2 , such that G − {v1 , v2 } is connected. Grow a spanning tree from
vn in G − {v1 , v2 }, assigning indices in decreasing order. As in Case 1, each vertex except
vn has at most δmax (G) − 1 lower-indexed neighbors. It follows that the sequential coloring
algorithm uses at most δmax (G) colors on all vertices except vn . Moreover, the sequential
coloring algorithm assigns the same colors to v1 and v2 and at most k − 2 colors on the
other k − 2 neighbors of vn . Thus, one of the δmax (G) colors is available for vn . ♦
232 Chapter 6 GRAPH COLORINGS
Example 6.1.11: Descending degree order for the graph of Figure 6.1.9 (left) is
v1 , v3 , v9 , v2 , v5 , v4 , v6 , v7 , v8 , v10
v1 v2 1 3
v3 2
v4 v6
v5 2 2 3
v7 1
v8 v9 v10 3 1 3
Typically, the chromatic number of such a graph is greater than k, which means that it is
impossible to avoid conflicts (i.e., assigning the same timeslot to certain pairs of courses that
should have been scheduled in different timeslots). A more realistic objective under such
circumstances is to schedule the courses so that the total number of conflicts is minimized.
Moreover, since some conflicts have greater impact than others, the number of students
that preregistered for a given pair of courses is assigned as a weight to the corresponding
edge. A further refinement of the model may adjust these edge-weights according to other
factors not related to numbers of students. For instance, an edge corresponding to a pair of
courses that are both required for graduation by some students or are to be taught by the
same instructor should be assigned a large enough positive integer so as to preclude their
being assigned to the same timeslot.
Suppose that w(e) denotes the positive integer indicating the deleterious impact of schedul-
ing the two courses corresponding to the endpoints of edge e in the same timeslot. For a
given k-coloring f (not necessarily proper ), let zf be the total edge-weight of those edges
whose endpoints are assigned the same color. Then the objective is to find a k-coloring f
for which zf is as small as possible.
[KiYe92] develops a number of heuristics based on coloring the “most difficult” vertices as
early as possible, where “most difficult” means having the greatest impact on the remaining
vertices to be colored.
[WeYe14] extends the graph model to 2-component edge-weights in order to include a sec-
ondary objective – creating compact schedules.
Larry Tony
Susan Slim
6.1.2 Calculate the number of different radio frequencies needed to avoid interference among
the stations in the following configuration in which two stations interfere if they are within
100 miles of each other.
B C D E F G
A B
A 55 110 108 60 150 88
B 87 142 133 98 139 C
C 77 91 85 93 G
D 75 114 82
E 107 41 D
F 123
F
E
234 Chapter 6 GRAPH COLORINGS
(a) (b)
(c) (d)
(e) (f)
1 3 5 7
2 4 6 8
6.1.5 Give orderings to the vertices of the graphs of Figure 6.1.7 so that the sequential
vertex-coloring algorithm will yield 3-colorings.
6.1.6 Prove that the sequential vertex-coloring algorithm always colors a complete bipartite
graph with two colors, regardless of the order of its vertices in the input list.
6.1.7 Prove that adding an edge to a graph increases its chromatic number by at most one.
6.1.8 Prove that deleting a vertex from a graph decreases the chromatic number by at most
one.
Section 6.1 Vertex-Colorings 235
6.1.9 Apply the sequential vertex-coloring algorithm to this graph, with vertices in order
of ascending index.
1 3 5 7
2 4 6 8
(b) Label the vertices of the following 3-chromatic graph so that the sequential vertex-
coloring algorithm uses 5 colors.
6.1.13 Give an inductive argument, based on the strategy used in Exercise 6.1.26, to show
that the number of colors used by the sequential vertex-coloring algorithm can be arbitrarily
larger than the chromatic number of a graph.
6.1.14 Prove that the wheel W4 is not chromatically criticial.
6.1.18 Prove that the join of two chromatically critical graphs is a chromatically critical
graph.
6.1.19 Calculate the independence numbers of the graphs in Exercise 6.1.3.
6.1.20 Describe how to construct a connected graph G with independence number α(G) = a
and chromatic number χ(G) = c, for arbitrary values a ≥ 1 and c ≥ 2.
236 Chapter 6 GRAPH COLORINGS
definition: A graph G is perfect if for every induced subgraph (§1.3) H in G, the chromatic
number χ(H) equals the clique number ω(H).
(a) 10 10 (b) 25 25
5 5 25 25
2 2 25 25 1 1
1 31 3 5 5
1 1
25 25
6 6 25 25
6.1.29 [Computer Project] Use the ideas discussed in the last subsection of this section to
design and write a computer program to construct a vertex k-coloring of a weighted graph
that tries to minimize the total weight of the edges whose endpoints receive the same color.
Test your program on various edge-weighted graphs, including the ones in Exercise 6.1.28,
and compare its vertex-colorings to the ones you obtained by hand.
6.1.30 Application 6.1.6: Examination Scheduling Suppose that four final exams are
to be scheduled in three timeslots. It would be ideal if no two of the exams were assigned
the same timeslot, but that would require four timeslots. The table shown below assigns
a number to each exam pair, indicating the penalty for scheduling those two exams in the
same timeslot. Find an examination schedule that minimizes the total penalty.
e1 e2 e3 e4
e1 − 4 16 4
e2
4 − 4 16
e3 1 16 − 4
e4 4 1 4 −
Section 6.2 Local Recolorings 237
Example 6.2.1: Consider the proper 3-coloring shown in Figure 6.2.1. Each of the vertices
u, v, y, and z is locally recolorable. For example, to show vertex u is locally recolorable,
let c0 (u) = 1 and c0 (w) = c0 (x) = 2. Vertex v can be locally recolored by simply letting
c0 (v) = 1. However, neither w nor x is locally recolorable. For example, since v and x are
not adjacent to w, their colors do not change in a local recoloring of w, and hence, the color
of u cannot change either. Therefore, the color of w cannot be changed to 2. Similarly, the
color of z cannot change as it is adjacent to vertices not adjacent to w with both colors 1
and 2. Therefore, the color of w cannot be changed to 3. Thus, w is not locally recolorable.
2 2
(a) (b)
u u
1 1
v 3
1 x v 3
1 x
w w
1 3 2 3
y z y z
Example 6.2.2: Each of the six vertices is locally recolorable with respect to the proper
3-coloring shown in Figure 6.2.2. Vertex w can be locally recolored by letting c0 (w) = 3 and
c0 (z) = 2. The local recolorability of each of the other five vertices is left as an exercise.
2
u
1
v 3
1 x
w
1 3
y z
Since every neighbor of v with color 2 was changed to color 1, v is not adjacent to any other
vertex assigned color 2 by c0 . Also, since v is the only vertex that was assigned color 1 by
c, all vertices assigned color 1 by c0 are nonadjacent. Therefore, c0 is a proper k-coloring. It
is a local recoloring of v, since the color assigned to v has changed and only vertices in its
closed neighborhood have changed. ♦
Robust Colorings
definition: A proper k-coloring c of a graph G is robust if every vertex of G is locally
recolorable with respect to c.
Example 6.2.2, continued: The proper 3-coloring in Figure 6.2.1 is not robust while the
one in Figure 6.2.2 is.
definition: A graph G is k-robust if it has a robust k-coloring, and the robust chro-
matic number of G, denoted χR (G), is the smallest integer k such that G is k-robust.
The following theorem shows that graphs fall into one of two categories in terms of
robust coloring.
Theorem 6.2.2: For any graph G, either χR (G) = χ(G) or χR (G) = χ(G) + 1.
Proof: Since every robust k-coloring is a proper coloring, χR (G) ≥ χ(G), for any graph G.
Also, a proper χ(G)-coloring of a graph G may be viewed as a proper (χ(G) + 1)-coloring
having a color that is not assigned to any vertex. That unused color can then be used to
locally recolor any vertex. Therefore, χR (G) ≤ χ(G) + 1. ♦
definition: A graph G is χ-robust if χR (G) = χ(G).
Section 6.2 Local Recolorings 239
Proof:
1. For a proper n-coloring of Kn , any vertex v can be locally recolored by interchanging
the colors assigned to v and any one of its neighbors. Therefore, χR (Kn ) = n = χ(Kn ).
2. Let Cn be an odd cycle with vertices v1 , v2 , v3 , . . . , vn , where vi is adjacent to vi+1 , for
i = 1, 2, . . . , n − 1 and vn is adjacent to v1 . Without loss of generality, we show that
v1 is locally recolorable. If c(vn ) = c(v2 ), then v1 can be locally recolored by assigning
it the color not in {c(v1 ), c(v2 )}. If c(vn ) 6= c(v2 ), then v1 can be locally recolored by
assigning it the color c(v2 ) and assigning v2 the color not in {c(v2 ), c(v3 )}. Therefore,
χR (Cn ) = 3 = χ(Cn ).
♦
Remark: Note that K1 is not χ-robust, since its chromatic number is 1, but a second color
is needed to locally recolor the vertex.
Lemma 6.2.4: Let e be a critical edge of a graph G. If c is a chromatic coloring of G − e,
then neither endpoint of e is locally recolorable with respect to c.
Proof: Let x and y be the endpoints of edge e. Suppose c0 is a local recoloring of x with
respect to c. Since c and c0 are chromatic colorings of G − e, c(x) = c(y) and c0 (x) = c0 (y)
by Proposition 6.1.20. However, any local recoloring of x with respect to c would change the
color of x but not y, since x and y are not adjacent. Thus, c0 (x) 6= c0 (y), a contradiction. ♦
Proposition 6.2.5: The following graphs are not χ-robust.
1. Every complete graph minus an edge, Kn − e, for n ≥ 2.
2. Every bipartite graph with a vertex of degree greater than 1.
Proof:
1. This follows from Lemma 6.2.4, since Kn is n-critical.
2. Suppose v is a vertex in a bipartite graph G with neighbors u and w, and let c be a
proper 2-coloring of G. Since u and w are both adjacent to v, c(u) = c(w). If c0 were
a local recoloring of u with respect to c, then c0 (u) 6= c(u), and c0 (w) = c(w) = c(u),
since w is not adjacent to u. Therefore, c0 (v) must be equal to either c0 (u) or c0 (w),
and so c0 is not a proper 2-coloring of G.
♦
Proposition 6.2.6: Let c be a proper k-coloring of a graph G 6= K1 . If v is a vertex in
G such that every vertex in the open neighborhood N (v) has degree less than k, then v is
locally recolorable with respect to c.
Proof: Assume, without loss of generality, that c(v) 6= 1. Let N be the set of neighbors of
v with color 1. We create a local recoloring of v with respect to c by changing the color of
v to 1 and then for each vertex w in N , changing its color from 1 to a color not assigned to
any of its neighbors, which is possible since deg(w) < k. ♦
240 Chapter 6 GRAPH COLORINGS
• If δmax (G) = 2, then G is either an odd cycle or is bipartite. By Theorem 6.2.2 and
Propositions 6.2.3 and 6.2.5,
χR (G) = 3 = δmax (G) + 1
Robust Critical
In Section 6.1, we examined the impact of deleting an edge or a vertex on the chromatic
number of a graph. Here we examine the impact on the robust chromatic number.
By Proposition 6.1.21, a k-critical connected graph is one for which every vertex and
every edge is k-critical. Although the removal of a vertex from a graph never increases the
robust chromatic number, the removal of an edge can, as shown later in this section.
notation: If c is a k-coloring of a graph G and H is a subgraph of G, then c|H denotes
the restriction of c to H.
Lemma 6.2.9: For any graph G and any vertex v of G, if c is a robust k-coloring of G,
then c|G−v is a robust k-coloring of G − v.
Proof: Let w be any vertex in G − v. If c0 is a local recoloring of w with respect to c, then
c0 |G−v is a local recoloring of w with respect to c|G−v . ♦
Theorem 6.2.10: For any graph G and any vertex v of G, χR (G − v) = χR (G) or χR (G −
v) = χR (G) − 1.
Proof: By Lemma 6.2.9, χR (G − v) ≤ χR (G). To show χR (G − v) ≥ χR (G) − 1, we show
that G has a robust (k + 1)-coloring, where k = χR (G − v).
Let c be a robust k-coloring of G − v. This can be extended to the following proper (k + 1)-
coloring d of G.
k + 1 , if x = v
d(x) =
c(x) , otherwise
To show d is robust, let w be any vertex in G. There are two cases to consider.
Case 1: If w is in G − v, then there exists a local recoloring c0 of w with respect to c. This
can be extended to the following local recoloring d0 of w with respect to d.
k + 1 , if x = v
d0 (x) =
c0 (x) , otherwise
Section 6.2 Local Recolorings 241
The following example shows that deleting an edge can increase the robust chromatic
number.
Example 6.2.3: Consider the graph Γ ∼
= K2 × K3 , shown in Figure 6.2.3.
• Up to symmetry, there is only one proper 3-coloring of Γ. To show Γ is 3-robust, it
suffices, due to the symmetry of Γ and its proper 3-coloring, to show that any one
vertex is locally recolorable. Figure 6.2.3 shows a local recoloring of the white vertex,
and therefore, χR (Γ) = 3.
• The subgraph Γ−e, shown in Figure 6.2.4, has two proper 3-colorings, up to symmetry.
For each of those colorings, the vertex shown in white cannot be locally recolored with
respect to the coloring, and therefore, χR (Γ − e) = 4.
1 1
e e
3 2
1 2 3 1
2 3 2 3
1 1
3 3
1 2 1 2
2 3 2 1
χR (G) − 1 ≤ χR (G − e) ≤ χR (G) + 1.
To establish the left-hand inequality, there are two cases to consider, by Theorem 6.2.2.
Case 1: χR (G) = χ(G).
χR (G) − 1 = χ(G) − 1
≤ χ(G − e), by Proposition 6.1.6
≤ χR (G − e), by Theorem 6.2.2
Case 2: χR (G) = χ(G) + 1. There are two subcases to consider by Proposition 6.1.6.
χR (G) − 1 = χ(G)
= χ(G − e)
≤ χR (G − e), by Theorem 6.2.2
Robust Colorings of G + H
review from 6.1
• Proposition 6.1.1. A k-coloring of a graph is a proper coloring if and only if each
color class is an independent set of vertices.
• Lemma 6.1.7. For any proper coloring of the join of two graphs, G + H, each color
class lies entirely in G or in H.
• Proposition 6.1.8. χ(G + H) = χ(G) + χ(H).
Section 6.2 Local Recolorings 243
Lemma 6.1.7 is the key idea in the proof of Proposition 6.1.8 and is also the central idea
for writing a similar formula for the robust chromatic number of the join of two graphs. If
c is a proper coloring of G + H and c0 is a local recoloring of a vertex v in G with respect
to c, then the lemma applies to c0 , since c0 is a proper-coloring of G + H.
Lemma 6.2.13: Let c be a proper coloring of G + H, and let c0 be a local recoloring of
a vertex v ∈ VG with respect to c. If cj ⊆ VH and c0j ⊆ VG , then c0j ⊆ N [v], the closed
neighborhood of v.
Proof: Suppose x ∈ c0j , i.e., c0 (x) = j. Since x ∈ VG and cj ⊆ VH , c(x) 6= j. Thus, the local
recoloring c0 changed the color of x, and hence, x ∈ N [v]. ♦
Proposition 6.2.14: Suppose c is a chromatic coloring of the join G + H of graphs G and
H, with G 6= K1 . A vertex v ∈ VG is locally recolorable with respect to c if and only if it is
locally recolorable with respect to c|G , the restriction of c to G.
Proof: A local recoloring of v with respect to c|G extends to a local recoloring with respect
to c, by keeping the color assignments of vertices in H fixed.
Conversely, suppose v is locally recolorable with respect to c, and assume that c assigns the
colors 1, 2, . . . , k to vertices in G and the colors k + 1, k + 2, . . . , k + m to vertices in H,
where k = χ(G) and m = χ(H).
If v is the only vertex in its color class with respect to c|G , then by Proposition 6.2.1, it is
locally recolorable with respect to c|G .
Assume v is not the only vertex in its color class with respect to c|G . Among all local
recolorings of v with respect to c, let c0 be one with a minimum number of vertices in H
assigned colors from {1, 2, . . . , k}. If this minimum number is 0, then c0 assigns the colors
1, 2, . . . , k to vertices in G and the other m colors to vertices in H, and therefore, c0 |G is a
local recoloring of v with respect to c|G .
To show that this minimum number is, in fact, 0, suppose, by way of contradiction, a color
i, 1 ≤ i ≤ k, is assigned by c0 to at least one vertex in H. By Lemma 6.1.7, c0i ⊆ VH , and
so no vertex in G is assigned the color i by c0 . Since χ(G) = k, c0 must assign a color j,
k + 1 ≤ j ≤ k + m to at least one vertex in G. Consider the following (k + m)-coloring c00
of G + H, which changes the vertices in c0i to color j and those in c0j to color i.
j,
if c0 (x) = i
00
c (x) = i, if c0 (x) = j
0
c (x), otherwise
Showing that c00 is a local recoloring of v with respect to c will complete the proof, since c00
assigns fewer vertices in H colors from {1, 2, . . . , k}, thereby contradicting the minimality
of c0 .
By Proposition 6.1.1, c00 is a proper coloring, since switching the colors of two color classes
does not affect their independence. It remains to show: (i) c00 (v) 6= c(v); and
(ii) for all x ∈ VG − N [v], c00 (x) = c(x).
(i) By the definition of c00 , there are three cases to consider: c0 (v) = i, c0 (v) = j, or
neither.
244 Chapter 6 GRAPH COLORINGS
♦
Theorem 6.2.19: Suppose H = K1 or H is χ-robust. For all G 6= K1 or K2 , if G + H is
robust-critical, then G is robust-critical.
Case 2: H is χ-robust.
Therefore, G is robust-critical. ♦
Lemma 6.2.20: If a graph G is χ-robust and robust-critical, then for any vertex in G,
G − v is χ-robust.
χR (G − v) = χR (G) − 1 (G is robust-critical)
= χ(G) − 1 (G is χ-robust)
≤ χ(G − v) (Proposition 6.1.19)
χR ((G + H) − v) = χR (G)
= χR (G + H) − 1 (by Corollary 6.2.18)
246 Chapter 6 GRAPH COLORINGS
If v is a vertex in G, then
Case 2: H = K2
If v is a vertex in H, then
χR ((G + H) − v) = χR (G + (H − v))
= χR (G + K1 )
= χR (G) + 1 (by Corollary 6.2.18)
= χR (G) + χR (H) − 1 (by Proposition 6.2.3)
= χR (G + H) − 1 (by Corollary 6.2.16)
If v is a vertex in G, then
χR ((G + H) − v) = χR ((G − v) + H)
= χR (G − v) + 2 (by Corollary 6.2.16)
= χR (G) − 1 + 2 (since G is robust-critical)
= χR (G + H) − 1 (by Corollary 6.2.16)
Case 3: H is robust-critical.
Without loss of generality, we can assume v is in G, since both G and H are robust-
critical. There are three cases to consider.
Case 3a: Neither G nor H is χ-robust.
χR ((G + H) − v) = χR ((G − v) + H)
= χR (G − v) + χR (H) − 1 (by Corollary 6.2.16)
= χR (G) + χR (H) − 2 (since G is robust-critical)
= χR (G + H) − 1 (by Corollary 6.2.16)
χR ((G + H) − v) = χR ((G − v) + H)
= χR (G − v) + χR (H) (by Corollary 6.2.16)
= χR (G) − 1 + χR (H) (since G is robust-critical)
= χR (G + H) − 1 (by Corollary 6.2.16)
♦
Section 6.2 Local Recolorings 247
6.2.2 Determine if the given graph is χ-robust. Justify your answer by either giving a robust
3-coloring, or showing that no such coloring exists.
(a) (b)
(c) (d)
(e) (f)
6.3 MAP-COLORINGS
Francis Guthrie, a South African mathematician, found that exactly four colors were
needed to color a map of the English counties, so that no two counties that shared a border
received the same color. In 1852, he proposed that four colors sufficed for any map.
For every closed surface S, there is a minimum number chr(S) of colors sufficient so
that every map on S can be colored properly with chr(S) colors, which means that no color
meets itself across an edge. The methods needed to establish a narrow range of possibilities
for that minimum sufficient number are elementary enough to be presented in this book.
Tightening the range to a single value was the substance of two of the outstanding math-
ematical problems solved in the 20th century, the Four-Color map problem for the plane
(and sphere) and the Heawood map problem for all the other closed surfaces. In this section,
the possibilities for chr(S) are narrowed down to four and five.
terminology: A region is said to meet itself on edge e if edge e occurs twice in the
region’s boundary walk. It is said to meet itself on vertex v if vertex v occurs more than
once in the region’s boundary walk.
Remark: A map cannot be properly colored if a region meets itself.
Section 6.3 Map-Colorings 249
Example 6.3.2: The map in Figure 6.3.2 has no proper coloring, since region f2 meets
itself on an edge (which cannot occur in a geographic map). Observe also that region f1
meets region f4 in two distinct edges.
f1 f2
f5 f3
f4
Long ago, it was realized that a coloring problem for the regions of a map on any closed
surface can be converted by Poincaré duality (see §4.5) into a vertex-coloring problem for
the dual graph. The dual of the map in Figure 6.3.2 is the graph in Figure 6.3.3, with dual
vertex vj corresponding to primal face fj , for j = 1, . . . , 5. Thus, the self-adjacent region f2
dualizes to the self-adjacent vertex v2 .
v1
v2
v5
v3
v4
Figure 6.3.3 The dual graph for the map of Figure 9.2.2.
Proposition 6.3.1: The chromatic number of a map equals the chromatic number of its
dual graph. ♦
Geographic Maps
When the surface is the plane, sometimes a collection of contiguous regions are colored,
and the other regions are ignored.
Application 6.3.1: Political Cartography In the cartography of political maps, various
interesting configurations arise. For instance, France and Spain meet on two distinct borders,
one from Andorra to the Atlantic Ocean, the other from Andorra to the Mediterranean Sea,
as represented in Figure 6.3.4. Similar configurations occur where Switzerland meets Austria
twice around Liechtenstein. Moreover, India and China have a triple adjacency around Nepal
and Bhutan. Multiple adjacency of regions does not affect the rules for coloring a map.
Atlantic Fr
An
Sp Mediterranean
Po
Remark: Two faces that meet at a vertex but not along an edge may have the same color
in a proper map coloring. Thus, a checkerboard configuration such as the Four Corners,
USA, represention in Figure 6.3.5, may be properly colored with only two colors.
UT CO
AZ NM
Example 6.3.3: The chromatic number of the map of the countries of South America is
equal to 4. In the dual graph, which appears in Figure 6.3.6, there is a 5-wheel with Bolivia
as the hub and a 3-wheel with Paraguay as hub. Thus, by Proposition 6.1.17, South America
requires at least four colors. We leave it as an exercise to give a 4-coloring of South America
(see Exercises).
Gu Su FG Ar: Argentina
Ar: Argentina Gu:Gu: Guyana
Guyana
Ve Ur Bo: Bolivia
Bo: Bolivia Pa:Pa: Paraguay
Paraguay
Co Br: Brazil
Br: Brazil Pe:Pe:
Peru Peru
Br Pa Ar Ch: Chile
Ch: Chile Su:Su: Surinam
Surinam
Co: Colombia
Co: Columbia Ur: Ur: Uruguay
Uruguay
Ec Bo Ec: Ecuador
Ec: Ecuador Ve:Ve: Venezuela
Venezuela
Pe Ch FG: French
FG: French Guyana
Guyana
Example 6.3.4: The chromatic number of the map of the United States of America is
four. The graph of the USA contains three odd wheels, as illustrated in Figure 6.3.7 below.
West Virginia and Nevada are each encircled by five neighbors, and Kentucky is encircled
by seven neighbors.
PA OR IN
IL
OH
OH MD CA ID
WV NV
KY
MO WV
KY VA AZ UT
TN VA
Figure 6.3.7 The three odd wheels in the map of the USA.
Remark: Utah meets five other states across an edge in the map, but these five do not
quite encircle Utah, since Arizona and Colorado do not meet at an edge, even though they
do meet at Four Corners. Thus, the Utah configuration is the join P5 + K1 , and not the
wheel W5 .
Section 6.3 Map-Colorings 251
1
1
4
2
The next theorem gives an upper bound on the average degree δavg (G) of a graph G
imbedded in the sphere.
Theorem 6.3.2: For any connected simple planar graph G, with at least three vertices,
δavg (G) < 6.
Proof: Starting with an arbitrary planar graph G, edges and vertices can be removed until
a chromatically critical subgraph is obtained having the same chromatic number as G.
Therefore, we may assume, without loss of generality that G is chromatically critical. We
may also assume G is connected by the remark in Section §6.1. It suffices to prove that G
is 5-colorable.
252 Chapter 6 GRAPH COLORINGS
2 w 5 4 w 5
2
4 2 2 2
4 4
2 3 4 4 3 4
2 4 2 4 2 4 2 2 4 2
Case 2. Suppose that Kempe chain K contains both the 4-neighbor and the 2-neighbor of
vertex w. Then there is a path in Kempe chain K from the 2-neighbor to the 4-neighbor,
as illustrated with a bold broken path on the left in Figure 6.3.10. Appending the edges
between vertex w and both these neighbors extends that path to a cycle, as depicted on the
right in Figure 6.3.10. By the Jordan Curve Theorem (§4.1), this cycle separates the plane.
1 1
2 w 5 2 w 5
4 2 4 2
4 4
2 3 4 2 3 4
2 4 2 4 2 2 4 2 4 2
Since the 3-neighbor and 5-neighbor of w are on different sides of the separation, it follows
that the Kempe 3-5 chain L containing the 5-neighbor cannot also contain the 3-neighbor.
Thus, it is possible to swap colors in Kempe chain L and assign color 5 to vertex w, thereby
completing a 5-coloring of G. ♦
Section 6.3 Map-Colorings 253
Theorem 6.3.4: [Appel and Haken, 1976] Every planar graph is 4-colorable. ♦
Remark: The proof by Appel and Haken [ApHa76] of the Four Color Theorem is highly
specialized, intricate, and long. Following an approach initiated by Heesch, Appel and Haken
first reduced the seemingly infinite problem of considering every planar graph to checking
a finite, unavoidable set of (over 1900) reducible configurations. Over 1200 hours of com-
puter time were used. Eventually, a more concise proof was derived by Robertson, Sanders,
Seymour, and Thomas [RoSaSeTh97].
6.3.2 Draw a minimum proper coloring of the map of Exercise 6.2.1, including the exterior
region, and prove it is a minimum coloring.
6.3.3 Draw a minimum proper coloring of the following map, excluding the exterior region,
and prove it is a minimum coloring.
6.3.4 Draw a minimum proper coloring of the map of Exercise 6.2.3, including the exterior
region, and prove it is a minimum coloring.
6.3.5 Is it possible for a map in the plane to be 4-chromatic when the exterior region is
included, but 3-chromatic when it is excluded? Explain your answer.
6.3.6 Draw the dual graph of the map of Exercise 6.2.3, and give it a minimum vertex-
coloring.
6.3.7 Draw a minimum proper coloring of the following map, excluding the exterior region,
and prove it is a minimum coloring.
254 Chapter 6 GRAPH COLORINGS
1
4
2 2
3 3
G 1 1
1
1
4
2
v3 2
v4 v5 v6 2 2 3
v7 1
v8 v9 v10 3 1 3
review from §4.1: The Riemann stereographic projection provides a correspondence be-
tween the plane and the sphere.
6.3.10 Convert the Four Corners map to a sphere map, by redrawing it so that the “infinite
lines” all meet at the restored infinity point.
UT CO
AZ NM
6.3.11 Give a 4-coloring of the map (see Figure 6.3.6) of the countries of South America,
or of the dual graph.
6.3.12 Consult a map of Europe, if necessary, and draw a map representing the following
countries: France, Belgium, Netherlands, Luxembourg, Germany, and Switzerland. What is
the chromatic number of this map?
6.3.13 Calculate the chromatic number of the map of the countries of North America.
6.3.14 Calculate the chromatic number of the map of the countries of Africa.
6.3.15 Calculate the chromatic number of the map of the countries of Asia.
Section 6.4 Edge-Colorings 255
6.3.16 Calculate the chromatic number of the following map on the torus.
a
b b
6.3.17 Calculate the chromatic number of the following map on the torus.
a
b b
6.4 EDGE-COLORINGS
For certain problems, the most natural graph model for a problem might involve edge-
colorings instead of vertex-colorings. Analogous to vertex-colorings, an edge-coloring parti-
tions the edge-set of a graph into color classes. Although the line-graph transformation con-
verts an edge-coloring problem into a vertex-coloring problem, the theory of edge-colorings
has some special aspects.
5
1
3 1 2
4
2
5
Figure 6.4.2 A proper edge 4-coloring of the graph from Figure 6.4.1.
s1 s2 s3 s4
Figure 6.4.3 Representing a scheduling problem by a bipartite graph.
Section 6.4 Edge-Colorings 257
t1 t2 t3 t4
09:00 - 09:50
10:00 - 10:50
11:00 - 11:50
01:00 - 01:50
02:00 - 02:50
s1 s2 s3 s4
Figure 6.4.4 A minimum proper edge-coloring for the graph of Figure 6.4.3.
The next three results help in establishing a lower bound for the edge-chromatic number.
They are immediate consequences of the definitions.
Proposition 6.4.1: Let G be a graph that has k mutually adjacent edges. Then χ0 (G) ≥ k.
♦
Example 6.4.2: The edge 5-coloring of the graph G in Figure 6.4.5 establishes that
χ0 (G) ≤ 5, and the existence of a 5-valent vertex shows that χ0 (G) ≥ 5, by Corollary
6.4.2. Hence, χ0 (G) = 5.
1
4
5 3 2
G 3 3
4 2 4
1 5
Matchings
A matching is the edge analogue of an independent vertex-set. It can be used to obtain
another lower bound for the edge-chromatic number.
definition: A matching (or independent set of edges) of a graph G is a subset of
edges of G that are mutually nonadjacent.
definition: A maximum matching in a graph is a matching with the maximum number
of edges.
notation: The cardinality of a maximum matching in a graph G is denoted α0 (G), analo-
gous to the independence number α(G) for the vertices.
Remark: It follows immediately from the definition that each color class of a proper edge-
coloring of a graph G is a matching of G. The following proposition provides a lower bound
on the edge-chromatic number that is based on the size of a maximum matching.
l m
Proposition 6.4.4: For any graph G, χ0 (G) ≥ α|E G|
0 (G) . ♦ (Exercises)
in §6.1. The first of the following six results are analogous to their companion results for
vertex-chromatic number and are left as exercises.
Proposition 6.4.5: A graph G has χ0 (G) = 1 if and only if δmax (G) = 1. ♦ (Exercises)
4 0
1
0 2
3 1
4 3
2
Proof: Upper bound : Draw the complete graph Kn so that its vertices are the vertices of
a regular n-gon, labeled 0, 1, 2, . . . , n − 1 clockwise around the n-gon (illustrated in Figure
6.4.7 for n = 7). Observe that the edge joining vertices 0 and 1 along with all the other
edges whose endpoints sum to 1 (mod n) (depicted as bold edges in Figure 6.4.7) form a
matching and so they can all be assigned the color 1.
0
6 1
5 2
4 3
Similarly, the edges whose endpoints sum to 3 (mod n) form a matching (dashed edges in
Figure 6.4.7) and can be assigned the color 3. In all, there are n sets S1 , S2 , . . . , Sn , where Sk
is the matching consisting of those edges whose endpoints sum to k (mod n). Thus, if each
of the edges in set Sk is assigned color k, then a proper edge n-coloring of Kn is obtained.
n−1
Lower bound : The size of a maximum matching in Kn with n odd is 2 . Since Kn contains
n
n(n−1)
2 = 2 edges, Proposition 6.4.4 implies that χ0 (Kn ) ≥ n. ♦
260 Chapter 6 GRAPH COLORINGS
Proof: The even complete graph Kn is the join of the odd complete graph Kn−1 with a
single vertex x. The proof of Proposition 6.4.12 constructs a proper edge n-coloring of Kn−1
in which each edge-color is missing at exactly one vertex. Thus, the edge-coloring of Kn−1
can be extended to an edge-coloring of Kn by assigning the missing color at each vertex v
in Kn−1 to the edge joining vertex v to vertex x (see Figure 6.4.8 below).
♦
1 3
v
4
6
x
2
7
5
Table 6.4.1 below summarizes the edge-chromatic numbers of the common graph families
considered here, and also of the bipartite graphs, which we discuss later in this section.
Graph G χ0 (G)
graph G with δmax (G) = 1 1
path graph Pn , n ≥ 3 2
even cycle graph C2n 2
odd cycle graph C2n+1 3
bipartite graph G δmax (G)
tree T δmax (T )
cube graph Qn n
wheel Wn , n ≥ 3 n
even complete graph K2n n–1
odd complete graph K2n+1 n
Chromatic Incidence
The next few definitions pertain to all edge-colorings, not just to proper ones.
definition: For a given edge-coloring of a graph, color i is an incident edge-color on
vertex v if some edge incident on v has been assigned color i. Otherwise, color i is an absent
edge-color at vertex v.
definition: The chromatic incidence at v of a given edge-coloring f is the number of
different edge-colors incident on vertex v. It is denoted ecrv (f ).
Section 6.4 Edge-Colorings 261
Example 6.4.4: For the edge-colorings shown in Figure 6.4.9 below, the three different
edge-colors are represented by dashed, regular, and bold edges, instead of color numbers.
This is to avoid confusion with the chromatic incidence numbers on the vertices. For the
edge-coloring f on the left, the total chromatic incidence is 13, and for the edge-coloring g
on the right, the total chromatic incidence is 15.
2 2 1 3 3 1
3 3 2 3 3 2
ecr (f ) = 13 ecr (g) = 15
ecrv (f ) ≤ deg(v) ♦
Lemma 6.4.18: Let G be a connected graph with at least two edges. If G is not an odd-
cycle graph, then G has an edge 2-coloring such that both colors are incident on every
vertex of degree at least 2.
Proof: Case 1: G is an even cycle. The edge 2-coloring obtained by assigning two edge-
colors that alternate around the cycle meets the requirement.
Case 2: G is Eulerian but not a cycle. By Theorem 3.2.11, every vertex in G has even degree
and since G is not a cycle, it has a vertex v with degree at least 4. Consider an Eulerian
tour that starts (and ends) at v. Assign color 1 to the edges that occur as odd terms in the
edge sequence of the tour, and assign color 2 to the even-term edges. Then the two colors
are incident at least once on each internal vertex of the tour, since each such vertex is an
endpoint of both an odd-term edge and an even-term edge. Moreover, since the start vertex
has degree at least 4, it also occurs on the tour as an internal vertex. Thus, both colors are
incident on every vertex.
w
G G*
2 3 3
3 4
4
1
4 2
Lemma 6.4.19: Let f be an edge k-coloring of a graph G with the largest possible total
chromatic incidence. Let v be a vertex on which some color i is incident at least twice and
on which some color j is not incident at all. Then the Kempe i-j edge-chain K containing
vertex v is an odd cycle.
Proof: By Lemma 6.4.18, if the Kempe i-j edge-chain K incident on vertex v were not
an odd cycle, then we could rearrange edge colors i and j within K so that the chromatic
incidence of the coloring of K would be 2 at every vertex. The edge-coloring for G thereby
obtained would have higher chromatic incidence at vertex v and at-least-equal chromatic
incidence at every other vertex of G. This would contradict the premise that edge-coloring
f has the maximum possible total chromatic incidence. ♦
Theorem 6.4.20: [König, 1916] Let G be a bipartite graph. Then χ0 (G) = δmax (G).
Proof: Let ∆ = δmax (G), and, by way of contradiction, suppose that χ0 (G) = 6 ∆. Then,
by Corollary 6.4.2, ∆ < χ0 (G). Next, let f be an edge ∆-coloring of graph G for which the
total chromatic incidence ecr G (f ) is maximum. Since f is not a proper edge-coloring, there
is a vertex v such that ecr v (f ) < deg(v) (by Proposition 6.4.16). Thus, some color occurs
on at least two edges incident on v. But there are ∆ − 1 other colors and at most ∆ − 2
other edges incident on v, which means that some other color is not incident on vertex v.
It follows by Lemma 6.4.19, that graph G contains an odd cycle, which contradicts the fact
that G is bipartite. ♦
Vizing’s Theorem
Complementing the lower bound χ0 (G) ≥ δmax (G) for a simple graph, provided by
Corollary 6.4.2, Vizing’s theorem provides a sharp upper bound that narrows the range for
χ0 (G) to two possible values.
definition: Let G be a graph, and let f be a proper edge k-coloring of a subset S of the
edges of EG . Then f is a blocked partial edge k-coloring if for each uncolored edge e,
every color has already been assigned to the edges that are adjacent to e. Thus, f cannot
be extended to any edge outside subset S.
Example 6.4.6: In Figure 6.4.12, the edge 5-coloring of all but one of the edges of K5 is
blocked, since all five colors have been assigned to the neighbors of the uncolored edge.
1 2
4
2
3 4 1
5 3
e
Lemma 6.4.21: Let i and j be two of the colors used in a proper edge-coloring of a graph.
Then every Kempe i-j edge-chain K is a path (open or closed).
Proof: Every vertex of Kempe chain K has degree at most 2 (since the edge-coloring is
proper), and, by definition, K is a connected subgraph. ♦
264 Chapter 6 GRAPH COLORINGS
Theorem 6.4.22: [Vizing, 1964, 1965] [Gupta, 1966] Let G be a simple graph.
Then there exists a proper edge-coloring of G that uses at most δmax (G) + 1 colors.
u v u v
¬ {c0 ,c2 } e ¬c1 ¬ {c0 ,c1} e ¬c 1
c0 c2
c1 c0
¬ c2 v1 ¬ c1 v1
If color c2 does occur at vertex u, then let e2 be the c2 -edge incident on vertex u, let v2 be
its other endpoint, and let c3 be a color absent at vertex v2 . Continue iteratively in this way,
so that at the jth iteration, ej is the cj -edge incident on vertex u, vj is its other endpoint,
and cj+1 is the color absent at vertex vj . Let ` be the smallest j such that vertex vl has a
missing color cl+1 and that cl+1 is also absent at vertex u or is one of the colors in the list
c1 , . . . , cl (such an l exists, since the set of colors is finite).
Case 1: Color cl+1 is absent at both vertex vl and vertex u. Color Shift.
Then perform the following color shift: for j = 1, . . . , l, change the color of edge ej from
cj to cj+1 . This releases color c1 from edge e1 , so that it can be reassigned to edge e. The
color shift is illustrated in Figure 6.4.14. Notice that it maintains a proper edge-coloring,
because, by the construction, color cj+1 was absent at both endpoints of edge ej before the
shift.
vk vℓ vk vℓ
¬ck+1 ¬cℓ+1
ck u c ℓ ck +1
¬ ck v u c ℓ +1 v
ck −1 e ¬c 1 ck c1
v k−1 ¬cℓ+1 v k−1
c2 c3
c1 c0 c2 c0
¬c3 v2 v2
¬ c2 v v1
1
Figure 6.4.16 Case 2b: swap, recolor edge e1 , and then shift.
Corollary 6.4.23: Let G be a simple graph. Then either χ0 (G) = δmax (G) or χ0 (G) =
δmax (G) + 1.
Proof: This follows immediately from Vizing’s theorem and Corollary 6.4.2. ♦
0
definition: Class 1 is the set of non-empty simple graphs G such that χ (G) = δmax (G).
Class 2 is the set of simple graphs G such that χ0 (G) = δmax (G) + 1.
computational note: Deciding whether a simple graph is in Class 1 is an NP -complete
problem [Ho81].
definition: The multiplicity µ(G) of a graph G is the maximum number of edges joining
two vertices of G.
Remark: A more general result of Vizing, beyond simple graphs, which applies to every
loopless graph G, is that δmax (G) ≤ χ0 (G) ≤ δmax (G) + µ(G). The edge-chromatic number
achieves the upper bound of Vizing’s general formula when all three vertex pairs of a “fat
triangle”, as illustrated by Figure 6.4.18, are joined by the same multiplicity of edges.
Line Graphs
A line graph can be used to convert an edge-coloring problem into a vertex-coloring
problem.
review from §1.1: The line graph of a graph G is the graph L(G) whose vertices corre-
spond bijectively to the edges of G, and such that two of these vertices are adjacent if and
only if their corresponding edges in G have a vertex in common.
Example 6.4.7: The line graph of the complete graph K4 is the octahedron graph O3 , as
illustrated in Figure 6.4.19.
a
f
b
c b c e
f e
d
d
(a) (b)
(c) (d)
(e) (f)
(g) (h)
268 Chapter 6 GRAPH COLORINGS
(i) (j)
(k) (l)
6.4.2 Find upper and lower bounds for the size of a maximum (largest) matching in an
n-vertex connected graph. Then draw three 8-vertex graphs, one that achieves the lower
bound, one that achieves the upper bound, and one that achieves neither.
0
6.4.3 Prove Proposition
l m 6.4.4. Let α (G) be the size of a maximum matching in a graph G.
Then χ0 (G) ≥ α|E G|
0 (G) .
6.4.4 Prove Proposition 6.4.5. A graph G has χ0 (G) = 1 if and only if δmax (G) = 1.
6.4.5 Prove Proposition 6.4.6. χ0 (Pn ) = 2, for n ≥ 3.
6.4.6 Prove Proposition 6.4.7. χ0 (C2n ) = 2.
6.4.7 Prove Proposition 6.4.8. χ0 (C2n+1 ) = 3.
6.4.8 Prove Proposition 6.4.9. χ0 (T ) = δmax (T ), for any tree T .
6.4.9 Prove Proposition 6.4.10. χ0 (Qn ) = n.
6.4.10 Prove Proposition 6.4.11. χ0 (Wn ) = n, for n ≥ 3.
6.4.11 Prove that adding an edge to a graph increases its edge-chromatic number by at
most 1.
6.4.12 Show that K3 and K1,3 have isomorphic line graphs.
6.4.13 Show that the edge-complement of L(K5 ) is isomorphic to the Petersen graph.
6.4.14 Explain how iteratively subdividing graph G ultimately produces a graph whose
edge-chromatic number equals δmax (G).
6.4.15 Give an example of a graph G and an edge e ∈ EG such that subdividing e causes
the edge-chromatic number to increase by 1.
6.4.16 Let G be a graph such that |EG | ≥ δmax (G) · α0 (G). Prove that this implies that G
is in Class 2.
Section 6.5 Factorization 269
6.4.17 Let G be a regular graph with an odd number of vertices. Prove that G is in Class
2.
6.4.18 Let G be a 3-regular graph with a cut-edge. Prove that G is in Class 2.
6.4.19 Give an example of a graph for which Algorithm 6.4.1 does not produce a minimum
edge-coloring.
6.4.20 [Computer Project] Implement Algorithms 6.4.1 and 6.4.2 and compare their results
on the graphs in Exercises 6.4.1 through 6.4.12.
6.5 FACTORIZATION
We observe that an edge-coloring of a graph is a partitioning of the edge-set into cells
of mutually nonadjacent edges, and we now finish this chapter by considering an additional
topic concerned with partitioning an edge-set, called factorization. In a factorization, each
cell of the partition of the edge-set induces a spanning subgraph. We are able to prove a
classical result of W. Tutte.
Factors
definition: A factor of a graph is a spanning subgraph.
definition: A factorization of a graph G is a set of factors whose edge-sets form a
partition of the edge-set EG .
Example 6.5.1: Figure 6.5.1 shows a factorization of the complete graph K6 into three
spanning paths.
Example 6.5.2: Figure 6.5.2 shows two 2-factorizations of the complete graph K7 . The
factors of factorization (a) are all spanning cycles. In factorization (b), two factors are
spanning cycles, but the factor represented by bold dashes is the union of a 3-cycle and a
4-cycle.
270 Chapter 6 GRAPH COLORINGS
(a) (b)
Proof: Let G be a graph that satisfies Tutte’s condition, and let e be an edge added to
G between two nonadjacent vertices. To show that G + e satisfies Tutte’s condition, let
S ⊂ VG . If either endpoint of e lies in S, then the components of the graph (G + e) − S
are exactly the components of G − S. If both endpoints of e lie in the same component of
G − S, then the number of odd components is unchanged. This reduces our consideration
to the circumstance that e joins two components of G − S. If both endpoints of e are in
even components of G − S, or if one endpoint of e is in an odd component and the other in
an even component, then the number of odd components stays the same, that is, less than
or equal to |S| (while the number of even components decreases by 1). If both endpoints
of e are in odd components, then the number of odd components decreases by 2 (while the
number of even components increases by 1). ♦
Lemma 6.5.2: Let G be a connected graph with evenly many vertices and evenly many
edges, with one vertex v of degree 3, one vertex u of degree 1, and all other vertices of
degree 2. Then G has a 1-factor.
Proof: By Corollary 3.2.12, G has an Eulerian trail from v to u. If we color the edges
alternatingly red and blue, starting with red at vertex v, then the trail terminates with a
blue edge at u (since there are evenly many edges). We observe that at every vertex except
u, both colors are present because by whatever color edge the trail enters a vertex, it leaves
by an edge of the other color. (Thus, there are two red edges at v and one blue edge.) It
follows that the blue edges form a 1-factor. ♦
Section 6.5 Factorization 271
Example 6.5.3: A graph that satisfies the premises of Lemma 6.5.2 looks something like a
polygon kite, as illustrated in Figure 6.5.3. In order for the number of vertices in the graph
to be even, the number of edges in the tail and the number of edges in the polygon must
have the same parity. The dark edges indicate the 1-factor promised by Lemma 6.5.2.
Proof: (⇒) Suppose that G has a 1-factor. Then in each odd component of G − S, there
is at least one vertex that is not matched to another vertex within that component, and
hence, such a vertex is matched to a vertex of S. It follows that |S| is at least as large as
the number of components of G − S.
(⇐) By way of contradiction, suppose that there exists a graph that satisfies Tutte’s con-
dition but has no 1-factor. By adding edges, one at a time, until it is impossible to do so
without creating a 1-factor, we obtain a graph H that still satisfies Tutte’s condition (by
Lemma 6.5.1) and is edge maximal with respect to having no 1-factor. We now pursue the
contradiction that H does contain a 1-factor.
Let W be the vertex subset given by
Case 1. Suppose that every component of H – W is a complete graph. Then we may match
the vertices of H – W in pairs, except for one leftover vertex in each odd component of H
– W . Every vertex in W is adjacent to every one of these leftover vertices (by the definition
of set W ). Moreover, Tutte’s condition implies that |W | is at least as large as the number
of odd components of H − W . Hence, we may pair each of the leftover vertices from the odd
components with a vertex of W . A 1-factor H will exist if the remaining (unpaired) vertices
of W can be matched into pairs. These remaining vertices are mutually adjacent (again, by
the definition of W ) and hence, can be matched if there are evenly many of them. Since we
have previously matched evenly many vertices of H, it suffices to show that |VH | is even.
Tutte’s condition, with S = ∅, implies that H has no odd components, which implies that
H has evenly many vertices.
Case 2. Suppose that some component of H − W is not a complete graph. In this case,
there is a pair of nonadjacent vertices u and v in that component with a common neighbor
y∈/ W . Moreover, since y ∈/ W , it follows that some vertex z of H is not adjacent to y. By
the definition of graph H, adding an edge creates a 1-factor. In particular, let M and N be
272 Chapter 6 GRAPH COLORINGS
1-factors in the graphs H + uv and H + yz, respectively. We shall show that the symmetric
difference M ∆N has a 1-factor that contains neither uv nor yz, and is, thus, also a 1-factor
of H.
Since every vertex of H has degree 1 in M and degree 1 in N , it follows that every vertex of
H has degree 0 or 2 in M ∆N , which implies that the components of M ∆N are cycles and
isolated vertices. Moreover, since M and N are 1-factors, the M -edges and N -edges must
alternate on each cycle component, implying that all the cycles are even.
Let C be the cycle of M ∆N that contains the edge uv. (Of course, the 1-factor M contains
uv, because we have specified that H has no 1-factor.) If cycle C does not also contain the
edge yz, then the union of the set of the N -edges in cycle C with the set of M -edges not in
cycle C forms a 1-factor of H.
If cycle C does contain the edge yz, then, using the fact that we chose vertices u and v to
have the common neighbor y, we consider the subgraph J = (C + uy + vy − uv − yz) of the
graph H. See Figure 6.5.4.
u v u v
N M N N N
M M M M
N N N N
M N M M M
y z y z
C+uy+uz J
Figure 6.5.4 Constructing the subgraph J.
Since C has evenly many vertices and edges, so does J. Moreover, in subgraph J, vertex
y has degree 3, vertex z has degree 1, and all other vertices have degree 2. It follows from
Lemma 6.5.2 that the subgraph J has a 1-factor. By combining the 1-factor in subgraph J
with the edges of M that are not part of cycle C, we obtain a 1-factor of the graph H.
♦
The sum of the vertex degrees in H is 3 |VH | − kH . By Euler’s Degree-Sum Theorem (The-
orem 1.1.2), applied to the graph H, this sum is even. Since |VH | is odd, so is 3 |VH |, which
Section 6.5 Factorization 273
implies that kH is odd. Since G has no cut-edge, we have kH > 1, from which it now follows
that kH ≥ 3, and in turn, that
X
3oc(G − S) ≤ kH = k
H odd
Thus,
3oc(G − S) ≤ 3 |S|
which implies Tutte’s condition oc(G − S) ≤ |S|. ♦
Corollary 6.5.5: Every 2-edge-connected 3-regular graph G has a 2-factor.
Proof: By Petersen’s 1-Factor Theorem, the graph G has a 1-factor. Since G is 3-regular,
the edge-complement of that 1-factor is a 2-factor. ♦
Remark: Bäbler ([Bä38]) proved that every (r − 1)-edge-connected r-regular graph has a
1-factor, and also that every 2-edge-connected (2r + 1)-regular graph without self-loops has
a 1-factor.
Remark: The following two results will be proved in Chapter 10. Their proofs use Hall’s
Theorem for Bipartite Graphs, which is also proved in Chapter 10 with the aid of network
flows.
• König’s 1-Factorization Theorem [Kö16] Every r-regular bipartite graph G with
r > 0 is 1-factorable.
• Petersen’s 2-Factorization Theorem [Pe189I]. Every regular graph G of even
degree is 2-factorable.
6.6.2 Prove that for any two graphs G and H, χ(G + H) = χ(G) + χ(H).
6.6.3 Draw a simple 6-vertex graph G such that χ(G) + χ(G) = 5, where G is the edge-
complement of G.
6.6.4 Draw a simple 6-vertex graph G such that χ(G) + χ(G) = 7.
6.6.5 Construct a non-complete graph of chromatic number 6 that is chromatically critical.
6.6.6 Draw a minimum vertex-coloring and a minimum edge-coloring of the given graph
and prove their minimality.
(a) (b)
A B
A B
6.6.7 Calculate the vertex chromatic number and edge chromatic number of the graph
below. Is every edge critical with respect to the vertex chromatic number? Is every edge
critical with respect to the edge chromatic number?
6.6.8 Prove that the minimum chromatic number among all 4-regular 9-vertex graphs is
three. (Hint: First prove that chromatic number two is impossible, and then draw a 3-
chromatic 4-regular 9-vertex graph.)
6.6.9 Calculate the maximum possible number of edges of a simple 3-colorable planar graph
on 12 vertices. Be sure to prove that your number is achievable.
6.6.10 Calculate the chromatic number of the circulant graph circ(13 : 1, 5).
6.6 Supplementary Exercises 275
6.6.11 (a) Prove that the graph below has chromatic number 5.
(b) Mark two edges whose removal would make the graph 3-chromatic.
6.6.15 Among all graphs with 8 vertices and independence number 4, determine the largest
possible number of edges and draw such a graph.
6.6.16 Among all graphs with 8 vertices and clique number 4, draw a graph with the largest
possible number of edges. Write the number.
(a) (b)
A A B B
Glossary
adjacent edges: different edges with at least one endpoint in common.
block of a loopless graph: a maximal connected subgraph H such that no vertex of H is a
cut-vertex of H.
—, of a graph G: the minimum number of different colors required for a proper vertex-
coloring of G, usually denoted by χ(G).
—, of a map: the minimum number of colors needed for a proper map-coloring.
—, of a surface S: the maximum of the chromatic numbers of the maps on S, or equiva-
lently, of the graphs (without self-loops) that can be imbedded in S, denoted by chr(S).
chromatically k-critical graph: a graph whose chromatic number would decrease if any
edge were deleted.
class one: the class of graphs containing every non-empty graph whose edge-chromatic
number equals its maximum degree.
class two: the class of graphs containing every graph whose edge-chromatic number is one
more than its maximum degree.
clique in a graph: a maximal subset of mutually adjacent vertices.
clique number of a graph: the number of vertices in the largest clique.
edge-chromatic number χ0 (G) of a graph: the minimum number of different colors re-
quired for a proper edge-coloring of a graph G.
edge k-colorable graph: a graph that has a proper edge k-coloring.
edge-coloring of a graph: an assignment to its edges of “colors” from any set.
edge k-coloring of a graph: an edge-coloring that uses exactly k different colors.
—, blocked partial: the circumstance in which a proper subset of edges has a proper
edge k-coloring, and every uncolored edge is adjacent to at least one edge of each of the
k colors.
edge-independence number indE (G) of a graph G: the maximum cardinality of an
independent set of edges.
line graph of a graph G: the graph L(G) whose vertices are the edges of G, such that
edges with a common endpoint in G are adjacent in L(G).
local recoloring of vertex v with respect to a proper coloring c of a graph G: a proper
coloring c0 such that
i. c0 (v) 6= c(v) and
ii. for all x ∈ VG − N [v], c0 (x) = c(x).
278 Chapter 6 GRAPH COLORINGS
locally recolorable vertex with respect to a proper coloring c: a vertex that has a local
recoloring with respect to c.
map on a surface: an imbedding of a graph on that surface.
map-coloring for an imbedding of a graph: a function from the set of faces to a set whose
elements are regarded as colors.
matching in a graph G: a subset of edges of G that are mutually nonadjacent.
—, maximum: a matching with the maximum number of edges.
multipartite graph: a loopless graph whose vertices can be partitioned into k independent
sets, which are sometimes called the partite sets, is said to be k-partite.
multiplicity µ(G) of a graph: the maximum number of edges joining two vertices.
neighbor of an edge e: another edge that shares one or both of its endpoints with edge
e.
obstruction to k-chromaticity: a graph whose presence as a subgraph forces the chro-
matic number to exceed k.
odd component of a graph: a component with an odd number of vertices.
odd wheel: a wheel graph Wn = K1 + Cn such that n is odd.
partite sets: see multipartite graph.
perfect graph: a graph G such that every induced subgraph H has its chromatic number
χ(H) equal to its clique number ω(H).
proper edge-coloring of a graph: an edge-coloring such that if two edges have a com-
mon endpoint, then they are assigned two different colors.
proper map-coloring: a coloring such that if two regions meet at an edge, then they are
colored differently.
proper vertex-coloring: a coloring such that the endpoints of each edge are assigned two
different colors.
robust k-coloring of a graph: a k-coloring for which every vertex is locally recolorable.
k-robust graph: a graph that has a robust k-coloring.
χ-robust graph: a graph G for which χR (G) = χ(G).
robust chromatic number of a graph G: the smallest integer k such that G is k-robust,
denoted χR (G).
robust-critical graph: a graph in which every vertex is robust-critical.
robust-critical vertex: a vertex v in a graph G for which χR (G − v) < χR (G).
total chromatic incidence of an edge-coloring on a graph: the sum of the chro-
matic incidences at the vertices.
Tutte’s condition on a graph G: the condition that for every subset S ⊂ VG , the number
of odd components of G − S does not exceed |S|.
Glossary 279
vertex-coloring: a function from the vertex-set of a graph to a set whose members are
called colors.
vertex-k-coloring: a vertex-coloring that uses exactly k different colors.
(vertex) k-chromatic graph: a graph G with χ(G) = k.
(vertex) chromatic number of a graph G, denoted χ(G): the minimum number of dif-
ferent colors required for a proper vertex-coloring of G.
Chapter 7
INTRODUCTION
This chapter provides the fundamental concepts and some basic results in graph-
theoretic topics motivated by measurement considerations foreshadowed in earlier chapters.
Distance-related invariants, including radius, diameter, and girth are treated systematically
in the first section, domination in the second, and bandwidth, from the perspective of vertex
labelings, in the third. The fourth section focuses on intersection graphs.
The final two sections discuss graph mappings that are generalizations of isomorphism.
In §7.6, we see how these mappings provide a model for a software process called emula-
tion, under which distributed algorithms for one parallel architecture are ported to another
architecture. Emulation involves additional forms of measurement called load, congestion,
and dilation.
281
282 Chapter 7 MEASUREMENT AND MAPPINGS
Proof: The first inequality is an immediate consequence of the definitions of radius and
diameter. The second follows from the triangle inequality. ♦
Remark: Both inequalities in Proposition 7.1.2 are tight (or best possible). That is, there
are graphs for which the inequality is strict, and there are graphs for which equality holds.
(See Exercises.)
Proposition 7.1.3: [HaNo53] The center of every connected graph G lies within a single
block.
Proof: Suppose, to the contrary, that the center Z(G) has a pair of vertices u and w that do
not lie in the same block of G. Then G has a cut-vertex v, distinct from u and w, such that
u and w lie in different components of G − v, say Cu and Cw , respectively. Let x be a vertex
of G that is farthest from cut-vertex v (i.e., d(x, v) = ecc(v)). If x does not lie in component
Cw , then v is on every x-w path. It follows that ecc(w) ≥ d(x, w) > d(x, v) = ecc(v), which
contradicts the fact that w is a central vertex. A similar contradiction arises if x does not
lie in component Cu . ♦
Periphery
The periphery of a graph is the “opposite” of the center.
definition: A peripheral vertex v of a graph G is a vertex with maximum eccentricity,
i.e., ecc(v) = diam(G).
definition: The periphery of a graph G, denoted per (G), is the subgraph induced on
the set of peripheral vertices of G.
Example 7.1.2: For the graph G in Figure 7.1.1, the peripheral vertices are u, v, and w,
and per (G) ∼
= K1 ∪ K2 .
In §1.4, we established that every graph is the center of some graph. The following result
characterizes when a graph is the periphery of some graph.
Proposition 7.1.4: [BySy83] A nontrivial graph G is the periphery of some connected
graph if and only if G is complete or no vertex of G has eccentricity 1.
Proof: (⇐) If G is complete, then per (G) = G, i.e., G is the periphery of itself. Alterna-
tively, if no vertex of G has eccentricity 1, then let G∗ = G + v be the join (see §1.4) of
G with a new vertex v. Since ecc G (x) > 1 for every x ∈ VG , it follows that ecc G∗ (x) = 2.
Moreover, ecc G∗ (v) = 1, and hence, per (G∗ ) = G.
(⇒) Suppose that G = per (G∗ ), for some connected graph G∗ . If diam(G∗ ) = 1, then every
vertex in G has eccentricity 1, and hence, G is complete. Suppose that diam(G∗ ) ≥ 2, and
let x be any vertex in G. Since x is in per (G∗ ), there exists y in G∗ such that dG∗ (x, y) =
diam(G∗ ) ≥ 2. Then y is also a vertex in per (G∗ ) = G, and, hence, dG (x, y) ≥ dG∗ (x, y) ≥ 2.
Thus, ecc G (x) ≥ 2. ♦
284 Chapter 7 MEASUREMENT AND MAPPINGS
Convexity
definition: A geodesic between vertices u and v is a u-v path of minimum length.
definition: For any two vertices u, v of a connected graph G, the closed interval I[u, v]
is the union of the sets of vertices of G that lie on u-v geodesics.
definition: For any vertex subset S of a connected graph, the closed interval I[S] is the
union [
I[u, v]
u,v∈S
Example 7.1.4: For the graph G shown in Figure 7.1.3, I[u, v] = {u, v, w, z} and
I[{v, x, y}] = {v, x, y, w, z}.
w z
G
u
x y
Figure 7.1.3
Steiner Distance
The distance between two vertices in a graph is the number of edges in a shortest path
between them. Steiner distance generalizes this concept to subsets of two or more vertices
in a graph.
definition: Let U be a subset of vertices in a connected graph G.
• A Steiner tree for U is a smallest tree subgraph of G that contains all the vertices
of U .
• The Steiner distance of U , denoted sd (U ), is the number of edges in a Steiner tree
for U .
Example 7.1.5: In the graph of Figure 7.1.4, a Steiner tree for the vertex subset U =
{x, y, z} is shown with edges in bold. Thus, sd (U ) = 5.
x y
Example 7.1.6: In Figure 7.1.5, each vertex in the graph is labeled with its distance from
the vertex z. Summing these distances yields td (z) = 9.
3
0 1 2
z y x
3
Proposition 7.1.5: Let v be any vertex of a connected graph with n vertices and m edges.
Then the inequality
(n − 1)(n + 2)
n − 1 ≤ td (v) ≤ −m
2
provides tight upper and lower bounds on total distance.
Proof: Since the distance between distinct vertices is always greater than or equal to 1,
the lower bound holds. The lower bound is achieved in any graph having a vertex that is
adjacent to every other vertex.
286 Chapter 7 MEASUREMENT AND MAPPINGS
To establish the upper bound, we use induction on the number of edges, m. Observe that
m ≥ n − 1, since G is connected. If m = n − 1, then G is a tree. For any vertex v, let di be
the number of vertices at distance i from v. Then
X X
td (v) = idi and di = n − 1
i i
P
Clearly, if di = 0, then di+1 = 0. It follows that the sum idi is maximum when di = 1
i
for all nonzero di (i.e., for 1 ≤ i ≤ n − 1). Thus,
n−1 n−1
X X n(n − 1) (n − 1)(n + 2)
td(v) = idi = i= = − (n − 1)
i=1 i=1
2 2
y y
In either case, the choice of x implies that dG−e (v, y) ≥ dG (v, y) + 1, and, hence,
td G (v) ≤ td G−e (v) − 1. Then, applying the induction hypothesis to the graph G − e, we
have
(n − 1)(n + 2) (n − 1)(n + 2)
td G (v) ≤ td G−e (v) − 1 ≤ −m−1= − (m + 1)
2 2
which establishes the upper bound.
To show that the upper bound can be achieved, first observe that the vertex at either
end of the n-vertex path graph Pn has total distance 1 + 2 + · · · + (n − 1) = (n−1)n
2 =
(n−1)(n+2)
2 − (n − 1), and, thus, achieves the upper bound when m = n − 1.
− c) and
Next, consider a graph G formed by identifying an endpoint of a path of length (n
one of the vertices of the complete graph Kc . Then G has n vertices and m = 2c + n − c =
c(c−3)+2n
2 edges, and it is straightforward to verify that its univalent vertex v has total
distance
(n − 1)(n + 2)
td (v) = 1 + 2 + · · · + (n − c) + (c − 1)(n − c + 1) = −m
2
Thus, the upper bound is achieved by such a√graph whenever there is positive integer c
3+ 8(m−n)+9
that satisfies m = c(c−3)+2n
2 (that is, if c = 2 is an integer). When there is no
such c, the upper bound is achieved √ by a graph formed by amalgamating a path of length
3+ 8(m−n)+9
(n − c) and and Kc , where c = b 2 c by identifying the vertex x of degree one
in the path with a vertex y in the complete graph and adding edges between neighbors of
y in the complete graph to the neighbor of x in the path. For the details, see, for example,
[BuHa90]. ♦
Section 7.1 Distance in Graphs 287
Example 7.1.7: Both graphs in Figure 7.1.6 have 11 vertices. Graph G1 has 13 edges and
13 = 4(4−3)+2(11)
2 . However, graph G2 has 15 edges and 4(4−3)+2(11) 2 < 15 < 5(5−3)+2(11)
2 .
The total distance of v in G1 is td (v) = 1 + 2 + · · · + 7 + 3(8) = 52 = (11−1)(11+2)
2 − 13. The
total distance of v in G2 is td (v) = 1 + 2 + · · · + 6 + 3(7) + 1(8) = 50 = (11−1)(11+2)
2 − 15.
You can see how each added edge reduced the total distance by one.
xy xy
v v
G1 G2
7.1.5 Both inequalities in Proposition 7.1.2 are tight. Each of the following parts confirms
a different aspect of this assertion. Find a family of graphs for which:
(a) The first inequality is always strict.
(b) The first inequality is always an equality.
(c) The second inequality is always strict.
(d) The second inequality is always an equality.
Example 7.2.2: For the 5-vertex path graph P5 , we have dom(P5 ) = 2. The second and
fourth vertices on the path form the unique minimum dominating set.
Application 7.2.2: Emergency First Aid Stations Suppose that a natural disaster has
struck some region consisting of many small villages. The vertices of a graph represent the
villages in the region. An edge joining two vertices indicates that an emergency first-aid
station set up in one of the corresponding villages can also serve the other one. Then a
minimum dominating set of the graph would prescribe a way of serving the entire region
with a mininum number of first aid stations.
290 Chapter 7 MEASUREMENT AND MAPPINGS
Private Neighbors
Both dominating sets in Figure 7.2.1 are minimal, because each vertex in each set dom-
inates at least one vertex that no other vertex in that set dominates.
review from §1.1:
• The open neighborhood of a vertex v in a graph, denoted N (v), is the set of all
the neighbors of v.
• The closed neighborhood of a vertex v, denoted N [v], is given by N [v] = N (v) ∪
{v}.
Two of the earliest results on domination, both due to Ore [Or62], establish basic prop-
erties of a minimal dominating set.
Proposition 7.2.2: [Or62] Let D be a dominating set of a graph G. Then D is a minimal
dominating set of G if all only if every vertex in D has at least one private neighbor.
Proof: (⇒) By way of contrapositive, suppose that some vertex v ∈ D does not have a
private neighbor. Then every vertex dominated by v is also dominated by at least one other
vertex in D. Thus, D − {v} dominates G, which implies that D is not a minimal dominating
set.
(⇐) Suppose that every vertex in D has a private neighbor. Let v be any vertex in D, and
let w be a private neighbor of v. Then D − {v} does not dominate w. Therefore, D is a
minimal dominating set. ♦
Proposition 7.2.3: [Or62] Let G be a graph with no isolated vertices, and let D be
a minimal dominating set of G. Then the complementary vertex-set VG − D is also a
dominating set of G.
dom(G) ≤ n − κv (G)
Independent Domination
review from §1.3:
• A subset S of VG is said to be an independent set if no two vertices in S are adjacent.
• The independence number of a graph G, denoted α(G), is the cardinality of a
largest independent set of G.
Proof: Let D be an independent dominating set of a graph. Then each vertex in D is its
own private neighbor, and, hence, D is minimal by Proposition 7.2.2. ♦
Proposition 7.2.10: A set of vertices in a graph is a maximal independent set if and only
if it is an independent dominating set. ♦ (Exercises)
Proof: Let S be a maximum independent set of G (i.e., |S| = α(G)). Then S is an inde-
pendent dominating set, by Proposition 7.2.10, and, hence, i-dom(G) ≤ |S|. ♦
Corollary 7.2.12: For every graph G, dom(G) ≤ α(G).
Connected Domination
definition: A connected dominating set of a connected graph G is a dominating set
D such that the subgraph induced on D is connected.
definition: The connected domination number of a connected graph G, denoted
c-dom(G), is the cardinality of a minimum connected dominating set of G.
Example 7.2.4: The solid vertices in the graph G of Figure 7.2.3 form a minimum con-
nected dominating set. Thus, c-dom(G) = 4.
Distance-k Domination
Whereas independent domination and connected domination are special cases of ordinary
domination, distance-k domination is a generalization.
definition: Given any integer k ≥ 1, vertex subset D is a distance-k dominating set
of a graph G if for all v ∈ VG − D, there exists x ∈ D such that d(v, x) ≤ k.
definition: The distance-k domination number of a graph G, denoted dk -dom(G), is
the cardinality of a minimum distance-k dominating set of G.
Observe that a d1 -dominating set is an ordinary dominating set, and observe also that
d1 -dom(G) = dom(G). Moreover, dk -dom(G) ≤ dom(G).
Section 7.2 Domination in Graphs 293
Example 7.2.5: The solid vertices in the graph G of Figure 7.2.4 form a minimum distance-
2 dominating set. Thus, d2 -dom(G) = 2. Notice that dom(G) = 4.
i
f d
h g e
7.2.2 Find upper and lower bounds for the size of a minimum dominating set of an n-
vertex graph. Then draw three 8-vertex graphs: one that achieves the lower bound, one
that achieves the upper bound, and one that achieves neither.
7.2.3 Determine the domination number dom(G) of the given graph, and justify your an-
swer.
(a) The n-vertex path graph Pn .
(b) The n-vertex cycle graph Cn .
(c) Circular ladder graph CL6 . Can you generalize to CLn ?
(d) The 3-dimensional hypercube Q3 . Can you generalize to Qn ?
(e) The Petersen graph.
7.2.4 Find the domination number of each of the following circulant graphs, and justify
your answer.
(a) circ(5 : 1, 2) (b) circ(6 : 1, 2) (c) circ(8 : 1, 2)
7.2.5 Determine the minimum number of queens that can be placed on a chessboard so
that each square is either occupied by a queen or can be reached in one move by a queen.
7.2.6 Determine the minimum number of knights that can be placed on a chessboard so
that each square is either occupied by a knight or can be reached in one move by a knight.
294 Chapter 7 MEASUREMENT AND MAPPINGS
7.2.7 Determine the independent domination number and the connected domination num-
ber of the given graph, and justify your answer.
(a) The n-vertex path graph Pn .
(b) The n-vertex cycle graph Cn .
(c) The Petersen graph.
(d) Circular ladder graph CL6 . Can you generalize to CLn ?
(e) The 3-dimensional hypercube Q3 .
(f) The 4-dimensional hypercube Q4 .
7.2.8 Determine the minimum number of non-attacking queens that can be placed on a
chessboard so that each square is either occupied by a queen or can be reached in one move
by a queen.
7.2.9 Find the independent domination number and the connected domination number of
each of the following circulant graphs, and justify your answer.
(a) circ(5 : 1, 2) (b) circ(6 : 1, 2) (c) circ(8 : 1, 2)
7.2.10 In Figure 7.2.4, find all of the minimum distance-2 dominating sets of the graph.
7.2.11 Determine the distance-2 domination number of the given graph, and justify your
answer.
(a) The n-vertex path graph Pn
(b) The n-vertex cycle graph Cn
(c) The Petersen graph
(d) The circular ladder graph CL6 . Can you generalize to CLn ?
(e) The 3-dimensional hypercube Q3
7.3 BANDWIDTH
In this section, bandwidth is described in terms of vertex labelings and adjacency matri-
ces. In §7.6, bandwidth is reinterpreted from the perspective of graph homomorphisms.
Since the addition of self-loops and multi-edges does not change the bandwidth of a
graph, we assume that all graphs in this section are simple graphs.
terminology: A standard (1-based) vertex-labeling(or simply, numbering) of an
n-vertex graph G is a bijection f : VG → {1, 2, . . . , n}.
terminology: The induced numbering fˆH on a subgraph H of a graph G with number-
ing f is obtained by placing the numbers of the set f (VH ) in ascending order, say, a1 , a2 , . . .,
and then, for each vertex v ∈ VH , defining fˆH (v) = s, if f (v) = as .
definition: The bandwidth of a numbering f of a graph G is given by
1 8 1 2
6 3 5 6
4 5 8 7
7 2 4 3
bwf(Q3) = 7 bwg(Q3) = 4
Figure 7.3.2 shows the two left-to-right orderings for the two numberings of Q3 shown in
Figure 7.3.1.
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
Example 7.3.2: We claim that bw(K4,3 ) = 4. The numbering shown in Figure 7.3.3 has
bandwidth 4, so it suffices to show that bwf (K4,3 ) ≥ 4 for any numbering f of K4,3 . If
the numbers 1, 6, and 7 are not all assigned to the same side of the bipartition, then
bwf (K4,3 ) ≥ 5. Moreover, if 2 is not assigned to the same side as 7, then bwf (K4,3 ) ≥ 5.
Thus, every numbering different from the one shown in Figure 7.3.3 has bandwidth greater
than 4.
1 2 6 7
3 4 5
Proof: Let f be a bandwidth numbering on G and fˆH the induced numbering on the
subgraph H. Then bw(H) is less than or equal to the bandwidth of the numbering fˆH ,
which is no larger than the bandwidth of f , which equals bw(G). Symbolically,
Proof: Proposition 7.3.1 and the observation above imply that the natural numbering
corresponding to the vertex sequence of Pn is a bandwidth numbering of Pn . ♦
Proposition 7.3.5: Let G be an n-vertex graph. Then bw(G) ≤ m if and only if G is a
subgraph of Pnm .
Proof: The result follows immediately from Propositions 7.3.1, 7.3.3, and 7.3.4. ♦
Corollary 7.3.6: Let G be an n-vertex graph. Then bw(G) = m if and only if m is the
smallest integer such that G is a subgraph of Pnm .
298 Chapter 7 MEASUREMENT AND MAPPINGS
bw(G) ≤ n − diam(G)
Proof: Let s, t ∈ VG such that d(s, t) = diam(G) = l, and let hu0 , u1 , . . . , ul i, where s = u0
and t = ul , be the vertex sequence of a shortest s-t path P in G. For 0 ≤ k ≤ l, let Vk be
the set of vertices in G whose distance from s equals k. Then the sets V0 , V1 , . . . Vl form a
partition of VG , and for each k, 0 ≤ k ≤ l, uk ∈ Vk .
Let f be a numbering that assigns s the number 1, the vertices in V1 the numbers from 2
to |V1 | + 1, the vertices in V2 the numbers from |V1 | + 2 to |V1 | + |V2 | + 1, and so on. Figure
7.3.4 illustrates such a numbering.
Observe that if xy is an edge in G, then |d(s, x) − d(s, y)| ≤ 1, and hence, x, y ∈ Vk ∪ Vk+1 ,
for some k, 0 ≤ k ≤ l. The numbering f satisfies |f (x) − f (y)| ≤ |Vk ∪ Vk+1 | − 1, and since
Vk ∪ Vk+1 contains only two of the l + 1 vertices of the path P , |Vk ∪ Vk+1 | ≤ n − (l + 1 − 2) =
n − l + 1. Therefore |f (x) − f (y)| ≤ n − l = n − diam(G). ♦
6 8
1 2 3 5 9 11
s = u0 u1 u2 u3 u4 t = u5
4 10
V0 V1 V2 V5
V3 V4
• The (vertex) chromatic number of graph G, denoted χ(G), is the smallest number
k such that there is a function g : V (G) → {1, 2, . . . , k} with the property that, if
uv ∈ EG , then g(u) 6= g(v).
Proof: We have χ (Pnm ) ≥ m + 1, since the complete graph Km+1 is a subgraph of Pnm . To
establish the reverse inequality, observe that in Pnm , vertex v1 is not adjacent to vm+2 , v2
is not adjacent to vm+3 , and so on. Thus, the function g defined by g(vi ) = i(mod m + 1)
is a proper (m + 1)-coloring of Pnm . ♦
Corollary 7.3.10: Let G be an n-vertex graph. Then
bw(G) ≥ χ(G) − 1
Proof: Let bw(G) = m. Then G is a subgraph of Pnm , by Proposition 7.3.5. It follows that
χ(G) ≤ χ (Pnm ) = m + 1. ♦
Remark: Brigham and Dutton [BrDu85] showed that bw(G) ≥ χ0 (G)/2, where χ0 (G) is
the edge-chromatic number of G (§6.4).
Our last result shows that the vertex-connectivity is a lower bound on the bandwidth.
review from §1.3 and §3.4:
Lemma 7.3.11: For the path graph Pn = hv1 , v2 , . . . , vn i, the bound κv (Pnm ) ≤ m holds
for 1 ≤ m ≤ n − 1.
Proof: Since v1 is not adjacent to vm+2 in Pnm , the vertex subset {v2 , v3 , . . . , vm+1 } is a
vertex-cut in Pnm . ♦
Proposition 7.3.12: For any graph G, bw(G) ≥ κv (G). ♦ (Exercises)
Remark: For comprehensive surveys on bandwidth, each with extensive bibliographies, see
[Br04a], [ChChDeGi82], and [LaWi99]. Further results can be found in [Ch88] and [Mi91].
equals n2 .
7.3.3 Prove that the bandwidth of K1,n
7.3.4 Prove that the bandwidth of K2,4 equals 3.
7.3.5 Show that bw(Q3 ) = 4. (Hint: make use of the symmetry in arguing that there is no
numbering f with bwf (Q3 ) < 4.)
7.3.6 Prove that the 2n-vertex wheel W2n−1 has bandwidth equal to n.
Intersection Graphs
definition: Let F = {S1 , S2 , . . . , Sn } be a family of subsets of a set. The intersection
graph of F, denoted Ω(F), is the graph whose vertex- and edge-sets are given by
VΩ(F ) = {S1 , S2 , . . . , Sn }
EΩ(F ) = { Si Sj | i 6= j and Si ∩ Sj 6= ∅}
{1, 4} {1, 2}
{3, 4} {2, 3}
Proof: For each vertex v ∈ VG , let Ev be the subset of edges incident on v. Then the family
of subsets {Ev }v∈VG is a set representation of G. ♦
Section 7.4 Intersection Graphs 301
Example 7.4.2: The assignment of intervals to the vertices of the graph in Figure 7.4.2
shows that it is an interval graph.
(1, 3) (2, 6)
(4, 7) (5, 8)
Remark: The class of interval graphs is a proper subclass of intersection graphs. For in-
stance, one can show that the cycle graph Cn for all n ≥ 4 is not an interval graph (see
Exercises).
review from §1.1: The line graph L(G) of a graph G has a vertex for each edge of G,
and two vertices in L(G) are adjacent if and only if the corresponding edges in G have a
vertex in common.
Thus, the line graph L(G) is the intersection graph corresponding to the endpoint sets
of the edges of G.
Example 7.4.3: Figure 7.4.3 shows a graph G and its line graph L(G).
ab
a b
bc
c ae bd
e cd
d
ed
G L(G)
Subtree Graphs
definition: A graph G is a subtree graph if G is the intersection graph of a family
F = {T1 , T2 , . . . , Tn } of subtrees of a tree T , i.e., the vertex-sets of the Ti s form a set
representation of G. The tree T and the family F are called a tree representation of G.
If T is a path (and the Ti s are subpaths), then the tree representation is called a path
representation, and G is said to be an intersection graph of a family of subpaths of a
path.
302 Chapter 7 MEASUREMENT AND MAPPINGS
Example 7.4.4: A subtree graph G and one of its tree representations are shown in Figure
7.4.4. The vertex-sets of the subtrees T1 , T2 , . . . , T7 of tree T are listed at the right.
T1 T2 a
T1 : {d, g}
T2 : {b, e}
T4 T5 b c d T3 : {a}
T4 : {a, b, c, e, f }
T5 : {a, b, c, d, h}
e g h
T6 : {a, c, f }
T3 T6 T7 f
T7 : {c, f }
G T
definition: A graph is a chordal graph if, for all n ≥ 4, it does not contain an n-vertex
cycle graph Cn as an induced subgraph.
Example 7.4.4, continued: The graph G in Figure 7.4.4 is a chordal graph.
Proposition 7.4.3: [Bu74, Ga74, Wa78] A graph is a chordal graph if and only if it is a
subtree graph. ♦ (See, e.g., [McMc99], Theorem 2.4.)
Competition Graphs
definition: Let D be a digraph with vertex-set VD and arc-set AD . The out-set of a
vertex v ∈ VD , denoted Out(v), and the in-set, denoted In(v), are the vertex subsets given
by
Out(v) = {w ∈ VD | (v, w) ∈ AD }
In(v) = {w ∈ VD | (w, v) ∈ AD }
where the ordered pair (x, y) denotes the arc directed from vertex x to vertex y.
definition: The competition graph of a digraph D is the intersection graph of the
family of out-sets of the vertices of D.
definition: A graph G is a competition graph if there is a digraph D such that G is
(isomorphic to) the competition graph of D.
Example 7.4.5: A digraph D and its competition graph G are shown in Figure 7.4.5.
VD = {a1 , a2 , . . . , an }
AD = {(ai , aj ) | ai preys on aj }
Section 7.4 Intersection Graphs 303
a b a b
c c
e e
d d
D G
Figure 7.4.5 A digraph D and its competition graph G.
Then two animals ai and aj compete for the same prey if and only if ai and aj are adjacent
in the competition graph of D. In the competition graph of the food web shown in Figure
7.4.6, the yellow warbler is adjacent to the frog, since they both prey on the spider, the
yellow warbler is adjacent to the spider since they both prey on the flea beetle, and the frog
and the spider are adjacent since they both prey on the sawfly.
sandbat
bronze yellow willow
grackle warbler
flea
sawfly beetle
spider
garter
snail frog snake
Proof: We must show that the vertex bijection f : VG → VΩ(F K ) given by f (v) = Sv
preserves adjacency and nonadjacency (i.e., is structure-preserving). Suppose that vertices
v and w are adjacent in G. Then edge vw ∈ EQi for some Qi , and, hence, i ∈ Sv ∩ Sw .
K
graph Ω F . Conversely, suppose
Thus, Sv and Sw are adjacent vertices in the intersection
K
vertices Sv and Sw are adjacent in the graph Ω F . Then Sv ∩ Sw 6= ∅, i.e., i ∈ Sv ∩ Sw
for some i. It follows that v, w ∈ VQi , and, since Qi is a complete graph, v is adjacent to w
in graph G. ♦
Proof: If every vertex had positive indegree, then a directed cycle could be constructed
by starting at any vertex, moving backward along an incoming arc to its tail vertex, and
repeating the process until a vertex is repeated. ♦
Lemma 7.4.7: An n-vertex digraph D is acyclic if and only if its vertex-set VD can be
labeled {v1 , v2 , . . . , vn } so that (vi , vj ) ∈ AD implies i < j.
Proof: (⇒) To prove the necessity of the labeling condition, we use induction on n. The
labeling condition holds trivially if n = 1. Assume for some n ≥ 1 that all n-vertex acyclic
digraphs satisfy the labeling condition, and let D be an acyclic digraph on n + 1 vertices.
By Lemma 7.4.6, D has a vertex w with indegree 0. By the induction hypothesis, the n
vertices of the digraph D̂ = D − v can be labeled v1 , v2 , . . . , vn so that (vi , vj ) ∈ AD̂ implies
i < j. Then by adding 1 to each subscript of the vi s and labeling vertex w as v1 , we obtain
a labeling of the vertices of D that satisfies the condition.
(⇐) To prove the sufficiency of the labeling condition, suppose that the vertices of digraph
D are v1 , v2 , . . . , vn and that (vi , vj ) ∈ AD̂ implies i < j. If there were a vertex sequence
hvi1 , vi2 , . . . , vis , vi1 i that represented a directed cycle, then the condition would imply that
i1 < i2 < · · · < is < i1 , a contradiction. Thus, D must be acyclic. ♦
Theorem 7.4.8: [DuBr83, LuMa83] An n-vertex graph G is a competition graph of an
acyclic digraph if and only if VG can be labeled {v1 , v2 , . . . , vn } and G has an edge clique
cover K = {Q1 , Q2 , . . . , Qn } such that vi ∈ Qj implies i < j.
Proof: (⇒) Suppose that G is the competition graph of an acyclic digraph D. By Lemma
7.4.7, we may assume that VG = VD = {v1 , v2 , . . . , vn }, where (vi , vj ) ∈ AD implies i < j.
Let K = {Q1 , Q2 , . . . , Qn } be the family of in-sets in D, i.e., Qi = In(vi ), i = 1, 2, . . . , n.
Then K is an edge clique cover of G such that vi ∈ Qj implies i < j (see Exercises).
(⇐) Suppose that VG = {v1 , v2 , . . . , vn } and K = {Q1 , Q2 , . . . , Qn } is an edge clique cover
of G such that vi ∈ Qj implies i < j. Define a digraph D with VD = VG and AD =
{(vi , vj ) | vi ∈ Qj }. By Lemma 7.4.7, D is acyclic. Moreover, G is the competition graph of
D (see Exercises). ♦
Remark: Competition graphs of arbitrary digraphs and of loopless digraphs are charac-
terized in [DuBr83].
Section 7.4 Intersection Graphs 305
p-Intersection Graphs
definition: The p-intersection graph of a family of subsets F = {S1 , S2 , . . . , Sn } of a
finite set S, denoted Ωp (F), is the graph whose vertex- and edge-sets are given by
VΩp (F ) = {S1 , S2 , . . . , Sn }
EΩp (F ) = {Si Sj | i 6= j and |Si ∩ Sj | ≥ p}
Example 7.4.6: The subsets of {1, 2, . . . , 7} that label the vertices of the graph in Figure
7.4.7 show that it is a 2-intersection graph.
{2, 3, 4}
{1, 2, 3} {1, 4, 5}
{2, 3, 4, 6, 7} {3, 4, 5, 6, 7}
Proof: Proposition 7.4.1 establishes the base of an inductive proof on p. Assume that a
graph G is a p-intersection graph for some p ≥ 1, and let F = {S1 , S2 , . . . , Sn } be a family
n
of sets such that G ∼
S
= Ωp (F). Let x ∈
/ Si . Then
i=1
Tolerance Graphs
Intersection graphs and their variations discussed in this section have been generalized to
tolerance graphs. The most general version of the definition was introduced in [JaMcMu91]
and [JaMcSc91].
definition: Let F = {S1 , S2 , . . . , Sn } be a family of subsets of a finite set S; let φ : R+ ×
R+ → R≥0 be a symmetric function taking pairs of positive real numbers to nonnegative
reals; let µ : P(S) → R≥0 be a function taking subsets of S to nonnegative reals; and let
ti be a positive real number, called a tolerance, assigned to subset Si , i = 1, 2, . . . , n. The
φ-tolerance intersection graph (or simply tolerance graph) G of the family F with
respect to φ, µ, and the tolerances ti has vertex- and edge-sets given by
VG = {S1 , S2 , . . . , Sn }
EG = {Si Sj | i =
6 j and µ (Si ∩ Sj ) ≥ φ (ti , tj )}
Remark: The max-tolerance interval graph and sum-tolerance interval graph are
analogously defined.
terminology note: The term tolerance was introduced in [GoMo82, GoMoTr84] in the
context of min-tolerance interval graphs, and several authors refer to these simply as toler-
ance graphs.
Example 7.4.8: Figure 7.4.8 depicts the cycle graph C4 as a min-tolerance interval graph,
which shows that the interval graphs are a proper subclass of the min-tolerance interval
graphs.
1 2 I1 t1 = 1
I2 t2 = 3
I3
I4 t =3
3
3 4 0 1 2 3 4 t4 = 1
Remark: For examples and results on φ-tolerance competition graphs, see [AnLaLuM-
cMe94], [BrMcVi95], [BrMcVi96], and [BrCaVi100]. Some of the functions φ considered in
those papers include φ(ti , tj ) = min(ti , tj ), max(ti , tj ), ti + tj and |ti − tj |.
Remark: For several other results, examples, and applications of intersection graphs and
tolerance graphs, see the monograph by McKee and McMorris [McMc99]. Also, Golumbic
and Trenk have written the first book [GoTr03] devoted entirely to tolerance graphs.
7.4.4 Determine the intersection number of the given graph, and justify your answer.
(c) The n-fold self-union nK2 (d) The complete graph K2,3
(e)
x
w v
y z
f(v1) f(v2)
w1 w2
v0 v1 v2 v3 v4 f
w0 w3
f(v0)=f(v4) f(v3)
100 101
Q3
001 011
f
P4
0 1 2 3
x v ab
a b f x d
d uvw
u c w
c
Proposition 7.5.1: If both the vertex function and the edge function of a graph homo-
morphism G → H are one-to-one (but not necessarily onto), then the domain graph G is
isomorphic to its image in the codomain graph H.
† This notation is analogous to the one used for quotient groups in group theory.
Section 7.5 Graph Homomorphisms 311
VG/π = {V1 , V2 , . . . , Vt }, and the edge-set EG/π = EG , except that any edge in G that had
u ∈ Vi as an endpoint now has, in G/π, the amalgamated vertex Vi as an endpoint instead.
Example 7.5.4: Figure 7.5.4 shows how the cycle graph C4 can be obtained by a vertex-
partition amalgamation of the path graph P5 = hv0 , v1 , v2 , v3 , v4 i corresponding to the par-
tition π = {{v0 , v4 }, {v1 }, {v2 }, {v3 }}. The amalgamated vertex is labeled by juxtaposing
the names of the vertices that were merged.
v1 v2
v0 v1 v2 v3 v4
C4 = P5/π
P5 v 0v4 v3
Notice that this transformation is identical to the graph homomorphism of Example 7.5.1.
Example 7.5.5: Figure 7.5.5 shows the vertex-partition amalgamation of the cube graph
Q3 corresponding to the partition of the vertices according to the number of 1s in their
label.
100 101
Q3
001 011
Q3 / π
0 1 2 3
Example 7.5.6: Figure 7.5.6 shows the vertex-partition amalgamation of the domain
graph from Example 7.5.3, where the corresponding partition of the vertex-set is
{{x}, {u, v, w}}.
a b
x v
d a b uvw
x d
u c
w c
Multi-Edge Amalgamation
definition: Let G be any graph, and let A = {e1 , e2 , . . . , es } ⊆ EG be any subset of edges
having the same endpoints. The multi-edge amalgamation corresponding to A is the
graph GA that results from merging (amalgamating) all of the edges in A into a single edge
generically denoted e1 e2 · · · es . Thus,
Example 7.5.6 continued: Figure 7.5.7 shows the graph that results from merging the
edges in A = {a, b}. Notice that the resulting graph is the image of the graph homomorphism
defined in Example 7.5.3
a b ab
x d
uvw uvw
x d
c c
Example 7.5.7: The six isomorphism types of graphs derivable from the cycle graph C3 by
vertex-partition amalgamation followed by multi-edge amalgamation are shown in Figure
7.5.8. The graphs at depth 1 are the isomorphism types of all possible vertex-partition
amalgamations. The graphs at depth 2 are all possible isomorphism types that result from
subsequent multi-edge amalgamations. It is easy to verify that these six types are the
isomorphism types of all possible images of a linear graph mapping of C3 . Observe that the
vertex and edge labels can be viewed from two different perspectives, either as preimages
of graph homomorphisms (the leftmost one being the identity isomorphism), or as the
vertices and edges that are merged in the vertex-partition and multi-edge amalgamations,
respectively.
v
a b
u c w
v a b
v
a b a b
uvw
uw
u w c
c c
v ab
abc
ab uvw
uw
uvw
c c
Example 7.5.8: The complete multi-edge amalgamation of the graph Q3 /π (from Example
7.5.5) results in the path graph P4 , as shown in Figure 7.5.9. Recall that P4 was the image
of the graph homomorphism given in Example 7.5.2.
0 1 2 3
0 1 2 3
Remark: The last three examples showed how a graph homomorphism can be realized by
vertex-partition amalgamation followed by iterative (or complete) multi-edge amalgamation.
In fact, every graph homomorphism that is onto (both fV and fE ) can be realized using
these two kinds of amalgamations, and vice versa. We state and prove the result for simple
graphs.
Proposition 7.5.2: Let f : G → H be a graph homomorphism from a simple graph G
onto a simple graph H. Then H can be obtained from G by a vertex-partition amalga-
mation G/π of G followed by a complete multi-edge amalgamation of G/π. Conversely,
any vertex-partition amalgamation of a simple graph G followed by a complete multi-edge
amalgamation that results in a graph H corresponds to a graph homomorphism from G
onto H, where H has no multi-edges.
Proof: Let f −1 ({w}) be the preimage of vertex w for each w ∈ VH , and let f −1 ({e}) be
the preimage of edge e for each e ∈ EH . Then π = f −1 ({w}) | w ∈ VH is a partition of
VG , and each f −1 ({e}) corresponds to a multi-edge in the vertex-partition amalgamation
G/π (since f preserves adjacency). It follows that H is obtained from the complete multi-
edge amalgamation of G/π. The converse assertion is an immediate consequence of the
definitions of the vertex-partition and complete multi-edge amalgamations. ♦
Example 7.5.9: The first and last edge of the path graph P5 could be merged in two
different ways (without merging the other two edges), according to how their endpoints are
merged. This is determined by the vertex-partition amalgamation that is used. The trans-
formation shown on the left in Figure 7.5.10 results from the vertex-partition amalgamation
corresponding to the partition {{v, z}, {w, y}, {x}}. The one on the right uses the partition
{{v, y}, {w, z}, {x}}.
v w x y z v w x y z
a b c d a b c d
wz
c b
x wy vz x
ad
ad
b c
vy
Figure 7.5.10 Two ways to merge the first and last edges of P5 .
Example 7.5.10: The second and third edges of the path graph P5 could be merged in two
different ways (without merging the other two edges). The transformation shown on the left
in Figure 7.5.11 results from the vertex-partition amalgamation corresponding to the par-
tition {{w, y}, {v}, {x}, {z}}. The one on the right uses the partition {{v}, {z}, {w, x, y}}.
v w x y z v w x y z
a b c d a b c d
v wy z v wxy z
a d a d
bc
bc
x
Figure 7.5.11 Two ways to merge the second and third edges of P5 .
Proof: In a connected graph, there is a walk that traverses every edge. According to the
remark immediately above, there is a path whose image is that walk. ♦
Section 7.5 Graph Homomorphisms 315
v0 v1 v5 v6
v2v5 v3
v2 v4
v6 v1 v4
v3
v0
P: < v0, v1,v2,v3, v4, v5, v6 > W: < v0, v1, v2, v3,v4, v5,v6 >
Proof: Suppose that f (G) is bipartite, and that (U, V ) is the corresponding bipartition of
Vf (G) . If there were an edge e joining two vertices of f −1 (U ), then its endpoints would both
be in U , which would imply (by the definition of a graph homomorphism) that its image
f (e) would join two vertices of U . An edge joining two vertices of f −1 (V ) would lead to the
same contradiction. ♦
Corollary 7.5.5: A graph can be linearly mapped onto a path if and only if it is bipartite.
Proof: It follows from Proposition 7.5.4 that if a graph G can be linearly mapped onto a
path, which is a bipartite graph, then G itself must be bipartite.
Conversely, consider a bipartite graph G on vertex parts X and Y . Graph G can be linearly
mapped onto the path P2 of length 1, by mapping all the vertices of part X to one endpoint
of P2 and all the vertices of part Y to the other. All the edges are mapped to the only edge
of P2 . ♦
Proposition 7.5.6: Let G be a connected graph with diameter d. There exists a graph
homomorphism of G onto a pseudopath of length d.
Proof: Let v be a vertex with maximum eccentricity d, and let Wi = {x ∈ VG | d(v, x) = i},
i = 0, . . . d. Then the collection of subsets {W0 , W1 , . . . Wd } is a partition of VG . Moreover,
any two adjacent vertices in G are either both in one Wj , 1 ≤ j ≤ d, or separately in a Wj
and Wj+1 , 0 ≤ j ≤ d − 1. Let P be the pseudo path hv0 , v1 , . . . vd i of length d having a
self-loop on vertex vi if there is an edge joining two vertices in Wi , and consider the mapping
f : VG → VP given by f (x) = vi if x ∈ Wi . It follows from the properties of the partition
that f is a graph homomorphism from G onto P . ♦
316 Chapter 7 MEASUREMENT AND MAPPINGS
Example 7.5.12: Figure 7.5.14 illustrates the construction of the partition and the graph
homomorphism involved in the proof of Proposition 7.5.6.
W0 W1 W2 W3 W4 W5
v0 v1 v2 v3 v4 v5
7.5.2 Draw all the different isomorphism types of graphs that can be obtained by amalga-
mating exactly two edges of the given graph.
(a) P3 (b) C5 (c) W5 (d) Q3
7.5.3 Draw all the different isomorphism types of graphs that can be obtained as images of
the given graph under a graph homomorphism.
(a) P3 (b) P4 (c) K1,3 (d) 2K2
Section 7.5 Graph Homomorphisms 317
7.5.4 The graph at the tail of the arrow is to be the homomorphic image of the graph at
the head (i.e., via an onto graph homomorphism). Construct a table with all the vertices
and edges of the domain graph in the first row. In the second row, below each vertex or
edge, write its image in the codomain graph.
(a) u0 d0 u1 v0
d 4 d1 e0 e2
d3
u3 d2 u2 v1 e1 v2
(b) u4 u0 d0 u1 v0
d4 d1
d3 e0 e2
u3 d2 u2 v1 e1 v2
(c) u4 u0 u1 u5 e3
v0 v4
d4 d0 d5 e4 e7
d1 e2
d3 e0 v5
e5 e6
d6 d2 d7
u6 u3 u2 u7 v1 e1 v2
(d) u1 d1 u2 e3
v0 v4
d0 d2
e2
u0 u3 e0 e4
d5 d3
u5 d4 u4 v1 e1 v2
7.5.5 Describe a graph homomorphism from the designated domain onto the designated
codomain.
(a) From the cube graph Q3 onto the complete graph K4 .
(b) From the cycle graph C10 onto the complete graph K5 .
(c) From the cycle graph C2n onto the path graph Pn+1 , for n ≥ 1.
(d) From the path graph Pn onto an arbitrary path graph of shorter length.
(e) From the cycle graph Ckn onto the cycle graph Cn , for k, n ≥ 1.
7.5.6 Prove that there is no graph homomorphism from the designated domain onto the
designated codomain.
(a) From the cycle graph C3 onto the path graph P4 .
(b) From the cycle graph C3 onto the path graph P3 .
(c) From K4 − K2 onto the path graph P6 .
(d) From K4 − K2 onto the path graph P5 .
(e) From K4 − K2 onto the cycle graph C4 .
(f) From the cycle graph C2n+1 onto the cycle graph C2n , for n ≥ 1.
(g) From the cycle graph C2n onto the cycle graph C2n−1 , for n ≥ 3.
7.5.7 Give an example of a graph homomorphism of a connected graph onto a connected
graph such that the cycle rank (see §3.2) of the codomain is larger than the cycle rank of
the domain.
7.5.8 Give an example of a graph homomorphism of connected graphs such that the cycle
rank of the codomain is smaller than the cycle rank of the domain.
318 Chapter 7 MEASUREMENT AND MAPPINGS
Example 7.6.1: Finding the minimum among 2n unsorted items requires O(2n ) steps,
since each item must be considered as a candidate. Just as a tennis tournament for 2n players
can find a winner in n elimination rounds, a parallel computer can find a minimum among
2n unsorted items in n computational steps. A parallel computer for finding the minimum
of 2n items can be modeled as a hypercube of processors labeled by binary numerals, as
shown in Figure 7.6.1.
110 111
100 101
010 011
000 001
On the first step, the item in each processor is compared with the item in the processor
whose bitstring label differs only in the first bit (reading right to left), and they are swapped,
if necessary, so that the smaller item moves to the processor indexed by the smaller numeral.
Thus, in Figure 7.6.1, all the winners of the first round would be in the left plane of the
hypercube.
On the second step, the item in each processor is compared to the item in the processor
whose bitstring label differs only in the second bit, and they are swapped, if necessary, so
that, once again, the smaller item moves to the processor indexed by the smaller numeral.
Thus, in Figure 7.6.1, all the winners of the second round would be in the front plane of
the hypercube, and so on.
Section 7.6 Modeling Network Emulation 319
In general, within n steps, the minimum item is in processor 00· · · 0. The execution time
of this parallel algorithm is only O(n), a vast improvement over O(2n ) strictly sequential
comparison steps. Figure 7.6.2 illustrates the application of this algorithm to a list of eight
items.
22 5 5 22 5 22 27 34
17 3 3 17 3 17 9 17
9 12 9 12 27 34 5 22
27 34 27 34 9 12 3 12
swap swap swap
100 101
Q3
001 011
f
P4
0 1 2 3
Example 7.6.3: There are many possible mappings of the cube graph Q3 to the complete
graph K4 . The vertex labels on K4 in Figure 7.6.4 specify the vertex images of one such
mapping. Each edge e of Q3 is mapped to the edge of K4 whose endpoints are the images
of the endpoints of e.
6 7
2,5 3,4
e
2 3
0,7
4 5
f(e)
0 1 1,6
Figure 7.6.4 A graph homomorphism from Q3 onto K4 .
Thus, the load of this graph homomorphism from Q3 to K4 equals 2, since two vertices of
the guest Q3 are mapped to every vertex of the host K4 . Also, it has congestion equal to 2,
since two edges of the guest are mapped to every edge of the host.
Proof: In the terminology of the generalized pigeonhole principle, the vertex function fV
has |VG | pigeons and |VH | pigeonholes, and the edge function fE has |EG | pigeons and |EH |
pigeonholes. ♦
Proposition 7.6.2: Let f : G → H be a graph homomorphism, and let e be a proper edge
of guest G such that both endpoints of e are mapped to the same vertex of the host H.
Then f (e) is a self-loop at that host vertex.
f(0)=f(4) f(2)
0 2 4
1 3 5
f(1) f(3) f(5)
Example 7.6.5: Minimizing Load and Congestion Consider the bipartite graph
K3,3 , with 6 vertices and 9 edges, as guest and the complete graph K4 , with 4 vertices
and 6 edges, as host. Then the load of any graph homomorphism is at least d6/4e = 2, and
the congestion is at least d9/6e = 2. The lower bound on load is realized by the mapping f
in Figure 7.6.6.
f(1)=f(5) f(2)
0 2 4
f
1 3 5
f(0)=f(4) f(3)
Figure 7.6.7 shows that congestion 3 is achievable by a linear graph mapping g with load 3.
g(5)
0 2 4
g g(3)
1 3 5 g(1) g(0)=g(2)=g(4)
The following proposition shows that 3 is the minimum possible congestion for a graph
homomorphism from K3,3 to K4 .
Proof: Suppose that all three vertices in one part of the bipartition of K3,3 are mapped to
the same vertex v of K4 . Then, by incidence preservation, all nine edges of K3,3 are mapped
to the three edges of K4 terminating at v. Thus, at least one of these three edges of K4
carries congestion at least 3.
If neither part of the bipartition of K3,3 is mapped to a single vertex of K4 , then Corollary
7.6.3 implies that one vertex b of K4 is the image of two vertices u, v from one part of K3,3 ,
and another vertex c is the image of two vertices x, y from the other part. This implies that
the edge between vertices b and c has congestion 4, since all four edges between the pairs
u, v and x, y must be mapped to the edge between a and b. ♦
fV : VG → VH and fE : EG → PH
such that for every edge e ∈ EG , the endpoints of e are mapped by fV to the first and last
vertices of the path fE (e). The subscripts V and E on f are omitted when no ambiguity
can result.
Section 7.6 Modeling Network Emulation 323
u e v
f(u) f(v)
!#######
#"########
$
f(e)
definition: The dilation of an edge in the guest graph G under a semilinear graph
mapping f : G → H is the length of the path onto which it is mapped.
definition: The dilation of a semilinear graph mapping f : G → H is the maximum
dilation of any edge in the guest graph G.
Proposition 7.6.5: A graph homomorphism is a semilinear graph mapping with dilation
1.
f(e)
u f(a)
f(u)
e a
y v f(y) f(v)
f(d) f(b)
d b f(x) f(w)
x c w
f(c)
Figure 7.6.9 A 5-cycle (with one dilated edge) doubly wrapped on a 4-cycle.
Sometimes, dilating edges permits the congestion of the resulting semilinear mapping to
be lower than the least possible congestion of a graph homomorphism.
e a f(e)
f f(c)
f(d) f(a)
d b
c
f(b)
e a
h h(c)
h(a)
d b h(d)
c
h(b)
h(e)
Proposition 7.6.6: Given any graph G and any connected graph H, there is a semilinear
graph mapping G → H.
Proof: Start with any vertex function f : VG → VH . Given an edge e ∈ EG with endpoints
u and v, define f (e) to be any path between f (u) and f (v) in H. At least one such path
exists, because H is connected. ♦
Example 7.6.9: [Bandwidth of the complete graph Kn ] No matter how the labels 0, . . . , n−
1 are assigned to the vertices of Kn , the numbers 0 and n − 1 will be adjacent. Thus, the
bandwidth is n − 1.
Example 7.6.11: [Bandwidth of the cycle Cn ] Since the cycle Cn has n edges, and since
there are only n − 1 consecutive pairs among the numbers 0, . . . , n − 1, it follows that some
adjacent pair of vertices of Cn must be labeled with non-consecutive numbers. Hence, the
bandwidth of Cn is at least 2. This lower bound is realizable, as illustrated in Figure 7.6.12,
by first assigning ascending even integers to adjacent vertices, starting from 0 anywhere on
Cn , and then finishing with descending odd numbers.
1 0 1 0
2 2
3 3
4 4
odd even
cycle cycle
v1 v2 u0
d2
d0 e1 u2
v0 d5 d4 e0 e3 u3
d1 e2
e4
d3 u1
v3 v4
G H
7.6.2 Specify a graph homomorphism from the given domain graph to the given codomain
graph with the prescribed load and congestion.
(a) From Q3 to C4 with load equal to 2 and congestion equal to 3.
(b) From Q3 to the dipole D4 with load equal to 4 and congestion equal to 3.
(c) From Q3 to K4 with load equal to 2 and congestion equal to 2.
(d) From CL6 to K3,3 with load equal to 2 and congestion equal to 2.
326 Chapter 7 MEASUREMENT AND MAPPINGS
7.6.3 Specify a graph homomorphism from the given domain graph to the given codomain
graph with the minimum possible load.
(a) K8,4 → D4 . (b) Km,n → C4 .
7.6.4 Specify a graph homomorphism from the given domain graph to the given codomain
graph with the minimum possible congestion.
(a) K8,4 → D4 . (b) Km,n → C4 .
7.6.5 The dumbbell graph has two vertices and one proper edge joining them, plus a
self-loop at each vertex, as shown. Consider the graph homomorphisms from the complete
graph K4 .
What are the lower bounds, according to Proposition 7.6.1, for load and for congestion?
Prove that the lower bound for congestion cannot be achieved. (Hint: The vertex mapping
completely determines the edge mapping.)
7.6.6 Do the previous exercise for the general case in which the guest is Kn , with n ≥ 3.
note: Some of the bandwidth exercises from §7.3 are repeated below for convenience.
7.6.7 Prove that the bandwidth of K1,n equals n2 .
7.6.12 Calculate the bandwidth of the graph obtained by amalgamating two 3-cycles at a
vertex.
7.7 Supplementary Exercises 327
7.7.17 Prove that any graph mapping from K3,3 to P3 has congestion at least 5.
7.7.18 Let f : G → H be a graph homomorphism onto graph H, and let u, v ∈ VG . Prove
that the distance between f (u) and f (v) is less than or equal to the distance between u and
v.
7.7.19 Let f : G → H be a graph homomorphism onto graph H. Prove that the diameter
of H is less than or equal to the diameter of G.
328 Chapter 7 MEASUREMENT AND MAPPINGS
7.7.20 Label the vertices of K4,8 with numbers 0 to 7 so as to indicate a graph homomor-
phism to C8 . This provides an upper bound on congestion of such a mapping. Calculate the
congestion of your mapping.
7.7.21 Calculate a lower bound on the congestion of a graph homomorphism from K4,8 to
C8 . (Hint: consider diameter.)
7.7.22 Label each vertex of the graph G in Figure 7.7.1 with the name of the vertex of the
graph H to which it is linearly mapped, so that the resulting mapping has load = 2. Prove
that all graph homomorphisms from G to H have load = 2.
u
G H
v w
Figure 7.7.1
7.7.23 Calculate the minimum possible load for a graph homomorphism from graph G to
graph H in Figure 7.7.2.
7.7.24 Calculate the minimum possible congestion for a graph homomorphism from graph
G to graph H in Figure 7.7.2.
5 0
4 1
3 2 G H
Figure 7.7.2
Glossary
adjacency-preserving vertex mapping: see graph homomorphism between two simple
graphs.
bandwidth of a numbering f of a graph G, denoted bw f (G): the quantity given by
bw f (G) = max {|f (u) − f (v)| | uv ∈ EG }.
bandwidth numbering of a graph G: a numbering f that achieves bw (G), i.e.,
bw f (G) = bw (G).
bandwidth of a graph G , denoted bw (G): the quantity prescribed by the rule bw (G) =
min{bw f (G) | f is a numbering of G}; the notations ban(G) and B(G) are also used
for the bandwidth of G.
bandwidth of a graph from the perspective of graph mappings: the minimum dilation of
any vertex-bijective semilinear graph mapping of that graph to a path graph; equivalent
to the number-of-a-graph perspective given above.
Glossary 329
center of a graph G, denoted Z(G): the subgraph induced on the set of central vertices
of G.
central vertex v of a graph G: a vertex with minimum eccentricity, i.e., such that ecc(v) =
rad (G).
chordal graph: a graph G such that for all n ≥ 4, G does not contain an n-vertex cycle
graph Cn as an induced subgraph.
chromatic number of graph G , denoted χ(G): the smallest number k such that there
is a function g : V (G) → {1, 2, . . . , k} with the property that, if uv ∈ EG , then g(u) 6=
g(v).
circumference of a graph G with at least one cycle: the length of a longest cycle in G;
denoted circum(G). The circumference of an acyclic graph is undefined.
closed interval for two vertices u, v of a connected graph G, denoted I[u, v]: the union
of the sets of vertices of G that lie on u-v geodesics.
closed
S interval for a vertex subset S of a connected graph G, denoted I[S]: the union
u,v∈S I[u, v].
congestion of a graph mapping: the maximum congestion on any edge of the codomain.
convex hull of a vertex subset S in a graph G: the smallest convex set that contains
the subset S.
convex vertex subset S in a graph G: a vertex subset S such that I[S] = S.
dilation of an edge in the domain of a semilinear graph mapping: the length of the path
onto which that edge is mapped.
dilation of a semilinear graph mapping: the maximum dilation of any edge in the do-
main graph.
distance d(s, t) from a vertex s to a vertex t in a graph G: the length of a shortest s-t
path if one exists; otherwise, d(s, t) = ∞.
dominates: what a vertex does to itself and to each of its neighbors.
330 Chapter 7 MEASUREMENT AND MAPPINGS
VD = {a1 , a2 , . . . , an }
AD = {(ai , aj ) | ai preys on aj }
girth of a graph G with at least one cycle: the length of a shortest cycle in G; denoted
girth(G). The girth of an acylic graph is undefined.
graph homomorphism f : G → H from a graph G to a graph H: a pair of functions
(fV : VG → VH , fE : EG → EH ) between their vertex- and edge-sets, respectively, such
that for every edge e ∈ EG , the function fV maps the endpoints of e to the endpoints
of edge fE (e).
Glossary 331
guest, in the context of network emulation: the domain graph of the graph mapping that
models the emulation.
host, in the context of network emulation: the codomain graph of the graph mapping that
models the emulation.
image of a graph G under a graph homomorphism f : G → H: the subgraph of H whose
vertex-set is f (VG ) and whose edge-set is f (EG ).
VΩ(F ) = {S1 , S2 , . . . , Sn }
EΩ(F ) = {Si Sj | i 6= j and Si ∩ Sj 6= ∅}
VΩp (F ) = {S1 , S2 , . . . , Sn }
EΩp (F ) = {Si Sj | i 6= j and |Si ∩ Sj | ≥ p}
load of a graph mapping: the maximum load on any vertex of the codomain.
load on a vertex of the codomain of a graph mapping: the number of vertices mapped to
that vertex.
median vertex in a connected graph: a vertex whose total distance is minimum.
median subgraph M (G) of a connected graph G: the subgraph induced on the median
vertices of G.
metric on the vertex-set VG of a graph G: a mapping d : VG × VG → R that satisfies the
following four conditions:
mth power of graph G: the graph Gm having vertex-set VGm = VG and edge-set EGm =
{uv | dG (u, v) ≤ m}.
Glossary 333
INTRODUCTION
Several areas of graph theory are concerned with the likelihood or certainty of the pres-
ence in a graph of various subgraphs or, more generally, of graph properties that emerge as
the number of vertices and/or the number of edges increases. Collectively they are grouped
as analytic graph theory.
The foundational results in analytic graph theory were obtained decades ago, and there
has been extensive subsequent development. Even though many such results can be stated
easily, they can be quite difficult to prove. As an introduction to this deep and well-developed
area, this chapter concentrates on the basic results whose proofs are the most readily ac-
cessible and illuminating.
335
336 Chapter 8 ANALYTIC GRAPH THEORY
Proof: Let u ∈ VG . Then either degG (u) ≥ 3 or degG (u) ≥ 3, since degG (u) + degG (u) = 5.
We may assume without loss of generality that degG (u) ≥ 3, because of the symmetry of
the theorem statement with respect to G and G. Let x, y, and z be three of the neighbors
of u.
If any two of vertices x, y, and z are adjacent, then those two, together with vertex u, form
a K3 -subgraph of graph G. Alternatively, if x, y, and z are mutually nonadjacent, then they
form a K3 -subgraph in graph G. ♦
Ramsey Numbers
The Ramsey puzzle is readily generalized to a vertex-extremal problem of calculating a
minimum number of vertices in a simple graph that guarantees the occurrence of a property.
definition: Let s and t be positive integers. The Ramsey number r(s, t) is the minimum
positive number n such that for every simple n-vertex graph G, either G contains a Ks -
subgraph or its edge-complement graph G contains a Kt -subgraph.
Remark: Thus, Theorem 8.1.1 and the fact that C5 contains neither K3 nor three inde-
pendent vertices imply that r(3, 3) = 6.
alternative definition: The Ramsey number r(s, t) is the minimum number n such
that for every edge-coloring of Kn with colors red and blue, there exists either a red Ks -
subgraph or a blue Kt -subgraph.
This version of the definition generalizes to arbitrarily many edge colors and to arbitrary
subgraphs in each color.
Proof: If an s-vertex simple graph G is not complete, then its edge-complement G contains
K2 . Thus, r(s, 2) ≤ s. The reverse inequality also holds, since Ks−1 obviously does not
contain a Ks -subgraph, and Ks−1 contains no edges. ♦
Section 8.1 Ramsey Theory 337
Proof: This proof of part (a) generalizes the proof given for Theorem 8.1.1.
(a) Let G be a simple graph on r(s − 1, t) + r(s, t − 1) vertices, and let u ∈ VG . Then either
degG (u) ≥ r(s − 1, t) or degG (u) ≥ r(s, t − 1) = r(t − 1, s), since degG (u) + degG (u) =
r(s − 1, t) + r(s, t − 1) − 1. If degG (u) ≥ r(s − 1, t) then the subgraph H of G induced
on the open neighborhood of u has at least r(s − 1, t) vertices. Thus, either subgraph
H contains a Ks−1 -subgraph, which together with vertex u forms a Ks -subgraph of
G, or H (and hence G ) contains a Kt -subgraph. If degḠ (u) ≥ r(t − 1, s), then the
result follows by applying the same argument to G with the roles of s and t reversed.
(b) Now suppose that r(s − 1, t) and r(s, t − 1) are both even, and that graph G has
r(s − 1, t) + r(s, t − 1) − 1 vertices. Since |VG | is odd, there is some vertex u of G with
even degree, by Corollary 1.1.3. Then degG (u) + degG (u) = r(s − 1, t) + r(s, t − 1) − 2.
If degG (u) ≥ r(s−1, t), then we are done, as in part (a) above. If degG (u) < r(s−1, t),
then degG (u) ≤ r(s − 1, t) − 2 and, hence, degG (u) ≥ r(t − 1, s). The result again
follows, as in part (a).
♦
Remark: The next result shows that Ramsey numbers exist for all pairs of positive integers.
Corollary 8.1.6: [Erdös and Szekeres, 1935] For all positive integers s and t,
s+t−2
r(s, t) ≤
s−1
Proof: We use induction on the sum s + t. The assertion is trivially true for s + t = 2, by
Proposition 8.1.3. Assume for some k ≥ 3 that the inequality is true for all positive integers
s and t whose sum is smaller than k, and suppose that s + t = k. Then
t=3 4 5 6 7 8 9
s=3 6 9 14 18 23 28 36
4 18 25
5 2
4 3
10 3
9 4
8 5
7 6
Proof: Let H1 and H2 be simple graphs with m and n vertices, respectively. Since H1 is a
subgraph of Km and H2 is a subgraph of Kn , we have r(H1 , H2 ) ≤ r(m, n). ♦
Proposition 8.1.11:
(
m+n if m, n not both even
r(K1,m , K1,n ) =
m+n−1 if m, n both even
Proof:
Case 1: m and n are not both even. We may assume without loss of generality that m is
odd. Let G be the (m + n − 1)-vertex, (m − 1)-regular circulant graph G = circ(m +
n − 1; 1, 2, . . . , m−1
2 ). Then G does not contain K1,m , and its (n − 1)-regular edge-
complement G does not contain K1,n . Therefore, r(K1,m , K1,n ) ≥ m + n. For the
reverse inequality, suppose that G is an (m + n)-vertex graph that does not contain
K1,m . Then its maximum degreeδmax (G) ≤ m − 1, and, hence, its edge-complement
G has maximum degree δmax G ≥ n. Thus, K1,n is a subgraph of G, which shows
that r(K1,m , K1,n ) ≤ m + n.
Case 2: m and n are both even. The (m + n − 2)-vertex, (m − 1)-regular circulant graph
G = circ m + n − 2; 1, 2, . . . , m−2
2 ,
m+n−2
2 does not contain K1,m , and G does not
contain K1,n . Thus, r(K1,m , K1,n ) ≥ m + n − 1. Now suppose that G is an (m + n − 1)-
vertex graph that does not contain K1,m . Then, as in Case 1, δmax (G) ≤ m − 1. But G
cannot be (m − 1)-regular since m + n − 1 and m − 1 are both odd and the degree sum
must be even. Therefore, there is at least one vertex v with degG (v) < m − 1. Then
degG (v) ≥ n, and hence, K1,n is a subgraph of G. Thus, r(K1,m , K1,n ) ≤ m + n − 1,
which completes the proof. ♦
r(Ks , T ) = (s − 1)(t − 1) + 1
Proof: The assertion is trivially true for s = 1 and s = 2. Suppose that s ≥ 3. We observe
that the complete (s − 1)-partite graph G = Kt−1,...,t−1 does not contain Ks , and that each
component of G = (s − 1)Kt−1 has only t − 1 vertices, so it does not contain T . Thus, we
have the lower bound
r(Ks , T ) ≥ (s − 1)(t − 1) + 1
340 Chapter 8 ANALYTIC GRAPH THEORY
To establish the upper bound, let G be any graph with (s − 1)(t − 1) + 1 vertices, such
that G does not contain Ks . Then its edge-complement G does not contain a subset
of s
mutually nonadjacent vertices, or, equivalently, the independence number α G ≤ s − 1.
By Proposition 6.1.5, we have
(s − 1)(t − 1) + 1 (s − 1)(t − 1) + 1
χ G ≥ ≥ =t
α(G) s−1
Remark: For other results, conjectures, variations, and references in Ramsey theory, see
[Fa04] and [GrRoSp90].
Example 8.2.3: The property of Eulerian traversability (§1.2) does not hold for sufficiently
large graphs. In particular, it does not hold for a complete graph K2n on evenly many
vertices.
Turán’s Theorem
The prototypical problem of extremal graph theory and its solution are due to Turán
[Tu41]: what is the maximum number of edges that an n-vertex simple graph could have
and still contain no subgraph isomorpic to K3 ?
342 Chapter 8 ANALYTIC GRAPH THEORY
Theorem 8.2.2: [Turán, 1941] The bipartite graph Tn,2 is an extremal graph for
ex (n, K3 ).
2
Proof: Since Tn,2 is bipartite, it is K3 -free. If n is even, then Tn,2 ∼
= K n2 , n2 has n4 edges.
j k
∼ K n+1 n−1 has n2 −1 edges. In either case, the graph Tn,2 has n2
If n is odd, then Tn,2 =
2 , 2 4 4
edges. ♦
Remark: The methods above for deriving ex(n, K3 ) generalize readily to calculating
ex (n, Kr ) for arbitrary r ≥ 3. In general, the Turán graph Tn,r is an extremal graph for
this problem.
Vertex Degree
A graph is extremal for the property of having a vertex of degree d if and only if it is
extremal for not being K1,d -free.
j k
Theorem 8.2.3: ex (n, K1,d ) = n(d−1)
2 .
j k
n(d−1)
Proof: Let G be a graph with 2 + 1 edges. Then
n(d − 1) n(d − 1)
2 |EG | = 2 +1 >2 = n(d − 1)
2 2
Therefore,
2 |EG |
δavg (G) = >d−1
n
It follows that some vertex has degree at least d, which shows that
n(d − 1)
ex (n, K1,d ) ≤
2
Connectedness
review from §1.3: A vertex-cut in a graph G is a vertex-set U such that G − U has
more components than G.
review from §3.4: A graph G is k-connected if G is connected and every vertex-cut has
at least k vertices. Thus, “1-connected” and “connected” are synonymous.
344 Chapter 8 ANALYTIC GRAPH THEORY
Proposition 8.2.4: In the domain of simple graphs, the graph Kn−1 ∪ K1 is an extremal
graph for the property of connectedness.
Proof: Let G be an n-vertex extremal graph for connectedness. Then G must have at least
two components, or it would be connected. There cannot be more than two components,
since otherwise, two components could be joined by an edge without yielding a connected
graph. Hence, there are exactly two components. Both components must be complete, since
otherwise an edge could be added without yielding a connected graph. Thus, G ∼
= Kr ∪Kn−r .
It follows that
r2 − r (n − r)2 − (n − r) n2 − 2nr + 2r2 − n
r n−r
|EG | = + = + =
2 2 2 2 2
Proposition 8.2.5: In the domain of simple graphs, the graph G that results from joining
one new vertex to k − 1 vertices of Kn−1 , where n ≥ 2 and 1 ≤ k ≤ n − 1, is an extremal
graph for the property of k-connectedness.
Proof: Since the neighbors of the new vertex form a vertex-cut of size k − 1, G is not
k-connected. Thus, it suffices to prove that any n-vertex simple graph with one more edge
is [Link] use induction on n.
The base cases are:
• For n = 2 and k = 1, we get a 2-vertex graph with 0 edges, which is extremal for
1-connectedness, since the 2-vertex graph with 1 edge is 1-connected.
Section 8.2 Extremal Graph Theory 345
• For n = 3 and k = 1, we get a 3-vertex graph with 1 edge, which is extremal for
1-connectedness, since the 3-vertex graph with 2 edges is 1-connected.
• For n = 3 and k = 2, we get a 3-vertex graph with 2 edges, which is extremal for
2-connectedness, since the 3-vertex graph with 3 edges is 2-connected.
Assume for some n ≥ 3, a simple graph on n vertices with n−1
2 + k edges, is k-connected,
for any k, 1 ≤ k ≤ n − 1. Let H be a (n + 1)-vertex simple graph with n2 + k edges,
Therefore,
Traversability
review from §1.2
• A cycle that includes every vertex of a graph is call a Hamiltonian cycle.
• A Hamiltonian graph is a graph that has a Hamiltonian cycle.
definition: A path that includes every vertex of a graph is call a Hamiltonian path.
Theorem 8.2.6: [Ore, 1960] Let G be a simple n-vertex graph, where n ≥ 3, such that
deg(x) + deg(y) ≥ n for each pair of nonadjacent vertices x and y. Then G is Hamiltonian.
Proof: By way of contradiction, assume that the theorem is false, and let G be a maximal
counterexample. That is, G is non-Hamiltonian and satisfies the conditions of the theorem,
and the addition of any edge joining two nonadjacent vertices of G results in a Hamiltonian
graph.
Let x and y be two nonadjacent vertices of G (G is not complete, since n ≥ 3). To reach a
contradiction, it suffices to show that deg(x) + deg(y) ≤ n − 1.
Since the graph G + xy contains a Hamiltonian cycle, G contains a Hamiltonian path whose
endpoints are x and y. Let hx = v1 , v2 , . . . vn = yi be such a path, as shown below on the
left.
346 Chapter 8 ANALYTIC GRAPH THEORY
x = v1 vn = y x = v1 vn = y
v2 vn - 1 v2 vn-1
vi vi +1 vi vi +1
For each i = 2, . . . , n − 1, at least one of the pairs v1 , vi+1 and vi , vn is nonadjacent, since
otherwise, hv1 , v2 , . . . , vi , vn , vn−1 , . . . , vi+1 , v1 i would be a Hamiltonian cycle in G, as shown
on the right. This means that if (ai,j ) is the adjacency matrix for G, then a1,i+1 + ai,n ≤ 1,
for i = 2, . . . , n − 2.
Thus,
n−1
X n−1
X
deg(x) + deg(y) = a1,i + ai,n
i=2 i=2
n−1
X n−2
X
= a1,2 + a1,i + ai,n + an−1,n
i=3 i=2
n−2
X n−2
X
=1+ a1,i+1 + ai,n + 1
i=2 i=2
n−2
X
=2+ (a1,i+1 + ai,n )
i=2
≤2+n−3=n−1
Proof: Choose any two nonadjacent vertices u and v. By Proposition 8.2.7, the result of
adding an edge between vertices u and v would be a Hamiltonian graph. Thus, there must
be a Hamiltonian path from u to v. ♦
Corollary 8.2.10: ex (n, Pn ) = n−1
2 .
Chromatic Number
It is trivial to calculate extremal numbers for some extreme values of chromaticity. It is
easy to calculate them for nearly extreme values.
Proposition 8.2.11: Let Pk be the property that a graph has chromatic number k.
(i) ex(n, P2 ) = 0
n
(ii) ex(n, Pn ) = 2 −1
j 2
k
n
(iii) ex(n, P3 ) = 4
♦
EXERCISES for Section 8.2
8.2.1 List all 5-vertex graphs that are extremal for non-planarity.
8.2.2 List all 6-vertex graphs that are extremal for non-planarity.
8.2.10 Calculate the extremal number for the property of having diameter 2.
348 Chapter 8 ANALYTIC GRAPH THEORY
The two most common models — the only ones we consider here — are the uniform
random graph, in which the number m of edges is specified and all labeled graphs with m
edges are equally likely, and the Bernoulli random graph, in which the number of edges is
not fixed and each edge is equally likely to occur.
Rényi random graph, is the equiprobable space of all n-vertex, m-edge, labeled simple
n −1
graphs, each having probability ( 2 )
m .
5
Example 8.3.1: There are (32) = 120 random graphs in G(5, 3). Figure 8.3.1 shows the
four possible isomorphism types.
p=1/2 p=1/6 p=1/12 p=1/4
60 20 10 30
Below each type is the number of labeled graphs corresponding to that type. Above each
is the probability that a random G(5, 3) graph will be of that type. We see that although
each graph is equally likely, some isomorphism types are more likely than others. Notice
also that the probabilities for a G(5, 3) graph having 0, 1, and 2 isolated vertices are
30 1 80 2 10 1
= , = , and =
120 4 120 3 120 12
respectively. Thus, the expected number of isolated vertices is
1 2 1 5
0· +1· +2· =
4 3 12 6
Figure 8.3.2 shows the two isomorphism types of 4-vertex, 4-edge graphs. There are three
G(4, 4) graphs of type A and 12 of type B. Graphs of type A have no K3 and graphs of type
B each have one. Thus, the value of the double sum above is 12, and, hence, the expected
12
number of copies of K3 in a G(4, 4) graph is 15 = 45 .
A B
Remark: Example 8.3.2 underscores the distinction between labeled graphs, which are the
elements of the probability space G(4, 4), and the isomorphism types of unlabeled graphs.
Each of the 15 elements of G(4, 4) is equally likely, but a graph of isomorphism type B is 4
times as likely as the one of type A. If both were equally likely, then the expected number
of copies of K3 would have been 21 .
The next result establishes a general formula for the expected number of copies of K3
in the random graph G(n, m). The proof is based on a simple interchange of the order of
summation.
Theorem 8.3.3: The expected number of copies of the complete graph K3 in a random
(n)−1
graph in G(n, m) is n3 · m
3 · .
2
3
Proof: Arguing as in Example 8.3.2, we calculate that the expected number of copies of
K3 in a random graph in G(n, m) equals
n−1 X X
2 true(uv, uw, vw ∈ EG )
m
G∈G(4,4) u,v,w∈VG
n
For each of the 3 triples u, v, w ∈ {1, . . . , n}, the inner sum has constant value
n
2 −3
m−3
It follows that the expected number of copies is
n n−1 n n
n − 3 n 2 − 3 ! m! 2 − m !
· 2 · 2 = · ·
(m − 3)! n2 − m ! n
3 m−3 3 3 2 !
n
−
n m! 3 !
= · · 2 n
3 (m − 3)! 2 !
n−1
n m
= · · 2 ♦
3 3 3
352 Chapter 8 ANALYTIC GRAPH THEORY
Remark: If we evaluate the formula of Theorem 8.3.3 for m ≥ n + 1, we see that the
expected number of copies of K3 is greater than 1.
The proof of Theorem 8.3.3 has an immediate generalization.
Theorem 8.3.4: The expected number of copies of the complete graph Ks in a random
graph G ∈ G(n, m) is
n−1
n m
· s · 2s ♦ (Exercises)
s 2 2
graphs.
Example 8.3.4: The probability that a random graph is a complete graph in G(n, p) is
n
p( 2 ) . Of course, in the Erdös-Rényi space G n, n2 , the probability is 1 (since the complete
VG . For any particular one of these triples {u, v, w}, the probability that all of the edges
uv, uw, vw are present is p3 . Thus, the probability that not all of them are present is
1 − p3 . Since the presence of edges in G is probabilistically independent, it follows that the
probability that none of these triples is spanned by a K3 is
(1 − p3 )bn/3c
whose limit is 0 as n → ∞ for p > 0, because 1 − p3 < 1. Consequently, the probability that
at least one of the triples is spanned by K3 has limiting value 1 as n → ∞ for p > 0.
♦
The proof of Theorem 8.3.6 has an immediate generalization.
Theorem 8.3.7: For any integer s ≥ 1, almost every graph contains Ks .
♦ (Exercises)
354 Chapter 8 ANALYTIC GRAPH THEORY
Corollary 8.3.8: Let H be any fixed simple graph. Then almost every graph contains a
copy of H.
Proof: This follows immediately from Theorem 8.3.7, because the graph H is a subgraph
of some complete graph Ks . ♦
Proposition 8.3.9: In almost every graph, every pair of vertices is joined by a path of
length 2.
Proof: Let G ∈ G(n, p), let u, v ∈ VG , and let X{u,v} be the event that there is no path of
length 2 between u and v. For each vertex w ∈ VG − {u, v}, the probability that not both
of the edges uw and vw are present is 1 − p2 . Thus, the probability that there is no path of
length 2 joining u and v is
pr(X{u,v} ) = (1 − p2 )n−2
The probability that there is at least one pair of vertices with no path of length 2 between
them is
[ X n
pr X{u,v} ≤ pr(X{u,v} ) = (1 − p2 )n−2
2
{u,v} {u,v}
Proof: The probability that an arbitrary subset of t vertices disjoint from both U and V
r s t
n−r−s property is (p (1 − p) ) . The n − r − s vertices in U ∪ V
has this adjacency-nonadjacency
can be partitioned into t t-subsets of vertices that are pairwise disjoint and disjoint
from both U and V , with perhaps a few vertices left over. The probability that none of
these t-subsets has the adjacency-nonadjacency property is
b n−r−s c
1 − (pr (1 − p)s )t t
Proof: Let u and v be an arbitrary pair of vertices and let X{u,v} be the event that there
are not k internally disjoint paths of length 2 between u and v. It follows from Proposition
8.3.11, with r = 2, s = 0, and t = k, that
n−2
pr(X{u,v} ) = (1 − p2k )b k c
Section 8.3 Random Graphs 355
The probability that there is at least one pair of vertices that do not have k internally
disjoint paths of length 2 between them is
[ X n
pr X{u,v} ≤
pr(X{u,v} ) = (1 − p2 )n−2
2
{u,v} {u,v}
Proof: By definition of the Bernoulli space G(n, p), the random variable |EG | has the
binomial distribution with · n2 trials and success rate p, and, hence, has the stated mean
8.3.10 Prove that for every k, the chromatic number of almost every graph is larger than
k.
8.3.11 Prove Theorem 8.3.4, that the expected number of copies of the complete graph Ks
in a random graph G ∈ G(n, m) is
n−1
n m
· s · 2s
s 2 2
8.4.16 A simple graph is constructed with 12 vertices and 36 randomly selected edges.
Calculate the expected number of triangles.
8.4.17 A simple graph is constructed with eight vertices and seven randomly selected edges.
Calculate the probability that it is connected.
Glossary
almost every graph, property that holds for: a property P such that the probability
that a random graph G ∈ G(n, p) has property P has the limiting value of 1 as n → ∞,
for p > 0.
Bernoulli random graph G(n, p): the probability space of all labeled simple graphs on
n vertices, where each of the n2 possible edges occurs with probability p; thus, the
n
probability of each m-edge graph in G(n, p) is pm (1 − p)( 2 )−m .
Erdös-Rényi random graph G(n, m): the equiprobable space of all n-vertex, m-edge,
n −1
labeled simple graphs, each having probability (m
2) ; also called the uniform random
graph.
extremal function ex(n, P) for a property P : the function whose value is the num-
ber of edges in an n-vertex extremal graph for that property.
extremal n-vertex graph for a property P : a largest n-vertex simple graph that does
not have property P , where “largest” means having the maximum number of edges.
Iverson truth function: the function
(
1 if assertion A is true
true(A) =
0 if assertion A is false
sufficiently large graph, with respect to a graph property P : a graph whose num-
ber of edges, relative to its number of vertices, is large enough that every graph with
as many edges must have the specified property.
tournament: a complete graph in which each edge is assigned a direction.
Turán graph Tn,r : the complete r-partite graph on n vertices whose partite sets are as
nearly equal in cardinality as possible.
uniform random graph G(n, m): the equiprobable space of all n-vertex, m-edge, labeled
n −1
simple graphs, each having probability ( 2 )
m ; also called the Erdös-Rényi random
graph.
Chapter 9
INTRODUCTION
This chapter explores the interplay between a graph’s symmetry and the number of
different colorings of that graph. For example, if one coloring of a graph can be obtained from
another coloring by a simple rotation of the graph, then the two colorings are equivalent. The
symmetries of a graph are precisely defined using the graph’s automorphism group, along
with its vertex- and edge-permutations. The equivalence classes under these group actions
determine when colorings are equivalent. We develop the basic mathematical concepts and
tools to enumerate these equivalence classes.
Although we restrict our attention mainly to simple graphs, the methods studied in this
chapter are applicable to general graphs.
359
360 Chapter 9 GRAPH COLORINGS AND SYMMETRY
The Sets AutV (G) and AutE (G) are Permutation Groups
definition: A collection P of permutations on the same set of objects is closed under
composition if for every pair π1 , π2 ∈ P , the composition π1 π2 is in P .
definition: Let P be a non-empty collection of permutations of the finite set of objects
Y such that P is closed under composition. Then the set P together with set Y is called a
permutation group and is denoted [P : Y ].
terminology: The permutation group is said to act on the set Y .
definition: The full symmetric group ΣY on a set Y is the collection of all permutations
on Y .
Theorem 9.1.1: The set Aut(G) of all automorphisms of a simple graph G acts as a
permutation group on VG and on EG .
Proof: It is straightforward to verify that:
1. the composition of two structure-preserving vertex-permutations is a structure-
preserving vertex-permutation, and
2. the inverse of a structure-preserving vertex-permutation is a structure-preserving
vertex-permutation.
Thus, AutV (G) and AutE (G) are permutation groups. (see Exercises) ♦
definition: Let [P : Y ] be a permutation group. The orbit of an object y ∈ Y is the set
of all objects z ∈ Y such that π(y) = z for some permutation π ∈ P .
Section 9.1 Automorphisms of Simple Graphs 361
AutE (K1,3 ) = {(a)(b)(c), (a b c), (a c b), (a)(b c), (b)(a c), (c)(a b)}
a
x
c b
w v
u v
π π V (u) π V (v )
e πE ( e )
Example 9.1.3: Aut(Cn ) The cycle graph Cn can be represented as the 1-skeleton of a
regular n-gon in the plane, as illustrated in Figure 9.1.3 for n = 5. All of its automorphisms
can be realized as rotations and reflections of a regular n-gon. For instance, rotation 72◦
clockwise corresponds to the automorphism of C5 whose vertex-permutation is (u v w x y)
and whose edge-permutation is (a b c d e). Also, reflection through the vertical axis of
symmetry corresponds to the automorphism whose vertex-permutation is (u)(v y)(w x)
and whose edge-permutation is (a e)(b d)(c). In general, a regular n-gon has n rotations
and n reflections, which gives the graph Cn a total of 2n automorphisms.
e a
y v
d b
x c w
Figure 9.1.3 The cycle graph C5 has five rotations and five reflections.
e j a
y v
i t f
d g b
h
x c w
Figure 9.1.4 The wheel graph W5 has five rotations and five reflections.
Section 9.1 Automorphisms of Simple Graphs 363
Example 9.1.5: Aut(Km,n ) Let Km,n have vertex bipartition R ∪ S, with m = |R| and
n = |S|, and let τ ∈ Aut(Km,n ). Then, since τ preserves nonadjacency, two vertices on one
side of the bipartition must map to two vertices on that same side or to two vertices on the
other side. It follows that either τ (R) = R and τ (S) = S, or else the bijection τ swaps R
and S (i.e., τ (R) = S and τ (S) = R).
If m 6= n, then τ (R) = R and τ (S) = S is the only possibility. Thus, τ permutes the
elements of set R and permutes the elements of set S. That is, τ = ρ ⊕ σ, where ρ ∈ ΣR
and σ ∈ ΣS , and
ρ(u), if u ∈ R
(ρ ⊕ σ)(u) =
σ(u), if u ∈ S
Conversely, for each pair of permutations ρ ∈ ΣR and σ ∈ ΣS , ρ⊕σ is a structure-preserving
vertex-permutation of Km,n . Therefore, if m 6= n, then |AutV (Km,n )| = m!n!.
If m = n, then τ ∈ Aut(Kn,n ) is either a permutation of the form ρ ⊕ σ or is a vertex
bijection that swaps R and S. Moreover, each of the (n!)2 vertex bijections that swap R
and S is structure-preserving, since every vertex in R is adjacent to every vertex in S. Thus,
|Aut(Kn,n )| = 2(n!)2 .
Figure 9.1.5 The bipartite graph K3,5 has 3!5! = 720 automorphisms.
(c) u u (d) x xd du u
a a
w w a a
w w
b b d d x x b b
c c c c
v v y ye ev v
x x
(e) (f)
u u d d
u u
a ac c
a ac c
v v b b w w
v v w w
y ye e b b f f z z
u u x x u u a a v v
(g) (h)
a aw dw d
b b e e d d b b
c c f f
v v v vy y x x c c w w
364 Chapter 9 GRAPH COLORINGS AND SYMMETRY
9.1.2 Redraw the graph so that as many automorphisms as possible are represented by
symmetries of the drawing.
(a) (b)
(c) (d)
K1 ,4
9.1.5 Suppose that K3 and K4 are amalgamated at a vertex. How many automorphisms
does the resulting graph have? How many vertex-orbits and edge-orbits?
9.1.6 Suppose that an edge is deleted from K5 . How many automorphisms does the resulting
graph have? How many vertex-orbits and edge-orbits?
9.1.7 Suppose that the complete graph K3 is joined to the edgeless graph on five vertices.
How many automorphisms does the resulting graph have? How many vertex-orbits and
edge-orbits?
Section 9.2 Equivalence Classes of Colorings 365
9.1.8 How many automorphisms are in the group Aut(K2,3,4 ), where K2,3,4 is the complete
tripartite graph with tripartition consisting of a 2-vertex, 3-vertex, and 4-vertex subset?
How many vertex-orbits and edge-orbits?
9.1.9 How many automorphisms are in the group Aut(CLn ), where CLn is the n-vertex
circular ladder graph (§1.1)? How many vertex-orbits and edge-orbits?
terminology: The P-equivalence classes are also called coloring classes, or P-orbits.
That is, any two P-equivalent colorings are in the same P-orbit.
notation: The set of P-orbits of Colk (Y ) is denoted {Colk (Y )}P . Thus, |{Colk (Y )}P }|
equals the number of non-equivalent (≤k)-colorings.
notation: The identity permutation on a set Y is often denoted ε.
• For any y ∈ Y , ε(y) = y.
• For any permutation in π ∈ ΣY , επ = π = πε.
366 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Example 9.2.1: Let Y = {x, y, z} be the vertex-set VC3 of the 3-cycle graph C3 , shown on
the left in Figure 9.2.1, and let P = {ε, (x y z), (x z y)} be the group of vertex-permutations
corresponding, respectively, to the 0◦ , 120◦ , and 240◦ clockwise rotations of C3 . The set
Col2 (VC3 ), which consists of eight (≤ 2)-colorings, is shown on the right in Figure 9.2.1.
Each (≤2)-coloring f : VC3 → {1, 2} is represented graphically using white (color 1) and
black (color 2) vertices, and also as the string f (x)f (y)f (z).
These eight vertex-colorings are partitioned into four P-orbits of Col2 (VC3 ) given by
[Col2 (VC3 )]P = {{111}, {211, 121, 112}, {122, 212, 221}, {222}}.
y
fx fyfz 111 211 121 112
x z 1 = white
2 = black
122 212 221 222
Figure 9.2.1 The four coloring classes of VC3 under rotational equivalence.
Remark: Intuitively, the reason why the colorings in one class, e.g., {211, 121, 112}, are
equivalent is because rotating a drawing of the graph superimposes one of these colorings
automorphically onto another with correct color matching. This intuitive notion is what is
formally represented by the condition g = f π.
Proof: The mapping πY C is a bijection, because it has an inverse, namely, the rule g 7→
gπ −1 . ♦
definition: The mapping πY C : Col(Y ) → Colk (Y ) defined (in Corollary 9.2.3) by the
rule f 7→ f π is called the induced permutation action of π on Colk (Y ).
Section 9.2 Equivalence Classes of Colorings 367
notation: To distinguish between the action of a permutation π on a set Y and its induced
action on the set Colk (Y ) of colorings of Y , we let πY denote its action on Y and πY C its
action on Colk (Y ). When there is no risk of confusion, the subscripts Y and Y C may both
be omitted.
definition: Let P = [P : Y ] be a permutation group acting on a set Y . The collection
PY C = [P : Colk (Y )] of induced permutations on Colk (Y ) is called the induced permu-
tation group.
notation: When it is necessary to distinguish between the group that acts on the set Y
and the group that acts on the set Colk (Y ), the respective notations PY and PY C are used.
Example 9.2.1, continued: Figure 9.2.2 below depicts the disjoint-cycle form of each
permutation πY and also of the corresponding induced permutation πY C acting on the set
Col2 (Y ) = {111, 112, 121, 122, 211, 212, 221, 222}.
(x) (y) (z) (111) (211) (121) (112) (122) (212) (221) (222)
y
x z
(x y z) (111) (211 121 112) (122 212 221) (222)
y
x z
(x z y) (111) (211 112 121) (122 221 212) (222)
Notice that two colorings are P-equivalent (i.e., in the same P-orbit) if the two colorings
appear in a cycle of at least one induced permutation.
Example 9.2.2: The two vertex-colorings in Figure 9.2.3 are equivalent, because a 180◦ -
rotation or a reflection of one graph drawing through its horizontal axis corresponds to a
graph automorphism.
Example 9.2.3: The two edge-colorings in Figure 9.2.4 are equivalent. Reflection of the
graph through its vertical or horizontal axis corresponds to an automorphism that maps
one coloring onto the other.
Figure 9.2.5 shows how the (full) set Col2 (VK4 −K2 ) of 16 vertex-(≤2)-colorings is partitioned
into nine AutV (K4 − K2 )-orbits.
Example 9.2.4, continued: Since the graph K4 − K2 has five edges, there are, ignoring
equivalences, 25 = 32 edge-colorings that use two or fewer colors. Figure 9.2.6 shows a
representative of each of the 14 AutE (K4 − K2 )-orbits of Col2 (EK4 −K2 ). Next to each
representative edge-(≤2)-coloring of K4 − K2 in the figure is the number of colorings in its
orbit.
1 4 1
2 4 2 2
2 4 2 2
1 4 1
Figure 9.2.6 Representatives and sizes of the 14 orbits of Col2 (EK4 −K2 ).
Figure 9.2.7 The six vertex-colorings of P5 with three white and two black.
By symmetry between the colors white and black, there are also six coloring classes with
three black vertices and two white, three coloring classes with four black and one white,
and one class with all five vertices black, for a total of 20 AutV (P5 )-orbits of colorings. In
other words, there are 20 non-equivalent vertex-(≤2)-colorings.
Example 9.2.6: The number of coloring classes of edge-(≤2)-colorings of P5 is 10, accord-
ing to the following inventory:
1 with all four edges light
1 with all four edges dark
10 total = 2 with three edges light and one edge dark
2 with one edge light and three edges dark
4 with two edges light and two edges dark
370 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Since there are three choices for the color that is used twice, there are 18 edge-3-colorings.
Since P5 has eight edge-2-colorings with exactly two colors, according to the inventory in
Example 9.2.6, and there are three choices for which two of the three colors are used, it
follows that there are 24 edge-(≤ 3)-colorings that use exactly two of the three available
colors. Finally, there are three ways to color all the edges with exactly one of the three
available colors. The following inventory summarizes the number of non-equivalent edge-
(≤3)-colorings of P5 .
18 using all three colors
45 total = 24 using exactly two of the three colors
3 using only one color
(a) K3 (b) P4
(g)
Section 9.3 Burnside’s Lemma 371
Stabilizer of an Object
definition: Let P = [P : Y ] be a permutation group, and let y ∈ Y . The stabilizer of y
is the subgroup Stab(y) = {π ∈ P | π(y) = y}.
Thus, the stabilizer of an object y is simply the subgroup comprising all the permutations
whose disjoint-cycle form contains the 1-cycle (y).
Example 9.3.1: The analysis of K4 − K2 and Aut(K4 − K2 ) continues.
Stab(u) = {ε, π1 }
Stab(v) = {ε, π2 }
Stab(w) = {ε, π1 }
Stab(x) = {ε, π2 }
Example 9.3.2: That stabilizers of different objects need not have the same number of
permutations is illustrated by AutE (K4 − K2 ).
Symmetry π ∈ AutE (G)
identity ε = (a)(b)(c)(d)(e)
a b
refl. thru vert. axis π1 = (e)(a b)(c d)
refl. thru horiz. axis π2 = (e)(a c)(b d) e
180◦ rotation π3 = (e)(a d)(b c) c d
Example 9.3.4: The edge-permutations in AutE (K4 − K2 ) have the following fixed-point
sets
Fix((a)(b)(c)(d)(e)) = {a, b, c, d, e} a b
Fix((e)(a b)(c d)) = {e} e
Proof: Consider a matrix whose rows are indexed by the objects of the set Y and whose
columns are indexed by the permutations in P , and whose entry in row y and column π is 1
if π(y) = y, but 0 otherwise. Then for each y, the summand on the left side of the equation
is the sum of row y (i.e., the number of 1s), and the summand on the right side is the sum
of column π. The equation simply asserts that the sum of the row sums of the matrix equals
the sum of the column sums. ♦
Example 9.3.5: In AutV (K4 − K2 ), the sum of the stabilizer sizes (from Example 9.3.1)
is X
|Stab(y)| = 2 + 2 + 2 + 2 = 8
y∈AutE (K4 −K2 )
and the sum of the sizes of the fixed-vertex-sets (from Example 9.3.3) is
X
|Fix(π)| = 4 + 2 + 2 + 0 = 8
π∈P
Section 9.3 Burnside’s Lemma 373
Example 9.3.6: In AutE (K4 − K2 ), the sum of the stabilizer sizes (from Example 9.3.2)
is, X
|Stab(y)| = 1 + 1 + 1 + 1 + 4 = 8;
y∈AutE (K4 −K2 )
and the sum of the sizes of the fixed-edge-sets (from Example 9.3.4) is
X
|Fix(π)| = 5 + 1 + 1 + 1 = 8
π∈P
|P |
|Stab(y)| =
|orbit(y)|
The orbits of AutV (K4 − K2 ) are {u, w} and {v, x}, both of cardinality 2. All the stabilizers
are of cardinality 2, as determined in Example 9.3.1. The cardinality of the group AutV (K4 −
|P |
K2 ) is 4. Thus, for each vertex, the equation |Stab(y)| = |orbit(y)| takes the form 2 = 42 .
The orbits of AutE (K4 − K2 ) are {e} and {a, b, c, d}. For each of the edges a, b, c, and d,
|P |
the equation |Stab(y)| = |orbit(y)| becomes 1 = 44 . For edge e, it becomes 4 = 41 .
Remark: Although the next lemma is expressed in terms of the orbits of permutation
groups, it is really a fact about set partitions.
374 Chapter 9 GRAPH COLORINGS AND SYMMETRY
=n
♦
Example 9.3.9: The left side of the equation in Lemma 9.3.3 is the sum of the reciprocals
of the sizes of the cells in a partition. The partition depicted at the left of Figure 9.3.1 has
three cells. When the objects in the cells are converted to the reciprocals of the cell sizes,
as on the right, it becomes apparent that the sum of the fractions within each cell must be
equal to 1. Thus, the sum of all the reciprocals must equal the number of cells, as on the
right side of the equation in Lemma 9.3.3.
1
1 1 1
5
1 3 5 2
1 1
3 1
1 5 1 5
3 5 2
Proof: Lemmas 9.3.1, 9.3.2, and 9.3.3 establish the following chain of equalities, which
proves Burnside’s lemma.
1 X 1 X
|Fix(π)| = |Stab(y)| (by Lemma 9.3.1)
|P | |P |
π∈P y∈Y
1 X |P |
= (by Lemma 9.3.2)
|P | |orbit(y)|
y∈Y
1 X 1
= |P |
|P | |orbit(y)|
y∈Y
X 1
=
|orbit(y)|
y∈Y
The orbits are {u, w} and {v, x}. Since |AutV (K4 − K2 )| = 4, Burnside’s lemma implies
correctly that the number of orbits is 2 = 8/4.
Example 9.3.11: AutE (K4 − K2 ) has four automorphisms. The sum of the sizes of their
fixed-point sets, previously calculated in Example 9.3.6, is
X
|Fix(π)| = 5 + 1 + 1 + 1 = 8
π∈P
The orbits are {a, b, c, d} and {e}. Since |AutV (K4 − K2 )| = 4, Burnside’s lemma implies
correctly that the number of orbits is 2 = 8/4.
376 Chapter 9 GRAPH COLORINGS AND SYMMETRY
(a) The graph of Exercise 9.1.1(a) (b) The graph of Exercise 9.1.1(b)
(c) The graph of Exercise 9.1.1(c) (d) The graph of Exercise 9.1.1(d)
(e) The graph of Exercise 9.1.1(e) (f) The graph of Exercise 9.1.1(f)
(g) The graph of Exercise 9.1.1(g) (h) The graph of Exercise 9.1.1(h)
(i) The graph of Exercise 9.1.2(a) (j) The graph of Exercise 9.1.2(b)
(k) The graph of Exercise 9.1.2(c) (l) The graph of Exercise 9.1.2(d)
(m) P4 (n) P4 +K1
(o) The graph of Exercise 9.1.5 (p) The graph of Exercise 9.1.6
(q) P4 + K2
(a) The graph of Exercise 9.1.1(a) (b) The graph of Exercise 9.1.1(b)
(c) The graph of Exercise 9.1.1(c) (d) The graph of Exercise 9.1.1(d)
(e) The graph of Exercise 9.1.1(e) (f) The graph of Exercise 9.1.1(f)
(g) The graph of Exercise 9.1.1(g) (h) The graph of Exercise 9.1.1(h)
(i) The graph of Exercise 9.1.2(a) (j) The graph of Exercise 9.1.2(b)
(k) The graph of Exercise 9.1.2(c) (l) The graph of Exercise 9.1.2(d)
(m) P4 (n) P4 +K1
(o) The graph of Exercise 9.1.5 (p) The graph of Exercise 9.1.6
(q) P4 + K2
Section 9.4 Cycle-Index Polynomial of a Permutation Group 377
where zk is a formal variable and rk is the number of k-cycles in the disjoint-cycle form of
π.
Example 9.4.1: The permutation π = (1 7 9 3)(2 4 8 6)(5) has cycle-structure monomial
ζ(π) = z1 z42 , because π has one 1-cycle and two 4-cycles.
Example 9.4.2: The cycle structure of all the vertex-permutations in AutV (K4 − K2 ) is
given in the following table.
Cycle
Symmetry π ∈ AutV (G) structure u
4
identity (u)(v)(w)(x) z1
refl. thru vert. axis (u)(w)(v x) z12 z2 v x
Example 9.4.3: The cycle structure of all the edge-permutations in AutV (K4 − K2 ) is
given in the following table.
Cycle
Symmetry π ∈ AutE (G) structure a b
identity (a)(b)(c)(d)(e) z15 e
refl. thru vert. axis (e)(a b)(c d) z1 z22 c d
refl. thru horiz. axis (e)(a c)(b d) z1 z22
180◦ rotation (e)(a d)(b c) z1 z22
Cycle-Index Polynomial
The last two examples used the actions of Aut(G) on VG and EG , but the remaining
examples use the induced actions of Aut(G) on VG on the sets Colk (VG ) and Colk (EG ).
378 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Example 9.4.5: From Example 9.4.3, it follows that the cycle-index polynomial of the
permutation group AutE (K4 − K2 ) is
1 5
z1 + 3z1 z22
ZAutE (K4 −K2 ) (z1 , z2 ) =
4
Again, substituting 2 for both variables, we obtain
1 5
2 + 3 · 2 · 22 = 14
ZAutE (K4 −K2 ) (2, 2) =
4
which was shown in Figure 9.2.6 to be the number of AutE (K4 − K2 )-orbits of edge(≤2)-
colorings.
That the substitutions in the last two examples yielded the number of coloring classes
is not a coincidence.
Proof: A (≤k)-coloring c is fixed by πY C if and only if within each cycle of πY , all the
objects are assigned the same color by c. Thus, there are k independent choices possible for
each cycle of πY . Therefore, |Fix (πY C )| = k n , where n is the number of cycles in πY . But
k n is precisely the value of ζ(πY )(k, . . . , k). ♦
Example 9.4.6: Recall from Figure 9.2.2 the induced permutations from the action of
Aut(C3 ) on Col 2 (C3 ). The following table illustrates the application of Lemma 9.4.1.
Proof: Applying Burnside’s lemma to the induced permutation group PY C yields the equa-
tion
1 X
|{Col k (Y )}P | = |Fix (πY C )|
|PY C |
πY C ∈PY C
1 X
= ζ(πY )(k, . . . , k) by Lemma 9.4.1
|PY C |
πY C ∈PY C
1 X
= ζ(πY )(k, . . . , k)
|PY |
πY ∈PY
= ZP (k, . . . , k)
♦
Example 9.4.7: Aut(P5 ) has two automorphisms, the identity and the reflection, and the
cycle-index polynomial for AutV (P5 ) is given by
1 5
ZAutV (P5 ) (z1 , z2 ) = (z + z1 z22 )
2 1
380 Chapter 9 GRAPH COLORINGS AND SYMMETRY
9.4.2 Make a table, as in the continuation of Example 9.2.1, for the automorphism group
Aut(G) of the given graph. In the first column, list all the automorphisms (as vertex-
permutations), and in the second column, list the corresponding induced permutations on
Col 2 (VG ). In the strings that code the colorings, the left-to-right order of the symbols should
correspond to lexicographic order of the vertex-names.
(a) The graph of Exercise 9.1.1(a) (b) The graph of Exercise 9.1.1(b)
(c) The graph of Exercise 9.1.1(c) (d) The graph of Exercise 9.1.1(d)
(e) The graph of Exercise 9.1.1(e)
9.4.3 Make a table, as in the continuation of Example 9.2.1, for the automorphism group
Aut(G) of a given graph. In the first column, list all the automorphisms (as edge-
permutations), and in the second column, list the corresponding induced permutations
on Col 2 (EG ). In the strings that code the colorings, the left-to-right order of the symbols
should correspond to lexicographic order of the edge-names.
(a) The graph of Exercise 9.1.1(a) (b) The graph of Exercise 9.1.1(b)
(c) The graph of Exercise 9.1.1(c) (d) The graph of Exercise 9.1.1(d)
(e) The graph of Exercise 9.1.1(e)
Counting Necklaces
Example 9.5.1: Consider the set of 4-beaded necklaces that can be constructed using only
black beads and white beads. This set can be modeled as the coloring classes of vertex-(≤2)-
colorings of the cycle graph C4 (i.e., the AutV (C4 )-orbits of Col 2 (VC4 )). Figure 9.5.1 shows
all the possible kinds of colorings.
It is straightforward to verify that the cycle-index polynomial for AutV (C4 ) is given by
1 4
z1 + 2z12 z2 + 3z22 + 2z4
ZAutV (C4 ) (z1 , z2 , z3 , z4 ) =
8
Applying Theorem 9.4.2, we have
1 4
2 + 2 · 22 · 2 + 3 · 22 + 2 · 2 = 6
ZAutV (C4 ) (2, 2, 2, 2) =
8
382 Chapter 9 GRAPH COLORINGS AND SYMMETRY
r u
b t d
a f
c e
s v
The bowtie BT has eight automorphisms. The corresponding vertex- and edge-
permutations, along with their cycle structures, are given in the table below.
Cycle Cycle
π ∈ AutV (BT ) structure π ∈ AutE (BT ) structure
(r)(s)(t)(u)(v) z15 (a)(b)(c)(d)(e)(f ) z16
(r s)(t)(u)(v) z13 z2 (a)(b c)(d)(e)(f ) z14 z2
3
(r)(s)(t)(u v) z1 z2 (a)(b)(c)(d e)(f ) z14 z2
2
(rs)(t)(u v) z1 z2 (a)(b c)(d e)(f ) z12 z22
(r u)(t)(s v) z1 z22 (a f )(b d)(c e) z23
(r v s u)(t) z1 z4 (a f )(b e c d) z2 z4
(r u s v)(t) z1 z4 (a f )(b d e c) z2 z4
2
(r v)(t)(s u) z1 z2 (a f )(b e)(c d) z23
Example 9.5.3, continued: Similarly, by Theorem 9.4.2, the number of edge(≤ 2)-
colorings of BT is obtained as follows:
1 6
ZAutE (BT ) (2, 2, 2, 2) = (2 + 2 · 24 · 2 + 22 · 22 + 2 · 23 + 2 · 2 · 2) = 21
8
Confirming this calculation by drawings is left as an exercise.
Proof: If the two colors used for coloring the edges of Kn are regarded as present and
n
absent, then the full set, of 2( 2 ) edge-(≤2)-colorings is in one-to-one correspondence with
n
the set of 2( 2 ) n-vertex simple graphs, and hence, the coloring classes correspond to the
isomorphism types. ♦
Proposition 9.5.1 suggests the following strategy for counting the isomorphism types
of the n-vertex simple graphs. The strategy is illustrated by a series of propositions for
counting the isomorphism types of simple graphs with four and five vertices.
z14 : 1 automorphism.
Only the identity permutation has this cycle structure.
z12 z2 : 6 automorphisms.
There are 42 = 6 ways to choose two vertices for the 2-cycle.
z1 z3 : 8 automorphisms.
There are 43 = 4 ways to choose three vertices for the 3-cycle and (3 − 1)! = 2
Remark: The full set of (≤2)-colorings of EK4 has cardinality 64 (each of the six edges
can be colored present or absent), and each of the 11 graphs in Figure 9.5.5 represents an
isomorphism class. For instance, the second graph in the top row represents a class with six
graphs, since there are six ways to choose the two endpoints of the present edge. The sizes
of these 11 isomorphism classes must, of course, sum to 64 (see Exercises).
386 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Proof: By using the same approach as in the calculation of the number of 4-vertex simple
graphs, it can be shown that
1
ZAutV (K5 ) (z1 , . . . , z5 ) = (z 5 + 10z13 z2 + 15z1 z22 + 20z12 z3 + 30z1 z4 + 20z2 z3 + 24z5 )
120 1
Therefore,
1
z110 + 10z14 z23 + 15z12 z24 + 20z1 z33 + 30z2 z42 + 20z1 z3 z6 + 24z52
ZAutE (K5 ) (z1 , . . . , z6 ) =
120
and, accordingly,
1
210 + 10 · 27 + 15 · 26 + 20 · 24 + 30 · 23 + 20 · 23 + 24 · 22
ZAutE (K5 ) (2, . . . , 2) =
120
= 34 ♦
Remark: The same process can be repeated for any number of vertices.
Example 9.6.1: According to Figure 9.2.5, the inventory of coloring classes of vertex-(≤2)-
colorings of the graph K4 − K2 is given by
1 4 white 0 black
2 3 white 1 black
3 2 white 2 black
2 1 white 3 black
1 0 white 4 black
388 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Example 9.6.2: According to Figure 9.2.6, the inventory of coloring classes of edge-(≤2)-
colorings of the graph K4 − K2 is
1 5 light 0 dark
2 4 light 1 dark
4 3 light 2 dark
4 2 light 3 dark
2 1 light 4 dark
1 0 light 5 dark
Pölya Substitution
Pölya ([Po37]) sharpened the application of Theorem 9.4.2 to enumeration by devising
a special way of substituting a k-variate polynomial (instead of the number k) into the
cycle-index polynomial.
definition: Let Zp (z1 , . . . , zn ) be the cycle-index polynomial for a permutation group
P = [P : Y ] on a set Y of n objects. The Pölya substitute of order k for the cycle-index
variable zj is the k-variate polynomial
Example 9.6.4: Returning to Example 9.4.5, the cycle-index polynomial for AutE (K4 −
K2 ) is
1 5
z1 + 3z1 z22
ZAutE (K4 −K2 ) (z1 , z2 ) =
2
Thus, the Pölya-inventory polynomial of order 2 is
1
(x1 + x2 )5 + 3(x1 + x2 )(x21 + x22 )2
ZAutE (K4 −K2 ) (x1 + x2 ) =
4
1
= (x51 + 5x41 x2 + 10x31 x22 + 10x21 x32 + 5x1 x42 + x52
4
+ 3x51 + 3x41 x2 + 6x31 x22 + 6x21 x32 + 3x1 x42 + 3x52 )
= x51 + 2x41 x2 + 4x31 x22 + 4x21 x32 + 2x1 x42 + x52
1
(x1 + x2 )6 + 9(x1 + x2 )2 (x21 + x22 )2 + 8(x31 + x32 )2 + 6(x21 + x22 )(x41 + x42 )
24
1
= x6 + 6x51 x2 + 15x41 x22 + 20x31 x32 + 15x21 x42 + 6x1 x52 + x62
24 1
+ 9x61 + 18x51 x2 + 27x41 x22 + 36x31 x32 + 27x21 x42 + 18x1 x52 + 9x62
+ 8x61 + 16x31 x32 + 8x62
+6x61 + 6x41 x22 + 6x21 x42 + 6x62
= x61 + x51 x2 + 2x41 x22 + 3x31 x32 + 2x21 x42 + x1 x52 + x62
In complete agreement with Figure 9.5.5, this means that the inventory of 4-vertex simple
graphs is as follows:
1 graph with 0 edges
1 graph with 1 edge
2 graphs with 2 edges
3 graphs with 3 edges
2 graphs with 4 edges
1 graph with 5 edges
1 graph with 6 edges
390 Chapter 9 GRAPH COLORINGS AND SYMMETRY
(g) (h) x
t a y
w
b c
s z
(i) (j)
9.7.2 Write the vertex orbits and edge orbits of the graph below. (Use the notation uv for
an edge between vertices u and v.) Calculate the cycle index of the vertex automorphism
group.
a f
e
b g
d
c h
9.7.3 List all six automorphisms that preserve directions on the arcs of the digraph be-
low, and write the cycle index for this automorphism group. Use it to count the possible
isomorphism types of simple digraphs on three vertices. Verify your answer with drawings.
0
8
1
7
2
6 3
5 4
392 Chapter 9 GRAPH COLORINGS AND SYMMETRY
Glossary
automorphism of a graph G: an isomorphism from the graph G to itself.
automorphism group Aut(G) of a graph G: the permutation group of all automor-
phisms of the graph G.
(≤k)-coloring of a set Y : a coloring that uses k or fewer colors. The set of all (≤ k)-
colorings of Y is denoted Col k (Y ).
coloring class for a set with a coloring: a subset of all objects of like color.
cycle-index (polynomial) of a permutation group P: the polynomial
1 X
ZP (z1 , . . . , zn ) = ζ(π)
|P |
π∈P
cycle structure of a permutation: the number of cycles of each length in its disjoint-
cycle form.
cycle-structure monomial of a permutation π: the multivariate monomial ζ(π) =
Qn rj
k=1 zj where zk is a formal variable and where rk is the number of k-cycles in the
disjoint cycle form of π.
edge-automorphism group AutE (G) of a graph G: the permutation group whose ob-
ject set is EG and whose permutations are the edge functions of the automorphisms of
the graph G.
Fix(π) = {y ∈ Y | π(y) = y}
ALGEBRAIC SPECIFICATION OF
GRAPHS
INTRODUCTION
Exploiting the algebraic symmetries of a large network can be crucial to realizing its most
efficient computational and communications capabilities. In a specification by incidence
table of a graph with, say, a million vertices, algebraic symmetries and other global features
can be obscured by the sheer mass of details of the specification. Using a voltage graph
to specify a network puts the symmetries into focus. A voltage graph is a vertex-labeled
digraph whose edges are labeled by algebraic elements. If G is a large graph with n-fold
symmetry, then the vertex-set and edge-set of the voltage graph used to specify G are
smaller than those of G by a factor of n. Many interesting large graphs are specifiable by
a voltage graph with only one vertex. The general idea is that incipient patterns designed
into the voltage graph are developed and replicated throughout the larger graph it specifies.
Voltage graphs were first developed for application to the construction of surface imbeddings
of graphs with geometric symmetry. Application of voltage graphs to algebraic specification
of parallel-processor networks is more recent.
Some algebraic results used in this chapter are summarized in Appendix A.4.
395
396 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Example 10.1.1: The vertices and edges of the directed 8-cycle graph on the left in Figure
10.1.1 are labeled with subscripts 0, 1, 2, and 3. One pattern in this labeled 8-cycle is that
the u-vertices and the v-vertices alternate, as do the d-arcs and the e-arcs. Notice that every
d-arc is directed from a u-vertex to a v-vertex, and every e-arc is directed from a v-vertex
to a u-vertex. This pattern is represented by the directed 2-cycle on the right side of Figure
10.1.1.
u0 v0
d0
e3 e0
v3 u1
d
d3 d1 u
e v
u3 v1
e2 e1
d2
v2 u2
The subscript patterns of the 8-cycle are yet to be specified. Observe that the subscript on
the head vertex of each d-arc of the 8-cycle is the same as the subscript on the tail vertex,
and that the subscript on the head of each e-arc is obtained by incrementing the subscript
on the tail vertex by 1 (mod 4). Labeling the 2-cycle arcs d and e by 0 and 1, respectively, as
shown in Figure 10.1.2, is used to specify when and how the subscripts change. The labels
0 and 1 are referred to as voltages.
0
d
u
e v
1
Using a smaller digraph to specify the directed 8-cycle in this example is facilitated by the
following three features of the labeling of the directed 8-cycle:
1. All the subscripts on vertex- and edge-names in the 8-cycle are selected from the same
algebraic structure; in particular, they are all integers modulo 4.
2. The number of u-vertices, the number of v-vertices, the number of d-edges, and the
number of e-edges are all exactly the same; in particular, there are four of each.
3. Every d-arc in the 8-cycle has a u-tail and a v-head, while every e-arc has a v-tail
and a u-head. The vertex subscripts of the e-arcs increment by 1 (mod 4), while the
vertex subscripts of the d-arcs remain the same.
Voltage Assignments
When applying voltage graphs to the problem of writing a convenient-sized specification
for a large graph or digraph, one starts by imagining a system of vertex labels and edge
labels (for the large graph object) that has the three kinds of features described in Example
10.1.1, and one then tries to design the appropriate voltage graph. In contrast, the definitions
start with a voltage graph and use it to give details of the large graph that it specifies. In
Section 10.4, B-voltage graphs will be defined for any group B. In this section, we restrict
our attention to the cyclic groups. For any positive integer n ≥ 2, the cyclic group Zn is
the set {0, 1, 2, . . . , n − 1} such that for any i, j ∈ Zn , i + j means addition mod n, 0 is the
additive identity, and the additive inverse of an element i is −i = n − i, since i + (n − i) = 0
(mod n).
~ is a label that is an element in Zn .
definition: A Zn -voltage on an arc of a digraph G
definition: A Zn -voltage assignment on a digraph G ~ is a function α : E ~ → Zn that
G
labels every arc e ∈ EG~ with a Zn -voltage.
D E
definition: A Zn -voltage graph is a pair G, ~ α : E ~ → Zn such that G ~ is a digraph
G
~ A Zn -voltage graph is also called a cyclic voltage
and α is a Zn -voltage assignment on G.
graph.
terminology: One might be inclined to use the term “voltage digraph” since a voltage
graph is a labeled digraph, but “voltage graph” is the standard term.
D E
definition: The voltage group of a voltage graph G, ~ α : E ~ → Zn is the group Zn
G
from which the voltages are assigned.
Example
D 10.1.1,Econtinued: The labeled 2-cycle in Figure 10.1.2 is the Z4 -voltage graph,
~ α : E ~ → Z4 , where G
G, ~ is the directed 2-cycle, and α is defined by α(d) = 0 and
G
α(e) = 1. The 8-cycle in Figure 10.1.1 is the digraph it specifies. The labels on the vertices
and edges in the 8-cycle are formed from the vertex- and edge-labels in the 2-cycle, with
the elements of the voltage group Z4 as subscripts.
D E
definition: The covering digraph of the Zn -voltage graph G, ~ α : E ~ → Zn is the
G
graph G~ α = (V α , E α ) with
V α = {vj | v ∈ VG
~ and j ∈ Zn } E α = {ej | e ∈ EG
~ and j ∈ Zn }
such that if arc e in the voltage graph is directed from vertex u to vertex v, then the arc ej in
the covering digraph is directed from vertex uj to vertex vj+α(e) (addition in the subscript
is mod n).
398 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Example 10.1.2: A Z3 -voltage graph and its covering digraph are illustrated in Figure
10.1.3. Observe that the drawing must specify that the voltages are in Z3 . When a voltage
graph is specified by a drawing, the voltage group is indicated in the drawing itself, as
shown. In the covering digraph, each label from the Z3 -voltage graph appears 3 times, with
each of the elements of Z3 as a subscript. Each b arc is directed from a u vertex to a v
vertex having the same subscript. Each c arc is also directed from a u vertex to a v vertex,
but the subscript of the u vertex is incremented by 1 (mod 3) to get the subscript of the v
vertex. Similarly, the subscripts of the vertices of the d arcs increment by 2 (mod 3).
u2 b2 v2
d1
c3
0
b
u c 1 v b1
u1 v1
d0 c2
d
2 c0
voltages in Z3 d2
u0 b0 v0
α
1. For each vertex v ∈ VG
~ , the vertex-set {vj | j ∈ Zn } in the covering graph G is called
the (vertex) fiber over v and is denoted ṽ.
2. For each edge e ∈ EG , the edge-set {ej |j ∈ Zn } in the covering graph Gα is called the
(edge) fiber over e and is denoted ẽ.
Example 10.1.3: Now suppose that the voltages in the voltage graph of Figure 10.1.2
are regarded as elements of Z3 , rather than Z4 . Then the covering vertex-set and covering
edge-set are
e2 e0
0
d v2 u1
u
e v
1
d2 d1
voltages in Z3
e1
u2 v1
If the voltages were regarded as elements of Z5 (making it a Z5 -voltage graph), then the
covering digraph would be a 10-cycle. Moreover, each vertex fiber and each edge fiber would
have five elements.
D When
notation: E it is clear what voltage group is intended, the voltage graph may be
~
denoted G, α .
D E
Proposition 10.1.1: Let G, ~ α be a Zn -voltage graph. Then there are n times as many
~ α as in G.
vertices and edges in the covering digraph G ~
Proof: There are n vertices vj and n edges ej , respectively, in each vertex fiber ṽ and edge
~ α for each vertex v ∈ V ~ and for each edge e ∈ E ~ , respectively.
fiber ẽ of G ♦
G G
D E
Proposition 10.1.2: Let G, ~ α be a Zn -voltage graph, and let v be any vertex of G. ~
Then the outdegree and indegree of each vertex vj in the fiber ṽ are equal to the outdegree
and indegree, respectively, of vertex v.
~ there is exactly one arc ej in the fiber ẽ directed
Proof: For each arc e directed from v in G,
from vj in the covering digraph. For each arc d directed from some vertex w to v, there is
exactly one arc dk directed from wk to vj , where k + α(d) = j. That is, there is exactly one
arc dj−α(d) in d˜ directed to vj . ♦
400 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
u2 b2 v2
d1
c3
0
b
u c 1 v b1
u1 v1
d0 c2
d
1 c0
voltages in Z3 d2
u0 b0 v0
D E
Proposition 10.1.3: Let G, ~ α be a Zn -voltage graph. If (H,
~ β) is the Zn -voltage graph
D E
~ α) by simply reversing the direction of an arc in G,
obtained from (G, ~ α and negating
the voltage on that arc, then the covering graph H β is identical to the covering graph Gα .
D E D E
Proof: Let d be an arc in G, ~ α , directed from u to v and suppose H, ~ β is the Zn -voltage
graph obtained by reversing the direction of d and assigning it the voltage β(d) = −α(d).
This alteration in the voltage graph only affects the arcs in the d-fiber, and its effect on those
arcs is to change the names and directions, without changing the vertex pairs involved. That
is, for i = 0, . . . , n − 1, an arc di from ui to vi+α(d) in G~ α , corresponds to an arc di+α(d)
in H~ β from vi+α(d) to ui+α(d)+β(d) = ui that still joins the same two vertices. Thus, the
underlying graphs are identical. ♦
The following proposition and its proof further illustrate the usefulness of de-emphasizing
edge directions in voltage graphs.
~ αi is a Zn -voltage graph such that G is bipartite, then the
Proposition 10.1.4: If hG,
α
covering graph G is bipartite.
Proof: Let (U, W ) be the bipartition of G. Then every edge in the covering graph joins
some vertex ui with u ∈ U to a vertex wj with w ∈ W . Thus, the vertices of the covering
graph are bipartitioned, so that one part is the union of the vertex fibers over vertices in U
and the other part is the union of the vertex fibers over vertices in W . ♦
Section 10.1 Cyclic Voltages 401
Remark: In this chapter, discussion often focuses on the underlying graph of a digraph.
However, including arc directions in the drawing makes it easier to verify its correctness.
u2 b2 v2
d1
c3
a2 a1 e1 e2
0
b e
1 c 1 b1
u v u1 v1
1 c2
a d d0
1 c0
ao d2 eo
voltages in Z3
u0 b0 v0
review from §1.1. For any set S ⊆ {1, 2, . . . , n − 1}, the circulant graph circ(n : S) has
vertex-set Zn , and two vertices i and j are adjacent if and only if there is a number s ∈ S
such that i + s = j mod n or j + s = i mod n.
Remark: Every circulant graph can be specified using only integers between 1 and (n+1)/2
in the set S, due to the fact that i + s = j mod n if and only if j + (n − s) = i mod n.
Thus, the integers s and n − s in S create exactly the same edges in the graph.
Sometimes a voltage graph has only one vertex, so that all the arcs are self-loops. These
digraphs are called bouquets, denoted Br , if there are r self-loops. When it is possible to
specify a graph or digraph with a one-vertex voltage graph, this is optimal, in the sense
that it is the smallest possible specification.
In Example 10.1.3, we saw how changing the voltage group changes the covering graph.
The following example is another illustration.
Example 10.1.6: Suppose voltages of 1 and 2 are assigned to the two arcs in the bouquet
B2 , as shown in Figure 10.1.7. If the voltage group is Z5 , then this Z5 -voltage graph specifies
the complete graph K5 ∼ = circ(5 : 1, 2). Observe that self-loop d has voltage 1, and that in
traversing the 5-cycle d0 , d1 , d2 , d3 , d4 arising from edge d, the subscript increases by 1 at
a time. Similarly, the self-loop e has voltage 2, and in traversing the 5-cycle e0 , e2 , e4 , e1 ,
e3 , arising from edge e, the subscript increases by 2 at a time.
402 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
v0
d4 d0
1 2 v4
e4 v1
d v e e3 e0
d3 e2 e1 d1
voltages in Z5
d2
v3 v2
If the voltages are in Z7 , then the covering graph is K7 − C7 ∼= circ(7 : 1, 2), as shown
in Figure 10.1.8. This time, a 7-cycle arises from edge d, and in traversing it, the subscript
increases by 1 at a time. Similarly, a 7-cycle arises from edge e, and in its traversal, the
subscript increases by 2 at a time.
v0
d6 d0
v6 v1
e6
1 2 e5 e0
d5 d1
d v e
e1
e4
v5 v2
voltages in Z7 e2 d2
d4 e3
d3
v4 v3
When the voltages are in Z6 , then the covering graph is K6 − 3K2 ∼ = circ(6 : 1, 2), as
shown in Figure 10.1.9. This time, a 6-cycle arises from edge d, and in traversing it, the
subscript increases by 1 at a time. However, two 3-cycles arise from edge e, and in the
traversal of either of them, the subscript increases by 2 at a time.
v0 v1
d0
d5 e5 e0 d1
1 2
v5 v2
d v e e4 e1
d4 e3 e2 d2
voltages in Z6
d3 v3
v4
The next proposition generalizes the cycle generation that occurs in Example 10.1.6. Its
proof is left as an exercise.
Section 10.1 Cyclic Voltages 403
D E
Proposition 10.1.5: In a Zn -voltage graph G, ~ α , let e be a self-loop at vertex v with
voltage k. Then the subgraph induced on the edges e0 , e1 , . . . , en−1 in the covering graph
n
Gα is the disjoint union of gcd(n,k) -cycles.
v0 v1 v0 v1
3 v5 v2 v5 v2
v
1
voltages in Z6
v4 v3 v4 v3
convention: In the last few examples, the arcs in the voltage graph were distinguished
by using different graphic designs. This made it easier to distinguish the arc fibers in the
covering graph. With this graphic-design convention, it is not necessary to label the arcs in
the voltage graph or its covering digraph, though it is sometimes convenient to use both.
Proposition 10.1.6: Let the distinct positive integers x1 , . . . , xr , each less than n2 , be
assigned as Zn -voltages to the self-loops of the bouquet Br . Then the covering graph is
isomorphic to the circulant graph circ(n : x1 , . . . , xr ).
11 2
5 10 3
v
1
4
voltages in Z13 9
8 5
7 6
Example 10.1.8: With the bidirected-arc convention in effect, the complete graph K2n ∼ =
circ(2n : 1, 2, . . . , n) is specified by a bouquet Bn with Z2n -voltages 1, 2, . . . , n on its self-
loops. Figure 10.1.12 illustrates this for K6 .
0 1
1
5 2
2
3
voltages in Z6
4 3
Self-loops and multi-arcs are common in voltage graphs, and do not necessarily generate
self-loops and multi-edges in the covering graph. The next proposition establishes precisely
when they do.
D E
Proposition 10.1.7: Let G ~ α be the covering digraph of a Zn -voltage graph G,
~ α .
Proof:
♦
definition: A Zn -voltage graph hG, αi is simple if G has no self-loops with voltage 0,
no multi-arcs with the same voltage, and no oppositely directed arcs whose voltages are
additive inverses.
u0
u1
v1 v2
u 1 v
0
1
3 v0 v3
u3
voltages in Z4
u2
Corollary 10.1.8: Using the bidirected-arc convention, the covering graph Gα is a simple
graph if and only if the Zn -voltage graph hG, αi is simple.
Proof: By Proposition 10.1.7, the only case we need to consider is when n is even and
~ has a self-loop with voltage n . In this case, the oppositely directed arcs in G
G ~ α that it
2
generates are combined into one edge by the bidirected arc convention. ♦
406 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
(a) 0 0 (b) b b 1 1
b b c c
u u v v
c c1 1 u u v v
1 1
d d d d
2 2 1 1
voltages in Z4in Z4
voltages voltages in Z5 in Z5
voltages
(c) b b d d (d) b b d d
0 c 0 3 3 1 1 2 2
u
1 1c u v v
1 1u c uv
c
v
voltages
voltages
in Z5 in Z5 voltages
voltages
in Z5 in Z5
(e) u u (f) u u
0 d0 d 1 d1 d
c 1 1 c 1 1
c c
v v b wb w v v b wb w
1 1 1 1
voltages in Z2 in Z2
voltages voltages in Z2 in Z2
voltages
c c c c
(g) 0 0u 1 1 (h) 0 0
b u bv v 1 1u b u bv v
voltages
voltages
in Z3 in Z3 voltages
voltages
in Z3 in Z3
1 1 1 1
(i) u bu
bv v (j) u bvbu v
e f 1e cf 1 c e f
0e
cf
0
c
0 0 0 0 0 0 1 1
x dx d x xd dw w
1 1w w 1 1
voltages in Z2 in Z2
voltages voltages in Z2 in Z2
voltages
b b 3 3 b b 3 3
(k) (l)
c c2 2 c c2 2
u u v v u u v v
1 1
d1 d d1 d
0 0 0 0
e e e e
voltages in Z4 in Z4
voltages voltages in Z5 in Z5
voltages
10.1.5 How can the voltage graph specifying K2n−1 be modified so that it specifies the
octahedral graph On ?
Section 10.2 Specifying Connected Graphs 407
Example 10.2.1: The covering digraph in Figure 10.2.1, has three components: two 6-
cycles and a 12-cycle. It may not be surprising that covering graph is not connected, given
that the voltage graph is not connected. However, the upper component of the Z4 -voltage
graph generates two disjoint cycles in the covering graph, whereas the lower component
generates only one.
u2 v3 u3 v0
u0 w1 u1 w2
2 1 2
u v w 2 v1 w3 v2 w0
y1 z2 x1 y2 z3
1 1
x0 x2
y z
1
voltages in Z4
z1 y0 x3 z0 y3
Cayley Graphs
The simplest Zn -voltage graphs have a single vertex, i.e., they are bouquets. Remember
that in this case, it is common not to label that vertex and to simply label the vertices in
the covering graph with the elements of Zn .
definition: A subset X of the cyclic group Zn is a generating set if every element of Zn
is a sum of elements of X. We say X generates Zn .
Example 10.2.2: Suppose X = {x1 , x2 , . . . , xr } is a subset of Zn . We can also view X
as the set of nonnegative integers less than n, and in this context, compute the greatest
common divisor d = gcd(n, x1 , x2 , . . . , xr ). X is a generating set of Zn , if and only if d = 1.
This observation follows from the fact that the greatest common divisor of a set of numbers
equals the smallest positive number that can be formed by taking sums and differences of
numbers in the set. Since gcd(6, 2, 3) = 1, the set {2, 3} generates Z6 . Since gcd(6, 2) = 2,
the set {2} does not generate Z6 ; only 0, 2, and 4 can be obtained as a sum of 2s.
408 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
VC(Z
~ n ,X) = Zn and ~ n ,X) = {xi | x ∈ X, i ∈ Zn }
EC(Z
respectively. Arc xi joins vertex i to vertex i + x. (Bidirected arcs are sometimes used for
the generator n2 , when n is even, as described in §10.1.)
The Cayley graph C(Zn , X) is the underlying graph of the Cayley digraph C(Z ~ n , X).
Example 10.2.3: Figure 10.2.2 shows the Cayley digraph for the cyclic group Z6 with
generating set {1} and the corresponding Cayley graph, which is clearly isomorphic to the
circulant graph circ(6 : 1).
0 10 1 0 10 1
15 11 15 11
5 2 5 2
1
14 12 14 12
voltages in Z6 13 13
4 3 4 3
Example 10.2.4: Figure 10.2.3 shows the Cayley digraph for the cyclic group Z6 with
generating set {2, 3} and the corresponding Cayley graph, which is isomorphic to the cir-
culant graph circ(6 : 2, 3). This illustrates that a non-minimum generating set for a group
may be used in a Cayley-graph specification of a graph.
0 1 0 1
5 2 5 2
2
3
voltages in Z6
4 3 4 3
Figure 10.2.3 ~ 6 , {2, 3}) and Cayley graph C(Z6 , {2, 3}).
The Cayley digraph C(Z
Section 10.2 Specifying Connected Graphs 409
Example 10.2.5: Figure 10.2.4 shows a covering graph, which is isomorphic to the circu-
lant graph circ(6 : 2). It is not a Cayley graph since {2} does not generate Z6 . Notice that
this graph is not connected. Since X is a generating set of Zn , a Cayley graph C(Zn , X) is
always a connected graph, as will be shown in the next subsection.
0 1 0 1
5 2 5 2
2
voltages in Z6
4 3 4 3
b0 c3 c1 b2
u v 2 d0 d2
1
a w1 x0 x2 w3
1 b c 1
d u3 v2 v0 u1
1 a2 e0 e2 a0
w x
b1 c2 c0 b1
d3 d1
voltages in Z4
w0 x3 x1 w2
voltage 2, generates two bidirected arcs e1 /e3 and e0 /e2 . The signed walk W1 =
~ α traverses the arcs: a3 , e3 , and a1 in the digraph G
hu0 , −a3 , v3 , e3 , v1 , a1 , u2 i in G ~ α , where
arc a3 is traversed in the opposite direction. The signed walk W2 = hu, −a, v, e, v, a, ui in
the Z4 -voltage graph traverses arc a in the opposite direction, followed by arcs e and a in
the normal direction.
410 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Example 10.2.6, continued: The signed walk W2 = hu, −a, v, e, v, a, ui in the Z4 -voltage
graph of Figure 10.2.5, has net voltage nv(W2 ) = −1 + 2 + 1 = 2.
D E
definition: Suppose G, ~ α is a Zn -voltage graph.
Remark: As with directed walks, a signed walk in a simple digraph may be specified as a
vertex sequence.
Example 10.2.7: In G ~ α from Figure 10.2.6, the u0 -u1 signed walk hu0 , v2 , v3 , u1 i projects
1
onto the signed walk hu, −f, v, e, v, f, ui, which has net voltage −2 + 1 + 2 = 1; the u0 -v1
signed walk hu0 , v2 , v1 i projects onto the signed walk hu, −f, v, −e, vi, which has net voltage
−2 − 1 = −3 = 1; and the v0 -v1 signed walk hv0 , v1 i projects onto the signed walk hv, e, vi,
which has net voltage 1.
Section 10.2 Specifying Connected Graphs 411
u3 u0 u2
1 2
e e
v v1 v2 v
f f
2 1
v0 v3 v0
u u
voltages in Z4 voltages in Z4
u2 u1 u1
G1 G1α G2
.
Figure 10.2.6 A Z4 -voltage graph with a connected covering digraph.
D E
Proposition 10.2.3: If G, ~ α is a Zn -voltage graph and W is a vi -wj signed walk in G
~α
D E
~ α with net voltage nv(π(W )) = j − i.
then π(W ) is a v-w signed walk in G,
Proof: Again, we use induction on the length of the signed walk W . If the length is 1, then
W = hv, δe, wi, where δ = ±1. By Proposition 10.2.3, if δ = 1, then W̃ = hvi , ei , wj i, where
j = i + α(e) and if δ = −1, then W̃ = hvi , −ej , wj i, where j = i − α(e), which establishes
the base.
SupposeDthat Ethe result holds for signed walks of length n − 1. Any signed walk W of
length n in G,~ α is the concatenation W = W1 ◦W2 of a signed v-u walk W1 of length n−1
with a signed u-w walk W2 of length 1. By the induction hypothesis, there is a signed walk
W̃1 from vi such that π(W̃1 ) = W1 and by Proposition 10.2.3, W̃1 ends at ui+nv(W1 ) . By
the base case, there is a signed walk W̃2 from ui+nv(W1 ) such that π(W̃2 ) = W2 . Therefore,
π(W̃1 ◦ W̃2 ) = W . ♦
412 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
u3 u0 u2 u3
2
e
v1
v1 v2 v v2
f
1
v0 v3 v0
u
v3
voltages in Z4
u2 u1 u1 u0
G1α G2 G2α
.
Figure 10.2.7 A Z4 -voltage graph with a non-connected covering digraph.
D E
Proposition 10.2.5: Let G, ~ α be a Zn -voltage graph. The covering digraph G ~ α is con-
~ is connected and there is a closed signed walk in G
nected if and only if G ~ with net voltage
1.
Proof: Suppose G ~ α is connected and let v and w be any two vertices in G. ~ Since G ~ α is
connected, there is a signed v0 -w0 walk in G ~ , which projects onto a signed v-w walk in
α
~ by Proposition 10.2.4. Therefore, G
G, ~ is connected. Also, there is a signed walk in G ~α
from v0 to v1 , which projects onto a closed signed walk from v in G ~ with net voltage 1, by
Proposition 10.2.3.
D E
Now suppose G, ~ α is connected and has a closed signed walk W1 from a vertex v with net
voltage 1. Let vi and wj be two vertices in G ~ α . Since G
~ is connected, there is a v-w signed
~
walk W2 in G. Let t = nv(W2 ). Let W be the concatenation of (j − i − t) copies of W1 with
W2 . By Proposition 10.2.4, there is a signed walk W̃ in G ~ α from vi such that π(W̃ ) = W .
Moreover, nv(W ) = (j − i − t) · 1 + t = j − i, and hence, W̃ is a signed walk in G ~ α from vi
to wj , by Proposition 10.2.2. Since, this is true for any two vertices vi and wj in G ~ α , the
covering digraph is connected. ♦
Section 10.2 Specifying Connected Graphs 413
Example 10.2.1, continued: The Z4 -voltage graph from Figure 10.2.1, reprinted in Figure
10.2.8, has two components and therefore we expect at least two components in its covering
graph. The closed walk hx, y, z, xi has net voltage 1, and so the lower component of the
Z4 -voltage graph generates a single component of the covering graph. However, there is
no closed signed walk on the upper component of the Z4 -voltage graph, and so the upper
component generates more than one component in the covering graph.
u2 v3 u3 v0
u0 w1 u1 w2
2 1 2
u v w 2 v1 w3 v2 w0
y1 z2 x1 y2 z3
1 1
x0 x2
y z
1
voltages in Z4
z1 y0 x3 z0 y3
.
Figure 10.2.8 A Z4 -voltage graph with a 3-component covering digraph.
By definition, every Cayley graph is the covering graph of a bouquet, whose voltages
generate Zn . Showing that the conditions of Proposition 10.2.5 are met would prove the
following corollary, and it is left as an exercise.
Corollary 10.2.6: Every Cayley graph is connected.
Proof: If a circulant graph is a Cayley graph, then it must be connected, since every
Cayley graph is connected (by Corollary 10.2.6). Conversely, suppose a circulant graph
circ(n : x1 , x2 , . . . , xr ) is connected. By definition, circ(n : x1 , x2 , . . . , xr ) is the covering
graph of a Zn -voltage graph hBr , αi, where α assigns each voltage xi to one of the self-loops
in Br . Also, we may assume 1 ≤ x1 < x2 < · · · < xr ≤ (n + 1)/2. Since, circ(n : x1 , . . . , xr )
is connected, there is a signed walk in the voltage graph with net voltage 1. Since {1}
generates Zn , X = {x1 , x2 , . . . , xr } does also. Therefore, circ(n, X) is isomorphic to the
Cayley graph C(Zn , X). ♦
Figure 10.2.9 is a Venn diagram showing the relationships among Cayley graphs, cir-
culant graphs, and the covering graphs of Zn -voltage graphs with just one vertex (i.e.,
bouquets).
Connected Graphs Non-connected Graphs
Simple Graphs
Circulant graphs
Cayley graphs
Non-simple Graphs
Derived graphs
of
Zn-voltage graphs
< Br , α >
Induced Colorings
D E
definition: Suppose G, ~ α is a Zn -voltage graph and π is the projection from G
~ α to
~ If f : V (G) → C is a vertex-coloring of G, the induced vertex-coloring of G
G. ~ α is
α 0
f ◦ πV : V (G ) → C. If g : E(G) → C is an edge-coloring of G, then the induced
~ α is g ◦ πE : E(Gα ) → C 0 .
edge-coloring of G
Gα Gα
f ° πV g ° πE
πV πE
f g
G C G C'
Example 10.3.1: The underlying graph of the Z3 -voltage graph in Figure 10.3.2 is a com-
plete graph on three vertices. The (black, grey, white) vertex 3-coloring of G induces a
proper vertex 3-coloring of the covering graph Gα .
The proper (solid, long-dash, short-dash) edge 3-coloring of G induces a proper edge
3-coloring of Gα .
1 1
w1
u0 v0
u 1
1
v1 u2
1 1
1 1
w2 w0
1
v w
voltages in Z3 v2
1 u1 1
1
α
< G, α > G
D E
Figure 10.3.2 ~ α and their induced colorings of G
Colorings of G, ~ α.
416 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Proof:
♦
The following corollary is an immediate consequence of Proposition 10.3.1.
D E
Corollary 10.3.2: If G,~ α is a Zn -voltage graph with no self-loops, then
Voltage-colorings
D E
If G,~ α is a Zn -voltage graph, then we can obtain a vertex n-coloring of the covering
graph by using Zn as the color-set.
D E
definition: Suppose G, ~ α is a Zn -voltage graph. The voltage-coloring of Gα is the
vertex n-coloring α̃ : V (Gα ) → Zn , where α̃(vi ) = i.
Example 10.3.2: Using the same Z3 -voltage graph from Figure 10.3.2, the voltage-coloring
gives a proper 3-coloring of the covering graph, as shown in Figure 10.3.3. In the voltage
graph, the voltages on arcs incident on a vertex x show the relationship of the color of a
vertex xi in the fiber x̃ to the colors of its neighbors. For example, a vertex ui in the fiber
over u has color i and its neighbors all have color i + 1 (mod 3). For a vertex vi in the fiber
above v, one neighbor has color i − 1 (mod 3) and one has color i + 1 (mod 3). All the
neighbors of a vertex wi in the fiber over w are colored i − 1 (mod 3).
Section 10.3 Zn -Voltage Graphs and Graph Colorings 417
1
1 1
0 w1 0
u0 v0
u 1
1
1 v1 u2 2
1 1
1 1
w2 w0
1
v w
2
voltages in Z3 0
1 u1 v2 1
1
1 2
α
< G, α > G
D E
Figure 10.3.3 ~ α and the voltage-coloring of G
A Z3 -voltage graph G, ~ α.
D E
Proposition 10.3.3: Suppose G, ~ α is a Zn -voltage graph. The voltage-coloring, α̃(vi ) =
~ has no voltage assignments equal to 0.
i, is a proper vertex-coloring of Gα if and only if G
Proof: If e is an arc in G ~ directed from v to w with voltage equal to 0, then for any i ∈ Zn ,
ei is an arc in G ~ α from vi to wi+α(e) = wi . Since α̃(vi ) = i = α̃(wi ), α̃ is not a proper
vertex-coloring.
Conversely, suppose no arc in G ~ has voltage equal to 0, and let ei be an arbitrary arc in
~ α from vi to wi+α(e) . Since α(e) =
G 6 0, i 6= i+α(e), and so, α̃(vi ) = i 6= i+α(e) = α̃(wi+α(e) ).
Therefore, α̃ is a proper vertex-coloring of G ~ α , and hence, Gα . ♦
D E
Corollary 10.3.4: If G, ~ α is a Zn -voltage graph and G ~ has no voltage assignments equal
α
to 0, then χ(G ) ≤ n.
Irregular Colorings
A proper coloring of a graph allows one to distinguish a vertex from each of its neighbors
by its color. An irregular coloring is a proper coloring that allows one to distinguish all
vertices by looking at their closed neighborhoods.
definition: Given a vertex k-coloring f : VG → {0, . . . , k − 1} of a graph G, the color
code of a vertex v is the k-tuple fv = (fv0 , fv1 , . . . , fvk−1 ), where fvi , 0 ≤ i ≤ k − 1, is the
number of neighbors of v assigned the color i.
definition: A proper vertex-coloring f of a graph is an irregular coloring if for any two
6 f (w) or fv 6= fw .
distinct vertices v, w ∈ VG , f (v) =
Example 10.3.2: (continued) The voltage-coloring α̃ from Figure 10.3.3 and shown
below in Figure 10.3.4 with color codes is an irregular 3-coloring. Since every vertex v has
degree 2, if α̃(v) = i, then the ith coordinate of α̃v must be 0, and the other two coordinates
are 0 and 2, 1 and 1, or 2 and 0. This example achieves every possible color code for vertices
of every color, and thus has the maximum number of vertices of degree 2 possible for an
irregular 3-coloring. This was actually evident from the voltage assignments in G as we will
show.
418 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
(2, 0, 0)
1
(0, 2, 0)
1 1 (0, 1, 1)
0 w1 0
u0 v0
1 1
1 v1
(2, 0, 0)
(1, 0, 1) u2 2
1 1
w2 w0
(0, 2, 0) (0, 0, 2)
2
0
1 u1 v2 1
1
1 2
(0, 0, 2) (1, 1, 0)
Gα
D E
~ α is a Zn -voltage graph. The voltage code of a vertex v in G
definition: Suppose G, ~
is an n-tuple αv = (αv0 , αv1 , . . . , αvn−1 ), defined as follows. If n is even and i = n/2, then
αvi is the number of arcs with voltage i incident on v. Otherwise, αvi is the number of arcs
with voltage i directed from v plus the number of arcs with voltage n − i directed to v. The
voltage degree of a vertex v is the sum of the coordinates in αv .
Example 10.3.3: A voltage graph and its covering graph are shown in Figure 10.3.5. The
self-loop on vertex u has voltage 1, and it contributes 2 to the voltage degree of u, since
it adds 1 to both αu1 and αu3 . The self-loop on vertex v has a voltage of 2 = 4/2, and it
contributes 1 to the voltage degree, adding 1 only to αv2 . The voltage degree of u is 3 and
the voltage degree of v is 2, corresponding to the degrees of the vertices in the fibers over
u and v, respectively.
(1, 1, 0, 1) (1, 1, 1, 0)
u0 u1
v0 (0, 1, 0, 1)
v1
(1, 1, 0, 1) (1, 0, 1, 0)
(1, 0, 1, 0)
u v
1 2
0 v3 v2
(0, 1, 0, 1) (1, 0, 1, 0)
voltages in Z4
u3 u2
(1, 0, 1, 1) (0, 1, 1, 1)
G Gα
Proof: If n is even, and i − j = n/2, then αui−j is the number of arcs in the voltage graph
incident on u with voltage i − j. Each of these arcs that is a self-loop corresponds to a
bidirected arc in G ~ α between uj and ui , and thus, adds one to the value of α̃ui . Each arc
j
that is not a self-loop corresponds to an arc in G ~ α incident on uj and another vertex with
index i, also adding one to the value of α̃ui j . Thus, in this case, α̃ui j = αui−j .
If i − j 6= n/2, then αui−j is the number of arcs in the voltage graph directed from u with
voltage i − j plus the number of arcs in the voltage graph directed to u with voltage j − i.
In the first case, the arc corresponds to an arc in G ~ α from uj to some vertex with index i
and in the second case, it corresponds to an arc directed from a vertex with index i to uj .
In both cases, the arc in G ~ α contributes one to the value of α̃ui , and hence α̃ui = αui−j .
j j
♦
Example 10.3.3, continued: Moreover, the color codes of u0 and v0 are identical to the
voltage codes of u and v, respectively, and the color codes of ui and vi , i = 1, 2, 3, are
(αu−i , αu1−i , αu2−i , αu3−i ) and (αv−i , αv1−i , αv2−i , αv3−i ), respectively. That is, the color codes of
ui and vi are cyclic permutations of the voltage codes of u and v.
D E
Theorem 10.3.6: Suppose G, ~ α is a simple Zn -voltage graph with no voltages equal to
0, and let α̃ be the voltage-coloring of Gα .
The voltage-coloring α̃ is irregular if and only if the voltage assignment α is irregular.
Theorem 10.3.7: If a graph has an irregular k-coloring, where k ≥ 2, then the number of
vertices of degree r is at most k r+k−2
r .
Proof: Suppose f is an irregular k-coloring of a graph G with f (v) = 0 for some vertex v
of degree r. Let fv = (0, fv1 , fv2 , . . . , fvk−1 ) be one of the possible color codes for vertex v.
This color code corresponds uniquely to a binary string (shown below) of length r + k − 2
having exactly k − 2 zeros. For i = 1, . . . , k − 2, fvi is the number of consecutive ones that
immediately precede the ith zero, and fvk−1 is the number of ones following the last zero.
|1 ·{z
· · 1} 0 1| ·{z
· · 1} 0 · · · 0 |1 ·{z
· · 1}
fv1 ones fv2 ones fvk−1 ones
420 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Clearly, there are k−2 such binary strings, and hence, there are r+k−2
r+k−2
k−2 color codes for
a vertex with color 0. Since, the number of color codes for a vertex of any other color is the
same, the total number of color codes is k r+k−2 r+k−2
k−2 = k r . ♦
The following results are immediate.
k
Corollary 10.3.8: If f is an irregular k-coloring of a cycle Cn , then n ≤ k 2 .
1 1
(0, 1, 1) 1
(0, 0, 2)
voltages in Z3
(0, 0,
Figure 10.3.6 A Z3 -voltage graph with an irregular voltage assignment.
covering graph is connected, and thus, a 9-cycle, as shown in Figure 10.3.3. By Corollary
10.3.8, this is the maximum possible size for a cycle with an irregular 3-coloring.
Example 10.3.5: The voltage assignment for the Z4 -voltage graph in Figure 10.3.7 is
irregular and has no voltages equal to 0. Thus, the voltage-coloring of the covering graph
is an irregular 4-coloring of a 2-regular graph with 4 · 6 = 24 vertices, by Theorem 10.3.6.
(0, 2, 0, 0) (0, 0, 2, 0)
1 1 2 2
(0, 1, 0, 1) 1 1
(0, 0, 0, 2) (0, 1, 1, 0 ) (0, 0, 1, 1)
voltages in Z4
The voltage graph is not connected, and therefore the covering graph is not connected.
However, the net voltage of the walk going once around (counterclockwise) either of the 3-
cycles is 1. Therefore, the covering graph of each component is connected and the covering
graph of the whole voltage graph consists of two 12-cycles, as shown in Figure 10.3.8. We
1 2 1 2
2 1 3 0
3 0 1 2
2 0
1 3
3 0 2 1
0 3 0 3
can adjust the covering graph to be a cycle, rather than having two components, by noticing
that both cycles have an edge from a vertex with color 0 to a vertex with color 1. If these
edges are replaced by edges joining the two cycles, the color codes remain the same, as
shown in Figure 10.3.9. This gives us an irregular 4-coloring of a cycle with 24 vertices,
which is the bound given in Corollary 10.3.8.
1 2 1 2
2 1 3 0
3 0 1 2
2 0
1 3
3 0 2 1
0 3 0 3
Example 10.3.6: The voltage assignment for the Z5 -voltage graph in Figure 10.3.10 is
irregular and has no voltages equal to 0. Thus, the voltage-coloring of the covering graph
is an irregular 5-coloring of a 2-regular graph with 5 · 10 = 50 vertices, by Theorem 10.3.6.
However, since it is not connected, the covering graph is not connected, and so is a union
of disjoint cycles. Since the two components on the left both have an arc with voltage
one, it is possible to create one component with vertices having the same voltage codes,
by exchanging the heads of the two arcs. The two components on the left side both have
arcs with voltage 1. If we switch the head vertices of these two arcs, then this joins the two
components, as shown in Figure 10.3.11.
422 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
(0, 0, 0, 0, 2) (0, 1, 1, 0, 0) (0, 1, 0, 1, 0)
2 (0, 0, 0, 2, 0)
1
(0, 2, 0, 0, 0)
1 2 2
1 1
(0, 0, 1, 1, 0) 2 (0, 0, 2, 0, 0)
(0, 1, 0, 0, 1) 2
(0, 0, 1, 0, 1) (0, 0, 0, 1, 1)
voltages in Z5
connected, and the signed walk going once around the cycle (clockwise) has net voltage
1. Therefore, the covering graph of this new Z5 -voltage graph is a 50-cycle. The voltage-
coloring is an irregular 5-coloring (by Theorem 10.3.6) on a cycle with as many vertices as
possible (by Corollary 10.3.8).
Example 10.3.7: The voltage assignment for the Z3 -voltage graph in Figure 10.3.13 is
irregular and every vertex has voltage degree 3. Since it is connected and has a closed
signed walk with net voltage 1, the covering graph is a connected 3-regular graph on 12
vertices with an irregular 3-coloring. This satisfies the bound in Corollary 10.3.9.
(0, 3, 0) 1 (0, 2, 1)
1 1
1
1
(0, 1, 2) 1 (0, 0, 3)
voltages in Z3
2
3 1
1
1 2 2
1 1
3
2
1
2 2
3
voltages in Z6
424 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
10.3.5 Find the voltage codes for each vertex in the Z7 -voltage graph shown below. What
can you say about the covering graph and its derived coloring? Is there a connected graph
that has the same properties?
1 1 2 2 3 3
1 2 3
2 3 2
1 1 1 1 3 3
2 3 2
voltages in Z7
10.3.6 Generalize the results of Examples 10.3.5 and Exercises 10.3.3 and 10.3.4.
10.3.7 Generalize the results of Examples 10.3.4 and 10.3.6 and Exercise 10.3.5.
10.3.8 Prove Part 2 of Proposition 10.3.1.
10.3.9 Label the graph on the left with voltages in Z3 so that the covering graph is isomor-
phic to C3 × C3 , which has been drawn in two different ways on the right. Conclude that
χ(C3 × C3 ) = 3. Note that each graph is drawn on a flat torus, so that edges going off the
top of the picture, enter on the bottom, and edges leaving from the right re-enter on the
left.
~
=
10.3.10 Find the chromatic number of the graph on the right. Conclude that it is not a
covering graph for any Z3 -voltage graph defined on the graph on the left. Note that each
graph is drawn on a flat torus, so that edges going off the top of the picture enter on the
bottom, and edges leaving from the right, re-enter on the left.
Section 10.4 General Voltage Graphs 425
Remark: The following definitions are natural extensions of those for Zn -voltage graphs.
definition: Let G ~ = (V, E) be a digraph, and let B be a group. A B-voltage assignment
on G~ is a function α that assigns to every arc e ∈ E an element α(e) ∈ B. The element
α(e) ∈ B is called the voltage on e.
D E
definition: A B-voltage graph is a pair G, ~ α such that G ~ = (V, E) is a digraph, B is
a group, and α is a B-voltage assignment on G. ~
D E
definition: The voltage group of a voltage graph G, ~ α is the group B from which the
voltages are assigned.
D E
definition: The covering digraph of the regular-voltage graph G, ~ α is the directed
graph G~ α = (V α , E α ), with
such that if an arc e in a voltage graph is directed from vertex u to vertex v, then the arc
eb is directed from vertex ub to vertex vbα(e) . The covering graph is the underlying graph
of the covering digraph G~ α . It is denoted Gα .
~
definition: Let X be a generating set of size r of a group B. The Cayley digraph C(B, X)
is the covering digraph for the voltage graph hBr , αi, where Br is the bouquet with r self-
loops, and α assigns each voltage in X to one of the self-loops. The vertex-set and arc-set
~
of C(B, X) are
VC(B,X)
~ = B and EC(B,X) ~ = {xb | x ∈ X, b ∈ B}
respectively. Arc xb joins vertex b to vertex bx.
~
The Cayley graph C(B, X) is the underlying graph of the Cayley digraph C(B, X).
D E
definition: Let G, ~ α be a B-voltage graph.
α
1. For each vertex v ∈ VG
~ , the vertex-set {vb | b ∈ B} in the covering graph G is called
the (vertex) fiber over v and is denoted ṽ.
2. For each edge e ∈ EG , the edge-set {eb |b ∈ B} in the covering graph Gα is called the
(edge) fiber over e and is denoted ẽ.
definition: Bidirected-arc
D Econvention: Let e be an arc directed from vertex u to vertex
v in a B-voltage graph G, ~ α . If the voltage y on arc e has order 2, then the pair of arcs
in the covering graph directed from vertex vb to vertex vby and from vertex vby to vertex
vb is replaced by a single bidirected arc between vb and vby . The underlying graph of a
digraph with bidirected arcs has a single edge for each bidirected arc.
426 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Example 10.4.1: Figure 10.4.1 illustrates that the 3 × 4 wraparound mesh is a Cayley
graph for the group Z3 × Z4 .
20 21 22 23
01
10 11 12 13
10
00 01 02 03
notation: The notation used here for an element of a direct sum of k small cyclic groups
is a string of k digits, rather than a k-tuple. For instance, 20 stands for the element (2, 0).
This convention avoids cluttering the drawings with parentheses and commas.
Example 10.4.2: The voltage 10 in the group Z2 × Z4 has order 2, and thus produces
~ 2 × Z4 , {10, 01}).
bidirected arcs in the Cayley digraph C(Z
00 01
10 11 10
13 12 01
03 02
Example 10.4.3: The dihedral group D4 is describable as the group of rigid-body motions
on the unit square. Let r denote a 90◦ clockwise rotation and let s denote a reflection through
a vertical axis. Then the elements of D4 are {ε, r, r2 , r3 , s, rs, r2 s, r3 s}. Figure 10.4.3 shows
a Cayley digraph for D4 with generating set {r, s}.
ε r
s rs s
r3s r2s r
r3 r2
Example 10.4.4: The hypercube graph Qn can be specified as a Cayley graph for the
n
group (Z2 ) , where the generating set contains all bitstrings with exactly one 1. Since every
voltage in the generating set has order 2, every edge is a bidirected arc in the Cayley digraph,
as shown in Figure 10.4.4.
100
010
001
Remark: Examples 10.4.2, 10.4.3, and 10.4.4 specify Q3 as Cayley graph for the groups
Z2 ×Z4 , D4 , and (Z2 )3 , respectively. Finding a polynomial-time algorithm to decide whether
a given regular graph is a Cayley graph, or proving that this decision problem is NP-
complete, is a research problem. Accordingly, finding all the different ways in which a given
regular graph can be specified as a Cayley graph is often regarded as a difficult problem.
Example 10.4.5: The Petersen graph is a 3-regular graph. We leave it as an exercise to
show that it cannot be specified as a Cayley graph. It can be specified as a Z5 -voltage graph
as shown in Figure 10.4.5.
u0
v0
u4 u1
1 0 v4 v1
u v 2
v3 v2
voltages in Z5
u3 u2
Remark: Another way to express Theorem 10.4.1 is to say that the natural projection is
n-to-1, for both vertices and edges.
D E
Theorem 10.4.2: Let G, ~ α be a B-voltage graph, and let v be any vertex of G. Then
the outdegree and indegree of each vertex vj in the fiber ṽ are equal to the outdegree and
indegree, respectively, of vertex v.
Remark: Another way to express Theorem 10.4.2 is to say that the natural projection
preserves degree.
definition: A B-voltage graph hG, αi is simple if G has no self-loops with voltage the
identity, no multi-arcs with the same voltage, and no oppositely directed arcs whose voltages
are inverses.
Remark: If two self-loops in a B-voltage graph have voltages that are inverses of each
other, they are considered to be “oppositely directed arcs whose voltages are inverses.”
Corollary 10.4.3: Using the bidirected-arc convention, the covering graph Gα is a simple
graph if and only if the B-voltage graph hG, αi is simple.
definition:
D EIf W = hv1 , δ1 e1 , v2 , δ2 e2 , . . . vn−1 , δn−1 en−1 , vn i is a signed walk in a B-voltage
graph G,~ α , then the net voltage of W , denoted nv(W ), is
The next two propositions generalize Propositions 10.2.3 and 10.2.4, replacing the cyclic
group hZn , +i with the general group hB, ·i. Their proofs are essentially the same as the
proofs of Propositions 10.2.3 and 10.2.4.
D E
Proposition 10.4.4: If G, ~ α is a B-voltage graph and W is a vb -wd signed walk in G ~ α,
D E
then π(W ) is a v-w signed walk in G,~ α with net voltage nv(π(W )) = b−1 d.
D E
Proposition 10.4.5: Suppose W is a signed walk from v in a B-voltage graph G, ~ α . For
~ α of the same length as W such that
each b in B, there is a directed walk W̃ from vb in G
π(W̃ ) = W .
Section 10.4 General Voltage Graphs 429
D E
Corollary 10.4.6: Suppose G, ~ α is a B-voltage graph. If W is a closed signed walk in
~ with net voltage equal to the identity, then G
G ~ α has a closed walk W̃ of the same length
as W .
Proof: Suppose W is a closed signed walk in G ~ from vertex v with nv(W ) = ε. By Propo-
sition 10.4.5, there is a walk W̃ of the same length as W from vε . By Proposition 10.2.2,
W̃ ends at a vertex in the fiber ṽ and by 10.4.4, this terminal vertex is vε . Therefore, W̃ is
a closed walk. ♦
review from §1.2. The girth of a graph is the length of its shortest cycle.
definition: A nontrivial closed signed walk in a simple B-voltage graph is terminal if
its net voltage is the identity. A signed walk in a simple B-voltage graph is minimal if it
contains no terminal subwalks.
If a covering graph Gα is simple (using the bidirected arc convention), then a cycle
hv1 , e1 , v2 , e2 , . . . , en−1 , vn i (directions of edges ignored) corresponds uniquely to the closed
signed walk hv1 , δ1 e1 , v2 , δ2 e2 , . . . , δn−1 en−1 , vn i, where δi = 1 if ei is directed from vi to
vi+1 and δi = −1 if ei is directed from vi+1 to vi .
D E
Corollary 10.4.7: Suppose G, ~ α is a simple B-voltage graph. The girth of the covering
graph is the minimum length of all terminal walks in G ~ of length 3 or greater.
Proof: Suppose G is a Cayley graph C(B, X) with |X| ≥ 2. Let x 6= y ∈ X, and let the d
and e be the self-loops in the B-voltage graph with these voltages. If B is Abelian, then the
closed walk hd, e, −d, −ei is a terminal walk of length 4 in the B-voltage graph. The result
follows by Corollary 10.4.7. ♦
Example 10.4.5, continued: The Petersen graph has girth 5. Therefore, by Proposition
10.4.8, it cannot be specified as a Cayley graph C(Z10 , X). The only other group (up
to isomorphism) with 10 elements is the dihedral group D5 . If a Cayley graph C(D5 , X)
specifies a 3-regular graph, then either X contains one element s of order 2 (a reflection)
and one element r of order 5 (a rotation), or X contains three elements s1 , s2 , s3 of order 2
(three reflections). In the first case, rs is a reflection and so has order 2. Since rsrs = ε, the
D5 -voltage graph has a minimal, terminal walk of length 4 and so the Cayley graph has a
cycle of length 4. In the second case, the Cayley graph has no odd cycles, since the product
of an odd number of reflections is a reflection (not the identity). Therefore, the Petersen
graph is not a Cayley graph.
430 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
W1 = ha, a, ai
nv(W1 ) = (123) · (123) · (123) = ε,
W2 = hb, b, bi
nv(W2 ) = (234) · (234) · (234) = ε,
W3 = h−a, c, −bi
nv(W3 ) = (123)−1 · (13)(24) · (234)−1 = (132)(13)(24)(243) = ε.
a
b
c
Example 10.4.7: The truncated icosahedron is created by “slicing the corners off the icosa-
hedron,” creating pentagonal faces at each corner and turning the original triangular faces
into hexagons. This Archimedean solid has vertices of degree 3. Since this graph has girth
5, it cannot be specified by a Cayley graph using an Abelian group. The site specifies the
truncated icosahedron as the Cayley graph C(A5 , {(12345), (23)(45)}). It is illustrated in
Figure 10.4.7. If the two arcs in the A5 -voltage graph B2 are labeled d, e with α(d) = (12345)
and α(e) = (23)(45), then the two terminal walks in the voltage graph that generate the
faces are:
W1 = hd, d, d, d, di
nv(W1 ) = (12345)5 = ε,
W2 = h−d, e, −d, e, −d, ei
nv(W2 ) = [(12345)−1 · (23)(45)]3 = [(15432) · (23)(45)]3 = (142)3 = ε.
Section 10.4 General Voltage Graphs 431
Proof: Let arc e ∈ EG have tail u and head v. Then the endpoints of the edge eb in Gα are
ub and vbα(e) . The definition of the natural transformation asserts that ϕa (eb ) = eab , and the
definition of the voltage-graph construction prescribed that the endpoints of the edge eab
are uab and vabα(e) . The definition of the natural transformation asserts that ϕa (ub ) = uab
and ϕa (vbα(e) ) = vabα(e) . Thus, an arc e is directed from u to v if and only if ϕa (e) is
directed from ϕa (u) to ϕa (v), and hence, ϕa is a digraph homomorphism. Since ϕa has an
inverse, namely ϕa−1 , it follows that ϕa is an automorphism. ♦
Example 10.4.8: The natural transformation ϕ1 on the specified copy of K5 in Figure
10.4.8 (which is identical to Figure 10.1.7) corresponds to rotation of 2π
5 radians clockwise.
More generally, the natural transformation ϕm corresponds to a rotation of 2mπ 5 radians
clockwise.
Corollary 10.4.10: Let hG, αi be a B-voltage graph, and let v ∈ V (G). Then any two
components of the covering graph Gα that contain a vertex from the vertex fiber ṽ are
isomorphic.
Proof: Let va , vb ∈ ṽ. Then ϕba−1 is an isomorphism from the component of va to the
component of vb . ♦
432 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
v0
1 2 d0
d4 e0
v4 v1
d v e e4
e1
d3 d1
e3
voltages in Z5 e2
v3 d2 v2
(i) (ii)
Figure 10.4.8 (i) Z5 -voltages on B2 ; (ii) the specified copy of K5 .
Example 10.4.9: The natural transformation ϕ3 swaps the two components in the cover-
ing graph of Example 10.2.6, shown in Figure 10.4.9.
u0 v3 v1 u2
e a3 e1 e3 a1
b0 c3 c1 b2
u v 2 d0 d2
1
a w1 x0 x2 w3
1 b c 1
d u3 v2 v0 u1
1 a2 e0 e2 a0
w x
b1 c2 c0 b1
d3 d1
voltages in Z4
w0 x3 x1 w2
review from §2.2: A graph G is vertex-transitive if for all vertex pairs u, v ∈ VG , there
is an automorphism of G that maps u to v.
~
Proposition 10.4.11: For any group B, the Cayley digraph C(B, X) is vertex-transitive.
Proof: Let b, c ∈ B. Then the natural transformation ϕcb−1 maps vertex b to vertex c in
~ → (B, X).
C ♦
10.4.2 Draw the Cayley graph for the given group and generating set, and draw its voltage-
graph specification.
10.4.3 Draw the covering graph for the given regular-voltage graph.
c c e e c c 00 e e
(a) 02 02
(b) u b u b 00v v
11 11u d u vd 10 10 11 11 10 10
d
v 01 01 d
voltages in Z2in⊕ZZ23⊕ Z3
voltages voltages in Z2in⊕ZZ22⊕ Z2
voltages
b b c c 02
(c) u 01u 01 (d) 02
u u
00 00
c dc d d d
11 11 10 10 v v
v v e 00 ew w e
10 10
00 e
voltages
voltages in Z2in⊕ Z2 ⊕ Z2 voltages
voltages in Z3in⊕ Z3 ⊕ Z3
10.4.4 Give a geometric description of the effect produced by the given natural transfor-
mation on the covering graph of the given voltage graph.
10.4.5 For the covering graph of the given voltage graph, write the vertex-permutation and
the edge-permutation of the given natural transformation.
10.4.6 Let hG, αi be a regular-voltage graph. Prove that the composition ϕa ◦ ϕb is the
natural automorphism ϕab .
434 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Permutation-Voltage Specifications
The terminology for each detail of a permutation-voltage graph is similar to the termi-
nology for the corresponding detail of a B-voltage graph.
definition: Let P = [P : Y ] be a permutation group. A P-voltage on an edge of a digraph
is a label on that edge by a permutation π ∈ P . Any such voltage is called a permutation
voltage.
definition: A permutation-voltage assignment on a digraph G ~ = (V, E) is a function
α that labels every arc e ∈ E with a permutation voltage from some permutation group
P = [P : Y ].
definition: A permutation-voltage graph is a pair (G, ~ α) such that G
~ is a digraph and
~
α is a permutation-voltage assignment on G. A P-voltage graph is a permutation-voltage
graph with voltages in P = [P : Y ].
~ α) is the permutation
definition: The voltage group of a permutation-voltage graph (G,
group P = [P : Y ] in which the voltages are assigned.
Most often, the group for a permutation-voltage assignment is the symmetric group Σn
acting on the set {1, 2, . . . , n}. Usually, permutation voltages are written in disjoint cycle
form.
Example 10.5.1: Figure 10.5.1 shows (i) a permutation-voltage graph and (ii) the digraph
it specifies (i.e., the covering digraph).
u3 v3
d3
c2
b d b2
b3 v2
u (1 2 3) v c3
c
u2 d2
b1 c1 d1
(1 2 3) (1 2)(3)
u1 v1
(i) (ii)
Figure 10.5.1 (i) A Σ3 -voltage graph; (ii) the covering digraph.
Observe in the voltage graph that arc c joins vertex u to vertex v, and that the voltage on
arc c is the permutation (1 2 3). Observe in the covering digraph that arc c1 joins vertex
u1 to vertex v2 , since the permutation (1 2 3) maps the object 1 to the object 2. Similarly,
arc c2 joins vertex u2 to vertex v3 , since (1 2 3) maps the object 2 to the object 3, and arc
c3 joins vertex u3 to vertex v1 , since (1 2 3) maps the object 3 to the object 1.
Section 10.5 Permutation Voltages 435
D E
definition: The covering digraph of the P-voltage graph G, ~ α : E(G)
~ → P with volt-
~ α = (V α , E α ) with
ages in P = [P : Y ] is the digraph G
~ and j ∈ Y }
V α = {vj | v ∈ V (G)
~ and j ∈ Y }
E α = {ej |e ∈ E(G)
such that if an arc e in the voltage graph is directed from vertex u to vertex v, then the arc
ej in the covering graph is directed from vertex uj to vertex vα(e)(j) . The covering graph,
denoted Gα , is the underlying graph of the covering digraph G ~ α.
terminology: The terminology vertex fiber and edge fiber is used for permutation
voltage graphs, as for B-voltage graphs.
Remark: The preceding definition specifies that the subscript of the tail vertex uj always
agrees with the subscript of its arc ej . It also specifies that the subscript of the head vertex
vα(e)(j) is the object a(e)(j) to which object j is permuted by the voltage α(e) assigned to
edge e, as in Example 10.5.1.
Remark: Every regular B-voltage graph is equivalent to a permutation-voltage graph under
the regular representation of the group B as a permutation group on itself. In this sense,
permutation-voltage graphs generalize regular-voltage graphs.
v3 d2 v2 v1
d (123456) d3 e1 d1 e5 e d1 d6
v4 1
v e4 e3 e e v3 v2
2 6 v1 d2
d4 e5 d6 d3 e3 e6 e2
e (135)(4)(26)
v5 d5 e4 d4 d
v6 v4 v5 5 v6
(i) (ii) (iii)
Figure 10.5.2 A Σ6 -voltage graph and two views of its covering graph.
When the voltage graph has more than one vertex, sometimes the covering graph is
drawn so that its vertices are organized into columns according to their vertex fibers.
436 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Example 10.5.3: Figure 10.5.3(i) shows a Σ4 -voltage graph. Figure 10.5.3(ii) shows the
covering graph with its vertices in fiber columns. Figure 10.5.3(iii) shows the covering graph
with its vertices arranged around a regular octagon. This covering graph is isomorphic to
the cube graph Q3 (see Exercises).
u4 d4 v4
c4 u2 v3
b2
(13)(24) c3 d3
b u3 v3 v2 u3
(1234) b3
u c v
c2 b4
d u2 d2 v2 u1 v4
ε
b1
c1 v1 u4
u1 d1 v1
(i) (ii) (iii)
Figure 10.5.3 A Σ4 -voltage graph and two views of its covering graph.
100 110
001 011
The deBruijn digraph D2,n is not vertex-transitive (see Exercises). Thus, by Proposition
10.4.11, it cannot be specified by regular voltages on a bouquet. Of course, since a bouquet
voltage graph would provide the smallest possible specification (in the sense of the fewest
vertices), it would be desirable to use voltages on a bouquet. By using permutation voltages,
this becomes possible.
definition: The (left) cycle-shift, denoted ζn , is a permutation of the set of bitstrings
of length n, that transfers the leftmost bit of a bitstring to the right end.
δ3
000 010 101 111
ζ3
001 011
(i) (ii)
Figure 10.5.5 Specifying the deBruijn digraph D2,4 with permutation voltages.
† Prior acquaintance with wreath products is probably necessary to understand this subsection.
438 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
Remark: The graph Gα specified by any voltage-graph construction is like a set of layers
of G in which some edges cross-connect layers, instead of staying in their own layer. Volt-
age graphs are used extensively in the construction of surface imbeddings, as described in
Chapter 11. The paper [GrTu77] in which Gross and Tucker introduce permutation-voltage
graphs shows that they are sufficiently powerful to construct every possible instance of what
algebraic topologists call a covering space of a graph.
(1 2)((1
3 4)
2)(3 4) (1 3)(2
(1 4)
3)(2 4) (1 2 4)(
(1 3)
2 4)(3) ε ε
b b d d b b d d
(c) (d) (1 2 3(14 25)3 v4 5)
u uε ε v v u u v
c c c c
(e) b b u v u v (f) b b u εu vε v
c c c c
(1 2)(3)
(1 2)(3)
(1 2 3)(1 2 3) (1 3)
(1 2 4)( 2 4)(3)
(1 2)(3(14)2)(3 4)
(g) b (1 2b 3)(1 2 3) (h) b b
(1 2)(3)(1 2)(3) (1 2 4)(
(13)2 4)(3)
u cu c v v u cu c v v
d εd ε d εd ε
10.5.2 Draw the deBruijn digraph D2,4 as specified by the following permutation-voltage
graph.
ζ4 δ4
10.5.3 Prove that the covering graph of Figure 10.5.3 is isomorphic to the cube graph Q3 .
10.5.4 Prove that the deBruijn graph D2,3 is not vertex-transitive.
Theorem 10.6.2: Let hG, αi be any kind of voltage graph, and let v be any vertex of G.
Then the outdegree and indegree of each vertex vj in the fiber ṽ are equal to the outdegree
and indegree, respectively, of vertex v.
Remark: Theorem 10.6.1 and Theorem 10.6.2 say that the natural projection is n-to-1 and
preserves degree.
Theorem 10.6.3: Let hG, αi be any kind of voltage graph, and let d be an arc of G from u
to v. Let hH, βi be the voltage graph obtained from hG, αi by reversing the direction of arc
d and changing its voltage to the inverse of α(d) in the voltage group. Then the covering
graph H β is isomorphic to the covering graph Gα .
Theorem 10.6.4: Let hG, αi be any kind of voltage graph, such that the base graph G is
bipartite. Then the covering graph Gα is bipartite.
Quite often, the objective is to specify every member of a graph family, not just a single
graph.
440 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
|Ṽ | |Ẽ|
|V | = and |E| =
gcd(|Ṽ |, |Ẽ|) gcd(|Ṽ |, |Ẽ|)
With the aid of Theorem 10.6.2, it is often easy to restrict the supply of plausible candidates
for the base digraph to a reasonable number.
Example 10.6.1: Consider the problem of specifying the circular ladder CLn . Since
it follows that
gcd(|Ṽ |, |Ẽ|) = gcd(2n, 3n) = n
Thus, the first base graphs G = (V, E) to consider have
|Ṽ | |Ẽ|
|V | = =2 and |E| = =3
n n
Since every vertex of CLn has degree 3, it follows from Theorem 10.6.2 that the vertices
of the base digraph must have degree 3. The only two 3-regular graphs with |V | = 2 and
|E| = 3 are the dipole D3 and the dumbbell graph. For odd n, the circular ladder CLn
is not bipartite, so, by Theorem 10.6.4, the dipole, which is bipartite, cannot be the base
graph. Thus, the dumbbell is the only plausible candidate for a unified specification.
The cyclic group Zn is a plausible candidate for the voltage group, since it has n elements.
Figure 10.6.1 shows a Zn -voltage assignment on the dumbbell that specifies CLn .
3 1
2 1
0 3
1 1 0 0
n-1
voltages in Zn
n-1
Figure 10.6.1 Using the dumbbell to specify the circular ladders CLn .
Section 10.6 Symmetric Graphs and Parallel Architectures 441
so that (
2 n if n is odd
gcd(|Ṽ |, |Ẽ|) = gcd(2n, n ) =
2n if n is even
Thus, for n odd, the first base graphs G = (V, E) to consider have
|Ṽ | |Ẽ|
|V | = =2 and |E| = =n
n n
Since every vertex of Kn,n has degree n, it follows from Theorem 10.6.2 that the vertices of
the base digraph must have degree n. Thus, the plausible candidates for the base digraph
have two vertices, 2k + 1 arcs joining them, and n−2k−1
2 self-loops at each vertex.
The most attractive candidate among them (it is likely to be the easiest to work with) is
the dipole Dn . By Theorem 10.6.3, all the arcs can go in the same direction from one vertex
to the other. By Theorem 10.6.4, with this base graph, it is certain in advance that every
voltage assignment specifies a bipartite graph.
A logical choice for the voltage group is the cyclic group Zn . In this case, the only plausible
voltage assignment is to use a different voltage on every edge, as shown in Figure 10.6.2,
since otherwise, there would be multi-edges. Observe that this solution is a generalization
of Example 10.1.2.
n-1
n-2
u v
voltages in Zn
1
It is easy to see that this solution for odd n also works for even n. However, the theoretical
criteria suggest that for even n, there might be a base graph with |V | = 1 and |E| = n2 that
is, the base graph G = Bn/2 . Assigning the n2 odd voltages in Z2n to the n self-loops forces
the endpoints of every arc from a vertex in the specified digraph to have opposite parity.
The net effect is that the specified graph is Kn,n, as illustrated in Figure 10.6.3 for the case
n = 4.
0 2 4 6
1 3
voltages in Z8
1 3 5 7
Example 10.6.3: The Möbius ladder MLn (depicted for n = 4 in Figure 10.6.4) has
Thus, the circular ladder CLn , we have gcd(|Ṽ |, |Ẽ|) = gcd(2n, 3n) = n.
1 2
1 3
5
0 4
6 2 0 4
7
7 5
3 6
(i) (ii)
Figure 10.6.4 Two drawings of the Möbius ladder ML4 .
|Ṽ | |Ẽ|
|V | = =2 and |E| = =3
n n
and as for CLn , every vertex of MLn has degree 3. Once again, the only two 3-regular graphs
with |V | = 2 and |E| = 3 are the dipole D3 and the dumbbell graph. Unlike some circular
ladders, every Möbius ladder is bipartite, so the dipole is a plausible candidate for a unified
specification.
When MLn is drawn so that it looks ladder-like, as in Figure 10.6.4(i), some of the symme-
try remains hidden. However, Figure 10.6.4(ii) shows another way to visualize ML4 (and,
through generalization, other Möbius ladders) so that some additional symmetry becomes
apparent.
From the symmetric drawing, it is clear that MLn can be specified as the Cayley graph
C(Z2n , {1, n}), while adopting the bidirected-arc convention.
Example 10.6.4: The n-dimensional hypercube has 2n corners and n2n−1 edges. The
cube-connected-cycle graph CCCn replaces each vertex of the hypercube by n vertices and
n edges. Thus,
so that
gcd(|Ṽ |, |Ẽ|) = gcd(n2n , 3n2n−1 ) = n2n−1
which suggests that |V | = 2 and |E| = 3. Since CCC n is 3-regular, the dumbbell and the
dipole D3 seem to be the two best candidates for a base graph. However, since CCC n is not
bipartite when n is odd, the best hope for a unified solution is to use the dumbbell as a base
graph. Although not obvious, it turns out that a solution is the regular-(Zn ⊗wr Z2 )-voltage
graph in Figure 10.6.6, whose covering graph is two isomorphic copies of CCC n.
0,00...1
1,00...0 1,00...0
The next two examples show that when the voltages on a graph are from a permutation
group, it is necessary to declare explicitly whether they are to be regarded as regular voltages
or as permutation voltages.
Example 10.6.5: If Figure 10.6.6 were interpreted as a permutation-voltage assignment,
then the resulting specified graph would have only 2n vertices, rather than n2n , as is clear
from the definitions of the two different types of voltage-graph constructions of specified
graphs.
444 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
2,000 2,001
0,001
1,000 0,000 1,001
1,100 1,101
1,010 1,011
2,010 2,011
0,011
0,010
1,110 1,111
0,111
0,110
2,110 2,111
Example 10.6.6: The permutation-voltage graph of Figure 10.5.5, which specified a de-
Bruijn graph, is reproduced here as Figure 10.6.8.
ζ3 δ3
2,100 2,101
1,100 1,101
1,010 1,011
2,010 2,011
0,010 0,011
0,111
1,110 1,111
0,110
2,110 2,111
definition: The shuffle-exchange digraph SE ~ n has as its vertex-set the length-n bit-
strings. There is an arc from each bitstring v to the bitstring ζn (v) obtainable by cycle-
shifting leftward one position. There is also a bidirected arc between each bitstring and the
bitstring that can be obtained by changing its rightmost bit.
2
u v
1 a c
b 3
d
4
10.7.2 Give a regular voltage assignment on K3,3 and a labeling of the vertices of CL6 as
the covering graph specified by that voltage graph.
10.7.3 Construct the covering graph for the following permutation voltage graph.
(1234)
(12)(3)(4) (134)(2)
c
a u v b
d
(13)(24)
10.7.4 Give a permutation voltage assignment on D3 that specifies CL6 as the covering
graph.
446 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
10.7.5 Label the dumbbell with cyclic voltages in Z6 so that the covering graph is isomorphic
to the graph at the right.
10.7.6 Label the bouquet with cyclic voltages in Z6 so that the covering graph is isomorphic
to the graph at the right.
10.7.7 The graph below is called Franklin’s graph. Draw a 4-vertex voltage graph for it
with vertex labels w, x, y, and z, and label the vertices of Franklin’s graph as the specified
covering graph.
10.7.8 The graph below is called the Tietze graph. Draw a 4-vertex cyclic voltage graph
for it, and label the vertices w, x, y, and z. Label the vertices of the Tietze graph as the
specified covering graph.
10.7.9 Draw three mutually non-isomorphic 3-regular, l0-vertex simple graphs, each vertex
transitive. (Optional hint: use cyclic voltage graphs.) Sketch proofs that your three graphs
are mutually non-isomorphic.
10.7 Supplementary Exercises 447
10.7.10 (a) Draw a 2-vertex Z8 -voltage graph whose covering graph is isomorphic to the
graph below.
(b) Draw a 1-vertex Z2 ×Z8 -voltage graph whose covering graph is isomorphic to the graph
below.
10.7.11 Consider the covering graphs for the three voltage graphs below with voltages in
Z11 . Decide whether some pair of them is isomorphic or whether they are mutually non-
isomorphic.
1 3 1 5 2 5
G H K
10.7.12 a. Draw the covering graph for this voltage graph. b. Then draw a 1-vertex voltage
graph whose covering graph is isomorphic to that covering graph of part a.
a u b 1 v d
1 voltages in Z3
c 2
0
10.7.13 Assign cyclic voltages in Z4 to the graph at the left so that the graph at the right
is the covering graph.
u u0 u1 u2 u3
v v0 v1 v2 v3
10.7.14 Assign cyclic voltages in Z9 to the graph at the left so that the graph at the right
is the covering graph.
448 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
10.7.15 Assign cyclic voltages in Z3 to the graph at the left so that the graph at the right
is the covering graph.
Glossary
base digraph of a voltage graph hG, αi: the digraph G.
base graph of a voltage graph hG, αi: the underlying graph of the base digraph.
bidirected-arc convention in a Cayley digraph or Cayley graph: if y is a generator of
order 2, then the pair of arcs that would join vertex b to vertex by and vertex by to
vertex b may be replaced by a single bidirected arc between b and by.
Cayley digraph C(B,~ X) for a group B = hB, ·i with generating set X: the digraph with
vertex-set VC(B,X)
~ = B and arc-set EC(B,X)
~ = {xb | x ∈ X, b ∈ B}, such that arc xb
joins vertex b to vertex bx. (Bidirected arcs are sometimes used for generators of order
2.)
Cayley graph C(B, X) for a group B = hB, ·i with generating set X: the underlying graph
~
of the Cayley digraph C(B, X).
Cayley graph: any graph G such that there exists a group B and a generating set X such
that G is isomorphic to the Cayley graph C(B, X).
clarifying-edge-graphic convention for voltage graphs: each edge of the base graph
is drawn in a unique graphic, and all the edges in its fiber are drawn in that same
graphic; moreover, in the covering digraph and graph, edge labels are commonly omitted
altogether.
deBruijn digraph D2,n : the digraph consisting of 2n−1 vertices, each labeled by a differ-
ent bitstring of length n − 1, and 2n arcs such that the arc from vertex b1 b2 · · · bn−1
to vertex b2 · · · bn−1 bn is labeled by the bitstring b1 b2 · · · bn referred to as the (2, n)-
deBruijn digraph.
covering graph for a voltage graph hG, αi: the underlying graph of the covering di-
graph Gα .
Glossary 449
mainscript of a subscripted variable Xj : the variable name X, i.e., the part without
the subscript.
mean pair-distance davg (G) of a graph G: the average of the distances d(u, v), taken
over all pairs of distinct vertices in G.
vertex-transitive graph: a graph such that for all vertex pairs u, v, there is a graph
automorphism that maps u to v.
450 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS
NON-PLANAR LAYOUTS
INTRODUCTION
The most important quantification of non-planarity of a graph is the number of handles
or crosscaps one must add to the plane to eliminate all the crossings. There are two elemen-
tary ways to represent an arbitrary graph drawing on an arbitrary surface. When specifying
imbeddings devoid of adequate symmetry, one resorts to these elementary representations.
One way is to draw the graph on a flat polygon representation (§5.5) of the surface. Another
way, completely combinatorial, is to write the cycle of edge-ends incident on each vertex,
as described in §11.1. The list of such cycles, called a rotation system, completely speci-
fies an imbedding. The set of all such rotation systems for a graph corresponds to the set
of all imbeddings, thereby yielding information about the distribution of the imbeddings
according to the genus of the imbedding surface.
When a graph is sufficiently rich in symmetry that it can be specified by a small voltage
graph, there is an extension of the voltage-graph construction. The idea is that a voltage
graph drawn on a surface can specify a symmetric imbedding of the covering graph. Voltage
graphs have been used in problem solutions. They are used frequently to find an imbedding of
a graph into a surface with the smallest possible number of handles. Solving this imbedding-
minimization problem for complete graphs was the main part of the solution by Ringel and
Youngs of the Heawood problem of finding the chromatic number of all the higher-order
closed surfaces.
451
452 Chapter 11 NON-PLANAR LAYOUTS
S0 S1 S2 S3
Figure 5.2.6 The sequence of closed orientable surfaces.
N1 N2 N3
Parametrization
It was explained in §5.1 how each edge in a graph embedding can be modeled as a space
curve, f : [0, 1] → R3 . This parametrization of each edge of a graph by the unit interval [0,
1] creates a distinction between its 0-end and its 1-end. Such a distinction facilitates the
combinatorial description of a graph imbedding.
Section 11.1 Representing Imbeddings by Rotations 453
notation: Let e be an edge of a graph. Then e+ denotes the 0-end of edge e, and e−
denotes the 1-end. The mnemonic for this notation is that starting at e+ means going in
the positive direction from 0 to 1. The usual rules of sign composition apply, so that
(
−σ e+ if σ = −
e =
e− if σ = +
±
The set of edge-ends of a graph G is denoted EG , or sometimes, simply E ± .
notation: In a drawing of an undirected parametrized graph, the parametrization arrow
points to the 1-end.
Remark: A directional arrow on an edge, if it exists, is independent of the parametrization
arrow; that is, both arrows may point the same way or opposite ways. The distinction in
meaning is that a parametrization arrow gives different names to the two possible senses
in which an edge can be traversed, whereas a direction arrow forbids passage in one of
those two senses. It is not necessary here to display both arrows simultaneously. However,
in circumstances where it is necessary to display both arrows simultaneously, it is helpful
to use graphically different types of arrowhead.
Proof: Every edge-end occurs at exactly one vertex. Thus, the product of the rotations
over all vertices is the disjoint-cycle form of a permutation. ♦
Example 11.1.2: Figure 11.1.2 shows an imbedding of K4 in the torus and its rotation
system. The only difference from the rotation system induced by the imbedding g : K4 → S0
is that the cyclic orders of the v2 -row and of the v4 -row are reversed; yet, despite this
seemingly small difference, one imbedding is in the sphere and the other in the torus.
Dual Rotations
± ±
definition: Let ρ : EG → EG be a rotation system on a graph G. The dual rotation (or
± ±
circulation) ρ is the permutation ρ∗ : EG
∗
→ EG given by the rule eσ 7→ ρ (e−σ ).
Invoking the following algorithm is the practical way to use a rotation table Tρ to
determine the edge-end ρ∗ (eσ ).
ρ∗ = (a− b+ f + e− ) (a+ d+ b− c+ f − d− e+ c− )
Observe that the four cycles of ρ∗ in Example 11.1.3 correspond to the boundary walks of
the four faces in Figure 11.1.1 and that the two cycles of ρ∗ in Example 11.1.4 correspond to
the boundary walks of the two faces in Figure 11.1.2. The Heffter-Edmonds theorem below
asserts that this phenomenon always occurs.
terminology: A sequence of edge-ends is said to coincide with a walk in a graph if the
order of the edge-ends is the order in which they occur on a traversal of the walk.
Proof: The edge ρ∗h (eσ ) is defined to be ρ (e−σ ), which is precisely the next edge-end after
e−σ in the boundary walk that traverses edge e from eσ to e−σ . ♦
terminology: In view of Theorem 11.1.2, the construction from a rotation system ρ of
the cycles of its induced circulation ρ∗ is commonly called face-tracing.
Proof: This follows immediately from the fact that rotation ρ is a permutation of the set
of edge-ends. ♦
456 Chapter 11 NON-PLANAR LAYOUTS
definition: Let ρ be a rotation system for a graph G. The surface induced by ρ is the
topological space S(ρ) formed from the graph G and the polygon set for ρ by fitting the
boundary walk of each polygon to the corresponding cycle of G.
Example 11.1.5: Figure 11.1.3 shows a rotation table for K4 and the set of labeled poly-
gons that arise when the induced surface is constructed from that table. Observe that this
rotation table differs from the table in Example 11.1.2 only in the bottom row.
Whereas the imbedding of K4 in Example 11.1.2 has as its faces a 4-gon and an 8-gon,
the faces of this imbedding are a 3-gon and 9-gon. Figure 11.1.4 below shows the resulting
imbedding in the torus.
Proof: It follows from Theorem 11.1.2 that oriented imbeddings with the same induced
rotation system have the same set of face-boundary walks. ♦
notation: γg (G) is the number of rotation systems ρ such that the induced surface has
genus g.
Proof: Proposition 11.1.4 establishes that the correspondence is one-to-one. Since every
rotation system ρ on a connected graph G induces a surface S(ρ) and an imbedding ιρ :
G → S(ρ) whose induced rotation system is ρ, the correspondence is onto. ♦
Remark: Given a rotation system ρ, the genus of the induced imbedding surface S(ρ)
can be deduced from the formula |V | − |E| + |F | = 2 − 2g, by substituting the number of
cycles of the circulation ρ∗ for |F |. Thus, it is not necessary to construct the surface S(ρ)
to determine its genus.
Proof: The left side is the total number of rotation systems of graph G. The rotations at
each vertex v are in one-to-one correspondence with the ways of arranging the edge-ends
at v into a cycle, so there are [deg(v) − 1]! rotations at v. Thus, the number of rotation
systems of G equals the value of the product on the right side. ♦
definition: The genus distribution of a graph G is the function that assigns to each
nonnegative integer n the number γn (G).
(a) v1 (b)
v1 v1
v1
v5 e a
v5 e a e
f v2 a
v2 e a
h f v5 v2
h b v5 g f v2
d g b g fb
vd4 g d
vc4 v3 d b
c v3 v4 v3
v4 c v3
c
(c) (d) v
v 11
v v
v 11 a v 22
a d e a
h d e a
h v
v f d b c v h v 55 f v
v 55 f d b c v44 h f v 22
g b
g c g b
g e c
v e
v44 v
v33 v
v 33
11.1.2 Write the rotation system for the given imbeddings in the torus S1 .
(a) t t (b) t t
h h h h
v1 v1 v1 v1
g g
v5 ev ea a
v2 v2
a
v5 e v5 e a
v2 v2
5
s f
s
f s s s s f
f s s
d gd gb b d d b b
v4 v4 v4 v4 v v3
c cv 3 v3 c c3
t t t t
11.1.3 For the given rotation system, (a) draw the graph, and (b) write the circulation.
11.1.4 For the given rotation system, (i) draw the labeled polygons, and (ii) draw the
imbedding.
(a) The rotation system of Exercise 11.1.3(a)
(b) The rotation system of Exercise 11.1.3(b)
(c) The rotation system of Exercise 11.1.3(c)
(d) The rotation system of Exercise 11.1.3(d)
(e) The rotation system of Exercise 11.1.3(e)
(f) The rotation system of Exercise 11.1.3(f)
11.1.5 Determine the number of inequivalent imbeddings for the given graph.
(a) K4 . (b) K5 − K2 .
(c) K6 − 3K2 . (d) Wn .
(e) Qn . (f) Kn .
(g) Q3 + K1 . (h) K5,5 .
(i) K2 × K4 . (j) P4 + P4 .
Minimum Genus
definition: The minimum genus of a connected graph G is the number
γmin (G) = min {g | γg (G) > 0}
that is, the minimum genus of any orientable surface on which G can be imbedded.
Example 11.2.1: If a graph is planar, then its minimum genus is zero.
Example 11.2.2: If a non-planar graph G has an edge e such that G − e is planar, then
γmin (G) = 1. Starting with a planar drawing of G − e, using surgery to add a handle that
joins the regions incident on the endpoints of e, and then drawing edge e on that handle
yields an imbedding G → S1 .
terminology note: Before 1970, the phrase genus of a graph was used universally for
what we now call its minimum genus. When there is no danger of ambiguity, we sometimes
use the old phrase.
definition: A minimum (orientable) surface for a graph G is a surface whose genus
is γmin (G).
definition: Any imbedding of a graph G on a minimum (orientable) surface is called a
minimum (orientable) imbedding.
review from §1.2: The girth of a graph G is the length of a smallest cycle in G.
460 Chapter 11 NON-PLANAR LAYOUTS
2|E|
|F | ≤
girth(G)
Maximum Genus
The study of the surface of largest genus on which a graph can be cellularly imbedded
began with [NoStWh71], followed by [NoRiStWh72].
definition: The maximum genus of a connected graph G is the number
that is, the maximum genus of any orientable surface on which G can be cellularly imbedded.
definition: A maximum (orientable) surface for a graph G is a surface whose genus
is γmax (G).
Section 11.2 Genus Distribution of a Graph 461
β(G) = |E| − |V | + 1
Genus Range
Our immediate objective is to prove that a graph can be cellularly imbedded on any
surface whose genus lies between its minimum genus and its maximum genus.
definition: The genus range of a graph G is the set
definition: Two rotation systems are adjacent if one can be obtained from the other by
the operation of transposing two consecutive edge-ends in the rotation at one vertex.
Theorem 11.2.4: Let ρ and λ be adjacent rotation systems for a graph G. Then the genus
of the induced surface S(ρ) differs from the genus of the induced surface S(λ) by at most 1.
Proof: Suppose that transposing edge-ends dσ and eτ at vertex v transforms rotation sys-
tem ρ into rotation system λ. Then deleting edge e from the respective induced imbeddings
ιρ and ιλ (which eliminates eτ and e−τ from their rotation systems) transforms both ρ and
λ into the same rotation system η. From an alternative viewpoint, each of the imbeddings
can be obtained by inserting edge e into the same imbedding ιη : G − e → S(η). Inserting
one edge into an imbedding cannot decrease the genus of the surface, and it increases the
genus by at most 1, since it can be drawn, if necessary, on a single new handle. This yields
the inequalities
Proof: Any rotation system can be obtained from any other by a sequence of transpositions
of edge-ends. Thus, there is a sequence of adjacent rotation systems from some minimum-
genus imbedding to a maximum-genus imbedding. By Theorem 11.2.4, the genus of the
imbedding surface varies by at most 1 as one progresses through this sequence. Thus, some
intermediate imbedding surface has genus g. ♦
Remark: Thus, Corollary 11.2.5 asserts that the genus range of a graph G is the integer
interval [γmin (G), γmax (G)].
Example 11.2.6: The complete graph K8 has (7!)8 different imbeddings, by Theorem
11.1.6. By Theorems 11.2.1 and 11.2.3, they all lie in the genus range [2, 10].
Non-Orientable Imbeddings
The study of non-orientable imbeddings has the significant complication that a graph
may be imbedded so that traversing some particular edges, in effect, reverses the rotation
order at the destination vertex. For this reason, the coverage here is limited to two basic
definitions and two basic theorems.
definition: The minimum crosscap number of a connected graph G is the smallest
crosscap number of any surface Nk on which G can be imbedded. It is denoted γ min (G). If
G is planar, then γ min (G) = 0.
definition: The maximum crosscap number of a connected graph G is the largest
crosscap number of any surface Nk on which G can be cellularly imbedded. It is denoted
γ max (G). If G is planar, then γ max (G) = 0.
Proof: This proof is completely analogous to the proof of Corollary 11.2.2. Details are left
as an exercise. ♦
Section 11.3 Voltage-Graph Specification of Graph Layouts 463
Proof: That β(G) is an upper bound for γ max (G) is provable by reasoning parallel to that
for Theorem 11.2.3. Proof of equality was first published by [Ed65c]. ♦
11.2.2 Apply Theorem 11.2.1 to derive a lower bound for minimum genus that is sharper
than the bound of Corollary 11.2.2, for graphs with girth 4.
11.2.3 Apply the result of Exercise 11.2.2 to the graphs of Exercises 11.2.1(i) and 11.2.1(j).
11.2.4 Use Theorem 11.2.3 to calculate an upper bound for the maximum genus of the
given graph.
(a) K9 . (b) K9 − C9 .
(c) K10 − C3 . (d) K10 − P5 .
(e) K8 . (f) K8 − K2,3 .
(g) C3 × C3 × C3 . (h) C7 + C8 .
(i) W6 . (j) CL3 .
Signed Walks
The concept of signed walks illustrates emphatically that in voltage graphs the edge-
directions are not to be regarded as traversal restrictions.
definition: A signed walk in a digraph is an alternating sequence of vertices and edge-
ends
v0 , eσ1 1 , v1 , eσ2 2 , v2 , . . . , vn−1 , eσnn , vn
such that the result of deleting signs and ignoring directions is a walk
v0 , e1 , v1 , e2 , v2 , . . . , vn−1 , en , vn
(i.e., in the underlying graph), and such that reversing the direction on every minus-signed
edge and then deleting the signs would yield a directed walk. The fundamental idea is not
difficult: in a signed walk, a minus-signed edge-end represents an edge traversed against its
designated direction.
definition: Let
W = hv0 , eσ1 1 , v1 , eσ2 2 , v2 , . . . , vn−1 , eσnn , vn i
be a signed walk in a voltage graph hG, α : EG → Bi. The net voltage on the walk W is
the sum
Xn
α(W ) = σj α(ej )
j=1
That is, the net voltage is the sum of the voltages on the plus-signed edges minus the sum
of the voltages on the minus-signed edges.
Example 11.3.1: Figure 11.3.1 shows a specification of the Petersen graph. The signed
walk
W = v, d+ , v, c+ , u, e− , u
starts at vertex v, traverses self-loop d in forward direction back to vertex v, next traverses
edge c to vertex u, and then traverses self-loop e in reverse direction back to vertex u. Thus,
its net voltage is
v0
d4 d0
v4 u0
1 2 u4 e0
0 e4 v1
d v c u e
e1 u1
e3
d3 u3 e2 d1
u2
v3 d2
v2
(i)
Figure 11.3.1 (ii)
A voltage graph specifying the Petersen graph.
Section 11.3 Voltage-Graph Specification of Graph Layouts 465
This formula supports an inductive argument that each successive edge choice ej,kj is the
only choice of an edge in the fiber of ej that extends the signed walk. ♦
definition: Let W be a signed walk in a voltage graph with initial vertex v. The unique
signed walk Wa in the covering graph that starts at vertex va and projects onto walk W
(as in Theorem 11.3.1) is called a lift of walk W .
Example 11.3.2: The walk W = hv, d+ , v, c+ , u, e− , ui in Example 11.3.1 has these five
lifts:
−
W0 = v0 , d+ +
0 , v1 , c1 , u1 , e4 , u4
−
W1 = v1 , d+ +
1 , v2 , c2 , u2 , e0 , u0
−
W2 = v2 , d+ +
2 , v3 , c3 , u3 , e1 , u1
−
W3 = v3 , d+ +
3 , v4 , c4 , u4 , e2 , u2
−
W4 = v4 , d+ +
4 , v0 , c0 , u0 , e3 , u3
Proposition 11.3.2: Let hG, α : EG → Ai be a voltage graph, and let W be a signed walk
in G from u to v. Then the lift Wb is a signed walk in the covering graph Gα from the vertex
ub to the vertex vb+α(W ) .
Proof: This follows by induction on the length of the walk. ♦
Example 11.3.2, continued: The net voltage on walk W from vertex v to vertex u is 4
(mod 5). Observe that each walk Wj begins at vj and ends at uj+4 .
Proof: Suppose that walk W starts at vertex v. By Proposition 11.3.2, the lift Wa+`b is a
walk from va+`b to va+(`+1)b , for ` = 0, . . . , m − 1. It follows that the iterated concatenation
Wa Wa+b · · · Wa+(m−1)b is a walk from va to va+mb = va , that is, a closed walk. ♦
Remark: A cyclic permutation of the constituents of the concatenation
Wa Wa+b · · · Wa+(m−1)b
may start and stop at some vertex va+`b different from va , but it traverses exactly the same
cyclic sequence of vertices and edges. In the context of imbedded voltage graphs, it is called
a cyclically equivalent concatenation.
Example 11.3.4: Often, it helps to construct the covering graph alone before constructing
the covering imbedding. For instance, Figure 11.3.3 shows how to assign voltages from Z7
to the bouquet B3 so that the covering graph is the complete graph K7 , with seven vertices
and 21 edges.
2
1 3
voltages in Z 7
Figure 11.3.4 illustrates a two-face KVL imbedding of that voltage graph on S1 and the
covering imbedding. Since the covering imbedding has 14 faces, the covering surface must
be the surface Sg whose Euler characteristic is 7 − 21 + 14 = 0 = 2 − 2g, that is, the surface
S1 . Shading is used to group the faces of the covering imbedding into fibers.
terminology: The imbedded-voltage-graph construction extends the natural projection
p : Gα → G, so that it maps each face fa in the fiber f˜ to the face f , and thereby becomes
a mapping p : S α → S of surfaces.
0 1 2 3 4 5 6 0
specified
imbedding
2 3 4 5 6 0 1 2
1
base imbeddingg 3 voltages in Z 7
2 2
B 3 → S1
1
(a) a a (b) a a
1 1 1 1
u u 0 v v2 u u 0 v v2
0 2 b 0 2 b
b be e c c b b be e c c b
d d d d
a a a a
voltages in Zin
voltages 3 Z3 voltages in Zin
voltages 4 Z4
468 Chapter 11 NON-PLANAR LAYOUTS
11.3.2 Prove that a KVL-imbedded voltage graph in S1 specifies an imbedding such that
every component of the imbedding surface is a torus. (Hint: Prove that the value of the
Euler polyhedral formula |V | − |E| + |F | for the covering imbedding is 0.)
11.3.3 Prove that a KVL-imbedded voltage graph in S0 with nontrivial voltage group spec-
ifies a non-connected graph and a non-connected surface. (Hint: Prove that the value of the
formula |V | − |E| + |F | for the covering imbedding is larger than 2.)
11.3.4 Suppose the voltages in Figure 11.3.2 are interpreted as elements of Z6 . Draw the
covering imbedding and identify the covering surface. Describe the covering graph.
11.3.5 Suppose the voltages in Figure 11.3.4 are interpreted as elements of Z8 . Draw the
covering imbedding and identify the covering surface. Describe the covering graph.
u c
1 v b1
u1 d2 v1
d 2
c2 d
c1 0
b2
voltages in Z3 u2 v2
d2 e1 e0 d0
1 2
d e v3 e2 e5 v0
v
d3 e3 e4 d5
voltages in Z6 v4 d4 v5
d11 d10
00 u10
c c10 e01
v10
u d
01 v e11 e10
e e00 c01
10
v01 u01
d00 d01
c00
u00 v00
Section 11.3 Voltage-Graph Specification of Graph Layouts 469
u110 v110
v111 u111
001 u101 v101
c u100
v100
u 010 v
d v010 u010
e 100 u011 v011
b d b3 b2 c2
(123) u2 v2
u c v c3
d2
b1 c1 d1
(123) ( 1 2 )( 3 )
u1
v1
11.3.7 Let hG, α : EG → Bi be a voltage graph, and let u, v ∈ VG . Prove that vertex vj is
in the same component of the covering graph as vertex ui if and only if there is a signed
walk from u to v in G whose net voltage equals j − i.
11.3.8 Let hG, α : EG → Bi be a voltage graph. Use Exercise 11.3.7 to prove that the com-
ponents of the covering graph are in one-to-one correspondence with the cosets of the local
group in the voltage group B [AlGr76].
11.3.9 Let G be a bipartite graph with voltage 1 ∈ Z2 assigned to every edge. Prove that
the Kirchoff’s voltage law holds for every closed walk. Prove also that the covering graph
consists of two disjoint copies of G. (This illustrates what happens when KVL holds on
every closed walk, rather than only on face-boundary walks.)
470 Chapter 11 NON-PLANAR LAYOUTS
u11 v11
c11
d11 d10
00 u10
c c10 e01
v10
u d
01 v e11 e10
e e00 c01
10
v01 u01
d00 d01
c00
u00 v00
00 . . . 010
00 . . . 100
...
001 . . . 00
010 . . . 00
100 . . . 00
Since girth(Qn ) = 4, every face of an imbedding of Qn must have at least four sides. The
formula provided by Theorem 11.2.1 depends on having as many faces as possible, which
implies that the number of sides of almost every face of the imbedding must equal the girth.
With the voltage graph of Figure 11.4.2, it is easy to construct an imbedding in which all
the faces are 2-sided and have net voltage of order 2 on their boundary walks. In fact, if that
drawing is interpreted as an imbedding in S0 , then each face is a digon with net voltage of
order 2 on its boundary walk. ♦
472 Chapter 11 NON-PLANAR LAYOUTS
(a) u u (b) u u
0 0 b b 0 0 b b
d d d d0
01 0 0
e 1 1 e1 1e
a a1 e 1 a a 1
1 1
v vf f w w v vf 1 cf w w
c 1 c c
0 0 0 0
voltages in Zin
voltages 2 Z2 voltages in Zin
voltages 3 Z3
(c) a a 1 1
(d) a a 1 1
u u0 v0 v u u0 v0 v
b b b b
1 1 c c 1 1 c c
voltages in Z 2in Z 2
voltages voltages in Z 3in Z 3
voltages
(e) 2 2 1 1 (f) 2 2 1 1
e e u u h h e e u u h h
voltages
voltages
in Z 5in Z5 voltages
voltages
in Z6 in Z 6
11.4.2 For the given voltage graph imbedded in S1 , draw the derived faces and determine
the genus of the imbedding surface.
(a) e e (b) e e
r r r r
1 a1 a 1 a1 a
2 2 2 2
1 u d u d s s 1 u d u d s s
1 1
f f f f
c 2 c1 2b b c 2 c1 2b b
1 1
t t t t
2 2 2 2
voltages in Z 4in Z 4
voltages voltages in Z 5in Z 5
voltages
Section 11.5 Heawood Map-Coloring Problem 473
Proof: The notations δavg and δmin indicate average degree and minimum degree.
Since ec(S) ≤ 0, the value of the radical is larger than 7, from which it follows that the
first factor is positive. This implies that the second factor is nonpositive. Since chr (S) is an
integer, the conclusion follows. ♦
Remark: Notice that the sphere S0 satisfies the conclusion of Theorem 11.5.3 (chr (S0 ) =
4 = H(S0 )), despite not satisfying the hypothesis (since ec(S0 ) = 2).
and if
(H(Sg ) − 3) (H(Sg ) − 4)
(♣) ≤g
12
then γmin KH(Sg ) ≤ g. Proving inequality (♣) requires routine computation and is left as
an exercise. ♦
Philip Franklin proved in 1934 that chr (N2 ) = 6. Since the Euler characteristic of the
Klein bottle (the surface N2 ) is 0, and since H(N2 ) = 7, Franklin’s result is a counterexample
to the Heawood conjecture. However, the Klein bottle is the only surface whose chromatic
number is less than its Heawood number.
Section 11.5 Heawood Map-Coloring Problem 475
l m
Proposition 11.5.5: If γ̄min (Kn ) ≤ (n−3)(n−4)
12 for all n ≥ 8, then the Heawood conjec-
ture holds for all non-orientable surfaces except the Klein bottle.
Proof: The proof follows the same lines as for the orientable case. ♦
In the 1950s and early 1960, Gerhard Ringel proved the Heawood conjecture completely
for the non-orientable surfaces (except N2 , of course), based on Proposition 11.5.5. The
denominator of 12 in Proposition 11.5.4 led to the partition of the complete graphs Kn into
12 cases, one for each residue class of n modulo 12. By the early 1960s, Ringel had also
constructed minimum imbeddings of Kn for four of the 12 cases.
Ringel described his minimum imbeddings by rotation systems. Each of his rotation sys-
tems was developed algebraically from one or more generating rows. Great combinatorial
skill was involved in the construction of generating rows. Gustin [Gu63] introduced a graph-
ical nomogram called a current graph as an aid in constructing generating rows of rotation
systems. Figure 11.5.1 shows the Gustin nomogram used to construct the generating row
for K7 .
2
Gustin called the algebraic elements in a nomogram currents, and he took these cur-
rents to be in the group Z7 . The generating row was taken to be the sequence of currents
one encountered in a traversal associated with the nomogram, in which a solid vertex (•)
indicates clockwise rotation and a hollow vertex (o) indicates counterclockwise rotation.
For instance, if one traverses current 1 to (o), and goes counterclockwise, one next
traverses current 3 to (•), where one goes clockwise. One then traverses current 2 to (o),
and goes counterclockwise to the edge with current 1, but against the current, so we regard
this as current 6, the additive inverse of 1 mod 7. Current 6 terminates at (•), where
clockwise rotation leads to current 4, which leads at (o) to current 5, which cycles back to
current 1, signifying termination of the tour. We summarize the tour.
0. 1 3 2 6 4 5
This tour is taken as the generating row of a rotation system for K7 , in which each row is
generated from the top row by adding the row number modulo 7 to the entries of the top
row.
0. 1 3 2 6 4 5
1. 2 4 3 0 5 6
2. 3 5 4 1 6 0
3. 4 6 5 2 0 1
4. 5 0 6 3 1 2
5. 6 1 0 4 2 3
6. 0 2 1 5 3 4
476 Chapter 11 NON-PLANAR LAYOUTS
Gustin proved a theorem that if the current graph is 3-regular and if the sum of the
currents at each vertex is 0 (a condition called the Kirchhoff ’s current law (KCL)),
then the resulting rotation system specifies a triangulation.
Ringel and Youngs augmented Gustin’s method into an extensive family of nomograms,
each with its own set of computational rules, and completed their proof of the Heawood
conjecture for orientable surfaces in 1968, one of the outstanding mathematical accomplish-
ments of the 20th century. Their complete proof occupies over 300 journal pages.
Gross and Alpert [GrAl73, GrAl74] introduced a topological interpretation of current
graphs, which enabled them to generalize the construction greatly and to replace all the
nomograms, with their separate rule systems, by a single form of imbedding specification.
Topologists recognize the underlying mechanism as a branched covering, which generalizes
the topological relationship of a Riemann surface to the complex plane. This topological
interpretation reduced the length of the proof by about half.
Gross [Gr74] introduced voltage graphs, whose topologically dual perspective simplifies
the situation by permitting the specified graph to be considered separately from the specified
imbedding. Gross and Tucker [GrTU77] developed the generalization to permutation-voltage
graphs (§10.5).
5
9 1
4
2 7 2 voltages in Z 19
6
8 3
1 9
5
Example 11.5.2: The imbedded voltage graph in Figure 11.5.3 specifies a minimum
imbedding of K31 .
Notice that KVL holds globally. Assigning voltages so that KVL holds globally is the
difficult part.
11.6 Supplementary Exercises 477
8
15 1
7
4 11 2
9
6 voltages in Z 31
3 14 3
12 10
2 13 5 4
1 15
8
11.6.2 Calculate lower bounds for the minimum genus of the following graphs.
a. K13 . b. K13 − K3 . c. K8,8 .
11.6.3 Calculate upper bounds for the maximum genus of the following graphs.
a. K13 . b. K13 − K3 . c. K8,8 .
11.6.4 Prove that minimum genus of C4 × C4 × C4 is at least 17.
11.6.5 Prove that the minimum genus of a simple, connected graph with 8 vertices and 25
edges is at least two.
11.6.6 Prove that the minimum genus of K9 − C9 is 1.
478 Chapter 11 NON-PLANAR LAYOUTS
11.6.7 Explain how to construct 6-regular n-vertex simple graphs of girth at least 4 for all
n ≥ 12. (Hint: start with the even case.)
11.6.8 Calculate a lower bound for the minimum genus of the join C7 + Q3 .
11.6.9 The graph below is Franklin’s graph.
(a) Count the number of 4-cycles, and use this number to prove that an imbedding of
Franklin’s graph has at most 7 faces.
(b) Find a Kuratowski subgraph.
11.6.10 Prove that for every n ≥ 7 there is a 6-regular, n-vertex simple graph of genus 1.
(Hint: use voltage graphs.)
11.6.11 Let G = K10 − CL5 .
(a) Draw a cyclic voltage graph for G, with the minimum possible number of vertices.
(b) To cellularly imbed G into the torus, how many faces would there be?
(c) To cellularly imbed the voltage graph of part (a) in the torus, how many faces would
there be?
(d) Draw an imbedded voltage graph for an imbedding of G in the torus.
11.6.12 The graph shown below is imbedded in the sphere, with voltages in the cyclic group
Z8
(a) How many vertices and edges does the covering graph have?
(b) How many faces are generated by the digon, the triangle, and the exterior face? How
many sides do they have?
(c) What is the genus of the covering surface?
1
2 7
5 3
6
4
1 1
2
3
Glossary 479
Glossary
base imbedding: the imbedding of the voltage graph in the base surface of the covering
construction.
chromatic number of a surface S: the maximum of the chromatic numbers of the sim-
ple graphs that can be imbedded on S.
circulation for a rotation system ρ∗ (induced): the permutation of edge-ends given
by the rule eσ 7→ ρ (e−σ ).
covering face: a face of the graph imbedding specified by an imbedded voltage graph; a
polygon whose boundary walk is matched to a lifted boundary walk or to concatenation
of lifted boundary walks of the specified graph.
covering imbedding: the imbedding of the covering graph specified by an imbedded volt-
age graph.
covering surface: the surface formed by matching the boundaries of the covering faces to
the corresponding closed walks in the covering graph.
crosscap on a surface: a subspace that is topologically equivalent to a Möbius band.
genus distribution of a graph G: the function that assigns to each nonnegative integer
g the number γg (G) of different cellular imbeddings in the surface Sg .
genus range of a graph G: the integer interval of values of g such that graph G has a
cellular imbedding in surface Sg .
girth of a graph G: the length of a smallest cycle in G.
Heawood conjecture: the conjecture that a surface of Euler characteristic c has chro-
matic number H(c), for c = 1, 0, −1, . . ..
√
7+ 49−24·ec(S)
Heawood number of a closed surface S: H(S) = 2 .
maximum crosscap number γ̄max (G): for a connected graph G, the largest crosscap
number of any surface Nk on which G can be cellularly imbedded. If G is planar,
then γ̄max (G) = 0.
maximum genus of a connected graph G: the maximum number g such that G has a
cellular imbedding on Sg .
maximum (orientable) imbedding: any imbedding of a graph G on a maximum (ori-
entable) surface.
maximum (orientable) surface for a graph G: a surface whose genus is γ̄max (G).
Glossary 481
minimum crosscap number γ̄max (G) for a connected graph G: the smallest crosscap
number of any surface Nk on which G can be imbedded. If G is planar, then γ̄max (G) =
0.
minimum genus γmin (G) of a connected graph G: the smallest number g such that
γg (G) > 0.
minimum imbedding: any imbedding of a graph into a minimum surface.
minimum (orientable) surface for a graph G: a surface whose genus is γmin (G).
net voltage on a signed walk: the sum of the voltages on the plus-signed edges minus
the sum of the voltages on the minus-signed edges.
orientation on a graph imbedding: a choice of either counterclockwise or clockwise as
a preferred traversal direction around the vertices.
oriented graph imbedding: a graph imbedding with a designated orientation.
rotation at a vertex v: a cyclic permutation of the edge-ends incident on v.
surface induced by rotation system ρ: the surface S(ρ) that is codomain of the circu-
lation.
voltage graph: a pair hG, αi such that G is a digraph and α is a voltage assignment on
G.
—, imbedded: a cellular imbedding of a graph G with a voltage assignment on G.
Types of Proof
terminology: When an assertion is in the form p → q, the proposition p is often referred
to as the antecedent and q the consequent.
definition: A direct proof of the conditional p → q consists of showing that statement
q is true under the assumption that statement p is true.
definition: A proof by contrapositive of the conditional p → q is a direct proof of the
contrapositive ¬q → ¬p.
Example A.1.1: A proof by contrapositive of the assertion “If n2 is odd, then n is odd”
takes the form: Assume n is even. Then n = 2k, for some integer k. Hence, n2 = (2k)2 =
2(2k 2 ), which is even.
definition: A proof by contradiction of an assertion S consists of assuming that S is
false and deriving some contradiction.
Example A.1.2: Prove: There is no largest prime number.
Proof by contradiction: Assume that P is the largest prime number. Then the product
r = 2 × 3 × · · · × P + 1 is not divisible by any prime and, hence, is itself prime, which
contradicts the maximality of P .
483
484 Appendix A
Mathematical Induction
definition: Axiom of Mathematical Induction – First Form: Statement P (n) is
true for all integers n ≥ b if both of the following are true.
Base: P (b)
Inductive step: For all k ≥ b, P (k) → P (k + 1)
Remark: Typically (but not always), the inductive step is demonstrated by a direct proof
of the statement P (k) → P (k + 1).
n
n
P
Example A.1.3: Prove: For all n ≥ 1, i= 2 (n + 1).
i=1
Proof: The equation holds for n = 1 since its left and right sides are both equal to 1 when
n = 1. Assume that the equation holds for some k ≥ 1. Then
k+1 k
!
X X k k+1
i= i + (k + 1) = (k + 1) + (k + 1) = (k + 2)
i=1 i=1
2 2
♦
definition: Axiom of Mathematical Induction — Second Form: Statement P (n)
is true for all integers n ≥ b if both of the following are true.
Base: P (b)
Inductive step: For all k ≥ b, (P (b) ∧ P (b + 1) ∧ . . . ∧ P (k)) → P (k + 1)
Thus, a direct proof of this inductive step is to show that P (k + 1) is true under the
assumption that the statements P (b), P (b + 1), . . . , P (k) are true.
Section A.2 Relations and Functions 485
A × B = {(a, b) | a ∈ A and b ∈ B}
xRx ∈ R
xRy ⇒ yRx
Example A.2.1: Let R be the relation on the set Z of all integers, given by
[x] = {a ∈ A | aRx}
[0] = {3k | k ∈ Z}
[1] = {3k + 1 | k ∈ Z}
[2] = {3k + 2 | k ∈ Z}
Observe that the equivalence class of any other element is one of these three classes.
486 Appendix A
Corollary A.2.2: Let R be an equivalence relation on a set A. Then the distinct equiva-
lence classes of R partition A.
Example A.2.3: The three equivalence classes [0], [1], and [2] of Example A.2.2 partition
the set Z of integers.
xRy ∧ yRx ⇒ x = y
Functions
definition: Let A and B be two sets. A function f from A to B, denoted f : A → B, is
an assignment of exactly one element of B to each element of A. We also say that f maps
A to B.
alternative definition: A function f from A to B, denoted f : A → B, is a relation
from A to B, such that each element of set A appears as a first component in exactly one
of the ordered pairs of f .
terminology: Let f : A → B be a function from set A to set B. Then A is called the
domain of f , and B is called the codomain of f .
terminology: Let f : A → B be a function from set A to B, and let a ∈ A. The element
b assigned to a by f , denoted b = f (a), is called the image of a under f , and element a
is called a preimage of b under f .
definition: Let f : A → B be a function from set A to set B, and let S ⊆ A. Then the
set f (S) = {f (s) | s ∈ S} is the image of S under f .
Section A.2 Relations and Functions 487
definition: Let f : A → B be a function from set A to set B, and let S ⊆ B. Then the
set f −1 (S) = {x ∈ A | f (x) ∈ S} is the inverse image of S under f .
definition: A function f : A → B is one-to-one (or injective) if for all x, y ∈ A,
x 6= y ⇒ f (x) 6= f (y).
Thus, a function f : A → B is one-to-one if and only if each element of set B has at most
one preimage under f .
definition: A function f : A → B is onto (or surjective) if for all b ∈ B, there exists at
least one a ∈ A such that f (a) = b.
Thus, a function f : A → B is onto if and only if each element of set B has at least one
preimage under f .
definition: A function f : A → B is a bijection if f is both injective and surjective.
Example A.2.5: In a standard (0-based) vertex-labeling of an n-vertex graph G, each
vertex of G is assigned an integer label from the set {0, 1, . . . , n − 1}, such that no two
vertices get the same label. Thus, the labeling is a bijection
f : {0, 1, . . . , n − 1} → VG
It is common to say that the integers from 0 to n − 1 have been bijectively assigned to
the vertices of G.
1. f is one-to-one.
2. f is onto.
3. |A| = |B|.
Corollary A.2.4: If each member of a flock of pigeons flies into a pigeonhole, and if there
are more pigeons than pigeonholes, then there must be at least one pigeonhole that contains
more than one pigeon.
Proposition A.2.5: Let f : A → B be a function from a set A onto a set B, and let
g : B → A be a function from a set B onto a set A. Then g is the inverse function f if and
only if f is the inverse function of g.
|A × B| = |A| · |B|
Proposition A.3.3:
n n!
=
k k!(n − k)!
Theorem A.3.4: [Binomial Theorem] For every nonnegative integer n and any num-
bers x and y,
n
n
X n n−k k
(x + y) = x y
k
k=0
Example A.3.1: The generating function for the constant sequence h1, 1, . . .i is
∞
X 1
xk =
1−x
k=0
Example A.4.1: Let Z10 = {0, 1, 2, . . . , 9}, and let ⊕ and be the operations of addition
and multiplication mod 10. For instance, 6⊕6 = 12 (mod 10) = 2 and 6 6 = 36 (mod 10) =
6. Then ⊕ and are binary operations on the set Z10 .
a∗e=e∗a=a
definition: Let ∗ be a binary operation on set A, and let e be an identity element of (A, ∗).
For a ∈ A, an element a0 ∈ A is an inverse of a in (A, ∗) if
a ∗ a0 = a0 ∗ a = e
definition: A group G = (G, ∗) is a non-empty set G and a binary operation ∗ that satisfy
the following conditions.
notation: In an Abelian group, the operation is commonly denoted “+” and called “sum”.
terminology: For an abstract group (G, ∗), the term “product” is used generically to
refer to the element x ∗ y, and its use does not imply anything about the type of group
operation.
Example A.4.2: The group Zn = (Zn , +), which generalizes (Z10 , ⊕) in Example A.4.1,
is Abelian and is denoted Zn .
Example A.4.3: Observe that (Zn , ) is not a group, since the element 0 has no inverse
under .
490 Appendix A
Example A.4.4: Let S be an n-element set, and let P be the set of all permutations of
set S. Then (P, ◦), where ◦ is the composition operation, is a group.
definition: Let G1 = (G1 , ∗1 ) and G2 = (G2 , ∗2 ) be two groups. The direct sum (or
direct product) G × G2 is the group (G1 × G2 , ∗) whose domain set is the Cartesian
product of the domain sets G1 and G2 and whose operation is defined by
G1 × G2 × . . . Gn = (G1 × G2 × . . . Gn−1 ) × Gn
Remark: In fact, the cyclic groups in the direct-sum decomposition of an Abelian group
have prime-power order, and the direct sum is essentially unique, but the above assertion
is all that we need in this book.
Permutation Groups
definition: The group of all permutations of a set S with n elements is called the full
symmetric group on S and is denoted ΣS or Σn .
Section A.4 Algebraic Structures 491
terminology: The elements of the set on which a permutation group acts are called
objects.
notation: One way of representing a permutation π of the set {1, 2, . . . , n} is to use a 2×n
matrix, where the first row contains the n integers in order, and the second row contains
the images, so that π(j) appears below j.
Example A.4.9: The group Σ3 consists of the six permutations of S = {1, 2, 3}. They are
as follows:
1 2 3 1 2 3 1 2 3
π1 = ; π2 = ; π3 = ;
1 2 3 1 3 2 2 1 3
1 2 3 1 2 3 1 2 3
π4 = ; π5 = ; π3 = ;
3 2 1 2 3 1 3 1 2
The permutation π1 is the identity element of Σ3 . Remembering that the composition f ◦ g
is applied right-to-left, we have the following sample calculations:
π2 ◦ π2 = π3 ◦ π3 = π4 ◦ π4 = π1 ; π5 ◦ π5 = π6 ; π4 ◦ π5 = π3 ; π5 ◦ π4 = π2
The last two calculations show that the full symmetric group is non-Abelian. Additional
calculation shows that the set {π4 , π5 } is a generating set for Σ3 . Moreover, π53 = π6 ◦π5 = π1 .
Thus, the order of the permutation π5 is 3.
definition: A permutation π is an involution if π = π −1 .
Fields
definition: A field F = (F, +, ·) is a set F together with two operations, + and ·, (called
generically addition and multiplication), such that each of the following conditions is satis-
fied:
1. (F, +) is an Abelian group.
2. (F − {0}, ·) is an Abelian group, where 0 is the additive identity.
3. a · (b + c) = (a · b) + (a · c).
Vector Spaces
definition: A vector space over a field (of scalars) F is a set V (of vectors) together
with a binary operation + on V and a mapping, called scalar multiplication, from the
Cartesian product F × V to V : (a, v) 7→ av, such that the following conditions are satisfied
for all scalars a, b ∈ F and all vectors v, w ∈ V .
1. (V, +) is an Abelian group (the symbol “+” is being used to denote two different
operations, addition in the field F and addition in the set V )
2. (a · b)v = a(bv)
3. (a + b)v = av + bv
4. a(v + w) = av + aw
5. ev = v, where e is the multiplicative identity of field F
Example A.4.12: Let W = {(α1 , α2 , α3 ) | αi ∈ GF(2)}, and consider componentwise
addition ⊕ (mod 2) on the elements of W . For each scalar α ∈ GF(2) and element
w = (α1 , α2 , α3 ), let scalar multiplication be defined by
αw = (α α1 , α α2 α α3 )
Then it is easy to verify that W with these operations forms a vector space over GF(2).
Remark: The vector space defined in Example A.4.12 is a special case of the vector space
F n of all n-tuples whose components are elements in a field F.
α1 v1 + α2 v2 + · · · + αm vm = 0 only if α1 = α2 = · · · = αm = 0
definition: A set B is a basis for V if the vectors in B span V and are linearly independent.
Proposition A.4.3: All the bases of a given vector space have the same number of vectors.
definition: The dimension of a vector space V , denoted dim(V ), is the number of vectors
in a basis of V .
definition: A subset U of vector space V is a subspace of V if U is itself a vector space
with respect to the addition and scalar multiplication of V .
Proposition A.4.4: Let V be a vector space over a field F, and let U be a subset of V .
Then U is a subspace of V if and only if
1. v + w ∈ U for all v, w ∈ U , and
2. αv ∈ U for all α ∈ F, v ∈ U .
Example A.4.16: Either of the 3-element sets given in Example A.4.15 shows that W
is a 3-dimensional vector space. The set U = {(0, 0, 0), (1, 1, 0), (0, 1, 1), (1, 0, 1)} is a 2-
dimensional subspace of W .
Proposition A.4.5: Let U1 and U2 be two subspaces of a vector space V . Then the inter-
section U1 ∩ U2 is a subspace of V .
definition: The direct sum U1 ⊕ U2 of two subspaces U1 and U2 of V is the set of all
vectors of the form v1 + v2 , where v1 ∈ V1 and v2 ∈ V2 .
Proposition A.4.6: Let U1 and U2 be two subspaces of a vector space V . Then the direct
sum U1 ⊕ U2 is a subspace of V , and
Big-O Notation
n2 < n2 + n = 2f (n)
Representation by adjacency lists of edges For each vertex, the list of edges incident
with that vertex is traversed. Thus, the number of add operations is O(m).
definition: Functions f (n) and g(n) are big-O equivalent if f (n) is in O(g(n)) and g(n)
is in O(f (n)).
Proposition A.5.1: Functions f (n) and g(n) are big-O equivalent if and only if
lim fg(n)
(n)
= c for some nonzero constant c.
n→∞
Proposition A.5.2: Two polynomial functions are big-O equivalent if and only if they
have the same degree.
Decision Problems
definition: A decision problem is a problem that requires only a yes or no answer
regarding whether some element of its domain has a particular property.
definition: A decision problem belongs to the class P if there is a polynomial-time algo-
rithm to solve the problem.
definition: A decision problem belongs to the class NP if there is a way to provide
evidence of the correctness of a yes answer so that it can be confirmed by a polynomial-
time algorithm.
Example A.5.3: The decision problem “Is this graph bipartite?” is in class P .
Example A.5.4: It is not known whether the decision problem “Can the vertices of this
graph be colored with three colors such that adjacent vertices get different colors?” is in
class P . However, a yes answer could be supported by supplying a proposed 3-coloring of the
vertices. Checking the correctness of this 3-coloring would require counting the number of
different colors used on the vertices, which can be accomplished in linear time, and checking
for each pair of vertices, whether the two vertices have received the same color and whether
they are adjacent, which can be performed in quadratic time. Hence, this decision problem
is in class N P .
Remark: The letters N P stand for nondeterministic polynomial. This terminology derives
from the fact that problems in class N P would be answered in polynomial time if there
was a nondeterministic (limitlessly parallel) machine that could check all possible evidence
sets simultaneously. This philosophically creative notion provides a meaningful theoretical
construct for categorizing problems.
It might appear that the class of problems that could be solved by a nondeterministic
computer should “obviously” be larger than those that can be solved by strictly sequential
polynomial-time algorithms. However, no one has been able to find a problem in class N P
that is provably not in class P . Determining whether such a decision problem exists is
among the foremost unsolved problems in theoretical computer science.
496 Appendix A
COMBINATORIAL MATHEMATICS
497
498 Bibliography
GRAPH THEORY
[GrTu87] J. L. Gross and T. W. Tucker, Topological Graph Theory, Dover, 2001. (First
Edition, Wiley-Interscience, 1987.)
[Ma67] W. S. Massey, Algebraic Topology: An Introduction, Harbrace, 1967.
[Ri74] G. Ringel, Map Color Theorem, Springer, 1974.
[Wh84] A. T. White, Graphs, Groups and Surfaces, Revised Edition, North-Holland, 1984.
Section A.2 References 499
A.2 REFERENCES
In addition to the references cited in the text and listed below, the reader may wish to
consult the Handbook of Graph Theory, which contains many contributed sections with
summaries of the most important research results and extensive bibliographies.
Chapter 1: Foundations
[AgWe88] A. Aggarwal and J. Wein, Computational Geometry, MIT LCS Research Seminar
Series 3, 1988.
[Ch00] J. Chen, Algorithms and Complexity in Computational Geometry, §13.5 of Handbook
of Discrete and Combinatorial Mathematics (ed. K. H. Rosen), CRC Press, 2000.
[CoMo72] H. S. M. Coxeter and W. O. J. Moser, Generators and Relators for Discrete
Groups, Third Edition, Springer-Verlag, 1972.
[EaWh96] P. Eades and S. Whitesides, The realization problem for Euclidean minimum
spanning trees is NP-hard, Algorithmica 16 (1996), 60–82. (Special issue on Graph Drawing,
ed. by G. Di Battista and R. Tamassia.)
[GrTu87] J. L. Gross and T. W. Tucker, Topological Graph Theory, Dover, 2001. (First
Edition, Wiley-Interscience, 1987.)
[LiDi95] G. Liotta and G. Di Battista, Computing proximity drawings of trees in the 3-
dimensional space, pp 239–250 in Proc. 4th Workshop Algorithms Data Struct., Lecture
Notes Comput. Sci. vol. 955, Springer-Verlag, 1995.
Section A.2 References 501
[ApHa76] K. I. Appel and W. Haken, Every planar map is four-colorable, Bull. Amer. Math.
Soc. 82 (1976), 711–712.
[Bä38] F. Bäbler, Über die Zerlegung regulärer Streckencomplexe ungerader Ordnung, Com-
ment. Math. Helv. 10 (1938), 275–287.
[Be68] L. W. Beineke, Derived graphs and digraphs, in Beitrage zur Graphentheorie Tueb-
ner, 1968.
[Br79] D. Brelaz, New methods to color the vertices of a graph, Commun. ACM 22 (1979),
251–256.
[Ca86] M. W. Carter, A survey of practical applications of examination timetabling algo-
rithms, Oper. Res. 34 (1986), 193–202.
[GaJo79] M. R. Garey and D. S. Johnson, Computers and Intractibility: A Guide to the
Theory of NP-completeness, W. H. Freeman, 1979.
[Ho81] I. Holyer, The NP-completeness of edge-coloring, SIAM J. Computing 10 (1981),
718–720.
[KiYe92] L. Kiaer and J. Yellen, Weighted graphs and university course timetabling, Com-
puters and Oper. Res. 19 (1992), 59–67.
[Kö16] D. König, Über Graphen und ihre Andwendung auf Determinantentheorie und Men-
genlehre, Math. Ann. 77 (1916), 453–465.
[Lo75] L. Lovász, Three short proofs in graph theory, J. Combin. Theory Ser. B 19 (1975),
269–271.
[Ma81] B. Manvel, Coloring large graphs, Proceedings of the 1981 Southeastern Conference
on Graph Theory, Combinatorics and Computer Science, 1981.
[Pe1891] J. Petersen, Die Theorie der regulären Graphen, Acta Math. 15 (1891), 193–220.
[Pl04] M. Plummer, Factors and Factorization, §5.4 in Handbook of Graph Theory, Second
Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[RoSaSeTh97] N. Robertson, D. P. Sanders, P. Seymour, and R. Thomas, The four-colour
theorem, J. Combin. Theory Ser. B 70 (1997), 166–183.
[WeYe14] A. Wehrer and J. Yellen, The Design and Implementation of an Interactive Course-
Timetabling System, Annals of Oper. Res. 218, (2014), 327–345.
[BoNi04] B. Bollobas and V. Nikiforov, Extremal Graph Theory, §8.1 in Handbook of Graph
Theory, Second Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[Fa04] R. Faudree, Ramsey Graph Theory, §8.3 in Handbook of Graph Theory, Second Edi-
tion, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[GaRoSp90] R. L. Graham, B. 1. Rothschild, and J. H. Spencer, Ramsey Theory, John
Wiley & Sons, 1990.
[GrGl55] R. E. Greenwood and A. M. Gleason, Combinatorial relations and chromatic
graphs, Canad. J. Math. 7 (1955), 1–7.
504 Bibliography
[Tu41] P. Turán, On an extremal problem in graph theory (Hungarian), Mat. és Fiz. Lapok
48 (1941), 436–452.
[Wo04] N. Wormald, Random Graphs, §8.2 in Handbook of Graph Theory, Second Edition,
eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[GrAl73] J. L. Gross and S. R. Alpert, Branched coverings of graph imbeddings, Bull. Amer.
Math. Soc. 79 (1973), 942–945.
[GrAl74] J. L. Gross and S. R. Alpert, The topological theory of current graphs, J. Combin.
Theory Ser. B 17 (1974), 218–233.
[GrTu77] J. L. Gross and T. W. Tucker, Generating all graph coverings by permutation
voltage assignments, Discrete Math. 18 (1977), 273–283.
[GrTu87] J. L. Gross and T. W. Tucker, Topological Graph Theory, Dover, 2001. (First
Edition, Wiley-Interscience, 1987.)
[Gu63] W. Gustin, Orientable embedding of Cayley graphs, Bull. Amer. Math. Soc. 69
(1963), 272–275.
[He1891] L. Heffter, Über das Problem del Nachbargebiete, Math. Annalen 38 (1891), 477–
580.
[NoStWh71] E. A. Nordhaus, B. M. Stewart, and A. T. White, On the maximum genus of
a graph, J. Combin. Theory Ser. B 11 (1971), 258–267.
[NoRiStWh72] E. A. Nordhaus, R. D. Ringeisen, B. M. Stewart, and A. T. White, A
Kuratowski-type theorem for the maximum genus of a graph, J. Combin. Theory Ser. B 12
(1972), 260–267.
[Th89] C. Thomassen, The graph genus problem is NP-complete, J. of Algorithms 10 (1989),
568–576.
Appendix
[Co71] S. A. Cook, The complexity of theorem proving procedures, Proc. 3rd Annual ACM
Symposium on Theory of Computing (STOC 71) (1971), 151–158.
[Ev79] S. Even, Graph Algorithms, Computer Science Press, 1979.
[GaJo79] M. R. Garey and D. S. Johnson, Computers and Intractibility: A Guide to the
Theory of NP-Completeness, W. H. Freeman, 1979.
[Wi86] H. S. Wilf, Algorithms and Complexity, Prentice-Hall, 1986.
INDEX
507
508 Index