Oxford Lecture Series in Mathematics and its...

663
978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) i of 640 December 11, 2010 15:14 OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi Oxford Lecture Series in Mathematics and its Applications Series Editors John Ball Dominic Welsh

Transcript of Oxford Lecture Series in Mathematics and its...

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) i of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Oxford Lecture Series inMathematics and its Applications

    Series EditorsJohn Ball Dominic Welsh

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) ii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    OXFORD LECTURE SERIES IN MATHEMATICS AND ITS APPLICATIONS

    For a full list of titles, please visit:http://ukcatalogue.oup.com/nav/p/category/academic/series/mathematics/olsma.do

    10. Pierre-Louis Lions: Mathematical Topics in Fluid Mechanics, Vol. 2: Compressible Models11. W.T. Tutte: Graph Theory As I Have Known It12. Andrea Braides and Anneliese Defranceschi: Homogenization of Multiple Integrals13. Thierry Cazenave and Alain Haraux: An Introduction to Semilinear Evolution Equations14. Jean-Yves Chemin: Perfect Incompressible Fluids15. Giuseppe Buttazzo, Mariano Giaquinta, and Stefan Hildebrandt: One-Dimensional Varia-

    tional Problems: An Introduction16. Alexander I. Bobenko and Ruedi Seiler: Discrete Integrable Geometry and Physics17. Doina Cioranescu and Patrizia Donato: An Introduction to Homogenization18. E.J. Janse van Rensburg: The Statistical Mechanics of Interacting Walks, Polygons, Animals

    and Vesicles19. Sergei B. Kuksin: Analysis of Hamiltonian PDEs20. Alberto Bressan: Hyperbolic Systems of Conservation Laws: The One-Dimensional Cauchy

    Problem21. Benoit Perthame: Kinetic Formulation of Conservation Laws22. Andrea Braides: Gamma-Convergence for Beginners23. Robert Leese and Stephen Hurley: Methods and Algorithms for Radio Channel Assignment24. Charles Semple and Mike Steel: Phylogenetics25. Luigi Ambrosio and Paolo Tilli: Topics on Analysis in Metric Spaces26. Eduard Feireisl: Dynamics of Viscous Compressible Fluids27. Antonı́n Novotný and Ivan Straškraba: Introduction to the Mathematical Theory of Com-

    pressible Flow28. Pavol Hell and Jaroslav Nešetřil: Graphs and Homomorphisms29. Pavel Etingof and Frederic Latour: The Dynamical Yang-Baxter Equation, Representation

    Theory, and Quantum Integrable Systems30. Jorge L. Ramı́rez Alfonsı́n: The Diophantine Frobenius Problem31. Rolf Niedermeier: Invitation to Fixed-Parameter Algorithms32. Jean-Yves Chemin, Benoit Desjardins, Isabelle Gallagher, and Emmanuel Grenier: Mathe-

    matical Geophysics: An Introduction to Rotating Fluids and the Navier-Stokes Equations33. Juan Luis Vázquez: Smoothing and Decay Estimates for Nonlinear Diffusion Equations34. Geoffrey Grimmett and Colin McDiarmid: Combinatorics, Complexity, and Chance35. Alessio Corti: Flips for 3-folds and 4-folds36. Andreas Kirsch and Natalia Grinberg: The Factorization Method for Inverse Problems37. Marius Ghergu and Vicentiu Radulescu: Singular Elliptic Problems: Bifurcation & Asymp-

    totic Analysis38. András Frank: Connections in Combinatorial Optimization

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) iii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Connections in CombinatorialOptimization

    András Frank

    MTA–ELTE Egerváry Research Group

    Institute of Mathematics

    Eötvös Loránd University, Budapest

    submodularflows

    covering super-modular functions

    cheapestpath

    min-costflow

    k-connectedaugmentation

    splittinglemmas

    maximummatching

    k-edge-connectedorientation

    feasiblecirculation

    discreteseparation

    TDIsystems

    disjointarborescences

    cheapestarborescence

    disjointtrees

    k-root-connectedsubgraph

    weight-splittingtheorem

    polymatroidintersection

    matroidpartition

    1

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) iv of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    3Great Clarendon Street, Oxford OX2 6DP

    Oxford University Press is a department of the University of Oxford.It furthers the University’s objective of excellence in research, scholarship,

    and education by publishing worldwide in

    Oxford New York

    Auckland Cape Town Dar es Salaam Hong Kong KarachiKuala Lumpur Madrid Melbourne Mexico City Nairobi

    New Delhi Shanghai Taipei Toronto

    With offices in

    Argentina Austria Brazil Chile Czech Republic France GreeceGuatemala Hungary Italy Japan Poland Portugal SingaporeSouth Korea Switzerland Thailand Turkey Ukraine Vietnam

    Oxford is a registered trade mark of Oxford University Pressin the UK and in certain other countries

    Published in the United Statesby Oxford University Press Inc., New York

    c© András Frank 2011The moral rights of the author have been assertedDatabase right Oxford University Press (maker)

    First published 2011

    All rights reserved. No part of this publication may be reproduced,stored in a retrieval system, or transmitted, in any form or by any means,

    without the prior permission in writing of Oxford University Press,or as expressly permitted by law, or under terms agreed with the appropriate

    reprographics rights organization. Enquiries concerning reproductionoutside the scope of the above should be sent to the Rights Department,

    Oxford University Press, at the address above

    You must not circulate this book in any other binding or coverand you must impose the same condition on any acquirer

    British Library Cataloguing in Publication Data

    Data available

    Library of Congress Cataloging in Publication Data

    Data available

    Typeset by SPI Publisher Services, Pondicherry, IndiaPrinted in Great Britainon acid-free paper by

    CPI Antony Rowe, Chippenham, Wiltshire

    ISBN 978–0–19–920527–1

    1 3 5 7 9 10 8 6 4 2

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) v of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface

    Topics and goals

    Combinatorial optimization deals with algorithmic approaches to finding specified config-urations or objects in finite structures such as directed and undirected graphs, hypergraphs,networks, matroids, partially ordered sets, and so forth. In particular, the subject requiresstructural investigations to explore—possibly all—obstacles that prevent the existence of therequested configurations, as well as the construction of efficient algorithms for computing anobject in question. Often we need to find an optimal solution with respect to a given objectivefunction. Some well-known and typical problems are computing a cheapest (or shortest)spanning tree of a graph, a shortest st-path, a perfect matching, a maximum flow, a chaindecomposition of a partially ordered set, a Hamilton circuit, an optimal graph colouring, aset covering, the clique number, and so forth. NP-hard problems constitute a huge class ofproblems for which neither a polynomial time algorithm nor a good characterization canbe expected to exist. In these cases, the typical approaches are using heuristics for gettingsolutions acceptable from a practical point of view, or creating approximation algorithmsalong with a certificate for the obtained solution being not far from the optimal one, orexploring special cases that admit exact and efficient solution algorithms.

    A fundamental trend of combinatorial optimization is concerned with problems wherepolynomial time algorithms or good characterizations (including min-max theorems) areavailable. These problems form the classes denoted by P and NP∩co-NP, respectively. Quiteoften, solutions and algorithms for these problems help in attacking NP-complete problems,too. For example, N. Christofides proposed one of the earliest and best-known approximationalgorithms, which computes a Hamilton circuit of a complete graph the cost of which is atmost 3/2-times larger than the optimal one, provided the cost function obeys the triangleinequality. The method and its verification are based on two polynomially solvable problems(J.B. Kruskal’s greedy algorithm for cheapest spanning trees and J. Edmonds’ weightedperfect matching algorithm).

    The bulk of combinatorial optimization problems in NP∩co-NP can be divided intotwo main branches. One branch is about packing, covering, and optimization problemsconcerning paths, trees, flows, and matroid union and intersection. Typical results are theMax-flow Min-cut theorem, the greedy algorithm for cheapest trees, the Hungarian methodfor weighted bipartite matching, Dijkstra’s shortest path algorithm, and Edmonds’ matroidintersection theorem and algorithm. A unifying feature of this class is its strong and intimaterelationship, explicit or implicit, to sub- or supermodular functions. In several situations,submodular functions take the center stage while a large number of other applications

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) vi of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    vi Preface

    need supermodular functions. Therefore we sometimes use the unifying term semimod-ular optimization to refer to an optimization problem or method involving submodularor supermodular functions. This book concentrates, almost exclusively, on this branch,which forms a compact, homogeneous body of material in which a great majority of prob-lems can be treated with unified methods based on semimodular functions and polyhedraltechniques.

    In the other big branch of tractable combinatorial optimization problems, the role of parity,implicit or explicit, becomes central. For example, the answer to the very first problem incombinatorial optimization—deciding if a graph has an Euler tour—involves parity. Furthertypical problems are non-bipartite matchings, T -joins and T -cuts, and matroid parity. Aprime example is a theorem of W.T. Tutte on the existence of perfect matchings in generalgraphs, where the notion of odd components proves fundamental. Parity-related problemsoften need different, significantly more diverse and complicated techniques, and this topicalone could easily fill a complete book. Parity may come into the picture at different levels.Sometimes it appears in the answer to a problem, as exemplified by Tutte’s matchingtheorem. At other times, parity shows up already in the problem formulation: the optimalT -joins form a prime example, as does the deep theory of matroid parity. And there is athird case, when neither the problem formulation nor the answer requires parity, yet the useof parity becomes unavoidable during the proof. The strong form of the orientation theoremof C.St.J.A. Nash-Williams belongs to this apparently strange category, and it will be fullydiscussed in Section 9.8.

    The word ‘connections’ in the title suggests two different meanings. On the one hand itrefers to, in broadest sense, the mathematical theory of graph connectivity, including resultson paths, cuts, trees, flows, arborescences, bipartite matchings, and on the several variationsof higher-order connections like node-, edge-, partition-, mixed- and rooted-connectionsof graphs, digraphs, and hypergraphs. The title, on the other hand, refers to one of themain intentions of the book: revealing and exploring often unexpected connections andlinks between apparently unrelated areas. To single out one, it is really stunning that E.Győri’s difficult theorem on finding a minimum covering of a planar rectilinear region withrectangles has anything to do with connectivity augmentation problems of digraphs.

    The most important connection, constituting the backbone of the book, is the one betweenconnectivity and semimodular functions. Their interaction occurs on two levels. In the lowerone, semimodular functions are used to prove results on connectivity. For example, P. Hall’stheorem on perfect bipartite matching can be derived by using the submodularity of theneighbourhood function |�(X)|. Similarly, the proof of L. Lovász’ splitting-off theoremrelies on the submodularity of the degree-function of a graph. With the semimodular tech-nique, often deep and otherwise difficult theorems can be proved relatively easily. Typicalexamples we shall consider are theorems of C.L. Lucchesi and D.H. Younger on optimaldijoins, of W. Mader on undirected splitting-off, and of T. Watanabe and A. Nakamura onoptimal edge-connectivity augmentation. One of the main goals of this book is to convey thestriking efficiency of semimodular proof techniques.

    A higher level of interaction is the one between ‘specific’ connectivity results and their‘abstract’ counterparts concerning semimodular functions. For example, though it is notdifficult to verify the validity of Kruskal’s greedy algorithm for computing a cheapestspanning tree, it has been a great revelation to realize that the greedy algorithm works

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) vii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface vii

    properly in this case because there is a matroid in the background: the correctness of thegreedy algorithm is an essential feature of matroids.

    The general scheme of the interaction between specific connectivity results and abstractsemimodular ones works as follows: An initial result on connectivity makes one look forpossible generalizations. This gives rise to problem formulations in an abstract settingconcerning semimodular functions, and an answer here may then be specialized back to(extensions of) the initial connectivity problem. For example, H.E. Robbins’ early theoremon strong orientability of a 2-edge-connected graph was generalized by Nash-Williams tok-edge-connected orientations. As Robbins’ theorem easily extends to mixed graphs, onenaturally wants to generalize Nash-Williams’ result to mixed graphs, too. This problemforms then a motivation for investigating the feasibility problem of submodular flows, anda solution to this problem specializes to the graph-orientation problem. Another beautifulrealization of this scheme is how Edmonds extended the Hungarian method to matroid inter-section and specialized then the general result back to solve algorithmically the problem offinding a cheapest rooted k-edge-connected subgraph of a digraph. This kind of mechanismshows up in many other cases, and we are going to explore its nature to the reader as muchas possible. To this end, we shall show how abstract notions like matroids and polymatroids,crossing submodular functions, and submodular flows arise naturally, and why it is worth tobecoming familiar with them.

    Exploring and exhibiting the intimate relationship between connectivity and submodu-larity is the major objective of the book. By using this book to look behind the scenesand understand properly what had made a specific proof work, the reader is not onlyexposed to a list of results and proofs, but can also learn proof methods and algorithmictools as well. Another important objective is to keep track of the development of ideasand proof techniques from their very first simple appearance to their use in more and morecomplicated circumstances. These specific approaches constitute the most important featuresthat separate this book from all other available books on related topics.

    Structure of the book

    The book consists of three parts. Part I discusses, in a relatively concise form, classicalconnectivity-related optimization results on paths, trees, cuts, flows, and bipartite matchings.Also, the necessary background of polyhedral combinatorics and matroid theory is outlinedhere. In order to sweeten this part for the more experienced reader, I have included someinteresting applications which are not so well-known. It was also a major goal to make thediscussion easily digestible even for newcomers.

    Part II covers more recent topics such as connectivity orientations, connectivity augmen-tations, and constructive characterizations of connectivity properties. Packing and coveringwith trees and branchings are also discussed here. Among the several methods, specialemphases will be put on the splitting-off technique, the uncrossing procedure, polyhedralapproaches, greedy algorithms, and the push–relabel algorithm. Many of the results of thispart serve as a main motivation to investigate sub- and supermodular frameworks.

    Part III treats several aspects of submodular optimizations and polyhedral methods. Quiteoften these ‘abstract’ results have been motivated by theorems on graph connection from

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) viii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    viii Preface

    Part II, and they give rise to new, concrete connectivity-type special cases. The approachexemplifies nicely an essential feature of mathematics showing that well-conceived conceptsmay give rise to short and transparent proofs of quite deep (and otherwise difficult) theorems.

    A glimpse at the origins of combinatorial optimizationproblems discussed

    Readers interested in a detailed account of the history of combinatorial optimization areadvised to consult Schrijver’s book [340], an extremely rich source. See also the survey bySchrijver [341] on the history of combinatorial optimization until 1960. In what follows, Ioutline in a nutshell a personal view of the chronology of the progress of the basic notions,ideas, and results considered in this book, without touching other areas of combinatorialoptimization. For example, no comments are made on the history of such fundamental resultsas non-bipartite matchings, submodular function minimization, matroid parity, or regularmatroids. There are three main sources: graph theory, linear programming, and the theoryof submodular functions including matroids. The main unifying feature of combinatorialoptimization is its algorithmic nature.

    In graph theory, the theorem of L. Euler on traversing edges and the result of J. Petersen onmatchings were known before the twentieth century. D. Kőnig’s bipartite matching theorem[246] and K. Menger’s result [288] on disjoint st-paths appeared by 1930, as well as twobasic algorithmic techniques: alternating paths, due to Petersen, and the greedy algorithmfor cheapest trees, first worked out by O. Bo̊ruvka [37]. In 1938, T. Gallai [178] gave a newproof of Menger’s theorem. His method is algorithmic and can be considered as a forerunnerof the augmenting paths method of R.L. Ford and D.R. Fulkerson for maximum flows. Ina tiny footnote Gallai also points out that the same method actually proves the directedcounterpart of Menger’s theorem. J. Egerváry [88] proved his min-max theorem on weightedbipartite matchings in 1931. This result is the first instance of the linear programmingduality theorem. It should be noted that already in 1912 F.G. Frobenius [157] proved atheorem on matrices that is equivalent to Kőnig’s theorem. A recent historical discovery byF. Ollivier shows that a variation of the weighted bipartite matching algorithm (the Hungar-ian method) developed by H.W. Kuhn [252] in 1955 had been invented a century earlier byC.G.J. Jacobi [226].

    The fundamentals of linear programming (including the Farkas lemma, the duality the-orem, optimality criteria, and the equivalence of polytopes and bounded polyhedra) andnetwork flows (shortest paths, assignment and transportation problems, optimal flows andcirculations) were established by 1960. A far-reaching discovery by A.J. Hoffman andJ.B. Kruskal [209] from 1956 is worthy of special mention. They found a fundamentallink, totally unimodular (TU) matrices, between linear programming and network flows,providing in this way a coherent view of a great number of combinatorial min-max theorems.They pointed out first that a linear program with a TU constraint matrix and an integralbounding vector always has an optimum solution that is integer-valued. Then they appliedthis result to TU-matrices arising from bipartite graphs and digraphs. In this view, forexample, both the Max-flow Min-cut theorem and Egerváry’s perfect matching theoremare consequences of the linear programming duality theorem, and Hoffman’s circulation

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) ix of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface ix

    theorem follows immediately from the Farkas lemma. In 1958, Gallai [179] also used linearprogramming techniques and proved min-max theorems in graph theory. These results couldbe seen as the foundations of a new era, polyhedral combinatorics.

    Kuhn’s Hungarian method [252] from 1955 served as a starting point of several laterextensions like min-cost flows or weighted matroid intersections. The algorithmic workon network flows by Ford and Fulkerson [104, 105, 106, 168, 169] during the period of1955–61, including the Max-flow Min-cut theorem and the minimum cost flow algorithm,had made a far-reaching and lasting impact on the later development of combinatorialoptimization. The results were summarized in their book [107] in 1962. Due to its crystal-clear style, this book has remained refreshing reading even after five decades.

    Matroids were introduced by H. Whitney [383] as early as 1935. Their role in combinato-rial optimization was indicated by R. Rado, who discovered a matroidal extension of Hall’stheorem in 1942 [326] and the matroid greedy algorithm in 1957 [327]. A next milestone wasthe matroid partition theorem for linear matroids by A. Horn [211] from 1955. Rado slightlylater observed, by a simple elementary construction, that his result from 1942 implies Horn’stheorem for arbitrary matroids.

    The papers of O. Ore [313, 314] from 1955–6 deserve special mention because theseworks were among the very first ones where submodular functions are explicitly used inderiving graph-theoretical results. Nash-Williams’ deep and difficult orientation theoremfrom 1960 will be of central importance to our discussions. The theorem’s weak form,stating that every 2k-edge-connected graph has a k-edge-connected orientation, has beena major inspiration for a great number of extensions to be discussed in this book. It is,however, pretty mysterious that the strong form of Nash-Williams’ orientation theorem hasso far resisted every attack trying to relate it with other parts of combinatorial optimizationand has remained quite isolated. The paper of Nash-Williams relies heavily on submodularideas. Yet another basic result of Nash-Williams [306] established the rank formula forthe homomorphic image of a matroid. In the developments of matroid min-max theorems,the paper of Tutte [368] from 1961 was of fundamental importance. It contains not onlya necessary and sufficient condition for graphs having k-edge-disjoint spanning trees butthe matroid partition theorem for distinct graphic matroids is also established and proved.The chain decomposition theorem of R.P. Dilworth [68] from 1950 and its significantextensions in the works of C. Greene and D.J. Kleitman [192, 193] in 1976 were alsooutstanding contributions to the topic. In 1965, Y.-J. Chu and T.-H. Liu [50] published thefirst polynomial algorithm for finding a cheapest arborescence of a digraph.

    The view reflected in this book has been founded in large part on the work and visionof Edmonds. His contributions proved fundemental in several areas of combinatorial opti-mization. Basic notions like good characterization, polynomial algorithms, the polyhedralapproach (without total unimodularity), polymatroids, and submodular flows come fromhis work and form the framework for this entire book. In 1965, Edmonds and Fulkerson[85] proved the matroid partition theorem. In 1970, Edmonds discovered the matroid andpolymatroid intersection theorem [80], along with its weighted extension. In 1965, hedeveloped polynomial algorithms for matroid partition [76], while his weighted matroidintersection algorithm [82] appeared in 1979. His theorem on disjoint arborescences [83]from 1973 also remains of central importance. Extending the earlier work of Hoffman[208] from 1974, Edmonds and Giles [86] introduced in 1977 the pervasive concept of

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) x of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    x Preface

    total dual integrality (TDI) of linear inequality systems and proved the integrality of thepolyhedron described by a TDI system. The polyhedral descriptions of several combinatorialobjects (branchings, non-bipartite matchings, matroid intersections) paved the way for agreat number of extensions and generalizations. The fundamental theorem of Edmonds andGiles on submodular flows implies the Max-flow Min-cut theorem, the matroid (and eventhe polymatroid) intersection theorem, the theorem of Lucchesi and Younger on minimumdijoins, and also the weak form of Nash-Williams’ orientation result.

    It was 1976 when K.P. Eswaran and R.E. Tarjan [92] published the first results on connec-tivity augmentation. This was followed in 1987 by the fundamental work of T. Watanabe andA. Nakamura [375] on optimal edge-connectivity augmentation, which became a startingpoint of a new research area. Interestingly, though this area relies heavily on submodularfunctions, the corresponding polyhedra are not integral, and submodular flows do not help.

    The significance of the work of W. Mader on graph connectivity cannot be overestimated.His undirected splitting-off theorem [278] from 1978 as well as the directed splitting-off theorem [281] from 1983 became major tools in handling connectivity problems. Hisconstructive characterization of k-edge-connected digraphs [280] was one of the prototypesof several later extensions.

    Though the disjoint paths problem is NP-complete in general, P. Seymour explored severalinteresting special cases when it is nicely tractable. See his papers [345], [347], [311], and[346] from 1980–1.

    Another major player during the last forty years of combinatorial optimization wasL. Lovász. Beside his breakthrough results on perfect graphs, he developed new techniquesfor applying semimodular functions in proving graph-theoretic results [263, 264]. In addi-tion, his paper [263] was an early appearance of the scheme outlined above: motivated bya specific graph result (Kőnig’s theorem), he proved an abstract result on supermodularfunctions from which he obtained, in special cases, new graph results. There are two far-reaching proof techniques pioneered by Lovász. The uncrossing technique showed up in apaper by Younger [389] and in a report of the solutions of a mathematical contest [262].Later, it was successfully applied to obtain a relatively simple proof of the optimum dijointheorem of Lucchesi and Younger [275]. The splitting-off theorem of Lovász also proved tobe fundamental and has appeared in a great number of generalizations and extensions.

    Submodular optimization was extensively developed by A. Schrijver and S. Fujishige.For example, Schrijver [337] proved his supermodular colouring theorem in 1985 and usedit to derive a conjecture of Edmonds and Giles for source-sink connected digraphs (whilehe disproved the conjecture in the general case). Fujishige [158] developed algorithms forsubmodular frameworks on graphs as early as in 1978. His results on the structure of basepolyhedra [159, 160] became a major tool in handling graph and hypergraph orientationproblems.

    Two algorithmic breakthroughs occurred during the 1980s, which are the following.É. Tardos [359] was the first who developed a strongly polynomial algorithm for min-costflows. A.V. Goldberg and E.R. Tarjan [186] invented the elegant push–relabel algorithm formaximum flows. Both papers triggered a new wave of research. We shall discuss several vari-ations and extensions of the latter method. In 1992, H. Nagamochi and T. Ibaraki [296] pub-lished their astonishingly simple min-cut algorithm, which was later extended and appliedin various settings. A recent book of Nagamochi and Ibaraki [300] covers all these results.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xi of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface xi

    There are several outstanding works—monographs, textbooks, handbooks—which at leastpartly cover combinatorial optimization topics. The earliest one, Kőnig’s book on GraphTheory [247], appeared in 1931. We mentioned already the seminal book of Ford andFulkerson from 1962. Ore’s book [315] on graph theory from the same year is also worthmentioning, since it exhibits the basic elements of the submodular technique in matchingtheory. The excellent work of L. Mirsky [291] entitled Transversal Theory was published in1971 and appears to be the first book studying matroids from a combinatorial optimizationaspect. C. Berge’s Graphs and Hypergraphs [21] from 1973 is also a rich source.

    In 1976 three important books appeared from the area. J.A. Bondy and U.S.R. Murty:Graph Theory with Applications [35] was an excellent textbook. D.J.A. Welsh: MatroidTheory [379] was the first systematic study of matroids. E.L. Lawler’s work entitled Combi-natorial Optimization: Networks and Matroids [256] was the first to have combinatorialoptimization in its title. The book provided the outstanding service of popularizing thesubject as a single, coherent discipline.

    Lovász’ problem book [267] from 1979 (Combinatorial Problems and Exercises) was thefirst source, among others, of several matching and connectivity problems, including hissplitting-off lemma, which became the starting point for several far-reaching extensions. Asfar as matchings are concerned, Lovász and Plummer: Matching Theory [273] from 1986included not only the most important results on matchings but also covered network flowsand matroid optimization as well.

    There are numerous other excellent monographs and textbooks focusing on special aspectsof combinatorial optimization, such as

    R.K. Ahuja, T.L. Magnanti, and J.B. Orlin: Network Flows—Theory, Algorithms, and Appli-cations [2]J. Bang-Jensen and G. Gutin: Digraphs—Theory, Algorithms and Applications [10]J.A. Bondy and U.S.R. Murty: Graph Theory [36]R. Diestel: Graph Theory [67]S. Fujishige: Submodular Functions and Optimization [161]H. Nagamochi and T. Ibaraki: Algorithmic Aspects of Graph Connectivities [300]K. Murota: Discrete Convex Analysis [294]J.G. Oxley: Matroid Theory [316]A. Recski: Matroid Theory and its Applications in Electric Network Theory and in Stat-ics [328].

    A crowning achievement is the encyclopaedic, 3-volume book on combinatorial optimiza-tion by A. Schrijver [340]. This monumental work provides a comprehensive overview ofefficient algorithms and polyhedral combinatorics. It also contains a plethora of invaluablehistorical notes.

    Target audience

    While planning and writing the book, I imagined an audience familiar with the fundamentals:elements of graph theory, network flows, linear programming, and matroids. J. Lee’s [259]introductory book is an excellent choice for beginners. Two other exceptionally well-writtenadvanced textbooks on combinatorial optimization, by Cook, Cunningham, Pulleyblank, and

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    xii Preface

    Schrijver [56] and by Korte and Vygen [248], are also highly recommended. I assume someknowledge from complexity theory such as the concept of polynomial running time of analgorithm, the notions of NP-completeness, and the problem classes NP and co-NP. For thisreason, the first part of this book, though self-contained, is relatively concise.

    Since graduate students from mathematics, computer science, and operations researchform one part of the targeted readership, I included not only exercises and problems, but‘questions’ as well, which appear when a solution to a current problem raises naturalquestions concerning possible extensions and generalizations. Answers to these questionswill appear in the text of later chapters. Readers are not really expected to figure out theseanswers themselves. But trying to find an answer and meditating a bit on possible solutionsmay serve as a means to understand better the gradual developments of ideas and themotivations behind those later generalizations. I also followed a practice that several smallerobservations needed and proved at a later point are posed as problems, to be solved by thereader, where the necessary tools have just been developed for their solution. The last sectionof the book includes solutions to some selected problems. These problems are indicated by(∗) in the text.

    Another target audience consists of specialists working in related areas who seek a rela-tively coherent exposition. The semimodular technique presented here proves to be powerfulin several applications, and I hope that these readers will find it worthwhile to achieve somefamiliarity with it, even if their main research interest does not revolve around connectivityissues. Also, those working on approximation algorithms for NP-complete problems (con-cerning connectivity) may profit from specific aspects of this book. Yet another goal is towiden the standard curriculum of combinatorial optimization courses. The simple proofsmake it possible even for early M.S. students to understand such fundamental results as thetheorems of Lucchesi and Younger on minimum dijoins, of Nash-Williams on orientations,of Tutte on disjoint trees, or the weighted matroid intersection algorithm. Some researchproblems and conjectures will also be mentioned. For a richer selection, along with links,references, and partial results, see Egres Open (http://lemon.cs.elte.hu/egres/open), a homepage of the Egerváry Research Group.

    A glimpse at characteristic problems

    Since connectivity is the central theme of this book, let us take a brief glimpse at whatthis notion is about in the first place. A beginner intuitively perceives an undirected graphG = (V, E) to be connected if there is no way to separate it into two non-empty pieceswith no link between them. Formally, G = (V, E) is connected if its node-set V has nonon-empty proper subset X with dG(X) = 0, where the degree dG(X) of X denotes thenumber of edges of G connecting X and V − X . A graph that is not connected is calleddisconnected. Another, no less natural, approach for defining connectivity is to require theexistence of a path between each pair of nodes.

    Although it is well known and straightforward that these definitions are equivalent, theyare conceptually quite different. While the first one is a co-NP property in the sense that itprovides an easily verifiable certificate for the lack of connectivity (namely, a subset X withdG(X) = 0), the second is an NP property since it provides an easily verifiable certificatefor the existence of connectivity (namely, a list of

    (n2

    )paths).

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xiii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface xiii

    There is an analogous result for digraphs too. A digraph D = (V, A) is strongly con-nected if it has no non-empty proper subset X with �D(X) = 0, where the in-degree�D(X) of X denotes the number of edges entering X . Another possibility for definingstrong connectivity is to require that each node can be reached along a directed path fromevery other node. Again, a well-known and easy result asserts the equivalence of theseproperties.

    For higher-order connections there are also two different ways to capture the intuitivefeeling that a graph or digraph is ‘pretty much’ connected: a co-NP and an NP property. Thefirst one requires that the graph or digraph cannot be dismantled into small pieces by leavingout only a few edges. Here are four possible definitions to make this intuition formal:

    (A1) A graph G = (V, E) is k-edge-connected if discarding fewer than k of its edgesleaves a connected graph. (This is essentially a reformulation of the requirement thatdG(X) ≥ k whenever ∅ ⊂ X ⊂ V .)

    (A2) A digraph D = (V, A) is k-edge-connected if discarding fewer than k of its edgesleaves a strongly connected digraph. (This is essentially a reformulation of the require-ment that �D(X) ≥ k whenever ∅ ⊂ X ⊂ V .) For k = 1, k-edge-connectivity is juststrong connectivity.

    (A3) G is k-partition-connected if discarding fewer than kq edges leaves a graph withat most q connected components for every q = 1, 2, . . . , |V | − 1. Equivalently, thereare at least kq edges connecting distinct parts for every partition of V into q + 1 non-empty parts for every q , 1 ≤ q ≤ |V | − 1. Note that for k = 1, partition connectivityis equivalent to connectivity.

    (A4) A digraph D = (V, A) with a specified root-node r is r -rooted k-edge-connectedif �D(X) ≥ k whenever ∅ ⊂ X ⊂ V − r . For k = 1, we simply say that D is root-connected.

    The second possible approach to capture the notion of higher-order edge-connectionsis requiring the graph or digraph to include several edge-disjoint ‘simple’ connected con-stituents. Here are four possibilities.

    (B1) In G there are k edge-disjoint paths between every pair of nodes.

    (B2) In D there are k edge-disjoint directed paths from every node to every other.

    (B3) G includes k edge-disjoint spanning trees (in which case G is called k-tree-connected).

    (B4) D includes k edge-disjoint spanning r -rooted arborescences.

    Some fundamental results of graph theory assert the equivalence of the correspondingdefinitions. Namely, by the edge-versions of Menger’s theorem [107], the definitions (A1)and (B1) [and, respectively, (A2) and (B2)] are equivalent.

    Also, theorems of Tutte [368] and Edmonds [83] assert the equivalence of (A3) and (B3)and the equivalence of (A4) and (B4), respectively. Nash-Williams’ orientation theorem[303] provides a link between 2k-edge-connected undirected graphs and k-edge-connecteddigraphs asserting that an undirected graph has a k-edge-connected orientation if and only ifG is 2k-edge-connected.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xiv of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    xiv Preface

    The vast majority of the problems we are going to investigate can be divided into sixcategories.

    1. Subgraph problems. Given an undirected or directed graph, find a subgraph with pre-scribed connectivity properties. Moreover, if there are several possible choices, find the bestone with respect to a cost (or weight) function. For example, finding a cheapest spanning treeof a graph is a well-known subgraph problem, as is the one of finding a cheapest path froms to t . A significantly more complex, but nicely tractable, subgraph problem is about findinga cheapest subgraph of a digraph in which every node is reachable from a root-node along kedge-disjoint paths. One may also be interested in the largest part of a partially ordered set(poset) that includes no long chains or antichains.

    A great number of subgraph problems are NP-complete, most notably the Hamilton circuitproblem, where a connected spanning subgraph having all degrees exactly 2 is sought.

    2. Augmentation or supergraph problems. There are problems, in a sense opposite tosubgraph problems, where one is interested in the minimum number of new edges to beadded to an initial graph so as to achieve a target connectivity. For example, how manynew edges must be added to a digraph to obtain a strongly connected digraph? Interestingly,this particular problem can be solved in polynomial time, while its subgraph counterpart, inwhich the construction of a smallest strongly connected subgraph of a digraph is requested,is NP-complete.

    3. Orientation problems. Here one wants to orient the edges of an undirected graph so thatthe resulting digraph fulfils a target connectivity requirement. For example, how should weorient a graph so as to obtain a strongly connected digraph? A naturally related problemis the reorientation problem when an initial digraph has to be reoriented by reversing aminimum number of edges so as to obtain a digraph that is strongly connected. This problemis still tractable, though the answer derived from an equivalent formulation of a theorem ofLucchesi and Younger [275] is much harder, especially from an algorithmic point of view.

    4. Packing, covering, and colouring problems. In a packing problem, one is expected toselect a maximum number of disjoint members of a set of given objects. For example, find kdisjoint spanning arborescences of a digraph, or k disjoint paths from s to t . Or, what is themaximum number of disjoint dicuts in a digraph?

    In a covering problem, we want to cover the ground-set by a minimum number of givenobjects. For example, when is it possible to cover a digraph by k branchings? Or, what is theminimum number of chains covering the ground-set of a partialy ordered set?

    Finally, in a colouring problem, we want to partition (colour) the ground-set into givenobjects. For example, when is it possible to partition the edge-set of a bipartite graph into kmatchings? Or, when is it possible to partition a poset into k antichains?

    5. Constructive characterizations. Certificates obtained constructively for the existenceof a certain property are called constructive characterizations. For example, an undirectedgraph is connected if and only if it can be built up from a node by adding edges one by onein such a way that at least one end-node of the newly added edge belongs to the alreadyconstructed subgraph. Slightly more complicated constructions are the ear-decompositiontheorems for 2-edge-connected graphs and strongly connected digraphs. The advantage ofsuch characterizations is nicely illuminated by a well-known folklore result, asserting that a

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xv of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Preface xv

    directed graph is acyclic if and only if it can be built up from a node by adding new nodesone by one in such a way that a new node v is added along with some new directed edgeswith head v such that the tails are existing nodes. This constructive characterization is theonly polynomially verifiable certificate for the non-existence of directed circuits.

    6. Polyhedral descriptions. In order to optimize a linear objective function over some givenobjects, it can be extremely useful to describe the convex hull (of incidence vectors) ofthese objects by linear inequalities. Such a description is often indispensable for an efficientalgorithm since, through the linear programming duality theorem, the description providesan optimality condition and stopping rule. For example, the problem of finding the cheapestsubgraph of a digraph in which there are k openly disjoint paths from a root-node to everyother node can hardly be solved without polyhedral ideas.

    This categorization of problems does not mean a disjoint partition. It may be the casethat the same problem belongs to more than one class. For example, perfect matching can beconsidered as a subgraph problem, and also as a packing problem. Or the orientation problemcan be considered as a subgraph problem: replace each edge of the initial undirected graph bytwo directed parallel edges oriented oppositely and delete exactly one member of these pairs.Conversely, a subgraph problem, too, can often be formulated with the help of orientations.We shall see that the subgraph and the augmentation problems are also strongly related.

    Acknowledgements

    Eötvös Loránd University of Budapest (ELTE) has been an ideal place for studying as well asfor teaching mathematics. The Institute of Mathematics of the university provided a support-ive environment for conducting research and for completing this book. The contribution ofthe Hungarian Academy of Sciences (MTA) by supporting the Egerváry Research Groupon Combinatorial Optimization (EGRES), a joint group of MTA and ELTE, provided asignificant improvement in the research environment during the past decade. The supportof the Hungarian Research Foundation (OTKA, No. K60802 and No. CK80124) was alsodecisive. During my research career, I enjoyed the support of several other institutions:University of Bonn, Fourier University Grenoble, EPFL Lausanne, and Ericsson Hungary.

    A large number of people helped me during the long process of bringing this book tolife. I am extremely grateful to Imre Rábai for his fundamental contribution to the polishingof my mathematical thinking during high school. As a graduate student, I was particularlylucky to meet Lajos Pósa, who not only taught a lot of basic proof techniques but encouragedme to take the first steps toward become a researcher. It was András Recski from whom Ilearnt the technique of writing a paper or preparing a talk. His help in facilitating my earlyparticipation on international conferences is also gratefully acknowledged. Without the yearsI spent at the Research Institute for Discrete Mathematics, founded and directed by BernhardKorte in Bonn, I would not have been able to write this book. He has served as a role modelby providing the most efficient environment for researchers, and I was among the fortunateones who could enjoy his hospitality for long periods. Jean Fonlupt in France, Tom Lieblingin Switzerland, and Satoru Fujishige in Japan also have made invaluable contributions byproviding me with mathematical shelter several times.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xvi of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    xvi Preface

    Special thanks are due to Vera Sós, who not only gave the first course in graph theory inwhich I participated but who also has closely followed my path during the past forty years.Her constant support and encouragement have been indispensable.

    In 1980 J. Edmonds invited me to the University of Waterloo, Canada. This first visit, aswell as the numerous later occasions since then, when he shared his penetrating ideas withme, have been a lasting inspiration.

    I have been so fortunate to meet personally a great number of major players of the fieldwhose results have become classic and are included in the book: A.V. Goldberg, J. Edmonds,S. Fujishige, T. Gallai, A.J. Hoffman, T. Ibaraki, H.W. Kuhn, L. Lovász, C.L. Lucchesi,W. Mader, H. Nagamochi, C.St.J.A. Nash-Williams, R. Rado, A. Schrijver, P. Seymour,R.E. Tarjan, W.T. Tutte, D.H. Younger, and T. Watanabe.

    I feel that the collaboration with my former students Éva Tardos, András Sebő, TiborJordán, Zoltán Szigeti, László Szegő, Tamás Király, Alpár Jüttner, Gyula Pap, Jácint Szabó,and László Végh has been particularly enjoyable and fruitful. The several discussions I madewith Tamás Fleiner and Zoltán Király were also very helpful.

    Several people helped me in correcting the book, and their help is heartily acknowledged.In particular, much energy was invested to check the mathematical content of the book byKristóf Bérczi, Attila Bernáth, Balázs Fleiner, Tamás Király, Erika Kovács, Péter Kovács,Zoltán Miklós, Gyula Pap, Júlia Pap, Jácint Szabó, Zoltán Szigeti, Tibor Jordán, and LászlóVégh. I am also grateful to David Kratz, who helped to polish the English of the text. I alsothank my son Péter for giving me Kőnig’s classic book as a birthday present.

    Two close and longtime friends, György Elekes and Péter Kas, asked me often about thebook. I strongly wanted to show them the final version but this is no longer possible.

    The single most important influence in my entire mathematical career has been providedby László Lovász. I first heard many of the basic results and techniques of this book fromhim. His ideas and the spirit of his results have been extremely motivating, and their impactto my mathematical taste and orientation cannot be overestimated. His constant interest inmy work has been a major driving force.

    During the last two decades, my wife Daisy (whom I happen to have known from thevery day of her birth) not only provided an intimately warm, loving, and cheerful familybackground, but her never-fading support, patience, and persuasion were also the mostindispensable factors during the entire period of carrying out this project.

    The book is dedicated to the memory of my dear parents, Márta Kemény and LászlóFrank.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xvii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Contents

    Notation xx

    PART I BASIC COMBINATORIAL OPTIMIZATION

    1 Elements of graphs and hypergraphs 31.1 Fundamentals 31.2 Cut functions and connectivity concepts 191.3 Special graphs and digraphs 291.4 Special hypergraphs and bi-set systems 351.5 Complexity of problems and algorithms 41

    2 Connectivity, paths, and matchings 452.1 2-connection of graphs 452.2 Strong connectivity 512.3 Degree-constrained orientations 582.4 Bipartite matchings 652.5 Disjoint paths 79

    3 Elements of network optimization 953.1 Cheapest paths and feasible potentials 953.2 Cheapest trees and arborescences 1053.3 Weighted matchings of bipartite graphs 1113.4 Flows and circulations 1153.5 Computing maximum flows 1223.6 Cheapest flows 125

    4 Elements of polyhedral combinatorics 1354.1 Linear inequality systems and polyhedra 1364.2 Total unimodularity 1484.3 Applications of totally unimodular matrices 157

    5 Elements of matroid theory 1725.1 Independence and rank 1735.2 Circuits and connectivity 1765.3 Bases, rank, and co-rank 1805.4 Constructing matroids 1855.5 Matroid algorithms and polyhedra 192

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xviii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    xviii Contents

    PART II HIGHER-ORDER CONNECTIONS

    6 Efficient algorithms for flows and cuts 2076.1 Push–relabel algorithms 2076.2 Computing a minimum cut of a digraph 2156.3 Computing a minimum cut of an undirected graph 2196.4 Strongly polynomial algorithm for cheapest m-flows 222

    7 Structure and representations of cuts 2287.1 Cactus representation of minimum cuts 2287.2 Local edge-connectivities 2327.3 Solid sets 2377.4 Sparse certificates for directed graphs and hypergraphs 2407.5 Sparse certificates for undirected graphs 243

    8 The splitting-off operation and constructive characterizations 2508.1 Undirected splitting 2508.2 Directed splitting 2588.3 Further constructive characterizations 2658.4 Packing paths 277

    9 Orientations of graphs and hypergraphs 2849.1 Rooted k-edge-connected orientations and reorientations 2859.2 Global k-edge-connection 2979.3 Common generalization: (k, �)-edge-connected orientations 3029.4 Orientation of hypergraphs 3069.5 Mixed graphs and orientations 3129.6 Optimal orientations and reorientations 3179.7 Optimal strongly connected reorientation 3249.8 Well-balanced orientations 332

    10 Trees and arborescences: packing and covering 33910.1 Packing arborescences 33910.2 Packing branchings 34910.3 Further generalizations 35510.4 Covering by branchings, trees, and forests 36010.5 Packing trees and forests 363

    11 Preserving and improving connections 37211.1 Augmenting edge-connectivity of undirected graphs 37311.2 Augmenting edge-connectivity of directed graphs 38311.3 Augmenting ST-edge- and node-connectivity of digraphs 38611.4 Rooted k-connections 392

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xix of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Contents xix

    PART III SEMIMODULAR OPTIMIZATION

    12 Setting the stage—aspects and approaches 40312.1 Two aspects of investigation 40312.2 Convexity and submodularity 40812.3 Abstract extensions of the Kőnig–Hall theorem 410

    13 Matroid optimization 41313.1 Unweighted matroid intersection 41313.2 Weighted matroid intersection 42313.3 Sum of matroids 43313.4 Matroids from intersecting sub- and supermodular functions 44513.5 Count matroids 453

    14 Generalized polymatroids 46314.1 Semimodular functions and their polyhedra 46314.2 Constructions and operations 46714.3 Intersection with a box and with a plank 47314.4 Intersection of two g-polymatroids 48214.5 The greedy algorithm 484

    15 Relaxing semimodularity 49015.1 Truncation 49115.2 Applications to branchings and augmentations 50015.3 Full truncation 50315.4 Graph orientations via base-polyhedra 512

    16 Submodular flows 52416.1 Submodular and supermodular flows 52416.2 A push–relabel algorithm for submodular flows 53416.3 Optimization over submodular flows 543

    17 Covering supermodular functions by digraphs 55317.1 Supermodular frameworks with TDI systems 55417.2 Non-TDI frameworks for covering set-functions 56917.3 Non-TDI frameworks for covering bi-set functions 577

    18 Solutions to selected problems 593

    Bibliography 605

    Author Index 623

    General Index 627

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xx of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Notation

    Set-functions Let b and p be set-functions on a ground-set S. Let m : S → R be a functionon S.

    b, the complement of b, defined by b(X) := b(S) − b(S − X).ḃ : S → R, defined by ḃ(v) := b(v) for v ∈ S.b̈ : 2S → R, a modular set-function, defined by b̈(X) := ∑[b(v) : v ∈ X ].bimin , inner minimization of b, defined by bimin(Z) := min{b(X) : X ⊆ Z}.bomin , outer minimization of b defined by bomin(Z) := min{b(X) : X ⊇ Z}.b∨, lower truncation of b, defined by b∨(Z) := min{∑ti b(Xi ) : {X1, . . . , Xt } a partition ofZ (t ≥ 1)}.p∧, upper truncation of p, defined by p∧(Z) := max{∑ti p(Xi ) : {X1, . . . , Xt } a partitionof Z , (t ≥ 1)}.m̃ : 2S → R, a modular set-function defined by m̃(X) = ∑[m(v) : v ∈ X ].b � m, lower convolution of b and m, defined by (b � m)(Z) := min{b(X) + m̃(Z − X) :X ⊆ Z}.

    Functions on undirected graphs Let G = (V, E) be an undirected graph, X a subset ofnodes, and x : E → R ∪ {±∞} a function.

    d(X) = dG(X) = dE (X), the number of edges connecting X and V − X .dx (X) := ∑[x(e) : e ∈ �E (X)].iG(X) = iE (X), the number of edges induced by X .eG(X), the number of edges with at least one end-node in X .

    d(X, Y ) = dG(X, Y ) = dE (X, Y ), the number of edges connecting X − Y and Y − X .d(u, v) = dG(u, v), the number of parallel uv-edges.d(X, Y )= dG(X, Y )= d E (X, Y ), the number of edges connecting X ∩ Y and V− (X ∪ Y ).cG(X), the number of components of the subgraph induced by X .

    σG(X), the number of components of G − X when X �= ∅ and σG(∅) = 0.λG(X, Y ), the maximum number of edge-disjoint paths from X to Y .

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xxi of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Notation xxi

    λG(u, v), maximum number of edge-disjoint uv-paths

    κG(u, v), maximum number of openly disjoint uv-paths

    Functions on directed graphs Let D = (V, A) be a directed graph, X a subset of nodes,and x : A → R ∪ {±∞} a function.�D(X) = �A(X), the number of arcs entering X .δD(X) = δA(X), the number of arcs leaving X .�x (X) := ∑

    [x(e) : e ∈ �−D(X)

    ].

    δx (X) := ∑[x(e) : e ∈ �+D(X)

    ].

    x (X) := �x (X) − δx (X).iD(X) = i A(X), the number of arcs induced by X .cD(X), the number of components of the subgraph induced by X in the underlying undi-rected graph.

    σD(X), the number of components of D − X when X �= ∅ and σD(∅) = 0.σD(X) := cD(V − X) when X �= ∅, and σD(∅) := 0,dD(X, Y ), the number of edges connecting X − Y and Y − X in the underlying undirectedgraph.

    λD(X, Y ), maximum number of edge-disjoint paths from X to Y .

    λD(u, v), maximum number of edge-disjoint uv-paths.

    κD(u, v), maximum number of openly disjoint uv-paths.

    Functions on hypergraphs and dypergraphs Let H = (V, E) be hypergraph or a dyper-graph, and X a subset of nodes.

    χE (Z), indicator function of E , the number of copies of Z occurring in E .χ

    Z(v), characteristic function of Z , 1 or 0 depending on v is in Z or not.

    d(X) = dH (X), the number of hyperedges intersecting both X and V − X .iH (X), the number of hyperedges or dyperedges induced (= included) by X .

    eH := iH + dH .pH (X), the number of hyperedges or dyperedges disjoint from X , (i.e., ph(X) = iH(V − X)).dH (X, Y ), the number of hyperedges Z ∈ E for which Z ⊆ X ∪ Y , Z ∩ (X − Y ) �= ∅, andZ ∩ (Y − X) �= ∅.d∗H (X, Y ), the number of hyperedges Z ∈ E for which Z ∩ X ∩ Y = ∅, Z ∩ (X − Y ) �= ∅,and Z ∩ (Y − X) �= ∅.�H (X), the number of dyperedges entering X .

    δH (X), the number of dyperedges leaving X .

    Bi-set functions Let D = (V, A) be a digraph, X = (X O , X I ) a bi-set, and x : A → R ∪{±∞} a function.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xxii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    xxii Notation

    iD(X): the number of edges induced by X , that is, the number of edges with head in X I andtail in X O .

    �D(X): the number of arcs entering X , that is, the number of edges with head in X I and tailin V − X O .δD(X): the number of arcs leaving X .

    �x (X) := ∑[x(a) : a enters X ].δx (X) := ∑[x(a) : a leaves X ].W (X) := X O − X I , the wall of a bi-set X .w(X) := |W (X)|, the wall-size of X .X := (V − X I , V − X O), the complement of a bi-set X = (X O , X I ).X � Y := (X O ∩ YO , X I ∩ YI ), the intersection of two bi-sets.X � Y := (X O ∪ YO , X I ∪ YI ), the union of two bi-sets.X � Y : if X O ⊆ YO and X I ⊆ YI .Set-to-set functions

    �G(X) := {u ∈ V − X : there is an edge uv ∈ E for which v ∈ X}.�−D(X) := {u ∈ V − X : there is an arc uv ∈ A for which v ∈ X}.V (F), set of nodes covered by the edge-set F .

    EG(X, Y ) = E(X, Y ), set of edges connecting X − Y and Y − X .EG(u, v) = E(u, v), set of parallel edges connecting u and v.EG(X) = E(X), set of edges with at least one end-node in X .IG(X), set of edges induced by X .

    �G(X) = �E (X), a cut of G: set of edges connecting X and V − X .�H (X) = �E (X), a cut of H : set of hyperedges intersecting X and V − X .�+D(X), out-cut, set of arcs leaving X and entering V − X .�−D(X), in-cut, set of arcs entering X and leaving V − X .cl(X), closure of a subset X ⊆ S in a matroid.Graph, hypergraph, and digraph functions

    α(G), stability number.

    ω(G), clique number.

    χ(H), chromatic number.

    χ ′(H), chromatic index.ν(H), matching number.

    τ(H), transversal number.

    �(H), maximum degree.

    κ(G) and κ(D), node-connectivity.

    λ(G) and λ(D), edge-connectivity.

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xxiii of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Notation xxiii

    Operations

    X � Y , symmetric difference of sets.�x�, upper integer part of a number x .�x�, lower integer part of a number x .� f �, upper integer part of a vector or a function f .� f �, lower integer part of a vector or a function f .( f )+, non-negative part of a number or function f .M1 ◦ M2, composition of matroids M1 and M2.M1 + M2, sum of matroids M1 and M2.A − B := {z : z ∈ A, z �∈ B}.X + s := X ∪ {s}.X − s := X − {s}.H − e, deleting an edge e of a graph or digraph H .H/e, contracting an edge e.

    H − v, deleting a node v of a graph or digraph H .H − F , deleting a subset F of edges of a graph or a digraph H .H/F , contracting a subset f of edges.

    H − Z , deleting a subset Z of nodes of a graph or digraph H .H/Z , shrinking a subset Z of nodes of a graph or digraph H .

  • 978–0–19–920527–1 00-Andras-Frank-Prelims-drv Andras Frank (Typeset by SPi, Publisher Services, India) xxiv of 640 December 11, 2010 15:14

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 1 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Part I

    Basic Combinatorial Optimization

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 2 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 3 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    1

    Elements of graphs and hypergraphs

    This chapter is a summary of fundamental concepts, terminology, notation, and basic proper-ties used throughout the book, and it is provided primarily for reference. The reader may findit helpful to read through this chapter quickly at first, returning to the appropriate sectionsonly when a systematic study of a later topic requires the exact concepts and notation.

    1.1 Fundamentals

    We start with an overview of some central notions of the book: sets, bi-sets, graphs,hypergraphs, partially ordered sets, and reachability.

    1.1.1 Sets and functions

    Sets and multi-setsA set X is a subset of Y if every element of X belongs to Y . This is denoted by X ⊆ Y .Throughout the book, we will say that a set Y includes a set X if X ⊆ Y and that Y containsan element v if v ∈ Y . If, in addition, X �= Y , then Y is said to include properly X or thatX is a proper subset of Y , which is denoted by X ⊂ Y . When X ⊆ Y , we also say that Yis a superset of X . For two distinct elements s and t of a finite ground-set V , we say thata subset X of V is an st̄-set if s ∈ X ⊆ V − t . For the difference of two sets X and Y , weuse the notation X − Y , that is, X − Y := {v : v ∈ X, v �∈ Y }. The symmetric difference oftwo sets is defined by X � Y := (X − Y ) ∪ (Y − X). The complement of a subset X ⊆ Vis defined by V − X . A subset X of V and its complement X form a bipartition of V .

    Let V be a ground-set. For a subset Z ⊆ V , the characteristic or indicator function (orvector) χ

    Z: V → {0, 1} of Z is defined by

    χZ(v) :=

    {1 if v ∈ Z0 if v ∈ V − Z . (1.1)

    By a multi-set Z , we mean a collection of elements of V where an element of V may occurin more than one copy. The indicator function χ

    Z: V → {0, 1, 2, . . . } of Z tells that χ

    Z(v)

    copies of an element v of V occurs in Z . By the multi-union of multi-sets Z1, . . . , Zk , wemean a multi-set for which the indicator function is χ

    Z1+ · · · + χ

    Zk.

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 4 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    4 Elements of graphs and hypergraphs

    A set of cardinality 1 (that is, a set consisting of a single element) is called a singleton.Although formally not precise, in most cases we will not distinguish a singleton from its onlyelement: this practice causes no ambiguity. In the few cases when confusion may arise, wewill make the distinction. (For example, the degree of a node v of a graph is not the same asthe degree of the singleton {v}, since the loops sitting at v are taken into consideration onlyin the first case.) The union of a set X and a singleton {s} will be denoted by X + s, whilethe difference X − {s} will be abbreviated to X − s. A set of two elements is sometimescalled a doubleton.

    If X is a set and v is an element of X , then we say that v covers X and that X covers v.Two sets are disjoint if they have no element in common. Sets X1, X2, . . . , Xt are calleddisjoint if they are pairwise disjoint. Two subsets of a ground-set are called co-disjoint iftheir complements are disjoint. Two subsets X and Y of V are called intersecting if X ∩ Y isnon-empty. They are properly intersecting if none of the subsets X ∩ Y, X − Y, or Y − Xis empty. If, in addition, V − (X ∪ Y ) is also non-empty, we speak of crossing subsets.The subsets X and Y are comparable if X ⊆ Y or Y ⊆ X , and they are non-comparable orunrelated otherwise. A set X is said to separate another set Y (or Y is separated by X ) ifneither X ∩ Y nor Y − X is empty. In particular, two elements s and t are separated by asubset X if |X ∩ {s, t}| = 1.

    For a given property P , a subset X of V is called maximal if X admits this property butno proper superset of X does. X is called maximum with respect to P if its cardinality is thelargest one among the subsets of V having this property. The distinction between the termsminimal and minimum is defined analogously.

    Set systems and familiesThe power set 2V of V consists of all subsets of V . A subset of 2V , that is, a set of subsets ofV , is called a set-system of V or a system of subsets of V . By this definition, a set-systemconsists of distinct sets. A set-system P is a partition of V if every element of V belongsto exactly one member of P . A partition of a subset of V is called a subpartition of V .That is, a subpartition is a set of disjoint sets. A set-system consisting of pairwise co-disjointsets is called a co-subpartition of V . A partition having t members is said to be t-partite,or just called a t-partition. A partition is proper if its members are non-empty. A partitionis trivial if it consists of the single class {V }. The other extreme, when each member of Pis a singleton, is called the point-partition of V . A t-partition P of V is sometimes calleda t-colouring of V the members of which are the colour-classes. A Sperner family is aset-system in which no member includes another member.

    A family (sometimes collection) F of subsets of V is a multi-set of subsets of V , that is,F consists of subsets of V where a subset may occur in more than one copy. The indicatorfunction χF : 2V → Z+ of F is a set-function where χF (X) denotes the number of copiesof X ⊆ V occurring in F . One may also think of F as a list of subsets of V where the actualordering of the subsets is irrelevant. By the multi-union of families (and, in particular, set-systems) Fi on a common ground-set V (i = 1, . . . , k), we mean a family F of subsets ofV for which the indicator function is χF1

    + · · · + χFk .Let F be a family of subsets of V . Call two elements u, v ∈ V separated by F if there is

    a set Z ∈ F separating u and v. If no such set exists, the two elements are non-separated orequivalent. This is clearly an equivalence relation. Each equivalence class is called an atom

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 5 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Fundamentals 5

    of F , and also an atom of the hypergraph (V,F). In other words, an atom defined by F isa maximal subset Z of V that is not separated by any member of F . The atoms of a familyof sets form a partition of V .

    Partially ordered setsA partially ordered set or, for short, a poset is a pair P = (S,) consisting of a ground-set S and a reflexive, antisymmetric, and transitive binary relation on S. That is, s sfor every s ∈ S; at most one of x y and y x holds for every pair of distinct x, y ∈ S;and x y and y z imply x z. The notation x ≺ y means that x y and x �= y. Twodistinct elements x and y of S are called comparable if x ≺ y or y ≺ x . Otherwise they areincomparable. A poset is a chain (also a totally or linearly ordered set) if its elementsare pairwise comparable. When the elements are pairwise incomparable we speak of anantichain.

    A subposet of P consists of a subset S′ of S with the restriction of the relation to thepairs of elements of S′. If this is a chain (antichain), then we say that S′ is a chain (antichain)of P . The height of a poset is the maximum cardinality of a chain while the width is themaximum cardinality of an antichain of P .

    A subset X of S in a poset P is called a lower ideal or just an ideal if y x ∈ X impliesthat y ∈ X . A subset X ⊆ S is an upper ideal if x y and x ∈ X imply y ∈ X . The set-system of ideals are obviously closed under taking union and intersection.

    Bi-setsGiven a ground-set V , by a bi-set on V we mean a pair X = (X O , X I ) of subsets of V forwhich X I ⊆ X O ⊆ V . Here X O is the outer member and X I is the inner member of X .The notion of bi-sets is not standard but its use will prove particularly convenient in severalplaces. The reader will find it useful to become familiar with bi-sets at this stage. We call abi-set X = (X O , X I ) simple if X O = X I and will tacitly identify a simple bi-set with theset X I . A bi-set X = (X O , X I ) is trivial if X I = ∅ or X O = V . When X I = ∅, we say thatX is void. For a bi-set X , define the wall W (X) of X by the subset W (X) := X O − X I ofV and let the wall-size w(X) of X be defined by

    w(X) := |W (X)|.The complement X of a bi-set X = (X O , X I ) is defined by X = (V − X I , V − X O).For simple bi-sets, w(X) = 0. For two elements s and t of the ground-set, we say thatX = (X O , X I ) is a t s̄-bi-set if t ∈ X I and s �∈ X O . A bi-set X separates s and t if |X I ∩{s, t}| = 1 = |(V − X O) ∩ {s, t}|. A bi-set X = (X O , X I ) is called a t s̄-bi-set if t ∈ X I ands ∈ V − X O .

    The set of all bi-sets on ground-set V is denoted by P2(V ) = P2. A multi-set F of bi-setsis often called a family of bi-sets, that is, F is a collection of bi-sets where a bi-set may occurin more than one copy. The indicator function χF : P2 → Z+ of a family F of bi-sets andthe multi-union of families of bi-sets are defined analogously to those concerning familiesof subsets.

    The intersection � and the union � of bi-sets is defined in a straightforward manner:for X, Y ∈ P2 let X � Y := (X O ∩ YO , X I ∩ YI ), X � Y := (X O ∪ YO , X I ∪ YI ). We writeX � Y if X O ⊆ YO , X I ⊆ YI and this relation is a partial order on P2. Accordingly, when

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 6 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    6 Elements of graphs and hypergraphs

    X � Y or Y � X , we call X and Y comparable. A family of pairwise comparable bi-sets iscalled a chain. Two bi-sets X and Y are inner disjoint if X I ∩ YI = ∅ and independent ifX I ∩ YI = ∅ or V = X O ∪ YO . A set of bi-sets is independent if its members are pairwiseindependent. Two bi-sets are intersecting if X I ∩ YI �= ∅ and properly intersecting if, inaddition, they are not comparable. Note that X O ∪ YO = V is allowed for two intersectingbi-sets. Two properly intersecting bi-sets X and Y are called crossing if X O ∪ YO ⊂ V .

    FunctionsFor a real number x , let x+ := max{0, x}. For a function f : V → R, let the non-negativepart f + : V → R+ of f be defined by

    f +(v) := ( f (v))+ for v ∈ V .For a vector z ∈ Rn , let z+ ∈ Rn be defined by z(i) = (z(i))+ for i = 1, . . . , n. For a real x ,let �x� denote the largest integer z for which z ≤ x and let �x� denote the smallest integerz with z ≥ x . A function on the edge-set or on the node-set of a graph or digraph oftenrepresents an (upper or lower) bound in which case we use the intuitive name (upper orlower) capacity function. Typically, f is used for lower bound and g is used for upperbound. Also, a function c ∈ Rn determines a linear function on Rn defined by the innerproduct cz (z ∈ Rn). Typically, when we are to minimize cx , we speak of a cost function,while if maximization is the goal, the intuitive name weight function is used.

    By a set-function on ground-set V , we mean a function b : 2V → R ∪ {∞} ∪ {−∞}.For example, the indicator function of a family of subsets of V is a non-negative, integer-valued set-function. For a singleton {v}, instead of the precise notation b({v}), we use b(v).A set-function b is subcardinal if b(X) ≤ |X | for every X ⊆ S, and non-decreasing ifb(X) ≤ b(Y ) whenever X ⊆ Y and b(X) is finite.

    Convention on b(∅) = 0. We always assume that the value of a set-function is 0 for theempty set. In particular, if a concrete definition of a set-function b gives rise to a non-zerovalue for b(∅), we automatically define b(∅) = 0. For example, for a real k, we will saythat b is identically k, using the notation b :≡ k, without explicitly mentioning the followingformal definition of b:

    b(X) :={

    k if ∅ ⊂ X ⊆ V0 if X = ∅.

    By a bi-set-function, we mean a function defined for the set of bi-sets of V . Since asimple bi-set (X, X) may be identified with the set X , bi-set functions may be considered asstraight generalizations of set-functions. We will assume for bi-set functions that their valueon trivial bi-sets is 0.

    A set-function b : 2V → R ∪ {∞} is said to satisfy the submodular inequality onX, Y ⊆ V if

    b(X)+ b(Y ) ≥ b(X ∩ Y )+ b(X ∪ Y ). (1.2)By convention, we consider the inequality automatically satisfied if at least one of the twoterms on the left-hand side is∞, even if both terms on the right-hand side are∞. Similarly,the submodular inequality for a bi-set-function b : P2(V ) → R ∪ {∞} on bi-sets X, Y ∈P2(V ) is as follows:

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 7 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Fundamentals 7

    b(X)+ b(Y ) ≥ b(X � Y )+ b(X � Y ).A set-function p : 2V → R ∪ {−∞} is said to satisfy the supermodular inequality onX, Y ⊆ V if

    p(X)+ p(Y ) ≤ p(X ∩ Y )+ p(X ∪ Y ). (1.3)For a bi-set-function p : P2(V ) → R ∪ {−∞}, the supermodular inequality is analogous:

    p(X)+ p(Y ) ≤ p(X � Y )+ p(X � Y ).By convention, we consider the inequality satisfied if at least one of the two terms ofthe left-hand side is −∞. A function p is said to be fully supermodular or just super-modular if it satisfies the supermodular inequality for every pair of sets X and Y . If (1.3)holds for intersecting (crossing) pairs, we speak of intersecting (crossing) supermodularfunctions. Sometimes (1.3) is required only for pairs with p(X) > 0 and p(Y ) > 0, inwhich case we speak of positively supermodular functions. Positively intersecting orcrossing supermodular functions are defined analogously. A typical way of constructinga positively intersecting supermodular function is to replace each negative value of anintersecting supermodular function by 0. The analogous notions of fully, intersecting, orcrossing submodular functions are introduced in a similar way, with the difference that thesubmodular inequality is required for all pairs, for intersecting pairs, or for crossing pairsof sets X and Y . Typically, the term submodular function will refer to full submodularity,and the adjective full is used only when the distinction from weaker submodularity is to beemphasized.

    A set-function b on V is said to be modular if

    b(X)+ b(Y ) = b(X ∪ Y )+ b(X ∩ Y ) for every X, Y ⊆ V .If b is a finite-valued modular function with b(∅) = 0, then b(X) =∑[b(v) : v ∈ X ], thatis, the function is determined by its values on singletons. A bi-set-function b is said to bemodular if

    b(X)+ b(Y ) = b(X � Y )+ b(X � Y ) for every pair of bi-sets X, Y.

    Proposition 1.1.1 The wall-size of bi-sets determine a modular function, that is,

    w(X)+ w(Y ) = w(X � Y )+ w(X � Y ) for every pair of bi-sets X and Y . •

    Important: three unusual notational conventions!We introduce three non-conventional, perhaps strange, notational conventions that will beused throughout this book.

    Dot. Given a set-function b on V , let ḃ : V → R be defined byḃ(v) := b(v) (= b({v})) for v ∈ V .

    Obviously, this convention has nothing to do with derivation. The dot notation simply refersto the fact that a function on the elements of the ground-set V is created from a set-functionon V . It will not be used when the variable is specified; we shall write throughout b(v)

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 8 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    8 Elements of graphs and hypergraphs

    instead of ḃ(v). However this notation is quite useful when we have to refer to the functionḃ itself in order to distinguish it from the set-function b.

    Double dot. For the set-function b on V , let b̈ : 2V → R be the modular set-functiondefined by

    b̈(X) :=∑[b(v) : v ∈ X ].

    Tilde. For a function m : V → R (or vector m ∈ RV ), we define a modular set-functionm̃ by

    m̃(X) =∑[m(v) : v ∈ X ].

    In the same spirit, a set-function b on V can be extended to the families F of subsets of V by

    b̃(F) :=∑[b(X) : X ∈ F].

    When the∼ (tilde) notation is applied to a function with a subscript or a superscript, like m1or m′, we use the slightly sloppy notation m̃1 for m̃1 and m̃′ for m̃′.

    The modulus of a vector m is the sum of its components, that is, m̃(V ). The vector(1, 1, . . . , 1) in RV is denoted by 1 (without referring to V or to the dimension). Thereforem̃(V ) is the inner product m1 = 1m.

    A useful lemmaThe following simple observation will be used several times for proving the finiteness ofwhat is called the uncrossing procedure, a fundamental proof technique in semimodularoptimization.

    Lemma 1.1.2 Let r1, . . . , rn be a sequence of non-negative rational numbers. As long aspossible, apply the following 4-change step. Select four distinct members for which the twomiddle ones are positive. Let α denote the minimum of the two middle elements. Decreaseby α the value of the two middle elements and increase by α the value of the first and fourthones. Then, after a finite number of 4-change steps, the procedure terminates.

    Proof. By multiplying through with the least common denominator, if necessary, we canassume that the sequence consists of integers. Observe that the first member of the sequencenever decreases, each member remains non-negative, and the total sum remains constant.Therefore, the first member becomes fixed after a finite number of 4-change steps, and thelemma follows by induction on n. •Problem 1.1.1 Show that the procedure described in the lemma may not terminate in a finitenumber of steps if the members of the initial sequence are non-negative irrational numbers.

    1.1.2 Undirected graphsA simple undirected graph G (or, for short, a simple graph) is a pair (V, E) where V isthe set of nodes and E is the set of edges of G. Each edge e is a two-element subset {u, v} ofV , in other words, an unordered pair where u and v are called the end-nodes of the edge. Weoften use the abbreviation e = uv and say that e is a uv-edge. Note that uv and vu denote the

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 9 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Fundamentals 9

    same edge. We say that an edge connects or joins its end-nodes. Also, an edge e is incidentto a node v if v is an end-node of e. Two nodes u and v of a graph G are neighbours or saidto be adjacent if there is a uv-edge in G. The set of neighbours of a node v is denoted by�G(v) = �(v).

    A simple graph is called complete if u and v are adjacent for every u, v ∈ V . A completegraph on n nodes is denoted by Kn . The complement G = (V, E) of a simple graph G =(V, E) is a graph in which two nodes are adjacent if and only if they are not adjacent in G.Evidently, the complement of G is G itself.

    Intuitively, a uv-edge can be represented by a ‘line’ connecting u and v. There aresituations when two nodes are joined by more than one line or when a node is joined bya line to itself. These motivate the following formal definition of a graph.

    An undirected graph G (or, for short, a graph) is a triplet (V, E, ϕ) where V is the setof nodes, E is the set of edges of G, and ϕ is a function assigning an unordered pair of(not-necessarily-distinct) nodes to every edge. When the two end-nodes of an edge coincide,we say that the edge is a loop. We say that two or more non-loop edges are parallel if theyhave the same end-nodes. The set of parallel edges of G connecting u and v is denoted byEG(u, v) = E(u, v). An element of E(u, v) is a uv-edge.

    It is a standard (though slightly sloppy) custom to avoid this formally precise notation anduse only (V, E) to denote a graph, even if it is not simple. We follow this practice throughoutand think of E as a family of unordered pairs of (not-necessarily distinct) nodes, therebyallowing loops and parallel edges as well. When special care is needed to distinguish paralleledges connecting u and v, we will say that e and f are two uv-edges or that e, f ∈ E(u, v).

    An edge is said to connect or to join two disjoint subsets X and Y of V if it connects anelement of X and an element of Y . An edge connecting X and V − X is said to leave orenter X . For two arbitrary subsets X and Y of nodes, let E(X, Y ) = EG(X, Y ) denote theset of edges connecting X − Y and Y − X while

    dG(X, Y ) := |EG(X, Y )|.The number of edges connecting X ∩ Y and V − (X ∪ Y ) is denoted by d̄(X, Y ) = d̄G(X, Y ), that is,

    d̄G(X, Y ) = dG(X, V − Y ).The incidence matrix Q of a graph G = (V, E) is a (0, 1)-matrix, the rows of which

    correspond to the nodes of G and the columns of which correspond to the edges of G. Anentry of Q corresponding to a node v ∈ V and an edge e ∈ E is 1 precisely if e is incidentto v.

    Some operationsDeleting an edge from an undirected graph simply means the removal of the edge (leavingalone its end-nodes). The operation of multiplicating a uv-edge e consists of replacing e byk ≥ 1 parallel uv-edges. When k = 2, we use the term duplicating e.

    Deleting a node means the removal of the node along with all edges incident to it. Asubgraph of a graph G = (V, E) is obtained by deleting some edges and nodes of G. Whenonly a subset F of edges is deleted and the node-set is kept unchanged, we speak of aspanning subgraph of G and denote it by G − F . If H is a subgraph of G, then G is said

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 10 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    10 Elements of graphs and hypergraphs

    to be a supergraph of H . If G is a spanning subgraph of H , then we say that H is anaugmentation of G or that H is obtained by augmenting G.

    When a subset Z of nodes is deleted, the resulting subgraph G − Z on node-set X :=V − Z is called an induced subgraph of G. The number of its edges is denoted by i(X) =iG(X) = iE (X), while the set of its edges is I (X) = IG(X) = IE (X). A hole of a graph Gis an induced subgraph of G which is a circuit with at least four edges. A graph is said to bechordal if it includes no hole.

    Let Z be a non-empty subset of nodes of G = (V, E). The operation of shrinking Zconsists of replacing Z by a new node vZ which is connected to u by dG(Z , u) paralleledges for every u ∈ V − Z . The graph obtained from G in this way is denoted by G/Z .Contracting a non-loop edge e = uv of G means that we shrink the set {u, v}. The resultinggraph is denoted by G/e. Evidently, we can contract more than one edge, and the final graphdoes not depend on the order of contractions. Note that if Z induces a connected graph, thenthe operations of shrinking Z and contracting the set of edges induced by Z are equivalent.In such situations, we sometimes say that Z is contracted.

    DegreesThe number of edges connecting X and V − X is denoted by d(X) = dG(X) = dE (X) andis called the degree of X . The function dG is called the degree function of G. For a nodev, the degree d(v) of v denotes the number of edges ending at v, where the loops sitting atv are counted twice. Therefore, d(v) is equal to d({v}) plus twice the number of loops at v.Since typically we do not use loops, it will not give rise to ambiguity when the degree of anode is denoted simply by d(v).

    A graph G = (V, E) is connected if dG(X) > 0 for every non-empty, proper subset Xof V . A connected component or just a component of a graph G is a maximal inducedsubgraph of G the node-set of which is not separated by any set X of degree 0. That is,connected components are the atoms of the set-system {X ⊆ V : dG(X) = 0}.

    We say that an edge e = uv covers or enters a bi-set X = (X O , X I ) if it enters both X Oand X I , that is, if one of its end-nodes is in X I while the other one is outside X O . Thenumber of edges of G covering X is also denoted by d(X) = dG(X) = dE (X) and is calledthe degree of bi-set X .

    A node of degree 0 is said to be isolated. A node v of degree 1 is called a leaf node whilethe only edge incident to v is a leaf or leaf edge. An undirected graph is said to be regularif the degree of every node is the same number r . In this case, we also speak of r -regulargraphs.

    A matching of a graph is a subgraph in which every degree is at most one while a perfectmatching is one where every degree is exactly one. A circuit is a connected graph in whichevery degree is exactly two. A loop is considered a one-element circuit, while a graph ontwo nodes connected by two parallel edges is a 2-element circuit. An edge e of a graph G issaid to be cyclic if e belongs to a circuit of G. A path is a simple connected graph in whichevery degree is at most two and there is a node with degree less than two. In particular, agraph consisting of a single node and no edge is a path. A uv-edge e can also be consideredas a path, which is formally the graph ({u, v}, {e}). It is a simple exercise to see that eachpath having at least one edge has exactly two nodes of degree one, and these are called the

  • 978–0–19–920527–1 01-Andras-Frank-c01-drv Andras Frank (Typeset by SPi, Publisher Services, India) 11 of 640 December 11, 2010 15:15

    OUP CORRECTED PROOF – REVISES, 11/12/2010, SPi

    Fundamentals 11

    two end-nodes or ending nodes of the path. The other nodes of the