Extensional Paramodulation for Higher-Order

Total Page:16

File Type:pdf, Size:1020Kb

Extensional Paramodulation for Higher-Order 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....................................
Recommended publications
  • Safety and Conservativity of Definitions in HOL and Isabelle/HOL
    This is a repository copy of Safety and conservativity of definitions in HOL and Isabelle/HOL. White Rose Research Online URL for this paper: http://eprints.whiterose.ac.uk/161207/ Version: Published Version Article: Kunčar, O. and Popescu, A. orcid.org/0000-0001-8747-0619 (2018) Safety and conservativity of definitions in HOL and Isabelle/HOL. Proceedings of the ACM on Programming Languages, 2 (POPL). 24. ISSN 2475-1421 https://doi.org/10.1145/3158112 Reuse This article is distributed under the terms of the Creative Commons Attribution (CC BY) licence. This licence allows you to distribute, remix, tweak, and build upon the work, even commercially, as long as you credit the authors for the original work. More information and the full terms of the licence here: https://creativecommons.org/licenses/ Takedown If you consider content in White Rose Research Online to be in breach of UK law, please notify us by emailing [email protected] including the URL of the record and the reason for the withdrawal request. [email protected] https://eprints.whiterose.ac.uk/ Safety and Conservativity of Definitions in HOL and Isabelle/HOL ONDŘEJ KUNČAR, Technische Universität München, Germany ANDREI POPESCU, Middlesex University London, United Kingdom and Institute of Mathematics Simion Stoilow of the Romanian Academy, Romania Deinitions are traditionally considered to be a safe mechanism for introducing concepts on top of a logic known to be consistent. In contrast to arbitrary axioms, deinitions should in principle be treatable as a form of abbreviation, and thus compiled away from the theory without losing provability.
    [Show full text]
  • Deduction Systems Based on Resolution, We Limit the Following Considerations to Transition Systems Based on Analytic Calculi
    Author’s Address Norbert Eisinger European Computer–Industry Research Centre, ECRC Arabellastr. 17 D-8000 M¨unchen 81 F. R. Germany [email protected] and Hans J¨urgen Ohlbach Max–Planck–Institut f¨ur Informatik Im Stadtwald D-6600 Saarbr¨ucken 11 F. R. Germany [email protected] Publication Notes This report appears as chapter 4 in Dov Gabbay (ed.): ‘Handbook of Logic in Artificial Intelligence and Logic Programming, Volume I: Logical Foundations’. It will be published by Oxford University Press, 1992. Fragments of the material already appeared in chapter two of Bl¨asis & B¨urckert: Deduction Systems in Artificial Intelligence, Ellis Horwood Series in Artificial Intelligence, 1989. A draft version has been published as SEKI Report SR-90-12. The report is also published as an internal technical report of ECRC, Munich. Acknowledgements The writing of the chapters for the handbook has been a highly coordinated effort of all the people involved. We want to express our gratitude for their many helpful contributions, which unfortunately are impossible to list exhaustively. Special thanks for reading earlier drafts and giving us detailed feedback, go to our second reader, Bob Kowalski, and to Wolfgang Bibel, Elmar Eder, Melvin Fitting, Donald W. Loveland, David Plaisted, and J¨org Siekmann. Work on this chapter started when both of us were members of the Markgraf Karl group at the Universit¨at Kaiserslautern, Germany. With our former colleagues there we had countless fruitful discus- sions, which, again, cannot be credited in detail. During that time this research was supported by the “Sonderforschungsbereich 314, K¨unstliche Intelligenz” of the Deutsche Forschungsgemeinschaft (DFG).
    [Show full text]
  • Mutation COS 326 Speaker: Andrew Appel Princeton University
    Mutation COS 326 Speaker: Andrew Appel Princeton University slides copyright 2020 David Walker and Andrew Appel permission granted to reuse these slides for non-commercial educational purposes C structures are mutable, ML structures are immutable C program OCaml program let fst(x:int,y:int) = x struct foo {int x; int y} *p; let p: int*int = ... in int a,b,u; let a = fst p in a = p->x; let u = f p in u = f(p); let b = fst p in b = p->x; xxx (* does a==b? Yes! *) /* does a==b? maybe */ 2 Reasoning about Mutable State is Hard mutable set immutable set insert i s1; let s1 = insert i s0 in f x; f x; member i s1 member i s1 Is member i s1 == true? … – When s1 is mutable, one must look at f to determine if it modifies s1. – Worse, one must often solve the aliasing problem. – Worse, in a concurrent setting, one must look at every other function that any other thread may be executing to see if it modifies s1. 3 Thus far… We have considered the (almost) purely functional subset of OCaml. – We’ve had a few side effects: printing & raising exceptions. Two reasons for this emphasis: – Reasoning about functional code is easier. • Both formal reasoning – equationally, using the substitution model – and informal reasoning • Data structures are persistent. – They don’t change – we build new ones and let the garbage collector reclaim the unused old ones. • Hence, any invariant you prove true stays true. – e.g., 3 is a member of set S.
    [Show full text]
  • Submission Data for 2020-2021 CORE Conference Ranking Process International Joint Conference on Automated Reasoning
    Submission Data for 2020-2021 CORE conference Ranking process International Joint Conference on Automated Reasoning Franz Baader, Viorica Sofronie-Stokkermans Conference Details Conference Title: International Joint Conference on Automated Reasoning Acronym : IJCAR Rank: A* Requested Rank Rank: A* Recent Years Proceedings Publishing Style Proceedings Publishing: series Link to most recent proceedings: https://link.springer.com/conference/ijcar Further details: The proceedings are published in Springer Lecture Notes in Computer Science (LNCS) subseries Lecture Notes in Artificial Intelligence (LNAI). The proceedings usually contain regular papers and system descriptions accepted at the main conference. (IJCAR 2020 also contained a small number of short papers, which were clearly marked as short papers.) Most Recent Years Most Recent Year Year: 2018 URL: http://ijcar2018.org Location: Oxford, UK Papers submitted: 108 Papers published: 46 Acceptance rate: 43 Source for numbers: http://ijcar.org//conferences General Chairs Name: Ian Horrocks Affiliation: University of Oxford, UK Gender: M H Index: 96 GScholar url: https://scholar.google.com/citations?hl=en&user=0ypdmcYAAAAJ DBLP url: https://dblp.org/pid/h/IanHorrocks.html Program Chairs Name: Didier Galmiche Affiliation: UniversitÃľ de Lorraine, France Gender: M H Index: 19 (according to Semantic Scholar) GScholar url: https://scholar.google.com/scholar?hl=de&as_sdt=0%2C5&q=Didier+Galmiche&oq= DBLP url: https://dblp.org/pid/82/76.html 1 Second Most Recent Year Year: 2016 URL: https://www.uc.pt/en/congressos/ijcar2016
    [Show full text]
  • Towards a Practical, Verified Kernel
    Towards a Practical, Verified Kernel Kevin Elphinstone∗ Gerwin Klein∗ PhilipDerrin TimothyRoscoe† Gernot Heiser∗‡ National ICT Australia§ Abstract properties such as guaranteed termination of system calls, and the kernel never throwing an internal exception. In the paper we examine one of the issues in designing, Successful OS kernels have generally been the result of specifying, implementing and formally verifying a small careful attention to performance issues, and repeatedly it- operating system kernel — how to provide a productive erating bottom-up implementations of low-level function- and iterative developmentmethodology for both operating ality, in some cases changing high-level interfaces and system developers and formal methods practitioners. functionality to accommodate implementation constraints We espouse the use of functional programming lan- and performance goals. This is, unfortunately, in conflict guages as a medium for prototyping that is readily with formal methods, which typically work by top-down amenable to formalisation with a low barrier to entry for refining models of system properties, and rarely deal with kernel developers, and report early experience in the pro- low-level implementation features. cess of designing and building seL4: a new, practical, and This paper describes our approach to resolving this ten- formally verified microkernel. sion, and reports on our experience so far in applying it to seL4. We use a high-level language (Literate Haskell) to simultaneously develop a specification of the kernel and a 1 Introduction reference implementation for evaluation and testing. The implementation can be used in conjunction with a sim- We describe our approachto constructing seL4 — a useful ulator such as QEMU for running real application bina- yet formally verified operating system kernel, by means of ries, while the specification generates input to an interac- a novel development process which aims to reconcile the tive theorem prover (Isabelle) for formal proof of proper- conflicting methodologies of kernel developers and for- ties.
    [Show full text]
  • The Method of Variable Splitting
    The Method of Variable Splitting Roger Antonsen Thesis submitted to the Faculty of Mathematics and Natural Sciences at the University of Oslo for the degree of Philosophiae Doctor (PhD) Date of submission: June 30, 2008 Date of public defense: October 3, 2008 Supervisors Prof. Dr. Arild Waaler, University of Oslo Prof. Dr. Reiner H¨ahnle, Chalmers University of Technology Adjudication committee Prof. Dr. Matthias Baaz, Vienna University of Technology Prof. emer. Dr. Wolfgang Bibel, Darmstadt University of Technology Dr. Martin Giese, University of Oslo Copyright © 2008 Roger Antonsen til mine foreldre, Karin og Ingvald Table of Contents Acknowledgments vii Chapter 1 Introduction 1 1.1 Influential Ideas in Automated Reasoning2 1.2 Perspectives on Variable Splitting4 1.3 A Short History of Variable Splitting7 1.4 Delimitations and Applicability 10 1.5 Scientific Contribution 10 1.6 A Few Words of Introduction 11 1.7 Notational Conventions and Basics 12 1.8 The Contents of the Thesis 14 Chapter 2 A Tour of Rules and Inferences 15 2.1 Ground Sequent Calculus 16 2.2 Free-variable Sequent Calculus 17 2.3 Another Type of Redundancy 19 2.4 Variable-Sharing Calculi and Variable Splitting 20 Chapter 3 Preliminaries 23 3.1 Indexing 23 3.2 Indices and Indexed Formulas 24 3.3 The -relation 28 3.4 The Basic Variable-Sharing Calculus 28 3.5 Unifiers and Provability 30 3.6 Permutations 31 3.7 Conformity and Proof Invariance 35 3.8 Semantics 37 3.9 Soundness and Completeness 40 Chapter 4 Variable Splitting 41 4.1 Introductory Examples 41 4.2 Branch Names
    [Show full text]
  • Verification of Sequential Imperative Programs in Isabelle/HOL
    f f f f f f f f f f f f f f f f f f f f Verification of Sequential Imperative Programs in Isabelle/HOL Norbert Schirmer Lehrstuhl fur¨ Software & Systems Engineering Institut fur¨ Informatik Technische Universitat¨ Munchen¨ Lehrstuhl fur¨ Software & Systems Engineering Institut fur¨ Informatik Technische Universitat¨ Munchen¨ Verification of Sequential Imperative Programs in Isabelle/HOL Norbert Schirmer Vollstandiger¨ Abdruck der von der Fakultat¨ fur¨ Informatik der Technischen Universitat¨ Munchen¨ zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) genehmigten Dissertation. Vorsitzender: Univ.-Prof. Dr. Helmut Seidl Prufer¨ der Dissertation: 1. Univ.-Prof. Tobias Nipkow, Ph.D. 2. Univ.-Prof. Dr. Wolfgang J. Paul Universitat¨ des Saarlandes Die Dissertation wurde am 31.10.2005 bei der Technischen Universitat¨ Munchen¨ eingereicht und durch die Fakultat¨ fur¨ Informatik am 21.04.2006 angenommen. i Kurzfassung Ziel der Dissertation ist es, eine Verifikationsumgebung fur¨ sequentielle imperative Programme zu schaffen. Zunachst¨ wird unabhangig¨ von einer konkreten Program- miersprache ein allgemeines Sprachmodell entwickelt, das ausdrucksstark genug ist um alle gangigen¨ Programmiersprachkonzepte abzudecken: Gegenseitig rekur- sive Prozeduren, abrupte Terminierung und Ausnahmebehandlung, Laufzeitfeh- ler, lokale und globale Variablen, Zeiger und Halde, Ausdrucke¨ mit Seiteneffekten, Zeiger auf Prozeduren, partielle Applikation, dynamischer Methoden Aufruf und unbeschrankter¨ Indeterminismus. Fur¨ dieses Sprachmodell wird eine Hoare Logik sowohl fur¨ partielle alsauch fur¨ totale Korrektheit entwickelt. Darauf aufbauend wird ein Verifikations-Bedingungs- Generator implementiert. Die Hoare Logik erlaubt die Integration von statischer Programmanalyse und Software Model Checkern in die Verifikation. Desweiteren wird eine Teilsprache von C in die Verifikationsumgebung eingebet- tet, um die Durchgangigkeit¨ zu einer realen Programmiersprache zu demonstrieren.
    [Show full text]
  • Constraint Microkanren in the Clp Scheme
    CONSTRAINT MICROKANREN IN THE CLP SCHEME Jason Hemann Submitted to the faculty of the University Graduate School in partial fulfillment of the requirements for the degree Doctor of Philosophy in the Department of School of Informatics, Computing, and Engineering Indiana University January 2020 Accepted by the Graduate Faculty, Indiana University, in partial fulfillment of the require- ments for the degree of Doctor of Philosophy. Daniel P. Friedman, Ph.D. Amr Sabry, Ph.D. Sam Tobin-Hochstadt, Ph.D. Lawrence Moss, Ph.D. December 20, 2019 ii Copyright 2020 Jason Hemann ALL RIGHTS RESERVED iii To Mom and Dad. iv Acknowledgements I want to thank all my housemates and friends from 1017 over the years for their care and support. I’m so glad to have you all, and to have you all over the world. Who would have thought that an old house in Bloomington could beget so many great memories. While I’m thinking of it, thanks to Lisa Kamen and Bryan Rental for helping to keep a roof over our head for so many years. Me encantan mis salseros y salseras. I know what happens in the rueda stays in the rueda, so let me just say there’s nothing better for taking a break from right-brain activity. Thanks to Kosta Papanicolau for his early inspiration in math, critical thinking, and research, and to Profs. Mary Flagg and Michael Larsen for subsequent inspiration and training that helped prepare me for this work. Learning, eh?—who knew? I want to thank also my astounding undergraduate mentors including Profs.
    [Show full text]
  • Curriculum Vitae of Danny Dorling
    January 2021 1993 to 1996: British Academy Fellow, Department of Geography, Newcastle University 1991 to 1993: Joseph Rowntree Foundation Curriculum Vitae Fellow, Many Departments, Newcastle University 1987 to 1991: Part-Time Researcher/Teacher, Danny Dorling Geography Department, Newcastle University Telephone: +44(0)1865 275986 Other Posts [email protected] skype: danny.dorling 2020-2023 Advisory Board Member: ‘The political economies of school exclusion and their consequences’ (ESRC project ES/S015744/1). Current appointment: Halford Mackinder 2020-Assited with the ‘Time to Care’ Oxfam report. Professor of Geography, School of 2020- Judge for data visualisation competition Geography and the Environment, The Nuffield Trust, the British Medical Journal, the University of Oxford, South Parks Road, British Medical Association and NHS Digital. Oxford, OX1 3QY 2019- Judge for the annual Royal Geographical th school 6 form essay competition. 2019 – UNDP (United Nations Development Other Appointments Programme) Human Development Report reviewer. 2019 – Advisory Broad member: Sheffield Visiting Professor, Department of Sociology, University Nuffield project on an Atlas of Inequality. Goldsmiths, University of London, 2013-2016. 2019 – Advisory board member - Glasgow Centre for Population Health project on US mortality. Visiting Professor, School of Social and 2019- Editorial Board Member – Bristol University Community Medicine, University of Bristol, UK Press, Studies in Social Harm Book Series. 2018 – Member of the Bolton Station Community Adjunct Professor in the Department of Development Partnership. Geography, University of Canterbury, NZ 2018-2022 Director of the Graduate School, School of Geography and the Environment, Oxford. 2018 – Member of the USS review working group of the Council of the University of Oxford.
    [Show full text]
  • Development of Logic Programming: What Went Wrong, What Was Done About It, and What It Might Mean for the Future
    Development of Logic Programming: What went wrong, What was done about it, and What it might mean for the future Carl Hewitt at alum.mit.edu try carlhewitt Abstract follows: A class of entities called terms is defined and a term is an expression. A sequence of expressions is an Logic Programming can be broadly defined as “using logic expression. These expressions are represented in the to deduce computational steps from existing propositions” machine by list structures [Newell and Simon 1957]. (although this is somewhat controversial). The focus of 2. Certain of these expressions may be regarded as this paper is on the development of this idea. declarative sentences in a certain logical system which Consequently, it does not treat any other associated topics will be analogous to a universal Post canonical system. related to Logic Programming such as constraints, The particular system chosen will depend on abduction, etc. programming considerations but will probably have a The idea has a long development that went through single rule of inference which will combine substitution many twists in which important questions turned out to for variables with modus ponens. The purpose of the combination is to avoid choking the machine with special have surprising answers including the following: cases of general propositions already deduced. Is computation reducible to logic? 3. There is an immediate deduction routine which when Are the laws of thought consistent? given a set of premises will deduce a set of immediate This paper describes what went wrong at various points, conclusions. Initially, the immediate deduction routine what was done about it, and what it might mean for the will simply write down all one-step consequences of the future of Logic Programming.
    [Show full text]
  • 2017 Edition 35 the Master
    Clare News 2017 EDITION 35 THE MASTER In this issue Welcome from the Master Page 3 Achievements and Honours Page 5 Old Court Page 6 College News Page 10 Student Life Page 17 Sport Page 21 Page 22 Editor: Hannah Sharples Alumni Stories Design: www.cantellday.co.uk Photography: Hannah Sharples, Fellows’ Research Page 28 Helen Knowles Front Cover image: Nick Rutter Samuel Blythe Society Page 33 Contact: Publications Page 34 The Editor – Clare News, Clare College, Social Media Page 38 Trinity Lane, Cambridge CB2 1TL +44 (0)1223 333218 A Year in Clare Page 39 [email protected] www.clarealumni.com © Clare College 2017-18. All rights reserved. Forthcoming events are listed on the back cover 2 CLARE NEWS SUMMER 2014 THE MASTER Welcome from the Master I am delighted to present the latest edition of Clare News. As you will see from our contributors, a Clare education can take you far across the globe, and it is always a pleasure to keep our alumni and friends updated on what has been happening in College. Clare has had another excellent year, both Jane is a Senior Social Development Adviser academically and otherwise. One current at the UK Government’s Department for Clare Fellow and two alumnae of the International Development (DFID), and she College were this year elected to the Royal was awarded an OBE in the Queen’s 2015 Society, the self-governing Fellowship of Birthday Honours. During her time at DFID the most eminent scientists, engineers Jane’s work has included urban poverty, and technologists from the UK and the social exclusion, fragile states, and ending Commonwealth.
    [Show full text]
  • Hoare Logics for Recursive Procedures and Unbounded Nondeterminism
    Hoare Logics for Recursive Procedures and Unbounded Nondeterminism Tobias Nipkow Fakult¨atf¨urInformatik, Technische Universit¨atM¨unchen http://www.in.tum.de/~nipkow/ Abstract. This paper presents sound and complete Hoare logics for partial and total correctness of recursive parameterless procedures in the context of unbounded nondeterminism. For total correctness, the litera- ture so far has either restricted recursive procedures to be deterministic or has studied unbounded nondeterminism only in conjunction with loops rather than procedures. We consider both single procedures and systems of mutually recursive procedures. All proofs have been checked with the theorem prover Isabelle/HOL. 1 Introduction Hoare logic has been studied extensively since its inception [8], both for its the- oretical interest and its practical relevance. Strangely enough, procedures have not been treated with adequate attention: many proof systems involving proce- dures are unsound, incomplete, or ignore completeness altogether (see [2,21] for details). In particular the combination of procedures with (unbounded) nonde- terminism was an open issue altogether. Let us briefly review the history of Hoare logics for deterministic languages with procedures. The system proposed by Hoare [9] was later shown to be sound and complete by Olderog [21]. Apt [2] presents sound and complete systems both for partial correctness (following Gorelick [6]) and for total correctness (following and completing Soko lowski [25]). The one for total correctness is later found to be unsound by America and de Boer [1], who modify the system and give new soundness and completeness proofs. A new twist is added by Kleymann (n´eSchreiber) [24] who uses a little known consequence rule due to Morris [14] to subsume the three adaption rules by America and de Boer.
    [Show full text]