Extensional Paramodulation for Higher-Order
Total Page:16
File Type:pdf, Size:1020Kb
Freie Universität Berlin Institut für Informatik Extensional Paramodulation for Higher-Order Logic and its Effective Implementation Leo-III – Preprint – See also the published version by AKA Verlag, as part of the DISKI series, volume 345, EAN/ISBN: 978-3-89838-739-2 ALEXANDER STEEN Dissertation zur Erlangung des Grades eines Doktors der Naturwissenschaften (Dr. rer. nat) am Fachbereich Mathematik und Informatik der Freien Universität Berlin 2018 BERLIN,DEUTSCHLAND Title Extensional Paramodulation for Higher-Order Logic and its Effective Implementation Leo-III Author Alexander Steen School Freie Universität Berlin, Berlin, Germany Supervisor Prof. Dr. habil. Christoph Benzmüller Second Examiner Prof. Dr. Geoff Sutcliffe (University of Miami) This dissertation was submitted to the Department of Mathematics and Computer Science of Freie Universität Berlin on 07.06.2018 and defended on 11.07.2018. The doctoral commission consisted of Prof. Christoph Benzmüller (FU Berlin, Head of commission), Prof. Raul Rojas (FU Berlin), Prof. Geoff Sutcliffe (Uni- versity of Miami) and Dr. Klaus Kriegel (FU Berlin). The dissertation project was conducted within the ”Leo-III” project funded by the German Research Foundation (DFG) under grant BE 2501/11-1, and the project ”Consistent Rational Argumentation in Politics” funded by the Volkswagens- tiftung. All source code related to work presented in this thesis is publicly avail- able (under BSD-3 license) at https://github.com/leoprover/Leo-III. Supplemental material is available at https://alexandersteen.de/phd/. v Abstract Abstract In this thesis the theoretical foundations and the practical components for imple- menting an effective automated theorem proving system for higher-order logic are presented. A primary focus of this thesis is the provision of evidence that a paramodulation-based proof calculus can effectively be employed for perfor- mant equational reasoning in Extensional Type Theory (higher-order logic). To that end, a sound and complete paramodulation calculus for extensional higher- order logic with Henkin semantics is presented. The completeness proof hereby unifies and simplifies existing abstract consistency techniques for a formulation of higher-order logic that is based on primitive equality as sole logical connective. In the practically motivated main part of this thesis, the design and archi- tecture of the new higher-order theorem prover Leo-III is presented. Leo-III is based on the above paramodulation calculus and implements additional practi- cally motivated inference rules including equational simplification routines such as heuristic rewriting and support for reasoning with choice. The system en- compasses a flexible mechanism for asynchronous cooperation with first-order reasoning systems, a powerful proof search procedure and a sophisticated and efficient set of underlying data structures. Pragmatic and practically significant features of Leo-III are discussed, including its native support for polymorphic higher-order logic and reasoning in higher-order quantified modal logics. An evaluation on a heterogeneous set of benchmark problems confirms that Leo-III is one of the most effective and versatile higher-order automated reasoning sys- tems to date. vii The dissertation project was conducted within the ”Leo-III” project funded by the German Research Foundation (DFG) under grant BE 2501/11-1, and the project ”Consistent Rational Argumentation in Politics” funded by the Volkswagens- tiftung. All source code related to work presented in this thesis is publicly avail- able (under BSD-3 license) at https://github.com/leoprover/Leo-III. Supplemental material is available at https://alexandersteen.de/phd/. Acknowledgements Acknowledgements First of all I want to express my gratitude to Christoph Benzmüller who intro- duced me to the broad field of automated reasoning, in particular in higher-order logic and further expressive non-classical logics, during my master’s studies. I want to thank him for accepting me as PhD student and thereby entrusting me with the development of the Leo-III theorem proving system, the successor-in- spirit to his own successful systems. Christoph’s passionate teaching, visionary ideas and challenging research questions greatly stimulated my own personal de- velopment and created a warm and motivating working environment. His strate- gic foresight and tight inclusion into scientific processes allowed me to quickly get accustomed with the relevant research community and renowned scientists of the field. For his inspiring support, his supervision and his invested time, I want to express my heartfelt thanks. In the context of my studies at Freie Universität Berlin, I want to thank in particular Heinz Schweppe for his support and advice; Marcel Kyas for many joyful memories and his sustainable teaching; Lutz Prechelt for his unique abil- ity to stimulate critical reflection; and to everyone else who gave lectures on computer science and mathematics to me. In want to thank my colleagues Oliver Wiese, Nadja Scharf, Jonas Cleve, Max Willert and many others with whom I spent many lunch breaks and had fruitful discussions. Concerning the Leo-III project I want to thank Tomer Libal from whom I learned about higher-order uni- fication and Hans-Jörg Schurr, Maximilian Haslbeck and Tobias Gleißner who were wonderful to work with. I want to thank Geoff Sutcliffe and Stephan Schulz who spent a lot of time creating integral parts of the automated theorem prover community (e.g. TPTP and the first-order system E, respectively) from which I learned a lot. There were many hours in which I studied the source code of the E prover and I think no teaching book on automated theorem proving could have ever taught me as much. Furthermore I’d like to thank Jasmin Blanchette, Chad Brown, Martin Suda, Cezary Kaliszyk and many others who welcomed me to the research com- munity. I am thankful for my friends; in particular Max Wisniewski, Marco Träger and Paul Podlech, with whom I spent a lot of time and had countless inspiring discussions. Above everyone else I want to thank my wife Giulia for her un- derstanding and her emotional and professional support during my studies and ix Acknowledgements beyond. I am furthermore indebted to my family Franziska and Pascal and in particular to my parents Karin and Bodo for their patience and their support. It was my parents who gave me my first personal computer when I was a child, which greatly influenced my interests and certainly stimulated my fascination for computer science. — To my niece Ida. x QUOD SCRIPSI,SCRIPSI. Contents Contents 1.Introduction .................................................................................. 1 1.1.Motivation.............................................................................1 1.2.Higher-Order Logic .................................................................4 1.3.Automated Theorem Proving.....................................................9 1.4.The Leo Systems .................................................................. 14 1.5.Structure of the Thesis ........................................................... 16 2.Higher-Order Logic ..................................................................... 19 2.1.Syntax of HOL ..................................................................... 19 2.2.Semantics of HOL................................................................. 21 2.3.Related Systems ................................................................... 25 3.Higher-Order Paramodulation ....................................................... 27 3.1.Preliminaries........................................................................ 28 3.2.Extensional Paramodulation Calculus EP ................................... 30 3.3.Completeness....................................................................... 38 3.3.1.Abstract Consistency Classes ....................................... 39 3.3.2.Hintikka Sets ............................................................ 44 3.3.3.Model Existence........................................................ 47 3.3.4.Completeness of EP ................................................... 48 3.4.Ordering Constraints.............................................................. 54 4.The Leo-III System....................................................................... 57 4.1.System Architecture .............................................................. 59 4.2.Calculus Extensions .............................................................. 65 4.2.1.Clause Contraction..................................................... 65 4.2.2.Defined Equalities ..................................................... 69 4.2.3.Choice .................................................................... 69 4.2.4.Heuristic Instantiation................................................. 70 4.2.5.Function Synthesis..................................................... 71 4.2.6.Pattern Unification ..................................................... 74 4.3.Proof Search ........................................................................ 75 4.3.1.Pre-Processing .......................................................... 76 xiii Contents 4.3.2.Saturation Procedure .................................................. 79 4.3.3.Search Control .......................................................... 84 4.4.External Cooperation ............................................................. 92 4.4.1.Utilization during Proof Search....................................