Exponential Time Algorithms: Structures, Measures, and Bounds Serge Gaspers
Total Page:16
File Type:pdf, Size:1020Kb
Exponential Time Algorithms: Structures, Measures, and Bounds Serge Gaspers February 2010 2 Preface Although I am the author of this book, I cannot take all the credit for this work. Publications This book is a revised and updated version of my PhD thesis. It is partly based on the following papers in conference proceedings or journals. [FGPR08] F. V. Fomin, S. Gaspers, A. V. Pyatkin, and I. Razgon, On the minimum feedback vertex set problem: Exact and enumeration algorithms, Algorithmica 52(2) (2008), 293{ 307. A preliminary version appeared in the proceedings of IWPEC 2006 [FGP06]. [GKL08] S. Gaspers, D. Kratsch, and M. Liedloff, On independent sets and bicliques in graphs, Proceedings of WG 2008, Springer LNCS 5344, Berlin, 2008, pp. 171{182. [GS09] S. Gaspers and G. B. Sorkin, A universally fastest algorithm for Max 2-Sat, Max 2- CSP, and everything in between, Proceedings of SODA 2009, ACM and SIAM, 2009, pp. 606{615. [GKLT09] S. Gaspers, D. Kratsch, M. Liedloff, and I. Todinca, Exponential time algorithms for the minimum dominating set problem on some graph classes, ACM Transactions on Algorithms 6(1:9) (2009), 1{21. A preliminary version appeared in the proceedings of SWAT 2006 [GKL06]. [FGS07] F. V. Fomin, S. Gaspers, and S. Saurabh, Improved exact algorithms for counting 3- and 4-colorings, Proceedings of COCOON 2007, Springer LNCS 4598, Berlin, 2007, pp. 65{74. [FGSS09] F. V. Fomin, S. Gaspers, S. Saurabh, and A. A. Stepanov, On two techniques of combining branching and treewidth, Algorithmica 54(2) (2009), 181{207. A preliminary version received the Best Student Paper award at ISAAC 2006 [FGS06]. [FGK+08] F. V. Fomin, S. Gaspers, D. Kratsch, M. Liedloff, and S. Saurabh, Iterative com- pression and exact algorithms, Proceedings of MFCS 2008, Springer LNCS 5162, Berlin, 2008, pp. 335{346. Acknowledgments First and foremost, I would like to express my gratitude to my PhD supervisor Fedor V. Fomin. His guidance, insight, and knowledge were of great help for my intellectual advancement. Ideas were always much clearer when leaving his office than they were before. I would also like to sincerely thank my co{supervisor Pınar Heggernes for being a great teacher, an instructive researcher and a welcoming person. I would also like to thank the members of my PhD committee, Dag Haugland, Thore Husfeldt, and Ryan Williams. My deepest thanks go to my Master thesis supervisor, Dieter Kratsch, whom I owe my interest in algorithms, who inspired me, taught me, and introduced me to the area of exponential time algorithms. Many thanks for collaboration, fruitful discussions, inspiring ideas, and teaching me valu- able things go to J´er´emy Barbay, St´ephaneBessy, Binh-Minh Bui-Xuan, Bruno Courcelle, Jean Daligault, Frederic Dorn, Michael R. Fellows, Henning Fernau, Stephen Finbow, Martin F¨urer,Petr Golovach, Fabrizio Grandoni, Sylvain Guillemot, Mamadou M. Kant´e,Shiva P. Ka- siviswanathan, Marcos Kiwi, William F. Klostermeyer, Jan Kratochv´ıl,Alexander S. Kulikov, Konstantin Kutzkov, Mathieu Liedloff, Daniel Lokshtanov, Elena Losievskaja, Beno^ıtMartin, Daniel Meister, Margaret-Ellen Messinger, Rodica Mihai, Matthias Mnich, Jesper Nederlof, Richard J. Nowakowski, Paul Ottaway, Christophe Paul, Anthony Perez, Pawe lPra lat,Artem V. Pyatkin, Daniel Raible, Micha¨elRao, Ivan Rapaport, Igor Razgon, Frances A. Rosamond, Peter Rossmanith, Saket Saurabh, Alexander D. Scott, Gregory B. Sorkin, Maya J. Stein, Alexey A. Stepanov, Karol Suchan, Jan Arne Telle, St´ephanThomass´e,Ioan Todinca, Yngve Villanger, Magnus Wahlstr¨om,David Wolfe, David R. Wood, Paul Yans, and Norbert Zeh. For financial support, I would like to thank the Norwegian Research Council (NFR), the French National Research Agency (ANR), the L. Meltzers Høyskolefond, the Center for Mathe- matical Modeling, and the Universities of Bergen (Norway), Montpellier 2 (France), and Chile. On the personal side, I would like to thank my friends and my family, and especially my parents Esther and Guy, my brother Sven, and my grandmother Mathilde, who sadly died in the beginning of 2008 and to whom I dedicate this thesis. For all her love, support and great company I would like to thank my girlfriend Nancy | I love you. Fir m´engBomi. 6 Contents List of Figures 11 List of Tables 13 1 Introduction 15 1.1 Negative Results................................... 18 1.2 Overview of Techniques................................ 19 1.3 On Space and on Time................................ 26 1.4 Outline of the Book.................................. 28 2 Branching Algorithms 31 2.1 Simple Analysis.................................... 33 2.2 Lower Bounds on the Running Time of an Algorithm............... 35 2.3 Measure Based Analysis............................... 36 2.4 Optimizing the Measure............................... 40 2.5 Search Trees...................................... 42 2.6 Branching Numbers and their Properties...................... 43 2.7 Exponential Time Subroutines............................ 44 2.8 Towards a Tighter Analysis............................. 45 2.9 Conclusion....................................... 49 3 Feedback Vertex Sets 51 3.1 Motivation and Related Work............................ 51 3.2 Discussion of Results................................. 52 3.3 Preliminaries..................................... 52 3.4 Computing a Minimum Feedback Vertex Set.................... 55 3.5 On the Number of Minimal Feedback Vertex Sets................. 58 3.6 Conclusion....................................... 62 4 On Bicliques in Graphs 65 4.1 Introduction...................................... 65 4.2 Polynomial Time Reductions............................. 66 8 CONTENTS 4.3 Combinatorial Bound for the Number of Maximal Bicliques............ 68 4.4 Counting Algorithms................................. 68 4.5 Conclusion....................................... 83 5 Max 2-Sat, Max 2-CSP, and everything in between 85 5.1 Introduction...................................... 85 5.2 Definitions....................................... 88 5.3 Algorithm and Outline of Analysis......................... 89 5.4 Some Initial Constraints............................... 95 5.5 Simplification Rules and their Weight Constraints................. 96 5.6 Some Useful Tools.................................. 102 5.7 Branching Reductions and Preference Order.................... 107 5.8 Cubic Instances.................................... 108 5.9 Instances of Degree 4................................. 113 5.10 Instances of Degree 5................................. 117 5.11 Instances of Degree 6................................. 120 5.12 Mathematical Program in AMPL.......................... 121 5.13 Tuning the Bounds.................................. 127 5.14 Conclusion....................................... 127 6 Treewidth Bounds 129 6.1 Bounds on the Pathwidth of Sparse Graphs.................... 130 6.2 Bound on the Treewidth of Circle Graphs..................... 134 6.3 Conclusion....................................... 141 7 Domination on Graph Classes 143 7.1 Related Work..................................... 143 7.2 Results......................................... 144 7.3 General Framework.................................. 145 7.4 Dense Graphs..................................... 148 7.5 Other Graph Classes................................. 150 7.6 Conclusion....................................... 152 8 Enumeration and Pathwidth 153 8.1 Considered Problems................................. 153 8.2 Our Results...................................... 154 8.3 Framework Combining Enumeration and Pathwidth................ 155 8.4 Applications...................................... 159 8.5 Conclusion....................................... 162 9 Iterative Compression and Exact Algorithms 163 9.1 Background...................................... 163 9.2 Maximum Independent Set.............................. 164 CONTENTS 9 9.3 #d-Hitting Set.................................... 166 9.4 Maximum Induced Cluster Subgraph........................ 171 9.5 Conclusion....................................... 175 10 Conclusion 177 Glossary 179 Problem Definitions 183 Bibliography 187 Index 207 10 CONTENTS List of Figures 1.1 Illustration of the main phase of Liedloff's algorithm for Dominating Set in bipartite graphs.................................... 22 2.1 Algorithm mis(G), computing the size of a maximum independent set of any input graph G ..................................... 32 2 2.2 Graph Pn used to lower bound the running time of Algorithm mis ........ 36 2.3 Additional simplification rule for Algorithm mis .................. 36 2.4 Mathematical program in AMPL modeling the constraints for the analysis of Algorithm mis .................................... 41 2.5 Illustration of a search tree.............................. 43 2.6 First levels of the search tree for the execution of Algorithm mis on the instance 2 Pn ........................................... 43 2.7 Modified branching rule for Algorithm mis ..................... 46 2.8 Algorithm mis2(G), computing the size of a maximum independent set of any input graph G ..................................... 48 2.9 A state graph for the analysis of Algorithm mis2 ................. 49 3.1 Generating graph C5 P2 used to lower bound the number of maximal induced forests in a graph................................... 62 4.1 Algorithm #MaximalIS counting all maximal independent sets.......... 70 4.2 Graph Gl used to lower bound the running time of Algorithm #MaximalIS ... 81 4.3 A part of the search tree