Jørgen Bang-Jensen, Gregory Gutin
Digraphs
Theory, Algorithms and
Applications
15th August 2007
Springer-Verlag
Berlin Heidelberg NewYork
London Paris Tokyo
Hong Kong Barcelona
Budapest
We dedicate this book to our parents, especially to our fathers, Børge
Bang-Jensen and the late Mikhail Gutin, who, through their very broad
knowledge, stimulated our interest in science enormously.
www.pdfgrip.com
Preface
Graph theory is a very popular area of discrete mathematics with not only
numerous theoretical developments, but also countless applications to practical problems. As a research area, graph theory is still relatively young, but
it is maturing rapidly with many deep results having been discovered over
the last couple of decades.
The theory of graphs can be roughly partitioned into two branches: the
areas of undirected graphs and directed graphs (digraphs). Even though both
areas have numerous important applications, for various reasons, undirected
graphs have been studied much more extensively than directed graphs. One
of the reasons is that undirected graphs form in a sense a special class of
directed graphs (symmetric digraphs) and hence problems that can be formulated for both directed and undirected graphs are often easier for the
latter. Another reason is that, unlike for the case of undirected graphs, for
which there are several important books covering both classical and recent
results, no previous book covers more than a small fraction of the results
obtained on digraphs within the last 25 years. Typically, digraphs are considered only in one chapter or by a few elementary results scattered throughout
the book.
Despite all this, the theory of directed graphs has developed enormously
within the last three decades. There is an extensive literature on digraphs
(more than 3000 papers). Many of these papers contain, not only interesting
theoretical results, but also important algorithms as well as applications.
This clearly indicates a real necessity for a book, covering not only the basics
on digraphs, but also deeper, theoretical as well as algorithmic, results and
applications.
The present book is an attempt to fill this huge gap in the literature
and may be considered as a handbook on the subject. It starts at a level
that can be understood by readers with only a basic knowledge in university
mathematics and goes all the way up to the latest research results in several
areas (including connectivity, orientations of graphs, submodular flows, paths
and cycles in digraphs, generalizations of tournaments and generalizations
of digraphs). The book contains more than 700 exercises and a number of
applications as well as sections on highly applicable subjects. Due to the fact
that we wish to address different groups of readers (advanced undergraduate
www.pdfgrip.com
viii
Preface
and graduate students, researchers in discrete mathematics and researchers
in various areas including computer science, operations research, artificial
intelligence, social sciences and engineering) not all topics will be equally
interesting to all potential readers. However, we strongly believe that all
readers will find a number of topics of special interest to them.
Even though this book should not be seen as an encyclopedia on directed
graphs, we included as many interesting results as possible. The book contains a considerable number of proofs, illustrating various approaches and
techniques used in digraph theory and algorithms.
One of the main features of this book is the strong emphasis on algorithms.
This is something which is regrettably omitted in some books on graphs.
Algorithms on (directed) graphs often play an important role in problems
arising in several areas, including computer science and operations research.
Secondly, many problems on (directed) graphs are inherently algorithmic.
Hence, whenever possible we give constructive proofs of the results in the
book. ¿From these proofs one can very often extract an efficient algorithm
for the problem studied. Even though we describe many algorithms, partly
due to space limitations, we do not supply all the details necessary in order
to implement these algorithms. The later (often highly non-trivial step) is a
science in itself and we refer the reader to books on data structures.
Another important feature is the vast number of exercises which not only
help the reader to train his or her understanding of the material, but also
complements the results introduced in the text by covering even more material. Attempting these exercises (most of which appear in a book for the first
time) will help the reader to master the subject and its main techniques.
Through its broad coverage and the exercises, stretching from easy to
quite difficult, the book will be useful for courses on subjects such as (di)graph
theory, combinatorial optimization and graph algorithms. Furthermore, it
can be used for more focused courses on topics such as flows, cycles and
connectivity. The book contains a large number of illustrations. This will
help the reader to understand otherwise difficult concepts and proofs.
To facilitate the use of this book as a reference book and as a graduate
textbook, we have added comprehensive symbol and subject indexes. It is our
hope that the detailed subject index will help many readers to find what they
are looking for without having to read through whole chapters. In particular,
there are entries for open problems and conjectures. Every class of digraphs
which is studied in the book has its own entry containing the majority of pages
on which this class is treated. As sub-entries to the entry ‘proof techniques’
we have indexed different proof techniques and some representative pages
where the technique is illustrated.
Due to our experience, we think that the book will be a useful teaching
and reference resource for several decades to come.
www.pdfgrip.com
Preface
ix
Highlights
In this book we cover the majority of the important topics on digraphs ranging from quite elementary to very advanced ones. Below we give a brief outline
of some of the main highlights of this book. Readers who are looking for more
detailed information are advised to consult the list of contents or the subject
index at the end of the book.
Chapter 1 contains most of the terminology and notation used in this
book as well several basic results. These are not only used frequently in other
chapters, but also serve as illustrations of digraph concepts. Furthermore,
several applications of directed graphs are based on these elementary results.
One such application is provided in the last section of the chapter. Basic
concepts on algorithms and complexity can also be found in the chapter.
Due to the comprehensive subject and notation indices, it is by no means
necessary to read the whole chapter before moving on to other chapters.
Chapters 2 and 3 cover distances and flows in networks. Although the
basic concepts of these two topics are elementary, both theoretical and algorithmic aspects of distances in digraphs as well as flows in networks are
of great importance, due to their high applicability to other problems on digraphs and large number of practical applications, in particular, as a powerful
modeling tool.
We start with the shortest path problem and a collection of classical algorithms for distances in weighted and unweighted digraphs. The main part of
Chapter 2 is devoted to minimization and maximization of distance parameters in digraphs. We conclude the chapter by the following applications: the
one-way street problem, the gossip problem and exponential neighbourhood
local search, a new approach to find near optimal solutions to combinatorial
optimization problems.
In Chapter 3 we cover basic, as well as some more advanced topics on
flows in networks. These include several algorithms for the maximum flow
problem, feasible flows and circulations, minimum cost flows in networks and
applications of flows. We also illustrate the primal-dual algorithm approach
for linear programming by applying it to the transportation problem. Although there are several comprehensive books on flows, we believe that our
fairly short and yet quite detailed account of the topic will give the majority of readers sufficient knowledge of the area. The reader who masters the
techniques described in this chapter will be well equipped for solving many
problems arising in practice.
Chapter 4 is devoted to describing several important classes of directed
graphs, such as line digraphs, the de Bruijn and Kautz digraphs, seriesparallel digraphs, generalizations of tournaments and planar digraphs. We
concentrate on characterization, recognition and decomposition of these
classes. Many properties of these classes are studied in more detail in the
rest of the book.
www.pdfgrip.com
x
Preface
In Chapter 5 we give a detailed account of results concerning the existence of hamiltonian paths and cycles in digraphs as well as some extensions
to spanning collections of paths and cycles, in particular, the Gallai-Millgram
theorem and Yeo’s irreducible cycle factor theorem. We give a series of necessary conditions for hamiltonicity which ‘converges’ to hamiltonicity. Many
results of this chapter deal with generalizations of tournaments. The reader
will see that several of these much larger classes of digraphs share various nice
properties with tournaments. In particular the hamiltonian path and cycle
problems are polynomially solvable for most of these classes. The chapter illustrates various methods (such as the multi-insertion technique) for proving
hamiltonicity.
In Chapter 6 we describe a number of interesting topics related to hamiltonicity. These include hamiltonian paths with prescribed end-vertices, pancyclicity, orientations of hamiltonian paths and cycles in tournaments and
the problem of finding a strong spanning subdigraph of minimum size in a
strong digraph. We cover one of the main ingredients in a recent proof by
Havet and Thomass´e of Rosenfeld’s conjecture on orientations of hamiltonian
paths in tournaments and outline a polynomial algorithm for finding a hamiltonian path with prescribed end-vertices in a tournament. We conclude the
chapter with a brief introduction of a new approach to approximation algorithms, domination analysis. We illustrate this approach by applying results
on hamiltonian cycles in digraphs to the travelling salesman problem.
Connectivity in (di)graphs is a very important topic. It contains numerous
deep and beautiful results and has applications to other areas of graph theory
and mathematics in general. It has various applications to other areas of
research as well. We give a comprehensive account of connectivity topics in
Chapters 7, 8 and 9 which deal with global connectivity issues, orientations
of graphs and local connectivities, respectively.
Chapter 7 starts from basic topics such as ear-decompositions and the fundamental Menger’s theorem and then moves on to advanced topics such as
connectivity augmentation, properties of minimally k-(arc)-strong digraphs,
highly connected orientations of digraphs and packing directed cuts in digraphs. We describe the splitting technique due to Mader and Lov´asz and
illustrate its usefulness by giving an algorithm, due to Frank, for finding a
minimum cardinality set of new arcs whose addition to a digraph D increases
its arc-strong connectivity to a prescribed number. We illustrate a recent application due to Cheriyan and Thurimella of Mader’s results on minimally
k-(arc)-strong digraphs to the problem of finding a small certificate for k(arc)-strong connectivity. Many of the proofs in the chapter illustrate the
important proof technique based on the submodularity of degree functions in
digraphs.
Chapter 8 covers important aspects of orientations of undirected and
mixed graphs. These include underlying graphs of certain classes of digraphs.
Nowhere zero integer flows, a special case of flows, related to (edge-)colourings
www.pdfgrip.com
Preface
xi
of undirected graphs is discussed along with Tutte’s 5-flow conjecture, which
is one of the main open problems in graph theory. The famous theorem by
Nash-Williams on orientations preserving a high degree of arc-strong connectivity is described and the weak version dealing with uniform arc-strong
connectivities is proved using splitting techniques. Submodular flows form a
powerful generalization of circulations in networks. We introduce submodular flows and illustrate how to use this tool to obtain (algorithmic) proofs
of many important results in graph theory (including the Lucchesi-Younger
theorem and the uniform version of Nash-Williams’ orientation theorem). Finally we describe in detail an application, due to Frank, of submodular flows
to the problem of orienting a mixed graph in order to maintain a prescribed
degree of arc-strong connectivity.
Chapter 9 deals with problems concerning (arc-)disjoint paths and trees
in digraphs. We prove that the 2-path problem is N P-complete for arbitrary
digraphs, but polynomially solvable for acyclic digraphs. Linkings in planar
digraphs, eulerian digraphs as well as several generalizations of tournaments
are discussed. Edmonds’ theorem on arc-disjoint branchings is proved and
several applications of this important result are described. The problem of
finding a minimum cost out-branching in a weighted digraph generalizes the
minimum spanning tree problem. We describe an extension, due to Frank, of
Fulkerson’s two-phase greedy algorithm for finding such a branching.
Chapter 10 describes results on (generally) non-hamiltonian cycles in digraphs. We cover cycle spaces, polynomial algorithms to find paths and cycles
of ‘logarithmic’ length, disjoint cycles and feedback sets, including a scheme of
a solution of Younger’s conjecture by Reed, Robertson, Seymour and Thomas,
applications of cycles in digraphs to Markov chains and the even cycle problem, including Thomassen’s even cycle theorem. We also cover short cycles in
´ am’s
multipartite tournaments, the girth of a digraph, chords of cycles and Ad´
conjecture. The chapter features various proof techniques including several
algebraic, algorithmic, combinatorial and probabilistic methods.
Digraphs may be generalized in at least two different ways, by considering edge-coloured graphs or by considering directed hypergraphs. Alternating
cycles in 2-edge-coloured graphs generalize the concept of cycles in bipartite
digraphs. Certain results on cycles in bipartite digraphs, such as the characterization of hamiltonian bipartite tournaments, are special cases of results
for edge-coloured complete graphs. There are useful implications in the other
direction as well. In particular, using results on hamiltonian cycles in bipartite tournaments, we prove a characterization of those 2-edge-coloured
complete graphs which have an alternating hamiltonian cycle. We describe
an application of alternating hamiltonian cycles to a problem in genetics.
Generalizations of the classical theorems by Camion, Landau and R´edei to
hypertournaments are described.
Chapter 12 contains some topics that were not covered in other chapters.
These include: an elementary proof of Seymour’s second neighbourhood con-
www.pdfgrip.com
xii
Preface
jecture in the case of tournaments, various types of orderings of the vertices
of digraphs of paired comparisons, kernels, a recent proof by Galvin of the
Dinitz conjecture on list colourings using kernels in digraphs, and homomorphisms (an elegant generalization of colouring and also a useful vehicle for
studying the borderline between P and N P-complete problems). We describe
basic concepts on matroids as well as questions related to the efficiency of matroid algorithms. We give a brief account on simulated annealing, a broadly
applicable meta-heuristic which can be used to obtain near optimal solutions
to optimization problems, in particular, on digraphs. We discuss briefly how
to implement and tune simulated annealing algorithms so that they may
produce good solutions.
Technical remarks
We have tried to rank exercises according to their expected difficulty. Marks
range from (−) to (++) in order of increasing difficulty. The majority of
exercises have no mark, indicating that they are of moderate difficulty. An
exercise marked (−) requires not much more than the understanding of the
main definitions and results. A (+) exercise requires a non-trivial idea, or
involves substantial work. Finally, the few exercises which are ranked (++)
require several deep ideas. Inevitably, this labelling is subjective and some
readers may not agree with this ranking in certain cases. Some exercises have
a header in bold face, which means that they cover an important or useful
result not discussed in the text in detail.
We use the symbol to denote the end of a proof, or to indicate that
either no proof will be given or is left as an exercise.
A few sections of the book require some basic knowledge of linear programming, in particular the duality theorem. A few others require basic knowledge
of probability theory.
We would be grateful to receive comments on the book. They may be sent
to us by email to We plan to have a web page containing
information about misprints and other information about the book, see
/>
Acknowledgements
We wish to thank the following colleagues for helpful assistance and suggestions regarding various versions of the manuscript.
Adrian Bondy, Thomas Băohme, Samvel Darbinyan, Reinhard Diestel,
Odile Favaron, Herbert Fleischner, Andr´as Frank, Vladimir Gurvich, Fr´ed´eric
www.pdfgrip.com
Preface
xiii
Havet, Bill Jackson, Hao Li, Martin Loebl, Wolfgang Mader, Crispin NashWilliams, Jarik Neˇsetˇril, Gert Sabidussi, Paul Seymour, Alexander Schrijver,
St´ephan Thomass´e, Carsten Thomassen, Bjarne Toft and Ke-Min Zhang.
We extend special thanks to the following colleagues who read parts of
the book and provided invaluable input to the project:
Noga Alon, Alex Berg, Jens Clausen, Charles Delorme, Yubao Guo, Jing
Huang, Alice Hubenko, Tommy Jensen, Tibor Jord´an, Thor Johnson, Ilia
Krasikov, Gary MacGillivray, Steven Noble, Erich Prisner, Eng Guan Tay,
Meike Tewes, Lutz Volkmann and Anders Yeo.
Of course, any misprint or error that remains is entirely our responsibility.
We wish to thank Springer-Verlag, London and in particular David Anderson, Karen Barker, Beverly Ford, Stephanie Harding, Sally Tickner and
Nicolas Wilson for all their help and encouragement. We also thank the
anonymous reviewers used by Springer when we submitted our proposal.
They provided us with encouragement and useful feedback.
We are grateful to our colleagues and the technical staff at Department
of Mathematics and Computer Science, University of Southern Denmark at
Odense, for their encouragement and help as well as to the department itself
for financial support. In particular, we wish to thank Andrew Swann for all
his help with the formatting of the manuscript. We thank the Danish National
Research Council for financial support through grant no 9701393.
Last, but most importantly, we wish to thank our families, in particular
our wives Lene and Irina, without whose constant support we would never
have succeeded in completing this project.
Odense, Denmark
London, UK
August 2000
Jørgen Bang-Jensen
Gregory Gutin
www.pdfgrip.com
www.pdfgrip.com
Contents
1.
Basic Terminology, Notation and Results . . . . . . . . . . . . . . . . .
1.1 Sets, Subsets, Matrices and Vectors . . . . . . . . . . . . . . . . . . . . . . .
1.2 Digraphs, Subdigraphs, Neighbours, Degrees . . . . . . . . . . . . . . .
1.3 Isomorphism and Basic Operations on Digraphs . . . . . . . . . . . .
1.4 Walks, Trails, Paths, Cycles and Path-Cycle Subdigraphs . . . .
1.5 Strong and Unilateral Connectivity . . . . . . . . . . . . . . . . . . . . . . .
1.6 Undirected Graphs, Biorientations and Orientations . . . . . . . .
1.7 Mixed Graphs and Hypergraphs . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8 Classes of Directed and Undirected Graphs . . . . . . . . . . . . . . . .
1.9 Algorithmic Aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9.1 Algorithms and their Complexity . . . . . . . . . . . . . . . . . . .
1.9.2 N P-Complete and N P-Hard Problems . . . . . . . . . . . . .
1.10 Application: Solving the 2-Satisfiability Problem . . . . . . . . . . . .
1.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
2
6
10
16
18
22
25
28
29
33
35
38
2.
Distances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 Terminology and Notation on Distances . . . . . . . . . . . . . . . . . . .
2.2 Structure of Shortest Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Algorithms for Finding Distances in Digraphs . . . . . . . . . . . . . .
2.3.1 Breadth-First Search (BFS) . . . . . . . . . . . . . . . . . . . . . . .
2.3.2 Acyclic Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.3 Dijkstra’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.4 The Bellman-Ford-Moore Algorithm . . . . . . . . . . . . . . . .
2.3.5 The Floyd-Warshall Algorithm . . . . . . . . . . . . . . . . . . . . .
2.4 Inequalities Between Radius, Out-Radius and Diameter . . . . .
2.4.1 Radius and Diameter of a Strong Digraph . . . . . . . . . . .
2.4.2 Extreme Values of Out-Radius and Diameter . . . . . . . .
2.5 Maximum Finite Diameter of Orientations . . . . . . . . . . . . . . . . .
2.6 Minimum Diameter of Orientations of Multigraphs . . . . . . . . .
2.7 Minimum Diameter Orientations of Complete Multipartite
Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.8 Minimum Diameter Orientations of Extensions of Graphs . . . .
2.9 Minimum Diameter Orientations of Cartesian Products of
Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
46
48
50
50
52
53
55
58
59
59
60
61
63
www.pdfgrip.com
67
69
71
xvi
Contents
2.10 Kings in Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.1 2-Kings in Tournaments . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.2 Kings in Semicomplete Multipartite Digraphs . . . . . . . .
2.10.3 Kings in Generalizations of Tournaments . . . . . . . . . . . .
2.11 Application: The One-Way Street and the Gossip Problems . .
2.11.1 The One-Way Street Problem and Orientations of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.11.2 The Gossip Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12 Application: Exponential Neighbourhood Local Search for the
TSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12.1 Local Search for the TSP . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12.2 Linear Time Searchable Exponential Neighbourhoods
for the TSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12.3 The Assignment Neighbourhoods . . . . . . . . . . . . . . . . . . .
2.12.4 Diameters of Neighbourhood Structure Digraphs for
the TSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.
74
74
75
78
78
79
80
82
82
84
85
86
89
Flows in Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.1 Definitions and Basic Properties . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.1.1 Flows and Their Balance Vectors . . . . . . . . . . . . . . . . . . . 96
3.1.2 The Residual Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3.2 Reductions Among Different Flow Models . . . . . . . . . . . . . . . . . 99
3.2.1 Eliminating Lower Bounds . . . . . . . . . . . . . . . . . . . . . . . . . 99
3.2.2 Flows with one Source and one Sink . . . . . . . . . . . . . . . . 100
3.2.3 Circulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
3.2.4 Networks with Bounds and Costs on the Vertices . . . . . 102
3.3 Flow Decompositions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
3.4 Working with the Residual Network . . . . . . . . . . . . . . . . . . . . . . 105
3.5 The Maximum Flow Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
3.5.1 The Ford-Fulkerson Algorithm . . . . . . . . . . . . . . . . . . . . . 110
3.5.2 Maximum Flows and Linear Programming . . . . . . . . . . . 113
3.6 Polynomial Algorithms for Finding a Maximum (s, t)-Flow . . 114
3.6.1 Flow Augmentations Along Shortest Augmenting Paths114
3.6.2 Blocking Flows in Layered Networks and Dinic’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
3.6.3 The Preflow-Push Algorithm . . . . . . . . . . . . . . . . . . . . . . . 117
3.7 Unit Capacity Networks and Simple Networks . . . . . . . . . . . . . . 122
3.7.1 Unit Capacity Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
3.7.2 Simple Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
3.8 Circulations and Feasible Flows . . . . . . . . . . . . . . . . . . . . . . . . . . 125
3.9 Minimum Value Feasible (s, t)-Flows . . . . . . . . . . . . . . . . . . . . . 127
3.10 Minimum Cost Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
3.10.1 Characterizing Minimum Cost Flows . . . . . . . . . . . . . . . . 131
3.10.2 Building up an Optimal Solution . . . . . . . . . . . . . . . . . . . 134
www.pdfgrip.com
Contents
4.
5.
xvii
3.11 Applications of Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.11.1 Maximum Matchings in Bipartite Graphs . . . . . . . . . . .
3.11.2 The Directed Chinese Postman Problem . . . . . . . . . . . . .
3.11.3 Finding Subdigraphs with Prescribed Degrees . . . . . . . .
3.11.4 Path-Cycle Factors in Directed Multigraphs . . . . . . . . .
3.11.5 Cycle Subdigraphs Covering Specified Vertices . . . . . . .
3.12 The Assignment Problem and the Transportation Problem . . .
3.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
137
137
141
142
143
145
147
158
Classes of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 Depth-First Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Acyclic Orderings of the Vertices in Acyclic Digraphs . . . . . . .
4.3 Transitive Digraphs, Transitive Closures and Reductions . . . .
4.4 Strong Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5 Line Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6 The de Bruijn and Kautz Digraphs and their Generalizations
4.7 Series-Parallel Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8 Quasi-Transitive Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.9 The Path-Merging Property and Path-Mergeable Digraphs . . .
4.10 Locally In-Semicomplete and Locally Out-Semicomplete Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11 Locally Semicomplete Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.1 Round Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.2 Non-Strong Locally Semicomplete Digraphs . . . . . . . . . .
4.11.3 Strong Round Decomposable Locally Semicomplete
Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11.4 Classification of Locally Semicomplete Digraphs . . . . . .
4.12 Totally Φi -Decomposable Digraphs . . . . . . . . . . . . . . . . . . . . . . .
4.13 Intersection Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14 Planar Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.15 Application: Gaussian Elimination . . . . . . . . . . . . . . . . . . . . . . . .
4.16 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
171
172
175
176
179
182
187
191
195
198
Hamiltonicity and Related Problems . . . . . . . . . . . . . . . . . . . . . .
5.1 Necessary Conditions for Hamiltonicity of Digraphs . . . . . . . . .
5.1.1 Path-Contraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.2 Quasi-Hamiltonicity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.3 Pseudo-Hamiltonicity and 1-Quasi-Hamiltonicity . . . . .
5.1.4 Algorithms for Pseudo- and Quasi-Hamiltonicity . . . . .
5.2 Path Covering Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Path Factors of Acyclic Digraphs with Applications . . . . . . . . .
5.4 Hamilton Paths and Cycles in Path-Mergeable Digraphs . . . . .
5.5 Hamilton Paths and Cycles in Locally In-Semicomplete Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.6 Hamilton Cycles and Paths in Degree-Constrained Digraphs .
www.pdfgrip.com
200
202
203
207
209
211
215
217
219
221
224
227
229
229
230
232
233
234
235
237
238
240
xviii
Contents
5.7
5.8
5.9
5.10
5.11
5.12
6.
5.6.1 Sufficient Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
5.6.2 The Multi-Insertion Technique . . . . . . . . . . . . . . . . . . . . . 246
5.6.3 Proofs of Theorems 5.6.1 and 5.6.5 . . . . . . . . . . . . . . . . . 248
Longest Paths and Cycles in Semicomplete Multipartite Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
5.7.1 Basic Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
5.7.2 The Good Cycle Factor Theorem . . . . . . . . . . . . . . . . . . . 253
5.7.3 Consequences of Lemma 5.7.12 . . . . . . . . . . . . . . . . . . . . . 256
5.7.4 Yeo’s Irreducible Cycle Subdigraph Theorem and its
Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Longest Paths and Cycles in Extended Locally Semicomplete
Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Hamilton Paths and Cycles in Quasi-Transitive Digraphs . . . . 265
Vertex-Heaviest Paths and Cycles in Quasi-Transitive Digraphs269
Hamilton Paths and Cycles in Various Classes of Digraphs . . . 273
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Hamiltonian Refinements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
6.1 Hamiltonian Paths with a Prescribed End-Vertex . . . . . . . . . . . 282
6.2 Weakly Hamiltonian-Connected Digraphs . . . . . . . . . . . . . . . . . . 284
6.2.1 Results for Extended Tournaments . . . . . . . . . . . . . . . . . 284
6.2.2 Results for Locally Semicomplete Digraphs . . . . . . . . . . 289
6.3 Hamiltonian-Connected Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . 292
6.4 Finding a Hamiltonian (x, y)-Path in a Semicomplete Digraph 295
6.5 Pancyclicity of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
6.5.1 (Vertex-)Pancyclicity in Degree-Constrained Digraphs . 299
6.5.2 Pancyclicity in Extended Semicomplete and QuasiTransitive Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
6.5.3 Pancyclic and Vertex-Pancyclic Locally Semicomplete
Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
6.5.4 Further Pancyclicity Results . . . . . . . . . . . . . . . . . . . . . . . 306
6.5.5 Cycle Extendability in Digraphs . . . . . . . . . . . . . . . . . . . . 308
6.6 Arc-Pancyclicity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
6.7 Hamiltonian Cycles Containing or Avoiding Prescribed Arcs . 312
6.7.1 Hamiltonian Cycles Containing Prescribed Arcs . . . . . . 312
6.7.2 Avoiding Prescribed Arcs with a Hamiltonian Cycle . . 315
6.7.3 Hamiltonian Cycles Avoiding Arcs in 2-Cycles . . . . . . . 317
6.8 Arc-Disjoint Hamiltonian Paths and Cycles . . . . . . . . . . . . . . . . 318
6.9 Oriented Hamiltonian Paths and Cycles . . . . . . . . . . . . . . . . . . . 321
6.10 Covering All Vertices of a Digraph by Few Cycles . . . . . . . . . . . 326
6.10.1 Cycle Factors with a Fixed Number of Cycles . . . . . . . . 326
6.10.2 The Effect of α(D) on Spanning Configurations of
Paths and Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
6.11 Minimum Strong Spanning Subdigraphs . . . . . . . . . . . . . . . . . . . 331
6.11.1 A Lower Bound for General Digraphs . . . . . . . . . . . . . . . 331
www.pdfgrip.com
Contents
6.11.2 The MSSS Problem for Extended Semicomplete Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.11.3 The MSSS Problem for Quasi-Transitive Digraphs . . . .
6.11.4 The MSSS Problem for Decomposable Digraphs . . . . . .
6.12 Application: Domination Number of TSP Heuristics . . . . . . . .
6.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xix
332
334
335
337
339
7.
Global Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
7.1 Additional Notation and Preliminaries . . . . . . . . . . . . . . . . . . . . 346
7.1.1 The Network Representation of a Directed Multigraph 348
7.2 Ear Decompositions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
7.3 Menger’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
7.4 Application: Determining Arc- and Vertex-Strong Connectivity355
7.5 The Splitting off Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
7.6 Increasing the Arc-Strong Connectivity Optimally . . . . . . . . . . 362
7.7 Increasing the Vertex-Strong Connectivity Optimally . . . . . . . . 367
7.7.1 One-Way Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
7.7.2 Optimal k-Strong Augmentation . . . . . . . . . . . . . . . . . . . 370
7.7.3 Special Classes of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . 371
7.7.4 Splittings Preserving k-Strong Connectivity . . . . . . . . . . 373
7.8 A Generalization of Arc-Strong Connectivity . . . . . . . . . . . . . . 376
7.9 Arc Reversals and Vertex-Strong Connectivity . . . . . . . . . . . . . 378
7.10 Minimally k-(Arc)-Strong Directed Multigraphs . . . . . . . . . . . . 381
7.10.1 Minimally k-Arc-Strong Directed Multigraphs . . . . . . . . 382
7.10.2 Minimally k-Strong Digraphs . . . . . . . . . . . . . . . . . . . . . . 387
7.11 Critically k-Strong Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
7.12 Arc-Strong Connectivity and Minimum Degree . . . . . . . . . . . . . 392
7.13 Connectivity Properties of Special Classes of Digraphs . . . . . . 393
7.14 Highly Connected Orientations of Digraphs . . . . . . . . . . . . . . . . 395
7.15 Packing Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
7.16 Application: Small Certificates for k-(Arc)-Strong Connectivity404
7.16.1 Finding Small Certificates for Strong Connectivity . . . . 405
7.16.2 Finding k-Strong Certificates for k > 1 . . . . . . . . . . . . . . 406
7.16.3 Certificates for k-Arc-Strong Connectivity . . . . . . . . . . . 408
7.17 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
8.
Orientations of Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
8.1 Underlying Graphs of Various Classes of Digraphs . . . . . . . . . . 415
8.1.1 Underlying Graphs of Transitive and Quasi-Transitive
Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
8.1.2 Underlying Graphs of Locally Semicomplete Digraphs . 419
8.1.3 Local Tournament Orientations of Proper Circular Arc
Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
8.1.4 Underlying Graphs of Locally In-Semicomplete Digraphs424
8.2 Fast Recognition of Locally Semicomplete Digraphs . . . . . . . . . 429
www.pdfgrip.com
xx
Contents
8.3
8.4
8.5
8.6
8.7
Orientations With no Even Cycles . . . . . . . . . . . . . . . . . . . . . . . .
Colourings and Orientations of Graphs . . . . . . . . . . . . . . . . . . . .
Orientations and Nowhere Zero Integer Flows . . . . . . . . . . . . . .
Orientations Achieving High Arc-Strong Connectivity . . . . . . .
Orientations Respecting Degree Constraints . . . . . . . . . . . . . . . .
8.7.1 Orientations with Prescribed Degree Sequences . . . . . . .
8.7.2 Restrictions on Subsets of Vertices . . . . . . . . . . . . . . . . . .
8.8 Submodular Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.8.1 Submodular Flow Models . . . . . . . . . . . . . . . . . . . . . . . . .
8.8.2 Existence of Feasible Submodular Flows . . . . . . . . . . . . .
8.8.3 Minimum Cost Submodular Flows . . . . . . . . . . . . . . . . . .
8.8.4 Applications of Submodular Flows . . . . . . . . . . . . . . . . . .
8.9 Orientations of Mixed Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.
432
435
437
443
446
446
450
451
452
453
457
458
462
467
Disjoint Paths and Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
9.1 Additional Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
9.2 Disjoint Path Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
9.2.1 The Complexity of the k-Path Problem . . . . . . . . . . . . . 478
9.2.2 Sufficient Conditions for a Digraph to be k-Linked . . . . 482
9.2.3 The k-Path Problem for Acyclic Digraphs . . . . . . . . . . . 484
9.3 Linkings in Tournaments and Generalizations of Tournaments 487
9.3.1 Sufficient Conditions in Terms of (Local-)Connectivity 488
9.3.2 The 2-Path Problem for Semicomplete Digraphs . . . . . . 492
9.3.3 The 2-Path Problem for Generalizations of Tournaments493
9.4 Linkings in Planar Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
9.5 Arc-Disjoint Branchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
9.5.1 Implications of Edmonds’ Branching Theorem . . . . . . . 503
9.6 Edge-Disjoint Mixed Branchings . . . . . . . . . . . . . . . . . . . . . . . . . . 506
9.7 Arc-Disjoint Path Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
9.7.1 Arc-Disjoint Paths in Acyclic Directed Multigraphs . . . 510
9.7.2 Arc-Disjoint Paths in Eulerian Directed Multigraphs . . 511
9.7.3 Arc-Disjoint Paths in Tournaments and Generalizations of Tournaments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
9.8 Integer Multicommodity Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
9.9 Arc-Disjoint In- and Out-Branchings . . . . . . . . . . . . . . . . . . . . . . 522
9.10 Minimum Cost Branchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
9.10.1 Matroid Intersection Formulation . . . . . . . . . . . . . . . . . . . 527
9.10.2 An Algorithm for a Generalization of the Min Cost
Branching Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
9.10.3 The Minimum Covering Arborescence Problem . . . . . . . 535
9.11 Increasing Rooted Arc-Strong Connectivity by Adding New
Arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
9.12 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
www.pdfgrip.com
Contents
10. Cycle Structure of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.1 Vector Spaces of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.2 Polynomial Algorithms for Paths and Cycles . . . . . . . . . . . . . . .
10.3 Disjoint Cycles and Feedback Sets . . . . . . . . . . . . . . . . . . . . . . . .
10.3.1 Complexity of the Disjoint Cycle and Feedback Set
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.3.2 Disjoint Cycles in Digraphs with Minimum Out-Degree
at Least k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.3.3 Feedback Sets and Linear Orderings in Digraphs . . . . .
10.4 Disjoint Cycles Versus Feedback Sets . . . . . . . . . . . . . . . . . . . . . .
10.4.1 Relations Between Parameters νi and τi . . . . . . . . . . . . .
10.4.2 Solution of Younger’s Conjecture . . . . . . . . . . . . . . . . . . .
10.5 Application: The Period of Markov Chains . . . . . . . . . . . . . . . . .
10.6 Cycles of Length k Modulo p . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.6.1 Complexity of the Existence of Cycles of Length k
Modulo p Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.6.2 Sufficient Conditions for the Existence of Cycles of
Length k Modulo p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.7 ‘Short’ Cycles in Semicomplete Multipartite Digraphs . . . . . . .
10.8 Cycles Versus Paths in Semicomplete Multipartite Digraphs .
10.9 Girth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.10 Additional Topics on Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.10.1 Chords of Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
´ am’s Conjecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.10.2 Ad´
10.11Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xxi
545
546
549
553
553
554
557
561
561
563
565
567
568
570
573
577
580
583
583
584
586
11. Generalizations of Digraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
11.1 Properly Coloured Trails in Edge-Coloured Multigraphs . . . . . 592
11.1.1 Properly Coloured Euler Trails . . . . . . . . . . . . . . . . . . . . . 594
11.1.2 Properly Coloured Cycles . . . . . . . . . . . . . . . . . . . . . . . . . 597
11.1.3 Connectivity of Edge-Coloured Multigraphs . . . . . . . . . . 601
11.1.4 Alternating Cycles in 2-Edge-Coloured Bipartite Multigraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604
11.1.5 Longest Alternating Paths and Cycles in 2-Edge-Coloured
Complete Multigraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
11.1.6 Properly Coloured Hamiltonian Paths in c-Edge-Coloured
Complete Graphs, c ≥ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
11.1.7 Properly Coloured Hamiltonian Cycles in c-Edge-Coloured
Complete Graphs, c ≥ 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
11.2 Arc-Coloured Directed Multigraphs . . . . . . . . . . . . . . . . . . . . . . . 620
11.2.1 Complexity of the Alternating Directed Cycle Problem 621
11.2.2 The Functions f (n) and g(n) . . . . . . . . . . . . . . . . . . . . . . 624
11.2.3 Weakly Eulerian Arc-Coloured Directed Multigraphs . . 626
11.3 Hypertournaments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
11.3.1 Out-Degree Sequences of Hypertournaments . . . . . . . . . 628
www.pdfgrip.com
xxii
Contents
11.3.2 Hamilton Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.3.3 Hamilton Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.4 Application: Alternating Hamilton Cycles in Genetics . . . . . . .
11.4.1 Proof of Theorem 11.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.4.2 Proof of Theorem 11.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
629
630
632
634
635
636
12. Additional Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.1 Seymour’s Second Neighbourhood Conjecture . . . . . . . . . . . . . .
12.2 Ordering the Vertices of a Digraph of Paired Comparisons . . .
12.2.1 Paired Comparison Digraphs . . . . . . . . . . . . . . . . . . . . . . .
12.2.2 The Kano-Sakamoto Methods of Ordering . . . . . . . . . . .
12.2.3 Orderings for Semicomplete PCDs . . . . . . . . . . . . . . . . . .
12.2.4 The Mutual Orderings . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.2.5 Complexity and Algorithms for Forward and Backward Orderings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.3 (k, l)-Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.3.1 Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.3.2 Quasi-Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.4 List Edge-Colourings of Complete Bipartite Graphs . . . . . . . . .
12.5 Homomorphisms – A Generalization of Colourings . . . . . . . . . .
12.6 Other Measures of Independence in Digraphs . . . . . . . . . . . . . .
12.7 Matroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.7.1 The Dual of a Matroid . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.7.2 The Greedy Algorithm for Matroids . . . . . . . . . . . . . . . .
12.7.3 Independence Oracles . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.7.4 Union of Matroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12.7.5 Two Matroid Intersection . . . . . . . . . . . . . . . . . . . . . . . . .
12.7.6 Intersections of Three or More Matroids . . . . . . . . . . . . .
12.8 Finding Good Solutions to N P-Hard Problems . . . . . . . . . . . . .
12.9 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
639
639
642
642
645
645
646
647
650
650
653
654
658
664
665
667
668
669
670
671
672
673
677
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
Symbol Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723
Subject Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
www.pdfgrip.com
1. Basic Terminology, Notation and Results
In this chapter we will provide most of the terminology and notation used
in this book. Various examples, figures and results should help the reader to
better understand the notions introduced in the chapter. The results covered
in this chapter constitute a collection of simple yet important facts on digraphs. Most of our terminology and notation are standard. Therefore, some
readers may proceed to other chapters after a quick look through this chapter
(unfamiliar terminology and notation can be clarified later by consulting the
indexes supplied at the end of this book).
In Section 1.1 we provide basic terminology and notation on sets and
matrices. Digraphs, directed pseudographs, subdigraphs, weighted directed
pseudographs, neighbourhoods, semi-degrees and other basic concepts of directed graph theory are introduced in Section 1.2. Isomorphism and basic
operations on digraphs are considered in Section 1.3. In Section 1.4, we introduce walks, trails, paths and cycles, and study some properties of tournaments and acyclic digraphs. Basic notions and results on strong and unilateral
connectivity are considered in Section 1.5. Undirected graphs are formally introduced in Section 1.6; in this section we also characterize eulerian directed
multigraphs, digraphs with out-branchings (in-branchings) and graphs having
strong orientations. Hypergraphs and mixed graphs are defined in Section 1.7.
Several important classes of directed and undirected graphs are introduced
in Section 1.8. Some basic notions on algorithms are given in Section 1.9.
The last section is devoted to a solution of the 2-satisfiability problem using
some properties of digraphs.
1.1 Sets, Subsets, Matrices and Vectors
For the sets of real numbers, rational numbers and integers we will use R, Q
and Z, respectively. Also, let Z+ = {z ∈ Z : z > 0} and Z0 = {z ∈ Z : z ≥
0}. The sets R+ , R0 , Q+ and Q0 are defined similarly.
The main aim of this section is to establish some notation and terminology
on finite sets used in this book. We assume that the reader is familiar with
the following basic operations for a pair A, B of sets: the intersection A∩B,
the union A ∪ B (if A ∩ B = ∅, then we will sometimes use A + B instead
of A ∪ B), and the difference A\B (often denoted by A − B). Sets A and
www.pdfgrip.com
2
1. Basic Terminology, Notation and Results
B are disjoint if A ∩ B = ∅. We will often not distinguish between a single
element set (singleton) {x} and the element x itself. For example, we may
write A∪b instead of A∪{b}. The Cartesian product of sets X1 , X2 , . . . , Xp
is X1 × X2 × . . . × Xp = {(x1 , x2 , . . . , xp ) : xi ∈ Xi , 1 ≤ i ≤ p}.
For sets A, B, A ⊆ B means that A is a subset of B; A ⊂ B stands for
A ⊆ B and A = B. A set B is a proper subset of a set A if B ⊂ A and
B = ∅. A collection S1 , S2 , . . . , St of (not necessarily non-empty) subsets of
a set S is a subpartition of S if Si ∩ Sj = ∅ for all 1 ≤ i = j ≤ t. A
subpartition S1 , S2 , . . . , St is a partition of S if ∪ti=1 Si = S. We will often
use the name family for a collection of sets. A family F = {X1 , X2 , . . . , Xn }
of sets is covered by a set S if S ∩ Xi = ∅ for every i = 1, 2, . . . , n. We
say that S is a cover of F. For a finite set X, the number of elements in
X (i.e. its cardinality) is denoted by |X|. We also say that X is an |X|element set (or just an |X|-set). A set S satisfying a property P is a
maximum (maximal) set with property P if there is no set S satisfying P
and |S | > |S| (S ⊂ S ). Similarly, one can define minimum (minimal) sets
satisfying a property P.
In this book, we will also use multisets which, unlike sets, are allowed
to have repeated (multiple) elements. The cardinality |S| of a multiset M
is the total number of elements in S (including repetitions). Often, we will
use the words ‘family’ and ‘collection’ instead of ‘multiset’.
For an m × n matrix S = [sij ] the transposed matrix (of S) is the
n × m matrix S T = [tkl ] such that tji = sij for every i = 1, 2, . . . , m and
j = 1, 2, . . . , n. Unless otherwise specified, the vectors that we use are columnvectors. The operation of transposition is used to obtain row-vectors.
1.2 Digraphs, Subdigraphs, Neighbours, Degrees
A directed graph (or just digraph) D consists of a non-empty finite set
V (D) of elements called vertices and a finite set A(D) of ordered pairs of
distinct vertices called arcs. We call V (D) the vertex set and A(D) the
arc set of D. We will often write D = (V, A) which means that V and A
are the vertex set and arc set of D, respectively. The order (size) of D is
the number of vertices (arcs) in D; the order of D will be sometimes denoted
by |D|. For example, the digraph D in Figure 1.1 is of order and size 6;
V (D) = {u, v, w, x, y, z}, A(D) = {(u, v), (u, w), (w, u), (z, u), (x, z), (y, z)}.
Often the order (size, respectively) of the digraph under consideration is
denoted by n (m, respectively).
For an arc (u, v) the first vertex u is its tail and the second vertex v is its
head. We also say that the arc (u, v) leaves u and enters v. The head and
tail of an arc are its end-vertices; we say that the end-vertices are adjacent,
www.pdfgrip.com
1.2 Digraphs, Subdigraphs, Neighbours, Degrees
x
3
v
z
u
y
w
Figure 1.1 A digraph D
i.e. u is adjacent to1 v and v is adjacent to u. If (u, v) is an arc, we also say
that u dominates v (or v is dominated by u) and denote it by u→v. We
say that a vertex u is incident to an arc a if u is the head or tail of a. We
will often denote an arc (x, y) by xy.
For a pair X, Y of vertex sets of a digraph D, we define
(X, Y )D = {xy ∈ A(D) : x ∈ X, y ∈ Y },
i.e. (X, Y )D is the set of arcs with tail in X and head in Y . For example, for
the digraph H in Figure 1.2, ({u, v}, {w, z})H = {uw}, ({w, z}, {u, v})H =
{wv}, and ({u, v}, {u, v})H = {uv, vu}.
v
z
v
z
u
w
H
w
u
H
Figure 1.2 A digraph H and a directed pseudograph H .
For disjoint subsets X and Y of V (D), X→Y means that every vertex of
X dominates every vertex of Y , X⇒Y stands for (Y, X)D = ∅, and X→Y
means that both X→Y and X⇒Y hold. For example, in the digraph D of
Figure 1.1, u→{v, w}, {x, y, z}⇒{u, v, w} and {x, y}→z.
The above definition of a digraph implies that we allow a digraph to have
arcs with the same end-vertices (for example, uv and vu in the digraph H
in Figure 1.2), but we do not allow it to contain parallel (also called multiple) arcs, that is, pairs of arcs with the same tail and the same head, or
1
Some authors use the convention that x is adjacent to y to mean that there is
an arc from x to y, rather than just that there is an arc xy or yx in D, as we
will do in this book.
www.pdfgrip.com
4
1. Basic Terminology, Notation and Results
loops (i.e. arcs whose head and tail coincide). When parallel arcs and loops
are admissible we speak of directed pseudographs; directed pseudographs
without loops are directed multigraphs. In Figure 1.2 the directed pseudograph H is obtained from H by appending a loop zz and two parallel arcs
from u to w. Clearly, for a directed pseudograph D, A(D) and (X, Y )D (for
every pair X, Y of vertex sets of D) are multisets (parallel arcs provide repeated elements). We use the symbol µD (x, y) to denote the number of arcs
from a vertex x to a vertex y in a directed pseudograph D. In particular,
µD (x, y) = 0 means that there is no arc from x to y.
We will sometimes give terminology and notation for digraphs only, but we
will provide necessary remarks on their extension to directed pseudographs,
unless this is trivial.
Below, unless otherwise specified, D = (V, A) is a directed pseudograph.
For a vertex v in D, we use the following notation:
+
−
ND
(v) = {u ∈ V − v : vu ∈ A}, ND
(v) = {w ∈ V − v : wv ∈ A)}.
+
−
+
−
The sets ND
(v), ND
(v) and ND (v) = ND
(v) ∪ ND
(v) are called the
out-neighbourhood, in-neighbourhood and neighbourhood of v. We
+
−
call the vertices in ND
(v), ND
(v) and ND (v) the out-neighbours, in+
−
neighbours and neighbours of v. In Figure 1.2, NH
(u) = {v, w}, NH
(u) =
+
−
+
{v}, NH (u) = {v, w}, NH (w) = {v, z}, NH (w) = {u, z}, NH (z) = {w}. For
a set W ⊆ V , we let
+
ND
(W ) =
+
−
ND
(w) − W, ND
(W ) =
w∈W
−
ND
(w) − W.
w∈W
+
That is, ND
(W ) consists of those vertices from V − W which are out+
neighbours of at least one vertex from W . In Figure 1.2, NH
({w, z}) = {v}
−
and NH ({w, z}) = {u}.
For a set W ⊆ V , the out-degree of W (denoted by d+
D (W )) is the number of arcs in D whose tails are in W and heads are in V − W , i.e. d+
D (W ) =
|(W, V −W )D |. The in-degree of W , d−
(W
)
=
|(V
−W,
W
)
|.
In
particular,
D
D
for a vertex v, the out-degree is the number of arcs, except for loops, with tail
v. If D is a digraph (that is, it has no loops or multiple arcs), then the outdegree of a vertex equals the number of out-neighbours of this vertex . We call
out-degree and in-degree of a set its semi-degrees. The degree of W is the
−
sum of its semi-degrees, i.e. the number dD (W ) = d+
D (W ) + dD (W ). For ex+
−
+
ample, in Figure 1.2, dH (u) = 2, dH (u) = 1, dH (u) = 3, dH (w) = 2, d−
H (w) =
−
+
−
4, d+
H (z) = dH (z) = 1, dH ({u, v, w}) = dH ({u, v, w}) = 1. Sometimes, it is
useful to count loops in the semi-degrees: the out-pseudodegree of a vertex
v of a directed pseudograph D is the number of all arcs with tail v. Similarly, one can define the in-pseudodegree of a vertex. In Figure 1.2, both
in-pseudodegree and out-pseudodegree of z in H are equal to 2.
The minimum out-degree (minimum in-degree) of D is
−
−
δ + (D) = min{d+
D (x) : x ∈ V (D)} (δ (D) = min{dD (x) : x ∈ V (D)}).
www.pdfgrip.com
1.2 Digraphs, Subdigraphs, Neighbours, Degrees
5
The minimum semi-degree of D is
δ 0 (D) = min{δ + (D), δ − (D)}.
Similarly, one can define the maximum out-degree of D, ∆+ (D), and the
maximum in-degree, ∆− (D). The maximum semi-degree of D is
∆0 (D) = max{∆+ (D), ∆− (D)}.
We say that D is regular if δ 0 (D) = ∆0 (D). In this case, D is also called
δ 0 (D)-regular.
For degrees, semi-degrees as well as for other parameters and sets of digraphs, we will usually omit the subscript for the digraph when it is clear
which digraph is meant.
Since the number of arcs in a directed multigraph equals the number of
their tails (or their heads) we obtain the following very basic result.
Proposition 1.2.1 For every directed multigraph D,
d− (x) =
x∈V (D)
d+ (x) = |A(D)|.
x∈V (D)
Clearly, this proposition is valid for directed pseudographs if in-degrees
and out-degrees are replaced by in-pseudodegrees and out-pseudodegrees.
A digraph H is a subdigraph of a digraph D if V (H) ⊆ V (D), A(H) ⊆
A(D) and every arc in A(H) has both end-vertices in V (H). If V (H) = V (D),
we say that H is a spanning subdigraph (or a factor) of D . The digraph L
with vertex set {u, v, w, z} and arc set {uv, uw, wz} is a spanning subdigraph
of H in Figure 1.2. If every arc of A(D) with both end-vertices in V (H) is in
A(H), we say that H is induced by X = V (H) (we write H = D X ) and
call H an induced subdigraph of D. If L is a non-induced subdigraph of D,
then there is an arc xy such that x, y ∈ V (L) and xy ∈ A(D)−A(L). Such an
arc xy is called a chord of L (in D). The digraph G with vertex set {u, v, w}
and arc set {uw, wv, vu} is a subdigraph of the digraph H in Figure 1.2; G is
neither a spanning subdigraph nor an induced subdigraph of H. The digraph
G along with the arc uv (which is a chord of G) is an induced subdigraph of
H. For a subset A ⊆ A(D) the subdigraph arc-induced by A is the digraph
D A = (V , A ), where V is the set of vertices in V which are incident with
at least one arc from A . For example, in Figure 1.2, H {zw, uw} has vertex
set {u, w, z} and arc set {zw, uw}. If H is a subdigraph of D, then we say
that D is a superdigraph of H.
It is trivial to extend the above definitions of subdigraphs to directed
pseudographs. To avoid lengthy terminology, we call the ‘parts’ of directed
pseudographs just subdigraphs (instead of, say, directed subpseudographs).
www.pdfgrip.com
6
1. Basic Terminology, Notation and Results
For vertex-disjoint subdigraphs H, L of a digraph D, we will often
use the shorthand notation (H, L)D , H→L, H⇒L and H→L instead of
(V (H), V (L))D , V (H)→V (L), V (H)⇒V (L) and V (H)→V (L).
A weighted directed pseudograph is a directed pseudograph D along
with a mapping c : A(D)→R. Thus, a weighted directed pseudograph is
a triple D = (V (D), A(D), c). We will also consider vertex-weighted directed pseudographs, i.e. directed pseudographs D along with a mapping
c : V (D)→R. (See Figure 1.3.) If a is an element (i.e. a vertex or an arc)
of a weighted directed pseudograph D = (V (D), A(D), c), then c(a) is called
the weight or the cost of a . An (unweighted) directed pseudograph can
be viewed as a (vertex-)weighted directed pseudograph whose elements are
all of weight one. For a set B of arcs of a weighted directed pseudograph
D = (V, A, c), we define the weight of B as follows: c(B) = a∈B c(a). Similarly, one can define the weight of a set of vertices in a vertex-weighted directed pseudograph. The weight of a subdigraph H of a weighted (vertexweighted) directed pseudograph D is the sum of the weights of the arcs in
H (vertices in H). For example, in the weighted directed pseudograph D in
Figure 1.3 the set of arcs {xy, yz, zx} has weight 9.5 (here we have assumed
that we used the arc zx of weight 1). In the directed pseudograph H in Figure
1.3 the subdigraph U = ({u, x, z}, {xz, zu}) has weight 5.
2
y(2.5)
y
3.5
5
1
z
x
0.3
D
x(2)
z(0)
u(3)
H
Figure 1.3 Weighted and vertex-weighted directed pseudographs (the vertex
weights are given in brackets).
1.3 Isomorphism and Basic Operations on Digraphs
Suppose D = (V, A) is a directed multigraph. A directed multigraph obtained
from D by deleting multiple arcs is a digraph H = (V, A ) where xy ∈ A
if and only if µD (x, y) ≥ 1. Let xy be an arc of D. By reversing the
arc xy, we mean that we replace the arc xy by the arc yx. That is, in
www.pdfgrip.com
1.3 Isomorphism and Basic Operations on Digraphs
7
the resulting directed multigraph D we have µD (x, y) = µD (x, y) − 1 and
µD (y, x) = µD (y, x) + 1.
A pair of (unweighted) directed pseudographs D and H are isomorphic
(denoted by D ∼
= H) if there exists a bijection φ : V (D)→V (H) such that
µD (x, y) = µH (φ(x), φ(y)) for every ordered pair x, y of vertices in D. The
mapping φ is an isomorphism. Quite often, we will not distinguish between
isomorphic digraphs or directed pseudographs. For example, we may say that
there is only one digraph on a single vertex and there are exactly three
digraphs with two vertices. Also, there is only one digraph of order 2 and size
2, but there are two directed multigraphs and six directed pseudographs of
order and size 2 (Exercise 1.4). For a set of directed pseudographs Ψ , we say
that a directed pseudograph D belongs to Ψ or is a member of Ψ (denoted
D ∈ Ψ ) if D is isomorphic to a directed pseudograph in Ψ . Since we usually
do not distinguish between isomorphic directed pseudographs, we will often
write D = H instead of D ∼
= H for isomorphic D and H.
In case we do want to distinguish between isomorphic digraphs, we speak
of labeled digraphs. In this case, a pair of digraphs D and H is indistinguishable if and only if they completely coincide (i.e. V (D) = V (H) and
A(D) = A(H)). In particular, there are four labeled digraphs with vertex set
{1, 2}. Indeed, the labeled digraphs ({1, 2}, {(1, 2)}) and ({1, 2}, {(2, 1)}) are
distinct, even though they are isomorphic.
The converse of a directed multigraph D is the directed multigraph H
which one obtains from D by reversing all arcs. It is easy to verify, using
only the definitions of isomorphism and converse, that a pair of directed
multigraphs are isomorphic if and only if their converses are isomorphic
(Exercise 1.9). To obtain subdigraphs, we use the following operations of
deletion. For a directed multigraph D and a set B ⊆ A(D), the directed
multigraph D − B is the spanning subdigraph of D with arc set A(D) − B.
If X ⊆ V (D), the directed multigraph D − X is the subdigraph induced by
V (D) − X, i.e. D − X = D V (D) − X .For a subdigraph H of D, we define
D − H = D − V (H). Since we do not distinguish between a single element set
{x} and the element x itself, we will often write D − x rather than D − {x}.
If H is a non-induced subdigraph of D, we can construct another subdigraph
H of D by adding a chord a of H; H = H + a.
Let G be a subdigraph of a directed multigraph D. The contraction of
G in D is a directed multigraph D/G with V (D/G) = {g} ∪ (V (D) − V (G)),
where g is a ‘new’ vertex not in D, and µD/G (x, y) = µD (x, y),
µD/G (x, g) =
µD (x, v), µD/G (g, y) =
v∈V (G)
µD (v, y)
v∈V (G)
for all distinct vertices x, y ∈ V (D) − V (G). (Note that there is no loop in
D/G.) Let G1 , G2 , . . . , Gt be vertex-disjoint subdigraphs of D. Then
D/{G1 , G2 , . . . , Gt } = (. . . ((D/G1 )/G2 ) . . .)/Gt .
www.pdfgrip.com