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. 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 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. 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. 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é 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ász 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 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 multipartite tournaments, the girth of a digraph, chords of cycles and Ádám’s 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édei 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- 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 u t 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 [email protected]. We plan to have a web page containing information about misprints and other information about the book, see http://www.imada.sdu.dk/Research/Digraphs/ Acknowledgements We wish to thank the following colleagues for helpful assistance and suggestions regarding various versions of the manuscript. Adrian Bondy, Thomas Böhme, Samvel Darbinyan, Reinhard Diestel, Odile Favaron, Herbert Fleischner, András Frank, Vladimir Gurvich, Frédéric Preface xiii Havet, Bill Jackson, Hao Li, Martin Loebl, Wolfgang Mader, Crispin NashWilliams, Jarik Nešetřil, Gert Sabidussi, Paul Seymour, Alexander Schrijver, Stéphan Thomassé, 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án, 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 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 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 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 . 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 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 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 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.10.2 Ádám’s Conjecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 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 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 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 6= B. A set B is a proper subset of a set A if B ⊂ A and B 6= ∅. 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 6= 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 6= ∅ 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 0 satisfying P and |S 0 | > |S| (S ⊂ S 0 ). 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,
© Copyright 2026 Paperzz