Technical Report ISSN 1476-2986
Total Page:16
File Type:pdf, Size:1020Kb
UCAM-CL-TR-903 Technical Report ISSN 1476-2986 Number 903 Computer Laboratory Parameterized complexity of distances to sparse graph classes Jannis Bulian February 2017 15 JJ Thomson Avenue Cambridge CB3 0FD United Kingdom phone +44 1223 763500 http://www.cl.cam.ac.uk/ c 2017 Jannis Bulian This technical report is based on a dissertation submitted February 2016 by the author for the degree of Doctor of Philosophy to the University of Cambridge, Clare College. Technical reports published by the University of Cambridge Computer Laboratory are freely available via the Internet: http://www.cl.cam.ac.uk/techreports/ ISSN 1476-2986 Abstract This dissertation offers contributions to the area of parameterized complexity theory, which studies the complexity of computational problems in a multivariate framework. We demonstrate that for graph problems, many popular parameters can be understood as distances that measure how far a graph is from belonging to a class of sparse graphs. We introduce the term distance parameter for such parameters and demonstrate their value in several ways. The parameter tree-depth is uncovered as a distance parameter, and we establish several fixed-parameter tractability and hardness results for problems parameterized by tree-depth. We introduce a new distance parameter elimination distance to a class C. The param- eter measures distance in a way that naturally generalises the notion of vertex deletion by allowing deletions from every component in each deletion step. We show that tree-depth is a special case of this new parameter, introduce several characterisations of elimination distance, and discuss applications. In particular we demonstrate that Graph Isomor- phism is FPT parameterized by elimination distance to bounded degree, extending known results. We also show that checking whether a given graph has elimination distance k to a minor-closed class C is FPT, and, moreover, if we are given a finite set of minors characterising C, that there is an explicit FPT algorithm for this. We establish an algorithmic meta-theorem for several distance parameters, by showing that all graph problems that are both slicewise nowhere dense and slicewise first-order definable are FPT. Lastly, several fixed-parameter tractability results are established for two graph prob- lems that have natural distance parameterizations. Acknowledgements First and foremost I thank my supervisor, Anuj Dawar, whose advice has been invaluable to me. I could not have asked for a more patient, accessible and supportive mentor. I also thank Timothy Griffin and Andrew Pitts for their helpful feedback on my first-year report. This work would not have been possible without the financial support from the Qual- comm Research Scholarship and the EPSRC. I thank Pengming Wang and Nik Sultana for their comments on a draft of this disser- tation. I also thank my parents for their continuous support throughout my years of study (and my life in general). Lastly, I am particularly grateful to Doerte Letzmann for her invaluable support over the last decade. Contents 1 Introduction 11 1.1 Related areas of research . 16 1.2 Contribution . 19 1.2.1 Chapter overview . 19 1.2.2 Contribution details . 20 2 General background 21 2.1 Model theory . 21 2.1.1 First-order logic . 22 2.1.2 Second-order logic . 23 2.2 Parameterized complexity theory . 23 2.2.1 Fixed-parameter tractability . 24 2.2.2 Kernelization . 24 2.2.3 The W[i] hierarchy and the class XP ................. 25 2.2.4 Model theoretic definitions . 26 2.3 Graph theory . 26 2.3.1 Graph isomorphism . 28 2.3.2 Graph minor theory . 28 2.3.3 Nowhere dense & bounded expansion graph classes . 29 2.4 Order theory . 31 3 Distance parameters for graph problems 33 3.1 Deletion distance to a class C ......................... 34 3.2 Vertex cover number . 35 3.3 Edit distance to a class C ............................ 35 3.4 Path-width & tree-width . 36 3.5 Clique-width . 37 3.6 Max leaf number . 38 3.7 Degeneracy and the k-core of a graph . 39 4 Tree-depth: Exploring the space between vertex cover number and tree- width 41 4.1 Background . 42 4.2 Alternative characterisations of tree-depth . 42 4.3 Relation to vertex cover number and tree-width . 44 4.4 Generalised tree-depth . 45 4.5 Applications . 45 4.5.1 List Colouring and Precolouring Extension ........ 46 4.5.2 Approximation and Parameterized complexity: Boxicity ..... 48 4.5.2.1 The algorithm for Boxicity ................ 50 4.6 Open questions . 52 5 Elimination distance 55 5.1 Elimination distance to a class C ....................... 57 5.2 Alternative characterisations of elimination distance . 58 5.2.1 Elimination order to C ......................... 58 5.2.2 Separation into two parts . 59 5.2.2.1 Characterisation via games . 62 5.2.3 Apex graphs and closures under disjoint unions . 62 5.3 Elimination distance & classes of bounded expansion . 63 5.4 Elimination distance to the class of edgeless graphs . 64 5.4.1 Elimination distance & generalised tree-depth . 65 5.5 Elimination distance to bounded degree classes . 65 6 Graph Isomorphism 69 6.1 Isomorphism on bounded-degree graphs . 73 6.2 Deletion distance to bounded degree . 74 6.3 Elimination distance to bounded degree . 76 6.3.1 Canonical separation into high and low degree parts . 77 6.3.2 Graph canonisation algorithm . 81 7 Graph classes characterised by excluded minors 87 7.1 Elimination distance to excluded minors . 88 7.2 Computing the excluded minors of Capex and C ................ 89 7.3 Computing the excluded minors of Ck ..................... 91 8 Slicewise first-order and slicewise nowhere-dense classes 93 8.1 Evaluating formulas on nowhere dense classes . 94 8.2 Deciding first-order definable nowhere dense problems . 97 8.3 Applications . 98 8.3.1 Deletion distances . 98 8.3.2 Edit distances . 100 8.3.3 Tree-depth . 102 9 Distance parameters to sparse graph classes: two case studies 105 9.1 Clique Dominating Set .......................... 106 9.2 The Anchored k-core problem . 108 9.2.1 Parameters: budget and tree-width . 110 9.2.2 Parameters: degree, size of the core, and clique-width . 111 9.2.3 Open questions . 112 10 Further remarks and future research directions 113 10.1 Future research directions . 114 10.1.1 Elimination distance . 114 10.1.1.1 Graph Isomorphism .................... 114 10.1.1.2 Elimination distance to bounded degree . 114 10.1.1.3 Elimination distance to edgeless graphs . 115 10.1.2 Algorithmic meta theorems . 115 10.1.2.1 Graph classes including dense graphs . 115 10.1.2.2 Order-invariant first-order logic . 116 10.1.3 Descriptive complexity . 116 10.1.4 Subquadratic FPT algorithms . 117 Bibliography 119 Index 131 CHAPTER 1 Introduction The question which computational tasks can be efficiently solved in a systematic way has been studied for a long time. The first algorithms date back as far as ancient Greece { famous examples include the Sieve of Eratosthenes for identifying prime numbers and Euclid's algorithm for finding the greatest common divisor of two numbers. Today, with computers being ubiquitous, algorithms are more important than ever. One of the central questions is: what computational tasks (usually called problems) can we expect to solve algorithmically. Or, which problems can we practically solve on a computer? Alan Turing showed that there are limits to what an algorithm can do. Turing [152] famously formalised computation by introducing Turing machines, and proved that there are problems that can be solved by no algorithm: He showed that the halting problem for Turing machines is undecidable { that there is no algorithm that, taking another algorithm as an input, can decide whether that input algorithm will ever halt. He used this to show that Hilbert's `Entscheidungsproblem' is undecidable. Turing pointed out a fundamental limit of computation, and other problems have been shown to be uncomputable. However, even if we know that a computational problem can in principle be solved by an algorithm, it might still not be feasible. Solving the problem might require more computational resources (i.e. space or time) than available. With the advent of machines that perform computations in the last century, the question of required resources to solve a computational problem has become even more relevant. Although there is some previous work, the systematic study of the resources required to solve a problem began in the 1960s. The area of computational complexity theory fo- cuses on problems rather than algorithms and its main goal is to determine the intrinsic complexity of computational problems. Problems are classified by the computational re- sources needed by an algorithm to solve them, for example the required time or space. The goal is to distinguish problems that can be solved in reasonable time or space, called tractable problems, from problems that use too many resources, called intractable prob- lems. Many problems that are studied in complexity theory are either graph problems or can be rephrased in terms of graphs. Graphs are mathematical objects used to model the relations between entities, for instance the `friendship' relation in a social network or the structure of molecules in chemistry. A graph problem is then a well-defined question about graphs. This dissertation is concerned with graph problems. The (time) complexity of a problem is the number of computational steps required by the best known algorithm to solve the problem, measured as a function of the size of the 11 input. To give an example, a graph with n vertices can be represented as a table with an entry for every pair of vertices, where every field tells us if a pair of vertices is adjacent.