Comparison of Two Theorem Provers: Isabelle/HOL And
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Ling 130 Notes: a Guide to Natural Deduction Proofs
Ling 130 Notes: A guide to Natural Deduction proofs Sophia A. Malamud February 7, 2018 1 Strategy summary Given a set of premises, ∆, and the goal you are trying to prove, Γ, there are some simple rules of thumb that will be helpful in finding ND proofs for problems. These are not complete, but will get you through our problem sets. Here goes: Given Delta, prove Γ: 1. Apply the premises, pi in ∆, to prove Γ. Do any other obvious steps. 2. If you need to use a premise (or an assumption, or another resource formula) which is a disjunction (_-premise), then apply Proof By Cases (Disjunction Elimination, _E) rule and prove Γ for each disjunct. 3. Otherwise, work backwards from the type of goal you are proving: (a) If the goal Γ is a conditional (A ! B), then assume A and prove B; use arrow-introduction (Conditional Introduction, ! I) rule. (b) If the goal Γ is a a negative (:A), then assume ::A (or just assume A) and prove con- tradiction; use Reductio Ad Absurdum (RAA, proof by contradiction, Negation Intro- duction, :I) rule. (c) If the goal Γ is a conjunction (A ^ B), then prove A and prove B; use Conjunction Introduction (^I) rule. (d) If the goal Γ is a disjunction (A _ B), then prove one of A or B; use Disjunction Intro- duction (_I) rule. 4. If all else fails, use RAA (proof by contradiction). 2 Using rules for conditionals • Conditional Elimination (modus ponens) (! E) φ ! , φ ` This rule requires a conditional and its antecedent. -
Classifying Material Implications Over Minimal Logic
Classifying Material Implications over Minimal Logic Hannes Diener and Maarten McKubre-Jordens March 28, 2018 Abstract The so-called paradoxes of material implication have motivated the development of many non- classical logics over the years [2–5, 11]. In this note, we investigate some of these paradoxes and classify them, over minimal logic. We provide proofs of equivalence and semantic models separating the paradoxes where appropriate. A number of equivalent groups arise, all of which collapse with unrestricted use of double negation elimination. Interestingly, the principle ex falso quodlibet, and several weaker principles, turn out to be distinguishable, giving perhaps supporting motivation for adopting minimal logic as the ambient logic for reasoning in the possible presence of inconsistency. Keywords: reverse mathematics; minimal logic; ex falso quodlibet; implication; paraconsistent logic; Peirce’s principle. 1 Introduction The project of constructive reverse mathematics [6] has given rise to a wide literature where various the- orems of mathematics and principles of logic have been classified over intuitionistic logic. What is less well-known is that the subtle difference that arises when the principle of explosion, ex falso quodlibet, is dropped from intuitionistic logic (thus giving (Johansson’s) minimal logic) enables the distinction of many more principles. The focus of the present paper are a range of principles known collectively (but not exhaustively) as the paradoxes of material implication; paradoxes because they illustrate that the usual interpretation of formal statements of the form “. → . .” as informal statements of the form “if. then. ” produces counter-intuitive results. Some of these principles were hinted at in [9]. Here we present a carefully worked-out chart, classifying a number of such principles over minimal logic. -
Experience Implementing a Performant Category-Theory Library in Coq
Experience Implementing a Performant Category-Theory Library in Coq Jason Gross, Adam Chlipala, and David I. Spivak Massachusetts Institute of Technology, Cambridge, MA, USA [email protected], [email protected], [email protected] Abstract. We describe our experience implementing a broad category- theory library in Coq. Category theory and computational performance are not usually mentioned in the same breath, but we have needed sub- stantial engineering effort to teach Coq to cope with large categorical constructions without slowing proof script processing unacceptably. In this paper, we share the lessons we have learned about how to repre- sent very abstract mathematical objects and arguments in Coq and how future proof assistants might be designed to better support such rea- soning. One particular encoding trick to which we draw attention al- lows category-theoretic arguments involving duality to be internalized in Coq's logic with definitional equality. Ours may be the largest Coq development to date that uses the relatively new Coq version developed by homotopy type theorists, and we reflect on which new features were especially helpful. Keywords: Coq · category theory · homotopy type theory · duality · performance 1 Introduction Category theory [36] is a popular all-encompassing mathematical formalism that casts familiar mathematical ideas from many domains in terms of a few unifying concepts. A category can be described as a directed graph plus algebraic laws stating equivalences between paths through the graph. Because of this spar- tan philosophical grounding, category theory is sometimes referred to in good humor as \formal abstract nonsense." Certainly the popular perception of cat- egory theory is quite far from pragmatic issues of implementation. -
The Common HOL Platform
The Common HOL Platform Mark Adams Proof Technologies Ltd, UK Radboud University, Nijmegen, The Netherlands The Common HOL project aims to facilitate porting source code and proofs between members of the HOL family of theorem provers. At the heart of the project is the Common HOL Platform, which defines a standard HOL theory and API that aims to be compatible with all HOL systems. So far, HOL Light and hol90 have been adapted for conformance, and HOL Zero was originally developed to conform. In this paper we provide motivation for a platform, give an overview of the Common HOL Platform’s theory and API components, and show how to adapt legacy systems. We also report on the platform’s successful application in the hand-translation of a few thousand lines of source code from HOL Light to HOL Zero. 1 Introduction The HOL family of theorem provers started in the 1980s with HOL88 [5], and has since grown to include many systems, most prominently HOL4 [16], HOL Light [8], ProofPower HOL [3] and Is- abelle/HOL [12]. These four main systems have developed their own advanced proof facilities and extensive theory libraries, and have been successfully employed in major projects in the verification of critical hardware and software [1, 11] and the formalisation of mathematics [7]. It would clearly be of benefit if these systems could “talk” to each other, specifically if theory, proofs and source code could be exchanged in a relatively seamless manner. This would reduce the considerable duplication of effort otherwise required for one system to benefit from the major projects and advanced capabilities developed on another. -
Two Sources of Explosion
Two sources of explosion Eric Kao Computer Science Department Stanford University Stanford, CA 94305 United States of America Abstract. In pursuit of enhancing the deductive power of Direct Logic while avoiding explosiveness, Hewitt has proposed including the law of excluded middle and proof by self-refutation. In this paper, I show that the inclusion of either one of these inference patterns causes paracon- sistent logics such as Hewitt's Direct Logic and Besnard and Hunter's quasi-classical logic to become explosive. 1 Introduction A central goal of a paraconsistent logic is to avoid explosiveness { the inference of any arbitrary sentence β from an inconsistent premise set fp; :pg (ex falso quodlibet). Hewitt [2] Direct Logic and Besnard and Hunter's quasi-classical logic (QC) [1, 5, 4] both seek to preserve the deductive power of classical logic \as much as pos- sible" while still avoiding explosiveness. Their work fits into the ongoing research program of identifying some \reasonable" and \maximal" subsets of classically valid rules and axioms that do not lead to explosiveness. To this end, it is natural to consider which classically sound deductive rules and axioms one can introduce into a paraconsistent logic without causing explo- siveness. Hewitt [3] proposed including the law of excluded middle and the proof by self-refutation rule (a very special case of proof by contradiction) but did not show whether the resulting logic would be explosive. In this paper, I show that for quasi-classical logic and its variant, the addition of either the law of excluded middle or the proof by self-refutation rule in fact leads to explosiveness. -
Testing Noninterference, Quickly
Testing Noninterference, Quickly Cat˘ alin˘ Hrit¸cu1 John Hughes2 Benjamin C. Pierce1 Antal Spector-Zabusky1 Dimitrios Vytiniotis3 Arthur Azevedo de Amorim1 Leonidas Lampropoulos1 1University of Pennsylvania 2Chalmers University 3Microsoft Research Abstract To answer this question, we take as a case study the task of Information-flow control mechanisms are difficult to design and extending a simple abstract stack-and-pointer machine to track dy- labor intensive to prove correct. To reduce the time wasted on namic information flow and enforce termination-insensitive nonin- proof attempts doomed to fail due to broken definitions, we ad- terference [23]. Although our machine is simple, this exercise is vocate modern random testing techniques for finding counterexam- both nontrivial and novel. While simpler notions of dynamic taint ples during the design process. We show how to use QuickCheck, tracking are well studied for both high- and low-level languages, a property-based random-testing tool, to guide the design of a sim- it has only recently been shown [1, 24] that dynamic checks are ple information-flow abstract machine. We find that both sophis- capable of soundly enforcing strong security properties. Moreover, ticated strategies for generating well-distributed random programs sound dynamic IFC has been studied only in the context of lambda- and readily falsifiable formulations of noninterference properties calculi [1, 16, 25] and While programs [24]; the unstructured con- are critically important. We propose several approaches and eval- trol flow of a low-level machine poses additional challenges. (Test- uate their effectiveness on a collection of injected bugs of varying ing of static IFC mechanisms is left as future work.) subtlety. -
An Anti-Locally-Nameless Approach to Formalizing Quantifiers Olivier Laurent
An Anti-Locally-Nameless Approach to Formalizing Quantifiers Olivier Laurent To cite this version: Olivier Laurent. An Anti-Locally-Nameless Approach to Formalizing Quantifiers. Certified Programs and Proofs, Jan 2021, virtual, Denmark. pp.300-312, 10.1145/3437992.3439926. hal-03096253 HAL Id: hal-03096253 https://hal.archives-ouvertes.fr/hal-03096253 Submitted on 4 Jan 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. An Anti-Locally-Nameless Approach to Formalizing Quantifiers Olivier Laurent Univ Lyon, EnsL, UCBL, CNRS, LIP LYON, France [email protected] Abstract all cases have been covered. This works perfectly well for We investigate the possibility of formalizing quantifiers in various propositional systems, but as soon as (first-order) proof theory while avoiding, as far as possible, the use of quantifiers enter the picture, we have to face one ofthe true binding structures, α-equivalence or variable renam- nightmares of formalization: quantifiers are binders... The ings. We propose a solution with two kinds of variables in question of the formalization of binders does not yet have an 1 terms and formulas, as originally done by Gentzen. In this answer which makes perfect consensus . -
Starting the Dismantling of Classical Mathematics
Australasian Journal of Logic Starting the Dismantling of Classical Mathematics Ross T. Brady La Trobe University Melbourne, Australia [email protected] Dedicated to Richard Routley/Sylvan, on the occasion of the 20th anniversary of his untimely death. 1 Introduction Richard Sylvan (n´eRoutley) has been the greatest influence on my career in logic. We met at the University of New England in 1966, when I was a Master's student and he was one of my lecturers in the M.A. course in Formal Logic. He was an inspirational leader, who thought his own thoughts and was not afraid to speak his mind. I hold him in the highest regard. He was very critical of the standard Anglo-American way of doing logic, the so-called classical logic, which can be seen in everything he wrote. One of his many critical comments was: “G¨odel's(First) Theorem would not be provable using a decent logic". This contribution, written to honour him and his works, will examine this point among some others. Hilbert referred to non-constructive set theory based on classical logic as \Cantor's paradise". In this historical setting, the constructive logic and mathematics concerned was that of intuitionism. (The Preface of Mendelson [2010] refers to this.) We wish to start the process of dismantling this classi- cal paradise, and more generally classical mathematics. Our starting point will be the various diagonal-style arguments, where we examine whether the Law of Excluded Middle (LEM) is implicitly used in carrying them out. This will include the proof of G¨odel'sFirst Theorem, and also the proof of the undecidability of Turing's Halting Problem. -
Relevant and Substructural Logics
Relevant and Substructural Logics GREG RESTALL∗ PHILOSOPHY DEPARTMENT, MACQUARIE UNIVERSITY [email protected] June 23, 2001 http://www.phil.mq.edu.au/staff/grestall/ Abstract: This is a history of relevant and substructural logics, written for the Hand- book of the History and Philosophy of Logic, edited by Dov Gabbay and John Woods.1 1 Introduction Logics tend to be viewed of in one of two ways — with an eye to proofs, or with an eye to models.2 Relevant and substructural logics are no different: you can focus on notions of proof, inference rules and structural features of deduction in these logics, or you can focus on interpretations of the language in other structures. This essay is structured around the bifurcation between proofs and mod- els: The first section discusses Proof Theory of relevant and substructural log- ics, and the second covers the Model Theory of these logics. This order is a natural one for a history of relevant and substructural logics, because much of the initial work — especially in the Anderson–Belnap tradition of relevant logics — started by developing proof theory. The model theory of relevant logic came some time later. As we will see, Dunn's algebraic models [76, 77] Urquhart's operational semantics [267, 268] and Routley and Meyer's rela- tional semantics [239, 240, 241] arrived decades after the initial burst of ac- tivity from Alan Anderson and Nuel Belnap. The same goes for work on the Lambek calculus: although inspired by a very particular application in lin- guistic typing, it was developed first proof-theoretically, and only later did model theory come to the fore. -
Qvp) P :: ~~Pp :: (Pvp) ~(P → Q
TEN BASIC RULES OF INFERENCE Negation Introduction (~I – indirect proof IP) Disjunction Introduction (vI – addition ADD) Assume p p Get q & ~q ˫ p v q ˫ ~p Disjunction Elimination (vE – version of CD) Negation Elimination (~E – version of DN) p v q ~~p → p p → r Conditional Introduction (→I – conditional proof CP) q → r Assume p ˫ r Get q Biconditional Introduction (↔I – version of ME) ˫ p → q p → q Conditional Elimination (→E – modus ponens MP) q → p p → q ˫ p ↔ q p Biconditional Elimination (↔E – version of ME) ˫ q p ↔ q Conjunction Introduction (&I – conjunction CONJ) ˫ p → q p or q ˫ q → p ˫ p & q Conjunction Elimination (&E – simplification SIMP) p & q ˫ p IMPORTANT DERIVED RULES OF INFERENCE Modus Tollens (MT) Constructive Dilemma (CD) p → q p v q ~q p → r ˫ ~P q → s Hypothetical Syllogism (HS) ˫ r v s p → q Repeat (RE) q → r p ˫ p → r ˫ p Disjunctive Syllogism (DS) Contradiction (CON) p v q p ~p ~p ˫ q ˫ Any wff Absorption (ABS) Theorem Introduction (TI) p → q Introduce any tautology, e.g., ~(P & ~P) ˫ p → (p & q) EQUIVALENCES De Morgan’s Law (DM) (p → q) :: (~q→~p) ~(p & q) :: (~p v ~q) Material implication (MI) ~(p v q) :: (~p & ~q) (p → q) :: (~p v q) Commutation (COM) Material Equivalence (ME) (p v q) :: (q v p) (p ↔ q) :: [(p & q ) v (~p & ~q)] (p & q) :: (q & p) (p ↔ q) :: [(p → q ) & (q → p)] Association (ASSOC) Exportation (EXP) [p v (q v r)] :: [(p v q) v r] [(p & q) → r] :: [p → (q → r)] [p & (q & r)] :: [(p & q) & r] Tautology (TAUT) Distribution (DIST) p :: (p & p) [p & (q v r)] :: [(p & q) v (p & r)] p :: (p v p) [p v (q & r)] :: [(p v q) & (p v r)] Conditional-Biconditional Refutation Tree Rules Double Negation (DN) ~(p → q) :: (p & ~q) p :: ~~p ~(p ↔ q) :: [(p & ~q) v (~p & q)] Transposition (TRANS) CATEGORICAL SYLLOGISM RULES (e.g., Ǝx(Fx) / ˫ Fy). -
Interactive Theorem Proving (ITP) Course Web Version
Interactive Theorem Proving (ITP) Course Web Version Thomas Tuerk ([email protected]) Except where otherwise noted, this work is licened under Creative Commons Attribution-ShareAlike 4.0 International License version 3c35cc2 of Mon Nov 11 10:22:43 2019 Contents Part I Preface 3 Part II Introduction 6 Part III HOL 4 History and Architecture 16 Part IV HOL's Logic 24 Part V Basic HOL Usage 38 Part VI Forward Proofs 46 Part VII Backward Proofs 61 Part VIII Basic Tactics 83 Part IX Induction Proofs 110 Part X Basic Definitions 119 Part XI Good Definitions 163 Part XII Deep and Shallow Embeddings 184 Part XIII Rewriting 192 Part XIV Advanced Definition Principles 246 Part XV Maintainable Proofs 267 Part XVI Overview of HOL 4 289 Part XVII Other Interactive Theorem Provers 302 2 / 315 Part I Preface Except where otherwise noted, this work is licened under Creative Commons Attribution-ShareAlike 4.0 International License. Preface these slides originate from a course for advanced master students it was given by the PROSPER group at KTH in Stockholm in 2017 (see https://www.kth.se/social/group/interactive-theorem-) the course focused on how to use HOL 4 students taking the course were expected to I know functional programming, esp. SML I understand predicate logic I have some experience with pen and paper proofs the course consisted of 9 lectures, which each took 90 minutes there were 19 supervised practical sessions, which each took 2 h usually there was 1 lecture and 2 practical sessions each week students were expected to work about 10 h each -
Logic for Computer Science. Knowledge Representation and Reasoning
Lecture Notes 1 Logic for Computer Science. Knowledge Representation and Reasoning. Lecture Notes for Computer Science Students Faculty EAIiIB-IEiT AGH Antoni Lig˛eza Other support material: http://home.agh.edu.pl/~ligeza https://ai.ia.agh.edu.pl/pl:dydaktyka:logic: start#logic_for_computer_science2020 c Antoni Lig˛eza:2020 Lecture Notes 2 Inference and Theorem Proving in Propositional Calculus • Tasks and Models of Automated Inference, • Theorem Proving models, • Some important Inference Rules, • Theorems of Deduction: 1 and 2, • Models of Theorem Proving, • Examples of Proofs, • The Resolution Method, • The Dual Resolution Method, • Logical Derivation, • The Semantic Tableau Method, • Constructive Theorem Proving: The Fitch System, • Example: The Unicorn, • Looking for Models: Towards SAT. c Antoni Lig˛eza Lecture Notes 3 Logic for KRR — Tasks and Tools • Theorem Proving — Verification of Logical Consequence: ∆ j= H; • Method of Theorem Proving: Automated Inference —- Derivation: ∆ ` H; • SAT (checking for models) — satisfiability: j=I H (if such I exists); • un-SAT verification — unsatisfiability: 6j=I H (for any I); • Tautology verification (completeness): j= H • Unsatisfiability verification 6j= H Two principal issues: • valid inference rules — checking: (∆ ` H) −! (∆ j= H) • complete inference rules — checking: (∆ j= H) −! (∆ ` H) c Antoni Lig˛eza Lecture Notes 4 Two Possible Fundamental Approaches: Checking of Interpretations versus Logical Inference Two basic approaches – reasoning paradigms: • systematic evaluation of possible interpretations — the 0-1 method; problem — combinatorial explosion; for n propositional variables we have 2n interpretations! • logical inference— derivation — with rules preserving logical conse- quence. Notation: formula H (a Hypothesis) is derivable from ∆ (a Knowledge Base; a set of domain axioms): ∆ ` H This means that there exists a sequence of applications of inference rules, such that H is mechanically derived from ∆.