Tree-Structured Problems and Parallel Computation
Total Page:16
File Type:pdf, Size:1020Kb
View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Publikationsserver der Universität Tübingen Tree-Structured Problems and Parallel Computation Dissertation der Mathematisch-Naturwissenschaftlichen Fakult¨at der Eberhard Karls Universit¨atT¨ubingen zur Erlangung des Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) vorgelegt von Dipl.-Inf. Michael Ludwig aus Ludwigsburg T¨ubingen 2018 Gedruckt mit Genehmigung der Mathematisch-Naturwissenschaftlichen Fakult¨at der Eberhard Karls Universit¨atT¨ubingen. Tag der m¨undlichen Qualifikation: 4.10.2018 Dekan: Prof. Dr. Wolfgang Rosenstiel 1. Berichterstatter: Prof. Dr. Klaus-J¨ornLange 2. Berichterstatter: Dr. Andreas Krebs i Zusammenfassung (Abstract in German) Turing-Maschinen sind das klassische Beschreibungsmittel f¨urWortsprachen und werden daher auch ben¨utzt, um Komplexit¨atsklassenzu definieren. Dies geschieht zum Beispiel durch das Einschr¨anken des Platz- oder Zeitaufwandes der Berech- nung zur L¨osungeines Problems. F¨ursehr niedrige Komplexit¨atwie etwa sublin- eare Laufzeit, werden Schaltkreise verwendet. Schaltkreise k¨onnenauf nat¨urliche Art Komplexit¨atenwie etwa logarithmische Laufzeit modellieren. Ebenso k¨onnen sie als eine Art paralleles Rechenmodell gesehen werden. Eine wichtige parallele Komplexit¨atsklasseist NC1. Sie wird beschrieben durch Boolesche Schaltkreise logarithmischer Tiefe und beschr¨anktemEingangsgrad der Gatter. Eine initiale Beobachtung, die die vorliegende Arbeit motiviert, ist, dass viele schwere Probleme in NC1 eine ¨ahnliche Struktur haben und auf ¨ahnliche Art und Weise gel¨ostwerden. Das Auswertungsproblem f¨urBoolesche Formeln ist eines der repr¨asentativsten Probleme aus dieser Klasse: Gegeben ist hier eine aussagenlogische Formel samt Belegung f¨urdie Variablen; gefragt ist, ob sie zu wahr oder zu falsch auswertet. Dieses Problem wird in NC1 gel¨ostdurch den Algorithmus von Buss. Auf ¨ahnliche Art k¨onnenarithmetische Formeln in #NC1 ausgewertet oder das Wortproblem f¨urVisibly-Pushdown-Sprachen gel¨ostwerden. Zu besagter Klasse an Problemen geh¨ortauch Courcelles Theorem, welches Berechnungen in Baumautomaten involviert. Zu bemerken ist, dass alle angesprochenen Probleme gemeinsam haben, dass sie aus Instanzen bestehen, die baumartig sind. Formeln sind B¨aume,Visibly-Pushdown-Sprachen enthalten als W¨orterkodierte B¨aumeund Courcelles Theorem betrachtet Graphen mit beschr¨ankterBaumweite, d.h. Graphen, die sich als Baum darstellen lassen. Insbesondere Letzteres ist ein Schema, das h¨aufigerauftritt. Zum Beispiel gibt es NP-vollst¨andigeGraphprobleme wie das Finden von Hamilton-Kreisen, welches unter beschr¨ankterBaumweite in P f¨allt. Neuere Analysen konnten diese Schranke weiter zu SAC1 verbessern, was eine parallele Komplexit¨atsklasseist. Die angesprochenen Probleme kommen aus unterschiedlichen Bereichen und haben individuelle L¨osungen.Hauptthese dieser Arbeit ist, dass sich diese Vielfalt verein- heitlichen l¨asst.Es wird ein generisches L¨osungskonzept vorgestellt, welches darauf beruht, dass sich die Probleme auf ein Termevaluierungsproblem reduzieren lassen. Kernst¨uck ist daher ein Termevaluierungsalgorithmus, der unabh¨angigvon der Algebra, ¨uber welche der Term evaluiert werden soll, ist. Resultat ist, dass eine Vielzahl, darunter die oben angesprochenen Probleme, sich auf analoge Art l¨osen lassen, und dass sich ebenso leicht neue Resultate zeigen lassen. Diese Menge an Resultaten h¨attesich ohne den vereinheitlichten L¨osungsansatz nicht innerhalb des Rahmens einer Arbeit wie der vorliegenden zeigen lassen. ii Der entwickelte L¨osungsansatzf¨uhrtstets zu Schaltkreisfamilien polylogarithmischer Tiefe. Es wird jedoch auch die Frage behandelt, wie m¨achtig Schaltkreisfamilien konstanter Tiefe noch bez¨uglich Termevaluierung sind. Die Klasse AC0 ist hierf¨ur ein nat¨urlicher Kandidat; sie entspricht der Menge der Sprachen, die durch Logik erster Ordung beschreibbar sind. Um dieses Problem anzugehen, wird zun¨achst das Termevaluierungsproblem ¨uber endlichen Algebren betrachtet. Dieses wiederum l¨asstsich in das Wortproblem von Visibly-Pushdown-Sprachen einbetten. Daher handelt dieser Teil der Arbeit vornehmlich von der Beschreibbarkeit von Visibly- Pushdown-Sprachen in Logik erster Ordnung. Hierbei treten ungel¨osteProbleme zu Tage, welche ein Indiz daf¨ursind, wie schlecht die Komplexit¨atkonstanter Tiefe bisher noch verstanden ist, und das, trotz des Resultats von Furst, Saxe und Sipser, bzw. H˚astads. Die bis jetzt beschrieben Inhalte sind Teil einer kontinuierlichen Entwicklung. Es gibt jedoch ein Thema in dieser Arbeit, das orthogonal dazu ist: Automaten und im speziellen Cost-Register-Automaten. Zum einen sind, wie oben angedeutet, Auto- maten Beispiele f¨urAnwendungen des hier entwickelten generischen L¨osungsansatzes. Zum anderen k¨onnensie selbst zur Beschreibung von Termevaluierungsproblemen dienen; so k¨onnenVisibly-Pushdown-Automaten Termevaluierung ¨uber endlichen Algebren ausf¨uhren. Um ¨uber endliche Algebren hinauszugehen, ben¨otigendie Automaten mehr Speicher. Visibly-Pushdown-Automaten haben einen Keller, der genau daf¨urgeeignet ist, die Baumstruktur einer Eingabeformel zu verifizieren. F¨ur nichtendliche Algebren eignet sich ein Modell, welches hier vorgestellt werden soll. Es kombiniert Visibly-Pushdown-Automaten mit Cost-Register-Automaten. Ein Cost-Register-Automat ist ein endlicher Automat, welcher mit zus¨atzlichen Registern ausgestattet ist. Die Register k¨onnenWerte einer Algebra speichern und werden in jedem Schritt in Abh¨angigkeit des Eingabezeichens und des Zustandes aktual- isiert. Dieser Einwegdatenfluss von Zust¨andenzu Registern sorgt daf¨ur,dass dieses Modell nicht nur entscheidbar bleibt, sondern, in Abh¨angigkeit der Algebra, auch niedrige Komplexit¨athat. Das neue Modell der Cost-Register-Visibly-Pushdown- Automaten kann nun Terme evaluieren. Es werden grundlegende Eigenschaften gezeigt, einschließlich Komplexit¨atsaussagen. iii Acknowledgements First and foremost, my thank goes out to my advisors Klaus-J¨ornLange and Andreas Krebs. I greatly appreciate the freedom and trust I enjoyed. I also want to thank Nutan Limaye who, beside my advisors, is my main collaborator, and helped me to shape some of the main ideas in this work. Also, she has been a wonderful host on my three research visits to the Indian Institute of Technology in Mumbai. I thank Volker Diekert who guided my first steps in theoretical computer science. I thank Hanspeter H¨agelefor his intensive investment in proofreading this thesis to fix linguistic shortcomings. Two other linguistic talents who helped me with some sections are Anne Bernhardt and Maria Panter. Moreover, I thank all the nice people I got to know over the last years while I was teaching and doing research at the University of T¨ubingen; especially the (former) members of the TI department should be mentioned (ordered alphabeti- cally): Micha¨elCadilhac, Silke Czarnetzki, Olga Dorzweiler, Demen G¨uler,Renate Hallmayer, Klaus Reinhardt, Sebastian Sch¨oner,Ingo Skupin, Thomas St¨uber, and Petra Wolf. Lastly, I also thank my parents, Manfred and Waltraud Ludwig, and all my friends. Contents 1 Introduction 1 1.1 Outline . .1 1.2 Background . .4 1.3 Main Contributions . 11 1.4 About This Thesis . 15 I Modeling 19 2 Structures 21 2.1 Basic Notation . 21 2.2 Structures . 22 2.3 Graphs . 23 2.4 DAGs, Forests and Trees . 25 2.5 Words . 29 2.6 Nested and Well-Matched Words . 30 2.7 Conclusion . 32 3 Algebras 35 3.1 Universal Algebras . 35 3.2 Terms . 38 3.3 Homomorphisms . 41 vi Contents 3.4 Semigroups and Semirings . 43 3.5 Conclusion . 44 4 Recognition by Algebras 47 4.1 Regular Word Languages . 49 4.2 Regular Tree Languages . 50 4.2.1 Extend Algebras . 50 4.2.2 Forest Algebras . 52 4.3 Regular Languages of Nested and Well-Matched Words . 57 4.4 Conclusion . 59 5 Logic 61 5.1 Logic on Words . 63 5.2 Logic on Trees . 64 5.3 Logic on Graphs . 64 5.4 Logic on Nested Words . 65 5.5 Conclusion . 65 6 Automata 67 6.1 Word Automata . 68 6.1.1 Finite Automata . 68 6.1.2 Pushdown Automata . 69 6.1.3 Turing Machines and Complexity . 71 6.2 Finite Tree Automata . 71 6.3 Finite Nested Word Automata . 73 6.4 Visibly Pushdown Automata . 74 6.5 Within Visibly Pushdown Languages . 77 6.5.1 Very Visibly Pushdown Languages . 77 6.5.2 Visibly Counter Languages . 80 6.5.3 Intersection Problems . 80 6.6 Conclusion . 83 Contents vii 7 Quantitative Automata 85 7.1 Counting . 85 7.2 Weighted Automata . 86 7.3 Cost Functions and Cost Register Automata . 86 7.3.1 Cost Register Automata for Finite Words . 87 7.3.2 Cost Functions as Wreath Products . 94 7.3.3 Cost Register Automata for Well-matched Words . 96 7.4 Conclusion . 102 8 Circuits 107 8.1 Boolean Circuits . 109 8.2 Arithmetic Circuits . 111 8.3 Generalized Circuits . 111 8.4 Conclusion . 112 II Evaluation Complexity 115 9 General Evaluation Complexity 117 9.1 Representing Terms . 119 9.2 Dividing Terms . 120 9.3 The Evaluation Algorithm . 126 9.3.1 Evaluating the M-Interval . 128 9.3.2 Evaluating the N -Interval . 130 9.3.3 Evaluating the L-Interval . 133 9.3.4 Evaluating the R-Interval . 134 9.4 Complexity and Correctness: Proof of Theorem 75 . 135 9.5 Conclusion . 136 10 Applications of Evaluation 139 10.1 The Boolean Formula Value Problem and Finite Algebras . 143 10.2 Evaluating Arithmetic Terms and Distributive Algebras . 143 10.3 Automata . 145 viii Contents 10.3.1 Language Recognizing Automata . 145 10.3.2 Weighted Automata . 148 10.3.3 Cost Register Automata . 150 10.4 Circuits of Bounded Tree-Width . 155 10.5 Courcelle's Theorem . 158 10.6 NP-Complete Problems Parameterized by NLC-Width . 161 10.7 Conclusion . 170 11 Evaluation in Low Complexity 173 11.1 From Evaluation to Visibly Pushdown Languages - The Scenario of Low Complexity Evaluation . 173 11.2 First-Order Definability of Visibly Pushdown Languages . 175 11.2.1 Parsing the Tree Structure . 175 11.2.2 Evaluating the Parsed Tree . 186 11.2.3 Decidability . 190 11.3 Visibly Counter Languages . 191 11.4 An Open Problem . 193 11.5 First-Order Definability of Nested Word Languages . 196 11.6 First-Order Definability of Tree Languages . 198 11.7 Application . 200 11.7.1 Term Evaluation Over Finite Algebras .