0% found this document useful (0 votes)
47 views526 pages

Advanced Topics in Graph Theory

Topics in Graph Theory is a graduate-level textbook that covers fundamental definitions and theorems of graph theory, along with various advanced topics and research directions. It is designed for mathematically mature students and includes extensive exercises, making it suitable for both first graduate courses and advanced undergraduate courses. The authors, Jonathan L. Gross, Jay Yellen, and Mark Anderson, build on previous work to emphasize topological and algebraic aspects of graph theory.

Uploaded by

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

Advanced Topics in Graph Theory

Topics in Graph Theory is a graduate-level textbook that covers fundamental definitions and theorems of graph theory, along with various advanced topics and research directions. It is designed for mathematically mature students and includes extensive exercises, making it suitable for both first graduate courses and advanced undergraduate courses. The authors, Jonathan L. Gross, Jay Yellen, and Mark Anderson, build on previous work to emphasize topological and algebraic aspects of graph theory.

Uploaded by

Bao Bao
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

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.

Jonathan L. Gross is a professor of computer science at Columbia University. His research


interests include topology and 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

Handbook of Geometric Constraint Systems Principles


Edited by Meera Sitharam, Audrey St. John, Jessica Sidman

Introduction to Chemical Graph Theory


Stephan Wagner, Hua Wang

Extremal Finite Set Theory


Daniel Gerbner, Balazs Patkos

The Mathematics of Chip-Firing


Caroline J. Klivans

Computational Complexity of Counting and Sampling


Istvan Miklos

Volumetric Discrete Geometry


Karoly Bezdek, Zsolt Langi

The Art of Proving Binomial Identities


Michael Z. Spivey

Combinatorics and Number Theory of Counting Sequences


István Mező
Applied Mathematical Modeling
A Multidisciplinary Approach
Douglas R. Shier, K.T. Wallenius

Analytic Combinatorics
A Multidimensional Approach
Marni Mishna

50 years of Combinatorics, Graph Theory, and Computing


Edited By Fan Chung, Ron Graham, Frederick Hoffman, Ronald C. Mullin,
Leslie Hogben, Douglas B. West

Fundamentals of Ramsey Theory


Aaron Robertson

Methods for the Summation of Series


Tian-Xiao He

The Lambert W Function and its Generalizations and Applications


István Mező
Combinatorics of Permutations, Third Edition
Miklos Bona
Topics in Graph Theory
Jonathan L. Gross, Jay Yellen, Mark Anderson

[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

and by CRC Press


4 Park Square, Milton Park, Abingdon, Oxon, OX14 4RN

CRC Press is an imprint of Taylor & Francis Group, LLC

© 2023 Taylor & Francis Group, LLC

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.

ISBN: 978-0-367-50787-9 (hbk)


ISBN: 978-1-032-49239-1 (pbk)
ISBN: 978-1-003-05123-7 (ebk)

DOI: 10.1201/9781003051237

Typeset in CMR10 font


by KnowledgeWorks Global Ltd.

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

2 ISOMORPHISMS AND SYMMETRY 59


2.1 Graph Homomorphisms and Isomorphisms . . . . . . . . . . . . . . . . . . . 60
2.2 Automorphisms and Symmetry . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.3 Tests for Non-Isomorphism . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

3 TREES AND CONNECTIVITY 85


3.1 Characterizations and Properties of Trees . . . . . . . . . . . . . . . . . . . 86
3.2 Cycles, Edge-Cuts, and Spanning Trees . . . . . . . . . . . . . . . . . . . . 93
3.3 Graphs and Vector Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.4 Vertex- and Edge-Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . 110
3.5 Max-Min Duality and Menger’s Theorems . . . . . . . . . . . . . . . . . . . 115
3.6 Block Decompositions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

4 PLANARITY AND KURATOWSKI’S THEOREM 131


4.1 Planar Drawings and Some Basic Surfaces . . . . . . . . . . . . . . . . . . . 132
4.2 Subdivision and Homeomorphism . . . . . . . . . . . . . . . . . . . . . . . . 138
4.3 Extending Planar Drawings . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
4.4 Kuratowski’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
4.5 Algebraic Tests for Planarity . . . . . . . . . . . . . . . . . . . . . . . . . . 157
4.6 Planarity Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
4.7 Crossing Numbers and Thickness . . . . . . . . . . . . . . . . . . . . . . . . 173
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

5 DRAWING GRAPHS AND MAPS 185


5.1 Topology of Low Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . 186
5.2 Higher-Order Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
5.3 Mathematical Model for Drawing Graphs . . . . . . . . . . . . . . . . . . . 195
5.4 Regular Maps on a Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
5.5 Imbeddings on Higher-Order Surfaces . . . . . . . . . . . . . . . . . . . . . 202

v
vi Contents

5.6 Geometric Drawings of Graphs . . . . . . . . . . . . . . . . . . . . . . . . . 209


Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

6 GRAPH COLORINGS 221


6.1 Vertex-Colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
6.2 Local Recolorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
6.3 Map-Colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
6.4 Edge-Colorings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
6.5 Factorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

7 MEASUREMENT AND MAPPINGS 281


7.1 Distance in Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
7.2 Domination in Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
7.3 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
7.4 Intersection Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
7.5 Graph Homomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
7.6 Modeling Network Emulation . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328

8 ANALYTIC GRAPH THEORY 335


8.1 Ramsey Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
8.2 Extremal Graph Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
8.3 Random Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357

9 GRAPH COLORINGS AND SYMMETRY 359


9.1 Automorphisms of Simple Graphs . . . . . . . . . . . . . . . . . . . . . . . . 360
9.2 Equivalence Classes of Colorings . . . . . . . . . . . . . . . . . . . . . . . . 365
9.3 Burnside’s Lemma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
9.4 Cycle-Index Polynomial of a Permutation Group . . . . . . . . . . . . . . . 377
9.5 More Counting, Including Simple Graphs . . . . . . . . . . . . . . . . . . . 381
9.6 Pölya-Burnside Enumeration . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392

10 ALGEBRAIC SPECIFICATION OF GRAPHS 395


10.1 Cyclic Voltages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
10.2 Specifying Connected Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . 407
10.3 Zn -Voltage Graphs and Graph Colorings . . . . . . . . . . . . . . . . . . . . 415
10.4 General Voltage Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
10.5 Permutation Voltages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
10.6 Symmetric Graphs and Parallel Architectures . . . . . . . . . . . . . . . . . 439
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

11 NON-PLANAR LAYOUTS 451


11.1 Representing Imbeddings by Rotations . . . . . . . . . . . . . . . . . . . . . 452
11.2 Genus Distribution of a Graph . . . . . . . . . . . . . . . . . . . . . . . . . 459
11.3 Voltage-Graph Specification of Graph Layouts . . . . . . . . . . . . . . . . . 463
11.4 Non-KVL-Imbedded Voltage Graphs . . . . . . . . . . . . . . . . . . . . . . 470
11.5 Heawood Map-Coloring Problem . . . . . . . . . . . . . . . . . . . . . . . . 473
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Contents vii

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.

Mark Anderson, Jonathan L. Gross, and Jay Yellen

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

1.1 BASIC DEFINITIONS AND TERMINOLOGY


Graphs are highly versatile models for analyzing a wide range of practical problems in
which points and connections between them have some physical or conceptual interpretation.
Placing such analysis on solid footing requires precise definitions, terminology, and notation.
definition: A graph G = (V, E) is a mathematical structure consisting of two finite 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.
terminology: An edge is said to join its endpoints.
definition: Adjacent vertices are two vertices that are joined by an edge.
definition: Adjacent edges are two distinct edges that have an endpoint in common.
definition: If vertex v is an endpoint of edge e, then v is said to be incident on e, and e
is incident on v.
definition: The (open) neighborhood of a vertex v in a graph G, denoted N (v), all
vertices adjacent to v. The closed neighborhood of v is given by N [v] = N (v) ∪ {v}. The
vertices in N (v) are said to be neighbors of v.
notation: When G is not the only graph under consideration, the notations VG and EG
(or V (G) and E(G)) are used for the vertex- and edge-sets of G, and the notations NG (v)
and NG [v] are used for the neighborhoods of v.

p q k
v
A B c
g
u f
a b h

r s d
w

Figure 1.1.1 Line drawings of a graph A and a graph B.

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.

Simple Graphs and General Graphs


In certain applications of graph theory and in some theoretical contexts, there are fre-
quent instances in which an edge joins a vertex to itself or multiple edges have the same set
of endpoints. In other applications or theoretical contexts, such instances are absent.
Section 1.1 Basic Definitions and Terminology 3

definition: A proper edge is an edge that joins two distinct vertices.


definition: A self-loop is an edge that joins a single endpoint to itself.†
definition: A multi-edge is a collection of two or more edges having identical endpoints.
The edge multiplicity is the number of edges within the multi-edge.
definition: A simple graph has neither self-loops nor multi-edges.
definition: A loopless graph (or multi-graph) may have multi-edges but no self-loops.
definition: A (general) graph may have self-loops and/or multi-edges.
Example 1.1.1 continued: Graph A in Figure 1.1.1 is simple. Graph B is not simple;
the edges a, b, and k are self-loops, and the edge-sets {f, g, h} and {a, b} are multi-edges.
terminology: When we use the term graph without a modifier, we mean a general graph.
An exception to this convention occurs when an entire section concerns simple graphs only,
in which case, we make an explicit declaration at the beginning of that section.
terminology note: Some authors use the term graph without a modifier to mean simple
graph, and they use pseudograph to mean general graph.

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: Each edge contributes two to the degree sum. ♦


Corollary 1.1.3: In a graph, there is an even number of vertices having odd degree.

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

Figure 1.1.4 The first five complete graphs.

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.

Tetrahedron Cube Octahedron

Dodecahedron Icosahedron

Figure 1.1.5 The five platonic graphs.

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.

Figure 1.1.6 The Petersen graph.


6 Chapter 1 FOUNDATIONS

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.

Figure 1.1.7 Circular ladder graph CL4 .

definition: To the group of integers Zn = {0, 1, . . . , n − 1} under addition modulo n and


a set S ⊆ {1, . . . , n − 1}, we associate the circulant graph circ(n : S) whose vertex-set is
Zn , such that 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. In this regard, the elements of the set S are called
connections.
notation: It is often convenient to specify the connection set S = {s1 , . . . , sr } without the
braces, and to write circ (n : s1 , . . . , sr ).
Example 1.1.7: Figure 1.1.8 shows three circulant graphs.

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)

Figure 1.1.8 Three circulant graphs.

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.

Figure 1.1.9 Two bipartite graphs.

Proposition 1.1.4: A bipartite graph cannot have any self-loops.

Proof: This is an immediate consequence of the definition. ♦


definition: A complete bipartite graph is a simple bipartite graph such that every
vertex in one of the bipartition subsets is joined to every vertex in the other bipartition
subset. Any complete bipartite graph that has m vertices in one of its bipartition subsets
and n vertices in the other is denoted Km,n .†
Example 1.1.9: The complete bipartite graph K3,4 is shown in Figure 1.1.10.

Figure 1.1.10 The complete bipartite graph K3,4 .

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)

Figure 1.1.11 A graph and its line graph.

† The sense in which Km,n is a unique object is described in §2.1.


8 Chapter 1 FOUNDATIONS

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

Figure 1.1.12 Constructing a graph with degree sequence h5, 4, 3, 3, 2, 1, 0i.

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

Figure 1.1.13 Switching adjacencies while preserving all degrees.

Corollary 1.1.7: [Havel (1955) and Hakimi (1961)] A sequence hd1 , d2 , . . . , dn i of


nonnegative integers such that d1 ≤ n − 1 and d1 ≥ d2 ≥ . . . ≥ dn is graphic if and
only if the sequence hd2 − 1, . . . , dd1 +1 − 1, dd1 +2 , . . . , dn i is graphic. ♦ (Exercises)

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 >

Figure 1.1.14 Testing and realizing the sequence h3, 3, 2, 2, 1, 1i.

EXERCISES for Section 1.1


1.1.1 Draw a graph with the given degree sequence.
(a) h8, 7, 3i (b) h9, 8, 8, 6, 5, 3, 1i

1.1.2 Draw a simple graph with the given degree sequence.


(a) h6, 4, 4, 3, 3, 2, 1, 1i (b) h5, 5, 5, 3, 3, 3, 3, 3i
10 Chapter 1 FOUNDATIONS

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.5 Use Theorem 1.1.6 to prove Corollary 1.1.7.


1.1.6 Write an algorithm that applies Corollary 1.1.7 repeatedly until a sequence of all zeros
or a sequence with a negative term results.
1.1.7 Given a group of nine people, is it possible for each person to shake hands with exactly
three other people?

1.1.8 Draw a graph whose degree sequence has no duplicate terms.


1.1.9 What special property of a function must the endpts function have for a graph to
have no multi-edges?
1.1.10 How many different degree sequences can be realized for a graph having three vertices
and three edges?
1.1.11 Does there exist a simple graph with five vertices, such that every vertex is incident
with at least one edge, but no two edges are adjacent?
1.1.12 Prove or disprove: There exists a simple graph with 13 vertices, 31 edges, three
1-valent vertices, and seven 4-valent vertices.
1.1.13 Find the number of edges for each of the following graphs.
(a) Kn (b) Km,n

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

1.1.17 Draw a 3-regular bipartite graph that is not K3,3 .


1.1.18 Determine whether the given graph is bipartite. In each case, give a vertex bipartition
or explain why the graph is not bipartite.
(a) x z x
(b) z x x (c)
y x y
w z
w z w z

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.

1.2 WALKS AND CONNECTIVITY


Many applications call for graph models that can represent traversal and distance. For
instance, the number of node-links traversed by an email message on its route from sender to
recipient is a form of distance. Beyond physical distance, another example is that a sequence
of tasks in an activity-scheduling network forms a critical path if a delay in any one of the
tasks would cause a delay in the overall project completion. This section and the following
one clarify the notion of walk and related terminology.

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

definition: In a graph G, a walk from vertex v0 to vertex vn is an alternating sequence


W = hv0 , e1 , v1 , e2 , . . . , vn−1 , en , vn i
of vertices and edges, such that endpts(ei ) = {vi−1 , vi }, for i = 1, . . . , n. One might ab-
breviate the representation as an edge sequence from the starting vertex to the destination
vertex
W = hv0 , e1 , e2 , . . . , en , vn i
In a simple graph, there is only one edge between two consecutive vertices of a walk, so one
could abbreviate the representation as a vertex sequence
W = hv0 , v1 , . . . , vn i
terminology: A walk from a vertex x to a vertex y is also called an x-y walk.
definition: The length of a walk is the number of edge-steps in the walk sequence.
definition: A walk of length 0, i.e., with one vertex and no edges, is called a trivial walk.
definition: A closed walk is a walk that begins and ends at the same vertex. An open
walk begins and ends at different vertices.
definition: The concatenation of two walks W1 = hv0 , e1 , . . . , vk−1 , ek , vk i and W2 =
hvk , ek+1 , vk+1 , ek+2 , . . . , vn−1 , en , vn i such that walk W2 begins where walk W1 ends, is the
walk
W1 ◦ W2 = hv0 , e1 , . . . , vk−1 , ek , vk , ek+1 , . . . , vn−1 , en , vn i
Example 1.2.1: Figure 1.2.1 shows the concatenation of an open walk of length 3 with an
open walk of length 2, resulting in a closed walk of length 5. Notice that W1 and W2 have
no repeated vertices or edges (and hence are paths as defined in the next section), but their
concatenation does have repeated edges.

a b
W1 =< a, b, c, d >
c
W2 =< d, b, a >
W1 ◦ W2 =< a, b, c, d, b, a >
e d

Figure 1.2.1 Concatenation of two walks.

definition: A subwalk of a walk W = hv0 , e1 , v1 , e2 , . . . , vn−1 , en , vn i is a subsequence of


consecutive entries S = hvj , ej+1 , vj+1 , . . . , ek , vk i such that 0 ≤ j ≤ k ≤ n, that begins and
ends at a vertex. Thus, the subwalk is itself a walk.

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

A shortest walk contains no repeated vertices or edges (see Exercises). It is instructive


to think about how one might find a shortest walk. Ad hoc approaches are adequate for
small graphs, but a systematic algorithm is essential for larger graphs. See Figure 1.2.2.

s t

Figure 1.2.2 How might you find a shortest walk from s to t in this graph?

Eccentricity, Diameter, and Radius


definition: The diameter of a graph G, denoted diam(G), is the maximum distance
between two vertices in G. That is,
diam (G) = max {d (x, y)}
x,y∈VG

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

definition: A central vertex v of a graph G is a vertex with minimum eccentricity, i.e.,


ecc(v) = rad(G).
Example 1.2.3: The graph of Figure 1.2.3 below has diameter 4, achieved by the vertex
pairs u, v and u, w. The vertices x and y have eccentricity 2 and all other vertices have
greater eccentricity. Thus, the graph has radius 2 and central vertices x and y.

x v

w
y

Figure 1.2.3 A graph with diameter 4 and radius 2.

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

Figure 1.2.4 A non-connected graph with three components.

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

Example 1.2.7: Path graphs P2 and P4 are shown in Figure 1.2.6.

P2 P4

Figure 1.2.6 Path graphs P2 and P4 .

Deleting Closed Subwalks from Walks


definition: Given a walk W = hv0 , e1 , . . . , vn−1 , en , vn i that contains a nontrivial, closed
subwalk W 0 = hvk , ek+1 , . . . , vm−1 , em , vk i, the reduction of walk W by subwalk W 0 ,
denoted W − W 0 , is the walk

W − W 0 = hv0 , e1 , . . . , vk−1 , ek , vk , em+1 , vm+1 , . . . , vn−1 , en i

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.

Proof: A shortest x-y walk must be an x-y path, by Theorem 1.2.4. ♦

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

Figure 1.2.8 Cycle graphs C1 , C2 , and C4 .

definition: A tree is a connected graph that has no cycles.


definition: A forest is an acyclic graph, i.e., a graph that has no cycles.
definition: The girth of a graph G with at least one cycle is the length of a shortest cycle
in G. The girth of an acyclic graph is undefined.
Example 1.2.10: The girth of the graph in Figure 1.2.9 below is 3 since there is a 3-cycle
but no 2-cycle or 1-cycle.

Figure 1.2.9 A graph with girth 3.

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

Figure 1.2.10 A Hamiltonian graph.

† The term “Hamiltonian” is in honor of the Irish mathematician William Rowan Hamilton.
Section 1.2 Walks and Connectivity 17

Example 1.2.12: The graphs in Figure 1.2.11 are not Hamiltonian.

Figure 1.2.11 Two graphs that are not Hamiltonian.

The following result gives an important characterization of bipartite graphs.


Theorem 1.2.6: A graph G is bipartite if and only if it has no cycles of odd length.

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

Figure 1.2.12 Figure for sufficiency part of Theorem 1.2.6 proof.

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: Let T 0 be a minimum-length, nontrivial, closed subwalk of T . Its minimum length


implies that T 0 has no proper closed subwalks, and, hence, its only repeated vertices are its
first and last. Thus, T 0 is a cycle. ♦
Remark: The assertion of Proposition 1.2.7 is no longer true if T is merely a closed walk
(see Exercises).
18 Chapter 1 FOUNDATIONS

definition: A collection of edge-disjoint cycles, C1 , C2 , . . . , Cm , is called a decomposition


of a closed trail T if each cycle Ci is either a subwalk or a reduced walk of T and the edge-sets
of the cycles partition the edge-set of trail T.
Theorem 1.2.8: A closed trail can be decomposed into edge-disjoint cycles.

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 >

C1 =< z, k, c, f, z >; C2 =< u, a, b, e, d, u >; C3 =< w, h, i, j, g, w >

Figure 1.2.13 A closed trail T decomposed into three cycles.

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

Figure 1.2.14 An Eulerian graph.

† The term “Eulerian” is in honor of the Swiss mathematician Leonhard Euler.


Section 1.2 Walks and Connectivity 19

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.

EXERCISES for Section 1.2


1.2.1 Determine which of the following vertex sequences represent walks in the graph below.
(a) hu, vi (b) hvi (c) hu, z, vi (d) hu, v, w, vi

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.11 Let G be a connected graph. Prove that

rad (G) ≤ diam (G) ≤ 2 · rad (G)


1.2.12 Let u and v be any two vertices of a connected graph G. Prove that there exists a
u − v walk containing all the vertices of G.
1.2.13 Prove that a shortest walk between two vertices cannot repeat a vertex or an edge.
1.2.14 Let x and y be two different vertices in the given graph. Find the number of x-y
walks of length 2 and of length 3.
(a) The complete graph K4 .
(b) The complete bipartite graph K3,3 , assuming x and y are adjacent.
(c) The complete bipartite graph K3,3 , assuming x and y are not adjacent.

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

1.2.16 Prove Proposition 1.2.1.


1.2.17 Let G be a connected graph. Prove that if d (x, y) ≥ 2, then there exists a vertex w
such that d(x, y) = d(x, w) + d(w, y).
n−1
1.2.18 Let G be an n-vertex simple graph such that deg (v) ≥ 2 for every vertex v ∈ VG .
Prove that graph G is connected.
1.2.19 Explain how Corollary 1.2.9 follows from Theorem 1.2.8.
1.2.20 Determine the girth of the given graph.
(a) The hypercube graph Qn .
(b) The circular ladder graph CLn .
(c) The Petersen graph.
(d) The circulant graph circ(n : m).
(e) The circulant graph circ(n : a, b).

1.2.21 Determine whether the given graph is Hamiltonian.


(a) The hypercube graph Qn .
(b) The circular ladder graph CLn .
(c) The Petersen graph.
(d) The circulant graph circ(n : a, b).

1.2.22 Find an Eulerian trail, if possible, for the given graph.


(a) The hypercube graph Q3 .
(b) The circular ladder graphs CL4 .
(c) The Petersen graph.

1.2.23 Construct an Eulerian trail, if possible, for the given graph.


a

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

definition: A graph G0 = (V 0 , E 0 ) is a subgraph of graph G = (V, E) if V 0 ⊆ V and


E 0 ⊆ E. It is a proper subgraph of G if V 0 is a proper subset of V or E 0 is a proper
subset of E.
Example 1.3.1: Figure 1.3.1 shows a graph and three proper 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

Figure 1.3.1 A graph G and three (proper) subgraphs H1 , H2 , and H3 .

Properties of a given graph are often determined by the existence or non-existence of


certain types of subgraphs. For example, bipartite graphs never have an odd cycle graph as
a subgraph.
Section 1.3 Subgraphs 23

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} )

Figure 1.3.2 Two subgraphs induced on vertex subsets.

definition: For a given graph G, the subgraph induced on an edge subset D of EG ,


denoted G(D), is the subgraph of G whose edge-set is D and whose vertex-set consists of
all vertices that are incident with at least one edge in D. That is,
VG(D) = {v ∈ VG | v ∈ endpts(e), for some e ∈ D} and EG(D) = D
Example 1.3.3: Figure 1.3.3 shows a graph G and two induced subgraphs (shown in bold),
one on a 8-edge subset, and the other on a 6-edge subset.

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 } )

Figure 1.3.3 Two subgraphs induced on edge subsets.

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

Figure 1.3.4 A graph whose center is a 7-cycle.

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 )

Figure 1.3.5 A graph G and three of its local subgraphs.

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.

Figure 1.3.6 A graph with four components.

Since the reachability relation is an equivalence relation on the vertex-set of a graph,


the following proposition gives an alternative definition of a component of a graph and
shows that there is a one-to-one correspondence between the components of a graph and
the equivalence classes of the reachability relation.
Proposition 1.3.1: A subgraph H of a graph G is a component of G if and only if VH is
an equivalence class of the reachability relation on VG and H is the subgraph induced on
its vertex-set, i.e., H = G(VH ). ♦ (Exercises)
notation: The number of components of a graph G is denoted c(G).
definition: In a graph G, the component of a vertex v, denoted C(v), is the subgraph
induced on the subset of all vertices reachable from v.
Section 1.3 Subgraphs 25

Cliques and Independent Sets


definition: A subset S of VG is called a clique if every pair of vertices in S is joined by
at least one edge, and no proper superset of S has this property.
Thus, a clique of a graph G is a maximal subset of mutually adjacent vertices in G.
terminology note: The graph-theory community seems to be split on whether to require
that a clique be maximal with respect to the pairwise-adjacency property. The prose sense
of “clique” as an exclusive group of people motivates our decision to include maximality in
the mathematical definition.
definition: The clique number of a graph G is the number ω(G) of vertices in a largest
clique in G.
Example 1.3.7: There are three cliques in the graph shown in Figure 1.3.7. In particular,
each of the vertex subsets {u, v, y}, {u, x, y}, and {y, z} corresponds to a complete subgraph,
and no proper superset of any of them corresponds to a complete subgraph. The clique
number is 3, the cardinality of the largest clique.

u v

y z
x

Figure 1.3.7 A graph with three cliques.

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 .

definition: A spanning tree of a graph is a spanning subgraph that is a tree.


Example 1.3.9: Three spanning subgraphs of a non-simple graph are shown in Figure
1.3.8 with their edges in bold. The subgraph in (c) is a spanning tree.
A number of important properties related to spanning trees are established in Chapter
3. Two of these properties are previewed here.
Proposition 1.3.2: A graph is connected if and only if it contains a spanning tree.
♦ (Exercises)
Proposition 1.3.3: Every acyclic subgraph of a connected graph G is contained in at least
one spanning tree of G. ♦ (Exercises or Proposition 3.2.2)
26 Chapter 1 FOUNDATIONS

(a) (b) (c)

Figure 1.3.8 Three spanning subgraphs.


Example 1.3.10: In Figure 1.3.9, the isolated vertex and the bold edges with their end-
points form a forest that spans a 12-vertex graph G. Each component of the forest is a
spanning tree of the corresponding component of G.

Figure 1.3.9 A spanning forest H of graph G.

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.

Proposition 1.3.4: For any graph G and any vertex subset U ,

G(U ) = G − (VG − U ) ♦ (Exercises)

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

Figure 1.3.11 A graph with four cut-vertices.

definition: An edge-cut in a graph G is a set of edges D such that G − D has more


components than G.
definition: An edge e is a cut-edge (or bridge) in a graph G if {e} is an edge-cut.
Example 1.3.13: For the graph shown in Figure 1.3.12, edges a, b, and c are cut-edges;
{r, s, t} is an edge-cut; and {r, s} is a minimal edge-cut.

r s
a c
t

Figure 1.3.12 A graph with three cut-edges.

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.

definition: An edge e of a graph is called a cycle-edge if e lies in some cycle of that


graph.
28 Chapter 1 FOUNDATIONS

u
e
v

w z

Figure 1.3.13 The components CG−e (u) and CG−e (v).

Proposition 1.3.5: Let e be an edge of a connected graph G. Then G − e is connected if


and only if e is a cycle-edge of G.

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

The Graph-Reconstruction Problem


definition: Let G be a graph with VG = {v1 , v2 , . . . , vn }. The vertex-deletion subgraph
list of G is the list of the n subgraphs H1 , . . . , Hn , where Hk = G − vk , k = 1, . . . , n.
Remark: The word “list” is being used informally here to mean the multiset† of vertex-
deletion subgraphs of G. That is, the unordered collection of the n vertex-deletion subgraphs,
some of which may be isomorphic.

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

hybrid, having no order, but may have repetitions.


Section 1.3 Subgraphs 29
v1

v5 v2

G
v4 v3

G-v1 G-v2 G-v3 G-v4 G-v5

Figure 1.3.14 A graph and its vertex-deletion subgraph list.

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.

Figure 1.3.15 The deck for the graph G.

definition: The graph-reconstruction problem is to decide whether two different (i.e.,


non-isomorphic) simple graphs with three or more vertices can have the same deck.
Remark: The graph-reconstruction problem would be easy to solve if the vertex-deletion
subgraphs included the vertex and edge names. However, the problem is concerned with a
list of unlabeled graphs, and it is among the foremost unsolved problems in graph theory.
The problem was originally formulated by P.J. Kelly and S.M. Ulam in 1941.
Example 1.3.15: In terms of Example 1.3.14, the graph-reconstruction problem asks
whether the graph G in Figure 1.3.14 is the only graph (up to isomorphism) that has
the deck shown in Figure 1.3.15.
The following results indicate that some information about the original graph can be
derived from its vertex-deletion subgraph list. This information is a big help in solving small
reconstruction problems.
30 Chapter 1 FOUNDATIONS

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

EXERCISES for Section 1.3


1.3.1 Find the induced subgraphs G({u, v, y}) and G({p, r, e}) of the given graph.

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.

1.3.5 Consider the following graph.


v w v
u w

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

1.3.20 Find a graph with the given vertex-deletion subgraph list.


(a)

(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.

1.4 Graph Operations


Section 1.3 focused on a variety subgraphs within a graph. In this section we construct
larger graphs by adding vertices or edges to a graph or by combining two graphs.

Adding Edges or Vertices


definition: Adding an edge between two vertices u and w of a graph G means creating
a supergraph, denoted G + e, with vertex-set VG and edge-set EG ∪ {e}, where e is a new
edge with endpoints u and w.
Example 1.4.1: Figure 1.4.1 shows the effect of the operation of adding an edge.

v v
c c
a u h +e a u h
b f b f
d g d g

e
w w

Figure 1.4.1 Adding an edge e with endpoints u and w.

definition: Adding a vertex v to a graph G, where v is a new vertex not already in VG ,


means creating a supergraph, denoted G ∪ {v}, with vertex-set VG ∪ {v} and edge-set EG .

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 .

Figure 1.4.2 The graph union 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 .

Figure 1.4.3 The 4-fold self-union 4K3 .

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

Figure 1.4.4 A graph and its complement.

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

ω(G) = α(G) and α(G) = ω(G) ♦ (Exercises)


Section 1.4 Graph Operations 35

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.

Example 1.4.5: Figure 1.4.5 illustrates the Cartesian product P2 × P3 .

P3

x y z
c d

(u, x) (u, y) (u, z)


u
(u, c) (u, d)
P2 e (e, x) (e, y) (e, z)
(v, c) (v, d)
v
(v, x) (v, y) (v, z)

P2 X P3

Figure 1.4.5 The Cartesian product P2 × 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)

d b e (d, 0) (d, 1) (b, 1) (b, 0)


c
(x, 1) (w, 1)
x w 1 (c, 1)
(v, e) (v, e)
C4 K2 C4 X K2

(x, 0) (c, 0) (w, 0)

Figure 1.4.6 The labeled Cartesian product C4 × K2 .

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

Figure 1.4.7 The circular ladders CL3 , CL4 , and CL5 .


definition: The circular ladder with n rungs, denoted CLn , is the Cartesian product
Cn × K2 .
In §1.1, the hypercube graph Qn is defined as the n-regular graph whose vertex-set is
the set of bitstrings of length n, such that two vertices are adjacent if and only if they differ
in exactly one bit. The labeling in Figure 1.4.8 suggests how Qn may be defined recursively.
11 110 111

01 010 011

10 100 101

00 000 001

Q2 Q3

Figure 1.4.8 Bitstring labels showing Q3 = Q2 × K2 .

recursive definition: The hypercube graph Qn is defined recursively as follows.


Q1 = K2 and Qn = Qn−1 × K2 , for n ≥ 2
Figure 1.4.9 illustrates the recursion for Q4 .

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

definition: The (m1 × m2 × · · · × mn )-mesh is the Cartesian product of paths,


Pm1 × Pm2 × · · · × Pmn , as shown in Figure 1.4.10.

Figure 1.4.10 The (5 × 4 × 2)-mesh.

definition: The wraparound (m1 × m2 × · · · × mn )-mesh is the Cartesian product of


cycles, Cm1 × Cm2 × · · · × Cmn , as shown in Figure 1.4.11.

Figure 1.4.11 The wraparound (4 × 3)-mesh.

Joining a Vertex to a Graph


definition: If a new vertex v is joined to each of the vertices of a graph G, then the
resulting graph is called the join of v to G or the suspension of G from v, and is denoted
G + v.
definition: The n-wheel Wn is the join Cn +v of a single vertex to an n-cycle, as illustrated
in Figure 1.4.12. (The n-cycle forms the rim of the wheel, and the additional vertex is its
hub.) The graph Wn is called an even (odd) wheel if n is even (odd).

+ =
v
v

Figure 1.4.12 The 5-wheel W5 = C5 + v.


38 Chapter 1 FOUNDATIONS

The following proposition hints at the usefulness of the join construction.


Proposition 1.4.2: Let H be a graph. Then there is a graph G of radius 2 of which H is
the center.
Proof: First construct a supergraph Ĥ by joining two new vertices u and v to every vertex
of H, but not to each other; that is, Ĥ = ((H + u) + v) − uv. Then form the supergraph G
by attaching new vertices u1 and v1 to vertices u and v, respectively, with edges uu 1 and
vv 1 , as in Figure 1.4.13. Thus, G = (Ĥ ∪ 2K1 ) + uu1 + vv1 ), where the two copies of K1
are the two trivial graphs consisting of vertices u1 and v1 . It is easy to verify that, in graph
G, each vertex of H has eccentricity 2, vertices u and v have eccentricity 3, and u1 and v1
have eccentricity 4. Thus, H is the center of G. ♦
u1
u

G H

v
v1

Figure 1.4.13 Making graph H the center of a graph G.

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.

+ =

Figure 1.4.14 The join P2 + P3 .

Proposition 1.4.3: The join Km + Kn is the complete graph Km+n .


Proof: Consider any two vertices in Km + Kn . If both are from Km or if both are from
Kn , then they are still adjacent in Km + Kn . Otherwise, the join construction places an
edge between them. ♦
Example 1.4.7: The join mK1 + nK1 is the complete bipartite graph Km,n . One part
of the bipartition is the vertex-set of mK1 (m isolated vertices) and the other part is the
vertex-set of nK1 .
definition: The n-dimensional octahedral graph On , is defined recursively, using the
join operation. 
2K1 if n = 1
On =
2K1 + On−1 if n ≥ 2
It is also called the n-octahedron graph or, when n = 3, the octahedral graph, because
it is the 1-skeleton of the octahedron, a platonic solid.
Section 1.4 Graph Operations 39

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

Figure 1.4.16 The graph 3K2 is isomorphic to the octahedral graph O3 .

EXERCISES for Section 1.4


1.4.1 Prove or disprove: For every graph G, the suspension G + v has no cut-vertices.
1.4.2 State a necessary and sufficient condition for an n-vertex graph G to be a suspension
of some subgraph H from a vertex in VG − VH .
1.4.3 Give a recursive definition for the complete graph Kn , using the join operation.
1.4.4 Explain why Theorem 1.4.1 follows immediately from the definitions.
1.4.5 Prove that for any simple graph G on 6 vertices, a copy of K3 appears as a subgraph
of either G or G (or both).
1.4.6 Prove that no vertex of a graph G can be a cut-vertex of both G and G.
1.4.7 Let G be a simple graph. Prove that at least one of the graphs G and G is connected.
40 Chapter 1 FOUNDATIONS

1.4.8 Draw the indicated Cartesian product.


(a) K2 × C5 . (b) P3 × C5 . (c) W5 × P3 . (d) P3 × 2K3 .

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.11 Draw the indicated join.


(a) K3 + K3 . (b) B2 + K4 . (c) W6 + P2 . (d) P3 + K3 + C2 .

1.4.12 Give a necessary and sufficient condition that the join of two bipartite graphs be
non-bipartite.

1.5 DIRECTED GRAPHS


Adding directions to the edges of a graph creates a directed graph.
definition: An arc (or directed edge) is an edge, one of whose endpoints is designated
as the tail, and whose other endpoint is designated as the head.
terminology: An arc is said to be directed from its tail to its head.
notation: In a general digraph, the head and tail of an arc e may be denoted head(e) and
tail(e), respectively.
definition: Two arcs between a pair of vertices are said to be oppositely directed if
they do not have the same head and tail.
definition: A multi-arc is a set of two or more arcs having the same tail and same head.
The arc multiplicity is the number of arcs within the multi-arc.
definition: A directed graph (or digraph) is a graph, each of whose edges is directed.
definition: A digraph is simple if it has neither self-loops nor multi-arcs.
notation: In a simple digraph, an arc from vertex u to vertex v may be denoted by uv or
by the ordered pair (u, v).
Example 1.5.1: The digraph in Figure 1.5.1 is simple. Its arcs are uv, vu, and vw.

u v w

Figure 1.5.1 A simple digraph with a pair of oppositely directed arcs.

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

Figure 1.5.2 A digraph and its underlying graph.

Indegree and Outdegree in a Digraph


definition: The indegree of a vertex v in a digraph is the number of arcs directed to v;
the outdegree of vertex v is the number of arcs directed from v. Each self-loop at v counts
one toward the indegree of v and one toward the outdegree. See Figure 1.5.3.

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

Figure 1.5.4 Markov process from Application 1.5.1.

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

definition: If G is a digraph, then W = hv0 , e1 , v1 , e2 , . . . , en , vn i is a directed walk if


arc ei is directed from vertex vi−1 to vertex vi , i = 1, . . . , n.
Example 1.5.3: In the Markov diagram in Figure 1.5.4, the choice sequence of a cereal
eater who buys O’s, switches to W’s, sticks with W’s for two more boxes, and then switches
back to O’s is represented by the closed directed walk

< 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

Strongly Connected Digraphs


definition: A digraph is connected if its underlying graph is connected.
terminology note: Some authors use the term weakly connected digraph instead of con-
nected digraph.
definition: A vertex v is reachable from a vertex u in a digraph D if D contains a
directed u-v walk.
definition: A digraph D is strongly connected if every two of its vertices are mutually
reachable.
Example 1.5.5: The digraph shown in Figure 1.5.5 is strongly connected.

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

Figure 1.5.6 A national park’s system of roads.

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.

EXERCISES for Section 1.5


1.5.1 Draw a digraph for each of the following indegree and outdegree sequences, such that
the indegree and outdegree of each vertex occupy the same position in both sequences.
(a) in: h1, 1, 1i out: h1, 1, 1i
(b) in: h2, 1i out: h3, 0i

definition: A pair of sequences ha1 , a2 , . . . , an i and hb1 , b2 , . . . , bn i is called digraphic if


there exists a simple digraph with vertex-set {v1 , v2 , . . . , vn } such that outdegree(vi ) = ai
and indegree(vi ) = bi for i = 1, 2, . . . , n.

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.

definition: A tournament is a digraph whose underlying graph is a complete graph.

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

definition: A strong component of a digraph is the graph induced on an equivalence


class of the mutual reachability equivalence relation on its vertex-set.
1.5.8 Find the strong components of the given graph.
1

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.

1.6 FORMAL SPECIFICATIONS FOR GRAPHS AND DIGRAPHS


Except for the smallest graphs, line drawings are inadequate for describing a graph;
imagine trying to draw a graph to represent a telephone network for a small city. Since
many applications involve computations on graphs having hundreds, or even thousands, of
vertices, another, more formal kind of specification of a graph is often needed.
The specification must include (implicitly or explicitly) a function, endpts, that specifies,
for each edge, the subset of vertices on which that edge is incident, and for a directed graph
the functions head and tail. In a simple graph, the juxtaposition notation for each edge
implicitly specifies its endpoints, making formal specification simpler for simple graphs
than for general graphs.
definition: The adjacency table for a simple graph has a row for each vertex, con-
taining the list of vertices adjacent to that vertex.
Example 1.6.1: Figure 1.6.1 shows a line drawing and a formal specification for a simple
graph.

p q
p: q r s
q: p s
r: p s
s: p q r
r s

Figure 1.6.1 A simple graph and its adjacency table.


Section 1.6 Formal Specifications for Graphs and Digraphs 45

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

Figure 1.6.2 A general graph and its incidence table.

definition: The adjacency matrix of a general graph G, denoted AG , is the symmetric


matrix whose rows and columns are both indexed by identical orderings of VG , such that
AG [u, u] is twice the number of self-loops on u, and for u 6= v AG [u, v] is the number of
edges with u and v as endpoints.
Example 1.6.3: Figure 1.6.3 shows the adjacency matrix of a general graph G, with re-
spect to the vertex ordering u, v, w, x.

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

Figure 1.6.3 A general graph and its adjacency matrix.

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

Figure 1.6.4 A general graph and its incidence matrix.

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

Figure 1.6.5 A general digraph and its incidence table.

† 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

Figure 1.6.6 A digraph and its adjacency matrix.

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 v00 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

Figure 1.6.7 A digraph and its incidence matrix.

Properties of Graphs Using Their Specifications


Proposition 1.6.1: If AG is the adjacency matrix of a general graph G, then the sum of
the entries of a row (or column) of AG equals the degree of the corresponding vertex.
♦ (Exercises)
Proposition 1.6.2: If AG is the adjacency matrix of a simple graph G, then the value of
element (AG )r [u, v] of the rth power of matrix AG equals the number of u-v walks of length
r.
48 Chapter 1 FOUNDATIONS

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

Figure 1.6.8 Establishing graph isomorphism using adjacency matrices.

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.

EXERCISES for Section 1.6


1.6.1 Construct a line drawing for the mixed graph with vertex-set V = {u, v, w, x, y, z},
edge-set E = {e, f, g, h}, and the given incidence table.

edges e f g h
endpts u xh v v
wh u z u

1.6.2 For the digraph shown,


v x
(a) Give an incidence table.
h d a
(b) Give an adjacency matrix. c e
(c) Give an incidence matrix. u g y
f z
(d) Give an adjacency matrix for the un- b

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.5 Which of the following incidence tables represent connected graphs?

edge a b c d edge a b c d edge a b c d


endpts u v w x endpts u v v x endpts u v w x
u w x v v w x v v v x x
50 Chapter 1 FOUNDATIONS

1.6.6 Determine whether the given incidence table represents a strongly connected digraph.
Assume that there are no isolated vertices.

(a) edges a b c d (b) edges a b c d


endpts u v v x endpts u vh w x
vh wh xh vh vh w xh vh

(c) edges a b c d e
endpts u v wh v w
vh uh x xh vh

1.7 SUPPLEMENTARY EXERCISES


1.7.1 A 20-vertex graph has 62 edges. Every vertex has degree 3 or 7. How many vertices
have degree 3?
1.7.2 Draw a connected simple graph G whose line graph L(G) has the degree sequence
h3, 3, 2, 2, 2, 1, 1i.

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.6 Is circ(24 : 4, 9) connected? What is a general condition for the connectedness of a


circulant graph? How would you calculate the number of components?
1.7.7 Calculate the girth of circ(13 : 1, 5).

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: An n-vertex, m-edge simple graph G is graceful if there is a one-to-one func-


tion g : VG → {0, 1, . . . , m} such that the function g 0 : EG → {0, 1, . . . , m} given by the rule
uv 7→ |g (u) − g (v)| is one-to-one.

1.7.12 Prove that the cycle C5 is not graceful.


1.7.13 Prove that the cycle C8 is graceful.

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.

1.7.14 We consider diameter-related properties.


a. The graphs Km,n clearly have diameter 2 (for m, n ≥ 2). Prove they are edge-critical
graphs for this property.
b. What is the maximum increase in diameter that can be caused by deleting an edge
from a 2-connected bipartite graph that is edge-critical with respect to its diameter?
Explain.
1.7.15 Find the diameter of the Cartesian product Cm × Cn of two cycle graphs.

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

bigraphical pair of sequences of nonnegative integers ha1 , a2 , . . . , ar i and hb1 , b2 , . . . , bt i:


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.
bipartite graph: a graph whose vertex-set can be partitioned into two subsets (parts) such
that every edge has one endpoint in one part and one endpoint in the other part.
bipartition of a bipartite graph G: the two subsets into which VG is partitioned.
bridge: a synonym for cut-edge.
card in a deck: one of the vertex-deletion subgraphs in the deck.
Cartesian product G×H of graphs G and H: the graph whose vertex-set is the Cartesian
product VG×H = VG × VH and whose edge-set is the union EG×H = (VG × EH ) ∪
(EG × VH ). The endpoints of edge (u, d) are the vertices (u, x) and (u, y), where x and
y are the endpoints of edge d in graph H. The endpoints of the edge (e, w) are (u, w)
and (v, w), where u and v are endpoints of edge e in graph G.
center of a graph G: the subgraph induced on the set of central vertices of G (see §1.4);
denoted Z(G).
central vertex of a graph G: a vertex v with minimum eccentricity, i.e., ecc(v) = rad(G).
circulant graph circ(n : S) with connections set S ⊆ {1, . . . , n − 1}: the graph whose
vertex-set is the group of integers Zn = {0, 1, . . . , n − 1} under addition modulo n, such
that 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.
circular ladder with n rungs: the product K2 × Cn ; denoted CLn (defined informally in
§1.2).
clique in a graph G: a maximal subset of mutually adjacent vertices in G.
clique number of a graph G: the number of vertices in a largest clique in G; denoted
ω(G).
closed (directed) walk: a (directed) walk whose initial and final vertices are identical.
complement of a graph: shortened term for edge-complement.
complete bipartite graph: a simple bipartite graph such that each pair of vertices in
different sides of the partition is joined by an edge.
complete graph: a simple graph such that every pair of vertices is joined by an edge.
component of a graph: a maximal connected subgraph; that is, a connected subgraph
which is not contained in any larger connected subgraph.
component of a vertex v: a subgraph induced on the subset of all vertices reachable
from v.
concatenation of walks W1 and W2 : a walk whose traversal consists of a traversal of W1
followed by a traversal of W2 such that W2 begins where W1 ends.
connected digraph: a digraph whose underlying graph is connected.
connected graph: a graph in which every pair of distinct vertices has a walk between
them.
cut-edge of a graph: an edge whose removal increases the number of components.
cutpoint: a synonym for cut-vertex.
cut-vertex of a graph: a vertex whose removal increases the number of components.
Glossary 53

cycle: a closed path with at least one edge.


cycle graph: a 1-vertex bouquet or a simple connected graph with n vertices and n edges
that can be drawn so that all of its vertices and edges lie on a single circle.
decomposition of a closed trail T : a collection C1 , C2 , . . . , Cm of edge-disjoint cycles, such
that each cycle Ci is either a subwalk or a reduced walk of T , and the edge-sets of the
cycles partition the edge-set of trail T.
degree of a vertex: the number of proper edges incident on that vertex plus twice the
number of self-loops.
degree sequence: a list of the degrees of all the vertices in non-increasing order.
diameter of a graph G, denoted diam(G): given by diam (G) = max {d(x, y)} .
x,y∈VG

digraph: abbreviated name for directed graph.


digraph invariant: a property of a digraph that is preserved by isomorphisms.
digraphic pair of sequences ha1 , a2 , . . . , an i and hb1 , b2 , . . . , bn i: there exists a simple di-
graph with vertex-set {v1 , v2 , . . . , vn } such that indegree(vi ) = bi and
outdegree(vi ) = ai for i = 1, 2, . . . , n.
directed distance from vertex u to v: the length of a shortest directed walk from u to v.
directed edge: a synonym for arc.
directed graph: a graph in which every edge is a directed edge.
directed walk from vertex u to vertex v: an alternating sequence of vertices and arcs
representing a continuous traversal from u to v, where each arc is traversed from tail
to head.
direction on an edge: an optional attribute that assigns the edge a one-way restriction or
preference, said to be from tail to head ; in a drawing, the tail is the end behind the
arrow and the head is the end in front.
disjoint cycle form of a permutation: a notation for specifying a permutation; see Exam-
ple 2.2.1.
distance between vertices u and v: the length of a shortest walk between u and v.
eccentricity of a vertex v in a graph G: the distance from v to a vertex farthest from v;
denoted ecc(v).
edge: a connection between one or two vertices of a graph.
edge-complement of a simple graph G: a graph G with the same vertex-set as G, such
that two vertices are adjacent in G if and only if they are not adjacent in G.
edge-critical graph G for a property P: G has property P, but for every edge e, the graph
G − e does not have property P.
edge-cut of a graph: a subset of edges whose removal increases the number of components.
edge-deletion subgraph G − e: the subgraph of G induced on the edge subset EG − {e}.
edge-multiplicity: the number of edges joining a given pair of vertices or the number of
self-loops at a given vertex.
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.
edge-weight: a number assigned to an edge (optional attribute).
54 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

ISOMORPHISMS AND SYMMETRY

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

2.1 GRAPH HOMOMORPHISMS AND ISOMORPHISMS


We can find relations between different graphs by defining structure-preserving mappings
between graphs, called graph homomorphisms. In particular, we can use graph homomor-
phisms to determine if two graphs have the same structure, or if one graph is a subgraph
of another.
definition: A graph homomorphism f : G → H from a graph G to a graph H is 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). When there is a graph homomorphism f : G → H, we say that
G is homomorphic to H.
definition: A graph isomorphism f : G → H from a graph G to a graph H is a graph
homomorphism (fV : VG → VH , fE : EG → EH ) for which fV and fE are bijections. When
there is a graph isomorphism f : G → H, we say that G is isomorphic to H, denoted
G∼= H.
The relation “is homomorphic to” is reflexive and transitive, but not symmetric, whereas
“is isomorphic to” is an equivalence relation (see Exercises).
Example 2.1.1: The two graphs in Figure 2.1.1 are clearly not isomorphic, since G has
more edges than H, and thus there is no bijection fE : EG → EH . However, there is a
homomorphism f : G → H, where fE (a) = fE (b) = fE (c) = b0 , fE (d) = d0 , and fE (e) = e0 ;
and there is a homomorphism g : H → G, where gE (b0 ) = b, gE (d0 ) = d, and gE (e0 ) = e.

a
1 2 1' 2'
b b'
c

d e d' e'

G H
3 3'

Figure 2.1.1 Two homomorphic graphs that are not isomorphic.

definition: Let G and H be two simple graphs. A vertex function f : VG → VH preserves


adjacency if for every pair of adjacent vertices u and v in graph G, the vertices f (u) and
f (v) are adjacent in graph H. Similarly, f preserves nonadjacency if f (u) and f (v) are
nonadjacent whenever u and v are nonadjacent.
Theorem 2.1.1: Let G and H be simple graphs. If (fV , fE ) is a graph homomorphism from
G to H, then fV preserves adjacency. Conversely, if fV : VG → VH preserves adjacency, then
there exists a unique function fE : EG → EH , such that (fV , fE ) is a graph homomorphism
from G to H.

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

Thus, when G and H are simple graphs, it is sufficient to give an adjacency-preserving


function f : VG → VH , to describe a graph homomorphism.
Theorem 2.1.2: Let G and H be simple graphs. A bijection f : VG → VH gives a graph
isomorphism if and only if f preserves both adjacency and nonadjacency.
♦ (Exercises)

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

Figure 2.1.2 Specifying an isomorphism between two simple graphs.

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

Figure 2.1.3 Another way of depicting an isomorphism.

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

Figure 2.1.4 Bijective and adjacency-preserving, but not an isomorphism.

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.

Figure 2.1.5 Preserves adjacency and nonadjacency, but is not bijective.


62 Chapter 2 ISOMORPHISMS AND SYMMETRY

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

Figure 2.1.6 There are 12 distinct isomorphisms from G to H.

Isomorphic Graph Pairs


The following properties of isomorphisms provide some preliminary criteria to check
when considering the existence or possible construction of a graph isomorphism. Although
the examples given involve simple graphs, the properties apply to general graphs as well.
Theorem 2.1.3: Let G and H be isomorphic graphs. Then they have the same number of
vertices and the same number of edges.
Proof: Let f : G → H be an isomorphism. The graphs G and H must have the same
number of vertices and the same number of edges, because an isomorphism maps both sets
bijectively. ♦
Theorem 2.1.4: Let f : G → H be a graph isomorphism and let v ∈ VG . Then deg(f (v)) =
deg(v).
Proof: Since fE : EG → EH is a bijection, the number of proper edges and the number
of self-loops incident on vertex v equal the corresponding numbers for vertex f (v). Thus,
deg(f (v)) = deg(v). ♦
Corollary 2.1.5: Let G and H be isomorphic graphs. Then they have the same degree
sequence.
Corollary 2.1.6: Let f : G → H be a graph isomorphism and let e ∈ EG . Then the
endpoints of edge f (e) have the same degrees as the endpoints of e.
Example 2.1.6: In Figure 2.1.7, we observe that both graphs have 8 vertices and 12 edges,
and that both are 3-regular. The vertex labelings for the hypercube Q3 and for the circular
ladder CL4 specify a vertex bijection. A careful examination reveals that this vertex bijec-
tion preserves both adjacency and nonadjacency. It follows that Q3 and CL4 are isomorphic
graphs.
110 111 f(010)

f(110)
101
100
f(000) f(100) f(011)
011 f(111)
010
f(101)

000 001 f(001)

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.

Isomorphism Type of a Graph


definition: Each equivalence class under ∼
= is called an isomorphism type.
Isomorphic graphs are graphs of the same isomorphism type. The graphs in Figure 2.1.9
represent all four possible isomorphism types for a simple graph on three vertices. Counting
isomorphism types of graphs generally involves the algebra of permutation groups.

Figure 2.1.9 The four isomorphism types for a simple 3-vertex graph.

The Isomorphism Problem


It would be very useful to have a reasonably fast general algorithm that accepts as
input any two n-vertex graphs and that produces as output either an isomorphism between
them or a report that the graphs are not isomorphic. Checking whether a given vertex
bijection is an isomorphism would require an examination of all vertex pairs, which is not
in itself overwhelming. However, since there are n! vertex bijections to check, this brute-force
approach is feasible only for very small graphs.
definition: The graph-isomorphism problem is to devise a practical general algorithm
to decide graph isomorphism, or, alternatively, to prove that no such algorithm exists.
Application 2.1.1: Computer Chip Intellectual Property Rights Suppose that not long
after ABC Corporation develops and markets a computer chip, it happens that the DEF
Corporation markets a chip with striking operational similarities. If ABC could prove that
DEF’s circuitry is merely a rearrangement of the ABC circuitry (i.e., that the circuitries are
isomorphic), they might have the basis for a patent-infringement suit. If ABC had to check
structure preservation for each of the permutations of the nodes of the DEF chip, the task
would take prohibitively long. However, knowledge of the organization of the chips might
enable the ABC engineers to take a shortcut.
64 Chapter 2 ISOMORPHISMS AND SYMMETRY

A Broader Use of the Term “Subgraph”


The usual meaning of the phrase “H is a subgraph of G” is that H is merely isomorphic
to a subgraph of G.

Example 2.1.8: The cycle graphs C3 , C4 , and C5 are all subgraphs of the graph G of
Figure 2.1.10.

Figure 2.1.10 A graph G with subgraphs C3 , C4 , and C5 .

Observation: A graph with n vertices is Hamiltonian if and only if it contains a subgraph


isomorphic to the n-cycle Cn .
Example 2.1.9: The graph G shown H2 has among its subgraphs a
H1 in Figure 2.1.11
B2 (bouquet), a D3 (dipole), and three copies of K3 .

G B2 D3 K3

Figure 2.1.11 A graph and three of its subgraphs.

This more general meaning of subgraph gives us the following result.


Proposition 2.1.7: A graph H is a subgraph of a graph G if and only there is a graph
homomorphism f : H → G, such that fV : VH → VG and fE : EH → EG are both
one-to-one.

Application to Parallel-Computer Computation


The following application shows how subgraph analysis might occur within a scaled-
down model for porting a distributed algorithm from one kind of parallel architecture to
another. A distributed algorithm is an algorithm that has been designed so that different
steps are executed simultaneously on different processing units within a parallel computer.
Application 2.1.2: Porting an Algorithm Suppose that a distributed algorithm has
been designed to run on an interconnection network whose architecture is an 8 × 8 × 32
array. Suppose also that the only immediately available interconnection network is a 13-
dimensional hypercube graph Q13 . If the 13-dimensional hypercube graph contains an
8×8×32 mesh as a subgraph, then the algorithm could be directly ported to that hypercube.

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

Figure 2.1.12 A vertex amalgamation of a 3-cycle and a 4-cycle.

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.

Figure 2.1.13 Four different vertex amalgamations of P3 and P4 .

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

section, we use juxtaposition only for amalgamation.


66 Chapter 2 ISOMORPHISMS AND SYMMETRY

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.

The six different possible results are illustrated in Figure 2.1.15.

by bz
bx

cz ay az cy
ax cx

by bz
bx

cx az ax ay
cy cz

Figure 2.1.15 Six different possible amalgamated graphs.

Remark: The operation of amalgamating graphs G and H by pasting vertex u ∈ VG to


vertex v ∈ VH is equivalent to amalgamating the graphs G and H modulo an isomorphism
from the one-vertex subgraph u to the one-vertex subgraph v.

Homomorphism and Isomorphism of Digraphs


The definition of graph homomorphism is easily extended to digraphs.
definition: A digraph homomorphism f : G → H from a digraph G to a digraph H is
a graph homomorphism from the underlying graph of G to the underlying graph of H that
preserves the direction of each edge. That is, e is directed from u to v if and only if f (e) is
directed from f (u) to f (v).
definition: Two digraphs are isomorphic if there is an isomorphism f between their
underlying graphs that preserves the direction of each edge.
Section 2.1 Graph Homomorphisms and Isomorphisms 67

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.

Figure 2.1.16 Four non-isomorphic digraphs.

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.

EXERCISES for Section 2.1


2.1.1 Show that C6 is homomorphic to C3 but that C3 is not homomorphic to C6 .
2.1.2 Show that K2,2 and K3,3 are homomorphic to each other.
2.1.3 Show that “is isomorphic to” is an equivalence relation.
2.1.4 Show that a graph G is bipartite if and only if G is homomorphic to K2 .
2.1.5 Prove Theorem 2.1.2.
2.1.6 Find all possible isomorphism types of the given simple graph.
(a) A 4-vertex tree. (b) A 4-vertex connected graph.
(c) A 5-vertex tree. (d) A 6-vertex tree.
(e) A 5-vertex graph with exactly three edges.
(f) A 6-vertex graph with exactly four edges.
2.1.7 Find all possible isomorphism types of the given kind of general graph.
(a) A graph with two vertices and three edges.
(b) A graph with three vertices and two edges.
(c) A graph with three vertices and three edges.
(d) A 4-vertex graph with exactly four edges including exactly one self-loop and a multi-
edge of size 2.
68 Chapter 2 ISOMORPHISMS AND SYMMETRY

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.

2.1.12 How many of the subgraphs of Kn are complete graphs?

2.1.13 Characterize those graphs with the given property.


(a) The local subgraph of each vertex is a complete graph.
(b) Every induced subgraph is connected.
Section 2.2 Automorphisms and Symmetry 69

2.2 AUTOMORPHISMS AND SYMMETRY


definition: An isomorphism from a graph G to itself is called an automorphism.
Thus, an automorphism π of graph G is a structure-preserving permutation πV on the
vertex-set of G, along with a (consistent) permutation πE on the edge-set of G. We may
write π = (πV , πE ).
notation: When the context is clear, the subscripts that distinguish the vertex and edge
actions of an automorphism are suppressed. Thus, we may simply write π in place of πV or
of πE .
Remark: Any structure-preserving vertex-permutation is associated with one (if simple)
or more (if there are any multi-edges) automorphisms of G. Two possible measures of
symmetry of a graph are (1) the number of automorphisms or (2) the proportion of vertex
permutations that are structure-preserving.

Permutations and Cycle Notation


The most convenient representation of a permutation, for our present purposes, is as a
product of disjoint cycles.
notation: In specifying a permutation, we use the notation (x) to show that the object x
is fixed, i.e., permuted to itself; the notation (x y) means that objects x and y are swapped;
and the notation (x0 x1 · · · xn−1 ) means that the objects x0 x1 · · · xn−1 are cyclically
permuted, so that xj 7→ xj+1(mod n) , for j = 0, 1, . . . , n − 1. As explained in Appendix A4,
every permutation can be written as a composition of disjoint cycles.
Example 2.2.1: The permutation
 
1 2 3 4 5 6 7 8 9
π=
7 4 1 8 5 2 9 6 3

which maps 1 to 7, 2 to 4, and so on, has the disjoint cycle form

π = (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

Figure 2.2.1 The graph K1,3 .

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

Figure 2.2.2 A graph with four automorphisms.


Section 2.2 Automorphisms and Symmetry 71

Limitations of Geometric Symmetry


Although looking for geometric symmetry within a drawing may help in discovering au-
tomorphisms, there may be automorphisms that are not realizable as reflections or rotations
of a particular drawing.
Example 2.2.4: Figure 2.2.3 shows three different drawings of the same labeled Petersen
graph (for example, vertex 0 is adjacent to vertices 1, 4, and 5 in all three). Drawing (a) has
5-fold rotational symmetry that corresponds to the automorphism (0 1 2 3 4)(5 6 7 8 9),
but this automorphism does not correspond to any geometric symmetry of either of the
other two drawings. The automorphism (0 5)(1 8)(4 7)(2 3)(6)(9) is realized by 2-fold
reflectional symmetry in drawings (b) and (c) (about the axis through vertices 6 and 9)
but is not realizable by any geometric symmetry in drawing (a). There are several other
automorphisms that are realizable by geometric symmetry in at least one of the drawings
but not realizable in at least one of the other ones. (See Exercises.)

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

Figure 2.2.3 Three drawings of the Petersen graph.

Vertex- and Edge-Transitive Graphs


definition: A graph G is vertex-transitive if for every vertex pair u, v ∈ VG , there is an
automorphism that maps u to v.
definition: A graph G is edge-transitive if for every edge pair d, e ∈ EG , there is an
automorphism that maps d to e.
Example 2.2.5: The graph K1,3 , discussed in Example 2.2.2, is edge-transitive, but not
vertex-transitive, since every automorphism must map the 3-valent vertex to itself.

Example 2.2.6: The complete graph Kn is vertex-transitive and edge-transitive for every
n. (See Exercises.)

Example 2.2.7: The Petersen graph is vertex-transitive and edge-transitive. (See


Exercises.)

Example 2.2.8: Every circulant graph circ(n : S) is vertex-transitive. In particular, the


vertex function i 7→ i + k mod n is an automorphism. In effect, it rotates a drawing of
the circulant graph, as in Figure 2.2.4, nk of the way around. For instance, vertex 3 can
4
be mapped to vertex 7 by rotating 13 of the way around. Although circ(13 : 1, 5) is edge-
transitive, some circulant graphs are not. (See Exercises.)
72 Chapter 2 ISOMORPHISMS AND SYMMETRY
0
12 1
11 2

10 3

9 4

8 5
7 6

Figure 2.2.4 The circulant graph circ(13 : 1, 5).

Vertex Orbits and Edge Orbits


Suppose that two vertices u and v of a graph G are to be considered related if there is
an automorphism that maps u to v. This is clearly an equivalence relation on the vertices of
G. There is a similar equivalence relation on the edges. (Equivalence relations are discussed
in Appendix A.2.)
definition: The equivalence classes of the vertices of a graph under the action of the
automorphisms are called vertex orbits. The equivalence classes of the edges are called
edge orbits.
Example 2.2.9: The graph of Example 2.2.3 (repeated below in Figure 2.2.5) has the
following vertex and edge orbits.

vertex orbits: {1, 8}, {4, 6}, {2, 7}, {3, 5}


edge orbits: {12, 78}, {34, 56}, {23, 25, 37, 57}, {35}

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

Figure 2.2.5 Graph of Example 2.2.3.

Theorem 2.2.1: All vertices in the same orbit have the same degree.

Proof: This follows immediately from Theorem 2.1.4. ♦


Theorem 2.2.2: All edges in the same orbit have the same pair of degrees at their end-
points.

Proof: This follows immediately from Corollary 2.1.6. ♦


Remark: A vertex-transitive graph is a graph with only one vertex orbit, and an edge-
transitive graph has only one edge orbit.
Section 2.2 Automorphisms and Symmetry 73

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).

Remark: Automorphism theory is one of several graph topics involving an interaction


between graph theory and group theory.

Finding Vertex and Edge Orbits


We illustrate how to find orbits with two examples. (It is not known whether there exists
a polynomial-time algorithm for finding orbits. Certainly, testing all n! vertex-permutations
for the adjacency preservation property is non-polynomial.) In addition to using Theorems
2.2.1 and 2.2.2, we observe that if an automorphism maps vertex u to vertex v, then it maps
the neighbors of u to the neighbors of v.
Example 2.2.12: In the graph of Figure 2.2.6, vertex 0 is the only vertex of degree 2, so
it is in an orbit by itself. The vertical reflection (0)(1 4)(2 3) establishes that vertices 1 and
4 are in the same orbit and that 2 and 3 are in the same orbit. Moreover, since vertices 1
and 4 have a 2-valent neighbor but vertices 2 and 3 do not, the orbit of vertices 1 and 4
must be different from that of 2 and 3. Thus, the vertex orbits are {0}, {1, 4}, and {2, 3}.

4 1
Vertex orbits: {0}, {1, 4}, and {2, 3}
Edge orbits: {23}, {01, 04}, and {12, 13, 24, 34}
3 2

Figure 2.2.6 A graph and its orbits.

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

Figure 2.2.7 A 4-regular graph G whose symmetry is less apparent.


74 Chapter 2 ISOMORPHISMS AND SYMMETRY

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

Vertex orbits: {0, 2, 3, 5} and {1, 4, 6}


Edge orbits: {05, 23} and EG − {05, 23}

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.

EXERCISES for Section 2.2


2.2.1 Write down all the automorphisms of the given simple graph as vertex-permutations.
u v v u v u v
(a) (b) (c) (d)

x w u w x w x w

2.2.2 Specify all the automorphisms of the given graph.


u v u v u v
(a) (b) (c)
a c d a d a e c d
c

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.4 Prove that the specified graph is vertex-transitive.


(a) CLn (b) circ(n : S) (c) The Petersen graph

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

2.2.8 Prove that the list of automorphisms in Example 2.2.3 is complete.


2.2.9 Specify an automorphism of the Petersen graph that is realizable by some geomet-
ric symmetry in the middle drawing of Figure 2.2.3, but not realizable by any geometric
symmetry in the other two drawings.

2.3 TESTS FOR NON-ISOMORPHISM


In §2.1 the most basic necessary conditions for two graphs to be isomorphic were derived:
same number of vertices, same number of edges, and same degree sequence. We noticed also
that two isomorphic graphs could differ in various artifacts of their representations, including
vertex names and some kinds of differences in drawings. And we observed that a brute-force
approach of considering all n! possible vertex bijections for two n-vertex graphs would be
too labor-intensive.
The fact is, there is no known short list of easily applied tests to decide for any possible
pair of graphs whether they are isomorphic. Thus, the isomorphism problem is formidable,
but not all is bleak. We will establish a collection of graph properties that are preserved
under isomorphism. These will be used to show that various pairs of graphs are not isomor-
phic.
definition: A graph invariant (or digraph invariant) is a property of graphs (digraphs)
that is preserved by isomorphisms.
To show that two graphs are NOT isomorphic, the strategy is to run through a list
of graph invariants until you find one that is different for the two graphs. The following
invariants were established in §2.1:

1. The number of vertices. (Thm. 2.1.3)


2. The number of edges. (Thm. 2.1.3)
3. The degree sequence. (Cor. 2.1.5)

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

Theorem 2.3.1: Let f : G → H be a graph isomorphism, and let v ∈ VG . Then the


multiset† of degrees of the neighbors of v equals the multiset of degrees of the neighbors of
f (v).

Proof: This is an immediate consequence of Corollary 2.1.6. ♦

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

Figure 2.3.2 Non-isomorphic digraphs with identical degree sequences.

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

hybrid, having no order, but may have repetitions.


Section 2.3 Tests for Non-Isomorphism 77

The following two Corollaries are immediate consequences of Theorem 2.3.2.


Corollary 2.3.3: The isomorphic image of a trail, path, or cycle is a trail, path, or cycle,
respectively, of the same length.
Corollary 2.3.4: For each integer k, two isomorphic graphs must have the same number
of trails (paths) (cycles) of length k. ♦
Corollary 2.3.5: The diameter, the radius, and the girth are graph invariants.
Proof: This is an immediate consequence of Corollary 2.3.3 and the bijectivity of the
isomorphism. ♦
Example 2.3.3: Figure 2.3.3 shows the circular ladder CL4 and the Möbius ladder M L4 ,
which are 8-vertex graphs. Since both graphs are 3-regular, they have the same number of
edges and the same degree sequence. To show they are not isomorphic, we use the diameter
invariant.
1 1

5 5

4 4
0 2 0 2
6 6
7 7

CL 4 ML 4
3 3

Figure 2.3.3 Non-isomorphic graphs with the same degree sequence.

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.

Theorem 2.3.8: Let f : G → H be a graph isomorphism and u ∈ VG . Then f maps the


local subgraph L(u) of G isomorphically to the local subgraph L(f (u)) of H.

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

Figure 2.3.5 Two 4-regular 8-vertex graphs.

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.

Proof: By definition, a graph isomorphism necessarily preserves nonadjacency as well as


adjacency. ♦
Example 2.3.6: The two graphs in Figure 2.3.6 are relatively dense, simple graphs (both
with 20 out of 28 possible edges). The edge-complement of the left graph consists of two
disjoint 4-cycles, and the edge-complement of the right graph is an 8-cycle. Since these
edge-complements are non-isomorphic, the original graphs must be non-isomorphic.
Section 2.3 Tests for Non-Isomorphism 79

Figure 2.3.6 Two relatively dense, non-isomorphic 5-regular graphs.

Summary
Table 2.3.1 summarizes these results on graph-isomorphism invariants.

Table 2.3.1: Some graph invariants.

1. The number of vertices


2. The number of edges
3. The degree sequence
4. The multiset of degrees of the neighbors of a forced match (see Example 2.3.1)
5. The multiset of local subgraphs of the neighbors of a forced match
6. Diameter, radius, girth
7. Independence number, clique number
8. For any possible subgraph, the number of distinct copies
9. For a simple graph, the edge-complement

Using Invariants to Construct an Isomorphism


The last example in this section illustrates how invariants can guide the construction of
an isomorphism.
Example 2.3.7: The two graphs in Figure 2.3.7 both have open paths of length 9, in-
dicated by consecutive vertex numbering 1, . . . , 10. By Corollary 2.3.3, any isomorphism
must map the length-9 path in the left graph to some length-9 path in the right graph.
The label-preserving bijection that maps the left length-9 path to the right length-9 path
is a reasonable candidate for such an isomorphism. Adjacency is clearly preserved for the
nine pairs of consecutively numbered vertices, (i, i + 1), since they represent edges along the
paths. Also, it is easy to see that adjacency is preserved for the pairs of vertices that are
not consecutively numbered, since each of the six remaining edges in the left graph has a
corresponding edge in the right graph with matching endpoints. Thus, the label-preserving
bijection is an isomorphism.

1
1 2
9 4
5 2
6 7 5 3
9 8 7
8 10

4 6 10
3

Figure 2.3.7 Two copies of the Petersen graph.


80 Chapter 2 ISOMORPHISMS AND SYMMETRY

EXERCISES for Section 2.3


2.3.1 For each of the following graphs, either show that it is isomorphic to one of the five
regular graphs of Example 2.3.4, or argue why it is not. Are they isomorphic to each other?

(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

2.3.3 Suppose that f : G → H is a graph isomorphism and v ∈ VG . Prove the following


isomorphism properties.
(a) The local subgraph of v is isomorphic to the local subgraph of f (v).
(b) G − v is isomorphic to H − f (v).
2.4 Supplementary Exercises 81

2.3.4 State and prove digraph versions of the specified assertion.


(a) Theorem 2.3.1. (b) Theorem 2.3.2.
(c) Corollary 2.3.4. (d) Corollary 2.3.5.
(e) Theorem 2.3.6. (f) Theorem 2.3.9.

2.3.5 Compile a table of digraph-isomorphism invariants analogous to Table 2.3.1.


2.3.6 Determine whether the digraphs in the given pair are isomorphic.

(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

definition: A simple graph G is self-complementary if G ∼


= G.
2.4.1 Prove that if G is an n-vertex self-complementary graph, then either n ≡ 0 (mod 4)
or n ≡ 1 (mod 4).
2.4.2 Can a self-complementary graph be non-connected?
2.4.3 Suppose that a self-complementary graph has 4k + 1 vertices. Prove that it must have
at least one vertex of degree 2k.
82 Chapter 2 ISOMORPHISMS AND SYMMETRY

2.4.4 Draw all isomorphism types of general graphs with


(a) 2 edges and no isolated vertices. (b) 2 vertices and 3 edges.

2.4.5 Draw all isomorphism types of digraphs with


(a) 2 edges and no isolated vertices. (b) 2 vertices and 3 arcs.

2.4.6 Draw all the isomorphism types of simple graphs with


(a) 6 vertices and 3 edges. (b) 6 vertices and 4 edges.
(c) 5 vertices and 5 edges. (d) 7 vertices and 4 edges.

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.

2.4.17 Prove that the hypercube Qn is vertex transitive.

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

isomorphism between two general graphs G and H: a structure-preserving vertex bijec-


tion fV : VG → VH and an edge bijection fE : EG → EH such that for every edge
e ∈ EG , the function fV maps the endpoints of e to the endpoints of the edge fE (e).
Such a mapping pair (fV : VG → VH , fE : EG → EH ) is often written shorthand as
f : G → H.
isomorphism between two simple graphs G and H: a structure-preserving vertex bijection
f : VG → VH
isomorphism problem for graphs: the unsolved problem of devising a practical general
algorithm to decide graph isomorphism, or, alternatively, to prove that no such algo-
rithm exists.
isomorphism type of a graph G: the class of all graphs H isomorphic to G, i.e., such that
there is an isomorphism of G and H.
preserves adjacency: see adjacency-preserving.
preserves nonadjacency: see adjacency-preserving, non-.
self-complementary graph: a simple graph G such that G ∼
= G.
structure-preserving vertex bijection between two general graphs G and H: a vertex
bijection f : VG → VH such that
(i) the number of edges (even if 0) joining each pair of distinct vertices u and v in G
equals the number of edges joining their images f (u) and f (v) in H, and
(ii) the number of self-loops at each vertex x in G equals the number of self-loops at
the vertex f (x) in H.
structure-preserving vertex bijection between two simple graphs G and H: a vertex
bijection f : VG → VH that preserves adjacency and nonadjacency, i.e., for every pair
of vertices in G,

u and v are adjacent in G ⇔ f (u) and f (v) are adjacent in H

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

TREES AND CONNECTIVITY

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

3.1 CHARACTERIZATIONS AND PROPERTIES OF TREES


review from §1.2 : A tree is a connected graph with no cycles.
Characterizing trees in a variety of ways provides flexibility for their application. The
first part of this section establishes some basic properties of trees that culminate in Theorem
3.1.8, where six different but equivalent characterizations of a tree are given.

Basic Properties of Trees


definition: A vertex of degree 1 in a tree is called a leaf.
If a leaf is deleted from a tree, then the resulting graph is a tree having one vertex fewer.
Thus, induction is a natural approach to proving tree properties, provided one can always
find a leaf. The following proposition guarantees the existence of such a vertex.
Proposition 3.1.1: Every tree with at least one edge has at least two leaves.

Proof: Let P = (v1 , v2 , · · · , vm ) be a path of maximum length in a tree T. Suppose one of


its endpoints, say v1 , has degree greater than 1. Then v1 is adjacent to vertex v2 on path P
and also to some other vertex w (see Figure 3.1.1). If w is different from all of the vertices
vi , then P could be extended, contradicting its maximality. On the other hand, if w is one
of the vertices vi on the path, then the acyclic property of T would be contradicted. Thus,
both endpoints of path P must be leaves in tree T. ♦

v1 vm
v3

w v2

w
v1 vm
v3

v2

Figure 3.1.1 The two cases in the proof of Proposition 3.1.1.

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

Proposition 3.1.3: Every tree on n vertices contains exactly n − 1 edges.

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. ♦

review from §1.2: An acyclic graph is called a forest.


review from §1.3: The number of components of a graph G is denoted c(G).
Corollary 3.1.4: A forest G on n vertices has n − c(G) edges.

Proof: Apply Proposition 3.1.3 to each of the components of G. ♦


Corollary 3.1.5: Any graph G on n vertices has at least n − c(G) edges.

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. ♦

Six Different Characterizations of a Tree


Trees have many possible characterizations, and each contributes to the structural un-
derstanding of graphs in a different way. The following theorem establishes some of the most
useful characterizations.
88 Chapter 3 TREES AND CONNECTIVITY

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.

Proof: If n = 1, then all six statements are trivially true. So assume n ≥ 2.


(1 ⇒ 2) By Proposition 3.1.3.
(2 ⇒ 3) Suppose that T has k components. Then, by Corollary 3.1.4, the forest T has n − k
edges. Hence, k = 1.
(3 ⇒ 4) Let e be an edge of T. Since T − e has n − 2 edges, Corollary 3.1.5 implies that
n − 2 ≥ n − c(T − e). So T − e has at least two components.
(4 ⇒ 5) By way of contradiction, suppose that Statement 4 is true, and let x and y be two
vertices that have two different paths between them, say P1 and P2 . Let u be the first vertex
from which the two paths diverge (this vertex might be x), and let v be the first vertex at
which the paths meet again (see Figure 3.1.2). Then these two u − v paths taken together
form a cycle, and any edge on this cycle is not a cut-edge, which contradicts Statement 4.
P1
P1
P1
x P2 u P2 v y
P2

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.

Table 3.1.1: Summary of Basic Properties of a Tree T on n vertices

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. ♦

Figure 3.1.3 T is isomorphic to [(T − v) ∪ {w}] + e.

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

Figure 3.1.4 A tree with frontier edges a, b, c, and d.

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.

Choosing a Frontier Edge


An essential component of our tree-growing scheme is a function called nextEdge, which
chooses a frontier edge to add to the current tree.
definition: Let T be a tree subgraph of a graph G, and let S be the set of frontier edges
for T . The function nextEdge(G, S) chooses and returns as its value the frontier edge in
S that is to be added to tree T .
Remark: Ordinarily, the function nextEdge is deterministic; however, it may also be ran-
domized. In either case, the full specification of nextEdge must ensure that it always returns
a frontier edge.
definition: After a frontier edge is added to the current tree, the procedure updateFron-
tier(G,S) removes from S those edges that are no longer frontier edges and adds to S those
that have become frontier edges.
Example 3.1.1 continued: The current set S of frontier edges shown in the top half
of Figure 3.1.5 is S = {a, b, c, d}. Suppose that the value of nextEdge(G, S) is edge c.
The bottom half of Figure 3.1.5 shows the result of adding edge c to tree T and applying
updateF rontier(G, S). Notice that updateF rontier(G, S) added four new frontier edges to
S and removed edges c and d, which are no longer frontier edges.
Section 3.1 Characterizations and Properties of Trees 91

nextEdge(G,S) = c add edge c to the tree and apply updateFrontier(G,S)

Figure 3.1.5 Result after adding edge c to the tree.

Algorithm 3.1.1: Tree-Growing


Input: a connected graph G, a starting vertex v ∈ VG , and a function nextEdge.
Output: an ordered spanning tree T of G with root v.
Initialize tree T as vertex v.
Initialize S as the set of proper edges incident on v.
While S 6= ∅
Let e = nextEdge(G, S).
Let w be the non-tree endpoint of edge e.
Add edge e and vertex w to tree T .
updateFrontier (G, S).
Return tree T .

EXERCISES for Section 3.1


3.1.1 Draw a 6-vertex connected graph that has exactly seven edges and exactly three
cycles.
3.1.2 Draw a 12-vertex forest that has exactly 10 edges.
3.1.3 Either draw the required graph or explain why no such graph exists.
(a) A 7-vertex, 3-component, simple graph with 10 edges.
(b) A 6-vertex, 2-component, simple graph with 11 edges.
(c) An 8-vertex, 2-component, simple graph with exactly nine edges and three cycles.
(d) An 8-vertex, 2-component, simple graph with exactly 10 edges and three cycles.
(e) A 10-vertex, 2-component, forest with exactly nine edges.
(f) An 11-vertex, simple, connected graph with exactly 14 edges that contains five edge-
disjoint cycles.

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

3.2 CYCLES, EDGE-CUTS, AND SPANNING TREES


This section establishes a number of properties that highlight the relationship and a
certain duality between the edge-cuts and cycles of a graph.
Proposition 3.2.1: A graph G is connected if and only if it has a spanning tree.

Proof: If G is connected, then among the connected, spanning subgraphs of G, there is


at least one, say T , with the least number of edges. If subgraph T contained a cycle, then
the deletion of one of its cycle-edges would create a smaller connected, spanning subgraph,
contradicting the minimality of T . Thus, T is acyclic and therefore, a spanning tree of graph
G.
Conversely, if G contains a spanning tree, then every pair of vertices is connected by a path
in the tree, and, hence, G is connected. ♦
Proposition 3.2.2: A subgraph H of a connected graph G is a subgraph of some spanning
tree if and only if H is acyclic.

Proof: Necessity (⇒) A subgraph of a tree is acyclic by definition.


Sufficiency (⇐) Let H be an acyclic subgraph of G, and let T be any spanning tree of G.
Consider the connected, spanning subgraph G1 , where VG1 = VT ∪VH and EG1 = ET ∪ EH .
If G1 is acyclic, then every edge of H must already be an edge of the spanning tree T , since
otherwise a cycle would have been created (by the characterization theorem in §3.1). Thus,
subgraph H is contained in tree T , and we are done. So suppose alternatively that G1 has
a cycle C1 . Since H is acyclic, it follows that some edge e1 of cycle C1 is not in H. Then
the graph G2 = G1 − e1 is still a connected, spanning subgraph of G and still contains H
as a subgraph. If G2 is acyclic, then it is the required spanning tree. Otherwise, repeat the
process of removing a cycle-edge not in H until a spanning tree is obtained. ♦

Partition-Cuts and Minimal Edge-Cuts


Review From §1.3: An edge-cut S in a graph G is a set of edges such that the edge-
deletion subgraph G − S has more components than G.
The following definition is closely linked to the concept of a minimal edge-cut. It is used
in this and the next section.
definition: Let G be a graph, and let X1 and X2 form a partition of VG . The set of all
edges of G having one endpoint in X1 and the other endpoint in X2 is called a partition-cut
of G and is denoted hX1 , X2 i.
The next two propositions make explicit the relationship between partition-cuts and
minimal edge-cuts.
Proposition 3.2.3: Let hX1 , X2 i be a partition-cut of a connected graph G. If the sub-
graphs of G induced by the vertex-sets X1 and X2 are connected, then hX1 , X2 i is a minimal
edge-cut.

Proof: The partition-cut hX1 , X2 i is an edge-cut of G, since X1 and X2 lie in different


components of G – hX1 , X2 i. Let S be a proper subset of hX1 , X2 i, and let edge e ∈
hX1 , X2 i − S. By definition of hX1 , X2 i, one endpoint of e is in X1 and the other endpoint
is in X2 . Thus, if the subgraphs induced by the vertex-sets X1 and X2 are connected, then
94 Chapter 3 TREES AND CONNECTIVITY

G − S is connected. Therefore, S is not an edge-cut of G, which implies that hX1 , X2 i is a


minimal edge-cut. ♦
Proposition 3.2.4: Let S be a minimal edge-cut of a connected graph G, and let X1 and
X2 be the vertex-sets of the two components of G − S. Then S = hX1 , X2 i.

Proof: By minimality, S ⊆ hX1 , X2 i. If e ∈ hX1 , X2 i − S, then its endpoints would lie in


different components of G − hX1 , X2 i, contradicting the definition of S as an edge-cut. ♦
Remark: The premise of Proposition 3.2.4 assumes that the removal of a minimal edge-
cut from a connected graph creates exactly two components. This is a generalization of
Corollary 1.3.7 and can be argued similarly, using the minimality condition (see Exercises).
Proposition 3.2.5: A partition-cut hX1 , X2 i in a connected graph G is a minimal edge-cut
of G or a union of edge-disjoint minimal edge-cuts.

Proof: Since hX1 , X2 i is an edge-cut of G, it must contain a minimal edge-cut, say S1 .


If hX1 , X2 i =
6 S1 , then let e ∈ hX1 , X2 i − S1 , where the endpoints v1 and v2 of e lie in
X1 and X2 , respectively. Since S1 is a minimal edge-cut, the X1 -endpoints of S1 are in
one of the components of G − S1 , and the X2 -endpoints of S1 are in the other component.
Furthermore, v1 and v2 are in the same component of G − S1 (since e ∈ G − S1 ). Suppose,
without loss of generality, that v1 and v2 are in the same component as the X1 -endpoints
of S1 , as shown below.

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. ♦

Fundamental Cycles and Fundamental Edge-Cuts


definition: Let G be a graph with c(G) components. The edge-cut rank of G is the
number of edges in a full spanning forest of G. Thus, by Corollary 3.1.4, the edge-cut rank
equals |VG | − c(G).
Review From §1.4: Let H be a fixed subgraph of a graph G. The relative complement
of H (in G), denoted G − H, is the edge-deletion subgraph G − E(H).
definition: Let G be a graph with c(G) components. The cycle rank (or Betti number)
of G, denoted β(G), is the number of edges in the relative complement of a full spanning
forest of G. Thus, the cycle rank is β(G) = |EG | − |VG | + c(G).
Section 3.2 Cycles, Edge-Cuts, and Spanning Trees 95

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.

Figure 3.2.1 A spanning forest that is not a full spanning forest.

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

Figure 3.2.2 Fundamental system of cycles and of edge-cuts.

Relationship between Cycles and Edge-Cuts


The next series of propositions reveals a dual relationship between the cycles and minimal
edge-cuts of a graph.
Proposition 3.2.6: Let S be a set of edges in a connected graph G. Then S is an edge-cut
of G if and only if every spanning tree of G has at least one edge in common with S.

Proof: By Proposition 3.2.1, S is an edge-cut if and only if G − S contains no spanning


tree of G, which means that every spanning tree of G has at least one edge in common with
S. ♦
Proposition 3.2.7: Let C be a set of edges in a connected graph G. Then C contains a
cycle if and only if the relative complement of every spanning tree of G has at least one
edge in common with 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.

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.
Proof:
(1 ⇒ 2) Let C be an Eulerian tour of G, and let v be the starting point of some traversal of
C. The initial edge and final edge of the traversal contribute 2 toward the degree of v, and
each time the traversal passes through a vertex, a contribution of 2 toward that vertex’s
degree also results. Thus, there is an even number of traversed edges incident with each
vertex, and since each edge of G is traversed exactly once, this number is the degree of that
vertex.
98 Chapter 3 TREES AND CONNECTIVITY

(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. ♦

Königsberg Bridges Problem


In the town of Königsberg in what was once East Prussia, the two branches of the River
Pregel converge and flow through to the Baltic Sea. Parts of the town were on an island and
a headland that were joined to the outer river banks and to each other by seven bridges, as
shown in Figure 3.2.3. The townspeople wanted to know if it was possible to take a walk
that crossed each of the bridges exactly once before returning to the starting point. The
Prussian emperor, Frederick the Great, brought the problem to the attention of the famous
Swiss mathematician Leonhard Euler. Euler’s solution in 1736 is generally regarded as the
origin of graph theory.
w

v
u

Figure 3.2.3 The seven bridges of Königsberg.


Section 3.2 Cycles, Edge-Cuts, and Spanning Trees 99

EXERCISES for Section 3.2


3.2.1 For the spanning tree of graph G induced on the given edge-set:
i. Find the associated fundamental system of cycles
ii. Find the associated fundamental system of edge-cuts
iii. Show that Proposition 3.2.6 holds for one of the fundamental edge-cuts.
iv. Show that Proposition 3.2.7 holds for one of the fundamental cycles.
v. Show that the 5-cycle in graph G has an even number of edges in common with each
of the fundamental edge-cuts.
vi. Show that Proposition 3.2.9 holds for one of the fundamental cycles.
vii. Show that Proposition 3.2.10 holds for one of the fundamental edge-cuts.

(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.

3.2.9 Prove Proposition 3.2.10.


3.2.10 Give a counterexample to show that the assertion of Proposition 3.2.8 no longer
holds if the minimality condition is removed.
3.2.11 What is the solution to the Königsberg Bridges Problem?

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

3.3 GRAPHS AND VECTOR SPACES


The results of the previous section are used here to define a vector space associated
with a graph. Two important subspaces of this vector space, the edge-cut space and the
cycle space, are also identified and studied in detail. Understanding the algebraic structure
underlying a graph’s cycles and edge-cuts makes it possible to apply powerful and elegant
results from linear algebra that lead to a deeper understanding of graphs and of certain
graph algorithms. Supporting this claim is an application, appearing later this section, to
a problem concerning electrical circuits.

Vector Space of Edge Subsets


notation: For a graph G, let WE (G) denote the set of all subsets of EG .
definition: The ring sum of two elements of WE (G), say E1 and E2 , is defined by

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)

terminology: The vector space WE (G) is called the edge space of G.


Proposition 3.3.2: Let EG = {e1 , e2 , . . . , em } be the edge-set of a graph G. Then the
subsets {e1 }, {e2 }, . . . , {em } form a basis for the edge space WE (G). Thus, WE (G) is an
m-dimensional vector space over GF (2).

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

charvec (E1 ⊕ E2 ) = charvec (E1 ) +2 charvec (E2 )

The remaining details are left to the reader.


Section 3.3 Graphs and Vector Spaces 101

Remark: Each subset Ei of EG uniquely determines a subgraph of G, namely, the edge-


induced subgraph Gi = G(Ei ). Thus, the vectors of WE (G) may be viewed as the edge-
induced subgraphs Gi instead of as the edge subsets Ei . Accordingly, 1 ∗ Gi = Gi and
0 ∗ Gi = ∅, where Gi is any edge-induced subgraph of G and where ∅ now refers to the null
graph (with no vertices and no edges). This vector space will still be denoted WE (G).
Furthermore, the only subgraphs of a graph that are not edge-induced subgraphs are
those that contain isolated vertices. Since isolated vertices play no role in the discussions in
this section and in the section that follows, the adjective “edge-induced” will no longer be
used when referring to the elements of the edge space WE (G).

The Cycle Space of a Graph


definition: The cycle space of a graph G, denoted WC (G), is the subset of the edge space
WE (G) consisting of the null set (graph) ∅, all cycles in G, and all unions of edge-disjoint
cycles of G.
Example 3.3.1: Figure 3.3.1 shows a graph G and the seven non-null elements of the cycle
space WC (G).

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. ♦

The Edge-Cut Subspace of a Graph


definition: The edge-cut space of a graph G, denoted WS (G), is the subset of the edge
space WE (G) consisting of the null graph ∅, all minimal edge-cuts in G, and all unions of
edge-disjoint minimal edge-cuts of G.
102 Chapter 3 TREES AND CONNECTIVITY

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

Figure 3.3.2 A graph G and three edge-cuts in WS (G).

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

Figure 3.3.3 Graph G and the 15 non-null elements of WS (G).

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.

Bases for the Cycle and Edge-Cut Spaces


Theorem 3.3.5: Let T be a spanning tree of a connected graph G. Then the fundamental
system of cycles associated with T is a basis for the cycle space WC (G).
Proof: By the construction, each fundamental cycle associated with T contains exactly one
non-tree edge that is not part of any other fundamental cycle associated with T . Thus, no
fundamental cycle is a ring sum of some or all of the other fundamental cycles. Hence, the
fundamental system of cycles is a linearly independent set.
To show the fundamental system of cycles spans WC (G), suppose H is any element of
WC (G). Now let e1 , e2 , . . . , er be the non-tree edges of H, and let Ci be the fundamental
cycle in T + ei , i = 1, . . . , r. The completion of the proof requires showing that H =
C1 ⊕ C2 ⊕ · · · ⊕ Cr , or equivalently, that B = H ⊕ C1 ⊕ C2 ⊕ · · · ⊕ Cr is the null graph.
Since each ei appears only in Ci , and ei is the only non-tree edge in Ci , B contains no
non-tree edges. Thus, B is a subgraph of T and is therefore acyclic. But B is an element
of WC (G) (since WC (G) is closed under ring sum), and the only element of WC (G) that is
acyclic is the null graph. ♦

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

Figure 3.3.4 Fundamental system {C3 , C4 , C6 } is a basis for WC (G).

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

Figure 3.3.5 Fundamental system {S1 , S2 , S3 , S4 } is a basis for WS (G).

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

Figure 3.3.6 An electrical network.

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

Figure 3.3.7 An electrical network.

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

Dimension of the Cycle and Edge-Cut Spaces


In light of the discussion and remark preceding Example 3.2.2, Theorems 3.3.5 and
3.3.6 extend easily to non-connected graphs. For such graphs, the fundamental systems are
associated with a full spanning forest instead of a spanning tree. The resulting corollary
establishes the dimensions of the cycle space and the edge-cut space, thereby justifying the
use of the terms cycle rank and edge-cut rank.
Corollary 3.3.7: Let G be a graph with c(G) components. Then the dimension of the
cycle space WC (G) is the cycle rank β(G) = |EG | − |VG | + c(G), and the dimension of the
edge-cut space WS (G) is the edge-cut rank |VG | − c(G).

Proof: This follows directly from Theorems 3.3.5 and 3.3.6 and the definitions of cycle
rank and edge-cut rank. ♦

Relationship between the Cycle and Edge-Cut Spaces


The next two propositions characterize the elements of the cycle space and the edge-cut
space of a graph in terms of each other. The proof of the second characterization is similar
to that of the first and is left as an exercise.
Proposition 3.3.8: A subgraph H of a graph G is in the cycle space WC (G) if and only
if it has an even number of edges in common with every subgraph in the edge-cut space
WS (G).

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. ♦

Proposition 3.3.9: A subgraph H of a graph G is an element of the edge-cut space of G


if and only if it has an even number of edges in common with every subgraph in the cycle
space of G. ♦ (Exercises)

Orthogonality of the Cycle and Edge-Cut Spaces


definition: Two vectors in the edge space WE (G) are said to be orthogonal if the dot
product of their characteristic vectors equals 0 in GF(2). Thus, two subsets of edges are
orthogonal if they have an even number of edges in common.
Section 3.3 Graphs and Vector Spaces 107

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. ♦

Vector Space of Vertex Subsets


This section concludes by showing that a spanning tree of a simple graph G corresponds
to a basis of the column space of the incidence matrix of G.

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

Figure 3.3.8 A graph G and its incidence matrix IG .


108 Chapter 3 TREES AND CONNECTIVITY

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

Corollary 3.3.13: A set D of edges of a simple graph G forms a cycle or a union of


edge-disjoint cycles if and only if the mod 2 sum of the columns in CD is the zero vector.
♦ (Exercises)
Each column of IG may be regarded as an element of the vector space of all n-tuples
over GF(2). Therefore, a subset S of the columns of IG is linearly independent over GF(2)
if no non-empty subset of S sums to the zero vector. Using this terminology, the following
characterization of acyclic subgraphs is an immediate consequence of Corollary 3.3.13.
Proposition 3.3.14: An edge subset D of a simple graph G forms an acyclic subgraph of
G if and only if the column set CD is linearly independent over GF (2).
Section 3.3 Graphs and Vector Spaces 109

The next proposition is needed to complete the characterization of spanning trees


promised earlier.
Proposition 3.3.15: Let D be a subset of edges of a connected, simple graph G. Then D
forms (induces) a connected spanning subgraph of G if and only if column set CD spans
the column space of IG .

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).

Proof: This follows directly from Propositions 3.3.14 and 3.3.15. ♦

EXERCISES for Section 3.3


3.3.1 Consider the given graph and the spanning tree T defined by the specified edge subset
of the graph G.
i. Find the non-null elements of the cycle space WC (G) for the given graph G.
ii. Find the non-null elements of the edge-cut space WS (G).
iii. Show that the fundamental system of cycles associated with T is a basis for the cycle-
space WC (G).
v. Show that the fundamental system of edge-cuts associated with T is a basis for the
edge-cut space WS (G).

(a) c (b) a z e (c) a


x y x y x z
w e c d f
a b c g f b
f d b
y
z u w d v u e w

{a, e, d} {a, c, g, e, d} {a, b, e, f }

3.3.2 For the given graph G:


h

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}.

3.3.6 Prove Proposition 3.3.1.


3.3.7 Prove Theorem 3.3.6.
3.3.8 Prove Proposition 3.3.9.
3.3.9 Prove Corollary 3.3.13.
3.3.10 Test whether the cycle and edge-cut spaces for the graph in Figure 3.3.3 are orthog-
onal complements of the edge space WE (G).
3.3.11 Express the graph of Figure 3.3.3 as the ring sum of a subgraph in the cycle space
with a subgraph in the edge-cut space of G.

3.4 VERTEX- AND EDGE-CONNECTIVITY

definition: 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.
Thus, if G has at least one pair of nonadjacent vertices, then κv (G) is the size of a
smallest vertex-cut.
definition: A graph G is k-connected if G is connected and κv (G) ≥ k. If G has nonad-
jacent vertices, then G is k-connected if every vertex-cut has at least k vertices.
definition: The edge-connectivity of a connected graph G, denoted κe (G), is the min-
imum number of edges whose removal can disconnect G.
Thus, if G is a connected graph, the edge-connectivity κe (G) is the size of a smallest
edge-cut.
definition: A graph G is k-edge-connected if G is connected and every edge-cut has at
least k edges (i.e., κe (G) ≥ k].
Example 3.4.1: In the graph G shown in Figure 3.4.1, the vertex-set {x, y} is one of
three different 2-element vertex-cuts, and it is easy to see that there is no cut-vertex. Thus,
κv (G) = 2. The edge-set {a, b, c} is the unique 3-element edge-cut of graph G, and there is
no edge-cut with fewer than three edges. Therefore, κe (G) = 3.
Section 3.4 Vertex- and Edge-Connectivity 111

x b v

G c

y a w

Figure 3.4.1 A graph G with κv (G) = 2 and κe (G) = 3.

Application 3.4.1: Network Survivability The connectivity measures κv and κe are


used in a quantified model of network survivability, which is the capacity of a network
to retain connections among its nodes after some edges or nodes are removed.

Remark: Since neither the vertex-connectivity nor the edge-connectivity of a graph is


affected by the existence or absence of self-loops, we will assume that all graphs under
consideration throughout this chapter are loopless, unless otherwise specified.
Proposition 3.4.1: Let G be a graph. Then the edge-connectivity κe (G) is less than or
equal to the minimum degree δmin (G).

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.

Relationship Between Vertex- and Edge-Connectivity


The next few results concern the relationship between vertex-connectivity and edge-
connectivity. They lead to a characterization of 2-connected graphs, first proved by Hassler
Whitney in 1932.
Proposition 3.4.3: Let e be any edge of a k-connected graph G, for k ≥ 3. Then the
edge-deletion subgraph G − e is (k − 1)-connected.

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

Figure 3.4.2 The existence of an x-y walk in (G − e) − {w1 , w2 , . . . , wk−2 }.

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: The result follows by the iterative application of Proposition 3.4.3. ♦


Corollary 3.4.5: Let G be a connected graph. Then κe (G) ≥ κv (G).

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. ♦

Internally Disjoint Paths and Vertex-Connectivity: Whitney’s Theorem


A communications network is said to be fault-tolerant if it has at least two alternative
paths between each pair of vertices. This notion actually characterizes 2-connected graphs,
as the next theorem demonstrates. The theorem was proved by Hassler Whitney in 1932
and is a prelude to his more general result for k-connected graphs, which appears in §3.5.
terminology: A vertex of a path P is an internal vertex of P if it is neither the initial
nor the final vertex of that path.
definition: Let u and v be two vertices in a graph G. A collection of u-v paths in G is
said to be internally disjoint if no two paths in the collection have an internal vertex in
common.
Section 3.4 Vertex- and Edge-Connectivity 113

Theorem 3.4.7: [Whitney’s 2-Connected Characterization] Let G be a connected


graph with three or more vertices. Then G is 2-connected if and only if for each pair of
vertices in G, there are two internally disjoint paths between them.

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

Theorem 3.4.9: [Characterization of 2-Connected Graphs] Let G be a connected


graph with at least three vertices. Then the following statements are equivalent.

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.

EXERCISES for Section 3.4


3.4.1 Find the other two 2-element vertex-cuts in the graph of Example 3.4.1.

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.

3.4.3 Determine the vertex- and edge-connectivity of the given graph.


a a b a
(a) b (b) a b b
c c
f f d d c f f d
c d

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

(e) Complete bipartite graph K4,7 . (f) Hypercube graph Q4 .

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

3.4.6 Give an example of a graph G satisfying the given conditions.


(a) κv (G) = κe (G) = δmin (G) (b) κv (G) = κe (G) < δmin (G)

(c) κv (G) < κe (G) = δmin (G) (d) κv (G) < κe (G) < δmin (G)

3.4.7 Let v1 , v2 , . . . , vk be k distinct vertices of a k-connected graph G, and let GW be the


graph formed from G by joining a new vertex w to each of the vi ’s. Show that κv (Gw ) = k.
3.4.8 Let G be a k-connected graph, and let v be a vertex not in G. Prove that the suspension
H = G + v (§1.4) is (k + 1)-connected.
3.4.9 Prove that there exists no 3-connected simple graph with exactly seven edges.
3.4.10 Let a, b, and c be positive integers with a ≤ b ≤ c. Show that there exists a graph
G with κv (G) = a, κe (G) = b, δmin (G) = c.

definition: A unicyclic graph is a connected graph with exactly one cycle.

3.4.11 Show that the edge-connectivity of a unicyclic graph is no greater than 2.


3.4.12 Characterize those unicyclic graphs whose vertex-connectivity equals 2.
3.4.13 Prove the characterization of 2-connected graphs given by Theorem 3.4.9.
3.4.14 Prove that if G is a connected graph, then κv (G) = 1 + minv∈V {κv (G − v)}.
3.4.15 Find a lower bound on the number of vertices in a k-connected graph with diameter
d (§1.2) and a graph that achieves that lower bound (thereby showing that the lower bound
is sharp).

3.5 MAX-MIN DUALITY AND MENGER’S THEOREMS


Borrowing from operations research terminology, we consider certain primal-dual pairs
of optimization problems that are intimately related. Usually, one of these problems involves
the maximization of some objective function, while the other is a minimization problem.
A feasible solution to one of the problems provides a bound for the optimal value of the
other problem (this is sometimes referred to as weak duality), and the optimal value of one
problem is equal to the optimal value of the other (strong duality). Menger’s Theorems and
their many variations epitomize this primal-dual relationship. The following terminology is
used throughout this section.
definition: Let u and v be distinct vertices in a connected graph G. A vertex subset (or
edge subset) S is u-v separating (or separates u and v), if the vertices u and v lie in
different components of the deletion subgraph G − S.
Thus, a u-v separating vertex-set is a vertex-cut, and a u-v separating edge-set is an
edge-cut. When the context is clear, the term u-v separating set will refer either to a u-v
separating vertex-set or to a u-v separating edge-set.
Example 3.5.1: For the graph in Figure 3.5.1, the vertex-cut {x, w, z} is a u-v separating
set of vertices of minimum size, and the edge-cut {a, b, c, d, e} is a u-v separating set of
edges of minimum size. Notice that a minimize-size u-v separating set of edges (vertices)
116 Chapter 3 TREES AND CONNECTIVITY

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.

A Primal-Dual Pair of Optimization Problems


The discussion in §3.4 suggests two different interpretations of a graph’s connectivity.
One interpretation is the number of vertices or edges it takes to disconnect the graph, and
the other is the number of alternative paths joining any two given vertices of the graph.
Corresponding to these two perspectives are the following two optimization problems
for two nonadjacent vertices u and v of a connected graph G.
Maximization Problem: Determine the maximum number of internally disjoint u-v paths in
graph G.
Minimization Problem: Determine the minimum number of vertices of graph G needed to
separate the vertices u and v.
Proposition 3.5.1: (Weak Duality) Let u and v be any two nonadjacent vertices of a
connected graph G. Let Puv be a collection of internally disjoint u-v paths in G, and let
Suv be a u-v separating set of vertices in G. Then |Puv | ≤ |Suv |.

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.

Variations and Consequences of Menger’s Theorem


The vertex-connectivity of a graph can be expressed in terms of the local connectivity
between a given pair of vertices, and this relationship is used in the proof of Whitney’s
Theorem given below.
definition: Let s and t be nonadjacent vertices of a connected graph G. Then the lo-
cal vertex-connectivity between s and t, denoted κv (s, t), is the size of a smallest s-t
separating vertex-set in G.
Lemma 3.5.5: Let G be a connected graph containing at least one pair of nonadjacent
vertices. Then the vertex-connectivity κv (G) is the minimum of the local vertex-connectivity
κv (s, t), taken over all pairs of nonadjacent vertices s and t.

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

The following variation of Menger’s Theorem was published by Whitney in 1932. It


generalizes the characterization of 2-connected graphs given by Theorem 3.4.7.
Theorem 3.5.6: [Whitney’s k-Connected Characterization] A nontrivial graph G
is k-connected if and only if for each pair u, v of vertices, there are at least k internally
disjoint u-v paths in G.

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

Figure 3.5.2 The graph Gw is constructed from G.

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

Figure 3.5.3 Extending cycle C to include vertex u.

Analogues of Menger’s Theorem


Some of the results given at the beginning of this section have the following edge ana-
logues. Each can be proved by mimicking the proof of the corresponding vertex version.
The proofs are left as exercises.
Proposition 3.5.9: [Edge Form of Certificate of Optimality] Let u and v be any
two vertices of a connected graph G. Suppose Puv is a collection of edge-disjoint u-v paths
in G, and Suv is a u-v separating set of edges in G, such that |Puv | = |Suv |. Then Puv is
the largest possible collection of edge-disjoint u-v paths, and Suv is the smallest possible
u-v separating set. In other words, each is an optimal solution to its respective problem.
♦ (Exercises)

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)

Theorem 3.5.11: [Whitney’s k-Edge-Connected Characterization] A nontrivial


graph G is k-edge-connected if and only if for every two distinct vertices u and v of G,
there are at least k 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

Proof of Menger’s Theorem


definition: Let W be a set of vertices in a graph G and x another vertex not in W . A
strict x-W path is a path joining vertex x to a vertex in W and containing no other vertex
of W . A strict W -x path is the reverse of a strict x-W path (i.e., its sequence of vertices
and edges is in reverse order).
120 Chapter 3 TREES AND CONNECTIVITY

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

Case 1: There exists a u-v separating set W = {w1 , w2 , . . . , wk } of vertices in G of minimum


size k, such that neither u nor v is adjacent to every vertex in W .
Let Gu be the subgraph induced on the union of the edge-sets of all strict u-W paths in G,
and let Gv be the subgraph induced on the union of edge-sets of all strict W -v paths (see
Figure 3.5.5).
w1

u w2 v

G w3

w1 w1

u w2 w2 v

Gu Gv
w3 w3

Figure 3.5.5 An example illustrating the subgraphs Gu and Gv .

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

Figure 3.5.6 At least one of the endpoints of edge e lies outside W .


122 Chapter 3 TREES AND CONNECTIVITY

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.

|EG | ≥ |EGu ∪Gu | (since Gu ∪ Gv is a subgraph of G)


= |EGu | + |EGv | (by Assertion 5.3.4c)
> |EGu | + k (by Assertion 5.3.4b)
= |EG∗u | (by the construction of G∗u )

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

Figure 3.5.9 Completing Case 2 of Menger’s Theorem.

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. ♦

EXERCISES for Section 3.5


3.5.1 For the given graph:
i. Find the maximum number of internally disjoint u-v paths for the given graph, and
use Certificate of Optimality (Corollary 3.5.3) to justify your answer.
ii. Find the maximum number of edge-disjoint u-v paths for the specified graph, and use
Edge Form of Certificate of Optimality (Proposition 3.5.9) to justify your answer.
tt yy tt yy
(a) (b)
w
w xx xx
u
u vv u
u w
w vv

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

3.5.3 Prove Certificate of Optimality (Corollary 3.5.3).


3.5.4 Prove Edge Form of Certificate of Optimality (Proposition 3.5.9).
3.5.5 Prove Edge Form of Menger’s Theorem 3.5.10.

3.5.6 Prove Whitney’s k-Edge-Connected Characterization Theorem 3.5.11.


3.5.7 Let G be a simple k-connected graph with k ≥ 2. Let S be a set of two edges and W
a set of k − 2 vertices. Prove that there exists a cycle in G containing the elements of S and
W.
3.5.8 Let G be a simple k-connected graph. Let W = {w1 , w2 , . . . , wk } be a set of k vertices
and v ∈ VG −W . Prove that there exists a v-wi path Pi , i = 1, . . . , k, such that the collection
{Pi } of k paths is internally disjoint.

3.6 BLOCK DECOMPOSITIONS

definition: A block of a loopless graph is a maximal connected subgraph H such that no


vertex of H is a cut-vertex of H.
Thus, if a block has at least three vertices, then it is a maximal 2-connected subgraph.
The only other types of blocks (in a loopless graph) are isolated vertices or dipoles (2-vertex
graphs with a single edge or a multi-edge).
Remark: The blocks of a graph G are the blocks of the components of G and can therefore
be identified one component of G at a time. Also, self-loops (or their absence) have no effect
on the connectivity of a graph. For these reasons we assume throughout this section (except
for the final subsection) that all graphs under consideration are loopless and connected.
Example 3.6.1: The graph in Figure 3.6.1 has four blocks; they are the subgraphs induced
on the vertex subsets {t, u, w, v}, {w, x}, {x, y, z}, and {y, s}.
u y

w x
t s

v z

Figure 3.6.1 A graph with four blocks.


Section 3.6 Block Decompositions 125

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: Choose two 1-valent vertices of a spanning tree of graph G. ♦


Proposition 3.6.2: Two different blocks of a graph can have at most one vertex in com-
mon.

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.

The following assertions are immediate consequences of Proposition 3.6.2.


Corollary 3.6.3: The edge-sets of the blocks of a graph G partition EG .
♦ (Exercises)

Corollary 3.6.4: Let x be a vertex in a graph G. Then x is a cut-vertex of G if and only


if x is in two different blocks of G. ♦ (Exercises)

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)

EXERCISES for Section 3.6


3.6.1 Identify the blocks in the given graph and draw the block graph.
uu yy uu yy
(a) (b)
ww xx ww xx
tt ss tt ss

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.2 Draw a graph whose block graph is the complete graph K3 .


3.6.3 Find two non-isomorphic connected graphs with six vertices, six edges, and three
blocks.
3.6.4 Find a graph whose block graph is the n-cycle graph Cn .
3.6.5 How many non-isomorphic simple connected graphs are there that have seven vertices,
seven edges, and three blocks?
3.6.6 Prove or disprove: Every simple graph is the block graph of some graph.
3.6.7 Prove or disprove: Two graphs are isomorphic if and only if their block graphs are
isomorphic.
3.6.8 Prove Corollary 3.6.3.
3.7 Supplementary Exercises 127

3.6.9 Prove Corollary 3.6.4.


3.6.10 Prove Corollary 3.6.5.
definition: Let G be a simple connected graph with at least two blocks. The block-
cutpoint graph bc(G) of G is 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.
3.6.11 Draw the block-cutpoint graph bc(G) of the specified graph G, and identify the
vertices in bc(G) that correspond to leaf blocks of G.
(a) The graph of Exercise 3.6.1(a). (b) The graph of Exercise 3.6.1(b).
(c) The graph of Exercise 3.6.1(c). (d) The graph of Exercise 3.6.1(d).

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 SUPPLEMENTARY EXERCISES


3.7.1 Draw every tree T such that the edge-complement T̄ is a tree.
3.7.2 What are the minimum and maximum independence numbers of an n-vertex tree?
3.7.3 What are the minimum and maximum number of vertex orbits in an n-vertex tree?
3.7.4 Calculate the vertex-connectivity of K4,7 .
3.7.5 Prove that the complete bipartite graph Km,m is m-connected.
3.7.6 Prove that the vertex-connectivity of the hypercube graph Qn is n.
3.7.7 In the n-dimensional hypercube graph Qn , find n edge-disjoint paths from (0, 0, . . . , 0)
to (1, 1, . . . , 1).
3.7.8 Prove that deleting two vertices from the graph below is insufficient to separate vertex
s from vertex t.
s

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.

bridge: synonym for cut-edge.


component of a vertex v in a graph G, denoted CG (v): the subgraph of G induced on
the set of vertices that are reachable from v.
k-connected graph G: a connected graph with κv (G) ≥ k.

cut-edge of a graph: an edge whose removal increases the number of components.


cutpoint: a synonym for cut-vertex.
cut-vertex of a graph: a vertex whose removal increases the number of components.

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.

fundamental system of cycles of a graph G associated with a full spanning forest F :


the collection of fundamental cycles of the graph G that result from each addition of
an edge to the spanning forest F .
fundamental system of edge-cuts of a graph G associated with a full spanning forest
F : the collection of fundamental edge-cuts of the graph G that result from each removal
of an edge from the spanning forest F .
internal vertex in a rooted tree: a vertex that is not a leaf.
internally disjoint paths: paths that have no internal vertex in common.
leaf block: see block, leaf.

leaf in an undirected tree: a vertex of degree 1.


local vertex-connectivity between nonadjacent vertices s and t: the size of a smallest
s-t separating vertex-set; denoted κv (s, t).
partition-cut hX1 , X2 i of a graph G: the set of all edges of G having one endpoint in X1
and the other endpoint in X2 , where X1 and X2 form a partition of VG .
relative complement of a subgraph H in a graph G, denoted G − H: the edge-deletion
subgraph G − E(H).
ring sum of two sets A and B: the set (A − B) ∪ (B − A), denoted A ⊕ B.

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

PLANARITY AND KURATOWSKI’S THEOREM

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

4.1 PLANAR DRAWINGS AND SOME BASIC SURFACES


Our approach to drawings of graphs on surfaces begins with our intuitive notions of
what we mean by a drawing and a surface. This chapter provides some precise examples of
a surface.

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.

Figure 4.1.1 A non-planar drawing and a planar drawing of K4 .

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

Figure 4.1.2 The four regions of a planar drawing of a graph.


Section 4.1 Planar Drawings and Some Basic Surfaces 133

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.

Three Basic Surfaces


All of the surfaces under consideration in this chapter are subsets of Euclidean 3-space.
Although we assume that the reader is familiar with the following surfaces, it is helpful to
think about their mathematical models.
definition: A plane in Euclidean 3-space R3 is a set of points (x, y, z) such that there are
numbers a, b, c, and d with ax + by + cz = d.
definition: A sphere is a set of points in R3 equidistant from a fixed point, the center.
definition: The standard torus is the surface of revolution obtained by revolving a circle
of radius 1 centered at (2, 0) in the xy-plane around the y-axis in 3-space, as depicted in
Figure 4.1.3. The solid inside is called the standard donut.

y y

x x

z z

Figure 4.1.3 Creating a torus.

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

standard meridian standard longitude

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.

Riemann Stereographic Projection


Riemann observed that deleting a single point from a sphere yields a surface that is
equivalent to the plane for many purposes, including that of drawing graphs.
definition: The Riemann stereographic projection is the function ρ that maps each
point w of the unit-diameter sphere (tangent at the origin (0, 0, 0) to the xz -plane in Eu-
clidean 3-space) to the point ρ(w) where the ray from the North Pole (0, 1, 0) through point
w intersects the xz -plane.
Under the Riemann projection, the “southern hemisphere” of the sphere is mapped
continuously onto the unit disk. The “northern hemisphere” (minus the North Pole) is
mapped continuously onto the rest of the plane. The points nearest to the North Pole are
mapped to the points farthest from the origin. Figure 4.1.5 illustrates the construction.

Figure 4.1.5 The Riemann stereographic projection.


Remark: Whereas a planar drawing of a graph has one exterior region (containing the
“point at infinity”), a crossing-free graph drawn on the sphere has one region that contains
the North Pole. Given a graph drawn on the sphere, the Riemann stereographic projection
enables us to move the drawing to the plane so that the point at infinity is deleted from
whatever region we choose. That is, we simply rotate the sphere so that a point in the
designated region is at the North Pole. Accordingly, the choice of exterior region is usually
irrelevant to understanding anything about the drawings of a particular graph in the plane.
Moreover, a graph drawing on a flat piece of paper may be conceptualized as a drawing on
a sphere whose radius is so large that its curvature is imperceptible.
Section 4.1 Planar Drawings and Some Basic Surfaces 135

Proposition 4.1.1: A graph is planar if and only if it can be drawn without edge-crossings
on the sphere.

Proof: This is an immediate consequence of the Riemann stereographic projection. ♦

Jordan Separation Property


The objective of the definitions in this subsection is to lend precision to the intuitive
notion of using a closed curve to separate a surface. Most of these definitions can be gener-
alized.
definition: By a Euclidean set, we mean a subset of any Euclidean space Rn .
definition: An open path from s to t in a Euclidean set X is the image of a continuous
bijection f from the unit interval [0, 1] to a subset of X such that f (0) = s and f (1) = t.
(One may visualize a path as the trace of a particle traveling through space for a fixed
length of time.)

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)

Figure 4.1.6 Open path and closed curve (= closed path).

Example 4.1.5: In a crossing-free drawing of a graph on a surface, a cycle of the graph is


a closed curve.

definition: A Euclidean set X is connected if for every pair of points s, t ∈ X, there
exists a path within X from s to t.
definition: The Euclidean set X separates the connected Euclidean set Y if there exist
a pair of points s and t in Y − X, such that every path in Y from s to t intersects the set
X.
Example 4.1.6: Figure 4.1.7 shows a meandering closed curve in the plane. It separates
the white part from the shaded part.

Figure 4.1.7 A closed curve separating the plane.

† A topologist would say path-connected.


136 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

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?.

Applying the Jordan Curve Theorem to the Non-planarity of K5 and K3,3


It is possible to prove that a particular graph is non-planar directly from the Jordan
Curve Theorem. In what follows, we continue to rely temporarily on an intuitive notion
of the regions of a crossing-free drawing of a graph on a sphere or plane. A more formal
definition of region is given at the beginning of §4.3.
Theorem 4.1.4: Every drawing of the complete graph K5 in the sphere (or plane) contains
at least one edge-crossing.

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

equivalent to open disks. For a proof, see [Ne54].


Section 4.1 Planar Drawings and Some Basic Surfaces 137

4 0 2

Figure 4.1.8 Drawing most of K5 in the sphere.


Theorem 4.1.5: Every drawing of the complete bipartite graph K3,3 in the sphere (or
plane) contains at least one edge-crossing.
Proof: Label the vertices of one partite set 0, 2, 4, and of the other 1, 3, 5. By the Jordan
Curve Theorem, cycle (2, 3, 4, 5, 2) separates the sphere into two regions, and, as in the
previous proof, we regard the region containing vertex 0 as the “inside” of the cycle. By
the Jordan Curve Theorem, the edges joining vertex 0 to each of the vertices 3 and 5 lie
entirely inside that cycle, and each of the cycles (0, 3, 2, 5, 0) and (0, 3, 4, 5, 0) separates the
sphere, as illustrated in Figure 4.1.9.
2 3

5 4

Figure 4.1.9 Drawing most of K3,3 in the sphere.

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

Figure 4.1.10 The Kuratowski graphs.

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

Figure 4.1.11 A crossing-free drawing of K5 on the torus.


138 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

EXERCISES for Section 4.1


4.1.1 For the given point w on the sphere that serves as the domain of the Riemann stere-
ographic projection, calculate the coordinates of the point ρ(w) in the xz-plane to which it
is projected. (Hint: Write the locus of the line through the North Pole and w.)
 √ 
(a) 21 , 12 , 0

(b) 14 , 43 , 42
 √   √ 
(c) 15 , 10
9
, 105 (d) 13 , 43 , 1211

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.

4.2 SUBDIVISION AND HOMEOMORPHISM


The graph in Figure 4.2.1 looks a lot like the Kuratowski graph K3,3, but one of the
“edges” has an intermediate vertex. Clearly, if this graph could be drawn on a surface
without any edge-crossings, then so could K3,3, . Intuitively, it would be an easy matter of
erasing the intermediate vertex and splicing the “loose ends” together.

Figure 4.2.1 Subdividing an edge.

Placing one or more intermediate vertices on an edge is formally known as subdivision.


The relationship between the two graphs is known as homeomorphism. The concept of
homeomorphism originated as an equivalence relation of topological spaces. It is defined
in topology to be a one-to-one, onto, continuous function with a continuous inverse. This
section introduces the graph-theoretic analogue of this topological notion.
Section 4.2 Subdivision and Homeomorphism 139

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"

Figure 4.2.2 Subdividing an edge.

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"

Figure 4.2.3 Smoothing away a vertex.

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"

Figure 4.2.4 Subdividing an edge of the 3-cycle yields the 4-cycle.

definition: Subdividing a graph G means performing a sequence of edge-subdivision


operations. The resulting graph is called a subdivision of the graph G.
Example 4.2.2: Performing any k subdivisions on the n-cycle graph Cn yields the (n + k)-
cycle graph Cn+k , and Cn can be obtained by any k smoothing operations on Cn+k . Thus,
Cn+k is a subdivision of Ck , for all n ≥ k ≥ 1.

Proposition 4.2.1: A subdivision of a graph can be drawn without edge-crossings on a


surface if and only if the graph itself can be drawn without edge-crossings on that surface.

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.

Figure 4.2.5 A graph and its barycentric subdivision.

Proposition 4.2.2: The barycentric subdivision of any graph is a bipartite graph.

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: By Proposition 4.2.2, a barycentric subdivision of a graph is bipartite, and a bipar-


tite graph has no self-loops. ♦
Proposition 4.2.4: Barycentric subdivision of any loopless graph yields a simple 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. ♦

Figure 4.2.6 A graph and its second barycentric subdivision.


Section 4.2 Subdivision and Homeomorphism 141

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

Figure 4.2.7 Two non-isomorphic graphs that are homeomorphic.

Remark: Notice in Example 4.2.4 that no subdivision of graph G is isomorphic to graph


H, and that no subdivision of graph H is isomorphic to graph G.
Proposition 4.2.6: Let G and H be homeomorphic graphs. Then G can be drawn without
edge-crossings on a surface S if and only if H can be drawn on S without edge-crossings.

Proof: This follows from iterated application of Proposition 4.2.1. ♦


Proposition 4.2.7: Every graph is homeomorphic to a bipartite graph.

Proof: By Proposition 4.2.2, the barycentric subdivision of a graph is bipartite. Of course,


a graph is homeomorphic to a subdivision of itself. ♦

Subgraph Homeomorphism Problem


Deciding whether a graph G contains a subgraph that is homeomorphic to a target graph
H is a common problem in graph theory.
Example 4.2.5: Figure 4.2.8 shows that the complete bipartite graph K3,3 contains a
subgraph that is homeomorphic to the complete graph K4 . Four of the edges of K4 are
represented by the cycle 0 − 1 − 2 − 3 − 0, and the other two are represented by the two
paths of length 2 indicated by broken lines.

0 2

1 3

Figure 4.2.8 A homeomorphic copy of K4 in K3,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

Figure 4.2.9 An impossible way to place K4 into K3,3 .

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

Figure 4.2.10 A homeomorphic copy of K5 in Q4 .

EXERCISES for Section 4.2


4.2.1 For the given pair of graphs, either prove that they are homeomorphic or prove that
they are not.

(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 .

4.3 EXTENDING PLANAR DRAWINGS


We continue to regard a drawing of a graph on a surface as an intuitive notion. A more
precise definition appears in the next chapter. The following definitions become mathemat-
ically precise as soon as the notion of a drawing is precise.
definition: An imbedding of a graph G on a surface S is a drawing without any edge-
crossings. We denote the imbedding ι : G → S.
notation: When the surface of the imbedding is a plane or sphere, we use S0 to denote
the surface.
Thus, a planar drawing of a graph G is an imbedding, ι : G → S0 , of G on the plane S0 .
definition: A region of a graph imbedding ι : G → S is a component of the Euclidean
set that results from deleting the image of G from the surface S.
definition: The boundary of a region of a graph imbedding ι : G → S is the subgraph
of G that comprises all vertices that abut that region and all edges whose interiors abut the
region.
Remark: When a 2-connected graph is imbedded on the sphere, the boundary of every
region is a cycle on the perimeter of the region. However, it is a dangerous misconception
to imagine that this is the general case.
definition: A face of a graph imbedding ι : G → S is the union of a region and its
boundary.
Remark: A drawing does not have faces unless it is an imbedding.

Planar Extensions of a Planar Subgraph


A standard way to construct a planar drawing of a graph is to draw a subgraph in
the plane, and then to extend the drawing by adding the remaining parts of the graph.
This section gives the terminology and some basic results about the planar extensions of
a subgraph. These results are helpful in proving Kuratowski’s theorem and in specifying a
planarity algorithm in the final two sections of this chapter.
144 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

Proposition 4.3.1: A planar graph G remains planar if a multiple edge or self-loop is


added to it.

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

Figure 4.3.1 Adding a self-loop or a multi-edge preserves planarity.

Corollary 4.3.2: A non-planar graph remains non-planar if a self-loop is deleted or if one


edge of a multi-edge is deleted.

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

Figure 4.3.2 Subdividing an edge or adding a spike preserves planarity.

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

Figure 4.3.3 Merging two regions by deleting an edge.

Amalgamating Planar Graphs


We recall from §2.1 that amalgamating two graphs means pasting a subgraph in one
graph to an isomorphic subgraph in the other.
Proposition 4.3.5: Let f be a face of a planar drawing of a connected graph G. Then
there is a planar drawing of G in which the boundary walk of face f bounds a disk in the
plane that contains the entire graph G. That is, in the new drawing, face f is the “outer”
face.

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

Figure 4.3.7 A 2-vertex amalgamation of two planar graphs into 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

Figure 4.3.8 A 4-vertex amalgamation of two planar graphs into K3,3 .


Section 4.3 Extending Planar Drawings 147

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

Figure 4.3.9 A subgraph H and its appendages B1 , B2 , B3 , and B4 .

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

case (i) case (ii)


Figure 4.3.10 The two ways that appendages can overlap.

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.

EXERCISES for Section 4.3


4.3.1 The given graphs are to be amalgamated so that each vertex labeled ui is matched
to the vertex vi with the same subscript. Draw a planar imbedding of the resulting graph.

(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

u1u1 v2v2 v1v1


u1u1 u3u3
Section 4.3 Extending Planar Drawings 149

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

4.3.3 Relative to the subgraph shown in bold,


i. specify each appendage by listing its vertex-set and its edge-set;
ii. list the contact-point sets of each appendage;
iii. determine which appendages are overlapping.
u u a a v v u u a a v v
(a) (b)

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

4.4 KURATOWSKI’S THEOREM


One of the landmarks of graph theory is Kuratowski’s characterization of planarity in
terms of two forbidden subgraphs, K5 and K3,3 .
terminology: Any graph homeomorphic either to K5 or to K3,3 is called a Kuratowski
subgraph.
Theorem 4.4.1: [Kuratowski, 1930] A graph is planar if and only if it contains no
subgraph homeomorphic to K5 or to K3,3 .
Proof: Theorems 4.1.4 and 4.1.5 have established that K5 and K3,3 are both non-planar.
Proposition 4.2.6 implies that a planar graph cannot contain a homeomorphic copy of either.
Thus, containing no Kuratowski subgraph is necessary for planarity. The rest of this section
is devoted to proving sufficiency.
If the absence of Kuratowski subgraphs were not sufficient, then there would exist non-
planar graphs with no Kuratowski subgraphs. If there were any such counterexamples, then
some counterexample graph would have the minimum number of edges among all counterex-
amples. The strategy is to derive some properties that this minimum counterexample would
have to have, which ultimately establish that it could not exist. The main steps within this
strategy are proofs of three statements:
Step 1: The minimum counterexample would be simple and 3-connected.
Step 2: The minimum counterexample would contain a cycle with three mutually over-
lapping appendages.
Step 3: Any configuration comprising a cycle and three mutually overlapping ap-
pendages must contain a Kuratowski subgraph.
Step 1: A Minimum Counterexample would be Simple and 3-Connected
Assertion 1.1: Let G be a non-planar connected graph with no Kuratowski subgraph and
with the minimum number of edges for any such graph. Then G is a simple graph.
Proof of Assertion 1.1: Suppose that G is not simple. By Corollary 4.3.2, deleting a
self-loop or one edge of a multi-edge would result in a smaller non-planar graph, still with
no Kuratowski subgraph, contradicting the minimality of G. ♦ (Assertion 1.1)
Assertion 1.2: Let G be a non-planar connected graph with no Kuratowski subgraph and
with the minimum number of edges for any such graph. Then graph G has no cut-vertex.
Proof of Assertion 1.2: If graph G had a cut-vertex v, then every appendage of v would
be planar, by minimality of G. By iterative application of Corollary 4.3.7, graph G itself
would be planar, a contradiction. ♦ (Assertion 1.2)
Assertion 1.3: Let G be a non-planar connected graph containing no Kuratowski subgraph,
with the minimum number of edges for any such graph. Let {u, v} be a vertex-cut in G, and
let L be a non-chord appendage of {u, v}. Then there is a planar drawing of L with a face
whose boundary contains both vertices u and v.
Proof of Assertion 1.3: Since {u, v} is a vertex-cut of graph G, the graph G − {u, v} has
at least two components. Thus, the vertex-set {u, v} must have at least one more non-chord
appendage besides L. Since, by Assertion 1.2, {u, v} is a minimal cut, it follows that both u
and v must be contact points of this other non-chord appendage. Since this other non-chord
appendage is connected and has no edge joining u and v, it must contain a u-v path P of
length at least 2, as illustrated in Figure 4.4.1.
Section 4.4 Kuratowski’s Theorem 151
u u u

v v v
L

Figure 4.4.1 A u-v path P in an appendage other than L.

The subgraph H = (VL ∪ VP , EL ∪ EP ) (obtained by adding path P to subgraph L) has


no Kuratowski subgraph, because it is contained in graph G, which by premise contains
no Kuratowski subgraphs. Let d be the edge obtained from path P by smoothing away all
the internal vertices. Then the graph L + d contains no Kuratowski subgraphs (because
L + d is homeomorphic to subgraph H). Moreover, the graph L + d has fewer edges than the
minimal counterexample G (because P has at least one internal vertex). Thus, the graph
L + d is planar.
In every planar drawing of the graph L + d, vertices u and v both lie on the boundary
of each face containing edge d. Discarding edge d from any such planar drawing of L + d
yields a planar drawing of appendage L such that vertices u and v lie on the same face (by
Proposition 4.3.4). ♦ (Assertion 1.3)
Assertion 1.4: Let G be a non-planar connected graph containing no Kuratowski subgraph,
with the minimum number of edges for any such graph. Then graph G has no vertex-cut
with exactly two vertices.
Proof of Assertion 1.4: Suppose that graph G has a minimal vertex-cut {u, v}. Clearly, a
chord appendage of {u, v} would have a planar drawing with only one face, whose boundary
contains both the vertices u and v. By Assertion 1.3, every non-chord appendage of {u, v}
would also have a planar drawing with vertices u and v on the same face boundary. Figure
4.4.2 illustrates the possible decomposition of graph G into appendages.
By Proposition 4.3.6, when graph G is reassembled by iteratively amalgamating these planar
appendages at vertices u and v, the result is a planar graph. ♦ (Assertion 1.4)
u u u u

v v v v

Figure 4.4.2 Decomposition of a graph at vertices u and v.

Completion of Step 1: Let G be a non-planar connected graph containing no Kuratowski


subgraph and with the minimum number of edges for any such graph. Then graph G is simple
and 3-connected.
Proof: This summarizes the four preceding assertions. The connectedness premise serves
only to avoid isolated vertices. ♦ (Step 1)
152 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

Step 2: Finding a Cycle with Three Mutually Overlapping Appendages


Let G be a non-planar graph containing no Kuratowski subgraph and with the minimum
number of edges for any such graph. Let e be any edge of graph G, say with endpoints u
and v, and consider a planar drawing of G − e. Since graph G is 3-connected (by Step 1),
it follows (see §5.1) that G − e is 2-connected. This implies (see §5.1) that there is a cycle
in G − e through vertices u and v. Among all such cycles, choose cycle C, as illustrated in
Figure 4.4.3, so that the number of edges “inside” C is as large as possible. The next few
assertions establish that cycle C must have two overlapping appendages in G − e that both
overlap edge e.

u v

Figure 4.4.3 Cycle C has the maximum number of edges inside it.

Assertion 2.1: Cycle C has at least one outer appendage.


Proof of Assertion 2.1: Otherwise, edge e could be drawn in the outer region, thereby
completing a planar drawing of G. ♦ (Assertion 2.1)

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

Figure 4.4.4 Using a hypothetical outer appendage to extend cycle C.


Section 4.4 Kuratowski’s Theorem 153

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)

Step 3: Analyzing the Cycle-and-Appendages Configuration


The concluding step in the proof of Kuratowski’s theorem is to show that the cycle-and-
appendages configuration whose existence is guaranteed by Step 2 must contain a Kura-
towski subgraph.
Step 3: Let C be a cycle in a connected graph G. Let edge e be an inner chord, edge d an
outer chord, and B an inner appendage, such that e, d, and B are mutually overlapping.
Then graph G has a Kuratowski subgraph.
Proof: Let u and v be the contact points of inner chord e, and let x and y be the contact
points of outer chord d. These pairs of contact points alternate on cycle C, as shown in
Figure 4.4.5. Observe that the union of cycle C, chord e, and chord d forms the complete
graph K4 . There are two cases to consider, according to the location of the contact points
of appendage B.
u

x y
e

v
d

Figure 4.4.5 Forming K4 with cycle C and chords e and d.


154 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

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

Figure 4.4.6 Subcases 1a and 1b.

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

Figure 4.4.7 Subcases 2a and 2b.

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

Subcase 2b. Paths P and Q intersect in more than one vertex.


Let s be the intersection nearest on path P to contact point u, and t the intersection nearest
on P to contact point v, as in Figure 4.4.7. Also, let P 0 be the us-subpath of P and P 00
the tv-subpath of P . Then the union of chords e and d with the paths Q, P 0 , and P 00 and
with arcs vx and uy on cycle C form a subgraph homeomorphic to K3,3 with bipartition
({u, x, t}, ({v, y, s}). ♦ (Subcase 2b) ♦ (Theorem 4.4.1)
The following Corollary sometimes expedites planarity testing.
Corollary 4.4.2: Let G be a non-planar graph formed by the amalgamation of subgraphs
H and J at vertices u and v, such that J is planar. Then the graph obtained from graph
H by joining vertices u and v is non-planar.
Proof: By Theorem 4.4.1, graph G must contain a Kuratowski subgraph K. All the vertices
of the underlying Kuratowski graph would have to lie on the same side of the cut {u, v},
because K is 3-connected. At most, a subdivided edge of the Kuratowski subgraph crosses
through u and back through v. The conclusion follows. ♦

Finding K3,3 or K5 in Small Non-planar Graphs


A simple way to find a homeomorphic copy of K3,3 in a small graph is to identify two
cycles C and C 0 (necessarily of length at least 4) that meet on a path P , such that there
is a pair of paths between C − P and C 0 − P that “cross”, thereby forming a subdivided
Möbius ladder M L3 , as illustrated in Figure 4.4.8(a).

Figure 4.4.8 Finding a K3,3 (a) or a K5 (b) by visual inspection.

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 .

Figure 4.4.9 Finding a K3,3 , example.


156 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

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 .

Figure 4.4.10 Finding a K3,3 , example.

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 .

Figure 4.4.11 Finding a K5 , example.

EXERCISES for Section 4.4


4.4.1 Find a Kuratowski subgraph in the given graph.

(a) (b)

(c) (d)
Section 4.5 Algebraic Tests for Planarity 157

(e) (f)

(g) K9 − K4,5 . (h) (K4 − K2 ) × P3 .

(i) C4 + K2 . (j) (K5 − K3 ) × P2 .

(k) K2 × K4 . (l) C5 × C5 .

(m) Q3 + K1 . (n) K7 − C7 .

4.5 ALGEBRAIC TESTS FOR PLANARITY


The most basic type of graph-imbedding problem asks whether a particular graph can
be imbedded in a particular surface. In this chapter, the surface of particular concern is
the sphere (or plane). Transforming such problems into algebraic problems is the inspired
approach of algebraic topology. This section derives the fundamental relations used in al-
gebraic analysis of graph-imbedding problems.
The algebraic methods now introduced apply to all surfaces. Although our present ver-
sion of the Euler Polyhedral Equation is only for the sphere, it can be generalized to all
surfaces.

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

Figure 4.5.1 A graph imbedding in the sphere.


158 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

definition: The boundary walk of a face f of a graph imbedding ι : G → S is a closed


walk in graph G that corresponds to a complete traversal of the perimeter of the polygonal
region within the face.
Remark: Vertices and edges can reoccur in a boundary walk. One visualizes one’s hand
tracing along the edges and vertices in the walk, from just slightly within the region. Thus,
if both sides of an edge lie on a single region, the edge is retraced on the boundary walk.
definition: The size of a face or face-size means the number of edge-steps in the bound-
ary walk (which may be more than the number of edges on the face boundary, due to
retracings). A face of size n is said to be n-sided.
definition: A monogon is a 1-sided region.
definition: A digon is a 2-sided region.
Example 4.5.2: In Figure 4.5.1, face f1 is 1-sided (a monogon) with boundary walk hdi,
face f2 is 2-sided (a digon) with boundary walk he, gi, and face f3 is 3-sided with boundary
walk ha, g, ci. Even though only five edges lie on the boundary of face f4 , face f4 is 6-sided
with boundary walk ha, b, d, b, c, ei. Two sides of face f4 are pasted together across edge b,
and that edge is a cut-edge of the graph.

Proposition 4.5.1: Let ι : G → S be a planar graph imbedding. Let e be an edge of G


that occurs twice on the boundary walk of some face f . Then e is a cut-edge of G.

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

Figure 4.5.2 A curve C from one instance of point x to the other.

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

Figure 4.5.4 A graph imbedding in the sphere.

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.

Proof: Suppose that the improper subwalk

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 )

since 1 is the minimum possible size of any face.


Section 4.5 Algebraic Tests for Planarity 161

(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.

Euler Polyhedral Equation


We observe that a tetrahedron has 4 vertices, 6 edges, and 4 faces, and we calculate that
4 − 6 + 4 = 2. We also observe that a cube has 8 vertices, 12 edges, and 6 faces, and that
8 − 12 + 6 = 2.
Remark: Robin Wilson [Wi04] offers an historical account of the generalization of this
observation. In 1750, Euler communicated the formula |V | − |E| + |F | = 2 by letter to
Goldbach. The first proof, in 1794, was by Legendre, who used metrical properties. Lhuilier
gave a topological proof in 1811, and he also derived the formula |V | − |E| + |F | = 0 for
graphs on a torus. Poincaré generalized the formula to other surfaces in a series of papers
of 1895–1904.
Theorem 4.5.7: [Euler Polyhedral Equation] Let ι : G → S be an imbedding of a
connected graph G into a sphere. Then
|V | − |E| + |F | = 2
Proof: If the cycle rank β(G) is zero, then graph G is a tree, because β(G) equals the
number of non-tree edges for any spanning tree in G. Of course, a tree contains no cycles.
Thus, in a drawing of graph G on the sphere, the original single region is not subdivided.
It follows that |F | = 1. Thus,
|V | − |E| + |F | = |V | − (|V | − 1) + |F | by Prop. 3.1.3
= |V | − (|V | − 1) + 1 = 2
This serves as the base case for an induction on cycle rank. Next suppose that the Euler
Polyhedral Equation holds for β(G) = n, for some n ≥ 0. Consider an imbedding in which
graph G has cycle rank β(G) = n + 1. Let T be a spanning tree in G, and let e ∈ EG − ET ,
so that β(G − e) = n. Clearly,
(1) |VG | = |VG−e | and
(2) |EG | = |EG−e | + 1
162 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

Figure 4.5.6 illustrates the relationship between the face sets.

tree T

e circuit C T (e)

Figure 4.5.6 Erasing a non-tree edge in a sphere.

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.

Figure 4.5.7 (a) Non-connected graph; (b) drawing with edge-crossings.

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

definition: Whatever graph imbedding ι : G → S is to be supplied as input to the duality


process (whose definition follows below) is called the primal graph imbedding. Moreover,
the graph G is called the primal graph, the vertices of G are called primal vertices, the
edges of G are called primal edges, and the faces of the imbedding of G are called primal
faces.
definition: Given a primal graph imbedding ι : G → S, the (Poincaré) duality con-
struction of a new graph imbedding is a two-step process, one for the dual vertices and
one for the dual edges:

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 ∗ .

Figure 4.5.8 Inserting dual vertices into a primal imbedding.

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 ∗ .

Figure 4.5.9 Inserting dual edges completes the dual imbedding.

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

Figure 4.5.10 A dual face surrounding its primal vertex.

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.

Figure 4.5.11 A different dual of the same primal graph.

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).

Algebraic Proofs of Non-planarity


The Euler Polyhedral Equation |V | − |E| + |F | = 2 amounts to an algebraization of the
Jordan property. Upon the Euler equation, we can construct inequalities that serve as quick
tests for planarity, which we can apply to graphs far too large for ad hoc application of the
Jordan property. These are one-way tests, and there are difficult cases in which they are
inconclusive.
This algebraic approach to such non-imbeddability proofs illustrates one of the dominant
themes of 20th-century mathematics — the transformation of various kinds of other prob-
lems, especially topological and geometric problems, into algebraic problems. The formula
derived in the following theorem illustrates this theme, by providing a necessary algebraic
condition for graph planarity.
Section 4.5 Algebraic Tests for Planarity 165

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: The Euler Polyhedral Equation is the starting point.

(1) |VG | − |EG | + |Fι | = 2 Euler Polyhedral Equation


(2) girth(G) · |Fι | ≤ 2 |EG | Edge-Face Inequality
(3) 3 |Fι | ≤ 2 |EG | G simple bipartite ⇒ 3 ≤ girth(G)
2 |EG |
(4) |Fι | ≤
3
2 |EG |
(5) |VG | − |EG | + ≥2 substitute (4) into (1)
3
|EG |
(6) |VG | − ≥2
3
|EG |
(7) ≤ |VG | − 2
3
(8) |EG | ≤ 3 |VG | − 6 ♦
Theorem 4.5.10: The complete graph K5 is non-planar.

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.

Proof: Together, the calculation 3 |VG | − 6 = 3 · 8 − 6 = 18 and the premise |EG | ≥ 19


imply that |EG | > 3 |VG | − 6. By Theorem 4.5.9, graph G is non-planar. ♦
Remark: According to Table A1 of [Ha69], there are 838 connected simple 8-vertex graphs
with 19 or more edges. Proposition 4.5.11 establishes their non-planarity collectively with
one short proof. An ad hoc approach could not so quickly prove the non-planarity of even
one such graph, much less all of them at once.

A More Powerful Non-planarity Condition for Bipartite Graphs


For a bipartite graph, the same algebraic methods used in Theorem 4.5.9 yield an in-
equality that can sometimes establish non-planarity when the more general inequality is
not strong enough.
Example 4.5.7: The graph K3,3 has 6 vertices and 9 edges. Thus, |E| ≤ 3 |V | − 6, even
though K3,3 is not planar.
166 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

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: This proof is exactly like that of the previous theorem.

(1) |VG | − |EG | + |Fι | = 2 Euler Polyhedral Equation


(2) girth(G) · |Fι | ≤ 2 |EG | Edge-Face Inequality
(3) 4 |Fι | ≤ 2 |EG | G simple bipartite ⇒ 4 ≤ girth(G)
2 |EG |
(4) |Fι | ≤
4
2 |EG |
(5) |VG | − |EG | + ≥2 substitute (4) into (1)
4
|EG |
(6) |VG | − ≥2
2
|EG |
(7) ≤ |VG | − 2
2
(8) |EG | ≤ 2 |VG | − 4 ♦
Theorem 4.5.13: The complete bipartite graph K3,3 is non-planar.

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

Figure 4.5.12 The Kuratowski graphs.

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.13 K7 − E(K4 ) contains K3,3 .

Proposition 4.5.15: Planarity is invariant under subdivision.


Proof: Suppose that G is a planar graph and that graph H is homeomorphic to G. Then,
in a planar drawing of G, smooth whatever vertices are needed and subdivide whatever
edges are needed to transform G into H. These operations simultaneously transform the
planar drawing of G into a planar drawing of H. ♦
Proposition 4.5.16: Suppose that a graph G contains a subgraph H that is homeomorphic
to a non-planar graph. Then G is non-planar.
Proof: This follows immediately from the preceding theorem and proposition. ♦
As important as the non-planarity inequalities of Theorem 4.5.9 and Theorem 4.5.12
may be, they provide only one-sided tests. That is, if a graph has too many edges according
to either theorem, then it is non-planar; however, not having too many edges does not imply
that the graph is planar. The usual ways to prove planarity are to exhibit a planar drawing
or to apply a planarity algorithm, as in §7.6.
Heuristic 4.5.17: To construct a non-planar, non-bipartite graph with a specified number
of vertices and edges, start with a Kuratowski graph and add vertices, add edges, and
subdivide edges.
Example 4.5.9: To construct an 8-vertex non-planar, non-bipartite graph with at most 13
edges, simply subdivide K5 or K3,3, as shown in Figure 4.5.14. Observe that the two graphs
resulting from these subdivisions have too few edges to make a conclusive application of the
numerical non-planarity formulas.

Figure 4.5.14 Two graphs with too few edges for the non-planarity formula.
168 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

EXERCISES for Section 4.5

G1 G2 G3 G4

Figure 4.5.15 Four graphs.

4.5.1 Do the following for the given graph in Figure 4.5.15:


i. redraw the given graph;
ii. write the face-size into each region;
iii. show that the sum of the face sizes equals twice the number of edges.

(a) G1 (b) G2 (c) G3 (d) G4

4.5.2 Do the following for the given graph in Figure 4.5.15:


i. calculate the girth of the graph;
ii. show that the product of the girth and the number of faces is less than or equal to
twice the number of edges.

(a) G1 (b) G2 (c) G3 (d) 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.

(a) G1 (b) G2 (c) G3 (d) G4

4.5.4 Draw the Poincaré dual of the given planar graph imbedding in Figure 4.5.15:.

(a) G1 (b) G2 (c) G3 (d) G4

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.

(a) G1 (b) G2 (c) G3 (d) G4


Section 4.5 Algebraic Tests for Planarity 169

definition: A graph G is self-dual in the sphere if there is an imbedding of G such that


the Poincaré dual graph G∗ for that imbedding is isomorphic to G.

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.7 Prove that the given graph is non-planar.


(a) K8 − 4K2 (b) K3,6 − 3K2 (c) K8 − 2C4
(d) K8 − K3,3 (e) K2 + Q3 (f) K6,6 − C12

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

4.6 PLANARITY ALGORITHM


Several good planarity algorithms have been developed. The planarity algorithm de-
scribed here (from [DeMaPe64]) has been chosen for simplicity of concept and of imple-
mentability. It starts by drawing a cycle, and adds to it until the drawing is completed or
until further additions would force an edge-crossing in the drawing. This section first gives
a prose description of this algorithm, then pseudo-code for the algorithm.

Blocked and Forced Appendages of a Subgraph


The body of the main loop of the planarity algorithm attempts to extend a subgraph
already drawn in the plane by choosing a plausible appendage of that subgraph to be used
to augment the drawing.
definition: Let H be a subgraph of a graph. In a planar drawing of H, an appendage of
H is undrawable in region R if the boundary of region R does not contain all the contact
points of that appendage.
definition: Let H be a subgraph of a graph. In a planar drawing of H, an appendage of
H is blocked if that appendage is undrawable in every region.
Example 4.6.1: In Figure 4.6.1, 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 blocked, because no region boundary contains all three contact points.

Figure 4.6.1 A subgraph with a blocked appendage.

Proposition 4.6.1: Let ι : H → S0 be a planar drawing of a subgraph H of a graph G,


such that H has a blocked appendage B. Then it is impossible to extend ι : H → S0 to a
planar drawing of G.

Proof: Let u be a contact point in B, and let e be an edge in B incident on u. In any


extension of ι : H → S0 to a planar drawing of G, e must be drawn in some region R whose
boundary contains u. Since B is a blocked appendage, it contains a contact point v that
does not lie on the boundary of R and an edge e0 incident on v. It follows that e0 must be
drawn in a different region than R. Also, there is a walk W in B containing edges e and e0 ,
such that no internal vertex of W is in H. Since e and e0 lie in different regions, that walk
must cross some edge on the boundary of R, by the Jordan Curve Theorem.

definition: Let H be a subgraph of a graph. In a drawing of H on any surface, an ap-
pendage of H is forced into region R if R is the only region whose boundary contains all
the contact points of that appendage.
Section 4.6 Planarity Algorithm 171

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.

Figure 4.6.2 A subgraph with a forced appendage.

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 .

Selecting the Next Path Addition


Before each iteration of the body of the main loop, there is a two-part exit test. One
exit condition is that the entire graph is already drawn in the plane, in which case it is
decided, of course, that the graph is planar. The other exit condition is that some appendage
of subgraph Gj is blocked. If so, then graph G is declared non-planar and the algorithm
terminates. If neither exit is taken, then there are two possible cases of appendage selection.
In the main loop, graph Gj+1 is obtained from graph Gj by choosing an appendage of
Gj and adding a path joining two contact points of that appendage to the planar drawing
of Gj . The main technical concern is that of choosing an appropriate appendage at each
iteration.
In the first case, it is determined that some appendage is forced. If so, then a path
between two of its contact points is drawn into the one region whose boundary contains all
contact points of that forced appendage, thereby extending the drawing of Gj to a drawing
of Gj+1 .
In the second case, there are no forced appendages. Under this circumstance, an arbi-
trary appendage is chosen, and a path between two of its contact points is drawn into any
region whose boundary contains all contact points of that appendage, thereby extending
the drawing of Gj to a drawing of Gj+1 .
After extension to a drawing of Gj+1 , the loop returns to the two-fold exit test and
possibly continues with the next attempt at extending the drawing.
172 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

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.

Algorithm 4.6.1: Planarity-Testing for a 2-Connected Graph


Input: a 2-connected graph G
Output: a planar drawing of G, or the decision FALSE.
{Initialize} Find an arbitrary cycle G0 in G, and draw it in the plane.
While Gj = 6 G {this exit implies that G is planar}
If any appendage is blocked
return FALSE
Else
If some appendage is forced
B := that appendage
Else
B := any appendage whatsoever
R := any region whose boundary contains all contact points of B
Select any path between two contact points of B
Draw that path into region R to obtain Gj+1
Continue with next iteration of while-loop
{End of while-loop body}
Return (planar drawing of G)

Outline of Correctness of Planarity Algorithm


To establish the correctness of this algorithm, there is a two-step proof that when no
appendage is forced, the particular choice of an appendage to extend the subgraph Gj and
a region in which to draw it does not affect the eventual decision of the algorithm. The
first step is to identify a configuration under which there is an appendage A with no forced
choice between two regions R and R0 , as illustrated in Figure 4.6.3.

R'

A
R

Figure 4.6.3 Appendage A has option of region R or region R0 .

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

EXERCISES for Section 4.6


4.6.1 Apply Algorithm 4.6.1 to the designated graph.

(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

4.6.2 [Computer Project] Implement Algorithm 4.6.1 on a computer.

4.7 CROSSING NUMBERS AND THICKNESS


Two quantifications of the non-planarity of a graph involve only the plane, without going
to higher-order surfaces. One is to determine the minimum number of edge-crossings needed
in a drawing of that graph in the plane. the other partitions the edge-set of a graph into
“layers” of planar subgraphs and establishes the minimum number of layers needed.

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.

Proposition 4.7.1: cr(K5 ) = 1.

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. ♦

Figure 4.7.1 A drawing of K5 in the plane with only one crossing.


174 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

Proposition 4.7.2: cr(K3,3 ) = 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.

Lower Bounds for Crossing Numbers


The main interest in crossing numbers of graphs is for cases in which the minimum
number is more than 1.

Theorem 4.7.3: Let G be a connected simple graph. Then

cr(G) ≥ |EG | − 3 |VG | + 6

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. ♦

Proposition 4.7.4: cr(K6 ) = 3.

Proof: Since |E(K6 )| = 15 and |V (K6 )| = 6, Theorem 4.7.3 implies that

cr(K6 ) ≥ 15 − 3 · 6 + 6 = 3

The drawing of K6 in Figure 4.7.3 with three crossings establishes that cr(K6 ) ≤ 3. ♦

Figure 4.7.3 A drawing of K6 in the plane with three crossings.


Section 4.7 Crossing Numbers and Thickness 175

Theorem 4.7.5: Let G be a connected simple bipartite graph. Then

cr(G) ≥ |EG | − 2 |VG | + 4

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.

Proof: Since |E(K3,4 )| = 12 and |V (K3,4 )| = 7, Theorem 4.7.5 implies that

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. ♦

Figure 4.7.4 A drawing of K3,4 in the plane with two crossings.

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.

Figure 4.7.5 A drawing of K3,4 in the plane with one triple-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

Figure 4.7.6 Two planar spanning subgraphs of K8 .

Theorem 4.7.7: Let G be a connected simple graph. Then


 
|EG |
θ(G) ≥
3 |VG | − 6

Proof: By Theorem 4.5.9, at most 3 |VG | − 6 edges lie in a planar subgraph of G. ♦


Proposition 4.7.8: θ(K8 ) = 2.

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

Proof: By Theorem 4.5.12, at most 2 |VG | − 4 edges lie in a planar subgraph of G. ♦

Straight-Line Drawings of Graphs


In circuit design (either single-layer or multi-layer), it is convenient for wires to be
straight-line segments, rather than having curves or bends.
definition: A straight-line drawing of a graph is a planar drawing in which every edge
is represented by a straight-line segment.
Wagner [Wa36] and Fary [Fa48] proved the following result, which is known as Fary’s
theorem. Thomassen [Th80, Th81] developed a proof of Kuratowski’s theorem that simul-
taneously yields Fary’s theorem.
Theorem 4.7.10: Let G be a simple planar graph. Then G has a straight-line drawing
without crossings. ♦
Section 4.7 Crossing Numbers and Thickness 177

EXERCISES for Section 4.7


4.7.1 Derive this lower bound for the crossing number of the complete graph Kn .
 
(n − 3)(n − 4)
cr(Kn ) ≥
2

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) .

4.7.7 Prove that θ(K6,6 ) = 2.


4.7.8 Prove that θ(K9 ) = 3.

Application 4.7.1, continued: A straightforward approach to multi-layer circuit design


is to use “simultaneous straight-line drawings” of the spanning subgraphs that induce the
edge-set partition. This means that the nodes in each layer are in a fixed location in the
plane, so that each layer is given a straight-line drawing. Figure 4.7.7 shows a two-layer
partition of the complete graph K5 by simultaneous straight-line drawings.

Figure 4.7.7 Two-layer straight-line partition of K5 .

4.7.9 Partition K6 into two simultaneous straight-line layers.

4.7.10 Partition K4,4 into two simultaneous straight-line layers.


4.7.11 Partition K8 − K4 into three simultaneous straight-line layers.
4.7.12 Partition K8 into four simultaneous straight-line layers.
178 Chapter 4 PLANARITY AND KURATOWSKI’S THEOREM

4.8 SUPPLEMENTARY EXERCISES


4.8.1 Consider a plane drawing of an n-vertex simple graph G with fewer than 3n − 6 edges.
a) Use the Euler Polyhedral Equation and the Edge-Face Inequality to prove that there
exists a face f with more than 3 sides.
b) Use the Jordan Curve Theorem to prove that there are two non-consecutive vertices
on the boundary of face f that are not adjacent in graph G.
4.8.2 Draw a self-dual imbedding of a planar simple graph with degree sequence
h4, 4, 4, 3, 3, 3, 3i.
4.8.3 Draw a non-self-dual imbedding of a planar simple graph with degree sequence
h4, 4, 4, 3, 3, 3, 3i.
4.8.4 A connected graph G with p vertices and q edges is imbedded in the sphere. Its dual
is drawn. The dual vertex in each primal face is joined to every vertex on the face boundary,
and every crossing of a primal and dual edge is converted into a new vertex, so that the
result is a graph G# imbedded in the sphere.
a) How many vertices and edges does G# have?
b) For G = C3 , draw the edge-complement of G# .
4.8.5 Draw a 4-regular simple 9-vertex planar graph.
4.8.6 Suppose that a simple graph has degree sequence h5, 5, 5, 5, 5, 5, 4, 4i. Prove that it
cannot be planar.
4.8.7 Prove that every simple planar graph with at least four vertices has at least four
vertices of degree less than 6.
4.8.8 Can a 3-connected simple graph of girth 3 be drawn in the plane so that every face
has at least four sides? Either give an example or prove it is impossible.
4.8.9 Prove that the Petersen graph has no 3-cycles or 4-cycles. Then use the Euler Polyhe-
dral Equation and the Edge-Face Inequality to show that the Petersen graph is non-planar.
4.8.10 Let H be a 4-regular simple graph, and let G be the graph obtained by joining H
to K1 . Decide whether G can be planar. Either give an example or prove impossibility.
4.8.11 Draw each of the four isomorphism types of a simple 6-vertex graph that contains
K5 homeomorphically, but does not contain K3,3 .
4.8.12 a. Draw a 9-vertex tree T such that K2 + T is planar.
b. Prove that there is only one such tree.
4.8.13 Decide whether the following graphs contain a homeomorphic copy of K3,3 , of K5 ,
of both, or of neither.

A
B
4.8 Supplementary Exercises 179

4.8.14 Decide which of the graphs below are planar.

A B C

4.8.15 Decide which of the graphs below are planar.

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

4.8.17 Decide which of the graphs below are planar.

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

4.8.20 Redraw the following graph with only two crossings.

4.8.21 Calculate the crossing number of the following graph.

4.8.22 Calculate the crossing number of K6 − K2 .


4.8.23 In a planar drawing of K6 − K2 , in which (as usual) at most two edges cross at
a point, what is the minimum number of edges that must cross at least one other edge?
(Hint: be careful; for K3,3 , the answer is two – not one, since two edges cross at the single
crossing.)
4.8.24 Suppose that a triple edge-crossing were permitted. Prove that even then, it would
still be impossible to draw K6 − K2 in the plane with only one crossing. (Hint: the graph
obtained by inserting a new vertex at the triple-intersection point would have to be planar.)
4.8.25 Prove that θ(Kn ) ≥ n+7
 
6 .
4.8.26 Calculate θ(K12 ).

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.

—, undrawable for region R: for a subgraph H drawn on a surface, an appendage B such


that the boundary of region R does not contain all the contact points of B.
Glossary 181

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.

imbedding of a graph G on a surface S: a drawing without any edge-crossings.


Jordan separation property: for a Euclidean set X, the property that every closed curve
in X separates X.
Kuratowski graphs: the complete graph K5 and the complete bipartite graph K3,3 .

Kuratowski subgraph of a graph: a subgraph homeomorphic either to K5 or K3,3 .


longitude on the standard torus: a closed curve that bounds a disk in the space exte-
rior to the solid donut (and goes around in the “long” direction).
meridian on the standard torus: a closed curve that bounds a disk inside the solid
donut it surrounds (and goes around the donut in the “short” direction).
monogon: a 1-sided region.
path from s to t in a Euclidean set: the image of a continuous function f from the unit
interval [0, 1] to a subset of that space such that such that f (0) = s and f (1) = t, that
is a bijection on the interior of [0, 1]. (One may visualize a path as the trace of a particle
traveling through space for a fixed length of time.)
—, closed: a path such that f (0) = f (1), i.e., in which s = t. (For instance, this would
include a “knotted circle” in space.)
—, open: a path such that f (0) 6= f (1), i.e., in which s 6= t.

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.

Poincaré dual: see dual graph imbedding.


primal graph and primal imbedding: whatever graph and imbedding are supplied as
input to the Poincaré duality process.
primal vertices, primal edges, and primal faces: the vertices, edges, and faces of the
primal graph and primal imbedding.
proper walk: a walk in which no edge occurs immediately after itself.
region of a graph imbedding ι : G → S: a component of the Euclidean set S → ι(G)
which does not contain its boundary.
Glossary 183

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.

separated Euclidean set: see Euclidean set.


size of a face: see face-size.
smoothing out a 2-valent vertex v: replacing two different edges that meet at v by a
new edge that joins their other endpoints.

sphere: a set of points in R3 equidistant from a fixed point.


standard donut: the surface of revolution obtained by revolving a disk of radius 1 centered
at (2,0) in the xy-plane around the y-axis in 3-space.
standard torus: the surface of revolution obtained by revolving a circle of radius 1 cen-
tered at (2, 0) in the xy-plane around the y-axis in 3-space. It is the surface of the
standard donut.
straight-line drawing of a graph: a planar drawing in which every edge is represented by
a straight-line segment.
subdividing an edge e: with endpoints u and v:] replacing that edge e by a path
u, e0 , w, e00 , v, where edges e0 and e00 and vertex w are new to the graph.
subdividing a graph: performing a sequence of edge-subdivision operations.
thickness θ(G) of a simple graph G: the smallest cardinality of a set of planar spanning
subgraphs of G whose edge-sets partition EG .
Chapter 5

DRAWING GRAPHS AND MAPS

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

5.1 TOPOLOGY OF LOW DIMENSIONS


The formal definition of a drawing as a continuous function depends on a spatial model
for a graph (the domain) and a spatial model for a surface (the codomain), in which the
edges of a graph have length, just as they do in drawings. Surfaces are defined intrinsically,
starting here and continuing into §5.2, with the aid of topological equivalence, and they need
not be attached to some solid that they bound.

Some Subsets of Euclidean 2-Space and 3-Space


definition: Euclidean n-space Rn is the set of n-tuples (x1 , . . . , xn ) with the usual
Euclidean distance metric
p
δ((x1 , . . . , xn ), (y1 , . . . , yn )) = (x1 − y1 )2 + · · · + (xn − yn )2

definition: A Euclidean set is a subset of a Euclidean space.


definition: The plane is another name for Euclidean 2-space R2 . (This is consistent with
the definition in §4.1 of a plane in R3 .)
definition: The open unit disk is the plane Euclidean set containing the points
{(x1 , x2 ) | x21 + x22 < 1}, i.e., the points inside the unit circle.
definition: The closed unit disk is the plane Euclidean set containing the points,
{(x1 , x2 ) | x21 + x22 ≤ 1} i.e., the points inside and on the unit circle.
definition: The standard half-disk is the plane Euclidean set containing the points
{(x1 , x2 ) | x1 ≥ 0 and x21 + x22 < 1}.
Example 5.1.1: As illustrated in Figure 5.1.1, the open unit disk and the half-disk are
subsets of the closed unit disk. The half-disk contains the segment of its frontier that is an
open interval on the x2 -axis, but it does not contain the semi-circle that is its other frontier
segment in R2 .

Figure 5.1.1 An open disk, closed disk, and standard half-disk.

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.

Figure 5.1.2 The unit cylinder.


Section 5.1 Topology of Low Dimensions 187

Topological Equivalences of Euclidean Sets


Intuitively, a function from one Euclidean set to another is continuous if it always maps
“nearby” points of the domain to “nearby” points of the codomain. In theoretical calculus
and point-set topology, this can be expressed precisely with epsilons and deltas. It is possible
to gain an elementary grasp of graph placements on surfaces without a digression into the
technicalities of continuous functions.
definition: A continuous function f : X → Y between two Euclidean sets is called a
topological equivalence if it is one-to-one and onto, and if the inverse function f −1 :
Y → X is continuous.
Remark: Intuitively, a topological equivalence is a function that deforms its domain into
its codomain, without tearing the domain and without compressing any set of two or more
points down to a single point.
Example 5.1.2: The Riemann stereographic projection (see §4.1) is a topological equiva-
lence between a sphere minus its North Pole and the plane.

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.

Figure 5.1.3 Equivalence of a convex polygonal region to a unit disk.

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

Figure 5.1.4 Mapping a non-convex region to a convex region.

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.

Figure 5.1.5 The surfaces of these convex solids are spheres.

Topological Model of a Graph


To draw graphs on surfaces, except for simple graphs in the plane, we need a model of
an edge.
definition: A space curve between two points x and y in 3-space is the image of a
continuous function f : [0, 1] → R3 from the unit interval into 3-space such that f (0) = x
and f (1) = y, which is one-to-one, except that possibly x = y. That is, the space curve is
the set {f (t) | t ∈ [0, 1]}. The interior of the space curve is the subset {f (t) | t ∈ (0, 1)}.
definition: In a topological model (or carrier) of a graph G = (V, E), each vertex
v ∈ V is represented by a point pv in R3 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
interior of each space edge qe of the carrier is disjoint from all the other space edges and
also from all the space vertices. Except when confusion might result, the topological model
of a graph G is also denoted G.
The topological model of a graph is a rich source of topological and geometric intuition.
For instance, it immediately clarifies the distinction between the ends of an edge, which
means intuitively the two minute parts of the edge “near” its endpoints, and the endpoints
themselves, which are vertices.
definition: The 0-end of a space edge of a graph is the part near the image of the
0-end of the unit interval [0, 1] in the space curve.
definition: The 1-end of a space edge of a graph is the part near the image of the
1-end of the unit interval [0, 1] in the space curve.
Section 5.1 Topology of Low Dimensions 189

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.

EXERCISES for Section 5.1


5.1.1 Specify a function from the open unit interval (0, 1) to the entire real line that is a
topological equivalence.
5.1.2 Specify a function from the annulus {(x, y) | 1 ≤ x2 + y 2 ≤ 2} to the unit cylinder
that is a topological equivalence.
5.1.3 How many topologically inequivalent Euclidean sets can be formed by identifying a
single point of an open interval to a point in an open disk?
5.1.4 Four different Euclidean sets (i.e., topologically inequivalent) can be formed by iden-
tifying a single point of an closed real interval to a point of a closed disk. Describe them.
190 Chapter 5 DRAWING GRAPHS AND MAPS

5.2 HIGHER-ORDER SURFACES


Topology generalizes the concept of a surface, from the most elementary meaning, in
which it surrounds some solid, to a more powerful meaning, in which it need not enclose
anything.
definition: An open -neighborhood of a point in a Euclidean set is the set of all points
whose distance from that point is less than , where  > 0.
definition: A surface is a Euclidean set in which every point has an -neighborhood that
is topologically equivalent either to the open unit disk or to the standard half-disk.

Torus and Möbius Band


One possible kind of complication in a surface is apparent in the torus, and another kind
is apparent in the Möbius band. Interestingly, these two kinds of complication are the only
kinds of complication.
review from §4.1: The standard torus is the surface of revolution obtained by revolving
a circle of radius 1 centered at (2, 0) in the xy-plane around the y-axis in 3-space.
definition: A torus is any Euclidean set that is topologically equivalent to the standard
torus.
Example 5.2.1: The surface of a knotted solid donut is a torus (as in Figure 5.2.1).

Figure 5.2.1 A knotted donut in 3-space.

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.

Figure 5.2.2 Folding a rectangle into a torus.

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.

Figure 5.2.3 A rectangular strip with a half-twist.

ends pasted together

Figure 5.2.4 A Möbius band.

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

Figure 5.2.5 A Möbius band.

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.

Bounded and Boundaryless Surfaces


definition: An interior point of a surface is a point that has an -neighborhood topo-
logically equivalent to an open disk.
definition: A boundary point of a surface is a point that is not an interior point.
definition: A surface is boundaryless if every point is an interior point.
192 Chapter 5 DRAWING GRAPHS AND MAPS

Example 5.2.2: The Euclidean plane is a boundaryless surface.

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.

Example 5.2.6: The Möbius band is not a boundaryless surface.

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.

(ii) The surface is boundaryless.


(iii) The endpoints of every open arc in S are in surface S itself.
Example 5.2.7: The sphere and the torus are closed surfaces.

Example 5.2.8: The plane is not closed, because it is not 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

Figure 5.2.6 The sequence of closed orientable surfaces.

Theorem 5.2.2: [Classification of Closed Orientable Surfaces ] Every closed ori-


entable surface is topologically equivalent to exactly one of the surfaces in the infinite
sequence S0 , S1 , S2 , . . . ♦ (proof omitted here; see [GrTh87])

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

Figure 5.2.7 The sequence of closed non-orientable surfaces.


194 Chapter 5 DRAWING GRAPHS AND MAPS

Theorem 5.2.3: [Classification of Closed Non-Orientable Surfaces ] Every


closed non-orientable surface is topologically equivalent to exactly one of the surfaces in the
infinite sequence N1 , N2 , N3 , . . . ♦ (proof omitted here; see [GrTh87])

definition: The crosscap number (or non-orientable genus) of a closed non-


orientable surface is the subscript of the surface Nk to which it is topologically equivalent.
That is, it is the number of (disjoint) Möbius bands on the surface.

EXERCISES for Section 5.2


5.2.1 Give a reason why the Euclidean set described is not a closed surface.
(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.2 Determine whether the Euclidean set described is a boundaryless surface.

(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

5.3 MATHEMATICAL MODEL FOR DRAWING GRAPHS


review from elementary set theory: The image of a point or subset of the domain
of a function is the point or subset in the codomain onto which it is mapped.
review from §4.1:
• A path from s to t in a Euclidean set X is the image of a continuous function f
from the unit interval [0, 1] into X such that f (0) = s, f (1) = t, and either
– f is one-to-one, or
– the restriction of f to [0, 1) is one-to-one and s = t.
In the first case, the path is an open path, and in the second, it is a closed path.
• An open path from s to t in a Euclidean set X is the image of a continuous one-
to-one function f from the unit interval [0, 1] into X such that f (0) = s and f (1) = t.
• A closed path from s to s in a Euclidean set X is the image of a continuous function
f from the unit interval [0, 1] to a subset of X such that the restriction of f to [0, 1)
is one-to-one and f (0) = f (1) = s.
One may visualize a path as the trace of a particle traveling through space for a fixed length
of time.
terminology note: A singularity of a continuous function is a point of the image where
the function is not one-to-one. We use the term “singularity” for a drawing of a graph on a
surface when different “points” on a graph get identified with the same point on the surface.
Designing a mathematical model of a drawing of a graph on a surface starts by repre-
senting each vertex as a point on the surface and representing each edge as an open path
in the surface between the images of its endpoints.
definition: A drawing of a graph G = (V, E) on a surface S is the union of a set of
points of S, one for each vertex of G; a set of open paths, one for each proper edge of G;
and a set of closed paths, one for each self-loop of G. Each path corresponding to an edge
joining the images of the endpoints of that edge. That is, there is a one-to-one function
p : V → S; and for each edge e ∈ E, a path qe connecting the endpoints of e (open if e is
proper and closed
S if e is a self-loop) with no interior points in p(V ). The drawing of G on
S is the union e∈E qe .
Three types of forbidden singularities that occasionally occur in representations of
graphs on surfaces are illustrated in Figure 5.3.1 but are otherwise absent from this book.
(i) Two vertex images p(u) and p(v) are equal.
(ii) An edge image qe has a self-intersection or other singularities.
(iii) The interior of an edge image intersects a vertex image.

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

definition: An edge-crossing in a graph drawing is a singularity such that the images


of two different edges meet at interior points of the edges.

Normalized Drawings and Imbeddings


definition: An abnormality in a drawing of a graph on a surface is any of these three
types of singularities:

(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.

(i) (ii) (iii)


Figure 5.3.2 Remedies for the three types of abnormalities in drawings.

definition: A normal drawing of a graph on a surface is a drawing that is free of all


three types of abnormalities.
Unless explicitly specified otherwise in context, it is assumed throughout this book that a
drawing is normalized. (We occasionally relax rule (iii).)
definition: An imbedding of a graph G on a surface S is a drawing with no edge-
crossings at all; that is, it is the image of a topological equivalence ι : G → S from the
topological model of G to a subset of S.
terminology note: More generally, an imbedding is a one-to-one function from one topo-
logical space to another, for instance, between arbitrary Euclidean sets. In this sense, the
standard torus is imbedded in R3 .
terminology note: One usually speaks of the image of a function f : X → Y as lying in
the codomain Y . However, in view of the notion that one draws on a surface, it is natural
when the codomain Y is a surface to speak of the image as lying on the surface. This is not
a rigid rule, and indeed, some inconsistency of usage from paragraph to paragraph is not
unusual.
Section 5.3 Mathematical Model for Drawing Graphs 197

Eliminating Edge-Crossings
Frequently, it is desirable to keep the number of edge-crossings to a minimum, which
may involve some redrawing.

Example 5.3.1: Sometimes a drawing of a graph can be changed into an imbedding by


rerouting the image of one or more edges to different positions. For instance, in Figure 5.3.3,
a drawing of the complete graph K4 with one edge-crossing is changed into an imbedding
by moving the image of edge e.

Figure 5.3.3 Eliminating an edge-crossing by moving the image of an edge.

Example 5.3.2: Adding a handle to a surface is another way to eliminate an edge-crossing


from a drawing of a given graph, as illustrated in Figure 5.3.4. The handle is added from
one side of edge e to the other, and then the image of edge d is rerouted so that it lies on
the new handle, instead of crossing edge e. Of course, the handle-adding operation changes
the surface on which the graph is drawn.
e
e
d d

Figure 5.3.4 Eliminating an edge-crossing by adding a handle.

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.

EXERCISES for Section 5.3


5.3.1 Show how to remove the abnormality from the drawing.

(a) (b) (c)

(d) (e) (f)


198 Chapter 5 DRAWING GRAPHS AND MAPS

5.4 REGULAR MAPS ON A SPHERE


The difference between imbedding and map is largely nuance. The notation G → S is the
same. When one discusses the imbeddings of a graph G, the graph is fixed and the surface
S may vary. When one discusses the maps on a surface S, the graph G may vary and the
surface is fixed. Whereas the imbedding theory of a given graph studies all the various ways
that graph can be imbedded in its range of possible closed surfaces, the map theory of a
given surface, by way of contrast, studies all the various graphs that can be imbedded on
that surface and all the ways they can be imbedded.

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

Figure 5.4.2 Two regular simple maps on the sphere.


Remark: These definitions of regular and simple also apply to maps on surfaces other than
the sphere.
Proposition 5.4.1: A map ι : G → S is regular if and only if graph G is regular, and
every face has the same number of sides.

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.

Degrees and Face-Sizes of Regular Maps


The following straightforward application of the numerical relations in the previous
section yields an upper bound on the average degree δavg (G) of a graph G that can be
imbedded on the sphere.
Theorem 5.4.2: Let ι : G → S0 be an imbedding of a simple graph on the sphere. Then
δavg (G) < 6.

Proof: Since G = (V, E) is simple, 2|E| 12


|V | ≤ 6− |V | , by Theorem 4.5.9. Therefore, by Theorem
1.1.2,
1 X 2|E| 12
δavg (G) = deg(v) = ≤6− <6
|V | |V | |V | ♦
v∈V

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: Apply Corollary 5.4.3 to the dual map. ♦


200 Chapter 5 DRAWING GRAPHS AND MAPS

Construction of the Regular Simple Maps


In view of Corollaries 5.4.3 and 5.4.4, a regular simple map on the sphere must have
constant degree 3, 4, or 5 and constant face-size 3, 4, or 5. That seems to permit nine
combinations. Theorem 5.4.5 provides further information, based on the numerical relations.
Theorem 5.4.5: If a regular map on the sphere has d and r for its constant degree and
constant face-size, respectively, then
4r 2dr 4d
|V | = |E| = |F | =
2(d + r) − dr 2(d + r) − dr 2(d + r) − dr

Proof: Solving the following three linear equations for the “unknowns” |V |, |E|, and |F |
in terms of d and r yields the result.

|V | − |E| + |F | = 2 Euler polyhedral equation, (Theorem 4.5.7)


2|E| = r|F | face-size equation, (Theorem 4.5.2)
2|E| = d|V | degree-sum equation, (Theorem 1.1.2)

The following table gives the numbers of vertices, edges, and faces that would correspond
to each of the nine possible combinations of degree d and face-size r in a regular simple map
on the sphere. The common denominator in the conclusion of Theorem 5.4.5 is denoted
Y . In the rightmost column, the table names the polyhedron whose 1-skeleton and surface
realize the map if it exists.

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

definition: A platonic solid is a geometrically regular 3-dimensional polyhedron. Geo-


metrically regular means here that its 1-skeleton is a regular graph and also that each of
the faces is geometrically a regular polygon.
definition: A platonic graph is the 1-skeleton of a platonic solid.
definition: A platonic map is the imbedding of the 1-skeleton of a platonic solid into
its surface.
Section 5.4 Regular Maps on a Sphere 201

Example 5.4.4: The five platonic solids, graphs, and maps are illustrated in Figure 5.4.3.

Tetrahedron Cube Octahedron

Dodecahedron Icosahedron

Figure 5.4.3 The five platonic graphs.

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.

EXERCISES for Section 5.4


5.4.1 Draw a regular map of a possibly non-simple graph on the sphere that conforms to
the given description.
(a) Regular of degree 1.
(b) Regular of degree 2 with face-size 4.
(c) Regular of degree 4 with face-size 2.
(d) Regular of degree 2 with face-size 3.

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

5.5 IMBEDDINGS ON HIGHER-ORDER SURFACES


In Section 5.2, the torus was represented as a rectangle. Similarly, other higher-order
surfaces can be flattened by cutting the surface open along a few strategic closed curves.
Some algebraic relations derived in Chapter 4 for drawings on the sphere, including the
Euler Polyhedral Equation, can be generalized to drawings on higher-order surfaces.

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)

Figure 5.5.1 Two non-cellular imbeddings on the torus.

Any non-cellular imbedding of a graph on a closed surface can be obtained by adding


handles and crosscaps to a cellular imbedding. Largely for this reason, we concentrate on
cellular imbeddings of graphs. For instance, the non-cellular imbedding in Figure 5.5.1(a)
could be obtained by adding a handle to one region of a cellular imbedding of the bouquet
B1 in the sphere as shown in Figure 5.5.2(a). Moreover, the non-cellular imbedding in Figure
5.5.1(b) could be obtained from a cellular imbedding of the bouquet B2 on the sphere by
adding a handle joining the digon to one of the monogons as shown in 5.5.2(b).
Proposition 5.5.1: The boundary of a face f of a connected graph G imbedded on the
sphere is connected.

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)

Figure 5.5.2 Two non-cellular imbeddings on the torus.

Proposition 5.5.2: Every imbedding of a connected graph on the sphere is a cellular


imbedding.

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.

Flat Polygon Drawings


definition: A flat polygon representation of a surface S is a drawing of a polygon
with markings to match its sides in pairs, such that when the sides are pasted together as
the markings indicate, the resulting surface obtained is topologically equivalent to S.
204 Chapter 5 DRAWING GRAPHS AND MAPS

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.

Figure 5.5.4 Representing a torus as 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

Figure 5.5.5 Representing a double torus as an octagon.

Similarly, every non-orientable surface Nk can be represented as a flat polygon with 2k


sides (for further details, see [Ma67]). As one traverses the boundary of the polygon, each
crosscap is represented by a sequence of two sides marked with the pasting pattern ss.
Figure 5.5.6 shows a representation of the surface N3 as a hexagon.
a

c a

b
c N3
b

Figure 5.5.6 Representing the surface N3 as a hexagon.


Section 5.5 Imbeddings on Higher-Order Surfaces 205

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

Figure 5.5.7 Toroidal imbedding of K3,3 .

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'

Figure 5.5.9 Joining the fifth white vertex.

Euler Polyhedral Equations for All Closed Surfaces


We observe that the
X
Face-Size Equation: 2 |EG | = size(f )
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.

Figure 5.5.10 Thickening a meridian and subsequent surgery.

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

Figure 5.5.11 An imbedding K6 → N2 with nine regions.


208 Chapter 5 DRAWING GRAPHS AND MAPS

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.

Average Degree and General Surfaces


The following generalization of Theorem 5.4.2 is often useful in proving that a given
graph cannot be imbedded in some given surface.
Theorem 5.5.6: Let ι : G → S be an imbedding of a simple graph G on a surface S of
Euler characteristic χ(S). Then δavg (G) ≤ 6 − 6·χ(S)
|V | .

Proof: Since the girth of a simple graph is at least 3,

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 |

Therefore, by Theorem 1.1.2,

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 .

Example 5.5.9: The average degree of C4 + C5 is 6 94 , and χ(N2 ) = 0. Theorem 5.5.6


implies that C4 + C5 cannot be imbedded in N2 .

EXERCISES for Section 5.5


5.5.1 Draw the given graph on a flat polygon representation of the torus.
(a) Q3 + K1 (b) ML3 + K1 (c) K6

(d) K4,4 (e) K7 (f) K8 − 4K2

(g) K8 − (K3 ∪ K2 ) (h) K8 − 2P3 (i) K9 − C9

(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

5.5.4 Draw a regular map of the designated graph on the torus.

5.5.5 B2 5.5.6 B3 5.5.7 C3 × C3 5.5.8 K3,3

5.5.9 K5 5.5.10 K7 5.5.11 K6 − 3K2 5.5.12 Q4

5.5.13 Prove that C4 + C4 cannot be imbedded in N1 .


5.5.14 Prove that K9 − 4K2 cannot be imbedded in S1 or in N2 .
5.5.15 Prove that K19 cannot be imbedded in S19 .

5.6 GEOMETRIC DRAWINGS OF GRAPHS


Geometric drawing of graphs is a topic studied in computational geometry. Unlike topo-
logical graph drawings, geometric graph drawings are concerned with exact coordinates of
the images of the vertices and edges of a graph, with lengths and areas, and with the angles
formed in the drawings. Computer drawings are geometric drawings. Interest in geometric
graphs is motivated in part by their many applications, which include computer graphics,
pattern recognition, and communication networks. The intent, of this brief, optional section
is to introduce some types of geometric drawings, some properties of graph drawings, and
some categories of problems involving geometric graph drawings.†
Geometric graph drawings avoid all three types of forbidden singularities. However, they
need not be normal drawings. (See §5.3.)

Some Types of Geometric Graph Drawings


Polyline drawings are piecewise-linear approximations of graph drawings with curved
edges. The choice of polyline or straight-line drawings depends on the application.
definition: In a straight-line drawing of a graph, each edge is a single line segment.
definition: In a polyline drawing of a graph in a plane, each edge is a chain of line
segments (see Figure 5.6.1(a)).

definition: A bend in a polyline drawing is a point where two segments belonging to


the same edge meet.
definition: A grid drawing is a polyline drawing such that the vertices, crossings, and
bends all have integer coordinates.

† No subsequent sections depend on this section.


210 Chapter 5 DRAWING GRAPHS AND MAPS

definition: In an orthogonal drawing of a graph in the plane, each edge is a chain of


horizontal and vertical segments (see Figure 5.6.1(b) below).

(a) (b)

Figure 5.6.1 Two drawings of K5 : (a) general polyline; (b) orthogonal grid.

Some Properties of Graph Drawings


It is desirable to optimize various geometric properties of a graph, for instance, for the
sake of miniaturization on a chip or of appearance on a video screen. One typically seeks to
maximize the angular resolution and to minimize the other measures.
definition: The area of a geometric drawing is usually the area either of its convex
hull or of the smallest rectangle with vertical and horizontal sides that covers the drawing.
definition: A resolution rule for a drawing is a constraint that prevents it from being
arbitrarily scaled down, for instance, a minimum unit distance between vertices.
definition: The aspect ratio of a drawing is the ratio of the length of the longer side
to the shorter side of the smallest rectangle covering the drawing.
definition: The angular resolution of a polyline drawing is 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.
definition: The total edge-length of a drawing is the sum of the lengths of its edges.

Minimizing Total Edge Length


definition: A (geometric) spanning tree for a set S of points in Rn is a drawing of
a tree that has S as its vertex-set.
definition: A (geometric) minimum spanning tree for a set of points in Rn is a
geometric spanning tree that minimizes the total edge length. (This is provably a straight-
line drawing.)
definition: The Euclidean MST problem is to produce a geometric minimum spanning
tree for a set of points in Rn (as in Figure 5.6.2), that is, to determine the pairs of points
that are endpoints of the edges of the minimum spanning tree.
Section 5.6 Geometric Drawings of Graphs 211

Figure 5.6.2 Find the Euclidean minimum spanning tree.

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.

Figure 5.6.3 Triangulation of a geometric set.

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.

Figure 5.6.4 Shrinking a grid drawing.


212 Chapter 5 DRAWING GRAPHS AND MAPS

Example 5.6.2: Figure 5.6.5 shows three orthogonal grid drawings of K5 , progressively
reduced in area.

Figure 5.6.5 Shrinking an orthogonal grid drawing.

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

Figure 5.6.6 Two orthogonal drawings of circ(7 : 2, 3).

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]).

Voronoi Diagrams and Delaunay Triangulations


Voronoi diagrams and Delaunay triangulations can be used to construct geometric min-
imum spanning trees.
Section 5.6 Geometric Drawings of Graphs 213

definition: An n-dimensional convex polytope is the intersection of a finite number of


half-spaces
{(x1 , . . . , xn ) | a1 x1 + · · · + an xn ≥ b}
It may be finite or infinite.
definition: The Voronoi diagram for a set S = {p1 , . . . , pn } of points in Rn is 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.
definition: The Delaunay graph for a set S = {p1 , . . . , pn } of points in the plane has
the set S as its vertices. 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.

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.

Figure 5.6.7 Voronoi diagram and Delaunay graph.

definition: A Delaunay triangulation of a point set P in R2 is a straight-line triangu-


lation 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 .
definition: A graph is Delaunay drawable if it admits a drawing that is a Delaunay
triangulation.
Remark: The Voronoi diagram of a point set can be constructed in O(n log n)-time and
used in an O(n log n)-time algorithm to construct the geometric minimum spanning tree of
the set. (See [Ch00].)
Remark: Finding a complete combinatorial characterization of Delaunay drawable graphs
is an open problem. (See [LiTa04].)
Remark: For a set of points in R2 , knowing the locations of the endpoints permits a
solution in Ω(n log n) time, i.e., faster than Prim’s algorithm. (See [AgWe88].)
214 Chapter 5 DRAWING GRAPHS AND MAPS

5.7 SUPPLEMENTARY EXERCISES


5.7.1 Draw an imbedding of the Möbius ladder ML4 in the torus.
5.7.2 Consider the following specifications for a graph imbedding: three 3-sided faces and
four 4-sided faces. Either draw such an imbedding in the sphere or prove it is impossible.

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.5 Draw a self-dual map of C3 × C3 on the torus.


5.7.6 Either draw a self-dual imbedding of a regular simple graph in S2 or prove that such
an imbedding cannot exist. (Hint: Use the Euler Polyhedral Equation and self-duality to
determine the number of edges.)

definition: A 2-complex K = (VK , EK , RK ) is a generalization of a graph to a 2-


dimensional object. It consists of 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.

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}

It may be of finite size or of infinite measure.


convex set in Rn : a set S 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.
crosscap on a surface: a Möbius band that occurs as a subspace of that surface.
—, adding a: the operation on a surface of replacing a subspace that is homeomorphic
to a closed disk by a Möbius band.
crosscap number of a closed non-orientable surface: the subscript of the surface Nk
to which it is topologically equivalent, i.e., the number of Möbius bands on the surface.
Delaunay drawable graph: a graph that admits a drawing that is a Delaunay triangu-
lation.
216 Chapter 5 DRAWING GRAPHS AND MAPS

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

flat polygon representation of a surface S: a drawing of a polygon with markings to


match its sides in pairs, such that when the sides are pasted together as the markings
indicate, the resulting surface obtained is topologically equivalent to S.
forbidden types of singularities in a graph drawing: illustrated in §5.3 but are other-
wise absent from this book.

(i) Two vertex images p(u) and p(v) are equal.


(ii) An edge image qe has a self-intersection or other singularities.
(iii) The interior of an edge image intersects a vertex image.

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

mapping: a generic synonym for function.


minimum-weight drawable tree: a tree such that there exists a set S of points in R2
whose geometric minimum spanning tree is isomorphic to T .
Möbius band: the space formed from a rectangular strip with a half-twist, by identifying
the left edge to the right edge, to form a continuous band.
neighborhood of a point y in a Euclidean set X: a subset N of X that contains the set
{z ∈ X : |z − y| < epsilon}, for some positive number .
—, open -: the set of all points whose distance from y is less than , where  > 0.
non-orientable genus: a synonym for crosscap number.
non-orientable surface: a surface that contains a Möbius band.
non-orientable surfaces, classification sequence N1 , N2 , N3 , . . .: a recursively defined
sequence starting from the sphere, which in this context is denoted N0 , even though it
is orientable. The surface Nk+1 is obtained from the surface Nk by adding a crosscap.
normal drawing of a graph G in a surface S: a drawing such that (i) two different
edges cross at most once; (ii) tangent edge touchings are not permitted; and (iii) images
of three distinct edges never meet at the same point of the surface. It is usually assumed
in graph theory that a drawing is normalized.
open unit disk: the plane set {(x1 , x2 ) | x21 + x22 < 1}.
orientable surface: a surface that does not contain a Möbius band.
orientable surfaces, classification sequence S0 , S1 , S2 , . . .: a recursively defined se-
quence such that S0 is the sphere, S1 is the torus, and surface Sn+1 is obtained from
Sn by adding a handle.
path from s to t in a Euclidean set: the image of a continuous function f from the
unit interval [0, 1] into X such that f (0) = s, f (1) = t, and either
• f is a one-to-one, or
• the restriction of f to [0, 1) is one-to-one and s = t.
(One may visualize a path as the trace of a particle traveling through space for a fixed
length of time.)
—, closed: a path such that f (0) = f (1), i.e., in which s = t. (For instance, this would
include a “knotted circle” in space.)
—, open: a path such that f (0) 6= f (1), i.e., in which s 6= t.
planar graph: a graph that has an imbedding in the plane.
plane: Euclidean 2-space.
platonic graph: the 1-skeleton of a platonic solid.
platonic map: the imbedding of the 1-skeleton of a platonic solid on its surface.
platonic solid: any of the five geometrically regular 3-dimensional polyhedra: tetrahedron,
octahedron, cube, dodecahedron, and icosahedron.
Glossary 219

projective plane: the non-orientable surface N1 with one crosscap.

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.

space vertex: see topological model of a graph.


sphere: any Euclidean set that is topologically equivalent to the unit sphere.
subspace of a Euclidean space: any subset of the space, plus structure implicit in the
Euclidean metric.

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.

Minimization Problem for Vertex-Colorings


Most applications involving vertex-colorings are concerned with determining the mini-
mum number of colors required under the condition that the endpoints of an edge cannot
have the same color.
definition: A vertex k-coloring is an assignment f : VG → C from its vertex-set onto
a k-element set C whose elements are called colors (typically, C = {1, 2, . . . k}). For any k,
such an assignment is called a vertex-coloring.
terminology: Since vertex-colorings arise more frequently than edge-colorings or map-
colorings, one often says coloring, instead of vertex-coloring, when the context is clear.
definition: Let c be a vertex-coloring of a graph G. The color class for color i, denoted
ci , is the subset of VG containing all the vertices assigned color i. That is, ci = {x ∈ VG :
c(x) = i}.
definition: A proper vertex-coloring of a graph is a vertex-coloring such that the
endpoints of each edge are assigned two different colors.
Proposition 6.1.1: A vertex k-coloring of a graph is a proper vertex-coloring if and only
if each color class is an independent set of vertices.

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

Figure 6.1.1 A proper vertex 4-coloring of a graph.

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

Figure 6.1.2 A proper 3-coloring of graph G.

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

Figure 6.1.3 Graph G has chromatic number 4.

Remark: The study of vertex-colorings of graphs is customarily restricted to simple, con-


nected graphs for the following reasons:
i. A graph with a self-loop is uncolorable, since the endpoint of a self-loop is adjacent
to itself.
ii. A multi-edge requires two different colors for its endpoints in the same way that a
single edge does.
iii. The chromatic number of a graph is simply the maximum of the chromatic numbers
of its components.

Modeling Applications as Vertex-Coloring Problems


When an application is modeled as a vertex-coloring problem, the vertices in each color
class typically represent individuals or items that do not compete or conflict with each
other.
Application 6.1.1: Assignment of Radio Frequencies Suppose that the vertices of a
graph G represent transmitters for radio stations. In this model, two stations are con-
sidered adjacent when their broadcast areas overlap, which would result in interference if
they broadcast at the same frequency. Then two “adjacent” stations should be assigned
different transmission frequencies. Regarding the frequencies as colors transforms the situa-
tion into a graph-coloring problem, in which each color class contains vertices representing
stations with no overlap. In this model, χ(G) equals the minimum number of transmission
frequencies required to avoid broadcast interference.
224 Chapter 6 GRAPH COLORINGS

Application 6.1.2: Separating Combustible Chemical Combinations Suppose that the


vertices of a graph represent different kinds of chemicals needed in some manufacturing
process. For each pair of chemicals that might explode if combined, there is an edge between
the corresponding vertices. The chromatic number of this graph is the number of different
storage areas required so that no two chemicals that mix explosively are stored together.

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.

Application 6.1.4: Fast-Register Allocation for Computer Programming In some


computers there are a limited number of special “registers” that permit faster execution of
arithmetic operations than ordinary memory locations. The program variables that are used
most often can be declared to have “register” storage class. Unfortunately, if the programmer
declares more “register” variables than the number of hardware registers available, then the
program execution may waste more time swapping variables between ordinary memory
and the fast registers than is saved by using the fast registers. One solution is for the
programmer to control the register designation, so that variables that are simultaneously
active are assigned to different registers. The graph model has one vertex for each variable,
and two vertices are adjacent if the corresponding variables can be simultaneously active.
Then the chromatic number equals the number of registers needed to avoid the overswapping
phenomenon.

Sequential Vertex-Coloring Algorithm


There is a naive (brute-force) algorithm to decide, for some fixed k, whether a given n-
vertex graph is k-colorable. Just check to see if any of the k n possible k-colorings is proper
and return YES if so. By iterating this decision procedure, starting with k = 1, until a
YES is returned, one obtains an algorithm for calculating the exact value of the chromatic.
However, its running time is exponential in the number of vertices.
Alternatively, Algorithm 6.1.1 is a sequential algorithm that quickly produces a proper
coloring of any graph; yet the coloring it produces is unlikely to be a minimum one. More-
over, it seems unlikely that any polynomial-time algorithm can accomplish this, since the
problem of calculating the chromatic number of a graph is known to be NP-hard [GaJo79].
In fact, deciding whether a graph has a 3-coloring is an NP-complete problem.

Algorithm 6.1.1: Sequential Vertex-Coloring


Input: a graph G with vertex list v1 , v2 , . . . , vp .
Output: a proper vertex-coloring f : VG → {1, 2, . . .}.
For i = 1, . . . , p
Let f (vi ) := the smallest color number not used on any of the smaller-
subscripted neighbors of vi .
Return vertex-coloring f .
Section 6.1 Vertex-Colorings 225

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

Figure 6.1.4 A graph and a sequential 4-coloring.

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

Figure 6.1.5 A non-sequential 3-coloring for the same graph.

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.

Basic Principles for Calculating Chromatic Numbers


A few basic principles recur in many chromatic-number calculations. They combine to
provide a direct approach involving two steps, as already seen for Examples 6.1.2 and 6.1.3.
• Upper Bound : Show χ(G) ≤ k, most often by exhibiting a proper k-coloring of G.
• Lower Bound : Show χ(G) ≥ k, most especially, by finding a subgraph that requires k
colors.
The following result is an easy upper bound for χ(G); it is complemented by the easy
lower bound of clique number ω(G). Brooks’s Theorem, appearing later in this section,
sharpens this upper bound for a large class of graphs.
226 Chapter 6 GRAPH COLORINGS

Proposition 6.1.2: Let G be a simple graph. Then χ(G) ≤ δmax (G) + 1.

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

Figure 6.1.6 circ(7 : 1, 2).


Section 6.1 Vertex-Colorings 227

Proposition 6.1.6: Let H be a subgraph of graph G. Then χ(G) ≥ χ(H).

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

χ(G + H) = χ(G) + χ(H)

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. ♦

Chromatic Numbers for Common Graph Families


By using the basic principles given above, it is straightforward to establish the chromatic
numbers of graphs in some of the most common graph families, which are summarized in
Table 6.1.1.

Table 6.1.1: Chromatic numbers for common graph families

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

Proposition 6.1.9: A graph G has χ(G) = 1 if and only if G has no edges.

Proof: The endpoints of an edge must be colored differently. ♦

Proposition 6.1.10: A bipartite graph G has χ(G) = 2, unless G is edgeless.

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.

Proof: Pn is bipartite. Apply Proposition 6.1.10. ♦


Remark: Just as a bipartite graph is a graph whose vertices can be partitioned into two
color classes, we define a multipartite graph for any number of color classes.
definition: A k-partite graph is a loopless graph whose vertices can be partitioned into
k independent sets, which are sometimes called the partite sets of the partition.
Corollary 6.1.12: Trees: χ(T ) = 2, for any nontrivial tree T .

Proof: Trees are bipartite. ♦


Corollary 6.1.13: Cube Graphs: χ(Qn ) = 2.

Proof: The cube graph Qn is bipartite. ♦


Corollary 6.1.14: Even Cycles: χ(C2n ) = 2.

Proof: An even cycle is bipartite. ♦


Proposition 6.1.15: Odd Cycles: χ(C2n+1 ) = 3.

Proof: Clearly, α(C2n+1 ) = n. Thus, by Proposition 6.1.5,


   
|V (C2n+1 )| 2n + 1
χ(C2n+1 ) ≥ = =3
α(V (C2n+1 )) n


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.

Proposition 6.1.16: Even Wheels: χ(W2m ) = 3.

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: By Proposition 6.1.2, χ(Kn ) ≤ n and by Proposition 6.1.3, χ(Kn ) ≥ n. ♦


Section 6.1 Vertex-Colorings 229

Chromatically Critical Graphs


Proposition 6.1.19: Let G be a graph.
(i) For any vertex v, χ(G) − 1 ≤ χ(G − v) ≤ χ(G).

(ii) For any edge e, χ(G) − 1 ≤ χ(G − e) ≤ χ(G).

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.

Proposition 6.1.20: If e is a critical edge of a graph G, and c is a chromatic coloring of


G − e, then c must assign the same color to both endpoints of e.

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

Figure 6.1.7 The graph W5 − e is 3-colorable, for any edge e.

Proposition 6.1.21: If G is a k-critical graph, then each vertex is critical.


♦ (Exercises)

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.)

Proposition 6.1.23: Every (k + 1)-critical graph is an edge-minimal obstruction to k-


chromaticity.

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

Figure 6.1.8 A 4-chromatic graph that contains no odd wheel.


Section 6.1 Vertex-Colorings 231

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

Heuristics for Vertex-Coloring


Many vertex-coloring heuristics for graphs are based on the intuition that a vertex of
large degree will be more difficult to color later than one of smaller degree [ma81, Ca86,
Br79], and that if two vertices have equal degree, then the one having the denser neighbor-
hood subgraph will be harder to color later. These three references discuss variations and
combinations of these ideas.
The following algorithm is one such combination. Assume that the colors are named
1, 2, . . .. As the algorithm proceeds, the colored degree of a vertex v is the number of different
colors that have thus far been assigned to vertices adjacent to v.

Algorithm 6.1.2: Vertex-Coloring: Largest Degree First


Input: an n-vertex graph G.
Output: a vertex-coloring f of graph G.
While there are uncolored vertices of G
Among the uncolored vertices with maximum degree,
choose vertex v with maximum colored degree.
Assign smallest possible color k to vertex v : f (v) := k.
Return graph G with vertex-coloring f .

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

Applying the largest-degree-first algorithm yields a 3-coloring, as shown in 6.1.9 (right).

v1 v2 1 3

v3 2
v4 v6
v5 2 2 3
v7 1

v8 v9 v10 3 1 3

Figure 6.1.9 A largest-degree-first sequential coloring.

Coloring the Vertices of an Edge-Weighted Graph


Application 6.1.5: Timetabling with Unavoidable Conflicts [KiYe92] Suppose that the
evening courses at a certain school must be scheduled in k timeslots, t1 , t2 , . . . , tk . The
school would like to schedule the courses so that, whenever at least three students are
preregistered for both of a particular pair of courses, the two courses are assigned different
timeslots. The graph model has a vertex-set corresponding to the set of courses and has an
edge between a pair of vertices if the corresponding pair of courses should be scheduled in
different timeslots.
Section 6.1 Vertex-Colorings 233

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.

EXERCISES for Section 6.1


6.1.1 The chromatic number of an acquaintance network tells the minimum number of
groups into which the persons in that network must be partitioned so that no two per-
sons in a group have prior acquaintance. Calculate the chromatic number of the following
acquaintance network.

Larry Tony

Marty Betsey Tara Skippy

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

6.1.3 To the given graph:

i. Assign a minimum vertex-coloring, and prove that it is a minimum coloring.


ii. Apply the largest-degree-first heuristic algorithm.

(a) (b)

(c) (d)

(e) (f)

6.1.4 Apply the sequential vertex-coloring algorithm to this bipartite graph.

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

6.1.10 Apply the largest-degree-first heuristic to the graph of Exercise 6.1.9.

6.1.11 Prove Proposition 6.1.21. (Hint: Use Proposition 6.1.6.)


6.1.12 (a) Label the vertices of the following 3-chromatic graph so that the sequential
vertex-coloring algorithm uses 4 colors.

(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.15 Prove that all odd wheels are chromatically 4-critical.


6.1.16 Prove that for any graph G, G is chromatic k-critical if and only if G + K1 is
chromatic (k + 1)-critical.
6.1.17 Prove that K7 − C7 is not 4-critical.

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: The domination number of a graph G, denoted γ(G) is the cardinality of


a minimum set S of vertices such that every vertex of G is either in S or a neighbor of a
vertex in S.

6.1.21 Calculate the domination numbers of the graphs in Exercise 6.1.3.


6.1.22 Construct a graph with chromatic number 5 and domination number 2.
6.1.23 Construct a graph with domination number 5 and chromatic number 2.
6.1.24 Describe how to construct, for arbitrary values c ≥ 2 and m ≥ 1, a connected graph
G with chromatic number χ(G) = c and domination number γ(G) = m.

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).

6.1.25 Prove that every bipartite graph is perfect.

6.1.26 Prove that an odd cycle of length at least 5 is not perfect.


6.1.27 [Computer Project] Implement Algorithms 6.1.1 and 6.1.2 and compare their results
on the graphs of Exercise 6.1.3.
6.1.28 Find a vertex 2-coloring of the given weighted graph such that the total weight of
the edges whose endpoints are assigned the same color is minimized.

(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

6.2 LOCAL RECOLORINGS


This section expands on Application 6.1.3 University Course Scheduling, where vertices
represent courses and the endpoints of each edge represent a pair of courses that cannot
be scheduled in the same time slot [KiYe92, WeYe14]. If each timeslot is represented by a
different color, then a conflict-free schedule corresponds to a proper coloring of the graph.
As remarked early in Section 6.1, the study of vertex-colorings of graphs is customarily
restricted to simple, connected graphs. This is reasonable in the context of this section, since
there can be no time conflict between a course and itself, and the scheduling of different
components of the graph can be done independently.
The problem introduced in this section arises from a naturally occurring situation in the
construction of a course schedule. Suppose a schedule has been completed and announced,
and it turns out the instructor of one of the courses is unable to teach at the timeslot assigned
to that course. In terms of the associated proper coloring, the color assigned to a particular
vertex v must change. Ideally, one would prefer to change that color assignment only, but
if that is not possible, one would like to make the change with minimum perturbation. In
particular, is there a new proper coloring of the graph such that the color assignment of
vertex v changes, and the only other allowable changes are to color assignments of vertices
that are adjacent to v?
definition: Let c be a proper k-coloring of a graph G and let v be a vertex of G. A proper
k-coloring c0 of G is a local recoloring of V with respect to c if
i. c0 (v) =
6 c(v) and
ii. for all x ∈ VG − N [v], c0 (x) = c(x).
The vertex v is said to be locally recolorable with respect to c.

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

Figure 6.2.1 Neither vertex w nor x is locally recolorable.


238 Chapter 6 GRAPH COLORINGS

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

Figure 6.2.2 Each of the six vertices is locally recolorable.

Proposition 6.2.1: Suppose c is a proper k-coloring of a graph G, where k ≥ 2. If a vertex


v is the only vertex in its color class, then v is locally recolorable with respect to c.

Proof: Without loss of generality, assume c(v) = 1. Define the k-coloring c0 by



2,
 if x = v
c0 (x) = 1, if c(x) = 2 and x ∈ N (v)

c(x), otherwise

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

The next two propositions give examples of graphs in each category.


Proposition 6.2.3: The following graphs are χ-robust.
1. Every complete graph Kn , for n ≥ 2.
2. Every odd cycle.

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

The following corollary is a generalization of Proposition 6.2.3.


Corollary 6.2.7: If c is a proper k-coloring of a graph G 6= K1 with δmax (G) < k, then c
is robust.
Theorem 6.2.8: For any simple connected graph G 6= K1 , χR (G) ≤ δmax (G) + 1.
Proof: By Theorem 6.2.2, χR (G) ≤ χ(G) + 1.
• If G = Kn , with n ≥ 2, then by Proposition 6.2.3,
χR (G) = χ(G) = n = δmax (G) + 1

• 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

• If G is non-complete and δmax (G) ≥ 3, then


χR (G) ≤ χ(G) + 1, by Theorem 6.2.2
≤ δmax (G) + 1, by Brooks Theorem (Theorem 6.1.25) ♦

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

Case 2: If w = v, then the following (k + 1)-coloring of G is a local recoloring of v with


respect to d. 
 1 ; if x = v
d0 (x) = k + 1 , if d(x) = 1 and x ∈ N (v)
d(x) , otherwise

Corollary 6.2.11: If H is an induced subgraph of G, then χR (H) ≤ χR (G).

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

Figure 6.2.3 Every proper 3-coloring of K2 × K3 is robust.

1 1

3 3

1 2 1 2
2 3 2 1

Figure 6.2.4 The two proper 3-colorings of (K2 × K3 ) − e.


242 Chapter 6 GRAPH COLORINGS

Theorem 6.2.12: For any graph G and any edge e in G,

χR (G) − 1 ≤ χR (G − e) ≤ χR (G) + 1.

Proof: The following establishes the right-hand inequality.

χR (G − e) ≤ χ(G − e) + 1 (by Theorem 6.2.2)


≤ χ(G) + 1 (by Proposition 6.1.6)
≤ χR (G) + 1 (by Theorem 6.2.2)

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.

Case 2a: χ(G − e) = χ(G)

χR (G) − 1 = χ(G)
= χ(G − e)
≤ χR (G − e), by Theorem 6.2.2

Case 2b: χ(G − e) = χ(G) − 1.


If c is any chromatic coloring of G − e, then since e is a critical edge of G, Lemma
6.2.4 implies that c is not a robust coloring of G − e. Since no chromatic coloring
of G − e is robust, χR (G − e) = χ(G − e) + 1. Therefore,

χR (G − e) = χ(G − e) + 1 = χ(G) = χR (G) − 1 ♦


Since the removal of a vertex never increases the robust chromatic number, but the
removal of an edge may, we do not define robust critical for edges.
definition: A vertex v of a graph G is robust-critical if χR (G − v) < χR (G). A graph
G is robust-critical if every vertex is robust-critical.
Examples of robust-critical graphs are complete graphs on three or more vertices and
complete graphs on three or more vertices with one edge removed.

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

– The first case cannot occur since c0i ⊆ VH and v ∈ VG .


– If c0 (v) = j, then c00 (v) = i. Since v is not the only vertex in its color class with
respect to c|G , there is a vertex w 6= v with c(w) = c(v). Therefore, for this case
c00 (v) = i
6= c0 (w) (since w ∈ VG and c0i ⊆ VH )
= c(w) (since v and w are not adjacent)
= c(v)
– If c00 (v) = c0 (v), then c00 (v) 6= c(v), since c0 (v) 6= c(v).
(ii) Let x ∈ VG − N [v]. Since c0 is a local recoloring of v with respect to c and x ∈ / N [v],
we have c0 (x) = c(x). Thus, to show c00 (x) = c(x), it suffices to show c00 (x) = c0 (x).
By definition of c00 , this is equivalent to showing (a) c0 (x) 6= i and (b) c0 (x) 6= j.
(a) Since c0i ⊆ VH and x ∈ VG , x ∈ / c0i , i.e., c0 (x) 6= i.
(b) Since cj ⊆ VH and cj ⊆ VG , we have c0j ⊆ N [v] by Lemma 6.2.13. But x ∈
0
/ N [v],
and hence, x ∈/ c0j , , i.e., c0 (x) 6= j, which completes the proof.

Theorem 6.2.15: For any graphs G, H 6= K1 , G + H is χ-robust if and only if G and H
are both χ-robust.
Proof: Let c be a chromatic (k + m)-coloring of G + H, where k = χ(G) and m = χ(H).
The coloring c is robust
⇐⇒ every vertex in G + H is locally recolorable with respect to c
⇐⇒ every vertex in G is locally recolorable with respect to c|G and every vertex in
H is locally recolorable with respect to c|H (by Prop. 6.2.14)
⇐⇒ c|G and c|H are both robust colorings.
But since c|G is a chromatic k-coloring of G and c|H is a chromatic m-coloring of H, it
follows that there exists a robust chromatic coloring of G + H if and only if there exist
robust chromatic colorings of both G and H. ♦
Corollary 6.2.16: For any graphs G, H 6= K1 ,
(
χR (G) + χR (H) − 1, if neither G nor H is χ-robust
χR (G + H) =
χR (G) + χR (H), otherwise
Proof: This is an immediate consequence of Theorems 6.2.15 and 6.2.2. ♦
Theorem 6.2.17: For any graph G 6= K1 , G + K1 is χ-robust if and only if G is χ-robust.
Proof: Let c be a chromatic (k + 1)-coloring of G + K1 .
c is robust ⇐⇒ every vertex in G + K1 is locally recolorable with respect to c
⇐⇒ every vertex in G is locally recolorable with respect to c
(by Prop. 6.2.1)
⇐⇒ every vertex in G is locally recolorable with respect to c|G
(by Prop. 6.2.14)
⇐⇒ c|G is robust
⇐⇒ G is χ-robust (since c|G is a chromatic coloring of G)

Section 6.2 Local Recolorings 245

Corollary 6.2.18: For any graph G 6= K1 , χR (G + K1 ) = χR (G) + 1.

Proof: If G is χ-robust, then G + K1 is χ-robust and

χR (G) + 1 = χ(G) + 1 = χ(G + K1 ) = χR (G + K1 )

If G is not χ-robust, then G + K1 is not χ-robust and

χR (G) + 1 = (χ(G) + 1) + 1 = χ(G + K1 ) + 1 = χR (G + K1 )


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.

Proof: Suppose G + H is robust-critical and w is a vertex in G.


Case 1: H = K1

χR (G − w) = χR ((G − w) + K1 ) − 1, by Corollary 6.2.18


= χR ((G + H) − w) − 1
= χR (G + H) − 1 − 1, since G + H is robust-critical
= χR (G) − 1, by Corollary 6.2.18

Case 2: H is χ-robust.

χR (G − w) = χR ((G − w) + H) − χR (H), by Corollary 6.2.16


= χR ((G + H) − w) − χR (H)
= χR (G + H) − 1 − χR (H), since G + H is robust-critical
= χR (G) − 1, by Corollary 6.2.16

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.

Proof: Let v be a vertex in G. By definition, χR (G − v) ≥ χ(G − v). For the reverse


inequality,

χR (G − v) = χR (G) − 1 (G is robust-critical)
= χ(G) − 1 (G is χ-robust)
≤ χ(G − v) (Proposition 6.1.19)

Therefore, χR (G − v) = χ(G − v). ♦


Theorem 6.2.21: Suppose H = K1 , H = K2 , or H is robust-critical. For all G 6= K1 or
K2 , if G is robust-critical, then G + H is robust-critical.

Proof: Suppose G is robust-critical.


Case 1: H = K1 .
If v is the vertex of H, then

χ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

χR ((G + H) − v) = χR ((G − v) + H) (by definition of join)


= χR (G − v) + 1 (by Corollary 6.2.18)
= χR (G) − 1 + 1 (since G is robust-critical)
= χR (G + H) − 1 (by Corollary 6.2.18)

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)

Case 3b: Either G or H is χ-robust.


By Lemma 6.2.20, G − v is also χ-robust. Therefore, either G − v or H is χ-robust.
Therefore,

χ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

EXERCISES for Section 6.2


6.2.1 Show that every vertex in the graph of Example 6.2.2 is locally recolorable with
respect to the coloring c.

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.2.3 For what values of n is the wheel Wn χ-robust?

6.2.4 Consider the graph K7 − C6 .


(a) What is the robust chromatic number?
(b) Is it possible to remove an edge and decrease the robust chromatic number?
(c) Is it possible to remove an edge and leave the robust chromatic number the same?
(d) Is it possible to remove an edge and increase the robust chromatic number?

6.2.5 By Theorem 6.1.22, the minimum degree of a k-critical graph is at least k − 1? Is


there an analogous result for k-robust critical graphs? The graphs below may be helpful.
248 Chapter 6 GRAPH COLORINGS

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.

Dualizing Map-Colorings into Vertex-Colorings


definition: A map on a surface is an imbedding of a graph on that surface.
terminology: Whereas the term mapping is a generic synonym for function, the term
map refers to a function from a graph to a surface.
definition: A map k-coloring for an imbedding ι : G → S of a graph on a surface is an
assignment f : F → C from the face-set F onto the set C = {1, . . . , k}, or onto another set
of cardinality k, whose elements are called colors. For any k, such an assignment is called a
map-coloring.
definition: A map-coloring is proper if for each edge e ∈ EG , the regions that meet on
edge e are colored differently.
definition: The chromatic number of a map ι : G → S is the minimum number chr(ι)
of colors needed for a proper coloring.
Example 6.3.1: Figure 6.3.1 below shows a proper 4-coloring of a planar map. Observe
that in a proper coloring of this map, no two regions can have the same color, since every
pair of regions meets at an edge. Thus, this map requires four colors.

Figure 6.3.1 A 4-colored planar map.

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

Figure 6.3.2 A map with no proper coloring.

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

Figure 6.3.4 Double adjacency of France and Spain around Andorra.


250 Chapter 6 GRAPH COLORINGS

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

Figure 6.3.5 A proper 2-coloring at Four Corners, USA.

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

Figure 6.3.6 The dual graph of the map of South America.

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

Five-Color Theorem for Planar Graphs and Maps


An early investigation of the Four Color Problem by Kempe [1879] introduced a concept
that enabled Heawood [1890] to prove without much difficulty that five colors are sufficient.
Heawood’s proof is the main concern of this section.
definition: The {i, j}-subgraph of a graph G with a vertex-coloring that has i and j in
its color set is the subgraph of G induced on the subset of all vertices that are colored either
i or j.
definition: A Kempe i-j chain for a vertex-coloring of a graph is a component of the
{i, j}-subgraph.
Example 6.3.5: Figure 6.3.8 illustrates two Kempe 1-3 chains in a graph coloring. The
edges in the Kempe chains are dashed.
1
4
2 2
3 3
1 1

1
1
4
2

Figure 6.3.8 A graph coloring with two Kempe 1-3 chains.

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: By Theorem 4.5.9,


2 |EG | 12
≤6−
|VG | |VG |
Therefore,
P
deg(v)
v∈VG
δavg (G) = definition of average
|VG |
2 |EG |
= by Theorem 1.1.2
|VG |
12
≤6− by Theorem 4.5.9
|VG |
<6 ♦
Theorem 6.3.3: [Heawood, 1890] The chromatic number of a planar simple graph is
at most 5.

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

By Theorem 6.3.2, there is a vertex w ∈ VG of degree at most 5 and therefore, by Theorem


6.1.22, χ(G) ≤ 6. Since G is chromatically critical, the vertex-deletion subgraph G − w is
5-colorable, by Proposition 6.1.21.
Next, consider any 5-coloring of subgraph G − w. If not all five colors were used on the
neighbors of vertex w, then the 5-coloring of G − w could be extended to graph G by
assigning to w a color not used on the neighbors of w. Thus, we can assume that all five
colors are assigned to the neighbors of vertex w. Moreover, there is no loss of generality in
assuming that these colors are consecutive in counterclockwise order, as shown on the left
in Figure 6.3.9. Consider the {2, 4}-subgraph shown on the left in Figure 6.3.9 with dashed
edges, and let K be the Kempe 2-4 chain that contains the 2-neighbor of vertex w (i.e., the
neighbor that was assigned color 2).
Case 1. Suppose that Kempe chain K does not also contain the 4-neighbor of vertex w.
Then colors 2 and 4 can be swapped in Kempe chain K, as shown on the right in Figure
6.3.9. The result is a 5-coloring of G − w that does not use color 2 on any neighbor of w.
This 5-coloring extends to a 5-coloring of graph G when color 2 is assigned to vertex w.
1 1

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

Figure 6.3.9 Swapping colors in a Kempe 2-4 chain.

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

Figure 6.3.10 Extending a path in a Kempe 2-4 chain to a cycle.

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].

EXERCISES for Section 6.3


6.3.1 Draw a minimum proper coloring of the following map, excluding the exterior region,
and prove it is a minimum coloring.

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

6.3.8 Find the Kempe 1-4 chains in the following graph.

1
4
2 2
3 3
G 1 1

1
1
4
2

6.3.9 Find the Kempe 1-3 chains in the following graph.


v1 v2 1 3

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.

The Minimization Problem for Edge-Colorings


review from §1: Two different edges are adjacent if they have at least one endpoint in
common.
definition: An edge k-coloring of a graph G is an assignment f : EG → C from its edge-
set onto a k-element set C whose elements are called colors (typically, C = {1, 2, . . . k}).
For any k, such an assignment is called an edge-coloring.
definition: An edge color class in an edge-coloring of a graph G is a subset of EG
containing all the edges of a given color.
definition: A proper edge-coloring of a graph is an edge-coloring such that adjacent
edges are assigned different colors.

Remark: Whereas multi-edges have no bearing on the proper vertex-colorings of a graph,


they have an obvious effect on the proper edge-colorings and cannot be ignored. Graphs
with self-loops are excluded from the present discussion.
256 Chapter 6 GRAPH COLORINGS

definition: A graph is said to be edge k-colorable if it has a proper edge k-coloring.

Example 6.4.1: A proper edge 5-coloring of a graph is shown in Figure 6.4.1.

5
1
3 1 2
4
2
5

Figure 6.4.1 A graph with a proper edge 5-coloring.

definition: The edge-chromatic number of a graph G, denoted χ0 (G), is the minimum


number of different colors required for a proper edge-coloring of G. A graph G is edge
k-chromatic if χ0 (G) = k.
Thus, χ0 (G) = k if graph G is edge k-colorable but not edge (k − 1)-colorable.
Example 9.3.1, continued: The proper edge-coloring in Figure 6.4.2 improves on the one
in Figure 9.3.1, since it uses only four colors. Moreover, the graph is not edge 3-colorable,
since it contains four mutually adjacent edges. Thus, χ0 (G) = 4.
3
1
2 1 2
4
4
3

Figure 6.4.2 A proper edge 4-coloring of the graph from Figure 6.4.1.

Modeling Applications as Edge-Coloring Problems


Application 6.4.1: Circuit Boards Some electronic devices x1 , x2 , . . . , xn are on a
board. The connecting wires emerging from each device must be colored differently, so
that they can be distinguished. The least number of colors required is the edge-chromatic
number of the associated network.

Application 6.4.2: Scheduling Class Times A high school has teachers t1 , . . . , tm to


teach courses s1 , . . . , sn . In particular, teacher tj must teach sj,k sections of course sk .
problem: Calculate the minimum number of time periods required to schedule all the
courses so that no two sections of the same course are taught at the same time. solution:
Form a bipartite graph on the two sets {t1 , . . . , tm } and {s1 , . . . , sn } so that there are sj,k
edges joining tj and sk , for all j and k, as shown in Figure 6.4.3.
t1 t2 t3 t4

s1 s2 s3 s4
Figure 6.4.3 Representing a scheduling problem by a bipartite graph.
Section 6.4 Edge-Colorings 257

A matching of teachers to courses can be realized in a time period. If each edge-color


represents a timeslot in the schedule, then an edge-coloring of the bipartite graph represents
a feasible timetable for sections of courses. A minimum edge-coloring, as shown in Figure
6.4.4, uses the smallest number of time periods.

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.

Sequential Edge-Coloring Algorithm


There is a sequential edge-coloring algorithm analogous to the sequential vertex-coloring
algorithm of §6.1.
definition: A neighbor of an edge e is another edge that shares one or both of its
endpoints with e.

Algorithm 6.4.1: Sequential Edge-Coloring


Input: a graph with edge list e1 , e2 , . . . , ep .
Output: a proper edge-coloring f , with positive integers as colors
For i = 1, . . . , p
Let f (ei ) := the smallest color number not used on any of the
smaller-subscripted neighbors of ei .
Return edge-coloring f .

Basic Principles for Calculating Edge-Chromatic Numbers


Edge-chromatic-number calculations are largely based on a few simple principles, mostly
analogous to those used in the two-step vertex-chromatic-number calculations.

• Upper Bound : Show χ0 (G) ≤ k by exhibiting a proper edge k-coloring of G.


• Lower Bound : Show χ0 (G) ≥ k by using properties of graph G.

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.

Corollary 6.4.2: For any graph G, χ0 (G) ≥ δmax (G). ♦

Proposition 6.4.3: Let H be a subgraph of graph G. Then χ0 (G) ≥ χ0 (H). ♦


258 Chapter 6 GRAPH COLORINGS

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

Figure 6.4.5 Graph G is edge 5-colorable.

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)

The following algorithm constructs a proper edge-coloring by iteratively finding maxi-


mum matchings.

Algorithm 6.4.2: Edge-Coloring by Maximum Matching


Input: a graph G.
Output: a proper edge k-coloring f .
Initialize color number k := 0.
While EG = 6 ∅
k := k + 1
Find a maximum matching M of graph G.
For each edge e ∈ M
f (e) := k
G := G − M (edge-deletion subgraph)
Return edge-coloring f .

Edge-Chromatic Numbers for Common Graph Families


It is now possible to derive the edge-chromatic numbers for the same graph families,
summarized below in Table 6.4.1, for which the vertex-chromatic numbers were derived
Section 6.4 Edge-Colorings 259

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)

Proposition 6.4.6: Path Graphs: χ0 (Pn ) = 2, for n ≥ 3. ♦ (Exercises)

Proposition 6.4.7: Even Cycle Graphs: χ0 (C2n ) = 2. ♦ (Exercises)

Proposition 6.4.8: Odd Cycle Graphs: χ0 (C2n+1 ) = 3. ♦ (Exercises)

Proposition 6.4.9: Trees: χ0 (T ) = δmax (T ), for any tree T . ♦ (Exercises)

Proposition 6.4.10: Hypercube Graphs: χ0 (Qn ) = n. ♦ (Exercises)

Proposition 6.4.11: Wheel Graphs: χ0 (Wn ) = n, for n ≥ 3. ♦ (Exercises)

Example 6.4.3: Figure 6.4.6 illustrates an edge 5-coloring of the wheel W5 .

4 0
1
0 2
3 1
4 3
2

Figure 6.4.6 A proper edge 5-coloring of the wheel W5 .

Proposition 6.4.12: Odd Complete Graphs: χ0 (Kn ) = n for all odd n ≥ 3.

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

Figure 6.4.7 Two matchings in K7 .

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

Corollary 6.4.13: Even Complete Graphs: χ0 (Kn ) = n − 1 for all even n.

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

Figure 6.4.8 Extending the edge n-coloring from Kn−1 to Kn .

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.

Table 6.4.1: Edge-chromatic numbers for common graph families

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

definition: The total chromatic incidence for an edge-coloring f of a graph G, denoted


ecr(f ), is the sum of the chromatic incidences of all the vertices. That is,
X
ecr(f ) = ecrv (f )
v∈VG

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

Figure 6.4.9 Total-chromatic-incidence calculations.

The following four assertions are immediate consequences of the definitions.


Proposition 6.4.14: Let f be any edge-coloring of a graph G. Then for every v ∈ VG ,

ecrv (f ) ≤ deg(v) ♦

Corollary 6.4.15: Let f be any edge-coloring of a graph G. Then


X X
ecrv (f ) ≤ deg(v)

v∈VG v∈VG

Proposition 6.4.16: An edge-coloring f of a graph G is proper if and only if for every


vertex v ∈ VG ,
ecrv (f ) = deg(v) ♦

Corollary 6.4.17: An edge-coloring f of a graph G is proper if and only if


X X
ecrv (f ) ≤ deg(v)

v∈VG v∈VG

Edge-Coloring of Bipartite Graphs


Deriving a formula for the edge-chromatic number of a bipartite graph G is not quite
as easy as for the vertex-chromatic number. Nonetheless, the eventual formula is uncom-
plicated: χ0 (G) = δmax (G). The characterization of bipartite graphs as the graphs without
odd cycles is crucial to the derivation.
The following two lemmas establish facts about the chromatic degree that are used in
the derivation. They involve edge-colorings that are not assumed to be proper. The first
lemma makes use of the properties of an Eulerian graph.
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.
262 Chapter 6 GRAPH COLORINGS

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*

Figure 6.4.10 Constructing the auxiliary graph for Case 3.

Case 3: G is not Eulerian. Construct an auxiliary graph G∗ by joining a new vertex w to


every odd-degree vertex of G, thereby making each such vertex have even-degree in G∗ (see
Figure 6.4.10 above). By Corollary 1.1.3, every graph has an even number of odd-degree
vertices, so vertex w has even degree. Thus, the auxiliary graph G∗ is Eulerian, by Theorem
3.2.11. Now let f be an edge 2-coloring of graph G∗ , as specified in Case 2. Then it is easy to
verify that the edge-coloring f |G of f restricted to the edges of graph G is an edge-coloring
such that both colors are incident on each vertex of G of degree at least 2. ♦
definition: In a graph G with a (possibly improper) edge-coloring, a Kempe i-j edge-
chain is a component of the subgraph of G induced on all the i-colored and j-colored
edges.
Example 6.4.5: An edge 4-coloring is shown in Figure 6.4.11, and the two Kempe 1-2
edge-chains are shown as dashed edges.

2 3 3
3 4
4
1
4 2

Figure 6.4.11 An edge 4-coloring with two Kempe 1-2 edge-chains.


Section 6.4 Edge-Colorings 263

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

Figure 6.4.12 Attempted edge 5-coloring of K5 that is blocked at edge 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.

Proof: To construct a (δmax (G) + 1)-edge-coloring, start by successively coloring edges,


using any method (e.g., Algorithm 6.4.1) until the coloring is blocked or complete. If the
set of uncolored edges is empty, then the construction is complete. Otherwise, there is some
edge e, with endpoints u and v, that remains uncolored. It will be shown that by recoloring
some edges, the blocked coloring can be transformed into one that can be extended to edge
e. The process can then be repeated until all edges have been colored.
Since the number of colors exceeds δmax (G), it follows that at each vertex, at least one of
the colors is absent. Let c0 be a color absent at vertex u, and c1 a color absent at vertex v.
Color c1 cannot also be absent at vertex u, since if it were, edge e would not have remained
uncolored. (For the same reason, color c0 must occur at vertex v.) So let e1 be the c1 -edge
incident on vertex u, and let v1 be its other endpoint. Next, let c2 be a color absent at v1 .
If c2 is also absent at vertex u, then the color of edge e1 can be changed from c1 to c2 ,
thereby permitting the assignment of color c1 to edge e, as illustrated in Figure 6.4.13. A
missing color c at a vertex is indicated by placing c alongside that vertex. Several missing
colors may be grouped in braces.
uncolored c1

u v u v
¬ {c0 ,c2 } e ¬c1 ¬ {c0 ,c1} e ¬c 1

c0 c2
c1 c0

¬ c2 v1 ¬ c1 v1

Figure 6.4.13 Extending an edge-coloring to edge e by recoloring edge e1 .

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.14 Case 1: color shift to free color c1 for edge e.


Section 6.4 Edge-Colorings 265

Case 2: Color cl+1 = ck , where 1 ≤ k ≤ l. Swap and Shift.


Let K be the Kempe c0 -ck edge-chain incident on vertex vl . By definition, K includes the
c0 -edge incident on vl , but there is no ck -edge incident on vertex vl (by definition of l ).
By Lemma 6.4.21, Kempe chain K is a path, and one end of this path is vertex vl . There
are three subcases to consider, according to where the other end of the path is. In each of
the three subcases, the two colors are swapped so that a Case 1 color shift can then be
performed.
ck c0
c0 c0 ck ck
¬ck +1 ¬ ck ¬ck +1
vk vℓ vk vℓ
ck cℓ c0 u c ℓ
¬ ck u v ¬c v
ck −1 e 1 ck c1
v k−1 ¬c0 v k−1
c2 c3
¬c3 c1 c2 c0
c0
v2 v1 v2 v1
¬ c2

Figure 6.4.15 Case 2a: swap and shift.

Case 2a. Path K reaches vertex vk .


Then swap colors c0 and ck along path K. As a result of the swap, color ck no longer occurs
at vertex u. This configuration permits a Case 1 color shift that releases color c1 for edge
e. The swap and shift are illustrated in Figure 6.4.15 above.
ck c0
c0 ¬ck+1 c0 ck ¬ck +1 ck
¬ ck
vk vℓ vk vℓ
ck u c ℓ ck u c ℓ
¬ ck v ¬c v
ck −1 e 1 c0 c1
v k−1 ¬c0 v k−1
c2 c3
¬c3 c1 c2 c0
c0
v2 v1 v2 v1
¬ c2

Figure 6.4.16 Case 2b: swap, recolor edge e1 , and then shift.

Case 2b. Path K reaches vertex vk−1 .


Then swap colors c0 and ck along path K. As a result of the swap, color c0 no longer occurs
at vertex vk−1 . Thus, edge ek−1 can be recolored c0 , as in Figure 6.4.16 above. A color shift
can now be performed to release color c1 for edge e.
ck c0
¬ck+1 c0 ck
¬ ck
vl vl
vk vk c
ck u cl k+1 c0
¬ ck v ¬c u v
ck−1 e 1 ck c1
vk−1 ¬c0 vk−1
c2 c3
¬c3 c1 c0 c2 c0
v2 v2
¬ c2 v1 v1
Figure 6.4.17 Case 2c: swap and shift.

Case 2c. Path K never reaches vertex vk–1 or vertex vk .


Since color c0 does not occur at vertex u, and since color ck occurs at u only on the edge
from vk , it follows that path K does not reach vertex u. Then swap colors c0 and ck along
path K, so that color c0 no longer occurs at vertex vl . Now perform a Case 1 color shift
that releases color c1 for edge e, as in Figure 6.4.17 above. ♦
266 Chapter 6 GRAPH COLORINGS

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.

Figure 6.4.18 A symmetric “fat triangle” requires δmax + µ edge colors.

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

Figure 6.4.19 The complete graph K4 and its line graph O3 .


Section 6.4 Edge-Colorings 267

Proposition 6.4.24: The edge-chromatic number of a graph G equals the vertex-


chromatic number of its line graph L(G).

Proof: This follows immediately from the definitions. ♦


Remark: Beineke [Be68] proved that a simple graph G is a line graph of some simple graph
if and only if G does not contain any of the graphs in Figure 6.4.20 as an induced subgraph.
Since it is an NP -complete problem to decide this subgraph problem, much of the theory
of edge-colorings has prospered separately from the theory of vertex-colorings.

Figure 6.4.20 The nine forbidden induced subgraphs of line graphs.

EXERCISES for Section 6.4


6.4.1 For the given graph, assign a minimum edge-coloring and prove that it is a minimum
coloring.

(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.

Figure 6.5.1 Factorization of K6 into three paths.

definition: A k-factor of a graph G is a k-regular factor of G.


definition: A k-factorization of a graph G is a factorization into k-factors.

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)

Figure 6.5.2 Two factorizations of K7 into 2-factors.

terminology: A 1-factor of a graph G is also called a perfect matching. Two vertices


are said to be matched with respect to a 1-factor if they are the endpoints of an edge in
the 1-factor.

Tutte’s 1-Factor Theorem


Plummer [PI04] characterizes Tutte’s 1-Factor Theorem as the most influential theorem
in the study of 1-factors. The definitions and lemmas that precede Tutte’s theorem help to
simplify the proof.
definition: An odd component of a graph is a component with an odd number of
vertices.
definition: Tutte’s condition on a graph G is that for every subset S ⊂ VG , the number
of odd components of G − S does not exceed |S|.
Lemma 6.5.1: Tutte’s condition is preserved under edge addition.

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.

Figure 6.5.3 Two polygon kites with their 1-factors.

definition: Let M and N be spanning subgraphs of the same graph G. The


symmetric difference M ∆N is the spanning subgraph of G whose edge-set is
(EM ∪ EN ) − (EM ∩ EN ).
Tutte’s 1-Factor Theorem characterizes graphs having a 1-factor as those satisfying
Tutte’s condition. The following proof is due to Lovász [L075].
Theorem 6.5.3: [Tutte’s 1-Factor Theorem] A nontrivial graph G has a 1-factor if
and only if for every subset S ⊂ VG , the number of odd components of G − S does not
exceed |S|.

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

W = { w ∈ VH | w is adjacent to every other vertex of H}

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.

Petersen’s 1-Factor Theorem


notation: The number of odd components of a graph G is denoted oc(G).
Theorem 6.5.4: [Petersen’s 1-Factor Theorem] Every 2-edge-connected 3-regular
graph G has a 1-factor.
Proof: By Tutte’s 1-Factor Theorem, it suffices to show that G satisfies Tutte’s condition.
Let S be an arbitrary subset of vertices of G, and let k be the number of edges between S
and the odd components of G − S. We first observe that
k ≤ 3 |S|
because each vertex of S has degree 3, since G is 3-regular. For any odd component H (odd
H) of G − S, let kH be the number of edges joining H with S. Summing over all the odd
components, X
kH = k
H odd

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.

EXERCISES for Section 6.5


6.5.1 Draw a 3-regular simple graph that has no 1-factor or 2-factor
6.5.2 Draw a 5-regular simple graph that has no 1-factor or 2-factor.
6.5.3 Prove that if two graphs G and H each have a k-factor, then their join has a k-factor.
6.5.4 Draw a connected simple graph that is decomposable into a 2-factor and a 1-factor,
but is non-Hamiltonian.
6.5.5 Prove that if a graph has a k-factor, then its Cartesian product with any other graph
has a k-factor.
6.5.6 Prove that the complete graph K2r is 1-factorable. Hint: Use induction on r.
6.5.7 Prove that an r-regular bipartite graph G can be decomposed into k-factors if and
only if k divides r.
6.5.8 Describe a 2-factorable graph whose edge-complement contains no 2-factor.
6.5.9 Suppose that two graphs with a 1-factor are amalgamated across an edge. Does the
resulting graph necessarily have a 1-factor?
6.5.10 Draw two graphs that have no 1-factor, but whose Cartesian product does have a
1-factor.
6.5.11 Draw two graphs that have no 2-factor, but whose Cartesian product does have a
2-factor.
274 Chapter 6 GRAPH COLORINGS

6.6 SUPPLEMENTARY EXERCISES


6.6.1 Let S be the set of connected graphs with 8 vertices and 17 edges.
(a) Prove that no graph in S is 2-chromatic.
(b) Draw a 3-chromatic graph from S, and prove it is 3-chromatic.
(c) Draw a 4-chromatic graph from S, and prove it is 4-chromatic.
(d) Draw a 5-chromatic graph from S, and prove it is 5-chromatic.
(e) Draw a 6-chromatic graph from S, and prove it is 6-chromatic.
(f) Prove that no graph in S is 7-chromatic.

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.12 Calculate the chromatic number of the graph C3 × C3 × C3 × C3 × C3 .


6.6.13 Give a proper 4-coloring of the Grötzsch graph (a Mycielski graph), shown below.
Why must at least three different colors be used on the outer cycle in a proper coloring?
Why must at least three different colors be used on the five hollow vertices? (This implies
that a fourth color is needed for the central vertex.)

6.6.14 Calculate the chromatic number of the product graph K4 × K4 .

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.

6.6.17 Calculate the independence number of C5 × C5 .


6.6.18 Calculate the clique number of the circulant graph circ(9 : 1, 3, 4).
6.6.19 Calculate the independence number and chromatic number of the given graph.

(a) (b)

A A B B

6.6.20 Prove that every Hamiltonian 3-regular graph is 3-edge-colorable.


6.6.21 Draw as many copies of the cube Q3 as needed, each with a different 1-factor, to
give a complete repetition-free list of all the possible 1-factors.
276 Chapter 6 GRAPH COLORINGS

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.

k-chromatic graph: a graph whose vertex chromatic number is k.


chromatic incidence of an edge-coloring f at a vertex v: the number of different edge-
colors present at v, denoted by ecr v (f ).
chromatic number:

—, 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.

color class in a vertex-coloring of a graph G: a subset of VG containing all the vertices of


some color.
k-colorable graph: a graph that has a proper vertex k-coloring.
coloring of a graph: usually refers to a vertex-coloring.

k-coloring of a graph: a vertex-coloring that uses exactly k different colors.


k-coloring of a map: a map-coloring that uses exactly k different colors.
colors of vertices or faces: a set, usually of integers 1, 2, . . . , to be assigned to the vertices
of a graph or the regions of a map.

complete set of obstructions to k-chromaticity: a set {Gj } of chromatically (k + 1)-


critical graphs such that every (k + 1)-chromatic graph contains at least one graph Gj
as a subgraph.
domination number γ(G) of a graph G: the cardinality of a minimum set S of vertices
such that every vertex of G is either in S or a neighbor of a vertex in S.
edge k-chromatic graph G: a graph with χ0 (G) = k.
Glossary 277

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.

Eulerian graph: a graph that has an Eulerian tour.


Eulerian tour in a graph: a closed trail that contains every edge of that graph.
even wheel: a wheel graph Wn = K1 + Cn such that n is even.

factor of a graph: a spanning subgraph.


k-factor of a graph: a spanning subgraph of that is regular of degree k.
factorization of a graph G: a set of factors whose edge-sets form a partition of the edge-set
EG .

k-factorization of a graph G: a factorization of G into k-factors.


independence number of a graph G: the maximum cardinality of an independent set of
vertices, denoted by α(G).
independent set of edges: a set of mutually nonadjacent edges.

independent set of vertices: a set of mutually nonadjacent vertices.


join of two graphs G and H: the graph G + H obtained from the graph union G ∪ H by
adding an edge between each vertex of G and each vertex of H.
Kempe i-j chain for a vertex-coloring of a graph: a component of the subgraph in-
duced on the set of all vertices colored either i or j.
Kempe i-j edge-chain in an edge-colored graph: a component of the subgraph in-
duced on all the i-colored and j-colored edges.
leaf block of a graph G: a block that contains exactly one cut-vertex of G.

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 k-colorable graph: a graph that has a proper vertex k-coloring.

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

MEASUREMENT AND MAPPINGS

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

7.1 DISTANCE IN GRAPHS


review from §1.2: The distance d(s, t) from a vertex s to a vertex t in a graph is the
length of a shortest s-t path if one exists; otherwise, d(s, t) = ∞.
notation: When there is more than one graph under consideration, we sometimes use a
subscript (as in dG (s, t)) to indicate the graph in which the distance is taken.
Proposition 7.1.1: Let G be a connected graph. The distance function d is a metric on
VG . That is, it satisfies the following four conditions:
• d(x, y) ≥ 0 for all x, y ∈ VG .
• d(x, y) = 0 if and only if x = y.
• d(x, y) = d(y, x) for all x, y ∈ VG . (symmetry property)
• d(x, y) + d(y, z) ≥ d(x, z) for all x, y, z ∈ VG . (triangle inequality)
Proof: The first three conditions follow immediately from the definition of distance. The
triangle inequality holds because the concatenation of a shortest x-y path with a shortest
y-z path forms an x-z walk whose length is certainly no smaller than a shortest x-z walk.

Eccentricity, Diameter, and Radius
review from §1.2, §1.3, §1.4, and §3.6:
• 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
• The diameter of a graph G, denoted diam(G), is the maximum of the vertex eccen-
tricities in G or, equivalently, the maximum distance between two vertices in G. That
is, diam(G) = max ecc(x) = max d(x, y).
x∈VG x,y∈VG
• The radius of a graph G, denoted rad (G), is the minimum of the vertex eccentricities.
That is, rad (G) = max ecc(x).
x∈VG
• A central vertex v of a graph G is a vertex with minimum eccentricity, i.e., such
that ecc(v) = rad (G).
• The center of a graph G, denoted Z(G), is the subgraph induced on the set of
central vertices of G.
• Proposition 1.4.2: For every graph H, there is a connected graph G such that
H = Z(G).
• A block in a graph G is a maximal connected subgraph that contains no cut-vertices
of G.
Example 7.1.1: The graph G in Figure 7.1.1 has diameter diam(G) = 4 and radius
rad (G) = 2. Its center Z(G) is isomorphic to K2 (induced on the vertex subset {x, y}).
x
v
u
w
y

Figure 7.1.1 A graph G with diam(G) = 4, rad (G) = 2, and Z(G) ∼


= K2 .
Section 7.1 Distance in Graphs 283

Proposition 7.1.2: Let G be a connected graph. Then

rad (G) ≤ diam(G) ≤ 2 · rad (G)

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

Girth and Circumference


Girth and circumference are opposite measures.
review from §1.2: The girth of a graph G with at least one cycle is the length of a
shortest cycle in G and is denoted girth(G). The girth of G is undefined if G is acyclic.
definition: The circumference of a graph G with at least one cycle is the length of a
longest cycle in G and is denoted circum(G). The circumference of G is undefined if G is
acyclic.
Example 7.1.3: The graph in Figure 7.1.2 has girth 3 and circumference 7.

Figure 7.1.2 A graph G with girth(G) = 3 and circum(G) = 7.

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

definition: A subset S of vertices of a graph is convex if I[S] = S.


definition: The convex hull of a subset S of vertices of a graph is the smallest convex
set that contains S.
Example 7.1.4, continued: For the graph G in Figure 7.1.3, the convex hull of {u, v} is
{u,v,w,z}, and the convex hull of {v, x, y} is VG (since {v, x, y, w, z} is not convex).
Section 7.1 Distance in Graphs 285

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

Figure 7.1.4 A Steiner tree for {x, y, z}.

Total Distance and Medians


definition: The total distance td (v) of a vertex v in a connected graph G is given by
X
td (v) = d(v, w)
w∈VG

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

Figure 7.1.5 Total distance td (z) = 9.

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

which establishes the base of the induction.


Next, assume for some m ≥ n − 1 that the upper bound holds for any n-vertex connected
graph with m edges, and let v be a vertex in an n-vertex graph G with m + 1 edges. Since
G contains at least n edges, it must have at least one cycle. Among all cycle vertices in
G, let x be one that is closest to v, and let e = xy be a cycle edge. The two possibilities,
depending on whether v is a cycle vertex, are shown in the figure below.
v=x
v x

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

Figure 7.1.6 Two graphs with maximum total distance.

definition: A median vertex in a connected graph is a vertex whose total distance is


minimum.
definition: The median subgraph of a connected graph G is the subgraph M (G) induced
on the median vertices of G.
Example 7.1.6, continued: Vertex x of the graph in Figure 7.1.5 has total distance 5 and
is the only median vertex. Observe that y is a central vertex but is not a median vertex,
since td (y) = 6.
Proposition 7.1.6: Every graph is the median subgraph of some graph.

Proof: Let G be a graph with VG = {v1 , v2 , . . . , vn }. Form a supergraph H as follows: for


each i = 1, 2 . . . , n, join a new vertex wi to vi and to each vertex of G not adjacent to vi . It
is straightforward to show that M (H) = G (see Exercises). ♦

EXERCISES for Section 7.1


7.1.1 Determine the circumference of the given graph.
(a) Complete bipartite graph K3,7 .
(b) Complete bipartite graph Km,n , m ≥ n ≥ 3.
(c) Complete graph Kn .
(d) Hypercube graph Q3 . Can you generalize to Qn ?
(e) Circular ladder graph CL6 . Can you generalize to CLn ?
(f) The Petersen graph.
(g) Circulant graph circ(n : 2).
(h) Circulant graph circ(n : m).
288 Chapter 7 MEASUREMENT AND MAPPINGS

7.1.2 Find the periphery of the given graph.


(a) The graph in Figure 7.1.2.
(b) The Petersen graph.

7.1.3 Prove or disprove: If a graph G is vertex-transitive, then per (G) = G.


7.1.4 Determine the median subgraph and the minimum total distance for the given graph.
(a) Path graph Pn , n ≥ 3.
(b) Cycle graph Cn , n ≥ 4.
(c) Complete graph Kn , n ≥ 3.
(d) Complete bipartite graph Kn,n , n ≥ 3.
(e) Petersen graph.
(f) Hypercube graph Q3 .
(g) Circular ladder graph CLn , n ≥ 4.

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.

7.1.6 Write out a complete proof of Proposition 7.1.2.


7.1.7 Construct a graph whose diameter, girth, and circumference are all equal.
7.1.8 Let G be a graph with at
 least two components. Prove that the edge-complement
graph G has diameter diam G ≤ 2.
7.1.9 Let x and y be any two adjacent vertices in a connected graph. Prove that their
eccentricities differ by at most 1.

7.1.10 Let G be a connected graph with rad (G) ≥ 3. Prove rad G ≤ 2.
7.1.11 Let r and d be positive integers such that r ≤ d ≤ 2r. Construct a graph with radius
r and diameter d. (Hint: Try a graph with exactly one cycle.)
7.1.12 Let vertices u and v be two different neighbors of a vertex w in a tree. Prove that
2ecc(w) ≤ ecc(u) + ecc(v).
7.1.13 Complete the proof of Proposition 7.1.6, by showing that G is the median subgraph
of H.
Section 7.2 Domination in Graphs 289

7.2 DOMINATION IN GRAPHS


terminology: A vertex is said to dominate itself and each of its neighbors.
The applicability of domination theory to such fields as network design and analysis,
linear algebra, and optimization has attracted researchers from a broad range of disciplines.
The origins are ascribed to Berge [Be62] and Ore [Or62]. For a quick survey of domination,
see [HaHe04]. For a comprehensive treatment, see [HaHeS98].
definition: Let G be a graph and let D ⊆ VG . A vertex subset D dominates a graph G
(or is a dominating set) if every vertex of G is in D or is adjacent to at least one vertex
in D.
definition: A minimal dominating set of a graph G is a dominating set such that every
proper subset is non-dominating.
definition: The domination number of a graph G, denoted dom(G) (elsewhere, often
γ(G)), is the cardinality of a minimum dominating set of G.
Example 7.2.1: Figure 7.2.1 shows a graph with minimal dominating sets (solid vertices)
of two different cardinalities. It is straightforward to show that the dominating set on the
left is a minimum one (i.e., there are no 2-vertex dominating sets). Thus, the dominating
number of the graph is 3.

Figure 7.2.1 Two minimal dominating sets for a graph.

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.

Three Applications of Domination


Here are three applications in which the problem of finding a minimum dominating set
occurs naturally. It also has independent mathematical interest for many researchers.
Application 7.2.1: [Be73] Surveillance The minimum number of radar stations needed
to keep a set of strategic locations under surveillance is the domination number of the
associated graph.

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

Application 7.2.3: Chess Consider the problem of placing queens on a chessboard so


that every square is either occupied by a queen or can be reached in one move by a queen.
Determining the minimum number of queens is equivalent to finding the domination number
of a 64-vertex graph, where two vertices are adjacent if and only if their corresponding
squares lie on the same diagonal, same row, or same column. (See Exercises.)

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}.

definition: Let D be a dominating set of a graph, and let v ∈ D. A vertex w is a private


neighbor of v relative to D if v is the only vertex in D that dominates w. That is,
N [w] ∩ D = {v}.
caution regarding terminology: Because a vertex dominates itself, it is possible for a
vertex to be a private neighbor of itself, even if that vertex is not adjacent to itself. In such
a case, a private neighbor might not be a neighbor!
The following facts are immediate consequences of the definition of private neighbor.
Proposition 7.2.1: Let D be a dominating set of a graph.
(i) No vertex of D is a private neighbor of any other vertex of D.
(ii) Vertex v ∈ D is a private neighbor of itself if and only if v is not adjacent to any other
vertex in D.

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.

Proof: We show that VG − D dominates an arbitrary vertex v ∈ VG . If v ∈ VG − D, then we


are done. Alternatively, if v ∈ D, then it follows from Proposition 7.2.2 that vertex v has a
Section 7.2 Domination in Graphs 291

private neighbor w. By Proposition 7.2.1(i), either w = v or w ∈ VG −D. If w ∈ VG −D, then


we are done. If w = v, then v is not adjacent to any vertex in D (by Proposition 7.2.1(ii)),
and since v is not an isolated vertex, it must be adjacent to some vertex in VG − D. ♦
Corollary 7.2.4: Let G be an n-vertex graph with no isolated vertices. Then we have the
upper bound dom(G) ≤ n/2. ♦ (Exercises)

Bounds on the Domination Number


Theorem 7.2.5: [WaAcSa79] Let G be an n-vertex graph. Then
 
n
≤ dom(G) ♦ (Exercises)
1 + δmax (G)

Theorem 7.2.6: [Be73] Let G be an n-vertex graph. Then

dom(G) ≤ n − δmax (G) ♦ (Exercises)

Corollary 7.2.7: [WaAcSa79] Let G be an n-vertex graph. Then

dom(G) ≤ n − κv (G)

where κv (G) is the vertex-connectivity of G (§3.4).

Proof: By Corollary 3.4.6, κv (G) ≤ δmax (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.

definition: An independent dominating set of a graph G is an independent set of


vertices that is also a dominating set of G.
definition: The independent domination number of a graph G, denoted i-dom(G),
is the cardinality of a minimum independent dominating set of G.
Example 7.2.3: The solid vertices of the graph G in Figure 7.2.2 form a minimum inde-
pendent dominating set. Thus, i-dom(G) = 3.

Figure 7.2.2 A minimum independent dominating set.


292 Chapter 7 MEASUREMENT AND MAPPINGS

Proposition 7.2.8: For every graph G, dom(G) ≤ i-dom(G).

Proof: This follows from the definition of independent domination number. ♦


Proposition 7.2.9: Every independent dominating set is a minimal dominating set.

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)

Corollary 7.2.11: For every graph G, i-dom(G) ≤ α(G).

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).

Corollary 7.2.13: Every maximal independent set is a minimal dominating set.

Proof: This is an immediate consequence of Propositions 7.2.9 and 7.2.10. ♦

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.

Figure 7.2.3 A minimum connected dominating set.

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.

Figure 7.2.4 A minimum distance-2 dominating set.

EXERCISES for Section 7.2


7.2.1 Find all minimum dominating sets of the following graph and argue why there are no
smaller ones.
a b c

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.2.12 Draw a graph G such that dk -dom(G) = 4 − k, for k = 1, 2, and 3.


7.2.13 For any integer m ≥ 3, describe how to construct a graph G such that dk -dom(G) =
m + 1 − k, for k = 1, 2, . . . , m.
7.2.14 Let G be a graph with dom(G) ≥ 3. Prove that the diameter of the edge-complement
graph G is at most 2.
7.2.15 Prove Corollary 7.2.4.
7.2.16 Prove Theorem 7.2.5.
7.2.17 Prove Theorem 7.2.6.
7.2.18 Prove Proposition 7.2.10.
Section 7.3 Bandwidth 295

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

bwf (G) = max {|f (u) − f (v)| | uv ∈ EG }

definition: The bandwidth of a graph G is given by

bw(G) = min { bwf (G)| f is a numbering of G}

definition: A bandwidth numbering of a graph G is a numbering f that achieves


bw(G), i.e., bw f (G) = bw(G).
Example 7.3.1: Two numberings, f and g, of the 3-dimensional hypercube Q3 are shown
in Figure 7.3.1. One can show that g is a bandwidth numbering of Q3 , that is, bw(Q3 ) = 4
(see Exercises).

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.1 Two different numberings of the hypercube Q3 .

Application 7.3.1: Electrical Circuit Design We can model an electrical circuit as a


graph, where adjacent vertices in the graph correspond to a pair of nodes in the circuit
that are connected by a single wire. If the nodes of the circuit are to be equally spaced
along a single row, then the left-to-right ordering of the nodes corresponds to a numbering
of the graph, and the bandwidth of that numbering is the length of the longest wire needed.
It follows that the bandwidth of the graph is the smallest possible length of the longest wire
needed among all left-to-right orderings of the nodes.
296 Chapter 7 MEASUREMENT AND MAPPINGS

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

Figure 7.3.2 Two different designs of the hypercube Q3 circuit.

Interpreting Bandwidth in Terms of Adjacency Matrices


The term bandwidth originates from its description in terms of adjacency matrices.
notation: For a given numbering f of a graph G, the adjacency matrix of G whose rows
and columns are ordered according to f is denoted Mf .
Example 7.3.1 continued: The adjacency matrices Mf and Mg for the numberings f
and g from Figure 7.3.1 are shown below. Notice that the 1s in Mf are spread over the
seven diagonals immediately above and the seven immediately below the main diagonal. In
contrast, the 1s in Mg are concentrated in the four diagonals immediately above and the
four immediately below the main diagonal.
   
0 0 0 0 0 1 1 1 0 1 0 1 1 0 0 0

 0 0 0 0 1 0 1 1 


 1 0 1 0 0 1 0 0 


 0 0 0 0 1 1 0 1 


 0 1 0 1 0 0 1 0 

 0 0 0 0 1 1 1 0   1 0 1 0 0 0 0 1 
Mf =   Mg =  

 0 1 1 1 0 0 0 0 


 1 0 0 0 0 1 0 1 


 1 0 1 1 0 0 0 0 


 0 1 0 0 1 0 1 0 

 1 1 0 1 0 0 0 0   0 0 1 0 0 1 0 1 
1 1 1 0 0 0 0 0 0 0 0 1 1 0 1 0

Proposition 7.3.1: Let f be a bandwidth numbering of a graph G. Then every 1 in the


corresponding adjacency matrix Mf lies in the band containing the bwf (G) diagonals above
and the bwf (G) diagonals below that are closest to the main diagonal.
Proof: The result follows immediately from the observation that the (i, j)-entry in any
matrix is in the |i − j|th diagonal above the main diagonal if i < j or the |i − j|th below if
i > j. ♦
Application 7.3.2: Sparse Matrices A sparse matrix is one whose elements are mostly
zeros. Much work has been done to find ways of storing such matrices so that the storage
as well as the performance of matrix operations are efficient. One strategy is to store only
the “band” of diagonals around the main diagonal containing the nonzero elements.
Section 7.3 Bandwidth 297

Some Basic Results and Examples


Proposition 7.3.2: For any positive integer n,
(i) bw(Pn ) = 1.
(ii) bw(Kn ) = n − 1.
(iii) bw(Cn ) = 2. ♦ (Exercises)

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

Figure 7.3.3 A bandwidth numbering of K4,3 .

Proposition 7.3.3: Let H be a subgraph of G. Then bw(H) ≤ bw(G).

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,

bw(H) ≤ bwfˆ(H) ≤ bwf (G) = bw(G) ♦

Characterizing Bandwidth via Powers of the Path Graph


definition: The mth power of graph G, denoted Gm , is the graph having vertex-set
VGm = VG and edge-set EGm = {uv | dG (u, v) ≤ m}.
observation Let hv1 , v2 , . . . , vn i be the vertex sequence of the path graph Pn . Then for
1 ≤ m ≤ n−1, the adjacency matrix Mf of Pnm , where f is the natural numbering f (vi ) = i,
has all 1s on its first m diagonals (above and below the main diagonal) and 0s everywhere
else.
Proposition 7.3.4: For the path graph Pn , bw(Pnm ) = m for 1 ≤ m ≤ n − 1.

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

Some Bounds on the Bandwidth


We close the section with four results, due to Dewdney [ChDeGiKo75], that establish
bounds on the bandwidth, in terms of maximum degree, diameter, chromatic number, and
vertex-connectivity.
Proposition 7.3.7: Let G be a graph with maximum degree δmax (G) = ∆. Then
 

bw(G) ≥
2

Proof: Let f be a bandwidth numbering of G, and let v be a vertex with neighborhood


N (v) = {w1 , w2 , . . . , w∆ }. We may assume that f (w1 ) < f (w2 ) < · · · < f (w∆ ). Then
 

bwf (G) ≥ max {|f (v) − f (w1 )| , |f (v) − f (w∆ )|} ≥
2

whether f (w1 ) < f (v) < f (w∆ ) or not. ♦


Proposition 7.3.8: Let G be a connected n-vertex graph. Then

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

Figure 7.3.4 A numbering based on distance from s.


Section 7.3 Bandwidth 299

The next bound involves the chromatic number of a graph.


review from §6.1:

• 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).

• If H is a subgraph of graph G, then χ(H) ≤ χ(G).

Proposition 7.3.9: For the path graph Pn = hv1 , v2 , . . . , vn i, χ (Pnm ) = m + 1 for 1 ≤ m ≤


n − 1.

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:

• A vertex subset S is a vertex-cut of a connected graph G if G − S is non-connected.


• 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.

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].

EXERCISES for Section 7.3


7.3.1 Calculate the bandwidth of the given graph.
(a) Circular ladder CL3 . (b) Kn × K2 . (c) Km,n , for m, n ≥ 2.

7.3.2 Prove Proposition 7.3.2.


300 Chapter 7 MEASUREMENT AND MAPPINGS

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.

7.3.7 Prove Proposition 7.3.12. (Hint: Use Lemma 7.3.11.)

7.4 INTERSECTION GRAPHS


Suppose that each vertex of a graph is associated with a subset of some set. We can define
two vertices to be adjacent if the cardinality of their intersection exceeds some predetermined
tolerance threshold. The threshold value of 1 corresponds to the family of intersection graphs.
convention for this section: All graphs in this section are assumed to be simple graphs,
even when the modifier simple does not appear in the assertions.

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= ∅}

definition: Let G be a graph with VG = {v1 , v2 , . . . , vn }. Then G is an intersection


graph if there exists a family of sets F = {S1 , S2 , . . . , Sn } such that G ∼ = Ω(F) with the
natural correspondence f (vi ) = Si , i = 1, 2, . . . , n. The family F is called a set represen-
tation of graph G.
notation: If G is an intersection graph with set representation F = {S1 , S2 , . . . , Sn }, then
we typically refer to the vertex-set as {S1 , S2 , . . . , Sn }.
Example 7.4.1: Figure 7.4.1 depicts the cycle graph C4 as an intersection graph with a
set representation given by the family F = {{1, 4}, {1, 2}, {2, 3}, {3, 4}}.

{1, 4} {1, 2}

{3, 4} {2, 3}

Figure 7.4.1 The cycle graph C4 depicted as an intersection graph.

Proposition 7.4.1: [Ma45] Every simple graph G is an intersection graph.

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

Some Special Kinds of Intersection Graphs


definition: A graph G is an interval graph if it is an intersection graph corresponding
to a family of intervals on the real line.

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)

Figure 7.4.2 An interval graph.

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)

Figure 7.4.3 A graph and its line graph.

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

Figure 7.4.4 A subtree graph G and one of its tree representations.

Proposition 7.4.2: A graph is an interval graph if and only if it is an intersection graph


of a family of subpaths of a path. ♦ (Exercises)

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.

Application 7.4.1: Food Webs [Co78] Suppose that a1 , a2 , . . . , an are n animals in an


ecosystem. A food web is a digraph model D of the predator-prey relationship among the
ai s, where the vertex- and arc-sets of D are given by

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.

meadow leaf pussy


willow beetle willow

sandbat
bronze yellow willow
grackle warbler
flea
sawfly beetle
spider
garter
snail frog snake

Figure 7.4.6 The food web in a Canadian willow forest.

Edge Clique Covers and Intersection Graphs


Edge clique covers and set representations for intersection graphs are closely related.
definition: An edge clique cover of a graph G is a family K = {Q1 , Q2 , . . . , Qt } of
complete subgraphs of G such that every edge of G is an edge of at least one of the Qi s,
that is,
EG = EQ1 ∪ EQ2 ∪ . . . EQt
terminology note: Elsewhere in this book, a clique is a maximal complete subgraph, but
to be consistent with the terminology used in intersection graph theory, we do not require
that the complete subgraphs in an edge clique cover be maximal.
Proposition 7.4.4: Let F = {S1 , S2 , . . . , Sn } be a set representation for an intersection
n
S
graph G, and let S = Si . For each x ∈ S, let Qx be the subgraph induced on the vertex
i=1
subset Vx = {Si | x ∈ Si }. Then the family KF = {Qx }x∈S is an edge clique cover of graph
G.
Proof: To show that each Qx is a complete subgraph of G, suppose that vertices Si , Sj ∈ Vx
with i 6= j. Then x ∈ Si ∩ Sj , and, hence, Si and Sj are adjacent in G. Next, let e = Sk Sl
be any edge of G. Then, since Sk and Sl are adjacent, there is at least one x ∈ Sk ∩ Sl , i.e.,
Sk , Sl ∈ Vx . Thus, e ∈ EQx , which shows that KF is an edge clique cover of G. ♦
304 Chapter 7 MEASUREMENT AND MAPPINGS

Proposition 7.4.5: Let K = {Q1 , Q2 , . . . , Qt } be an edge clique cover of a graph G, and


for each v ∈ VG , let Sv = {i | v ∈ VQi }. Then the collection F K = {Sv }v∈VG is a set
representation of graph G, that is, G ∼
= Ω FK .


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. ♦

Characterizing Competition Graphs of Acyclic Digraphs


Initial investigations of competition graphs focused on acyclic digraphs, because food
webs are typically acyclic.
Lemma 7.4.6: Every acyclic digraph contains a vertex with indegree 0.

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

Duality Between Edge Clique Covers and Set Representations


definition: The edge clique cover KF = {Qx }x∈S , defined in Proposition 7.4.4, corre-
sponding to a set representation F of the intersection graph G is called the dual edge
clique cover of F.
definition: The set representation F K = {Sv }v∈VG , defined in Proposition 7.4.5, corre-
sponding to an edge clique cover K of a graph G is called the dual set representation of
K.
notation: Let G be an intersection graph with set representation F and edge clique cover
F
K. Then F (K ) denotes the dual set presentation of the dual edge clique cover of F, and
F
F (K ) denotes the dual edge clique cover of the dual set representation of K.
Proposition 7.4.9: Let G be an intersection graph with set representation F and edge
clique cover K. Then both of the following are true.
F
(i) There is a one-to-one correspondence between the sets in F and the sets in F (K ) .
(ii) There is a one-to-one correspondence between the subgraphs in K and the subgraphs
K
in K(F ) . ♦ (Exercises)

Intersection Number of a Graph


definition: The intersection number of an n-vertex graph G, denoted int(G), is the
minimum cardinality of a set S such that G is the intersection graph of a family F =
{S1 , S2 , . . . , Sn } of subsets of S.
definition: The edge-clique-cover number of a graph G, denoted θe (G), is the smallest
t for which there exists an edge clique cover K = {Q1 , Q2 , . . . , Qt }.
Theorem 7.4.10: [ErGoPo66] For every graph G, int(G) = θe (G).
n
S
Proof: Let S be a smallest set such that S = Si and F = {S1 , S2 , . . . , Sn } is a set
i=1
representation of G (i.e., |S| = int(G)). Then by Proposition 7.4.4, KF is an edge clique
cover of G of size |S|, which shows that int(G) ≥ θe (G). The reverse inequality follows
similarly from Proposition 7.4.5. ♦

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}

definition: A graph G is a p-intersection graph if there exists a family of sets F =


{S1 , S2 , . . . , Sn } such that G ∼
= Ωp (F).
Thus, the 1-intersection graphs are the ordinary intersection graphs.
306 Chapter 7 MEASUREMENT AND MAPPINGS

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}

Figure 7.4.7 A 2-intersection graph.

Proposition 7.4.11: Every graph is a p-intersection graph for all integers p ≥ 1.

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

F̂ = {S1 ∪ {x}, S2 ∪ {x}, . . . , Sn ∪ {x}}

is a family of sets such that G ∼


= Ωp+1 (F̂). ♦

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 )}

definition: An n-vertex graph G is a φ-tolerance intersection graph if there exists a


family F, functions φ and µ, and tolerances ti , i = 1, 2, . . . , n, as defined above, such that
G is isomorphic to the φ-tolerance intersection graph of F with respect to φ, µ, and the ti s.

Some Special Classes of Tolerance Graphs


For many of the classes of tolerance graphs under recent investigation, the function µ
is taken to be the cardinality of a set or the length of an interval, and sometimes, the
tolerances ti are constant or are set equal to µ(Si ). Some of the choices for φ include the
constant, minimum, maximum, sum, and absolute difference functions.
Example 7.4.7: A p-intersection graph of a family F is a φ-tolerance intersection graph,
where µ(S 0 ) = |S 0 | for each S 0 ⊆ S, tolerance ti = µ(Si ) for i = 1, 2, . . . , n, and φ(ti , tj ) = p
for all pairs of tolerances.
Section 7.4 Intersection Graphs 307

definition: A min-tolerance interval graph of a family F = {I1 , I2 , . . . , In } of intervals


on the real line is a φ-tolerance intersection graph, where ti is a positive real number assigned
to interval Ii , i = 1, 2, . . . , n, φ (ti , tj ) = min (ti , tj ), and for any interval J, µ(J) is its length.
Proposition 7.4.12: Every interval graph is a min-tolerance interval graph.
♦ (Exercises)

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

Figure 7.4.8 The cycle graph C4 as a min-tolerance interval graph.

definition: Let F = {S1 , S2 , . . . , Sn } be a family of subsets of a finite set S. An abdiff-


tolerance intersection graph of F is a φ-tolerance intersection graph, where µ(S 0 ) = |S 0 |
for each S 0 ⊆ S, ti is a positive real number assigned to subset Si , i = 1, 2, . . . , n, and
φ (ti , tj ) = |ti − tj |.
Example 7.4.9: Figure 7.4.9 depicts the cycle graph C4 as an abdiff-tolerance graph. Next
to each vertex is its corresponding subset and tolerance.

{a, b, c, e}, 3 {a, b}, 1

{b, c, d}, 3 {c, d}, 1

Figure 7.4.9 The cycle graph C4 as an abdiff-tolerance intersection graph.

definition: Let φ be a symmetric function mapping pairs of nonnegative integers to non-


negative integers. A graph is a φ-tolerance competition graph if it is the φ-tolerance
intersection graph of the family of out-sets of the vertices of some digraph.
308 Chapter 7 MEASUREMENT AND MAPPINGS

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.

EXERCISES for Section 7.4


7.4.1 Draw the interval graph for the intervals (0, 2), (3, 8), (1, 4)(3, 4), (2, 5), (7, 9).
7.4.2 Show that the complete graph Kn is an interval graph for all n ≥ 1.
7.4.3 Show that for all n ≥ 4, the cycle graph Cn is not an interval graph.

7.4.4 Determine the intersection number of the given graph, and justify your answer.

(a) The complete graph Kn (b) The 3-vertex path graph P3

(c) The n-fold self-union nK2 (d) The complete graph K2,3

(e)
x

w v

y z

7.4.5 Prove Proposition 7.4.2.


7.4.6 Prove Proposition 7.4.9.
7.4.7 This problem refers to the proof of Theorem 7.4.8.
(a) Show that the family K of in-sets defined in the first part of the proof is an edge clique
cover that satisfies the labeling condition.
(b) Show that G is the competition graph of the digraph D defined in the second part.

7.4.8 Show that every interval graph is a min-tolerance interval graph.


Section 7.5 Graph Homomorphisms 309

7.5 Graph Homomorphisms


Recall from §2.1 that an isomorphism between two simple graphs is a mapping that
preserves adjacency and nonadjacency. The more general mapping, a graph homomorphism,
preserves adjacency, but not necessarily nonadjacency. This section explores this second type
of mapping.
review from §2.1:
definition: A graph homomorphism f : G → H from a graph G to a graph H is 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). When there is a graph homomorphism f : G → H, we say that
G is homomorphic to H.
definition: A graph isomorphism f : G → H from a graph G to a graph H is a graph
homomorphism (fV : VG → VH , fE : EG → EH ) for which fV and fE are bijections. When
there is a graph isomorphism f : G → H, we say that G is isomorphic to H, denoted
G∼= H.
Theorem 2.1.1 Let G and H be simple graphs. If (fV , fE ) is a graph homomorphism from
G to H, then fV preserves adjacency. Conversely, if fV : VG → VH preserves adjacency, then
there exists a unique function fE : EG → EH , such that (fV , fE ) is a graph homomorphism
from G to H.
notation: The subscripts V and E on f are sometimes omitted when no ambiguity can
result.
Example 7.5.1: Let v0 , v1 , . . . , vn be the successive vertices along a path graph Pn+1 of
length n, and let w0 , w1 , . . . , wn−1 be the successive vertices along an n-vertex cycle graph
Cn . The vertex mapping fV : VPn+1 → VCn given by f (v0 ) = f (vn ) = w0 and f (vi ) = wi for
i = 1, 2, . . . , n − 1 is adjacency-preserving. Thus, if fE : EPn+1 → ECn is its induced edge
mapping, then f = (fV , fE ) is a graph homomorphism from the path graph of length n to
the n-vertex cycle graph. Figure 7.5.1 illustrates the mapping for n = 4.

f(v1) f(v2)
w1 w2
v0 v1 v2 v3 v4 f

w0 w3
f(v0)=f(v4) f(v3)

Figure 7.5.1 A graph homomorphism from P5 to C4 .

Example 7.5.2: A graph homomorphism f : Q3 → P4 is represented in Figure 7.5.2 by


the vertical projection of Q3 downward onto P4 . The shading of the vertices and the features
of the edges further reinforce the imagery.

definition: The image of a graph G under a graph homomorphism f : G → H is the


subgraph of H whose vertex-set is f (VG ) and whose edge-set is f (EG ).
310 Chapter 7 MEASUREMENT AND MAPPINGS

100 101
Q3

000 010 110 111

001 011

f
P4

0 1 2 3

Figure 7.5.2 Mapping the cube graph Q3 to a path of length 3.


Example 7.5.3: Figure 7.5.3 shows a graph homomorphism f from a simple graph to a
non-simple graph. The vertex and edge labels on the codomain graph indicate the preimages
of the functions fV and fE .

x v ab
a b f x d
d uvw
u c w
c

Figure 7.5.3 Mapping a simple graph to a non-simple graph.

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.

Proof: The functions fV : VG → f (VG ) and fE : EG → f (EG ) are clearly onto. ♦

Graph Homomorphisms Via Amalgamation


In light of Proposition 7.5.1, a graph homomorphism becomes a bona fide generalization
of isomorphism when one or both of the vertex and edge mappings are not one-to-one.
When two or more vertices are mapped to the same vertex in the codomain graph, they
may be viewed as being merged into that one vertex. Similarly, edges that get mapped to
the same edge in the codomain are merged into that one edge. These observations motivate
the following definitions of two kinds of amalgamation that provide a different perspective
for graph homomorphisms.
definition: Let G be any graph, and let π = {V1 , V2 , . . . , Vt } be a partition of its vertex-
set VG . The vertex-partition amalgamation of graph G corresponding to partition π is
the transformation of G into a graph G/π that results from merging (amalgamating) all
of the vertices in each cell of the partition.† That is, for each i = 1, 2, . . . , t, the vertices
in subset Vi are merged into a single vertex, generically denoted Vi . Thus, the vertex-set

† 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

Figure 7.5.4 Cycle graph C4 obtained from a vertex-amalgamation of P5 .

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

000 010 110 111

001 011

Q3 / π

0 1 2 3

Figure 7.5.5 A vertex-partition amalgamation of the cube graph Q3 .

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

Figure 7.5.6 A vertex-partition amalgamation based on {{x}, {u, v, w}}.


312 Chapter 7 MEASUREMENT AND MAPPINGS

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,

VGA = VG and EGA = (EG − A) ∪ {e1 e2 · · · es }

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

Figure 7.5.7 A multi-edge amalgamation of A = {a, b}.

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

Figure 7.5.8 Possible results of iterative amalgamation of the graph C3 .


Section 7.5 Graph Homomorphisms 313

Complete Multi-Edge Amalgamation


definition: The complete multi-edge amalgamation of any graph G is the graph that
results from taking each multi-edge and merging its edges into a single edge.

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

Figure 7.5.9 The complete multi-edge amalgamation of the graph Q3 /π.

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. ♦

Mapping by Merging Two Ordinary Edges


Merging any two edges of a graph G requires amalgamating their endpoint sets. If each
of the other vertices and edges of G is mapped to itself, then the resulting transformation
is a graph homomorphism from G onto the transformed graph. The next two examples
illustrate four instances of this kind of transformation.
314 Chapter 7 MEASUREMENT AND MAPPINGS

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 .

Graph Homomorphisms of Paths


A walk of length n in a graph can be regarded as the image of a path of length n under
a graph homomorphism.
Example 7.5.11: Figure 7.5.12 shows a path P of length 6 being mapped to a walk W of
length 6. Each vertex label along walk W indicates the preimage or preimages of the vertex.

Proposition 7.5.3: Every connected graph is the image of a path.

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 >

Figure 7.5.12 Mapping a path of length 6 to a walk of length 6.

Proposition 7.5.4: Let f : G → H be a graph homomorphism of graphs. Then G is


bipartite whenever f (G) is bipartite.

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 . ♦

Mapping Graphs Onto Pseudopaths


definition: A pseudopath of length n consists of a path of length n with one or more
self-loops at one or more of its vertices. (See Figure 7.5.13.)

Figure 7.5.13 A pseudopath of length 5.

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

Figure 7.5.14 Mapping a graph to a pseudopath.

EXERCISES for Section 7.5


7.5.1 Draw all the different isomorphism types of graphs that can be obtained by amalga-
mating exactly two vertices of the given graph.
(a) P3 (b) C5 (c) W5 (d) Q3

(e) K4 − K2 (f) W6 (g) C6 (h) K3,3

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

(e) K4 − K2 (f) W6 (g) C6 (h) K3,3

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

7.6 MODELING NETWORK EMULATION


Sometimes a computational algorithm for some fixed process, such as matrix inversion
or sorting, has been written for one parallel architecture, and there is a subsequent need
to run that process on a computer with a different parallel architecture. Instead of design-
ing, coding, and testing a new program for that different parallel architecture, it may be
simpler to emulate the algorithm written for the first architecture on the second architec-
ture, by means of a graph homomorphism. We briefly discuss graph models for the parallel
architecture of a computer and how parallel algorithms are executed.

Graph Models for Parallel Computers


Application 7.6.1: Parallel Computer Architectures In a parallel architecture for a
computer, a large number of identical processors are the nodes of a network, and some
miniaturized wires connect each processor to a few others. For purposes of coordinating
all the processors in a distributed algorithm, interconnection network models are highly
symmetrical. Input is fed to some of the processors at the start of the execution. During the
execution, there is a two-phase alternating pattern of computation and communication. In
the computational phase, each of the identical processors uses its input to calculate some
output. In the communication phase, some bits may be passed from a processor to some of
its neighbors and may also be received from some neighbors. Ultimately, the correct answer
is collected as output of some of the processors.

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

Figure 7.6.1 Small-scale model of a hypercube parallel computer.

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

Figure 7.6.2 Finding the minimum on a hypercube.

A Model for Porting Parallel Algorithms


Application 7.6.2: Emulating an Interconnection Network It is sometimes necessary to
execute a distributed algorithm on a parallel computer whose processors and network con-
figuration differ from those on which the distributed algorithm is based, via a process called
emulation. In an emulation, the network model for which the distributed algorithm was
written is called the guest, and the network model on which it is to be executed is called the
host. The process of porting the algorithm from the guest parallel computer to the host par-
allel computer is modeled by a graph mapping from the guest network to the host network.
This terminology has been adopted also by the graph-theoretic model.

terminology: For a graph mapping f : G → H in the context of network emulation, the


domain graph G is called the guest, and the codomain graph H is called the host.
Sometimes the network emulation model requires a more general graph mapping, called a
semilinear graph mapping, which we define later in this section. The terminology introduced
in the next subsection applies to this more general graph mapping as well.

Load and Congestion of a Graph Mapping


Although a host processor can use its memory to do the job of more than one guest
processor, it emulates just one of them at a time. The number of guest processors a host
processor must emulate is called its load. Load delays a computation, compared to how long
it would have taken on the guest network itself.
definition: The load at a vertex v of the host H of a graph mapping f : G → H is the
number of vertices in the preimage fV−1 ({v}).
definition: The load of a graph mapping f : G → H is its maximum load at any
vertex, taken over all vertices of the host H.
Moreover, if two neighboring host processors are emulating more than one guest proces-
sor apiece, then only one message at a time can traverse the wire between those processors,
lest two messages interfere. While emptying the message queues for all the competing mes-
sages, more delay occurs. The number of guest wires that must be emulated by a given host
wire is called its congestion.
320 Chapter 7 MEASUREMENT AND MAPPINGS

definition: The congestion on an edge e of the host H of a graph mapping f : G → H


is the number of edges in the preimage fE−1 ({e}).
definition: The congestion of a graph mapping f : G → H is its maximum congestion
at any edge, taken over all edges of the host H.
Remark: The load and the congestion of an isomorphism are both equal to 1.
Example 7.6.2: The graph homomorphism f : Q3 → P4 introduced in the previous section
(Example 7.5.2) is shown in Figure 7.6.3. This graph mapping has load 1 at vertices v0 and
v3 and load 3 at vertices v1 and v2 . Thus, the load of f is equal to 3. There is congestion 3
on edges e1 and e3 and congestion 6 on edge e2 . Thus, the mapping f has congestion 6.

100 101
Q3

000 010 110 111

001 011

f
P4

0 1 2 3

Figure 7.6.3 A graph homomorphism with load 3 and congestion 6.

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.

Proposition 7.6.1: Let f : G → H be any graph homomorphism from a guest graph G


to a host graph H. Then the load of f is at least d|VG |/|VH |e, and the congestion of f is at
least d|EG |/|EH |e.
Section 7.6 Modeling Network Emulation 321

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.

Proof: This is an immediate consequence of the incidence-preservation property of a graph


homomorphism. ♦

Corollary 7.6.3: Let f : Km,n → H be a graph homomorphism to a graph with no


self-loops, and let u and v be vertices in different parts of the bipartition of Km,n . Then
f (u) 6= f (v).

Proof: This follows from the contrapositive of Proposition 7.6.2. ♦


Example 7.6.4: Minimizing Load and Congestion Consider the bipartite graph
K3,3 , with 6 vertices and 9 edges, as guest and the bipartite graph K2,3 , with 5 vertices
and 6 edges, as host. Then the load of any graph homomorphism is at least d6/5e = 2,
and the congestion is at least d9/6e = 2, by Proposition 7.6.1. Figure 7.6.5 depicts a graph
homomorphism that achieves these lower bounds. The number of strikes on an edge of the
host indicates its congestion.

f(0)=f(4) f(2)
0 2 4

1 3 5
f(1) f(3) f(5)

Figure 7.6.5 A homomorphism f : K3,3 → K2,3 with load 2 and congestion 2.

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.6 A homomorphism f : K3,3 → K4 with load 2 and congestion 4.


322 Chapter 7 MEASUREMENT AND MAPPINGS

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)

Figure 7.6.7 A homomorphism g : K3,3 → K4 with load 3 and congestion 3.

The following proposition shows that 3 is the minimum possible congestion for a graph
homomorphism from K3,3 to K4 .

Proposition 7.6.4: The congestion of a graph homomorphism f : K3,3 → K4 is at least


3.

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. ♦

Semilinear Graph Mappings


In an interconnection network, a processor at a 2-valent vertex can be regarded as a relay
station, since whatever other computation it may have performed could just as well have
been accomplished by the next processor. This insight motivated the introduction of a more
general form of graph mapping, under which, in effect, an edge of the guest (domain) graph
can be mapped to a path in the host (codomain). In a network emulation, the intermediate
vertices along that path simply relay the information to the next node. This dilating of an
edge into a path introduces an additional source of delay in the emulation, but it sometimes
compensates for this cost by facilitating the construction of mappings that would otherwise
be impossible.
notation: PH denotes the set of all paths in a graph H.
definition: A semilinear graph mapping f : G → H is a pair of functions

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

Example 7.6.6: Figure 7.6.8 illustrates a semilinear graph mapping from P2 to P4 , in


which the only edge of P2 is mapped to a path that spans P4 . The two vertices of P2 are
mapped to the first and last vertices of P4 . One may think of the single edge of the domain
graph P2 as being stretched into a path of length 3 in the codomain P4 .

u e v

f(u) f(v)
!#######
#"########
$
f(e)

Figure 7.6.8 A length-1 path semilinearly mapped to a length-3 path.

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.

Proof: This is an immediate consequence of the definitions. ♦


The following example demonstrates that dilation of edges permits the existence of
semilinear graph mappings between graphs where no graph homomorphisms are possible.
Example 7.6.7: There is no graph homomorphism C5 → C4 , since the host C4 is bipartite
but the guest C5 is not. Having a semilinear mapping, as illustrated in Figure 7.6.9, is
regarded as much better than having no mapping. Each of the edges a, b, c, and d is
mapped to one edge of the cycle. Edge e is stretched so that it wraps around the entire
4-cycle, exactly as shown. Thus, edge e has dilation 4, and the semilinear graph mapping f
has dilation 4.

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.

Example 7.6.8: In any graph homomorphism f : C5 → C3 , there is a 3-path in the domain


C5 whose three edges are mapped to different edges of the codomain C3 . Moreover, the other
two edges of C5 are mapped to the same edge of C3 , as illustrated in Figure 7.6.10. (Observe
that the more natural wraparound, with f (d) = f (a) and f (e) = f (b), is not linear.) Thus,
the smallest possible congestion for a graph homomorphism f : C5 → C3 is 3.
324 Chapter 7 MEASUREMENT AND MAPPINGS

e a f(e)
f f(c)
f(d) f(a)
d b
c
f(b)

Figure 7.6.10 A graph homomorphism f : C5 → C3 with congestion 3.

However, this congestion can be reduced to 2 with a semilinear graph mapping


h : C5 → C3 , illustrated in Figure 7.6.11, in which one of the edges is dilated so that C5 can
be wrapped twice around C3 .

e a
h h(c)
h(a)
d b h(d)
c
h(b)
h(e)

Figure 7.6.11 A semilinear graph mapping h : C5 → C3 with congestion 2.

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. ♦

Bandwidth from the Perspective of Graph Mappings


In §7.3, we defined bandwidth in terms of vertex labelings and their corresponding ad-
jacency matrices. We now reintroduce the concept from the perspective of graph mappings.
definition: The bandwidth of a graph G is the minimum dilation of any vertex-bijective
semilinear graph mapping of G to a path graph.
Remark: Any vertex-bijective semilinear graph mapping f : G → Pn of an n-vertex graph
G to the n-vertex path Pn can be specified by a standard 0-based integer labeling of VG . The
dilation of the mapping f : G → Pn will then be equal to the maximum difference between
the labels on the endpoints of an edge, taken over all edges. Thus, the graph-mapping and
the numbering-of-a-graph perspectives of bandwidth do indeed coincide.
This suggests the following approach to calculating the bandwidth of a graph with a high
level of symmetry. For each of the essentially different (up to symmetry) standard vertex
labelings of the given graph, calculate the dilation, as described above. The minimum of
these dilations is the bandwidth of the given graph.
Section 7.6 Modeling Network Emulation 325

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.10: [Bandwidth of the path Pn ] Assigning the labels 0, . . . , n in sequence to


the vertices of Pn corresponds to a mapping of dilation 1. Thus, the bandwidth of Pn is
equal to 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

2n-1 2n 2n-3 2n-2


2n-1

Figure 7.6.12 A vertex-bijective labeling of Cn with dilation 2.

EXERCISES for Section 7.6


7.6.1 Specify a graph homomorphism from the graph G to the graph H that has the pre-
scribed load and congestion.

v1 v2 u0
d2
d0 e1 u2
v0 d5 d4 e0 e3 u3
d1 e2
e4
d3 u1
v3 v4
G H

(a) Load 2 and congestion 2. (b) Load 2 and congestion 3.

(c) Load 2 and congestion 4. (d) Load 4 and congestion 4.

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 .

(c) C6 → K4 − K2 . (d) CL4 → 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 .

(c) C6 → K4 − K2 . (d) CL4 → 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.8 Prove that the bandwidth of K2,4 equals 3.


7.6.9 To prove that the cube Q3 has bandwidth equal to 4, first show that 4 is a lower
bound, and then exhibit a labeling that realizes that bound.
7.6.10 To prove that the wheel W2n−1 has bandwidth equal to n, first show that n is a
lower bound, and then exhibit a labeling that realizes that bound. (See Exercise 7.3.6.)
7.6.11 Calculate the bandwidth of the given graph.
(a) Circular ladder CL3 . (b) Kn × K2 .

(c) Km,n , for m, n ≥ 2. (d) Kn × Km .

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 SUPPLEMENTARY EXERCISES


7.7.1 Construct a graph whose center and median subgraph have no vertices in common,
or argue why no such graph exists.
7.7.2 Construct a graph whose periphery and median subgraph have a vertex in common,
or argue why no such graph exists.
7.7.3 Let G be a connected graph and s an integer such that rad(G) ≤ s ≤ diam(G). Prove
that there is a vertex v with eccentricity s.
n
7.7.4 Let s and n be any two integers such that 1 ≤ s ≤ 2. Show that there exists an
n-vertex connected graph G with dom(G) = s.
7.7.5 Let G be a graph with at least two components. Prove that the edge-complement
graph G has dom(G) ≤ 2.
7.7.6 Find a largest minimal dominating set of the 10-vertex path graph P10
7.7.7 Prove or disprove: For every tree, the domination number equals the cardinality of a
minimum vertex cover.
7.7.8 Determine the bandwidth of the tripartite graph K2,3,5 .
7.7.9 Let G = G1 ∪ G2 ∪ · · · ∪ Gt be the disjoint union of t graphs. Express the bandwidth
bw (G) in terms of the bandwidths bw (G1 ), bw (G2 ), . . . , bw (Gt ).
7.7.10 Show that for any positive integer m, there exists a graph whose intersection number
equals m.
7.7.11 Draw a 6-vertex, 12-edge simple graph with bandwidth = 3, or prove that none
exists.
7.7.12 Draw a 3-regular, 8-vertex simple graph with bandwidth = 3.
7.7.13 Calculate the bandwidth of the Petersen graph.
7.7.14 Prove that 5 is the bandwidth of the wheel W9 .
7.7.15 Calculate bw (K4,8 ). (Hint: consider diameter.)
7.7.16 Calculate the bandwidth of the given graph.
(a) CL4 (b) CL5 (c) CL2n (d) CL2n+1

(e) ML4 (f) ML5 (g) ML2n (h) ML2n+1

(i) W4 (j) W5 (k) W2n (l) W2n+1

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

block of a graph G: a maximal connected subgraph that contains no cut-vertices of G.

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].

competition graph of a digraph D: the intersection graph of the family of out-sets of


the vertices of D.
competition graph: a graph G that is (isomorphic to) the competition graph of some
digraph D.
—, φ-tolerance: a special kind of tolerance graph.
congestion on an edge of the codomain of a graph mapping: the number of edges
mapped to that edge.

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.

diameter of a graph G, denoted diam(G): the maximum of the vertex eccentricities in


G or, equivalently, the maximum distance between two vertices in G, i.e.,
diam(G) = max ecc(x) = max d(x, y).
x∈VG x,y∈VG

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

dominating set in a graph G: a vertex subset D ⊆ VG such that every vertex of G is in


D or is adjacent to at least one vertex in D.
—, connected: a dominating set D such that the subgraph induced on D is connected.
—, distance-k for an integer k ≥ 1: vertex subset D such that for all v ∈ VG − D, there
exists x ∈ D such that d(v, x) ≤ k.

—, independent: an independent set of vertices that is also a dominating set of G.


—, minimal: a dominating set such that every proper subset is non-dominating.
domination number of a graph G: the cardinality of a minimum dominating set of G;
denoted dom(G) (elsewhere, often γ(G)).

—, connected, denoted c-dom(G); the cardinality of a minimum connected dominating


set of G.
—, distance-k, denoted dk -dom(G): the cardinality of a minimum distance-k dominat-
ing set of G.
—, independent, denoted i-dom(G): the cardinality of a minimum independent dom-
inating set of G.
dual edge clique cover of a set representation F for an intersection graph G: the edge
clique cover KF defined in Proposition 7.4.4.
dual set representation of an edge clique cover K of a graph G: the set representation
F K defined in Proposition 7.4.5.
dumbbell graph: the graph that has two vertices and one proper edge joining them, plus
a self-loop at each vertex.
eccentricity of a vertex v in a graph G, denoted ecc(v): the distance from v to a vertex
farthest from v, i.e., ecc(v) = max d(v, x).
x∈VG

edge clique cover of a graph G: a family K = {Q1 , Q2 , . . . , Qt } of complete subgraphs


of G such that every edge of G is an edge of at least one of the Qi s, i.e., EG =
EQ1 ∪ EQ2 ∪ · · · ∪ EQt .
food web a digraph model D of the predator-prey relationship among the n animals
a1 , a2 , . . . , an in an ecosystem, where the vertex- and arc-sets of D are given by

VD = {a1 , a2 , . . . , an }
AD = {(ai , aj ) | ai preys on aj }

geodesic between vertices u and v: a u-v path of minimum length.

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 ).

incidence-preservation property: see graph homomorphism.


independence number of a graph G, denoted α(G): the cardinality of a largest indepen-
dent set of G.
independent (vertex) set in a graph G: a vertex subset S such that no two vertices in
S are adjacent.
induced numbering fˆH on a subgraph H of a standard labeled graph G: the result of
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 .
in-set In(v) of a vertex v in a digraph D with vertex-set VD and arc-set AD : the vertex
subset In(v) = {w ∈ VD | (w, v) ∈ AD }.
intersection graph of a family of subsets F = {S1 , S2 , . . . , Sn }, denoted Ω(F): 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= ∅}

—, p- of a family of subsets F = {S1 , S2 , . . . , Sn } of a finite set S, denoted Ωp (F): 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}

intersection graph: a graph G with vertex-set VG = {v1 , v2 , . . . , vn } such that there


exists a family of sets F = {S1 , S2 , . . . , Sn } such that G ∼
= Ω(F) with the natural
correspondence f (vi ) = Si , i = 1, 2, . . . , n.

—, abdiff-tolerance: a special kind of tolerance graph.


—, min-tolerance: a special kind of tolerance graph.
—, p-: a graph G such that there exists a family of sets F = {S1 , S2 , . . . , Sn } such that
G∼= Ωp (F).
intersection number of a graph G, denoted int(G): the minimum cardinality of a set
S such that G is the intersection graph of a family of subsets of S.
interval graph: a graph G that is an intersection graph of a family of intervals on the real
line.

—, min-tolerance: a generalization of an interval graph.


332 Chapter 7 MEASUREMENT AND MAPPINGS

isomorphism between two simple graphs G and H: a structure-preserving vertex bijection


f : VG → VH .
line graph of a graph G: the graph L(G) that has a vertex for each edge of G, and such
that two vertices in L(G) are adjacent if and only if the corresponding edges in G have
a vertex in common.

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:

• d(x, y) ≥ 0 for all x, y ∈ VG .


• d(x, y) = 0 if and only if x = y.
• d(x, y) = d(y, x) for all x, y ∈ VG . (symmetry property)
• d(x, y) + d(y, z) ≥ d(x, z) for all x, y, z ∈ VG . (triangle inequality)

multi-edge amalgamation corresponding to a subset A = {e1 , e2 , . . . , es } ⊆ EG of edges


having the same endpoints: the graph GA that results from merging (amalgamating)
all of the edges in A into a single edge generically denoted e1 e2 · · · es .
—, complete: the graph that results from taking each multi-edge and merging its edges
into a single edge.

neighborhood of a vertex v in a graph G:


—, open, denoted N (v): the set of all the neighbors of vertex v.
—, closed, denoted N [v]: the set containing vertex v and all its neighbors, i.e., N [v] =
N (v) ∪ {v}.

numbering: see vertex-labeling.


out-set Out(v) of a vertex v in a digraph D with vertex-set VD and arc-set AD : the
vertex subset Out(v) = {w ∈ VD | (v, w) ∈ AD }.
path representation of a graph G: a family F = {P1 , P2 , . . . , Pn } of subpaths of a path
P such that G is the intersection graph of F.

peripheral vertex v of a graph G: a vertex with maximum eccentricity, i.e., ecc(v) =


diam(G).
periphery of a graph G, denoted per (G): the subgraph induced on the set of peripheral
vertices of G.

mth power of graph G: the graph Gm having vertex-set VGm = VG and edge-set EGm =
{uv | dG (u, v) ≤ m}.
Glossary 333

private neighbor of a vertex v relative to a dominating set D of a graph G: a vertex


w ∈ VG such that v is the only vertex in D that dominates w. That is, N [w] ∩ D = {v}.
pseudopath of length n: a spanning path of length n with one or more self-loops at one
or more of its vertices.
radius of a graph G, denoted rad (G): the minimum of the vertex eccentricities, i.e.,
rad (G) = min ecc(x).
x∈VG

semilinear graph mapping f : G → H: a pair of functions 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).
set representation of a graph G: A family of subsets F such that G is the intersection
graph of F.
Steiner distance of a vertex subset U in a connected graph G: the number of edges in
a Steiner tree for U ; denoted sd (U ).
Steiner tree for a vertex subset U in a connected graph G: a smallest tree subgraph of G
that contains all the vertices of U .
structure-preserving vertex bijection between two simple graphs G and H: a vertex
bijection f : VG → VH that preserves adjacency and nonadjacency, i.e., for every pair
of vertices in G,

u and v are adjacent in G ⇔ f (u) and f (v) are adjacent in H

subtree graph: a graph G that is the intersection graph of a family F of subtrees


{T1 , T2 , . . . , Tn } 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.
symmetry property of a metric on the vertex-set of a graph: see metric.
total
Pdistance of a vertex v in a connected graph G, denoted td (v): the quantity td (v) =
w∈VG d(v, w).

tolerance graph: a generalization of intersection graphs.


tree representation of a graph G: a family F = {T1 , T2 , . . . , Tn } of subtrees of a tree
T such that G is the intersection graph of F.
triangle inequality of a metric on the vertex-set of a graph: see metric.

vertex-connectivity of a connected graph G, denoted κv (G): the minimum number of


vertices whose removal can either disconnect G or reduce it to a 1-vertex graph.
vertex-cut of a connected graph G: a vertex subset S such that G − S is non-connected.
vertex-labeling, (1-based) standard, of an n-vertex graph G: a bijection f : VG →
{1, 2, . . . , n}.
vertex-partition amalgamation of a graph G corresponding to a partition π =
{V1 , V2 , . . . , Vt } of its vertex-set VG : the transformation of G into a graph G/π that
results from merging (amalgamating) all of the vertices in each cell of the partition.
Chapter 8

ANALYTIC GRAPH THEORY

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

8.1 RAMSEY THEORY


A theorem of the British logician Frank Ramsey in 1930 launched what is now called
Ramsey theory. The classical Ramsey puzzle, a simple case of that theorem, is to prove that
in any group of six persons, there are either three mutual acquaintances or three mutual
non-acquaintances.
Theorem 8.1.1: In any simple graph G with six vertices, either there are three mutually
adjacent vertices or there are three mutually nonadjacent vertices. Equivalently, either the
graph G or its edge-complement G contains a K3 -subgraph.

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.

Fundamental Properties of Ramsey Numbers


Proposition 8.1.2: r(s, t) = r(t, s), for all s, t ≥ 1.

Proof: The alternative definition is clearly symmetric in the roles of s and t. ♦


Proposition 8.1.3: r(s, 1) = 1, for all s ≥ 1.

Proof: The edge-complement of a nontrivial graph always contains K1 . ♦


Proposition 8.1.4: r(s, 2) = s, for all s ≥ 1 .

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

Theorem 8.1.5: [Erdös and Szekeres, 1935]

(a) For all s, t ≥ 2,


r(s, t) ≤ r(s − 1, t) + r(s, t − 1)

(b) Moreover, if r(s − 1, t) and r(s, t − 1) are both even, then

r(s, t) < r(s − 1, t) + r(s, t − 1)

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

r(s, t) ≤ r(s − 1, t) + r(s, t − 1) (by Theorem 8.1.5(a))


   
(s − 1) + t − 2 s + (t − 1) − 2
≤ + (by the induction hypothesis)
(s − 1) − 1 s−1
   
s+t−3 s+t−3
= +
s−2 s−1
 
s+t−2
= (by Pascal’s recursion) ♦
s−1

Ramsey Number Calculations


Determining values of the Ramsey numbers r(s, t) for 3 ≤ s ≤ t has proved to be quite
difficult, except for the first few. In fact, the Ramsey numbers for only nine such pairs are
known; they are shown in Table 8.1.1. Theorem 8.1.1 established r(3, 3) = 6. The next two
results calculate r(3, 4) and r(3, 5), and a third result produces an upper bound for r(4, 4).
338 Chapter 8 ANALYTIC GRAPH THEORY

t=3 4 5 6 7 8 9
s=3 6 9 14 18 23 28 36
4 18 25

Table 8.1.1: The known Ramsey numbers r(s, t) for 3 ≤ s ≤ t.

Proposition 8.1.7: r(3, 4) = 9.


Proof: Since the Ramsey numbers r(2, 4) = 4 and r(3, 3) = 6 are both even, Theorem
8.1.5(b) implies the upper bound
r(3, 4) ≤ r(2, 4) + r(3, 3) − 1 = 9
For the reverse inequality, observe that the 8-vertex circulant graph G = circ(8; 1, 4), shown
in Figure 8.1.1, has neither a K3 -subgraph nor an independent set of four vertices (i.e., G
has no K4 -subgraph). ♦
7 0
6 1

5 2
4 3

Figure 8.1.1 The circulant graph circ(8; 1, 4).

Proposition 8.1.8: r(3, 5) = 14.


Proof: The upper bound for r(3, 5) follows from Theorem 8.1.5(a) and Propositions 8.1.4
and 8.1.7. In particular,
r(3, 5) ≤ r(2, 5) + r(3, 4) = 5 + 9 = 14
For the reverse inequality, consider the 13-vertex circulant graph G = circ(13; 1, 5), shown
in Figure 8.1.2 below. G clearly has no K3 -subgraph. If it had a set S of five mutually
nonadjacent vertices, then two of them would have to be within distance two of each other.
By symmetry, we may take these two vertices to be 0 and 2. This excludes vertices 1, 3, 5,
7, 8, 10, and 12, leaving only 4, 6, 9, and 11 as possible members of S. But at most one of
the vertices 4 and 9 can be in S, because they are adjacent. Likewise, at most one of 6 and
11 can be in S. ♦
0
12 1
11 2

10 3

9 4

8 5
7 6

Figure 8.1.2 The circulant graph circ(13; 1, 5).


Section 8.1 Ramsey Theory 339

Proposition 8.1.9: r(4, 4) ≤ 18.

Proof: By Theorem 8.1.5(a) and Propositions 8.1.2 and 8.1.7, we have

r(4, 4) ≤ r(3, 4) + r(4, 3) = 9 + 9 = 18

Ramsey Numbers for Arbitrary Subgraphs


definition: For arbitrary simple graphs H1 and H2 , the Ramsey number r(H1 , H2 ) is
the minimum number n such that for every n-vertex simple graph G, either H1 is a subgraph
of G or H2 is a subgraph of G.
Proposition 8.1.10: The Ramsey number r(H1 , H2 ) exists for any two simple graphs H1
and H2 .

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. ♦

Theorem 8.1.12: [Chvátal, 1977] Let T be a tree with t vertices. Then

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

Thus, G is not (t − 1)-colorable. It follows that G must contain a critically t-chromatic


subgraph H (see §6.1). By Theorem 6.1.22, we have δmin (H) ≥ t−1, and hence, by Theorem
3.1.9, it follows that H contains tree T . Therefore, G contains T , which establishes the upper
bound. ♦

Generalization to Arbitrarily Many Edge-Partition Classes


definition: The (generalized) Ramsey number r(G1 , G2 , . . . , Gk ) for any collection of
simple graphs G1 , G2 , . . . , Gk is the minimum number n such that in any edge k-coloring of
a complete graph Kn , at least one of the subgraphs Gj has all of its edges in color class j.
In 1955, Greenwood and Gleason established the following result, which is still, as of
this writing, the only nontrivial generalized Ramsey number known for the case in which
all the graphs G1 , . . . , Gk are complete. A proof may be found in [GrGl55].
Theorem 8.1.13: [Greenwood and Gleason, 1955] r(3, 3, 3) = 17.

Remark: For other results, conjectures, variations, and references in Ramsey theory, see
[Fa04] and [GrRoSp90].

EXERCISES for Section 8.1


8.1.1 Use Theorem 8.1.5 and Corollary 8.1.6 to calculate upper bounds for r(3, 6). Which
gives the tighter bound?
8.1.2 Prove that r(3, 6) ≥ 17 by considering circ(16; 1, 5, 8).
8.1.3 Use Exercise 8.1.1 to calculate an upper bound for r(3, 7).
8.1.4 Prove that r(3, 7) ≥ 21 by considering circ(21; 1, 5, 9).
8.1.5 Use Theorem 8.1.5 and Corollary 8.1.6 to calculate upper bounds for r(4, 5). Which
gives the tighter bound?
t2 +t
8.1.6 Prove that r(3, t) ≤ 2 , by using Corollary 8.1.6.
t2 +t
8.1.7 Prove that r(3, t) ≤ 2 , for t ≥ 3, by using Theorem 8.1.5 inductively.
t2 +3
8.1.8 Prove that r(3, t) ≤ 2 , for t ≥ 3 and t odd, by using Exercise 8.1.7.
t2 +3
8.1.9 Prove that r(3, t) ≤ 2 , for t ≥ 3 and t odd, by using Theorem 8.1.5(b) and Exercise
8.1.8.
8.1.10 Prove that r(3, 3, 3) ≤ 17.
Section 8.2 Extremal Graph Theory 341

8.2 EXTREMAL GRAPH THEORY


Extremal graph theory is primarily concerned with determining the maximum number
of edges an n-vertex simple graph may contain without having a given property. This is an
area of graph theory in which many of the proofs are long and computationally involved.
We are focusing here on easily proved results.
definition: Within a given domain of graphs, a property P is said to hold for every n-
vertex simple graph with sufficiently many edges if there is a number M such that every
n-vertex graph in that domain with at least M edges has property P.
definition: Within a given domain of graphs, a graph property P that holds for every
n-vertex simple graph with sufficiently many edges, for every sufficiently large number n of
vertices, is said to hold for every sufficiently large graph in the domain.

Extremal Graphs and Extremal Functions


definition: Within a given domain of simple graphs, an n-vertex simple graph with m
edges is an extremal graph for a property P if it does not have property P, but every
n-vertex simple graph with more than m edges does have property P.
definition: Within a given domain of simple graphs, an extremal function for a property
P is the function ex(n, P) whose value is the number of edges in an extremal graph for that
property.
Example 8.2.1: Consider the property P of having at least one cycle. An n-vertex graph
with n − 1 edges has no cycles if and only if it is a tree. Moreover, every n-vertex graph
with at least n edges has a cycle. Thus, the extremal graphs for having a cycle are the trees,
and the extremal function is ex(n, P) = n − 1.
Example 8.2.2: Consider the property P of non-planarity. An n-vertex graph with at least
3n − 5 edges is non-planar (see §4.5). To construct a planar n-vertex graph with 3n − 6
edges, join an (n−2)-cycle to two new vertices, as shown in Figure 8.2.1. Thus, the extremal
function is ex (n, P) = 3n − 6.

Figure 8.2.1 The graph 2K1 + C5 is extremal for non-planarity.

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

terminology: A graph is said to be F -free if it contains no subgraph isomorphic to a given


graph F . In particular, Turan’s problem is about largest K3 -free graphs. More generally,
if F is a family of graphs, then we may describe a graph as F-free, if it is free of every
member of F.
notation: For a given family F of graphs, ex(n, F) denotes the maximum number of
edges possible in an n-vertex graph that is F-free. If F contains only one graph F , then we
commonly write ex(n, F ).
j 2k
Turán showed that ex(n, K3 ) = n4 . Theorems 8.2.1 and 8.2.2 establish the upper and
lower bounds, respectively.
Theorem
j k 8.2.1: [Turán, 1941] Let G be a simple graph with n vertices and at least
n2
4 + 1 edges. Then G contains a subgraph isomorphic to K3 .
j 2k
Proof: Using n = 3 and n = 4 as base cases for an induction, we have n4 + 1 = 3 and 5,
respectively. Thus, graph G is isomorphic to K3 or to K4 − K2 , so in both cases, G contains
k k vertices, with 3 ≤ k < n and
K3 . Assume that the assertion is true for all graphsj with
n2
n ≥ 5, and let graph G have n vertices and at least 4 + 1 edges.
Let u and v be adjacent vertices in G. Then the subgraph H = G − {u, v} has n − 2
vertices. If there is some vertex w of G − {u, v} that is adjacent to both u and v, then the
subgraph of G induced on {u, v, w} is isomorphic to K3 if there is no such vertex w, then
at most n − 2 edges join u and v to H, and hence, the number of edges in H is at least.
 2  2
(n − 2)2
  
n n − 4n + 4
+ 1 − (n − 1) = +1= +1
4 4 4

By the induction hypothesis, H contains a K3 subgraph. ♦


review from §6.1: An r-partite graph is a loopless graph whose vertices can be parti-
tioned into r independent sets, which are sometimes called the partite sets of the partition.
definition: A complete r-partite graph has an edge between two vertices if and only if
they are in different partite sets.
definition: The Turán graph Tn,r is the complete r-partite graph on n vertices whose
partite sets are as nearly equal in cardinality as possible.

Figure 8.2.2 The Turán graph T7,3 .


Section 8.2 Extremal Graph Theory 343

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

k or n is even, then a (d − 1)-regular graph on n vertices is K1,d -free and has


If d is odd
j
n(d−1)
2 edges. Otherwise, add a maximum matching to a (d − 2)-regular n-vertex graph
to obtain a K1,d -free graph whose number of edges is
 
n(d − 2) n − 1 nd − n − 1 nd − n
+ = =
2 2 2 2

which establishes the lower bound and completes the proof. ♦

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

which has a maximum on the interval [1, n − 1] when r = 1 and r = n − 1. ♦


The graph in Figure 8.2.3 illustrates Proposition 8.2.4 with an extremal graph on six
vertices for connectedness. The next proposition, generalizes the construction to give ex-
tremal graphs for k-connectedness. Figure 8.2.4 gives extremal graphs on six vertices for
2-connectedness and 3-connectedness.

Figure 8.2.3 A six-vertex extremal graph for connectedness.

Figure 8.2.4 Six-vertex extremal graphs for 2- and 3-connectedness.

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,


1 ≤ k ≤ n. If k = 1, H is 1-connected by Proposition 8.2.4. If k = n, then H is a complete


graph on n + 1 = k + 1 vertices, and so is k-connected. Suppose 1 < k < n, and let v be
a vertex of minimum degree in graph H. Since k < n, EH is not a complete graph. Thus,
degH (v) ≤ n − 1. Also, degH (v) ≥ k, since
   
n n
≥ |EH−v | = |EH | − degH (v) = + k − degH (v)
2 2

Therefore,

|EH−v | = |EH | − degH (v)


 
n
≥ + k − (n − 1)
2
   
n n−1
= − +k
2 1
 
n−1
= +k (by Pascal’s Identity)
2
This implies, by the induction hypothesis, that the n-vertex graph H − v is k-connected.
Therefore, since degH (v) ≥ k, graph H must also be k-connected, which completes the
proof. ♦

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

which establishes the desired contradiction. ♦


n−1

Proposition 8.2.7: A simple n-vertex graph G with at least 2 +2 edges is Hamiltonian.

Proof: Let u and v be two nonadjacent vertices of G. Then,

deg(u) + deg(v) = |EG | − EG−{u,v}


    
n−1 n−2
≥ +2 −
2 2
 
n−2
= +2 by Pascal’s Identity
1
=n

By Ore’s Theorem (Theorem 8.2.6), graph G is Hamiltonian. ♦


Corollary 8.2.8: The graph G obtained by joining a new vertex to one vertex of a complete
graph Kn−1 is extremal for Hamiltonian traversability. (See Figure 8.2.5.)

Proof: The graph G is non-Hamiltonian, and it has n−1



2 + 1 edges. By Proposition 8.2.7,
the result of adding one more edge to G would be a Hamiltonian graph. ♦

Figure 8.2.5 A 6-vertex extremal graph for Hamiltonian traversability.


Section 8.2 Extremal Graph Theory 347
n−1

Corollary 8.2.9: A simple n-vertex graph with at least 2 + 1 edges contains an open
Hamiltonian path.

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 .

Proof: In view of Corollary 8.2.9, the graph K1 ∪ Kn−1 is extremal. ♦

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

Proof: Parts (i) and (ii) are obvious.


(iii) The complete bipartite graph Kbn/2c,dn/2e has chromatic number 2. It is extremal for
chromatic number 3, by Turán’s theorem, since its number of edges is
j n k l n m  n2 
· =
2 2 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.3 Prove that your list in Exercise 8.2.2 is complete.


8.2.4 Calculate ex(n, K4 ) and ex(n, K5 ), by using the fact that the Turán graphs are ex-
tremal.
8.2.5 Calculate ex(4, 2K2 ), and draw the extremal graphs.

8.2.6 Calculate ex(5, 2K2 ), and draw the extremal graphs.


8.2.7 Calculate ex(6, 2K2 ), and draw the extremal graphs.
8.2.8 Calculate ex(6, 3K2 ), and draw the extremal graphs.
8.2.9 Calculate the extremal number for the property of having radius 1.

8.2.10 Calculate the extremal number for the property of having diameter 2.
348 Chapter 8 ANALYTIC GRAPH THEORY

8.3 RANDOM GRAPHS


A random graph is a graph in which the number of vertices is specified and the adja-
cencies between vertices are determined in some random way. The vertices are usually con-
sidered to have the standard labeling 1, 2, . . . , n. The predominant concern is large graphs,
with many vertices.
The theory of random graphs uses probabilistic methods to establish the existence of
certain kinds of graphs and to determine some properties of “almost all” graphs in various
families. Whereas we were concerned in §8.2 with extremal numbers for various properties,
here we focus mainly on what happens on average, i.e., on what the expected properties are.
It is assumed throughout this section that the reader is reasonably familiar with the
basic concepts of elementary probability, including the uniform and binomial distributions,
expectation, and conditional probability.
notation: We use pr(E) to denote the probability of an event E.

Labeled Graph Isomorphism


definition: An isomorphism f : G → H of two labeled graphs is a label-preserving
isomorphism if for every vertex v ∈ VG , the vertex f (v) ∈ VH has the same label as v.
In the theory of random graphs, we usually distinguish between two standard labeled
graphs, unless there is a label-preserving isomorphism between them.

The Probabilistic Method of Proof


As an illustration of the probabilistic method, we consider the problem of calculating a
lower bound on diagonal Ramsey numbers, that is, Ramsey numbers of the form r(s, s).
We recall from §8.1 that r(3, 3) = 6 and that r(4, 4) = 18.
 
Theorem 8.3.1: For every integer s ≥ 3, we have r(s, s) > 2s/2 .
n
  
Proof: Let n = 2s/2 . The complete graph Kn has 2 edges. Thus, the space of all
n
red-blue edge-colorings of a standard-labeled Kn contains 2( 2 ) different red-blue graphs.
Our objective is to show that at least one of them contains no monochromatic Ks , that is,
neither a red Ks nor a blue Ks . It is sufficent to show that the probability that a random
red-blue graph in the space has no monochromatic Ks is less than 1.
Toward that objective, suppose that each edge ij is red with probability 1/2, and that we
take the edge colors to be mutually independent. Then each of the red-blue graphs occurs
n
with probability 2−( 2 ) .
For any fixed subset L ⊂ {1, . . . , n} of cardinality s, let EL be the event that the complete
subgraph induced by the vertex-set L is either a red Ks or a blue Ks . Then
 (2s)  (2s)  (2s)
1 1 1 s
pr(EL ) = + =2 = 21−(2)
2 2 2
Section 8.3 Random Graphs 349

Let Es denote the union of all


 such events EL where L ranges over all subsets of cardinality
s. Since there are exactly ns such subsets, it follows that
 
n s
· 21−(2)
X
pr(Es ) ≤ pr(EL ) =
s
n! s2 s
.= · 21− 2 + 2
(n − s)! · s!
ns 1− s2 + s
< ·2 2 2
s!
s2
22 s2 s s
≤ · 21− 2 + 2 (since n ≤ 2 2 )
s!
1 s
= · 21+ 2
s!
< 1 (since s ≥ 3) ♦

As a second illustration of a probabilistic proof, we consider a problem on directed


graphs.
definition: A tournament is a complete graph in which each edge is assigned a direction.
Theorem 8.3.2: [Szele, 1943] For every positive integer n, there is an n-vertex tourna-
ment with at least n!2−(n−1) (directed) Hamiltonian paths.
Proof: Let D be an n-vertex tournament whose edge-directions are randomly assigned,
with probability 1/2 in each direction. For each ordering τ of the vertices 1, . . . , n, let
(
1 if τ represents a Hamiltonian path in D
hτ (D) =
0 otherwise

Thus, the sum over all orderings τ ,


X
h(D) = hτ (D)
τ

is the number of Hamiltonian paths in tournament D.


The probability that a given ordering τ corresponds to a Hamiltonian path in D equals
2−(n−1) , and, hence, the expected value E(hτ (D) equals 2−(n−1) . It follows that the expected
number of Hamitonian paths in a random tournament D is
!
X X
E(h(D)) = E hτ (D) = E(hτ (D)) = n!2−(n−1)
τ τ

Since n!2−(n−1) is the average number of Hamiltonian paths in an n-vertex tournament,


there must be at least one tournament whose number of Hamiltonian paths is at least
n!2−(n−1) . ♦

Models for Random Graphs


definition: A model for random graphs is a probability space whose elements are
graphs.
terminology: The phrase random graph can refer to the model for random graphs itself
or to one of the elements in that probability space.
350 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.

The Erdös-Rényi Random Graph


definition: For 0 ≤ m ≤ n2 , the uniform random graph G(n, m), also called the Erdös-


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

Figure 8.3.1 Probabilities of isomorphism types of graphs in G(5, 3).

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

Expected Number of Copies of Ks in G(n, m)


Calculating the expected number of copies of the complete subgraph K3 in a random
graph G(n, m) in the proof of Theorem 8.3.3 involves all of the steps needed for the general
complete subgraph Ks . The following definition simplifies the representation of summations
over arbitrary sets and is used in that calculation.
definition: The Iverson truth function is
(
1 if assertion A is true
true(A) =
0 if assertion A is false
4 
Example 8.3.2: Since there are (42) = 15 random graphs in G(4, 4), each has probability
1
15 . The number of copies of K3 in a given graph G is
X
true(uv, uw, vw ∈ EG )
u,v,w∈VG
Section 8.3 Random Graphs 351

Thus, the expected number of copies of K3 in a G(4, 4) graph equals


1 X X
true(uv, uw, vw ∈ EG )
15
G∈G(4,4) u,v,w∈VG

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

Figure 8.3.2 The two isomorphism types of 4-vertex, 4-edge graphs.

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

Interchanging the order of summation, we obtain


 n−1 X X
2 true(uv, uw, vw ∈ EG )
m
u,v,w∈{1,...,n} G∈G(4,4)

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

Expected Number of k-cycles


Similar calculations enable us to determine the expected number of copies of any fixed
graph H in a random graph G ∈ G(n, m). As an illustration, we consider the case in which H
is a k-cycle. We count unoriented k-cycles, since a vertex sequence and its reverse represent
the same k-cycle subgraph. The proof uses the elementary combinatorial result that the
number of circular permutations of a k-element set is (k − 1)!.
Theorem 8.3.5: The expected number of k-cycles in a random graph G ∈ G(n, m) is
     n−1
(k − 1)! n m
· · · 2
2 k k k
Proof: Any given labeled k-cycle C uses k edges. Thus, the number of graphs in G(n, m)
that contain C is  n 
2 −k
m−k
The number of different labeled k-cycles in Kn is
   
1 n (k − 1)! n
(k − 1)! =
2 k 2 k
where the division by 2 results from counting unoriented cycles. It follows that the total
number of k-cycles occurring among the graphs in G(n, m) is
   n 
(k − 1)! n 2 −k
·
2 k m−k
Thus, the expected number of k-cycles in a random graph in G(n, m) is
 n−1  n
m! n2 − m !
  n    
2 − k
 
(k − 1)! n 2 −k 2 (k − 1)! n !
= · ·
(m − k)! n2 − m ! n
  
2 k m−k m 2 k 2 !
n
  
−k !
 
(k − 1)! n m!
= · · 2 n
2 k (m − k)! 2 !
     n−1
(k − 1)! n m
= · · · 2 ♦
2 k k k

The Bernoulli Random Graph


definition: The Bernoulli random graph G(n,  p) is the probability space of all labeled
simple graphs on n vertices, where each of the n2 possible edges occurs with probability p.
n
Thus, the probability of each m-edge graph is pm (1 − p)( 2 ) .
−m
Section 8.3 Random Graphs 353
5 
Example 8.3.3: Since there are (33) possible 5-vertex, 3-edge graphs, the probability that
a random graph in G(5, p) has three edges is
 
10 3
p (1 − p)7
3

For p = 12 , this probability equals 120


1024 = 15
128 .

Bernoulli Space as a Union of Erdös-Rényi Spaces


n
( 2 ) labeled simple n-vertex graphs is partitioned into
n
 The Bernoulli space G(n, p) of 2
2 + 1 different Erdös-Rényi spaces
  
n
G(n, m) | m = 0, . . . ,
2
n 
where each G(n, m) has (m 2) labeled simple graphs. Here, the probability distribution in
G(n, m) is the conditional distribution of G n, 21 restricted to the space of n-vertex, m-edge


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


graph is the only element).


Example 8.3.5: To calculate the probability in G(4, p) that a random graph is a 3-edge
path graph P4 , we observe that there are 4! 2 = 12 P4 s in K4 . Since it has 3 edges, each
possible P4 occurs with probability p3 (1 − p)3 . Thus, the net probability is 12p3 (1 − p)3 . In
the Erdös-Rényi space G(4, 3), the 63 = 20 graphs fall into three isomorphism types. There
are four cases of K3 ∪ K1 , four cases of K1,3 , and 12 cases of P4 . Thus, the probability of
P4 is 12/20 = 3/5.

Some Properties of Almost Every Graph


definition: A graph property P is said to hold for almost every graph if the probability
that a random graph G ∈ G(n, p) has property P has the limiting value of 1 as n → ∞, for
p > 0.
Theorem 8.3.6: Almost every graph contains K3 .
Proof: In a random graph G ∈ G(n, p), select n3 disjoint triples (i.e., size-3 subsets) of
 

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}

Applying L’Hôpital’s Rule, we see that for p > 0,


 
n
lim (1 − p2 )n−2 = 0
n→∞ 2

which finishes our proof. ♦


Theorem 8.3.10: Almost every graph is connected.

Proof: This is an immediate consequence of Proposition 8.3.9. ♦


The following generalization of Proposition 8.3.9 enables us to strengthen Theorem
8.3.10 to higher orders of connectedness.
Proposition 8.3.11: Let r, s, and t be nonnegative integers. In almost every graph, for
any r-subset U = {u1 , . . . , ur } of vertices and any s-subset V = {v1 , . . . , vs } disjoint from
U , there is a t-subset W = {w1 , . . . , wt }, disjoint from both U and V , such that every vertex
wj ∈ W is adjacent to every vertex of U and nonadjacent to every vertex of 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

whose limit is 0 as n → ∞ for p > 0. ♦


Theorem 8.3.12: For k > 0, almost every graph is k-connected.

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}

The result follows, since this limit is 0 as n → ∞ or p > 0. ♦

Some Statistical Properties of Random Graphs in G(n, p)


Theorem 8.3.13: For a random graph G ∈ G(n, p), the number of edges has mean µ and
standard deviation σ given by
  s  
n n
u(|EG |) = p · and σ(|EG |) = p(1 − p) ·
2 2

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


and standard deviation. ♦


n
Corollary 8.3.14: For a random graph G ∈ G(n, p), σ(|EG |) ≤ √
2 2
.

Proof: For p such that 0 ≤ p ≤ 1, we have p(1 − p) ≤ 41 . Thus, by Theorem 8.3.13,


s   r 2
n n n
σ(|EG |) = p(1 − p) · ≤ = √
2 8 2 2

EXERCISES for Section 8.3


8.3.1 Draw all six isomorphism types of 5-vertex, 4-edge simple graphs. Calculate the prob-
ability of each type in G(5, 4).
8.3.2 Using Exercise 8.3.1, calculate the probability that a random graph in G(5, 4) contains
a K3 .
8.3.3 Use Theorem 8.3.3 to calculate the expected number of copies of K3 in a random
graph in G(5, 4). (Compare to Exercise 8.3.2.)
8.3.4 Calculate the expected number of copies of the bipartite graph K3,3 in a random
graph G ∈ G(n, m).
8.3.5 Calculate the expected number of vertices of degree 3 or more in a random graph in
G(5, 4). (Hint: This is the same as the expected number of copies of K1,3 .)
8.3.6 Calculate the probability that a random graph in G(5, 5) is the 5-cycle C5 .
8.3.7 Calculate the probability that a random graph in G(5, 21 ) is the 5-cycle C5 .
8.3.8 Prove the remark immediately after Theorem 8.3.3.
8.3.9 Prove that almost every graph is non-planar.
356 Chapter 8 ANALYTIC GRAPH THEORY

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.3.12 Prove Theorem 8.3.7, that almost every graph contains Ks .


8.3.13 Use Proposition 8.3.11 to prove that for any d > 0, almost every graph has minimum
degree at least d.

8.4 SUPPLEMENTARY EXERCISES


8.4.1 Prove that r(K3 , K1,3 ) > 6.
8.4.2 Prove that r(K1,3 , C4 ) = 6.
8.4.3 Calculate r(C4 , C4 ).
8.4.4 Use Theorems 8.2.1 and 8.2.3 to prove that r(K3 , K1,3 ) ≤ 7.
8.4.5 The proof of Theorem 8.2.3 calls for a (d − 1)-regular graph on n vertices, when d is
odd or n is even. Specify such a graph.
8.4.6 Prove that if m and n are both even, then r(K1,n , K1,m ) ≤ m + n − 1.
8.4.7 Draw a 6-vertex graph that does not contain K3 and whose complement does not
contain the 3-edge path P4 .
8.4.8 Calculate as tight an upper bound as you can for the Ramsey number r(5, 5).
8.4.9 Prove that ex(5, C4 ) = 6.
8.4.10 Prove that ex(5, C5 ) = 8.
8.4.11 Let G be a 6-vertex, 8-edge simple graph. Prove that G contains a 4-edge path
P 4, for these cases: (a) δmax (G) = 5; (b) δmax (G) = 4; (c) δmax (G) = 3. Conclude that
ex(6, P4 ) = 7. (Hint: Let vertex u have maximum degree in G. If any two of its neighbors
are joined, then at each neighbor, there starts a 3-edge-path within the closed neighborhood
N (u).)
8.4.12 For n ≥ 3, let t(n) be the smallest number such that there exists a K3 -free, simple,
n-vertex, t(n)-edge graph G(n) such that joining any two nonadjacent vertices of G(n)
creates a K3 . Establish a formula for the function t(n).
8.4.13 Calculate the expected number of copies of K2,3 in a random graph in G(n, m).
8.4.14 Calculate the expected number of copies of CL3 in a random graph in G(n, m).
8.4.15 Calculate the expected number copies of the circulant graph circ(8 : 1, 4) in a random
graph in G(n, m).
Glossary 357

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

label-preserving isomorphism; an isomorphism f : G → H of two labeled graphs such


that for every vertex v ∈ VG , the vertex f (v) ∈ VH has the same label as v.
model for random graphs: a probability space whose elements are graphs.
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.
partite sets: see multipartite graph.
Ramsey number r(s, t) for positive integers s and t: 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.
—, diagonal: a Ramsey number r(s, s).
—, for arbitrary subgraphs H1 and H2 , denoted r(H1 , H2 ): the minimum number
n such that for every n-vertex simple graph G, either H1 is a subgraph of G or H2 is a
subgraph of G.
358 Chapter 8 ANALYTIC GRAPH THEORY

—, generalized, denoted r(G1 , G2 , . . . , Gk): for any collection of simple graphs


G1 , G2 , . . . , Gk , the minimum number n such that in any edge k-coloring of a com-
plete graph Kn , at least one of the subgraphs Gj has all of its edges in one color class
j.
random graph: either the model for random graphs itself or one of the elements in that
probability space.

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

GRAPH COLORINGS AND SYMMETRY

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

9.1 AUTOMORPHISMS OF SIMPLE GRAPHS


The concept of graph automorphism was introduced in §2.2. For convenience, its defini-
tion is presented below.
review from §2.1 and §2.2:
• A graph homomorphism f : G → H from a graph G to a graph H is 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). That is, if u and v are adjacent vertices, f (uv) =
f (u)f (v).
• A graph isomorphism f : G → H from a graph G to a graph H is a graph
homomorphism (fV : VG → VH , fE : EG → EH ) for which fV and fE are bijections.
When there is a graph isomorphism f : G → H, we say that G is isomorphic to H,
denoted G ∼
= H.
• Let G and H be simple graphs. A bijection f : VG → VH gives a graph isomorphism if
and only if f preserves both adjacency and nonadjacency (that is, if f is structure-
preserving).
• An isomorphism from a graph G to itself is called an automorphism.
notation: The set of automorphisms of a graph G is denoted Aut(G), and the corre-
sponding sets of vertex-permutations and of edge-permutations are denoted AutV (G) and
AutE (G), respectively.

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

review from §2.2


• The action of the automorphism group Aut(G) on a graph G partitions VG into
vertex orbits. That is, the vertices u and v are in the same orbit if there exists
an automorphism π such that π(u) = v. Similarly, Aut(G) partitions EG into edge
orbits.
• A graph G is vertex-transitive if all the vertices are in a single orbit. Similarly, G
is edge-transitive if all the edges are in a single orbit.
Remark: In this chapter, permutations are represented in disjoint-cycle form (introduced
in §2.2). Permutation groups and abstract groups are discussed in Appendix A.4.
Example 9.1.1: The graph K1,3 , shown below, has six automorphisms, and the vertex-
and edge-permutation groups corresponding to Aut(K1,3 ) are given by

AutV (K1,3 ) = {(u)(v)(w)(x), (x)(u v w), (x)(u w v), (x)(u)(v w),


(x)(v)(u w), (x)(w)(u v)}

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

Figure 9.1.1 The graph K1,3 .


The vertex-orbits are {u, v, w} and {x}. The only edge-orbit is {a, b, c}. Therefore, K1,3 is
edge-transitive, but not vertex-transitive.
Remark: Figure 9.1.1 gives a drawing of K1,3 whose geometric symmetry captures all of
the automorphisms of that graph. However, this is not always possible. The Petersen graph
has no such drawing, as shown in Example 2.2.4.

Automorphism Groups of Some Other Simple Graphs


The methods used above to determine Aut(K1,3 ) are now applied to calculating the
automorphism groups of some other graphs.
Example 9.1.2: Aut(Kn ) Each of the n! permutations on the vertex-set of Kn is
structure-preserving, because every pair of vertices is joined by an edge. As illustrated
in Figure 9.1.2, a permutation of vertices determines a permutation of edges. Thus, every
vertex-permutation specifies a different automorphism of Kn .

u v
π π V (u) π V (v )
e πE ( e )

Figure 9.1.2 Automorphism action on an edge and its endpoints.


362 Chapter 9 GRAPH COLORINGS AND SYMMETRY

The complete graph K4 can be represented as the 1-skeleton of a regular tetrahedron in


Euclidean 3-space. All 24 automorphisms of K4 can be realized by rotations and reflections of
a regular tetrahedron. To generalize this geometric viewpoint to larger values of n, represent
the complete graph Kn as the 1-skeleton of a regular n-simplex in Euclidean n-space. Then
all n! automorphisms can be realized by combinations of rotations and reflections of a
regular n-simplex.

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.

Example 9.1.4: Aut(Wn ) A geometric representation of the n-spoked wheel graph Wn


can be constructed by placing a vertex at the center of a regular n-gon in the plane, and
joining it to every vertex of the n-gon, as illustrated for n = 5 in Figure 9.1.4. All of
its automorphisms can be realized as rotations and reflections of the n-gon. For instance,
rotation 72◦ clockwise corresponds to the automorphism of W5 whose vertex-permutation is
(t)(u v w x y) and whose edge-permutation is (a b c d e)(f g h i j). Also, reflection through
the vertical axis of symmetry corresponds to the automorphism whose vertex-permutation
is (t)(u)(v y)(w x) and whose edge-permutation is (a e)(b d)(c)(f i)(g h)(j). Thus, the
wheel graph Wn has n rotations and n reflections, for a total of 2n automorphisms, except
when n = 3. In the special case W3 ∼= K4 , in which the hub vertex has the same degree as
the rim vertices, there are 24 automorphisms.

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.

EXERCISES for Section 9.1


9.1.1 Write the vertex-permutation and the edge-permutation for every automorphism of
the graph shown. Also list the vertex-orbits and the edge-orbits.
u u
(a) (b) a a
u u v v w w
a a b b c c d d
b bw wx x y y
v v

(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)

9.1.3 Prove Theorem 9.1.1.


9.1.4 How many automorphisms are in the group Aut(K1,4 )?

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?

9.2 EQUIVALENCE CLASSES OF COLORINGS


The symmetry of a graph G has a substantial effect on how we determine the number
of different vertex-colorings and edge-colorings. What we actually count is the number of
equivalence classes of its vertex- and edge-colorings, induced by the automorphism group
Aut(G), and this section gives a precise description of these equivalence classes.

Coloring a Set Subject to the Action of a Permutation Group


Counting equivalence classes of graph colorings lies within the general context of counting
equivalent colorings of a set acted upon by a permutation group.
definition: A k-coloring of a set Y is a mapping f from Y onto the set {1, 2, . . . , k}, in
which the value f (y) is called the color of y. Any k-coloring of Y is also called a coloring.
definition: A (≤k)-coloring of a set Y is a coloring that uses k or fewer colors, formally
a mapping f from Y onto any set {1, 2, . . . , t} with t ≤ k.
notation: The set of all (≤k)-colorings of the elements of a set Y is denoted Colk (Y ).
Proposition 9.2.1: Let Y be a set. Then |Colk (Y )| = k |Y | .
Proof: This is a direct application of the Rule of Product, a familiar counting principle in
elementary discrete mathematics (see Appendix A.3). ♦
definition: Let P = [P : Y ] be a permutation group acting on a set Y , and let f and g
be (≤k)-colorings of the objects in Y . Then the coloring f is P-equivalent to the coloring
g if there is a permutation π ∈ P such that g = f π, that is, if for every object y ∈ Y , the
color g(y) is the same as the color f (π(y)).

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 π.

Induced Permutation Actions


In Example 9.2.1, we saw how the permutations acting on the three vertices of C3 induced
another action on the set of eight vertex-(≤2)-colorings. More generally, a permutation group
acting on a set of objects also acts on the set of colorings of those objects, as we now show.
Proposition 9.2.2: Let P = [P : Y ] be a permutation group acting on a set Y . Let
f ∈ Colk (Y ) be a (≤k)-coloring of Y , and let π ∈ P be a permutation in P. Then the
composition f π of permutation π followed by coloring f is a coloring in Colk (Y ).

Proof: The composition f π is a coloring of Y because it assigns to each object y ∈ Y


whatever color f assigns to the object π(y). ♦
Corollary 9.2.3: Let P = [P : Y ] be a permutation group acting on a set Y , and let
π ∈ P . Then the mapping πY C : Colk (Y ) → Colk (Y ) defined by

πY C : (f ) = f π, for every coloring f ∈ Colk (Y )

is a permutation on the set Colk (Y ).

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)

Figure 9.2.2 Correspondence of permutations and induced permutations.

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.

Equivalent Colorings of a Graph G under Aut(G)


If the symmetries of a graph are ignored, then counting vertex- or edge-colorings is
trivial; using k or fewer colors, there are k |VG | vertex-colorings and k |EG | edge-colorings (by
Proposition 9.2.1). However, taking symmetry into account, by counting orbits of colorings,
is more complicated.
terminology: Colk (VG ) is sometimes called the full set of vertex-(≤k)-colorings of a
graph G, and Colk (EG ) the full set of edge-(≤k)-colorings.

definition: Let G be a graph with automorphism group Aut(G). Equivalent vertex-


colorings are vertex-colorings that are AutV (G)-equivalent, and equivalent edge-
colorings are edge-colorings that are AutE (G)-equivalent.
Thus, equivalent vertex-colorings are in the same AutV (G)-orbit, and equivalent edge-
colorings are in the same AutE (G)-orbit.
notation: The set of all AutV (G)-orbits (coloring classes of Colk (VG )) is denoted
{Colk (VG )}AutV (G) . Similarly, {Colk (EG )}AutE (G) denotes the set of all AutE (G)-orbits
of Colk (EG ).
368 Chapter 9 GRAPH COLORINGS AND SYMMETRY

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.

Figure 9.2.3 Two equivalent vertex-colorings of the graph K4 − K2 .

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.4 Two equivalent edge-colorings of the graph K4 − K2 .

Counting Vertex- and Edge-Coloring Orbits One by One


For a small graph and a small number of colors, it is possible to count the orbits of
vertex- and edge-colorings by drawing a list of representatives of those classes. Using graph
automorphism invariants like vertex degree simplifies this kind of counting.
Example 9.2.4: An automorphism on the graph K4 − K2 must either fix the two 2-valent
vertices or swap them, and it must either fix the two 3-valent vertices or swap them. Thus,
Aut(K4 − K2 ) has the following representations as a group of vertex-permutations and as
a group of edge-permutations.†

Symmetry π ∈ AutV (G) π ∈ AutE (G)


identity (u)(v)(w)(x) (a)(b)(c)(d)(e)
refl. thru vert. axis (u)(w)(v x) (e)(a b)(c d)
refl. thru horiz. axis (v)(x)(u w) (e)(a b)(b d)
180◦ rotation (v w)(v x) (e)(a d)(b c)

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.

Figure 9.2.5 The AutV (K4 − K2 )-orbits of Col2 (VK4 −K2 ) .


† The reader familiar with group theory will notice that the group Aut(K − K ) is abstractly isomorphic
4 2
to Z4 × Z2 .
Section 9.2 Equivalence Classes of Colorings 369

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 ).

Elementary Application of Symmetries in Itemizing Colorings


As the size of the graph and the number of colors increase, it becomes progressively less
practical to count orbits by ordinary itemization. However, systematic exploitation of graph
symmetries often reduces the work.
Example 9.2.5: A systematic approach to counting the AutV (P5 )-orbits (coloring classes)
of vertex-(≤2)-colorings of the path graph P5 may begin with the observation that there is
only one vertex-(≤2)-coloring with all vertices white. There are three coloring classes with
four white vertices and one black, depending on whether the black vertex is at an end, next
to an end, or in the middle. There are six coloring classes with three white and two black,
as shown in Figure 9.2.7.

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

Example 9.2.7: The number of (non-equivalent) edge-(≤3)-colorings of P5 can be derived


from the number of edge-(≤2)-colorings. We begin by calculating the number of edge-3-
colorings. The three different edge colors are depicted by bold, plain, and dashed edges.
Figure 9.2.8 shows the six kinds of edge-3-colorings of P5 with the color bold used twice.

Figure 9.2.8 Six of the non-equivalent edge-3-colorings of P5 .

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

If equivalences were ignored, the total would be 34 = 81.

EXERCISES for Section 9.2


9.2.1 For the given graph G:
i. Group the full set of vertex-(≤2)-colorings into AutV (G)-orbits, as in Figure 9.2.5.
ii. Determine the number of AutV (G)-orbits of the full set of vertex-(≤3)-colorings. Item-
ize by inventory as in Example 9.2.7.
iii. Determine the number of AutE (G)-orbits of the full set of edge-(≤2)-colorings. Itemize
by inventory as in Example 9.2.6.

(a) K3 (b) P4

(c) K1,3 (d) K2,3

(e) K5 − K2 (f) CL3

(g)
Section 9.3 Burnside’s Lemma 371

9.3 BURNSIDE’S LEMMA


There is a mathematical principle whose application permits quick calculation of the
number of orbits under the action of a permutation group. It is commonly called Burnside’s
lemma, although it was first published by Frobenius. To state and prove Burnside’s lemma,
some additional terminology is helpful.
We illustrate the definitions and results in this section using the basic actions of Aut(G)
on VG and EG . However, we will apply Burnside’s lemma (in §9.5) to the induced actions
of Aut(G) on the sets Colk (VG ) and Colk (EG ).

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.

Symmetry π ∈ AutV (G) u


identity ε = (u)(v)(w)(x)
refl. thru vert. axis π1 = (u)(w)(v x) v x
refl. thru horiz. axis π2 = (v)(x)(u w)
180◦ rotation π3 = (u w)(v x)
w

In AutV (K4 − K2 ), the stabilizers are as follows:

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

In AutE (K4 − K2 ), the stabilizers are as follows:

Stab(a) = Stab(b) = Stab(c) = Stab(d) = {ε}


Stab(e) = {ε, π1 , π2 , π3 }
372 Chapter 9 GRAPH COLORINGS AND SYMMETRY

Fixed-Point Set of a Permutation


definition: Let P = [P : Y ] be a permutation group, and let π ∈ P . The fixed-point set
of the permutation π is the subset Fix(π) = {y ∈ Y | π(y) = y}.
Thus, Fix(π) consists of the objects of Y appearing as 1-cycles in the disjoint-cycle form of
π.
terminology: For a given automorphism π on a graph, the fixed-vertex-set and fixed-
edge-set are the fixed-point sets of πV and πE , respectively.
Example 9.3.3: The vertex-permutations in AutE (K4 −K2 ) have the following fixed-point
sets
u
Fix((u)(v)(w)(x)) = {u, v, w, x}
Fix((u)(w)(v x)) = {u, w} v x
Fix((v)(x)(u w)) = {v, x}
Fix((u w)(v x)) = ∅
w

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

Fix((e)(a c)(b d)) = {e} c d

Fix((e)(a d)(b c)) = {e}

Relationships Involving Stabilizers


The next three lemmas are needed for the proof of Burnside’s lemma.
Lemma 9.3.1: Let P = [P : Y ] be a permutation group. Then
X X
|Stab(y)| = |Fix(π)|
y∈Y π∈P

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

Lemma 9.3.2: Let P = [P : Y ] be a permutation group and y ∈ Y . Then

|P |
|Stab(y)| =
|orbit(y)|

Proof: Suppose that orbit(y) = {y = y1 , y2 , . . . , yn } and that, for j = 1, . . . , n, Pj is the


subset of permutations of P that map object y to object yj . Then the subsets P1 , P2 , . . . , Pn
partition the permutation group P , and P1 = Stab(y).
For j = 1, . . . , n, let πj be any permutation such that πj (y) = yj . Then the rule π 7→ πj ◦ π
(composition with πj ) is a bijection from P1 to Pj , which implies that |Pj | = |P1 | =
|Stab(y)|, for j = 1, . . . , n.
Since each of the n partition cells P1 , P2 , . . . , Pn of group P has cardinality |Stab(y)|, it
follows that n · |Stab(y)| = |P |. But n = |orbit(y)|, which completes the proof. ♦
Example 9.3.7: Analysis of AutV (K4 −K2 ) continues.

Symmetry π ∈ AutV (G) u


identity ε = (u)(v)(w)(x)
refl. thru vert. axis π1 = (u)(w)(v x) v x
refl. thru horiz. axis π2 = (v)(x)(u w)
180◦ rotation π3 = (u w)(v x)
w

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 .

Example 9.3.8: Analysis of AutE (K4 − K2 ) continues.

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

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

Lemma 9.3.3: Let P = [P : Y ] be a permutation group with n orbits. Then


X 1
=n
|orbit(y)|
y∈Y

Proof: Suppose that Y1 , . . . , Yn are the orbits. Then Y = Y1 ∪ · · · ∪ Yn . It follows that


n X
X 1 X 1
=
|orbit(y)| j=1 |orbit(y)|
y∈Y y∈Yj
n
X X 1
=
j=1 y∈Yj
|Yj |
 
n
X 1 X
=  1
j=1
|Yj |
y∈Yj
n
X 1
= |Yj |
j=1
|Yj |
n
X
= 1
j=1

=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

partition reciprocals of cell sizes

Figure 9.3.1 Reciprocals of cell sizes of a partition.


Section 9.3 Burnside’s Lemma 375

Proof of Burnside’s Lemma


Theorem 9.3.4: [Burnside’s Theorem] Let P = [P : Y ] be a permutation group with
n orbits. Then
1 X
n= |Fix(π)|
|P |
π∈P

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

=n (by Lemma 9.3.3)


Direct Application of Burnside’s Lemma


The most powerful applications of Burnside’s lemma are not to counting vertex orbits
or edge orbits, but rather, to counting induced equivalence classes, for which purpose they
require the use of auxiliary results and techniques, which are the focus of the rest of the
chapter. However, a direct orbit-counting application of Burnside’s lemma to a permutation
group P = [P : Y ] would proceed as follows:
1. the values of |Fix(π)| are added over all π ∈ P ;
2. the resulting sum is divided by |P |.
The following two examples apply the direct method to counting vertex-orbits and edge-
orbits.
Example 9.3.10: AutV (K4 − K2 ) has four automorphisms. The sum of the sizes of their
fixed-point sets, previously calculated in Example 9.3.5, is
X
|Fix(π)| = 4 + 2 + 2 + 0 = 8
y∈P

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

EXERCISES for Section 9.3


9.3.1 For the vertex-permutation group of the indicated graph:
i. Determine the stabilizers of all objects.
ii. Determine the fixed points of all permutations.
iii. Determine the number of orbits.
iv. Confirm Lemma 9.3.1.
v. Confirm Lemma 9.3.2.
vi. Confirm Lemma 9.3.3.
vii. Confirm Burnside’s lemma.

(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

9.3.2 For the edge-permutation group of the indicated graph:


i. Determine the stabilizers of all objects.
ii. Determine the fixed points of all permutations.
iii. Determine the number of orbits.
iv. Confirm Lemma 9.3.1.
v. Confirm Lemma 9.3.2.
vi. Confirm Lemma 9.3.3.
vii. Confirm Burnside’s lemma.

(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

9.4 CYCLE-INDEX POLYNOMIAL OF A PERMUTATION


GROUP
The cycle-index polynomial is a polynomial that displays the cycle structure of a permu-
tation group. What is commonly considered to be the most important principle in enumer-
ative graph theory is that substituting the value k into the cycle-index polynomial yields
the number of equivalence classes of (≤k)-colorings. This section examines some examples
of applications of this substitution principle and then proves its correctness.

Cycle-Structure Monomial of a Permutation


terminology: The cycle structure of a permutation is the number of cycles of each
length in its disjoint-cycle form.
terminology: A monomial is a polynomial with only one term.
definition: Let P = [P : Y ] be a permutation group on a set Y of n objects, and let
π ∈ P . The cycle-structure monomial of π is the n-variable monomial
n
Y
ζ(π) = zkrk = z1r1 z2r2 · · · znrn
k=1

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

refl. thru horiz. axis (v)(x)(u w) z12 z2


180◦ rotation (u w)(v x) z22 w

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

definition: Let P = [P : Y ] be a permutation group on a set of n objects. Then the


cycle-index polynomial of P is the polynomial
1 X
ZP (z1 , . . . , zn ) = ζ(π)
|P |
π∈P

where ζ(π) is the cycle-structure monomial of the permutation π.


Example 9.4.4: From Example 9.4.2, it follows that the cycle-index polynomial of the
permutation group AutV (K4 − K2 ) is
1 4
z1 + 2z12 z2 + z22

ZAutV (K4 −K2 ) (z1 , z2 ) =
4
Substituting 2, the number of colors, for both of the variables z1 and z2 yields the number
1 4
2 + 2 · 22 · 2 + 22 = 9

ZAutV (K4 −K2 ) (2, 2) =
4
which was shown in Figure 9.2.5 to be the number of AutV (K4 − K2 )-orbits of vertex-(≤2)-
colorings of the graph K4 − K2 .

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.

Correctness of Substituting into the Cycle-Index Polynomial


We now show as a consequence of Burnside’s lemma (Theorem 9.3.4) that substituting
the value k into the cycle-index polynomial always yields the number of coloring classes
(orbits) of the (≤k)-colorings.
review from §9.2: Let P = [P : Y ] be a permutation group acting on a set Y , and let
π ∈ P.

• The mapping πY C : Col k (Y ) → Col k (Y ) defined by πY C (f ) = f π, for every coloring


f ∈ Col k (Y ) is a permutation on the set Col k (Y ), called the induced permutation
action of π on Col k (Y ).
• To distinguish between the action of a permutation π on a set Y and its induced
action on the set Col k (Y ) of colorings of Y , we let πY denote its action on Y and πY C
its action on Col k (Y ). When there is no risk of confusion, the subscripts Y and Y C
may both be omitted.
Section 9.4 Cycle-Index Polynomial of a Permutation Group 379

• The collection PY C = [P : Col k (Y )] of induced permutations on Col k (Y ) is called the


induced permutation group.
• The set of orbits (coloring classes) of the induced permutation group on Col k (Y ) is
denoted {Col k (Y )}P .
• When it is necessary to distinguish between the group that acts on the set Y and the
group that acts on the set Col k (Y ), the respective notations PY and PY C are used.

notation: If p(x1 , . . . , xn ) is a multivariate polynomial, then p(k, . . . , k) denotes the result


of substituting the value k for every variable xj .

Lemma 9.4.1: Let P = [P : Y ] be a permutation group, and let π ∈ P , with induced


action πY C on Col k (Y ). Then the number of (≤k)-colorings of Y that are fixed by πY C is
given by
|Fix (πY C )| = ζ(πY )(k, . . . , k)

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.

πY ∈ PY πY C ∈ P Y C ζ(πY ) |Fix (πY C )|


Y Y C z13 8
(x y z) (111)(211 121 112)(122 212 221)(222) z3 2
(x z y) (111)(211 112 121)(122 221 212)(222) z3 2

Theorem 9.4.2: Let P = [P : Y ] be a permutation group. Then

|{Col k (Y )}P | = ZP (k, . . . , k)

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

Substituting 2 for both the variables yields


1 5
ZAutV (P5 ) (2, 2) = (2 + 2 · 22 ) = 20
2
which is the number of vertex-(≤2)-colorings calculated in Example 9.2.5.
Similarly, the cycle-index polynomial for AutE (P5 ) is
1 4
ZAutE (P5 ) (z1 , z2 ) = (z + z22 )
2 1
and, hence,
1 4
(2 + 22 ) = 10
ZAutE (P5 ) (2, 2) =
2
which is the number of edge-(≤2)-colorings calculated in Example 9.2.6.
Moreover, substituting 3 for both the variables yields
1 4
ZAutE (P5 ) (3, 3) = (3 + 32 ) = 45
2
which was calculated in Example 9.2.7 to be the number of edge-(≤3)-colorings of P5 .

EXERCISES for Section 9.4


9.4.1 For the given graph:
i. Calculate the cycle-index polynomial of AutV (G), and evaluate the result of substi-
tuting the number 2 for all the variables.
ii. Calculate the cycle-index polynomial of AutE (G), and evaluate the result of substi-
tuting the number 2 for all the variables.
iii. Use drawings and/or description to account for all the non-equivalent vertex-(≤ 2)-
colorings, and make sure that their number agrees with your answer to (i).
iv. Use drawings and/or description to account for all the non-equivalent edge-(≤ 2)-
colorings, and make sure that their number agrees with your answer to (ii).
(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.5 More Counting, Including Simple Graphs 381

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)

9.5 MORE COUNTING, INCLUDING SIMPLE GRAPHS


In this section, we illustrate further applications of Burnside’s lemma and the substitu-
tion principle (Theorem 9.4.2). The section ends by showing how the problem of counting
the number of isomorphism classes of simple graphs can be reduced to the problem of
counting the non-equivalent edge-(≤2)-colorings of the complete graph.

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.

Figure 9.5.1 The six non-equivalent vertex-(≤2) colorings of C4 .

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

Example 9.5.2: Now consider vertex-(≤3)-colorings of C4 . By Theorem 9.4.2, the number


of non-equivalent vertex-(≤3)-colorings can be calculated as follows:
1 4
3 + 2 · 32 · 3 + 3 · 32 + 2 · 3 = 21

ZAutV (C4 ) (3, 3, 3, 3) =
8
Direct counting gives three colorings that use only one of the three colors. Since there are
four ways to vertex-color C4 with exactly two colors and three ways to choose two colors
from a set of three, there are 3 · 4 = 12 colorings of C4 that use exactly two of the three
colors. Figure 9.5.2 shows that when exactly three colors are used, there are six colorings.

Figure 9.5.2 The six vertex-colorings of C4 with three colors.

Thus, in all, there are 3 + 12 + 6 = 21 vertex-(≤3)-colorings of C4 , confirming the value


obtained by Theorem 9.4.2.

Counting Vertex-Colorings of a Bowtie


Example 9.5.3: Figure 9.5.3 shows the bowtie BT, the graph that results from the vertex-
amalgamation of two copies of K3 .

r u
b t d
a f
c e
s v

Figure 9.5.3 The bowtie graph BT.

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

Thus, the cycle-index polynomial for AutV (BT ) is


1 5
z + 2z13 z2 + 3z1 z22 + 2z1 z4

ZAutV (BT ) (z1 , z2 , z3 , z4 ) =
8 1
Section 9.5 More Counting, Including Simple Graphs 383

and the cycle-index polynomial for AutE (BT ) is


1 6
z + 2z14 z2 + z12 z22 + 2z23 + 2z2 z4

ZAutE (BT ) (z1 , z2 , z3 , z4 ) =
8 1
By Theorem 9.4.2, the number of non-equivalent vertex-(≤2)-colorings of BT is
1 5
ZAutV (BT ) (2, 2, 2, 2) = (2 + 2 · 23 · 2 + 3 · 2 · 22 + 2 · 2 · 2) = 12
8
Figure 9.5.4 confirms this calculation. Since there are six white-black vertex-colorings with
at most two black, there must also be another six with at most two white.

Figure 9.5.4 White-black vertex-colorings of BT with at most two black.

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.

Counting Simple Graphs


Theorem 9.4.2 can be used to count the isomorphism types (classes) of n-vertex simple
graphs by modeling the types as the coloring classes (AutE (Kn )-orbits) of the edge-(≤2)-
colorings of the complete graph Kn . The following proposition formalizes this connection.
Proposition 9.5.1: The number of isomorphism types of the n-vertex simple graphs
equals the number of coloring classes of the edge-(≤ 2)-colorings of Kn , that is,
{Col2 (EKn )}AutE (Kn ) .

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.

General Strategy for Counting n-Vertex Simple Graphs


Calculate the cycle-index polynomial of AutV (Kn ).

Step 1. Calculate the cycle-index polynomial of AutV (Kn ).


Since knowing the cycle-index polynomial is sufficient for algebraic counting, writing
out all the permutations in a large permutation group can be avoided.
384 Chapter 9 GRAPH COLORINGS AND SYMMETRY

Step 2. Calculate the cycle-index polynomial of AutE (Kn ).


The cycle-index polynomial of AutE (Kn ) is obtained by considering each cycle size
and each pair of cycle sizes in the cycle-index polynomial of AutV (Kn ).
Step 3. Apply Theorem 9.4.2.
This final step in counting the isomorphism types of graphs with n vertices is simply
to substitute 2 for every variable in the cycle-index polynomial ZAutE (Kn ) .

Counting Simple Graphs on Four Vertices


Proposition 9.5.2: The cycle-index polynomial of AutV (K4 ) is
1 4
ZAutV (K4 ) (z1 , z2 , z3 , z4 ) = (z + 6z12 z2 + 8z1 z3 + 3z22 + 6z4 )
24 1
Proof: The 24 vertex-permutations in AutV (K4 ) are naturally partitioned according to
the five possible cycle structures: z14 , z12 z2 , z1 z3 , z22 , and z4 . Each cell in this partition is to
be counted.

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


ways to arrange them in a cycle.


z22 : 3 automorphisms.
There are three ways to group four objects into two cycles, when it does not matter
which cycle is written first.
z4 : 6 automorphisms.
They correspond to the (4 − 1)! = 6 ways that four objects can be arranged in a
cycle. ♦

Proposition 9.5.3: The cycle-index polynomial of AutE (K4 ) is


1 6
ZAutE (K4 ) (z1 , z2 , z3 , z4 ) = (z + 9z12 z22 + 8z32 + 6z2 z4 )
24 1
Proof: The size of the cycle to which an edge belongs is determined by the cycles to which
its endpoints belong. Thus, for every automorphism π ∈ AutE (Kn ), the cycle structure
ζ(πE ) of the edge-permutation is determined by the cycle structure ζ(πV ) of the vertex-
permutation.

Case 1. If ζ(πV ) = z14 , then ζ(πE ) = z16 .


If both endpoints of an edge e are in a 1-cycle of the vertex-permutation, then they
are both fixed points. In a simple graph, the corresponding edge-permutation must
map that edge to itself.
Section 9.5 More Counting, Including Simple Graphs 385

Case 2. If ζ(πV ) = z12 z2 , then ζ(πE ) = z12 z22 .


An edge of K4 is mapped to itself if both its endpoints are in a 2-cycle or if each
endpoint is in a 1-cycle. Thus, two edges of K4 are fixed by πV . Each of the other four
edges has one endpoint in a 1-cycle, which is fixed by πV , and the other in a 2-cycle
of πV , which is mapped by πV to the other vertex in that 2-cycle. It follows that such
an edge lies in a 2-cycle of πE .

Case 3. If ζ(πV ) = z1 z3 , then ζ(πE ) = z32 .


The three edges of K4 that have both their ends in the 3-cycle of πV lie in a 3-cycle
of πE . The three edges of K4 that have one endpoint in a 1-cycle of πV and the other
endpoint in a 3-cycle all lie in another 3-cycle of πE .
Case 4. If ζ(πV ) = z22 , then ζ(πE ) = z12 z22 .
The two edges that have both endpoints in the same 2-cycle of πV are both fixed by
πE . If an edge has one endpoint in one 2-cycle of πV and the other endpoint in another
2-cycle of πV , then that edge lies in a 2-cycle of πE with the edge whose respective
endpoints are the other vertices of those 2-cycles of πV .
Case 5. If ζ(πV ) = z4 , then ζ(πE ) = z2 z4 .
The four edges whose endpoints are consecutive vertices in the 4-cycle of πV form a
cycle of πE . The two edges whose endpoints are spaced 2 apart in the 4-cycle of πV
form a 2-cycle of πE . ♦
Corollary 9.5.4: There are exactly 11 isomorphism types of simple graphs with 4 vertices.

Proof: Using Proposition 9.5.3, we have


1 6
ZAutE (K4 ) (2, 2, 2, 2) = (2 + 9 · 22 · 22 + 8 · 22 + 6 · 2 · 2) = 11
24
The 11 graphs promised by this calculation are shown in Figure 9.5.5. ♦

Figure 9.5.5 The 11 simple 4-vertex graphs.

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

Simple Graphs on Five Vertices


Proposition 9.5.5: There are exactly 34 isomorphism types of simple graphs with 5 ver-
tices.

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.

EXERCISES for Section 9.5


9.5.1 For the given graph:
i. Use Theorem 9.4.2 to count the number of ways to vertex-color the graph with a set
of two colors, and confirm this by drawings and elementary counting methods.
ii. Use Theorem 9.4.2 to count the number of ways to vertex-color the graph with a set
of three colors, and confirm this by drawings and elementary counting methods.

(a) The path graph P4 . (b) The path graph P5 .


(c) The cycle graph C5 . (d) The cycle graph C6 .
(e) The complete bipartite graph K2,3 . (f) The wheel graph W5 .
(g) The graph K5 −K2 .

9.5.2 For the given graph:


i. Use Theorem 9.4.2 to count the number of ways to edge-color the graph with a set of
two colors, and confirm this by drawings and elementary counting methods.
ii. Use Theorem 9.4.2 to count the number of ways to edge-color the graph with a set of
three colors, and confirm this by drawings and elementary counting methods.

(a) The path graph P4 . (b) The path graph P5 .


(c) The cycle graph C5 . (d) The cycle graph C6 .
(e) The complete bipartite graph K2,3 . (f) The wheel graph W5 .
(g) The graph K5 −K2 .
Section 9.6 Pölya-Burnside Enumeration 387

9.5.3 In the bowtie graph BT :

i. Draw the white-black edge-colorings, using at most two black edges.


ii. Draw the white-black edge-colorings, using exactly three black edges.
iii. Add twice the number from part (i) to the number from part (ii). Compare your answer
with the one obtained in Example 9.5.3.
9.5.4 For each graph in Figure 9.5.5, state how many graphs are in its isomorphism class
in the present-absent coloring of K4 .
9.5.5 Apply the algebraic enumeration techniques of this section to counting the number
of isomorphism types of simple graphs with three vertices.
9.5.6 Draw all the isomorphism types of simple graphs with three vertices.
9.5.7 Draw all the isomorphism types of 3-vertex graphs with no self-loops and with at
most two edges between any two vertices.
9.5.8 Substitute the number 3 into ZAutE (K3 ) and evaluate. Why should this agree with
the result from Exercise 9.5.7?
9.5.9 Determine the number of isomorphism types of simple graphs with six vertices.

9.6 PÖLYA-BURNSIDE ENUMERATION


This section describes Pölya’s ingenious extension of the enumeration strategy presented
in §9.3, §9.4, and §9.5. With this extension, we are not only able to count the number of
coloring classes, but we can also categorize those classes according to the number of objects
that are assigned each color. For the application to counting the non-isomorphism types of
the n-vertex simple graphs, we can determine the number of non-isomorphism types having
each possible number of edges.

Inventory of the Coloring Classes


definition: Let P = [P : Y ] be a permutation group acting on a set Y of n objects. The
inventory of the coloring classes, {Colk (Y )}P , indicates for each possible combination of
how many times each color is used, the number of coloring classes that use that combination
of colors.

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

xj1 + xj2 + · · · + xjk


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-inventory polynomial of order k
is the polynomial obtained by replacing each cycle-index variable zj by its Pölya substitute
of order k. It is denoted ZP (x1 + · · · + xk ).

Pölya’s Enumeration Theorem


The culminating result of this chapter, the Pölya Enumeration Theorem, provides an el-
egant method for determining the number of non-equivalent colorings for a specified number
of occurrences of each color. For a proof, see, for example, [Bo00] or [Br04b].
Theorem 9.6.1: [Pölya Enumeration Theorem] Let P = [P : Y ] be a permutation
group on a set Y of n objects, and let ZP (x1 + · · · + xk ) be the Pölya-inventory polynomial
of order k for the coloring classes of Col k (P ). Then the coefficient of the term xj11 xj22 · · · xjkk
in the expansion of ZP (x1 + · · · + xk ) is the number of coloring classes that use color i
exactly ji times, i = 1, 2, . . . , k.
Example 9.6.3: Returning to Example 9.4.4, the cycle-index polynomial for AutV (K4 −
K2 ) is
1 4
z1 + 2z12 z2 + z22

ZAutV (K4 −K2 ) (z1 , z2 ) =
4
Thus, the Pölya-inventory polynomial of order 2 is
1
(x1 + x2 )4 + 2(x1 + x2 )2 (x21 + x22 ) + (x21 + x22 )2

ZAutV (K4 −K2 ) (x1 + x2 ) =
4
1
= (x41 + 4x31 x2 + 6x21 x22 + 4x1 x32 + x42
4
+ 2x41 + 4x31 x2 + 4x21 x22 + 4x1 x32 + 2x42
+ x41 + 2x21 x22 + x42 )
= x41 + 2x31 x2 + 3x21 x22 + 2x1 x33 + x42
In this Pölya-inventory polynomial, the variable x1 stands for the color white and x2 for the
color black. Thus, its coefficients agree exactly with the inventory given in Example 9.6.1.
Section 9.6 Pölya-Burnside Enumeration 389

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

This represents the detailed inventory given in Example 9.6.2.

Inventory of n-Vertex Simple Graphs


The Pölya-inventory polynomial of order 2 for AutE (Kn ) gives an inventory of the n-
vertex simple graphs according to their number of edges. A term of the form ck xj1 xk2 means
that there are ck configurations with k edges present and j edges absent.
Example 9.6.5: According to Proposition 9.5.3, the cycle-index polynomial for AutE (K4 )
is
1
z16 + 9z12 z22 + 8z32 + 6z2 z4

ZAutE (K4 ) =
24
This leads to the following calculation of ZAutE (K4 ) (x1 + x2 ).

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

EXERCISES for Section 9.6


9.6.1 Construct the Pölya-inventory polynomial for 3-vertex simple graphs.
9.6.2 Draw all the different isomorphism types of 5-vertex simple graphs with three or fewer
edges.
9.6.3 Draw all the different isomorphism types of 5-vertex simple graphs with four edges.
9.6.4 Draw all the different isomorphism types of 5-vertex simple graphs with five edges.
9.6.5 Add the number of graphs in Exercise 9.6.4 to twice the number of graphs in Exercise
9.6.3 and twice the number of graphs in Exercise 9.6.2. Why should this number equal 34?
9.6.6 Construct the Pölya-inventory polynomial for 5-vertex simple graphs.
9.6.7 Construct the Pölya-inventory polynomial for 6-vertex simple graphs.
9.6.8 Substitute the Pölya-inventory polynomial of order 3 into ZAutE (K3 ), and compare
the result with your answer for Exercise 9.5.20.

9.7 SUPPLEMENTARY EXERCISES


9.7.1 For the given graph:
i. List all the vertex automorphisms.
ii. Write the cycle index of the vertex automorphism group.
iii. Use Burnside enumeration to count the essentially different ways to color the vertices
with at most two colors.
iv. Calculate a Pölya inventory of the colorings from part (iii).
v. Draw all the different ways from part (iii).
vi. List all the edge automorphisms.
vii. Write the cycle index of the edge automorphism group.
viii. Use Burnside enumeration to count the essentially different ways to color the edges
with at most two colors.
ix. Calculate a Pölya inventory of the colorings from part (iii).
x. Draw all the different ways from part (viii).

(a) The octahedral graph O3 .


(b) The result of adding an edge joining two nonadjacent vertices of K3,3 .
(c) The result of a vertex-amalgamation of two copies of K4 .
(d) The result of an edge-amalgamation of two copies of K4 .
(e) The Mobius ladder M L4 .
(f) The Cartesian product C3 × C3 .
9.7 Supplementary Exercises 391

(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.

9.7.4 In the graph below:


i. Find the only vertex that does not lie on a 3-cycle, and thus, lies in an orbit by itself.
ii. Partition the vertices according to distance from this special vertex.
Suggestion: redraw the graph.
iii. List the vertex orbits.

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.

closed collection of permutations: a collection P of permutations on the same set of


objects, such that for every pair π1 , π2 ∈ P , the composition π1 π2 is in P .
coloring of a set Y : a mapping f from Y onto a set {1, 2, . . . , k} of integers, in which the
number f (y) is called the color of y.

(≤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.

P-equivalent colorings of a set Y under a permutation group P = [P : Y ]:


colorings f and g for which there is a permutation π ∈ P such that g = f π. That
is, for every object y ∈ Y , the color g(y) is the same as the color f (π(y)). The set of
P-equivalence classes of Colk (Y ) is denoted {Colk (Y )}P .
equivalent edge-colorings on a graph G: edge-colorings f1 and f2 on G that are
AutE (G)-equivalent.

equivalent vertex-colorings on a graph G: vertex-colorings f1 and f2 on G that are


AutV (G)-equivalent.
fixed-point set of a permutation π : Y → Y : the subset

Fix(π) = {y ∈ Y | π(y) = y}

full symmetric group ΣY : the collection of all permutations on a set Y .


induced permutation πY C : given a permutation π ∈ P = [P : Y ], the rule f 7→ f π that
permutes the set Colk (Y ) of colorings of Y .
Glossary 393

induced permutation group Pk : given a permutation group P = [P : Y ], the group of


induced permutations on Colk (Y ).
inventory of the coloring classes: for a permutation group acting on a set Y of n ob-
jects, specification for each possible combination of how many times each color is used,
the number of coloring classes that use that combination of colors.
involution: a permutation π such that π = π −1 .

monomial: a polynomial with only one term.


orbit of an object y ∈ Y under a permutation group P : the set {π(y)|π ∈ P }.
permutation group [P : Y ]: a mathematical structure such that P is a non-empty closed
collection of permutations on the same finite set of objects Y .

Pölya-counting polynomial: the polynomial that gives detailed inventories, obtained by


substituting the Pölya substitutes into the cycle-index polynomial.
Pölya substitute of order k for the cycle-index variable zj : the k-variate polynomial
xj1 + xj2 + · · · + xjk that replaces the cycle-index variable zj in the cycle-index polynomial
ZP (z1 , . . . , zn ).
stabilizer of an object y: in a permutation group P = [P : Y ], the subgroup Stab(y) =
{π ∈ P | π(y) = y}.
symmetric group ΣY on a set Y : the collection of all permutations on Y .
vertex-automorphism group AutV (G) of a graph G: the permutation group whose
object set is VG and whose permutations are the vertex functions of the automorphisms
of the graph G.
Chapter 10

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

10.1 CYCLIC VOLTAGES


Useful ideas commonly evolve from prototype solutions, in mathematics as well as in en-
gineering. The prototype form of voltage graph described in this section is adapted to cyclic
symmetry. In Sections 10.4 and 10.5, more general forms of voltage graphs are developed.

Symmetry and Specification Reduction


To understand how voltage graphs might help with a large problem, this section begins
with a small example that illustrates how a graph can be specified by a smaller graph.
Definitions, terminology, and precise descriptions of the notational conventions follow this
example. The underlying idea of a voltage graph is that it is used to generate patterns in
the graph that it specifies.

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

Figure 10.1.1 A directed 8-cycle and a directed 2-cycle.

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

Figure 10.1.2 A directed 2-cycle with voltages mod 4 on its arcs.


Section 10.1 Cyclic Voltages 397

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

Figure 10.1.3 A Z3 -voltage graph and its covering digraph.


D E
definition: The covering graph of the Zn -voltage graph G, ~ α : E ~ → Zn is the un-
G
~ α . It is denoted Gα .
derlying graph of the covering digraph G
Example 10.1.2, continued: For the Z3 -voltage graph in Figure 10.1.3, the covering graph
is K3,3 with vertex-set V α and edge-set E α , where

V α = {u0 , u1 , u2 , v0 , v1 , v2 } and E α = {b0 , b1 , b2 , c0 , c1 , c2 , d0 , d1 , d2 }

Vertex Fibers and Edge Fibers in the Covering Graph


The vertex-set of the covering graph has a natural partition, in which the vertices that
arise from a single vertex of the voltage graph are grouped into a cell. The edge-set of the
covering graph is similarly partitioned. The terminology and notation for these partitions
are borrowed from algebraic topology.
D E
definition: Let G, ~ α : E ~ → Zn be a Zn -voltage graph.
G

α
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.2, continued: The vertex fibers are

ũ = {u0 , u1 , u2 } and ṽ = {v0 , v1 , v2 }

and the edge fibers are

b̃ = {b0 , b1 , b2 }, c̃ = {c0 , c1 , c2 } and d˜ = {d0 , d1 , d2 }


Section 10.1 Cyclic Voltages 399

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

V α = {u0 , u1 , u2 , v0 , v1 , v2 } and E α = {d0 , d1 , d2 , e0 , e1 , e2 }

and the covering digraph is a 6-cycle, as shown in Figure 10.1.4.


u0 v0
d0

e2 e0
0
d v2 u1
u
e v
1
d2 d1
voltages in Z3

e1
u2 v1

Figure 10.1.4 A 2-cycle with Z3 -voltages and the 6-cycle it specifies.

The vertex and edge fibers are

ũ = {u0 , u1 , u2 }, ṽ = {v0 , v1 , v2 }, d˜ = {d0 , d1 , d2 }, and ẽ = {e0 , e1 , e2 }

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

Artificiality of the Arc Directions


A voltage graph is defined formally to be a digraph, and the mathematical object derived
from a voltage graph is also defined formally to be a digraph. However, the arc directions
in this context are usually regarded simply as an ingredient of the construction (and not as
“onewayness”). The result of reversing an arc direction in a voltage graph and replacing its
voltage by the inverse voltage is a new voltage graph that still specifies the same undirected
graph, as confirmed by the next example and the proposition that follows it.
Example 10.1.4: Figure 10.1.5 shows a Z3 -voltage graph obtained from the voltage graph
of Figure 10.1.3 by reversing the direction of arc d and replacing the voltage 2 by its additive
inverse, −2 = 3 − 2 = 1. Figure 10.1.5 also shows the digraph that the modified voltage
graph specifies. Observe that its underlying graph is identical to the underlying graph of
Figure 10.1.3, even though the directions of the arcs in the d-fiber have changed. Notice
that we have used different graphic designs for each arc in the voltage graph in order to
make it easier to pick out the arcs in its fiber.

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

Figure 10.1.5 A Z3 -voltage graph and the digraph it specifies.

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.

Voltage Graphs with Self-Loops


The same specification rules apply when there is a self-loop in the voltage graph. If e is
a self-loop with endpoint v in a voltage graph, and if the voltage assigned to edge e is α(e),
then the edge ej in the covering digraph has tail vj and head vj+α(e) .
Example 10.1.5: Figure 10.1.6 shows that adding a self-loop with voltage 1 at both ver-
tices of the voltage graph of Figure 10.1.3 transforms it into a specification of the complete
graph K6 .

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

Figure 10.1.6 A Z3 -voltage graph for K6 and its covering digraph.

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

Figure 10.1.7 Z5 -voltages on B2 and the covering graph, K5 ∼


= circ(5 : 1, 2).

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

Figure 10.1.8 Z7 -voltages on B2 and the covering graph, K7 − C7 ∼


= circ(7 : 1, 2).

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

Figure 10.1.9 Z6 -voltages on B2 and the covering graph, K6 − 3K2 ∼


= circ(6 : 1, 2).

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.

By Proposition 10.1.5, a voltage n on a self-loop in a Z2n -voltage graph would create


2-cycles in the covering digraph, causing doubled edges to appear in the covering graph.
Collapsing such doubled edges to a single edge enhances the usefulness of voltage graphs in
algebraic specification.
definition: Bidirected-arc convention: Suppose e is a self-loop with voltage n on a
vertex v in a Z2n -voltage graph. The pair of arcs that would otherwise join vertex vj to vertex
vj+n and vertex vj+n to vertex vj in the covering digraph is replaced by a single bidirected
arc between vj and vj+n . The underlying graph of a digraph with bidirected arcs
has a single edge for each bidirected arc.
Example 10.1.7: In Figure 10.1.10, a Z6 -voltage graph is shown where one of the self-
loops has voltage 3. The covering digraph has oppositely directed arcs between pairs of
vertices, each of these can be collapsed into a single bidirected arc. The resulting covering
graph, using this convention, would have vertices of degree 3. In Figure 10.1.10, the edges
are not labeled; instead, solid and dashed lines are used to distinguish the two edge fibers.

v0 v1 v0 v1

3 v5 v2 v5 v2
v
1

voltages in Z6

v4 v3 v4 v3

Figure 10.1.10 Replacing 2-cycles in a covering digraph with bidirected arcs.

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.

Circulant Graphs as Covering Graphs of Zn -Voltage Graphs


In Example 10.1.6, three circulant graphs were obtained as the covering graphs of bou-
quets with cyclic voltages. In fact, all circulant graphs may be obtained this way, as stated
in the next theorem.
convention: If a Zn -voltage graph has only one vertex v, then every vertex in the covering
graph is labeled vi , for some element i ∈ Zn . It is common to simplify the covering graph
diagram by labeling each vertex i instead of vi .
404 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS

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 ).

Proof: This is an immediate consequence of the definitions of circulant graph and Zn -


voltage graph. Figure 10.1.11 illustrates the proposition for circ(13 : 1, 5).

0
12 1

11 2

5 10 3
v
1

4
voltages in Z13 9

8 5
7 6

Figure 10.1.11 circ(13 : 1, 5) as a covering graph of B2 with Z13 -voltages.

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

Figure 10.1.12 A K6 -digraph with bidirected arcs.

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,
~ α .

~ α has a self-loop if and only if G


1. G ~ has a self-loop e with voltage 0.
~ α has a multi-arc if and only if G
2. G ~ has a multi-arc for which at least two of the arcs
have the same voltage.
~ α has two oppositely directed arcs if and only if one or both of the following condi-
3. G
tions hold:
~ has two oppositely directed arcs whose voltages are additive inverses.
(a) G
~ has voltage n .
(b) n is even and some self-loop in G 2
Section 10.1 Cyclic Voltages 405

Proof:

1. See Exercise 10.1.4.


2. Suppose G~ α has two arcs di and ei , directed from vi to wj , for some i, j ∈ Zn . Since,
j = i + α(d) and j = i + α(e), α(d) = α(e).
Conversely, two arcs d and e directed from v to w in G, ~ with α(d) = α(e), generate
~ α
arcs d0 and e0 in G , both directed from v0 to wα(d) = wα(e) .

3. Suppose di and ej are distinct arcs in G ~ α , where di is directed from vi to wj and ej


is directed from wj to vi , for some i, j ∈ Zn . Then in G, ~ d is an arc from v to w and
e is an arc from w to v with α(e) = i − j = −(j − i) = −α(d). Since di and ej are
different arcs, either (i) d 6= e or (ii) d = e and i 6= j.
If d 6= e, then they are oppositely directed arcs whose voltages are additive inverses.
In the second case, since d = e, d is a self-loop and α(d) = −α(d), which implies
α(d) = 0 or n/2. But α(d) = j − i 6= 0, and hence, α(d) = n/2. Therefore, d is a
self-loop with voltage n/2.
Suppose condition (a) holds. Let d be an arc directed from v to w in G, ~ and let e be
an arc directed from w to v with α(d) = −α(e). Arcs d and e generate arcs d0 and
eα(d) in G~ α , where d0 is directed from v0 to wα(d) and eα(d) is directed from wα(d) to
vα(d)+α(e) = v0 .
Now suppose condition (b) holds. If n is even and e is a self-loop on v in G ~ with
n ~ α
α(e) = 2 , then e0 is an arc in G directed from v0 to vn/2 and en/2 is directed from
vn/2 to vn/2+n/2 = v0 .


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

Figure 10.1.13 A non-simple Z4 -voltage graph and its covering digraph.

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

EXERCISES for Section 10.1


10.1.1 Draw the covering digraph for the given voltage graph.

(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.2 Design a cyclic-voltage graph to specify the circular ladder CLn .


10.1.3 Prove Proposition 10.1.5.
10.1.4 Prove that the covering graph for a cyclic-voltage graph has no self-loops, unless the
voltage graph has a self-loop with voltage 0.

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

10.2 SPECIFYING CONNECTED GRAPHS


review from Section §1.2 A graph is connected if for every pair of vertices u and v,
there is a walk from u to v. A digraph is connected if its underlying graph is connected.
We begin the section with an example of a covering digraph having multiple components.
Our goal in this section is to characterize those Zn -voltage graphs whose covering graphs
are connected.

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

Figure 10.2.1 A Z4 -voltage and its non-connected covering digraph.

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

definition: Let X = {x1 , x2 , . . . , xr } be a generating set of Zn . The Cayley digraph


~ n , X) is the covering digraph for the voltage graph hBr , αi, where Br is the bouquet
C(Z
~ n , X) has as
with r self-loops, and α assigns each voltage in X to one of the self-loops. C(Z
its vertex-set and arc-set

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

Figure 10.2.2 ~ 6 , {1}) and Cayley graph C(Z6 , {1}).


The Cayley digraph C(Z
~ n , X) is to label the vertices by the
The traditional way is to draw a Cayley digraph C(Z
elements of Zn . Instead of giving edges distinct names, a different color or graphic feature
is used for each edge fiber x̃. This led to the terminology Cayley color graph.

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

Figure 10.2.4 The circulant graph circ(6 : 2) is not a Cayley graph.

Signed Walks and Connectivity


definition: A signed walk in a digraph is an alternating sequence
W = hv1 , δ1 e1 , v2 , δ2 e2 , . . . vn−1 , δn−1 en−1 , vn i
of vertices and arcs, such that for each i, δi ∈ {1, −1}, and
• if δi = 1, then ei is directed from vi to vi+1 and
• if δi = −1, then ei is directed from vi+1 to vi .
D E
Example 10.2.6: Consider the Z4 -voltage graph G, ~ α and its covering digraph G ~α
in Figure 10.2.5. Using the bidirected-arc convention, the self-loop e on vertex v with
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

Figure 10.2.5 A Z4 -voltage graph and its covering digraph.

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

E hv1 , δ1 e1 , v2 , δ2 e2 , . . . vn−1 , δn−1 en−1 , vn i is a signed walk in a Zn -


definition: IfD W =
~
voltage graph G, α , then the net voltage of W , denoted nv(W ), is
n−1
X
nv(W ) = δi α(ei )
i=1

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.

• The vertex projection πV : V (G ~ α ) → V (G),


~ is the function, that maps each vertex
~ to v. That is, πV (vi ) = v, for any v ∈ V (G)
vi in the fiber above the vertex v ∈ V (G) ~
and i ∈ Zn .
• The edge projection πE : E(G ~ α ) → E(G) ~ maps each arc ei in the fiber above the
~ ~ and i ∈ Zn .
arc e ∈ E(G) to e. That is, πE (ei ) = e, for any e ∈ E(G)
~α → G
• The natural projection π : G ~ is the pair π = (πV , πE ).

definition: A digraph homomorphism f : G ~ →H ~ from digraph G ~ to digraph H~ is a


pair of functions
~ → V (H)
fV : V (G) ~ and fE : E(G)
~ → E(H) ~
~ directed from v to w, then fE (e) is an arc in H
such that if e is an arc in G ~ directed from
fV (v) to fV (w).
definition: A digraph homomorphism f = (fV , fE ) is onto if both fV and fE are onto.
D E
~ α , the natural projection π is a di-
Proposition 10.2.1: For any Zn -voltage graph G,
~ α onto G.
graph homomorphism from G ~

Proof: By definition of the covering digraph G ~ α , if ei is an arc directed from vi to wj in


~ α , then πE (ei ) = e is an arc in G
G ~ from v = πV (vi ) to w = πV (wj ). Furthermore, for any
~ ~ e = πE (e0 ). Therefore, π is onto.
vertex v in G, v = πV (v0 ) and for any arc e in G, ♦
Proposition 10.2.2: If f : G ~ →H ~ is a digraph homomorphism and
W = hv1 , δ1 e1 , v2 , δ2 e2 , . . . vn−1 , δn−1 en−1 , vn i is a signed walk in G, ~ then
f (W ) = hf (v1 ), δ1 f (e1 ), f (v2 ), δ2 f (e2 ), . . . f (vn−1 ), δn−1 f (en−1 ), f (vn )i is a signed walk in
~
H.
Proof: Exercise 10.2.2. ♦
Example 10.2.6, continued: The signed walk W1 = hu0 , −a3 , v3 , e3 , v1 , a1 , u2 i in the
covering graph projects onto the closed signed walk π(W1 ) = hu, −a, v, e, v, a, ui in the
Z4 -voltage graph of Figure 10.2.5.

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: By Proposition 10.2.2, π(W ) is a signed walk from v = π(vi ) to w = π(wj ).


To show nv(π(W )) = j − i, we use induction on the length of the signed walk. If W is
a signed walk in G ~ α of length 1, then π(W ) = hu, (+1)e, wi or π(W ) = hu, (−1)e, wi, for
some arc e. In the first case, e is directed from u to w, and so W = hvi , (+1)ei , wj i with
ei directed from vi to wj . Therefore, j = i + α(e), or nv(W ) = α(e) = j − i. In the second
case, e is directed from w to v, and so W = hvi , (−1)ej , wj i with ej directed from wj to vi .
Therefore, i = j + α(e), or nv(W ) = −α(e) = −(i − j) = j − i.
Suppose the proposition holds for any signed walk of length n − 1. To show it holds
for any signed walk of length n, let W = W1 ◦ W2 be a vi -uk signed walk of length n − 1
followed by a uk -wj signed walk of length 1 in G ~ α . By the definition of signed walk and
net voltage, π(W ) = π(W1 ) ◦ π(W2 ) and nv(π(W )) = nv(π(W1 )) + nv(π(W2 )). By the
induction hypothesis, nv(π(W1 )) = k − i and by the base case, nv(W2 ) = j − k. Therefore,
nv(π(W )) = (k − i) + (j − k) = j − i. ♦
Example 10.2.6, continued: In Figure 10.2.5, the signed walk W = hu, −a, v, e, v, a, ui in
the voltage graph generates four signed walks in the covering graph: hu0 , −a3 , v3 , e3 , v1 , a1 , u2 i,
hu1 , −a0 , v0 , e0 , v2 , a2 , u3 i, hu2 , −a1 , v1 , e1 , v3 , a3 , u0 i, and hu3 , −a2 , v2 , e2 , v0 , a0 , u1 i. Notice
that each of these signed walks is a ui -uj walk with j − i = 2 = nv(W ).
D E
Proposition 10.2.4: Suppose W is a signed walk from v in a Zn -voltage graph G, ~ α .
For each i in Zn , there is a directed walk W̃ from vi in G ~ α such that π(W̃ ) = W .

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

Remark: For each i in Zn , the “lift” of a walk W starting at a vertex v in a Zn -voltage


to a walk W̃ starting at vertex vi in its covering graph is unique. We leave the proof as
Exercise 10.2.3.
Before stating a proposition that characterizes when a covering graph is connected,
we look at one more example of a non-connected covering graph specified by a connected
Zn -voltage graph.
Example 10.2.8: In Figure 10.2.7, G ~ 2 is connected, but its covering graph is not, since
~ α
there is no signed walk in G2 from v0 to v1 . The projection of such a walk would be a
closed signed v-v walk in G~ 2 with net voltage 1 by Proposition 10.2.3. However, no such
~
walk exists in G2 . The following proposition shows that the existence of a closed signed
walk with net voltage 1 in the voltage graph is a necessary condition for the connectedness
of a covering graph.

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: Exercise 10.2.4. ♦

Relationships among Cayley, Circulant, and Covering Graphs


The preceding examples have shown that Cayley graphs, circulant graphs, and the cov-
ering graphs of Zn -voltage graphs are related. By definition, every Cayley graph is the
covering graph of a Zn -voltage graph hBr , αi and by Proposition 10.1.6, the same is true of
circulant graphs. The following two propositions encapsulate these relationships.
Proposition 10.2.7: A Cayley graph is a circulant graph if and only if it is simple.

Proof: If a Cayley graph is a circulant graph, then it is simple, by definition of circulant


graph. Conversely, suppose the Cayley graph C(Zn , X) is simple. By Proposition 10.1.7,
0∈/ X, and thus, the circulant graph circ(n, X) is defined. Both C(Zn , X) and circ(n, X)
are simple graphs on the same vertex-set, and they have the same adjacencies. In particular,
vertices i and j are adjacent in both C(Zn , X) and circ(n, X) if and only if i − j ∈ X or
j − i ∈ X. Hence, the two graphs are isomorphic. ♦
414 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS

Proposition 10.2.8: A circulant graph is a Cayley graph if and only if it 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 , α >

Figure 10.2.9 Cayley, circulant, and covering graphs.

EXERCISES for Section 10.2


10.2.1 Draw the Cayley graph for the given group and generating set.

(a) The cyclic group Z9 with generating set {1, 3}.


(b) The cyclic group Z10 with generating set {2, 5}.

10.2.2 Prove Proposition 10.2.2.


10.2.3 Show that for each i in Zn , the “lift” of a walk W starting at a vertex v in a Zn -
voltage to a walk W̃ starting at vertex vi in its covering graph is unique. That is, show that
there is a unique walk starting at vertex vi in the covering graph, that projects onto W .

10.2.4 Give the details of a proof for Corollary 10.2.6.


Section 10.3 Zn -Voltage Graphs and Graph Colorings 415

10.3 Zn -VOLTAGE GRAPHS AND GRAPH COLORINGS


There are two natural ways of coloring the vertices and/or edges of a covering graph.
The first introduced in this section uses a coloring of the voltage graph to induce a coloring
of the covering graph, and the second uses the voltage-group as the color set to color vertices
in the covering graph.
review from §6.1 The vertex chromatic number of a graph G, denoted χ(G), is the
minimum number of colors required for a proper vertex-coloring of G.
review from §6.4 The edge chromatic number of a graph G, denoted χ0 (G), is the
minimum number of colors required for a proper edge-coloring of G.

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'

Figure 10.3.1 Induced vertex- and edge-colorings are compositions.

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

Proposition 10.3.1: Suppose hG, αi is a Zn -voltage graph, f : V (G) → C is a vertex-


coloring of G, and g : V (G) → C is an edge-coloring of G.
1. f is a proper vertex-coloring of G
if and only if f ◦ πV is a proper vertex-coloring of Gα .
2. g is a proper edge-coloring of G
if and only if g ◦ πE is a proper edge-coloring of Gα .

Proof:

1. Suppose f is a proper vertex-coloring of G. If ei is an arc in G ~ α from vi to wj , then its


image, πE (ei ) = e, is an arc in G from πV (vi ) = v to πV (wj ) = w. Since f is a proper
vertex-coloring, f (v) 6= f (w). Therefore, (f ◦ πV )(vi ) = f (v) 6= f (w) = (f ◦ πV )(wj ).
Since this is true for every arc in G ~ α , the induced vertex-coloring f ◦ πV is a proper
vertex-coloring of Gα .
If f is not a proper vertex-coloring of G, then there is an arc e in G ~ from v to w
such that f (v) = f (w). Then, for any i ∈ Zn , ei is an arc in G ~ α from vi to wi+α(e) .
Therefore, the induced vertex-coloring f ◦ πV is not a proper vertex-coloring of Gα ,
since (f ◦ πV )(vi ) = f (v) = f (w) = (f ◦ πV )(wi+α(e) ).
2. Exercise 10.3.8.


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

• χ(Gα ) ≤ χ(G) and


• χ0 (Gα ) ≤ χ0 (G)

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)

Figure 10.3.4 An irregular 3-coloring with color codes.

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α

Figure 10.3.5 A Z4 -voltage graph with voltage codes and a voltage-coloring


with color codes.
Section 10.3 Zn -Voltage Graphs and Graph Colorings 419
D E
definition: Given a voltage graph G, ~ α , the voltage assignment α is irregular if no
two vertices have the same voltage code.
D E
Proposition 10.3.5: Suppose G, ~ α is a Zn -voltage graph and α̃ is the voltage-coloring
of Gα . For all i, j ∈ Zn and u ∈ VG , α̃ui j = αui−j .

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.

Proof: Since no voltage is equal to 0, α̃ is a proper coloring of Gα , by Proposition 10.3.3.


If α is not irregular, then there are two vertices v and w in G for which αv = αw . In this
case, α̃(v0 ) = 0 = α̃(w0 ) and α̃v0 = α̃w0 . Therefore, α̃ is not irregular.
Conversely, if α̃ is not irregular, then Gα has two vertices vj and wj , for which α̃vj = α̃wj .
Therefore, by Proposition 10.3.5, for each i ∈ Zn , αvi−j = αwi−j
. But this means that αv =
αw , and hence, α is not irregular. ♦
The following upper bound for the number of vertices of degree r was established in
[RaZh07].

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 .

Corollary 10.3.9: If f is an irregular 3-coloring of an r-regular, n-vertex graph, then


n ≤ 3(r + 1).

Irregular Colorings of r-regular graphs


DeBruijn graphs can be used to create irregular k-colorings of n-cycles with n = k k2 ,


as shown in [AnBaBr09]. In [AnViYe12], Zk -voltage graphs were used to create irregular


k-colorings of r-regular graphs, that achieved the bound in Proposition 10.3.7. The final
examples of this section use Zk -voltage graphs to achieve the bounds for stated in Corollaries
10.3.8 and 10.3.9.
Example 10.3.4: The voltage assignment for the Z3 -voltage graph in Figure 10.3.6 is
irregular and has no voltages equal to 0. Thus, the voltage-coloring of the covering graph
is an irregular 3-coloring of a 2-regular graph with 3 · 3 = 9 vertices, by Theorem 10.3.6.
Since the voltage graph is connected and has a closed signed walk with net voltage 1, the
(0, 2, 0)

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

Figure 10.3.7 A Z4 -voltage graph with an irregular voltage assignment.


Section 10.3 Zn -Voltage Graphs and Graph Colorings 421

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

Figure 10.3.8 A Z4 -voltage graph with an irregular voltage assignment.

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

Figure 10.3.9 A Z4 -voltage graph with an irregular voltage assignment.

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

Figure 10.3.10 A Z5 -voltage graph with an irregular voltage assignment.

Figure 10.3.11 A connected Z5 -voltage graph.


Each of the two components that remain has an arc with voltage 2 (say, the arc on the
top of the left component and the arc on the left of the right component), and the heads
of these two arcs can also be switched. In Figure 10.3.12, the resulting voltage graph is

Figure 10.3.12 A connected Z5 -voltage graph.


Section 10.3 Zn -Voltage Graphs and Graph Colorings 423

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

Figure 10.3.13 A Z3 -voltage graph.

EXERCISES for Section 10.3


10.3.1 Specify a 4-regular graph with an irregular 3-coloring, by assigning directions and
voltages to the edges of the complete graph K5 .
10.3.2 Generalize the results of Examples 10.3.2 and 10.3.7, and Exercise 10.3.1, to specify
an r-regular graph with an irregular 3-coloring, having the maximum number of vertices
possible.
10.3.3 What is the covering graph for the Z2 -voltage graph B2 , where both self-loops have
voltage 1? What can you say about the covering graph and its covering coloring?
10.3.4 Find the voltage codes for each vertex in the Z6 -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?

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

10.4 GENERAL VOLTAGE GRAPHS


The power of voltage graphs is increased when the algebraic structure from which the
voltages are selected is permitted to be an arbitrary group (see Appendix A.4), possibly
non-Abelian. When the group is Abelian, additive notation is used for the group operation,
but in general, multiplicative notation is used and ε is used for the identity element of the
group. The order of a group element b is the smallest nonnegative integer k for which bk = ε.

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

V α = {vb | v ∈ V (G) and b ∈ B} and E α = {eb | e ∈ E(G) and b ∈ B}

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

Figure 10.4.1 The Cayley graph C(Z3 × Z4 , {01, 10}).

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

Figure 10.4.2 ~ 2 × Z4 , {10, 01}).


The Cayley digraph C(Z

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

Figure 10.4.3 A Cayley digraph for the dihedral group D4 .


Section 10.4 General Voltage Graphs 427

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

Figure 10.4.4 The Cayley graph C (Z2 × Z2 × Z2 , {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

Figure 10.4.5 A Z5 -voltage-graph specification of the Petersen graph.


428 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS

Properties of Covering Graphs


All of the definitions and propositions about cyclic voltage graphs from the first three
sections of this chapter hold for general voltage graphs, with little or no modification in
either the statements or their proofs, other than generalizing the operation. In particular,
the definition for net voltage is copied below: the sum has been changed to a product, and
additive inverses are replaced by generalized inverses.
definition: The natural projection π : G ~α → G~ of a voltage-graph construction is the
graph mapping that carries every vertex in the fiber ṽ to its base vertex v and every edge
in the fiber ẽ to its base edge e. (In effect, the natural projection “erases” the subscripts.)
The proofs of Theorems 10.4.1 and 10.4.2 parallel those of Propositions 10.1.1 and 10.1.2.
Theorem 10.4.1: If hG, αi is a B-voltage graph with |B| = n . Then there are n times as
many vertices and directed edges (bidirected edges are counted as two directed edges) in
~ α as in the voltage graph G.
the covering digraph G ~

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

nv(W ) = [α(e1 )]δ1 [α(e2 )]δ2 · · · [α(en−1 )]δn−1

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: Since Gα is a simple graph, girth(G) ≥ 3. Suppose W is a closed signed walk in G ~α


α
which corresponds to a cycle in G with length equal to girth(G). Its projection, π(W ), has
length equal to girth(G) and nv(π(W )) = ε, by Proposition 10.4.4. Therefore, the minimum
length of all terminal walks in G~ of length 3 or greater is less than or equal to the girth of
G.
Conversely, suppose W is a terminal walk in G ~ with length at least 3. Then, by Corollary
~ α of the same length as W . Therefore, girth(G) is less
10.4.6, there is a closed walk W̃ in G
than or equal to the minimum length of all terminal walks in G ~ of length 3 or greater. ♦

Proposition 10.4.8: Suppose G is a Cayley graph C(B, X) with |X| ≥ 2. If B is Abelian,


then girth(G) ≤ 4.

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

Example 10.4.6: The website [Link] specifies Pla-


tonic and Archimedean solids, prisms, and anti-prisms as Cayley graphs (where possible).
The icosahedron has twelve vertices of degree 5 and twenty 3-sided faces. The site speci-
fies this Platonic solid as the Cayley graph C(A4 , {(123), (234), (13)(24)}), where A4 is the
alternating group on four elements, as illustrated in Figure 10.4.6. If the three arcs in the
A4 -voltage graph B3 are labeled a, b, c with α(a) = (123), α(b) = (234), and α(c) = (13)(24),
then the 3-cycles in the Cayley graph are generated by three terminal walks of length 3 in
the A4 -voltage graph:

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

Figure 10.4.6 C(A4 , {(123), (234), (13)(24)}) is the icosahedron graph.

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

Figure 10.4.7 The truncated icosahedron graph is a Cayley graph.

Natural Transformation and Vertex-Transitivity


definition: Let hG, αi be a B-voltage graph, and let a ∈ B. The natural transformation
ϕa on the covering graph Gα is given by the rules: ϕa (vb ) = vab and ϕa (eb ) = eab , for all
b ∈ B.
Remark: When the voltage group is non-Abelian, it is important to observe that the
automorphism ϕa acts by multiplying on the left. When the voltage group is Abelian, as in
most of our examples, the natural transformation is given by addition to the subscripts.
Proposition 10.4.9: Let hG, αi be a B-voltage graph, and let a ∈ B. Then the natural
transformation ϕa : Gα → Gα is an automorphism.

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

Figure 10.4.9 A Z4 -voltage graph and its covering digraph.

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 ♦

EXERCISES for Section 10.4


10.4.1 Draw the Cayley graph for the given group and generating set.

(a) The cyclic group Z9 with generating set {1, 3}.


(b) The cyclic group Z10 with generating set {2, 5}.
(c) The group Z2 × Z3 with generating set {10, 01}.
(d) The group Z2 × Z3 × Z4 with generating set {110, 101, 011}.
Section 10.4 General Voltage Graphs 433

10.4.2 Draw the Cayley graph for the given group and generating set, and draw its voltage-
graph specification.

(a) The group Z2 × Z3 with generating set {11, 12}.


(b) The dihedral group D5 of rigid-body motions on a regular pentagon, using a 72◦
rotation r and a reflection s through the vertical axis as generators.
(c) The symmetric group Σ4 of permutations on the set {1, 2, 3, 4}, with generating set
{(1 2 3 4), (1 2)(3)(4)}.
(d) The alternating group A4 of permutations on the set {1, 2, 3, 4}, with generating set
{(1 2 3)(4), (1 2 4)(3)}.

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.

(a) Voltage graph of Exercise 10.4.1(a) and transformation ϕ2


(b) Voltage graph of Exercise 10.4.1(b) and transformation ϕ3 .
(c) Voltage graph of Exercise 10.4.2(b) and transformation ϕs .

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.

(a) Voltage graph of Exercise 10.4.3(a) and transformation ϕ11 .


(b) Voltage graph of Exercise 10.4.3(b) and transformation ϕ10 .
(c) Voltage graph of Exercise 10.4.3(c) and transformation ϕ01 .

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

10.5 PERMUTATION VOLTAGES


Modifying the covering graph so that subscripts may be the objects of any permutation
group is a powerful way to expand the class of graphs that can be specified by voltage
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.

conventions: Permutation-voltage graphs may also use the bidirected-arc convention.

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.

Drawing Graphs Specified by Permutation Voltages


There is no fixed rule to determine the best way to position the vertices in drawing the
covering graph from a voltage graph. If the voltage graph has only one vertex, one way is
to arrange all the vertices in a circle, and another is to group the vertices according to the
partition imposed by the disjoint-cycle structure of the permutation voltage on one of the
self-loops of the voltage graph.
Example 10.5.2: Figure 10.5.2(i) shows Σ6 -voltages on the bouquet B2 . Figure 10.5.2(ii)
shows the covering graph with its vertices arranged around the regular hexagon generated
by self-loop d. Figure 10.5.2(iii) shows the covering graph with the vertices grouped into
vertical columns according to the partition imposed by the disjoint-cycle structure of the
permutation voltage on self-loop e.

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.

Specifying the deBruijn Graphs


definition: The (2, n)-deBruijn digraph D2,n consists of 2n−1 vertices, labeled by the
bitstrings of length n − 1, and 2n arcs, labeled by the bitstrings of length n. The arc
b1 b2 . . . bn−1 bn is directed from vertex b1 b2 . . . bn−1 to vertex b2 . . . bn−1 bn . Figure 10.5.4
shows D2,4 .

100 110

000 010 101 111

001 011

Figure 10.5.4 The (2, 4)-deBruijn digraph D2,4 .

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.

ζn (b1 b2 . . . bn−1 bn ) = b2 . . . bn−1 bn b1

When the context is clear, it is simply denoted ζ.


Section 10.5 Permutation Voltages 437

definition: The deBruijn permutation, denoted δn , is a permutation of the set of bit-


strings of length n that consists of a left cycle-shift followed by “flipping” the rightmost
bit.
ζn (b1 b2 . . . bn−1 bn ) = b2 . . . bn−1 bn (1 − b1 )
When the context is clear, it is simply denoted δ.
Example 10.5.4: Consider the set Y = {000, 001, 010, 011, 100, 101, 110, 111} of all bit-
strings of length 3. The disjoint-cycle representation of the cycle-shift ζ3 is

ζ3 = (000) (001 010 100) (011 110 101) (111)

and the disjoint-cycle representation of the deBruijn permutation δ3 is

δ3 = (000 001 011 111 110 100) (101 010)

Let P = [P : Y ] be the permutation group generated by ζ3 and δ3 . (The group P


has 24 elements, as explained below, but it is not necessary to know this.) Figure 10.5.5(i)
shows a P-voltage graph that specifies the deBruijn graph D2,4 . Figure 10.5.5(ii) shows the
covering graph, using the clarifying-graphic conventions. This construction generalizes to
all deBruijn graphs.
100 110

δ3
000 010 101 111
ζ3

001 011

(i) (ii)
Figure 10.5.5 Specifying the deBruijn digraph D2,4 with permutation voltages.

Wreath Product Zn ⊗wr Z2 †


The permutalion group generated by ζn and δn is known as the wreath product
Zn ⊗wr Z2 . Each of its elements can be denoted by a pair hk, b0 b1 . . . bn−1 i containing an
integer k ∈ {0, 1 . . . , n − 1} and a bitstring b0 b1 . . . bn−1 of length n. It permutes a bitstring
of length n by first cycle-shifting its bits k positions leftward and then adding the bitstring
b0 b1 . . . bn−1 to the result. In this notation,

ζ3 = h1, 000i and δ3 = h1, 001i


For instance,
h1, 001i (011) = 110 + 001 = 111
and
h1, 000i (011) = 110 + 000 = 110

† 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.

EXERCISES for Section 10.5


10.5.1 Draw the covering digraph for the given permutation-voltage graph.
b b d d b b d d
(a) (b)
u (1u 2 4)(
(1 3)
2 4)(v3) v u (1u 2)((1
3 4)
2)(3 4)
v v
c c c c

(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

(1 2 3(14 25)3 4 5) (1 3 5(12 34)5 2 4) (1 2 3(14 25)3 4 5) (1 3 5(12 34)5 2 4)

(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.

10.5.5 Write the disjoint-cycle decomposition of the product δ3 δ3 .


10.5.6 Write the product δ3 δ3 as a pair hk, b0 b1 b3 i.
10.5.7 Calculate the image of the given permutation from the wreath product Z3 ⊗wr Z2
on the given bitstring.

(a) h1, 101i(010)


(b) h2, 010i(100)
(c) h2, 101i(101)
Section 10.6 Symmetric Graphs and Parallel Architectures 439

10.6 SYMMETRIC GRAPHS AND PARALLEL ARCHITECTURES


When there is a need to write a brief specification of a given fixed graph G, it is natural
to turn to voltage-graph methods to try to design such a specification. Historically, voltage
graphs were developed to specify network layouts on surfaces. Use of voltage graphs to
specify networks of processors for parallel-computation architectures began more recently.

Theoretical Criteria for Designing Base Graphs


definition: When voltages are assigned to the edges of a digraph G, that digraph is called
the base digraph of the construction.
definition: The base graph of a voltage-graph construction is the underlying graph of
the base digraph.
definition: The natural projection of a voltage-graph construction is the graph mapping
that carries every vertex fiber ṽ to its base vertex v and every edge fiber ẽ to its base edge
e. (In effect, the natural projection “erases” the subscripts.)
Theorem 10.6.1 and Theorem 10.6.2 are fundamental to every application of voltage
graphs, since they prescribe properties of the base graph that narrow the candidates to a
tractably small number of possibilities. The importance of Theorem 10.6.3 is its implication
that the base graph can be developed first and the directions assigned afterward. Theorems
10.6.1 through 10.6.4 and their proofs parallel those of Propositions 10.1.1 through 10.1.4.
Theorem 10.6.1: Let hG, α : EG → Ai be either a regular-voltage graph with |A| = n or
a permutation-voltage graph with n objects in the permuted set. Then there are n times as
many vertices and edges in the covering digraph Gα as in the base graph G.

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.

Specification Problems with Elementary Solutions


Given a fixed graph G̃ = (Ṽ , Ẽ), a solution to the fundamental specification problem
has three steps:
(1) Design a plausible base digraph G = (V, E).
(2) Select a plausible voltage group.
(3) Design a suitable voltage assignment.

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

definition: A unified specification for an entire family of graphs (typically) consists of


a single base graph and a single voltage assignment formula that specifies every graph in
the family.
In accordance with Theorem 10.6.1, the first step in designing a specification for a given
graph G̃ (or family of graphs) begins by calculating gcd(|Ṽ |, |Ẽ|) (or a formula for the whole
family). Ideally, there will be a base digraph G = (V, E) that satisfies the conditions

|Ṽ | |Ẽ|
|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

|Ṽ | = |VCLn | = 2n and |Ẽ| = |ECLn | = 3n

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

Example 10.6.2: The complete bipartite graph Kn,n has

|Ṽ | = |V (Kn,n )| = 2n and |Ẽ| = |E(Kn,n )| = n2

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

Figure 10.6.2 Specifying the complete bipartite graph Kn,n .

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

Figure 10.6.3 Using B2 to specify the complete bipartite graph K4,4 .


442 Chapter 10 ALGEBRAIC SPECIFICATION OF GRAPHS

Example 10.6.3: The Möbius ladder MLn (depicted for n = 4 in Figure 10.6.4) has

Ṽ = |VMLn | = 2n and Ẽ = |EMLn | = 3n

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 .

Once again, the first base graphs G = (V, E) to consider have

|Ṽ | |Ẽ|
|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.

Specification Problems with Complicated Solutions


For various computational problems, it would be desirable to perform a distributed
computation on an n-dimensional hypercube network. However, there is a physical limit
to the number of communications links that can converge on a microscopic-size processor.
To overcome this problem, the processor at each corner of the hypercube is replaced by an
n-cycle of processors, with one edge of the hypercube linking each processor in the n-cycle
to another corner. Figure 10.6.5 shows the resulting network for dimension 3.
definition: The cube-connected-cycle graph CCC n is the 1-skeleton of the polyhedron
obtained by replacing each vertex of the n-cube by an n-cycle.
Section 10.6 Symmetric Graphs and Parallel Architectures 443

Figure 10.6.5 The cube-connected-cycle graph CCC 3

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,

|Ṽ | = |V (CCCn )| = n2n and |Ẽ| = |E(CCCn )| = n2n−1 + n2n = 3n2n−1

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

Figure 10.6.6 A (Zn ⊗wr Z2 )-voltage graph specifying CCC n .

The specified graph for n = 3 is shown in Figure 10.6.7.

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

0,100 2,100 0,101


2,101

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

Figure 10.6.7 The graph CCC3 , as specified by Figure 10.6.6.

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

Figure 10.6.8 A regular-voltage graph specifying WBF 3 .

Suppose it is now reinterpreted as a regular-(Z3 ⊗wr Z2 )-voltage graph, instead of a


permutation-(Z3 ⊗wr Z2 )-voltage graph. Then the result, shown in Figure 10.6.9, is called the
3-dimensional wrapped-butterfly graph WBF 3 . Higher dimensional wrapped-butterfly
graphs are used in parallel computation of fast Fourier transforms.
2,000 2,001
0,001
1,000 1,001
0,000
0,100 0,101

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

Figure 10.6.9 The wrapped-butterfly graph WBF 3 .


10.7 Supplementary Exercises 445

EXERCISES for Section 10.6


10.6.1 Design a voltage graph to specify the given graph or family of graphs.

(a) The octahedral graph Q4 . (b) The family On of octahedral graphs.

(c) The graph Q3 × C3 . (d) The family Q3 × Cn .

(e) The graph K5 × C5 . (f) The familyK5 × Cn .

(g) The graph K5 × K5 . (h) The graph K5 + C5 .

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.

10.6.2 Construct a permutation-voltage graph that specifies the shuffle-exchange graph.


10.6.3 Give a counterexample to the converse of Theorem 10.6.4.

10.7 SUPPLEMENTARY EXERCISES


10.7.1 Draw the covering graph specified by this voltage graph with cyclic voltages in the
group Z5 . Suppose the voltages were from an arbitrary cyclic group Zn . Why is the covering
graph 2-factorable (see §6.5)?

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.

clarifying-vertex-graphic convention for voltage graphs: each vertex of the base


graph is drawn in a unique graphic, and all the vertices in its fiber are drawn in that
same graphic; moreover, each vertex in the fiber is labeled by its subscript only, with
its mainscript omitted.
covering digraph for a voltage graph hG, αi: the graph Gα = (V α , E α ).

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

cube-connected-cycle graph CCC n : the vertex-set is {(k, b) | k ∈ Zn , b ∈ Zn2 }, and


two vertices (k, b) and (m, c) are adjacent if and only if k = m while b and c differ in
only one bit or b = c and k = m ± 1; isomorphic to the 1-skeleton of the polyhedron
obtained by chopping the corners off an n-dimensional hypercube.
(left) cycle-shift ζn : a permutation of the set of bitstrings of length n that transfers the
leftmost bit of a bitstring to the right end. When the context is clear, it is simply
denoted ζ.
cyclic voltage (or Zn -voltage): a label on an arc by a number j(mod n) (i.e., by an
element of the cyclic group Zn .
deBruijn permutation δn : a permutation of the set of bitstrings of length n that consists
of a left cycle-shift followed by adding 1 (mod 2) to the rightmost bit. When the context
is clear, it is simply denoted δ.
diameter diam(G) of a graph G: the maximum of the distances d(u, v), taken over all
pairs of vertices of G.
fiber ẽ over an edge e of a voltage graph: (1) for regular voltages in a group B =
< B, · >, the edge-set {eb | b ∈ B} in the covering graph Gα ; (2) for permutation
voltages in a permutation group P = [P : Y ], the edge-set {ey | y ∈ Y } in Gα .
fiber ṽ over a vertex v of a voltage graph: (1) for regular voltages in a group B =
< B, · >, the vertex-set {vb | b ∈ B} in the covering graph Gα ; (2) for permutation
voltages in a permutation group P = [P : Y ], the vertex-set {vy | y ∈ Y } in Gα .

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.

natural projection of a voltage-graph construction: the “subscript-erasing” graph


mapping that carries every vertex fiber ṽ to its base vertex v and every edge fiber
ẽ to its base edge e.
natural transformation ϕa on a voltage-specified covering graph Gα : the graph au-
tomorphism with vertex function vb 7→ vab and edge function eb 7→ eab , for all y ∈ B.

permutation voltage: a label on an arc by an element of a permutation group P = [P :


Y ].
regular voltage: a label on an arc by an element of a group B.
shuffle-exchange digraph SE ~ n : the vertex-set is the length-n bitstrings; 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.
unified specification for a family of graphs or digraphs: usually, a single base graph
and a single voltage-assignment formula that specifies every graph or digraph in the
family.

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

voltage on an arc of a digraph: a label by an element of a group B or of a permutation


group P = [P : Y ].
voltage assignment on a digraph: a function α that labels every arc with a voltage from
a group B or from a permutation group P = [P : Y ].
voltage graph: a pair hG, αi such that G is a digraph and α is a voltage assignment on
G.

—, B-voltage graph: a voltage graph with voltage group B.


—, Zn -voltage graph: a voltage graph with voltage group Zn .
voltage group: the group from which the voltages are assigned.
Chapter 11

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

11.1 REPRESENTING IMBEDDINGS BY ROTATIONS


We have seen that a graph imbedding can be represented by a drawing on a flat poly-
gon representation of a surface. It is helpful also to have a precise combinatorial form of
represention of a graph imbedding that does not depend on drawing pictures.

Review of Closed Surfaces and Flat Polygon Drawings


review from §5.2:
Theorem 5.2.2 Classification of Closed Orientable Surfaces. Every closed orientable
surface is topologically equivalent to exactly one of the surfaces in the infinite sequence
S0 , S1 , S2 , . . ..

S0 S1 S2 S3
Figure 5.2.6 The sequence of closed orientable surfaces.

review from §5.2: A crosscap is a portion of a surface that is topologically equivalent to


a Möbius band. In a drawing of a non-orientable surface, a crosscap is commonly represented
by a circle with an inscribed crossmark.
Theorem 5.2.3 Classification of Closed Non-Orientable Surfaces. Every closed non-
orientable surface is topologically equivalent to exactly one of the surfaces in the infinite
sequence N1 , N2 , N3 , . . ..

N1 N2 N3

Figure 5.2.7 The sequence of closed non-orientable surfaces.

review from §5.5: A flat polygon representation of a surface S is a drawing of a


polygon with markings to match its sides in pairs, such that when the sides are pasted
together as the markings indicate, the resulting surface obtained is topologically equivalent
to S.

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.

Rotations and Rotation Systems


definition: A rotation at a vertex v of a graph G is a cyclic permutation of the edge-
ends incident on v.
definition: A rotation system for a graph G is an assignment of a rotation to every
vertex.
±
terminology: A rotation system is also regarded as a permutation on the set EG of
edge-ends. This permutation is also called a rotation system.
Remark: It is assumed here that the orientable surfaces we are discussing are subsets of
Euclidean 3-space. The intent of this assumption is to impose a fixed distinction between
clockwise and counterclockwise on the surface.
terminology: An orientable surface is oriented if one of the orientations clockwise or
counterclockwise is designated as preferred.
definition: Let h : G → SG be a graph imbedding in an oriented surface. The induced
rotation at v is the cyclic permutation ρh (v) of edge-ends incident on v in the order in
which they are encountered in a traversal around v in the preferred orientation.
definition: Let h : G → SG be a graph imbedding in an oriented surface. The induced
rotation system ρh is the function that assigns to each vertex v ∈ VG the rotation ρh (v).
definition: Let ρ be a rotation system for a graph G. The rotation table for ρ, denoted
Tρ , has one row for each vertex of G. The content of each row of the table is the name of
a vertex, followed by a complete list of the edge-ends incident on that vertex, in an order
consistent with ρ(v). (It is a common custom to write each row in lexicographic order.)
Example 11.1.1: Figure 11.1.1 shows an imbedding of K4 in the sphere and a table rep-
resenting the rotation system it induces. The direction arc around vertex v1 indicates that
the preferred orientation is counterclockwise (globally).

Q h : G → S be an oriented graph imbedding, and let ρh be the


Proposition 11.1.1: Let
induced rotation. Then v∈VG ρh (v) is a permutation on the edge-ends of G.
454 Chapter 11 NON-PLANAR LAYOUTS

Figure 11.1.1 An imbedding g : K4 → S0 and its induced rotation system ρg .

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.

Figure 11.1.2 An imbedding h : K4 → S1 and its induced rotation system ρh .

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σ ).

Algorithm 11.1.1: Circulation


Input: a rotation table Tρ , an edge-end eσ
Output: the edge-end ρ∗ (eσ )
Find the (only) row v in table Tρ that contains the edge-end e−σ .
Return (whatever edge-end follows e−σ in row v).

Example 11.1.3: In the imbedding g : K4 → S0 of Example 11.1.1,

ρ∗ = (a+ e+ c− ) (a− b+ d− ) (b− c+ f − ) (d+ f + e− )


Section 11.1 Representing Imbeddings by Rotations 455

Example 11.1.4: In the imbedding h : K4 → S1 of Example 11.1.2,

ρ∗ = (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.

Theorem 11.1.2: [Heffter-Edmonds Theorem] [He1891] [Ed60] In a cellular imbed-


ding h : G → Sg , each cycle of the induced dual rotation ρ∗h coincides with a face-boundary
walk of the imbedding h.

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.

Algorithm 11.1.2: Face-Tracing


Input: edge-end list E ± , rotation table Tρ
Output: list of all cycles of the circulation ρ∗ (eσ )
{Initialize} mark all edge-ends unused
While any unused edge-ends remain
Choose next (lex order) unused edge-end eσ1 from E ±
Start new cycle by writing left parenthesis “(”
e := eσ1
Repeat
Write e next in current cycle
e = ρ∗ (e) {call Circulation Algorithm}
Until e = eσ1
Close current cycle by writing right parenthesis “)”
Return

The Induced Surface of a Rotation System


notation: Let z be a cyclic permutation. Then length(z) denotes its length.
definition: Let ρ be a rotation system for a graph G. For each cycle z of the dual rotation
ρ∗ , let pz be a polygon with length(z) sides, labeled consecutively by the edges of the cycle
in graph G that corresponds to the permutation cycle z. The set of all such polygons is
called the polygon set for rotation ρ.
Proposition 11.1.3: Let ρ be a rotation system for a graph G, and let {pz } be the polygon
set for ρ. Then the list of all boundary walks of all the polygons in {pz } mentions each edge
of graph G exactly twice.

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.

Figure 11.1.3 A rotation system for K4 and its labeled polygons.

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.

Figure 11.1.4 An imbedding h : K4 → S1 and its induced rotation system ρh .

definition: Let ρ be a rotation system for a graph G. The imbedding induced by ρ


is the oriented imbedding of G into the induced surface S(ρ) whose face-boundary walks
coincide with the cycles of the circulation ρ∗ . It is denoted ιρ .

Counting the Imbeddings of a Graph


terminology: An imbedding on an oriented surface is called an oriented imbedding.
definition: Let h : G → S and h0 : G → S 0 be two oriented imbeddings of a graph G. They
are equivalent imbeddings if they have exactly the same set of face-boundary walks.
Section 11.1 Representing Imbeddings by Rotations 457

Proposition 11.1.4: Let h : G → S and h0 : G → S 0 be two oriented imbeddings such


that ρh = ρ0h . Then h and h0 are equivalent imbeddings.

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.

Theorem 11.1.5: Let G be a connected graph. The correspondence between equivalence


classes of oriented imbeddings of G and rotation systems of G is a bijection.

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.

Theorem 11.1.6: Let G be a connected graph. Then



X Y
γg (G) = [deg(v) − 1]!
g=0 v∈VG

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).

Example 11.1.6: By Theorem 11.1.6, it follows that K4 has 16 inequivalent imbeddings.


All of them can be obtained by systematically listing the rotation systems for K4 . Two of
them are imbeddings in S0 with four 3-sided faces, six of them are imbeddings in S1 with a
4-sided face and an 8-sided face, and eight of them are imbeddings in S1 with a 3-sided face
and a 9-sided face. Rather than exhaustively applying the Face-Tracing Algorithm to all
16 rotation systems, it is possible to use the symmetry of the graph and Examples 11.1.1,
11.1.2, and 11.1.5 to complete this calculation.
458 Chapter 11 NON-PLANAR LAYOUTS

EXERCISES for Section 11.1


11.1.1 Write the rotation system for the given imbeddings in the sphere S0 .

(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.

(a) (b) (c)


u: a+ b+ d+ u: a+ b+ d+ u: a+ b+ d+
v: b− c− e+ v: b− e+ c− v: b− e+ c−
w: a− f+ c+ w: a− f+ c+ w: a− f+ c+
x: d− g− i+ x: d− g− i+ x: d− g− i+
y: e− h+ g+ y: e− h+ g+ y: e− g+ h+
z: f− i− h− z: f− i− h− z: f− i− h−

(d) (e) (f)


v: a+ c− b+ v: a+ c− b+ v: a+ c− b+
w: a− d+ e+ w: a− d+ e+ w: a− d+ e+
x: e− g+ h+ x: e− g+ h+ x: e− h+ g+
y: c+ h− f+ y: c+ h− f+ y: c+ h− f+
z: b− f− g− d− z: b− f− d− g− z: b− f− d− g−
Section 11.2 Genus Distribution of a Graph 459

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 .

11.2 GENUS DISTRIBUTION OF A GRAPH


The difficult problem of minimizing the number of handles needed to eliminate all the
edge-crossings from a drawing of a complete graph arose in the 19th century. Gerhard Ringel
worked from 1950 to 1968 to solve this problem, which he completed in 1968, with the aid
of J.W.T. Youngs. The present perspective incorporates a much wider range of problems,
involving algebraic enumeration and algorithmics.

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

Theorem 11.2.1: Let G be a connected graph. Then


 
|E|(girth(G) − 2) |V |
γmin (G) ≥ − +1
2 · girth(G) 2

Proof: Given a minimum imbedding G → S, the Euler polyhedral equation is

|V | − |E| + |F | = 2 − 2γmin (G)

The Edge-Face Inequality (see §4.5 and §5.5) implies that

2|E|
|F | ≤
girth(G)

which implies that


E|(girth(G) − 2)
|V | − (G) ≥ 2 − 2γmin (G)
girth
and, in turn, that
|E|(girth(G) − 2) |V |
γmin (G) ≥ − +1
2 · girth(G) 2
Since γmin (G) is integer-valued, the conclusion follows. ♦
Corollary 11.2.2: Let G be a simple connected graph. Then
 
|E| |V |
γmin (G) ≥ − +1
6 2

Proof: Since G is simple, it follows that girth(G) ≥ 3. Thus,

|E|(girth(G) − 2) |E| |E| |E|


= − ≥
2 · girth(G) 2 girth(G) 6

and the result follows immediately from Theorem 11.2.1. ♦


Example 11.2.3: Since girth(K8 ) = 3, it follows from Corollary 11.2.2 that
 
|E| |V |
γmin (K8 ) ≥ − +1
6 2
   
28 8 5
= − +1 = =2
6 2 3

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

γmax (G) = max {g | γg (G) > 0}

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

definition: Any imbedding of a graph on a maximum (orientable) surface is called a


maximum (orientable) imbedding.
review from §3.2: The cycle rank (or Betti number) of a connected graph G is

β(G) = |E| − |V | + 1

Theorem 11.2.3: Let G be a connected graph. Then


 
β(G)
γmax (G) ≤
2
Proof: Given a maximum imbedding G → S, the Euler polyhedral equation is

|V | − |E| + |F | = 2 − 2γmax (G)

Rearranging the Euler equation yields

2γmax (G) + |F | = |E| − |V | + 2 = β(G) + 1

which implies (since |F | ≥ 1) that


β(G)
γmax (G) ≤
2
Since γmax is integer-valued, the conclusion follows. ♦
Example 11.2.4: The maximum genus of a tree T is 0, since β(T ) = 0.

Example 11.2.5: Example 11.1.2 contains an imbedding of K4 in S1 . Therefore,


γmax (K4 ) ≥ 1. Moreover, by Theorem 11.2.3,
   
β(K4 ) 3
γmax (K4 ) ≤ = =1
2 2
Combining these two bounds yields the value γmax (K4 ) = 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

{g | G has a rotation system ρ such that g is the genus of S(ρ)}

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

ιρ : G → S(ρ) and ιλ : G → S(λ)


462 Chapter 11 NON-PLANAR LAYOUTS

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

γ (S(η)) ≤ γ (S(ρ)) ≤ γ (S(η)) + 1 and γ (S(η)) ≤ γ (S(λ)) ≤ γ (S(η)) + 1

Thus, |γ (S(ρ)) − γ (S(λ))| ≤ 1. ♦


Corollary 11.2.5: [Interpolation Theorem] [Du66] Let G be a connected graph, and
let γmin (G) ≤ g ≤ γmax (G). Then γg (G) ≥ 1.

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].

computational note: Since there are super-exponentially many rotation systems to


consider, trying to determine the minimum genus or the maximum genus of a given graph, by
an exhaustive algorithm, is computationally infeasible. The upper bound of Theorem 11.2.3
is not necessarily the maximum genus. There is a polynomial-time algorithm [FuGrMc88]
to calculate the maximum genus. The lower bound of Theorem 11.2.1 is not necessarily the
minimum genus. Deciding whether a given integer is the minimum genus of a graph is an
NP-complete problem [Th89].

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.

Theorem 11.2.6: Let G be a connected simple graph. Then


 
|E|
γ min (G) ≥ − |V | + 2
3

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

Theorem 11.2.7: Let G be a connected graph. Then

γ max (G) = β(G)

where β(G) = |E| − |V | + 1.

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]. ♦

EXERCISES for Section 11.2


11.2.1 Use Corollary 11.2.2 to calculate a lower bound for the minimum 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) K6,6 . (j) Q6 .
(k) The result of amalgamating two copies of K5 at a vertex.
(l) The result of amalgamating two copies of K5 on an edge.

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 .

11.2.5 Prove Theorem 11.2.6.

11.3 VOLTAGE-GRAPH SPECIFICATION OF GRAPH LAYOUTS


The application that inspired the invention of voltage graphs originally was the specifi-
cation of graph imbeddings. This section explains how a cellular drawing of a voltage graph
on a surface generates an imbedding for the covering graph. In this section, it is assumed,
for the sake of simplicity, that the voltages are regular and that the group is additive.
464 Chapter 11 NON-PLANAR LAYOUTS

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

α(W ) = α(d) + α(c) − α(e) = 1 + 0 − 2 = −1(mod 5)

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

Theorem 11.3.1: Unique Walk Lifting Let hG, α : EG → Ai be a voltage graph in


which there is a signed walk
W = hv0 , eσ1 1 , v1 , eσ2 2 , v2 , . . . , vn−1 , eσnn , vn i
and let a ∈ A. Then there is a unique alternating sequence
Wa = v0,a , eσ1,a
1
, v1,k1 , eσ2,k
1
1
, v2,k2 , . . . , vn−1,kn−1 , eσn,k
n
n−1
, vn,kn
that forms a signed walk in the covering digraph Gα .
Proof: For j = 1, . . . , n, choose
j−1
X
kj = a + α(e` )
`=1

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 .

Kirchoff ’s Voltage Law


definition: A closed walk of an imbedded voltage graph satisfies the Kirchhoff ’s voltage
law (KVL) if its net voltage is the identity element of the voltage group.
Theorem 11.3.3: Let W be a signed closed walk in a voltage graph that satisfies KVL.
Then every lift Wb is a closed walk in the covering graph Gα .
Proof: This is an immediate consequence of Proposition 11.3.2. ♦
Theorem 11.3.4: Let hG, α : EG → Ai be a voltage graph, and let W be a signed closed
walk in G, such that α(W ) = b is of order m in the voltage group A. Then the concatenation
Wa Wa+b · · · Wa+(m−1)b
is a closed walk in Gα .
466 Chapter 11 NON-PLANAR LAYOUTS

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.

KVL-Imbedded Voltage Graphs


definition: An imbedded voltage graph is a pair hι : G → S, α : EG → Ai. The first
component is a cellular imbedding of a graph G in a surface S, called the base imbedding.
The second component is a voltage assignment on graph G.
definition: A face of an imbedded voltage graph is said to satisfy the KVL if the net
voltage on the face boundary walk is 0.
definition: A KVL-imbedded voltage graph is an imbedded voltage graph in which
every face satisfies KVL.
Remark: In the preceding definition, notice the difference between the classical Kirchoff’s
voltage law of physics and its topological namesake. Whereas the physical law is that a net
voltage gain of 0 occurs in the traversal of every closed walk, the topological law imposes
this requirement only on face-boundary walks. (See Exercises.)
definition: In a KVL-imbedded voltage graph with voltage group A, let f be a k-sided
face with boundary walk W . Then the fiber over f , denoted fˆ, is the set {fa | a ∈ A} of
k-sided polygons, called the covering faces. The boundary walk of the covering face fa is
labeled by the lifted walk Wa of the covering graph.
definition: Let hι : G → S, α : EG → Ai be a KVL-imbedded voltage graph. Fitting each
covering face fa , for f ∈ Fι and a ∈ A, in accordance with its labeling to the corresponding
lift of a boundary walk of f forms the covering surface S α and the covering imbedding
ια : Gα → S α .
Example 11.3.3: Figure 11.3.2 illustrates a one-face KVL imbedding B2 → S1 with volt-
ages in Z5 and the covering imbedding K5 → S1 that it specifies.

Figure 11.3.2 A KVL voltage graph and its covering imbedding.


Section 11.3 Voltage-Graph Specification of Graph Layouts 467

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.3 Specifying K7 by Z7 -voltages on B3 .

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

Figure 11.3.4 Specification of an imbedding K7 → S1 .

EXERCISES for Section 11.3


11.3.1 Draw the covering imbedding generated by the given KVL voltage graph in S1 .

(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.

11.3.6 Construct the designated lift of the given signed walk.

(a) Signed walk c+ , d− , c+ , b− in this Z3 -voltage graph, starting at vertex u2 .


b0
u0 v0
c0 d1
0
b

u c
1 v b1
u1 d2 v1
d 2
c2 d
c1 0
b2
voltages in Z3 u2 v2

(b) Signed walk e− , e− , d+ in this Z6 -voltage graph, starting at vertex v4 .


v2 d1 v1

d2 e1 e0 d0
1 2
d e v3 e2 e5 v0
v
d3 e3 e4 d5

voltages in Z6 v4 d4 v5

(c) Signed walk c+ , d− , e+ in this Z2 × Z2 -voltage graph, starting at vertex u01 .


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
Section 11.3 Voltage-Graph Specification of Graph Layouts 469

(d) Signed walk c+ , d− , e+ in this Z2 × Z2 × Z2 -voltage graph, starting at vertex u101 .

u110 v110
v111 u111
001 u101 v101
c u100
v100
u 010 v
d v010 u010
e 100 u011 v011

u000 v001 v000 u001

(e) Signed walk b+ , c+ , d− in this permutation-Σ3 -voltage graph, starting at vertex u3 .


d3
u3 v3

b d b3 b2 c2
(123) u2 v2
u c v c3
d2

b1 c1 d1
(123) ( 1 2 )( 3 )
u1
v1

definition: Let hG, α : EG → Bi be a regular-voltage graph, and let v ∈ VG . The local


group at v is the subgroup of B comprising the net voltages on all closed walks based at
v. (This concept concerns components of the covering graph.)

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

11.4 NON-KVL-IMBEDDED VOLTAGE GRAPHS


When an imbedded voltage graph hι : G → S, α : EG → Ai does not satisfy KVL, con-
structing the covering faces is somewhat more complicated, because a single lift of a non-
KVL face-boundary walk W in the voltage graph is not a closed walk in the covering graph.
However, it is possible to concatenate several lifts of W together into a closed walk and to
fit a polygon to that closed walk.
notation: In a non-KVL-imbedded voltage graph with voltage group A, let f be a k-sided
face with boundary walk W having net voltage b of order m. Then the set containing the
walk
Wa Wa+b · · · Wa+(m−1)b
and all cyclically equivalent walks is denoted Wa+<b> .

Non-KVL Covering Faces


definition: In a non-KVL-imbedded voltage graph with voltage group A, let f be a k-
sided face with boundary walk W having net voltage b of order m. Then the fiber over f ,
denoted f˜, is a set of mk-sided polygons fa+<b> , called the covering faces, one for each
equivalence class Wa+<b> of closed walks. The boundary walk of the covering face fa+<b>
is labeled by any closed walk in Wa+<b> .
definition: Let hι : G → S, α : EG → Ai be a non-KVL-imbedded voltage graph. Fitting
each covering face fa+<b> , for f ∈ Fι and a ∈ A, in accordance with its labeling to the
corresponding closed lift of a boundary walk of f forms the covering surface S α and the
covering imbedding ια : Gα → S α .
Example 11.4.1: The imbedded (Z2 × Z2 )-voltage graph in Figure 11.4.1 has three faces,
all 2-sided. The net voltage on each face boundary has order 2. Thus, the 12 boundary walk
lifts combine to form six face boundaries in the covering graph. They fit together, as shown,
to form the surface of a cube. In particular, the upper digon of the imbedded voltage graph
specifies the top and bottom faces of the cube; the lower digon specifies the left and right
faces; and the exterior digon specifies the front and back faces.

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

Figure 11.4.1 Specification of an imbedding Q3 → S0 .


Section 11.4 Non-KVL-Imbedded Voltage Graphs 471

Minimum-Genus Formula for Hypercube Graphs


A standard approach to deriving a minimum-genus formula for a family of graphs is to
use algebraic methods to establish a lower-bound formula and a voltage-graph construction
of imbeddings that realize that lower bound. The family of hypercubes Qn illustrates the
doubly fortunate circumstance in which no surface surgery is needed, and one simple pattern
of imbedded-voltage-graph drawing is enough to specify all the imbeddings.
Proposition 11.4.1: γmin (Qn ) ≥ (n − 4) · 2n−3 + 1, for n ≥ 2.
Proof: For n = 2 or n = 3, the right side is 0. For n ≥ 4, Theorem 11.2.1 gives the generic
lower bound  
|E| (girth(G) − 2) |V |
γmin (G) ≥ − +1
2girth(G) 2
Since |V (Qn )| = 2n , |E(Qn )| = n · 2n−1 , and girth(Qn ) = 4, this particularizes to
n · 2n−1 (4 − 2) 2n
 
γmin (Qn ) ≥ − +1
2·4 2
n · 2n−1 (4 − 2) 2n
= − +1
2·4 2
= n · 2n−3 − 2n−1 + 1
= (n − 4) · 2n−3 + 1

Proposition 11.4.2: γmin (Qn ) ≤ (n − 4) · 2n−3 + 1, for n ≥ 2.
Proof: It suffices to specify an imbedding of Qn on the surface of genus (n − 4) · 2n−3 + 1.
The voltage graph of Figure 11.4.1 for Q3 generalizes to dimension n, as shown in Figure
11.4.2.
00 . . . 001

00 . . . 010

00 . . . 100
...

001 . . . 00

010 . . . 00

100 . . . 00

Figure 11.4.2 Voltage graph specifying Qn .

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

EXERCISES for Section 11.4


11.4.1 Draw the derived imbedding for the given voltage graph imbedded in S0 .

(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

11.5 HEAWOOD MAP-COLORING PROBLEM


The question of sufficiency of four colors (see §6.3) needed for a proper coloring of
an arbitrary sphere map was generalized by Percy Heawood. Heawood derived an upper
bound for the number of colors needed for an arbitrary map on any closed surface, given as
a formula in its Euler characteristic. Heawood’s upper bound was ultimately proved to be
the exact maximum for all surfaces except the Klein bottle N2 .
definition: The chromatic number of a surface S is the maximum of the chromatic
numbers of the simple graphs that can be imbedded on S.
review from §5.5: The Euler characteristic of the surface Sg with g handles is the
number 2 − 2g.
notation: As explained in §5.5, when colorings arise in topological graph theory, we need to
avoid confusion between conflicting uses of the Greek letter χ. Here we denote the chromatic
number of a graph or of a surface by chr (G) or chr (S), respectively. The Euler characteristic
of a surface is denoted by ec(S).

Heawood Number of a Surface


The following lemmas provide basic upper bounds for the chromatic number.
Lemma 11.5.1: Let G be a chr(S)-colorable chromatically critical
j graph k imbedded on a
6·ec(S)
closed surface S of Euler characteristic ec(S). Then chr(S) ≤ 7 − |VG | .

Proof: The notations δavg and δmin indicate average degree and minimum degree.

chr (S) = chr (G)


≤ δmin (G) + 1 (by Theorem 6.1.22)
≤ δavg (G) + 1
6 · ec(S)
≤6− +1 (by Theorem 5.5.6)
|VG |
 
6 · ec(S)
= 7− (since chr (S) is an integer)
|VG |

Lemma 11.5.2: Let S be a closed surface of Euler characteristic ec(S) ≤ 0. Then
6 · ec(S)
chr (S) ≤ 7 −
chr (S)
Proof: Let G be a chr(S)-colorable chromatically critical graph imbedded on a closed
surface S of Euler characteristic ec(S). Since chr(S) = chr(G) ≤ |VG | and ec(S) ≤ 0,
6 · ec(S) 6 · ec(S)

|VG | chr (S)
Therefore, by Lemma 11.5.1,
6 · ec(S) 6 · ec(S)
chr (S) ≤ 7 − ≤7− ♦
|VG | chr (S)
474 Chapter 11 NON-PLANAR LAYOUTS

definition: The Heawood number of a closed surface S is the number


$ p %
7 + 49 − 24 · ec(S)
H(S) =
2

Theorem 11.5.3: Heawood, 1890 Let S be a closed surface, orientable or non-


orientable, with Euler characteristic ec(S) ≤ 1. Then chr(S) ≤ H(S).

Proof: By Poincaré duality, it suffices to show that an arbitrary graph G imbeddable on a


surface S has chromatic number less than or equal to the Heawood number of the surface.
Moreover, it suffices to assume that G is chromatically critical.
For ec(S) = 1, Lemma 11.5.1 yields chr(N1 ) ≤ 6 = H(1). For ec(S) ≤ 0, Lemma 11.5.2
implies that
chr(S)2 − 7chr(S) + 6 · ec(S) ≤ 0
Factoring the quadratic polynomial on the left side yields the inequality
p ! p !
7 − 49 − 24 · ec(S) 7 + 49 − 24 · ec(S)
chr (S) − chr (S) − ≤0
2 2

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).

Heawood Conjecture and Minimum Genus


Heawood omitted proof that, for each surface, there is a map that realizes the Heawood
number. When the gap was noticed, Heawood’s assertion was reformulated as a conjecture.
definition: The Heawood conjecture is that a surface S has chromatic number H(S).
l m
Proposition 11.5.4: If γmin (Kn ) ≤ (n−3)(n−4)
12 for all n ≥ 4, then the Heawood conjec-
ture holds for all orientable surfaces.
j √ k
Proof: The surface Sg has Heawood number H(Sg ) = 7+ 1+48g 2 . If
 
(n − 3)(n − 4)
γmin (Kn ) ≤ for all n ≥ 4
12

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

Figure 11.5.1 The Gustin current graph for a toroidal imbedding of K7 .

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).

Minimum Genus of Complete Graphs, Case 7


The construction of a minimum imbedding for the complete graph Kn has many details.
The least complicated case is for n = 7 mod 12. We recall that Example 11.3.4 gives an
imbedded voltage graph that specifies a minimum imbedding of K7 . This smallest instance
starts a pattern that continues with minimum imbeddings for K19 and for K31 .
Example 11.5.1: The imbedded voltage graph in Figure 11.5.2 specifies a minimum
imbedding of K19 .

5
9 1
4
2 7 2 voltages in Z 19
6
8 3
1 9
5

Figure 11.5.2 KVL voltage graph for imbedding K19 → S20 .

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

Figure 11.5.3 KVL voltage graph for imbedding of K31 → S63 .

EXERCISES for Section 11.5


11.5.1 Draw an imbedded voltage graph that specifies a minimum imbedding of the given
graph.

(a) K43 . (b) K20 − 10K2 .


(c) K21 − C21 . (d) K44 − 22K2 .
(e) K4,4 − 4K2 . (f) K5,5 − C10 .

11.5.2 Verify the inequality (♣) in the proof of Proposition 11.5.4.

11.6 SUPPLEMENTARY EXERCISES


11.6.1 Calculate the face-boundary walks induced by the following rotation system. What
is the genus of the induced surface?
v1 : a+ b+ c+ d+
v2 : d− e− h+
v3 : c− g− h−
v4 : b− f− g+
v5 : a− f+ e+

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

11.6.13 The voltage graph below is imbedded on the torus.


(a) Calculate the genus of the derived surface when the voltages are in Z7 .
(b) Calculate the genus of the derived surface when the voltages are in Z8 .

1 1
2

3
Glossary 479

11.6.14 Draw an imbedding of the following graph on the torus.

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.

current graph: the dual of an imbedded voltage graph.


—, KCL: a current graph in which every vertex satisfies the Kirchoff’s current law.
cycle rank of a graph G: the number β(G) = |E| − |V | + 1.

dual rotation: synonym for circulation.


equivalent imbeddings of a graph: imbeddings that have exactly the same set of face-
boundary walks.
Euler characteristic χ(S) of a surface: the value of the Euler polyhedral formula |V | −
|E| + |F | for any cellular imbedding on that surface: 2 − 2g for the orientable surface
Sg and 2 − k for the non-orientable surface Nk .
fiber over a face f of a voltage graph: the set f of covering faces fj (with f as the
mainscript).
flat polygon representation of a surface S: a polygon with its sides marked as pairs,
such that when every pair is pasted together, the resulting surface obtained is topolog-
ically equivalent to S.
480 Chapter 11 NON-PLANAR LAYOUTS

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 .

imbedding induced by rotation system ρ: the imbedding ιρ whose face-boundary


walks coincide with the cycles of the circulation ρ∗ .

induced rotation at a vertex v of a graph imbedding h: the cyclic permutation


ρh (v) of edge-ends incident at v in the order in which they are encountered in an
orientation-consistent traversal around v.
induced rotation system of an oriented graph imbedding h: the function that as-
signs to each vertex its induced rotation.

KCL: stands for Kirchoff ’s current law.


Kirchoff ’s current law (KCL) at a vertex: in a current graph, the property that the
net current into that vertex is the identity element of the voltage group.
Kirchoff ’s voltage law (KVL) on a face: in an imbedded voltage graph, the property
that the net voltage on the boundary walk of that face is the identity element of the
voltage group.
Kirchoff ’s voltage law (KVL) on a closed walk: in a voltage graph, the property
that the net voltage on the walk is the identity element of the voltage group.

KVL: stands for Kirchoff ’s voltage law.


lift of a walk W in a voltage graph: a walk Wα in the specified graph whose vertices
are mapped in sequence onto walk W by the natural projection mapping.
local group at a vertex v in a voltage graph: the subgroup comprising the net volt-
ages on all closed walks based at v.

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.

rotation system for a graph: an assignment of a rotation to every vertex.


—, adjacent: 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.
rotation table: representation of a rotation system ρ by a list with one row for each vertex.
In each row, the name of a vertex is followed by a complete list of the edge-ends incident
on that vertex, in an order consistent with ρ(v). (It is a common custom to write each
row in lexicographic order.)
signed walk in a digraph: an undirected walk in which a minus-signed edge-end repre-
sents an edge traversed against its designated direction.

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.

—, KVL: an imbedded voltage graph in which every face satisfies KVL.


APPENDIX

A.1 LOGIC FUNDAMENTALS


Propositional Logic
definition: Let p and q be propositions. The conditional proposition p → q is a propo-
sition that is false when p is true and q is false and is true otherwise. It is read “if p then
q”.
terminology: The following are equivalent statements.
p→q
if p then q
p is a sufficient condition for q
q is a necessary condition for p
p only if q
q if p
definition: The converse of p → q is the conditional proposition q → p.
definition: The contrapositive of p → q is the conditional proposition ¬q → ¬p.
Proposition A.1.1: The proposition p → q and its contrapositive ¬q → ¬p are logically
equivalent.
definition: The statement p if and only if q means that both conditionals p → q and
q → p are true.

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.2 RELATIONS AND FUNCTIONS


Relations
definition: The Cartesian product of two sets A and B is the set

A × B = {(a, b) | a ∈ A and b ∈ B}

definition: A binary relation R from a set S to a set B is a subset of A×B. Alternatively,


a binary relation may be regarded as a function from A × B to the Boolean set {true, false}.
terminology: Let R be a relation from set A to set B. If (x, y) ∈ R, then x is said to be
related to y (by R). This is often denoted xRy.
definition: A (binary) relation on a set A is a relation from A to A.
definition: A relation R on a set A is reflexive if for all x ∈ A,

xRx ∈ R

definition: A relation R on a set A is symmetric if for all x, y ∈ A,

xRy ⇒ yRx

definition: A relation R on a set A is transitive if for all x, y, z ∈ A,

(xRy ∧ yRz) ⇒ xRz

definition: A relation R on a set A is an equivalence relation if R is reflexive, symmet-


ric, and transitive.

Example A.2.1: Let R be the relation on the set Z of all integers, given by

xRy ⇔ x − y = 3k, for some k ∈ Z

Then R is an equivalence relation.

definition: Let R be an equivalence relation on a set A, and let x ∈ A. The equivalence


class of a, denoted [a], is given by

[x] = {a ∈ A | aRx}

Example A.2.2: For the equivalence relation defined in Example A.2.1,

[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

definition: A collection of distinct non-empty subsets {S1 , S2 , . . . , Sl } of a set A is a


partition of A if both of the following conditions are satisfied.
• Si ∩ Sj = ∅, for all 1 ≤ i < j ≤ l
Sl
• i=1 Si = A
Proposition A.2.1: Let R be an equivalence relation on a set A, and let x, y ∈ A. Then
the following three statements are logically equivalent.
1. xRy
2. [x] = [y]
3. [x] ∩ [y] 6= ∅

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.

Partial Orderings and Posets


definition: A relation R on a set A is antisymmetric if for all x, y ∈ A,

xRy ∧ yRx ⇒ x = y

definition: A relation R on a set A is a partial ordering (or partial order) if R is


reflexive, antisymmetric, and transitive.
Example A.2.4: Let R be the divisibility relation on the set Z+ of positive integers, given
by xRy ⇔ x divides y. Then R is a partial ordering.

notation: The symbol ≺ is often used to denote a partial ordering.


definition: Let ≺ be a partial ordering on a set A. The pair {A, ≺} is called a partially
ordered set (or poset).

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.

Theorem A.2.3: [Pigeonhole Principle] Let f : A → B be a function from a finite set


A to a finite set B. Let any two of the following three statements be true.

1. f is one-to-one.
2. f is onto.
3. |A| = |B|.

Then the third statement is also true.

The following corollary uses familiar pigeonhole jargon.

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.

definition: Let f : A → B be a function from a set A to a set B, and let g : B 0 → C be


a function from a set B 0 to a set C, where B ⊆ B 0 . Then the composition of f and g is
the function g ◦ f : A → C, given by (g ◦ f )(a) = g(f (a)).
definition: 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 to a set A. Then g is the inverse function of f if for all a ∈ A,
(g ◦ f )(a) = a.

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.

Proposition A.2.6: A function f : A → B has an inverse if and only if f is a bijection.


488 Appendix A

A.3 SOME BASIC COMBINATORICS


Proposition A.3.1: [Rule of Product] Let A and B be two finite sets. Then

|A × B| = |A| · |B|

definition: A permutation of an n-element set S is a bijection π : S → S.


definition: A k-permutation of an n-element set S is a permutation of a k-element
subset of S.
A consequence of the Rule of Product is the following simple formula for the number of
k-permutations.
Proposition A.3.2: The number of k-permutations of an n-element set is
n!
(n − k)!

definition: A k-combination of a set S is a k-element subset of S.


n

notation: The number of k-combinations of an n-element set is denoted k or, alterna-
tively, C(n, k).

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

definition: Let ha1 , a2 , . . . , ak , . . .i be a sequence of real numbers. The generating func-


tion for the sequence {an } is the power series

X
g(x) = ak xk = a0 + a1 x + a2 x2 + · · · + ak xk + · · ·
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.3.2: The generating function for the sequence h1, 2, 3, . . .i is


∞ ∞
"∞ #  
X
k−1
X d k d X k d 1 1
kx = x = x = = 2
dx dx dx 1 − x (1 − x)
k=0 k=0 k=0
Section A.4 Algebraic Structures 489

A.4 ALGEBRAIC STRUCTURES


Groups
definition: A binary operation ∗ on a non-empty set A is a function f : A × A → A,
given by f ((a, b)) = a ∗ b.
notation: The set A together with a binary operation ∗ is denoted (A, ∗).

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 .

definition: The binary operation ∗ on set A is associative if for all a, b, c ∈ A, (a ∗ b) ∗ c =


a ∗ (b ∗ c).
definition: The binary operation ∗ on set A is commutative if for all a, b ∈ A, a∗b = b∗a.
definition: Let ∗ be a binary operation on set A. An element e ∈ A, is an identity
element of set A under ∗ if for all a ∈ A,

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.

1. The operation ∗ is associative.


2. G has an identity element.
3. Each g ∈ G has an inverse in (G, ∗).
notation: Each element g in a group G has a unique inverse, which is denoted g −1 .
definition: If G = (G, ∗) is a group, the set G is the domain (set) of the group G.
notation: When convenient, and when there is no ambiguity, we sometimes write “g ∈ G”
to mean that g is an element of the domain set G.
definition: An Abelian group is a group whose operation is commutative.

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 G = (G, ∗) be a finite group. A subset X of G is a generating set for


group G if every element of G can be expressed as a product of elements of set X.
Example A.4.5: The set {2, 5} is a generating set for Z10 .

definition: A cyclic group is a group that has a 1-element generating set.


notation: If {a} is a generating set for a cyclic group G, then we may write G = hai.
Example A.4.6: Zn = (Zn , +) = h1i.

Example A.4.7: (Z7 − {0}, ) = h3i = h5i.

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

(x1 , x2 ) ∗ (y1 , y2 ) = (x1 ∗1 y1 , x2 ∗2 y2 )

definition: The n-fold direct sum of groups G1 = (G1 , ∗1 ), G2 = (G2 , ∗2 ), . . . , Gn =


(G2 , ∗n ) is defined recursively as

G1 × G2 × . . . Gn = (G1 × G2 × . . . Gn−1 ) × Gn

Theorem A.4.1: [Fundamental Theorem of Finite Abelian Groups] Let G be a fi-


nite Abelian group. Then G can be expressed as the direct sum of cyclic groups.

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.

Order of an Element in a Group


notation: Let x be an element of a group G = (G, ∗). The element x ∗ x may be denoted
x2 , and the product of r factors of element x may be denoted xr . In an Abelian group,
the element x + x may be denoted 2x, and the sum of r occurrences of element x may be
denoted r · x or sometimes rx.
definition: Let x be an element of a group with identity e. The order of x is the smallest
positive integer m such that xm = e.
definition: The order of a group G = (G, ∗) is the cardinality |G| of its domain set.
Proposition A.4.2: In a finite group, every element has finite order.

Example A.4.8: For 2 ∈ Z10 , we have 5 · 2 = 2 + 2 + 2 + 2 + 2 = 0 (mod 10). Thus, the


order of the element 2 ∈ Z10 is 5.

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 .

Cycle Notation for a Permutation


Each object of {1, 2, 
3} in Example
 A.4.9 cycles back to itself after three applications
1 2 3
of the permutation π5 = . That is,
2 3 1
π
5 5π 5 π π
5 5 π 5 π π
5 5 π5 π
1 −→ 2 −→ 3 −→ 1 2 −→ 3 −→ 1 −→ 2 3 −→ 1 −→ 2 −→ 3
The cycling of the images under successive applications of a given permutation is compactly
represented by enclosing the chain of images in parentheses so that the image of each element
appears to the right of that element, with wraparound for the rightmost element.
notation: If S is a set and a1 , a2 , . . . , ak ∈ S, then (a1 a2 . . . ak ) denotes the permutation
π of S for which 
ai+1 for i = 1, . . . , k − 1
π(ai ) =
a1 for i = k
and
π(x) = x for all other x ∈ S
Example A.4.10: The cycle representation of permutation π5 from Example A.4.9 can be
written in any one of three equivalent ways: (1 2 3), (2 3 1), or (3 1 2).
notation: This cycle notation can be extended to any permutation by writing that per-
mutation as a product of disjoint cycles. The elements that appear in each cycle form
the chain of images under the action of that permutation.
Example A.4.11: Consider the permutation α ∈ Σ9 given by
 
1 2 3 4 5 6 7 8 9
α=
7 2 6 1 8 3 4 9 5
Then the disjoint cycle representation of α is
α = (1 7 4)(2)(3 6)(5 8 9) or (1 7 4)(3 6)(5 8 9)
492 Appendix A

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).

Finite Field GF (2)


definition: The finite field GF(2) consists of the set Z2 = {0, 1} together with the mod
2 operations ⊕ and . Thus,

0 ⊕ 0 = 1 ⊕ 1 = 0; 0 ⊕ 1 = 1 ⊕ 0 = 1; 0 0=1 0=0 1 = 0; 1 1=1

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.

Independence, Subspaces, and Dimension


The remaining definitions in this section all assume that V is a vector space over a field
F. The examples refer to the vector space W defined in Example A.4.12.
definition: A vector v is a linear combination of vectors v1 , v2 , . . . , vm if
v = α1 v1 + α2 v2 + · · · + αm vm for scalars αi ∈ F, i = 1, . . . , m.
Example A.4.13: In vector space W , the vector (1, 0, 1) is a linear combination of vectors
(1, 1, 0) and (0, 1, 1), given by (1, 0, 1) = 1(1, 1, 0) + 1(0, 1, 1). This last equation also implies
that (1, 0, 1) is a linear combination of any superset of {(1, 1, 0), (0, 1, 1)}, where the scalar
multipliers for the other vectors in the superset are 0.
Section A.4 Algebraic Structures 493

definition: A set {v1 , v2 , . . . , vm } of vectors is linearly independent if

α1 v1 + α2 v2 + · · · + αm vm = 0 only if α1 = α2 = · · · = αm = 0

Thus, nonzero vectors v1 , v2 , . . . , vm are linearly independent if none of them is ex-


pressible as a linear combination of the remaining ones.
Example A.4.14: It is easy to check that {(1, 1, 0), (0, 1, 0), (0, 1, 1)} is a set of linearly
independent vectors in vector space W .

definition: A set S of vectors spans V if every vector in V is expressible as a linear


combination of vectors in S.
Example A.4.15: The three vectors in Example A.4.14 span W . A more obvious spanning
set is {(1, 0, 0), (0, 1, 0), (0, 0, 1)}.

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

dim(U1 ⊕ U2 ) = dim(U1 ) + dim(U2 ) − dim(U1 ∩ U2 )


494 Appendix A

A.5 ALGORITHMIC COMPLEXITY


One approach to the analysis and comparison of algorithms is to consider the worst-case
performance, ignoring constant factors that are often outside a given programmer’s control.
These factors include the computer on which the algorithm is run, the operating system,
and the machine code translation of the programming language in which the algorithm is
written. The objective of this approach is to determine the functional dependence of the
running time (or of some other measure) on the number n of inputs (or on some other
such variable). A first step toward this goal is to make the notion of “proportional to”
mathematically precise.

Big-O Notation

definition: Let f : Z + → R and g : Z + → R be functions from the set of positive integers


to the set of real numbers. The function f (n) is in the family O(g(n)) (read “big-O” of
g(n)) if there are constants c and N such that

|f (n)| ≤ c|g(n)| for all n > N

terminology: If f (n) is in O(g(n)), then f (n) is said to be asymptotically dominated


by g(n). In other words, for sufficiently large n and a sufficiently large constant c, cg(n) is
larger than f (n).
terminology note: The usage “f is O(g(n))” (omitting the preposition “in”) is quite
common.
Remark: It follows from the definition that f (n) is in O(g(n)) if and only if there is a
constant c such that lim fg(n)
(n)
= c.
n→∞
Pn
Example A.5.1: The function f (n) = i=1 i is in O(n2 ). To see this, observe that for all
n>0
n2 + n
f (n) = < n2 + n ≤ n2 + n2 = 2n2
2
Thus, the condition is satisfied for c = 2 and N = 0. It is also true that f (n) is in O(nr )
for any r ≥ 2, but O(n2 ) is the sharpest among these. In fact, letting c = 2 and N = 0, the
following chain of inequalities shows that n2 is in O(f (n)).

n2 < n2 + n = 2f (n)

The next example illustrates the effect of information-structure representation of a graph


on algorithmic computation.
Example A.5.2: Given a simple graph G, find the degree of each vertex v ∈ VG . For each
vertex, we must count the number of edges incident on that vertex. The number of steps
required depends on how the input graph is represented in the computer. We consider two
of the possibilities. Let n be the number of vertices and m the number of edges.

Representation by adjacency matrix Because the adjacency matrix is symmetric, only


the upper (or lower) triangular submatrix (excluding the main diagonal) needs to be
Pn−1
examined. There are i+1 i cells in this triangular submatrix, and each cell must be
checked to see if it is nonzero. Hence, the number of checks is O(n2 ).
Section A.5 Algorithmic Complexity 495

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.

definition: A polynomial-time algorithm is an algorithm whose running time (as a


function on the input size n) is in O(p(n)) for some polynomial p(n).
terminology: A linear-time algorithm is an algorithm whose running time is in O(n). A
quadratic-time algorithm is an algorithm whose running time is in O(n2 ).

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

The Problem Classes N P -Complete and N P -Hard


There is a large collection of problems (called NP-complete), including the vertex-
coloring problem and the traveling salesman problem, for which no polynomial-time algo-
rithms have been found, despite considerable effort over the last several decades. It remains
open whether there exist such algorithms for these problems. In turns out that if one can
find a polynomial-time algorithm for an N P -complete problem, then polynomial-time algo-
rithms can be found for all N P -complete problems. Our goal here is to provide a brief and
informal introduction to this topic. A precise, detailed description of this class of problems
may be found, for instance, in [Ev79], [GaJo79], or [Wi86].
definition: A decision problem R is polynomially reducible to Q if there is a
polynomial-time transformation of each instance IR of problem R to an instance IQ of
problem Q, such that instances IR and IQ have the same answer (yes or no).
definition: A decision problem is N P -hard if every problem in class N P is polynomially
reducible to it.
definition: An N P -hard problem R is NP-complete if R is in class N P .
definition: Let X = {x1 , x2 , . . . , xn } be a set of n Boolean variables. The satisfiability
problem is to decide for a propositional form S(x, . . . , xn ) in the variables xi ∈ X, whether
there is a set of truth values {a1 , . . . , an } such that S(a1 , . . . , an ) is true.
Cook ([Co71]) showed that the class N P -complete is non-empty by showing that the
satisfiability problem is N P -complete. Since that time, the list has grown rapidly.

A.6 SUPPLEMENTARY READING


For discrete mathematics: [PoSt90], [R084], [Ro03], [St93], [Tu95].
For algebra: [Ga90], [MaBi67].
For algorithmics: [AhHoUl83], [Ba88], [Se88], [Wi86].
BIBLIOGRAPHY

A.1 GENERAL READING


The first part of this bibliography is a list of books of general interest on graph theory
and on background topics for graph theory, at a level consistent with our present text,
grouped according to topic.

ALGEBRA and ENUMERATION


[Ga90] J. A. Gallian, Contemporary Abstract Algebra, Second Edition, D. C. Heath, 1990.
[GrKnPa94] R. L. Graham, D. E. Knuth, and O. Patashnik, Concrete Mathematics: A
Foundation for Computer Science, Second Edition, Addison-Wesley, 1994.
[MaBi67] S. Maclane and G. Birkhoff, Algebra, Macmillan, 1967.

ALGORITHMS and COMPUTATION

[AhHoUl83] A. V. Aho, J. E. Hopcroft, and J. D. Ullman, Data Structures and Algorithms,


Addison-Wesley, 1983.
[Ba83] S. Baase, Computer Algorithms: Introduction to Design and Analysis, Addison-
Wesley, 1983.
[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.
[Gr97] J. Gruska, Foundations of Computing, Thomson, 1997.
[La76] E. L. Lawler, Combinatorial Optimization: Networks and Matroids, Holt, Rinehart
and Winston, 1976.
[Se88] R. Sedgewick, Algorithms, Addison-Wesley, 1988.
[Wi86] H. S. Wilf, Algorithms and Complexity, Prentice-Hall, 1986.

COMBINATORIAL MATHEMATICS

[Bo00] K. P. Bogart, Introductory Combinatorics, Third Edition, Academic Press, 2000.


[Br04b] R. A. Brualdi, Introductory Combinatorics, Fourth Edition, Prentice Hall, 2004.
[Gr08] J. L. Gross, Combinatorial Methods with Computer Applications, CRC Press, 2008.
[MiRo91] J. G. Michaels and K. H. Rosen (Eds.), Applications of Discrete Mathematics,
McGraw-Hill, 1991.

497
498 Bibliography

[PoSt90] A. Polimeni and H. J. Straight, Foundations of Discrete Mathematics, Brooks/Cole,


1990.
[Ro84] F. S. Roberts, Applied Combinatorics, Prentice-Hall, 1984.
[Ro03] K. H. Rosen, Discrete Mathematics and Its Applications, Fifth Edition, McGraw-Hill,
2003.
[St93] H. J. Straight, Combinatorics: An Invitation, Brooks/Cole, 1993.
[Tu01] A. Tucker, Applied Combinatorics, Fourth Edition, John Wiley & Sons, 2001.

GRAPH THEORY

[Be85] C. Berge, Graphs, North-Holland, 1985.


[BiLlWi86] N. L. Biggs, E. K. Lloyd, and R. J. Wilson, Graph Theory 1736-1936, Oxford,
1986.
[Bo98] B. Bollobás, Modern Graph Theory, Springer, 1998.
[BoMu76] J. A. Bondy and U. S. R. Murty, Graph Theory With Applications, American
Elsevier, 1976.
[ChLe04] G. Chartrand and L. Lesniak, Graphs & Digraphs, Fourth Edition, CRC Press,
2004.
[ChZh05] G. Chartrand and P. Zhang, Introduction to Graph Theory, McGraw Hill, 2005.
[Di00] R. Diestel, Graph Theory, Second Edition, Springer-Verlag, 2000.
[Gi85] A. Gibbons, Algorithmic Graph Theory, Cambridge University Press, 1985.
[Go80] M. C. Golumbic, Algorithmic Graph Theory and Perfect Graphs, Academic Press,
1980.
[Go88] R. Gould, Graph Theory, Benjamin/Cummings, 1988.
[GrYe14] J. L. Gross, J. Yellen, and P. Zhang, eds, Handbook of Graph Theory, Second
Edition, CRC Press, 2014.
[Ha69] F. Harary, Graph Theory, Addison-Wesley, 1969.
[ThSw92] K. Thulasiraman and M. N. S. Swamy, Graphs: Theory and Algorithms, John
Wiley & Sons, 1992.
[We01] D. B. West, Introduction to Graph Theory, Second Edition, Prentice-Hall, 2001.
[Wi96] R. J. Wilson, Introduction to Graph Theory, Addison-Wesley Longman, 1996.
[WiWa90] R. J. Wilson and J. J. Watkins, Graphs: An Introductory Approach, John Wiley
& Sons, 1990.

SURFACES and TOPOLOGICAL 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

[Mc77] B. D. McKay, Computer reconstruction of small graphs, J. Graph Theory 1 (1977),


281–283.
[Mc97] B. D. McKay, Small graphs are reconstructible, Australas. J. Combin. 15 (1997),
123-126.
[Ni77] A. Nijenhuis, Note on the unique determination of graphs by proper subgraphs,
Notices Amer. Math. Soc. 24 (1977), A-290.
[Ro84] F. S. Roberts, Applied Combinatorics, Prentice-Hall, 1984.
[Wi04] R. J. Wilson, History of Graph Theory, §1.3 in Handbook of Graph Theory, Second
Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[WiWa90] R. J. Wilson and J. J. Watkins, Graphs: An Introductory Approach, John Wiley
& Sons, 1990.

Chapter 2: Isomorphisms and Symmetry

[Bo00] K. P. Bogart, Introductory Combinatorics, Third Edition, Academic Press, 2000.


[Br04b] R. A. Brualdi, Introductory Combinatorics, Fourth Edition, Prentice Hall, 2004.

Chapter 3: Trees and Connectivity

[AhHoUl83] A. V. Aho, J. E. Hopcroft, and J. D. Ullman, Data Structures and Algorithms,


Addison-Wesley, 1983.
[Ba83] S. Baase, Computer Algorithms: Introduction to Design and Analysis, Addison-
Wesley, 1983.
[FoFu56] L. R. Ford and D. R. Fulkerson, Maximal flow through a network, Canad. J. Math.
8 (1956), 399–404.
[Ha62] F. Harary, The maximum connectivity of a graph, Proc. Natl. Acad. Sci., U.S. 48
(1962), 1142–1146.
[Ox92] J. G. Oxley, Matroid Theory, Oxford, 1992.
[ThSw92] K. Thulasiraman and M. N. S. Swamy, Graphs: Theory and Algorithms, John
Wiley & Sons, 1992.
[Tu61] W. T. Tutte, A theory of 3-connected graphs, Indag. Math. 23 (1961), 441–455.
[We76] D. J. A. Welsh, Matroid Theory, Academic Press, 1976.
[Wi96] R. J. Wilson, Introduction to Graph Theory, Addison-Wesley Longman, 1996.
500 Bibliography

Chapter 4: Planarity and Kuratowski’s Theorem

[BoMu76] J. A. Bondy and U. S. R. Murty, Graph Theory With Applications, American


Elsevier, 1976.
[DeMaPe64] G. Demoucron, Y. Malgrange, and R. Pertuiset, Graphes planaires: reconnais-
sance et construction de representations planaires topologiques, Rev. Francaise Recherche
Operationelle 8 (1964), 33–47.
[Fa48] I. Fary, On the straight-line representations of planar graphs, Acta Sci. Math. 11
(1948), 229–233.
[GrRo79] J. L. Gross and R. H. Rosen, A linear-time planarity algorithm for 2-complexes,
J. Assoc. Comput. Mach. 20 (1979), 611–617.
[GrRo81] J. L. Gross and R. H. Rosen, A combinatorial characterization of planar 2-
complexes, Colloq. Math. 44 (1981), 241–247.
[Ha69] F. Harary, Graph Theory, Addison-Wesley, 1969.
[HoTa74] J. Hopcroft and R. E. Tarjan, Efficient Planarity Testing, JACM 21 (1974), 549–
568.
[Ne54] M. H. A. Newman, Elements of the Topology of Plane Sets of Points, Cambridge
University Press, 1954.
[Th80] C. Thomassen, Planarity and duality of finite and infinite graphs, J. Combin. Theory
Ser. B 29 (1980), 244–271.
[Th81] C. Thomassen, Kuratowski’s theorem, J. Graph Theory 5 (1981), 225–241.
[Wa36] K. Wagner, Bemerkungen zum Vierfarbenproblem, Jber. Deutch. Math. Verien. 46
(1936), 21–22.
[We01] D. B. West, Introduction to Graph Theory, Second Edition, Prentice-Hall, 2001.
[Wi04] R. J. Wilson, History of Graph Theory, §1.3 in Handbook of Graph Theory, Second
Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.

Chapter 5: Drawing Graphs and Maps

[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

[LiTa04] G. Liotta and R. Tamassia, Drawings of Graphs, §10.3 in Handbook of Graph


Theory, Second Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[Ma67] W. S. Massey, Algebraic Topology: An Introduction, Springer-Verlag, 1989. (First
Edition: Harcourt Brace & World, 1967.)
[MoSu92] C. Monma and S. Suri, Transitions in geometric minimum spanning trees, Discrete
Comput. Geom. 8 (1992), 265–293.

Chapter 6: Graph Colorings

[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.

Chapter 7: Measurement and Mappings

[AnLaLuMcMe94] C. A. Anderson, L. Langley, J. R. Lundgren, P. A. McKenna and S.


K. Merz, New classes of p-competition graphs and φ-tolerance competition graphs, Gongr.
Numer. 100 (1994), 97–107.
502 Bibliography

[Be62] C. Berge, Theory of Graphs and its Applications, Methuen, 1962.


[Be73] C. Berge, Graphs and Hypergraphs, North-Holland, 1973.
[BiSy83] H. Bielak and M.M. Syslo, Peripheral vertices in graphs, Studia Sci. Math. Hungar.
18 (1983), 269–275.
[Br04a] R. C. Brigham, Bandwidth, §9.4 in Handbook of Graph Theory, Second Edition,
eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[BrCaVi00] R. C. Brigham, J. R. Carrington and R. P. Vitray, Bipartite graphs and absolute
difference tolerances, Ars Gombin. 54 (2000), 3–27.
[BrDu85] R. C. Brigham and R. D. Dutton, A compilation of relations between graph
invariants, Networks 15 (1985), 73–107.
[BrMcVi95] R. C. Brigham F. R. McMorris and R. P. Vitray, Tolerance competition graphs,
Linear Algebra Appl. 217 (1995), 41–52.
[BrMcVi96] R. C. Brigham, F. R. McMorris and R. P. Vitray, Two-φ-tolerance competition
graphs, Discrete Appl. Math 66 (1996), 101–108.
[Bu74] P. Buneman, A characterisation of rigid circuit graphs, Discrete Math. 9 (1974),
205–212.
[BuHa90] F. Buckley and F. Harary, Distance in Graphs, Addison-Wesley, 1990.
[Ch88] F. R. K. Chung, Labelings of graphs, Selected Topics in Graph Theory 3, Academic,
Press Limited, Sail Diego, CA (1988), 151–168.
[ChChDeGi82] P. Z. Chinn, J. Chvátalová, A. K. Dewdney, and N. E. Gibbs, The bandwidth
problem for graphs and matrices-a survey, Journal of Graph Theory 6 (1982), 223–254.
[ChDeGiKo75] J. Chvátalová, A. K. Dewdney, N. E. Gibbs, and R. R. Korfhage, The band-
width problem for graphs: a collection of recent results, Research Report 24, Department
of Computer Science, University of Western Ontario, (1975).
[ChOeTiZo89] G. Chartrand, O. R. Oellermann, S. Tian, and H. B. Zou, Steiner distance
in graphs, Časopis Pro Pest. Mat. 114 (1989), 399–410.
[ChZh04] G. Chartrand and P. Zhang, Distance in Graphs, §9.1 in Handbook of Graph
Theory, Second Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[Co78] J. E. Cohen, Food Webs and Niche Space, Princeton University Press, 1978.
[DuBr83] R. D. Dutton and R. C. Brigham, A characterization of competition graphs,
Discrete Appl. Math. 6 (1983), 315–317.
[ErGoPo66] P. Erdös, A. W. Goodman and L. Pósa, The representation of a graph by set
intersections, Canad. J. Math. 18 (1966), 106–112.
[Ga74] F. Gavril, The intersection graphs of subtrees in trees are exactly the chordal graphs,
Journal of Comb. Theory, Ser. B 16 (1974), 47–56.
[GoMo82] M. C. Golumbic and C. L. Monma, A generalization of interval graphs with
tolerances, Congr. Numer. 35 (1982), 321–331.
[GoMoTr84] M. C. Golumbic, C. L. Momna and W. T. Trotter, Tolerance graphs, Discrete
App J. Math. 9 (1984), 157–170.
[GoTr03] M. C. Golumbic and A. N. Trenk, Tolerance Graphs, Cambridge University Press,
2003.
[Ha64] L. H. Harper, Optimal assignment of numbers to vertices, Journal of SIAM 12
(1964), 131–135.
Section A.2 References 503

[HaHe04] T. W. Haynes and M. A. Henning, Domination in Graphs, §9.2 in Handbook of


Graph Theory, Second Edition, eds., J. L. Gross, J. Yellen, and P. Zhang, CRC Press, 2014.
[HaHeSl98] T. W. Haynes, S. T. Hedetniemi, and P. J. Slater, Fundamentals of Domination
in Graphs, Marcel Dekker, 1998.
[HaNo53] F. Harary and R. Z. Norman, The dissimilarity characteristic of Husimi trees,
Ann. of Math. 58 (1953), 134–141.
[HeOeSw90] M. A. Henning, O. R. Oellermann, and H. C. Swart, On Steiner radius and
Steiner diameter of a graph, Ars Combin. 29 (1990), 13–19.
[HeOeSw91] M. A. Henning, O. R. Oellermann, and H. C. Swart, On vertices with maximum
Steiner eccentricity in graphs, Graph Theory, Gombinatorics, Algorithms and Applications
(eds. Y. Alav, F. R. K. Chung, R. L. Graham, and D. F. Hsu), SIAM Publications (1991),
393–403.
[JaMcMu91] M. S. Jacobson, F. R. McMorris and H. M. Mulder, An introduction to tol-
erance intersection graphs, in Graph Theory, Combinatorics and Applications (Y. Alavi, et
aI., Eds.) Wiley-Interscience, vol. 2 (1991), pp. 705–723.
[JaMcSc91] M. S. Jacobson, F. R. McMorris and E. R. Scheinerman, General results on
tolerance intersection graphs, J. Graph Theory 15 (1991), 573–577.
[LaWi99] Y. Lai and K. Williams, A survey of solved problems and applications on band-
width, edgesum, and profile of graphs, Journal of Graph Theory 31 (1999), 75–94.
[LuMa83] J. R. Lundgren and J. S. Maybee, A characterization of graphs of competition
number m, Discrete Appl. Math. 6 (1983), 319–322.
[Ma45] E. Szpilrajn-Marczewski, Sur deux proprietes des classes d’ensembles, Fund. Math.
33 (1945), 303–307.
[McMc99) T. A. McKee and F. R. McMorris, Topics in Intersection Graph Theory, SIAM
monograph, 1999.
[Mi91] Z. Miller, Graph layouts, Applications of Discrete Mathematics, J. G. Michaels and
K. H. Rosen (Editors), McGraw-Hill, New York (1991), 365–393.
[Or62] O. Ore, Theory of graphs, Amer. Math. Soc. Transl. 38 (1962), 206–212.
[Wa78] J. R. Walter, Representations of chordal graphs as subtrees of a tree, Journal of
Graph Theory 2 (1978), 265–267.
[WaAcSa79] H. B. Walikar, B. D. Acharya, and E. Sampathkumar, Recent developments
in the theory of domination in graphs, Mehta Research Institute, Allahabad, MRI Lecture
Notes in Math, 1 (1979).

Chapter 8: Analytic Graph Theory

[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.

Chapter 9: Graph Colorings and Symmetry

[Bo00] K. P. Bogart, Introductory Combinatorics, Third Edition, Academic Press, 2000.


[Br04b] R. A. Brualdi, Introductory Combinatorics, Fourth Edition, Prentice Hall, 2004.
[Gr08] J. L. Gross, Combinatorial Methods with Computer Applications, CRC Press, 2008.
[HaPa73] F. Harary and E. M. Palmer, Graphical Enumeration, Academic Press, 1973.
[Po37] G. Polya, Kombinatorische Anzahlbestimmungen fur Gruppen, Graphen und
Chemische Verbindungen, Acta Mathematica 68 (1937), 145–254.

Chapter 10: Algebraic Specification of Graphs

[AnBaBr09] M. Anderson, C. Barrientos, R. Brigham, J. Carrington, M. Kronman, R.


Vitray, and J. Yellen, Irregular Colorings of Some Graph Classes, Bulletin of the Institute
of Combinatorics and Its Applications, (2009).
[AnViYe12] M. Anderson, R. Vitray, J. Yellen, Irregular Colorings of Regular Graphs, Dis-
crete Mathematics 312 (2012), 2329-2336.
[GrCh96] J. L. Gross and J. Chen, Algebraic specification of interconnection networks by
permutation voltage graph morphisms, Math. Systems Theory 29 (1996), 451–470.
[GrTu77] J. L. Gross and T. W. Tucker, Generating all graph coverings by permutation
voltage assignments, Discrete Math. 18 (1977), 273–283.
[Le92] F. T. Leighton, Introduction to Parallel Algorithms and Architectures, Morgan Kauf-
mann, 1992.
[RaZh07] M. Radcliffe and P. Zhang, Irregular colorings of graphs, Bull. Inst. Combin. Appl.
49 (2007) 41-59.

Chapter 11: Non-Planar Layouts

[AlGr76] S. R. Alpert and J. L. Gross, Components of branched coverings of current graphs,


J. Combin. Theory Ser. B 20 (1976), 283–303.
[Du66] R. A. Duke, The genus, regional number, and Betti number of a graph, Canad. J.
Math. 18 (1966), 817–822.
[Ed60] J. Edmonds, A combinatorial representation for polyhedral surfaces, Notices Amer.
Math. Soc. 7 (1960), A-646.
[Ed65c] J. R. Edmonds, On the surface duality of linear graphs, J. Res. Nat. Bur. Standards
Sect. B (1965), 121–123.
[FuGrMc88] M. Furst, J. L. Gross, and L. McGeoch, Finding a maximum-genus graph
imbedding, JACM 35 (1988), 523–534.
[Gr74] J. L Gross, Voltage graphs, Discrete Math. 9 (1974), 239–246.
Section A.2 References 505

[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

r-partite graph, 342 aspect ratio of a drawing, 210


B-voltage assignment, 425 associative binary operation, 489
B-voltage graph, 425 attaching a handle to a surface, 193
free, 342 automorphism, 69, 360
p intersection graph, 305
(geometric) minimum spanning tree for a bandwidth numbering of a graph, 295
set of points in Rn , 210 bandwidth of a graph, 295, 324
(geometric) spanning tree for a set S of bandwidth of a numbering, 295
points in Rn , 210 barycentric subdivision, 140
0-end of a space edge, 188 base digraph, 439
1-end of a space edge, 188 base graph, 439
3-dimensional wrapped-butterfly graph, base imbedding, 466
444 basis of a vector space, 493
bend in a polyline drawing, 209
Abelian group, 489 Bernoulli random graph, 352
abnormality in a graph drawing, 196 Betti number, 94, 461
absent edge-color, 260 bidirected-arc convention, 403, 425
adding a crosscap to a surface, 193 big-O, 494
adding a vertex, 33 big-O equivalent, 495
adding an edge, 33 bijection, 487
adjacency matrix binary operation, 489
of a general digraph, 47 bipartite graph, 7
of a general graph, 45 bipartition subsets, 7
adjacency table block-cutpoint graph, 127
of a simple graph, 44 block graph, 125
adjacent edges, 2, 255 block in a graph, 124, 231
adjacent rotation systems, 461 block of a graph, 282
adjacent vertices, 2 blocked appendage, 170
almost every graph, 353 blocked partial edge k-coloring, 263
amalgamation, 65 boundary of a region, 143
at a vertex, 65 boundary point of a surface, 191
complete multi-edge, 313 boundary walk of a face f , 158
modulo an isomorphism, 65 boundaryless surface, 191
multi-edge, 312 bridge, 27
subgraph of, 66 Brooks’s Theorem, 231
vertex-partition, 310 Burnside’s Theorem, 375
angular resolution, 210
antecedent of a conditional, 483 card in a deck, 29
appendage to a subgraph, 147 carrier of a graph, 188
arc, 40 Cartesian product of graphs, 35
arc multiplicity, 40 Cartesian product of sets, 485
area of a geometric drawing, 210 Cayley digraph and graph, 408, 425

507
508 Index

Cayley graph, 408, 425 combination


cellular imbedding, 162, 202 k-combination, 488
cellular region, 202 commutative binary operation, 489
center of a graph, 23, 282 competition graph, 302
central circuit of a Möbius band, 191 φ-tolerance, 307
central vertex, 13, 282 competition graph of a digraph, 302
Certificate of Optimality, 116 complement of a graph, 34
Edge Form, 119 complete bipartite graph, 7
characteristic vector, 100 complete graph, 4
Characterization of 2-Connected Graphs, complex (2-), 214
114 1-skeleton of, 214
chord (appendage), 147 component of a graph, 24
chordal graph, 302 component of a vertex, 24
chromatic (k-), 222 composition of functions, 487
chromatic coloring, 222 computer chip property rights
chromatic incidence at a vertex, 260 (application), 63
chromatic number concatenation of walks, 12
vertex, 299 conditional (proposition), 483
chromatic number (vertex), 222 congestion of a graph mapping, 320
chromatic number of a map, 248 congestion on an edge, 320
chromatic number of a surface, 473 connected digraph, 42, 407
circuit boards (application), 256 connected dominating set, 292
circulant graph, 6, 401 connected domination number, 292
connections for, 6 connected Euclidean set, 135
circular ladder graph, 6, 36 connected graph, 14, 407
circulation, 454 Characterization of 2-Connected
circumference of a graph, 284 Graphs, 114
Classes 1 and 2 of simple graphs, 266 k-connected, 110, 343
clique, 25, 226 consequent of a conditional, 483
clique number, 25, 226 contact point of an appendage, 147
closed curve in a Euclidean set, 135 contrapositive of a conditional
closed interval, 284 proposition, 483
closed neighborhood of a vertex, 290 converse of a conditional proposition, 483
closed path from s to t in a Euclidean convex, 284
set, 195 convex hull, 211, 284
closed path in a Euclidean set, 135, 195 convex polytope, 213
closed surface, 162, 192 convex set, 211
closed under composition, 360 course scheduling (application), 256
closed unit disk, 186 covering digraph, 425
closed walk, 12 covering face, 466
codomain of a function, 486 covering faces
color class for color i, 222 non-KVL, 470
color code of a vertex, 417 covering graph, 425
coloring covering graph (or digraph)
(≤ k)-coloring, 365 of cyclic-voltage graph, 398
k -coloring, 365 of permutation-voltage graph, 435
P -equivalent, 365 covering imbedding
coloring classes, 365 KVL, 466
coloring of a set, 365 non-KVL, 470
coloring of a set of objects covering space, 438
inventory of coloring classes, 387 covering surface
Index 509

KVL, 466 direct sum


non-KVL, 470 of groups, 490
critical k-), 229 of vector spaces, 493
critical (chromatically), 229 directed edge, 40
crosscap, 452 directed graph, 40
crosscap number of a closed directed walk, 42
non-orientable surface, 194 disjoint cycle form, 69
crossing number of a simple graph, 173 distance, 12, 282
cube-connected-cycle graph, 442 distance-k dominating set, 292
current graph, 475 distance-k domination number, 292
currents, 475 domain of a function, 486
cut-edge, 27 dominate, 289
cut-vertex, 27 dominating set, 289
cutpoint, 27 domination number, 236
cycle, 16 domination number of a graph, 289
cycle-edge, 27 drawing of a graph on a surface, 195
cycle graph, 16 drawing of an undirected parametrized
cycle rank, 94, 461 graph, 453
cycle space of a graph, 101 dual edge clique cover, 305
cycle structure of a permutation, 377 dual rotation, 454
cycle-index polynomial, 378 dual set representation, 305
cycle-shift, 436 dual, Poincaré (see also primal), 198
cycle-structure monomial, 377 imbedding, 198
cyclic voltage graph, 397 duality (Poincaré) (see also primal )
cyclic group, 490 edge, 163
face, 163
deBruijn digraph, 436 graph, 163
deBruijn permutation, 437 imbedding, 163
decision problem, 495 vertex, 163
deck, 29
decomposition of a closed trail, 18 eccentricity of a vertex, 13, 282
degree of a vertex, 3 edge, 2
degree sequence, 3 edge fiber, 398, 425
Delaunay drawable, 213 edge-chromatic number, 256
Delaunay graph, 213 edge-chromatic number (k-), 256
Delaunay triangulation, 213 edge clique cover, 303
deleting a walk, 15 edge color class, 255
diagonal Ramsey numbers, 348 edge-coloring, 255
diameter of a graph, 13, 282 blocked partial, 263
digon, 158 equivalent, 365
digraph, 40 full set of edge-(≤ k)-colorings, 367
digraph homomorphism, 66, 410 Maximum Matching
onto, 410 (algorithm), 258
digraph invariant, 75 proper, 255
digraphic sequence, 43 Sequential (algorithm), 257
dilation of an edge, 323 edge-complement, 34
dimension of a vector space, 493 edge-connected (k-), 110
Dirac Cycle Theorem, 118 edge-connectivity, 110
direct product edge-critical, 51
of groups, 490 edge-cut, 27, 93
direct proof, 483 edge-cut rank, 94
510 Index

edge-cut space of a graph, 101 fiber edge or vertex, 398, 425


edge-deletion subgraph, 26 fiber over a face (KVL), 466
Edge-Face Inequality, 161 fiber over a face (non-KVL), 470
edge fiber, 435 field, 492
edge k-colorable, 256 finite Euclidean set, 192
edge k-coloring, 255 finite field, 492
edge multiplicity, 3 fixed-edge-set, 372
edge orbits, 72, 361 fixed-point set, 372
edge projection, 410 fixed-vertex-set, 372
edge space of a graph, 100 flat polygon representation, 203, 452
edge-transitive graph, 71, 361 food webs (application), 302
edge clique cover number, 305 forbidden singularities, 195
edge-crossing in a graph drawing, 196 forced (appendage) into region, 170
emulating an interconnection network forest, 16, 87
(application), 319 Franklin’s graph., 478
endpoints of an edge, 2 frontier edge, 89
equivalence class, 485 full set of edge-(≤ k)-colorings of a
equivalence relation, 485 graph, 367
equivalent edge-colorings, 367 full set of vertex-(≤ k)-colorings of a
equivalent imbeddings, 456 graph, 367
equivalent vertex-colorings, 367 full spanning forest, 95
Erdös-Rényi random graph, 350 full symmetric group, 360, 490
Euclidean n-space, 186 function, 486
Euclidean MST problem, 210 fundamental cycle, 95
Euclidean set, 135, 186 fundamental edge-cut, 95
Euler characteristic, 473 fundamental system of cycles, 95
Euler characteristic for a surface, 208 fundamental system of edge-cuts, 95
Euler Polyhedral Equation, 161
Euler’s Degree-Sum Theorem, 4 general graph, 3
Eulerian graph, 18, 97, 261 generating function, 488
Eulerian-Graph Characterization, 97 generating set, 407
Eulerian tour, 18, 97, 261 genus distribution of a graph, 457
Eulerian trail, 18 genus of a closed orientable surface, 193
even wheel, 37, 228 genus range, 461
examination scheduling geodesic, 284
(application), 236 girth, 429
extremal function, 341 girth of a graph, 16, 160, 284, 459
extremal graph, 341 graceful graph, 51
graph, 2
face of a graph imbedding, 143 graph homomorphism, 60, 309, 360
face-set of a graph imbedding, 157 graph invariant, 75
face-size, 158 graph isomorphism, 60, 309, 360
Face-Size Equation, 159 graph-isomorphism problem, 63
face-tracing, 455 graph-reconstruction problem, 29
factor of a graph, 269 graph union, 34
k-factor, 269 graphic sequence, 8
factorization of a graph, 269 grid drawing, 209
k-factorization, 269 Grötzsch graph, 275
fast-register allocation group, 489
(application), 224 Abelian, 489
fault-tolerant network, 112 direct product, 490
Index 511

direct sum, 490 interior of a space curve, 188


generating set, 490 interior point of a surface, 191
identity element, 489 internal vertex of a path, 112
inverse, 489 internally disjoint paths, 112
order, 490 Interpolation Theorem, 462
intersection graph, 300
Hamiltonian cycle, 16, 345 intersection graph
Hamiltonian graph, 16, 345 phi tolerance intersection graph,
Hamiltonian path, 345 306
head, 40 abdiff-tolerance, 307
Heawood conjecture, 474 set representation, 300
Heawood number, 474 intersection number, 305
Heffter-Edmonds Theorem, 455 interval graph, 301
homeomorphic graphs, 141 max-tolerance, 307
homomorphic, 60, 309 min-tolerance, 307
hypercube graph, 6, 36 sum-tolerance, 307
inverse function, 487
if and only if, 483 inverse image, 487
image of a graph, 309 involution, 491
image of a point or a set, 486 irregular coloring, 417
image of a point or subset, 195 irregular voltage assignment, 419
image of a walk, 76 isomorphic, 60, 309, 360
image under a function, 487 isomorphic digraphs, 66
imbedded voltage graph, 466 isomorphism type, 63
imbedding induced by a rotation system, Iverson truth function, 350
456
imbedding of a graph, 143 join of a vertex to a graph, 37
imbedding of a graph on a surface, 196 join of two graphs, 38, 227
incidence matrix Jordan Curve Theorem, 136
of a digraph, 47 Jordan separation property, 136
of a graph, 46
incidence table, 45 k-chromatic (vertex), 222
incident (on a vertex or edge), 2 Königsberg Bridges Problem, 98
incident edge-color, 260 Kempe i-j chain, 251
indegree, 41 Kempe i-j edge-chain, 262
independence number, 25, 226, 291 Kirchhoff’s current law (KCL), 104, 476
independent dominating set, 291 Kirchhoff’s voltage law (KVL), 104, 465
independent domination number, 291 Klein bottle, 193
independent set of edges, 258 König’s 1-Factorization Theorem, 273
independent set of vertices, 25, 291 Kuratowski graphs, 137
induced edge-coloring, 415 Kuratowski subgraph, 150
induced numbering, 295 Kuratowski’s Theorem, 150
induced permutation action, 366, 378 KVL-imbedded voltage graph, 466
induced permutation group, 367, 379
induced rotation at a vertex, 453 label-preserving isomorphism, 348
induced rotation system, 453 leaf block, 126, 231
induced subgraph leaf vertex, 86
on a vertex subset, 23 length of a walk, 12
on an edge subset, 23 lift of a walk, 465
induced vertex-coloring, 415 line graph, 7, 99, 266, 301
injective function, 487 linear combination, 492
512 Index

linearly independent, 493 neighbor of a vertex, 2


load at a vertex, 319 neighbor of an edge, 257
load of a graph mapping, 319 neighborhood, 2
local group, 469 closed, 2
local recoloring of V with respect to c, open, 2
237 neighborhood subgraph, 24
local subgraph, 24 net voltage, 410, 428, 464
local vertex-connectivity, 117 network survivability (application), 111
locally recolorable with respect to c, 237 nextEdge(G, S), 90
longitude of a torus, 134 node, 2
loopless graph, 3 non-orientable genus of a closed
non-orientable surface, 194
Möbius band, 191 non-orientable surface, 192
map-coloring, 248 non-tree edges, 89
map on a surface, 198, 248 non-tree endpoint, 89
Markov diagrams (application), 41 non-tree vertices, 89
matched vertices, 270 normal drawing of a graph on a surface,
matching, 258 196
perfect, 270 NP (complexity class), 495
mathematical induction, 484 N P -complete, 496
maximum (orientable) imbedding, 461 N P -hard, 496
maximum (orientable) surface, 460 numbering, 295
maximum crosscap number, 462
maximum genus, 460
obstruction to k-chromaticity, 230
maximum matching, 258
complete set, 230
median subgraph, 287
median vertex , 287 octahedral graph, 38
Menger’s Theorem, 117 odd component of a graph, 270
Menger’s Theorem (Edge Form), 119 odd wheel, 37, 228
meridian of a torus, 134 Ohm’s and Kirchhoff’s laws, applying
mesh ((m1 × m2 × · · · × mn )-), 37 (application), 104
metric, 282 one-to-one function, 487
minimal dominating set, 289 onto function, 487
minimal signed walk, 429 open -neighborhood of a point, 190
minimum (orientable) imbedding, 459 open neighborhood of a vertex, 290
minimum (orientable) surface, 459 open path from s to t in a Euclidean set,
minimum crosscap number, 462 195
minimum genus, 459 open path in a Euclidean set, 135, 195
minimum weight triangulation, 211 open unit disk, 186
minimum-weight drawable, 212 open walk, 12
mixed graph, 40 oppositely directed arcs, 40
model for random graphs, 349 orbit, 360
monogon, 158 P -orbit, 365
multi-arc, 40 order of a group element, 490
multi-edge, 3 orientable surface, 192
multi-graph, 3 oriented surface, 453
multipartite graph, 228 orthogonal drawing, 210
multiplicity of a graph, 266 orthogonal vectors, 106
out-set of a vertex, 302
natural transformation, 431 outdegree, 41
necessary condition, 483 overlapping appendages, 148
Index 513

P (complexity class), 495 power of graph (mth ), 297


Polya Enumeration Theorem, 388 preimage under a function, 487
Polya substitute of order k, 388 preserves adjacency, 60
Polya inventory polynomial of order k, preserves nonadjacency, 60
388 primal (see also dual ), 163
parallel computer architectures edge, 163
(application), 318 face, 163
partial order, 486 graph, 163
partial ordering, 486 graph imbedding, 163
partially directed graph, 40 vertex, 163
partially ordered set, 486 printed circuit boards (application), 197
partite (k-) graph, 228 private neighbor, 290
partite sets, 228, 342 product of graphs, 35
partition, 486 projective plane, 193
partition-cut, 93, 111 proof by contradiction, 483
partitioning a network into planar layers proof by contrapositive, 483
(application), 175 proper edge, 3
path, 14 proper edge-coloring, 255
path from s to t in a Euclidean set, 195 proper map-coloring, 248
path graph, 14 proper subgraph, 22
path in a Euclidean set, 135 proper walk, 159
perfect graph, 236 pseudopath of length n, 315
perfect matching, 270
peripheral vertex, 283 radio frequencies, assignment
periphery of a graph, 283 (application), 223
permutation, 488 radius of a graph, 13, 282
k-permutation, 488 Ramsey number r(H1 , H2 ), 339
permutation group, 360 Ramsey number r(s, t), 336
orbit, 361 Ramsey number r(H1 , H2 )
permutation-voltage assignment, 434 generalized r(G1 , G2 , . . . , Gk ), 340
permutation-voltage graph, 434 random graph
Petersen graph, 5 Bernoulli, 352
Petersen’s 1-Factor Theorem, 272 Erdös-Rényi, 350
Petersen’s 2-Factorization Theorem, 273 uniform, 350
planar drawing of a graph, 132 reachable, 14
planar graph, 132 reachable in a digraph, 42
Planarity-Testing (algorithm), 172 reduced walk, 15
plane, 133, 186 reduction of walk, 15
platonic graph, 200 region of a graph imbedding, 143
platonic graphs, 5 regular graph, 4
platonic map, 200 regular map, 198
platonic solid, 200 relation (binary), 485
platonic solids, 5 antisymmetric, 486
Poincaré Duality, 162 equivalence class, 485
political cartography (application), 249 equivalence relation, 485
polygon set, 455 reflexive, 485
polyline drawing of a graph, 209 symmetric, 485
polynomial-time, 495 transitive, 485
polynomially reducible, 496 relative complement, 34, 94
porting an algorithm (application), 64 resolution rule for a drawing, 210
poset, 486 Riemann stereographic projection, 134
514 Index

ring sum, 100 standard torus, 133, 190


robust, 238 longitude, 133
robust-critical, 242 meridian, 133
rotation at a vertex, 453 Steiner distance, 285
rotation system, 453 Steiner tree, 285
rotation table, 453 stereographic projection, 134
straight-line drawing, 209
satisfiability problem, 496 straight-line drawing of a graph, 176
scalar multiplication, 492 strict path, 119
scalars, 492 strong component, 44
scheduling strong orientation, 43
class times (application), 256 strongly cellular imbedding, 202
exams (application), 236 strongly cellular region, 202
timetabling, 232 strongly connected, 42
university course scheduling strongly orientable, 43
(application), 224 subdividing an edge, 139
with unavoidable conflicts, 232 subdivision of a graph, 139
self-loop, 3 subgraph, 22
self-complementary simple graph, 81 induced on a vertex subset, 23
self-dual graph, 169 induced on an edge subset, 23
self-dual map, 199 of amalgamation, 66
self-union (n-fold), 34 subspace of a vector space, 493
semilinear graph mapping, 322 subtree graph, 301
dilation of, 323 path representation, 301
separates a Euclidean set, 135 tree representation, 301
Separating Combustible Chemical subwalk, 12
Combinations (appl.), 224 sufficient condition, 483
separating vertex or edge subset, 115 sufficiently large graph, 341
sequence of non-orientable surfaces, 193 sufficiently many edges, 341
sequence of orientable surfaces, 193 surface, 190
shuffle-exchange digraph SE ~ n , 445 surface induced by a rotation system, 456
signed walk, 409, 464 surjective function, 487
simple digraph, 40 suspension of a graph from a vertex, 37
simple graph, 3 symmetric difference, 271
simple map, 198 symmetry property, 282
simple voltage graph, 405, 428
singularity of a continuous function, 195 tail, 40
size of a face, 158 terminal, 429
smoothing away (out) a vertex, 139 thickness of a simple graph, 175
space curve between two points, 188 timetabling (application), 232
space edge, 188 tolerance, 306
space vertex, 188 tolerance graph, 306
span, 25 topological equivalence between
spanning subgraph, 25 Euclidean sets, 187
spanning tree, 25 topological model of a graph, 188
spans (in a vector space), 493 torus, 190
sphere, 133, 188 total chromatic incidence, 261
stabilizer of an object, 371 total distance of a vertex, 285
standard (1-based) vertex-labeling, 295 total edge-length of a drawing, 210
standard donut, 133 tournament, 43, 349
standard half-disk, 186 trail, 14
Index 515

traversing the edges of a network Largest Degree First


(application), 19 (algorithm), 232
tree, 16, 86 proper, 222
tree edges, 89 Sequential (algorithm), 224
tree endpoint, 89 vertex-connectivity, 110, 231
tree growing, 89 vertex-cut, 27, 343
(basic) Tree-Growing vertex-deletion subgraph, 26
(algorithm), 91 vertex-deletion subgraph list, 28
tree vertices, 89 vertex fiber, 435
triangle inequality, 20, 282 vertex k-colorable, 222
triangulation, 211 vertex k-coloring, 222
trivial graph, 4 vertex orbits, 72, 361
trivial walk, 12 vertex projection, 410
trivial walk, trail, or path, 14 vertex space of a graph, 107
Turán graph Tn,r , 342 vertex-transitive graph, 71, 361
Tutte’s 1-Factor Theorem, 271 vertex-connectivity, 299
Tutte’s condition, 270 vertex-cut, 299
vertex-transitive graph, 432
underlying graph, 40 Vizing’s Theorem, 264
of digraph with bidirections, 403, voltage, 397, 425, 434
425 voltage assignment
undrawable in a region, 170 cyclic (Zn ), 397
unicyclic graph, 115 permutation, 434
unified specification of a graph family, voltage code, 418
440 voltage degree, 418
uniform random graph, 350 voltage graph
union of graphs, 34 base digraph, 439
unit cylinder, 186 base graph, 439
unit sphere, 186 covering digraph, 397
unseparated by a subgraph, 147 covering graph, 398
updateFrontier(G,S), 90 cyclic, 397
utilities problem, 132 natural projection, 428, 439
permutation, 434
valence of a vertex, 3 natural projection, 410
valent (d-) vertex, 3 voltage group, 425
vector space, 492 cyclic, 397
basis, 493 permutation, 434
dimension, 493 voltage-coloring, 416
direct sum, 493 Voronoi diagram, 213
spans, 493
subspace, 493 walk, 12
vectors, 492 wheel, 228
vertex, 2 wheel (graph), 37
vertex fiber, 398, 425 Whitney characterizations
vertex amalgamation, 65 2-connected, 113
vertex-coloring, 222 k-connected, 118
equivalent, 365 k-edge-connected, 119
full set of wraparound mesh, 37
vertex-(≤ k)-colorings, 367 wreath product, 437

You might also like