A Modular Hierarchy of Logical Frameworks

Total Page:16

File Type:pdf, Size:1020Kb

A Modular Hierarchy of Logical Frameworks A MODULAR HIERARCHY OF LOGICAL FRAMEWORKS A thesis submitted to the University of Manchester for the degree of Doctor of Philosophy in the Faculty of Engineering and Physical Sciences 2004 By Robin Adams School of Mathematics Contents Abstract 7 Declaration 8 Copyright 9 Acknowledgements 10 1 Introduction 11 1.1 Terminology..................................... 13 1.2 TheUseofaLogicalFramework . 14 1.3 TheCaseforWeakerFrameworks. ..... 19 1.4 Outline ......................................... 23 1.5 Limitations ..................................... 28 1.6 Conclusion ...................................... 28 I Weak Logical Frameworks 30 2 Natural Deduction 31 2.1 Traditional Accounts of Natural Deduction . .......... 31 2.1.1 PropositionalRules . 32 2.1.2 QuantifierRules ................................ 34 2.2 DerivationsasProofExpressions . ........ 37 2.2.1 PredicateLogic................................ 38 2.2.2 Schroeder-Heister’sExtension . ....... 53 3 The Type Framework TF 57 3.1 Arities......................................... 57 3.2 GrammarofTF..................................... 61 3.2.1 Instantiation ................................. 65 3.2.2 Kinds ...................................... 69 3.2.3 SignaturesandContexts. 70 3.3 JudgementForms.................................. 72 3.4 BasicMetatheory................................. 75 2 3.5 AdequacyofPredicateLogicEncoding . ........ 87 4 Object Logics in Weak Frameworks 91 4.1 PropositionalLogic.............................. ..... 91 4.1.1 Grammar .................................... 91 4.1.2 RulesofDeduction.............................. 91 4.1.3 RepresentationinTF ............................ 92 4.2 PredicateLogic.................................. 94 4.3 ExtendedNaturalDeduction . ..... 97 4.4 Martin-L¨ofTypeTheory. ..... 98 4.4.1 Digression — Relating the Theory of Arities and the Grammar of TF . 106 4.5 TheCalculusofConstructions . 112 5 Subsystems of TF 118 5.1 SmallParametrisation . 120 5.2 LargeParametrisation . 121 5.3 SystemswithoutEquations . 124 5.4 TypedAbstractions ............................... 125 5.5 ObjectLogicsintheSubsystemsofTF. .......132 5.5.1 PropositionalLogic. 132 5.5.2 PredicateLogic................................ 133 5.6 ExtendedNaturalDeduction . 135 5.6.1 Martin-L¨ofTypeTheory. 136 5.6.2 CalculusofConstructions . 137 5.6.3 Discussion.................................... 138 6 Lambda-FreeSubsystemsofExistingFrameworks 139 6.1 TheEdinburghLogicalFramework,ELF. .......140 − 6.1.1 SPar (ω)c asasubsystemofELF . .145 6.2 PAL ...........................................155 6.3 AUT-68 .........................................157 6.4 PAL+ ..........................................165 6.5 AdequacyTheorems ................................ 172 II FrameworksBuiltfromFeatures 175 7 Features 176 7.1 TheBasicFramework ............................... 181 7.2 Parametrization................................. 183 7.2.1 ParametersofSmallKind . 183 7.2.2 ParametersofLargeKind . 185 7.3 DeclaringEquations .............................. 186 7.4 SubsystemsofTFrevisited . 187 3 7.5 LambdaAbstraction ............................... 188 7.5.1 Lambda Abstractions with Small Domains. 189 7.5.2 LambdaAbstractionswithLargeDomains . 198 7.6 DeclaringEquations .............................. 201 8 Existing Logical Frameworks Revisited 203 8.1 TheEdinburghLogicalFramework . 203 8.1.1 FamiliesofKinds............................... 203 8.1.2 Discussion — The Reduced Edinburgh Logical Framework .........212 8.2 Martin-L¨of’sLogicalFramework . ........213 9 Conclusion 220 9.1 FurtherFeatures ................................. 221 9.1.1 LocalDefinitions ............................... 221 9.1.2 LogicasPrimitive .............................. 222 9.2 FinalRemarks .................................... 224 Bibliography 225 A List of Features 228 B Judgemental Equality 229 B.1 TheEdinburghLogicalFramework,ELF . .......229 B.1.1 TypedParallelOne-StepReduction . 233 B.1.2 The Translation from Typed Reduction to ELF . 247 B.1.3 The Translation from ELF to Typed Reduction . 250 B.1.4 Metatheory of ELF= ..............................254 B.2 TheAUTOMATHSystems .............................. 254 B.2.1 PAL .......................................254 B.2.2 AUT-68 .....................................255 C Predicate Logic in ELF 260 4 List of Figures 1.1 The Hierarchy of Logical Frameworks in Part I . ......... 24 2.1 Natural Deduction Rules for Classical Predicate Logic . .............. 39 2.2 Definition of Derivations in Natural Deduction . ........... 42 2.3 Equivalence of Derivations in Natural Deduction . ............ 43 2.4 Equivalence of Derivations with Assignment Functions . .............. 45 3.1 RulesofDeductionofTF ............................ 76 5.1 Rules of Deduction of SPar (n)............................122 B.1 Typed Parallel One-Step Reduction for ELF. .........234 B.2 Typed Parallel One-Step Reduction for ELF. .........235 B.3 Typed Parallel One-Step Reduction for PAL. .........257 B.4 Typed Parallel One-Step Reduction for PAL. .........258 B.5 Typed Parallel One-Step Reduction for AUT-68 . ..........258 5 List of Frameworks and Features AUT-68 255 AUT-68= 157 BF 181 ELF 229 ELF= 140 ELF− 212 FELF 205 FELF − 213 FLF 215 FKnd 203 PAL 254 PAL= 155 PAL+ 165 LDec (n) 185 LEq (0, n) 186 LEq (m, n) 201 LF 213 LλR (n) 198 LPar (n) 121 LPar (n)− 124 LPar (n)c 125 − LPar (n)c 125 SDec (n) 183 SEq (0, n) 186 SEq (m, n) 201 SλR (n) 189 SPar (n) 122 SPar (n)c 125 SPar (n)− 124 − SPar (n)c 125 TF 76 6 Abstract Logical frameworks — formal systems for the specification and representation of other formal systems — are now a well-established field of research, and the number and variety of logical frameworks is large and growing continuously. In this thesis, I tie several examples of logical frameworks into a single hierarchy. I begin by introducing an infinite family of new, weak, lambda-free logical frameworks. These systems do not use lambda-abstraction, local definition, or any similar feature; parame- terisation, and the instantiation of parameterisation, is taken as basic. These frameworks form conservative extensions of one another; this structure of extension is what I call the modular hierarchy of logical frameworks. I show how several examples of existing logical frameworks — specifically, the systems PAL and AUT-68 from the AUTOMATH family, the Edinburgh Logical Framework, Martin-L¨of’s Logical Framework, and Luo’s system PAL+ — can be fitted into this hierarchy, in the sense that one of the weak frameworks can be embedded in each as a conservative subsystem. I give several examples of adequacy theorems for object theories in the weak frameworks; these theorems are easier to prove than is usually the case for a logical framework. Adequacy theorems for the systems higher in the hierarchy follow as immediate corollaries. In the second part of this thesis, I investigate an approach to the design of logical frameworks suggested by the existence of such a hierarchy: that a framework could be built by specifying a set of features, the result of adding any of which to a framework is a conservative extension of the same. I show how all of the weak frameworks from the first part, as well as two of the systems we gave there as examples, can indeed be built in this manner. 7 Declaration No portion of the work referred to in this thesis has been submitted in support of an application for another degree or qualification of this or any other university or other institution of learning. 8 Copyright Copyright in text of this thesis rests with the Author. Copies (by any process) either in full, or of extracts, may be made only in accordance with instructions given by the Author and lodged in the John Rylands University Library of Manchester. Details may be obtained from the Librarian. This page must form part of any such copies made. Further copies (by any process) of copies made in accordance with such instructions may not be made without the permission (in writing) of the Author. The ownership of any intellectual property rights which may be described in this thesis is vested in the University of Manchester, subject to any prior agreement to the contrary, and may not be made available for use by third parties without the written permission of the University, which will prescribe the terms and conditions of any such agreement. Further information on the conditions under which disclosures and exploitation may take place is available from the Head of School of Mathematics. 9 Acknowledgements My thanks should first and foremost go to my supervisor, Peter Aczel, for first introducing me to type theory in what now feels like the dim and distant past, for help and support, both technical and , for encouraging me when it seemed everything I tried led to failure, and for restraining my ambition when I had once again found the single idea that would turn the type theory world upside-down. Thanks to Zhaohui Luo for the many helpful suggestions and discussions, both in person and by e-mail, over the course of the last few years. Thanks also to the rest of the CARG group at Durham, especially Paul Callaghan and James McKinna, for their hospitality and helpful discussions on several visits. Likewise, thanks go to the Foundations group at Nijmegen, especially Henk Barendregt and Herman Geuvers, for receiving me as a visitor, and for their suggestions and opinions while I was there. Thanks to many people with whom I have had several fruitful discussions at conferences and over e-mail, particularly Randy Pollack for substantial
Recommended publications
  • Category Theory and Lambda Calculus
    Category Theory and Lambda Calculus Mario Román García Trabajo Fin de Grado Doble Grado en Ingeniería Informática y Matemáticas Tutores Pedro A. García-Sánchez Manuel Bullejos Lorenzo Facultad de Ciencias E.T.S. Ingenierías Informática y de Telecomunicación Granada, a 18 de junio de 2018 Contents 1 Lambda calculus 13 1.1 Untyped λ-calculus . 13 1.1.1 Untyped λ-calculus . 14 1.1.2 Free and bound variables, substitution . 14 1.1.3 Alpha equivalence . 16 1.1.4 Beta reduction . 16 1.1.5 Eta reduction . 17 1.1.6 Confluence . 17 1.1.7 The Church-Rosser theorem . 18 1.1.8 Normalization . 20 1.1.9 Standardization and evaluation strategies . 21 1.1.10 SKI combinators . 22 1.1.11 Turing completeness . 24 1.2 Simply typed λ-calculus . 24 1.2.1 Simple types . 25 1.2.2 Typing rules for simply typed λ-calculus . 25 1.2.3 Curry-style types . 26 1.2.4 Unification and type inference . 27 1.2.5 Subject reduction and normalization . 29 1.3 The Curry-Howard correspondence . 31 1.3.1 Extending the simply typed λ-calculus . 31 1.3.2 Natural deduction . 32 1.3.3 Propositions as types . 34 1.4 Other type systems . 35 1.4.1 λ-cube..................................... 35 2 Mikrokosmos 38 2.1 Implementation of λ-expressions . 38 2.1.1 The Haskell programming language . 38 2.1.2 De Bruijn indexes . 40 2.1.3 Substitution . 41 2.1.4 De Bruijn-terms and λ-terms . 42 2.1.5 Evaluation .
    [Show full text]
  • A Concurrent Logical Framework I: Judgments and Properties
    A concurrent logical framework I: Judgments and properties Kevin Watkins Iliano Cervesato Frank Pfenning David Walker March 2002, revised May 2003 CMU-CS-02-101 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 This research was sponsored in part by the National Science Foundation under the title “Meta-Logical Frameworks,” grants CCR-9619584 and CCR-9988281; and in part by NRL under grant N00173-00-C- 2086. Iliano Cervesato was partially supported by NRL under contract N00173-00-C-2086 and by NSF grant INT98-15731. David Walker was partially supported by the Office of Naval Research under the title “Efficient Logics for Network Security,” grant N00014-01-1-0432; by DARPA under the title “Scaling Proof- Carrying Code to Production Compilers and Security Policies,” Contract No. F30603-99-1-0519; and by Microsoft Research. A part of this work was completed while David Walker was a post-doctoral fellow at Carnegie Mellon University. Abstract The Concurrent Logical Framework, or CLF, is a new logical framework in which concurrent computations can be represented as monadic objects, for which there is an intrinsic notion of concurrency. It is designed as a conservative extension of the linear logical framework LLF with the synchronous connectives ⊗,1,!,and∃of intuitionistic linear logic, encapsulated in a monad. LLF is itself a conservative extension of LF with the asynchronous connectives −◦ ,&and>. The present report, the first of two technical reports describing CLF, presents the frame- work itself and its meta-theory. A novel, algorithmic formulation of the underlying type theory concentrating on canonical forms leads to a simple notion of definitional equality for concurrent computations in which the order of independent steps cannot be distinguished.
    [Show full text]
  • A Linear-Logical Reconstruction of Intuitionistic Modal Logic S4
    A Linear-logical Reconstruction of Intuitionistic Modal Logic S4 Yosuke Fukuda Graduate School of Informatics, Kyoto University, Japan http://www.fos.kuis.kyoto-u.ac.jp/~yfukuda [email protected] Akira Yoshimizu French Institute for Research in Computer Science and Automation (INRIA), France http://www.cs.unibo.it/~akira.yoshimizu [email protected] Abstract We propose a modal linear logic to reformulate intuitionistic modal logic S4 (IS4) in terms of linear logic, establishing an S4-version of Girard translation from IS4 to it. While the Girard translation from intuitionistic logic to linear logic is well-known, its extension to modal logic is non-trivial since a naive combination of the S4 modality and the exponential modality causes an undesirable interaction between the two modalities. To solve the problem, we introduce an extension of intuitionistic multiplicative exponential linear logic with a modality combining the S4 modality and the exponential modality, and show that it admits a sound translation from IS4. Through the Curry–Howard correspondence we further obtain a Geometry of Interaction Machine semantics of the modal λ-calculus by Pfenning and Davies for staged computation. 2012 ACM Subject Classification Theory of computation → Linear logic; Modal and temporal logics; Proof theory; Type theory Keywords and phrases Linear logic, Modal logic, Girard translation, Curry–Howard correspondence, Geometry of Interaction, Staged computation Acknowledgements The authors thank Kazushige Terui for his helpful comments on our work and pointing out related work on multicolored linear logic, and Atsushi Igarashi for his helpful comments on earlier drafts. Special thanks are also due to anonymous reviewers of FSCD 2019 for their fruitful comments.
    [Show full text]
  • Lecture 3: Typed Lambda Calculus and Curry-Howard
    Lecture 3: Typed Lambda Calculus and Curry-Howard H. Geuvers Radboud University Nijmegen, NL 21st Estonian Winter School in Computer Science Winter 2016 H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus 1 / 65 Outline H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus 2 / 65 Typed λ calculus as a basis for logic λ-term : type M:A program : data type proof : formula program : (full) specification Aim: • Type Theory as an integrated system for proving and programming. • Type Theory as a basis for proof assistants and interactive theorem proving. H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus 3 / 65 Simple type theory Simplest system: λ! or simple type theory, STT. Just arrow types Typ := TVar j (Typ ! Typ) • Examples: (α ! β) ! α,(α ! β) ! ((β ! γ) ! (α ! γ)) • Brackets associate to the right and outside brackets are omitted: (α ! β) ! (β ! γ) ! α ! γ • Types are denoted by A; B;:::. H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus 4 / 65 Simple type theory `ala Church Formulation with contexts to declare the free variables: x1 : A1; x2 : A2;:::; xn : An is a context, usually denoted byΓ. Derivation rules of λ! (`ala Church): x:A 2 Γ Γ ` M : A ! B Γ ` N : A Γ; x:A ` P : B Γ ` x : A Γ ` MN : B Γ ` λx:A:P : A ! B Γ `λ! M : A if there is a derivation using these rules with conclusion Γ ` M : A H. Geuvers - Radboud Univ. EWSCS 2016 Typed λ-calculus 5 / 65 Examples ` λx : A.λy : B:x : A ! B ! A ` λx : A ! B.λy : B ! C.λz : A:y (x z):(A!B)!(B!C)!A!C ` λx : A.λy :(B ! A) ! A:y(λz : B:x): A ! ((B ! A) ! A) ! A Not for every type there is a closed term of that type: (A ! A) ! A is not inhabited That is: there is no term M such that ` M :(A ! A) ! A: H.
    [Show full text]
  • A Practical Module System for LF *
    A Practical Module System for LF ? Florian Rabe1 and Carsten Sch¨urmann2 1 Jacobs University [email protected] 2 IT University of Copenhagen [email protected] Abstract. Module Systems for proof assistants provide administrative support for large developments when mechanizing the meta-theory of programming languages and logics. In this paper we describe a module system for the logical framework LF. It is based on two main primitives: signatures and signature morphisms, which provide a semantically transparent module level and permit to represent logic translations as homomorphisms. Modular LF is a conser- vative extension over LF, and integrates an elaboration of modular into core LF signatures. We have implemented our design in the Twelf system and used it to modularize large parts of the Twelf example library. 1 Introduction The Twelf system [PS99] is a popular tool for reasoning about the design and properties of modern programming languages and logics. It has been used, for example, for verifying the soundness of typed assembly language [Cra03] and Standard ML [LCH07], for checking cut-elimination proofs for intuitionistic and classical logic [Pfe95], and for specifying and validating logic morphisms, for example, between HOL and Nuprl [SS06]. Twelf, however, supports only mono- lithic proof developments and does neither offer any support for modular proof engineering, composing logic morphisms, code reuse, nor name space manage- ment. In this paper we develop a simple yet powerful module system for pure type systems in general, and therefore for the logical framework LF [HHP93] in particular. If one subscribes to the judgement-as-types methodology (as we do in the Twelf community), the defining features of a logical framework, such as its equa- tional theory, determine usually the application areas it excels in.
    [Show full text]
  • Arxiv:1910.10703V3 [Cs.LO] 30 Mar 2020 Stesfwr Htcek T O a Ebosrptuti O in Trust Bootstrap System We a Can Such How in It
    Metamath Zero: The Cartesian Theorem Prover Mario Carneiro[0000−0002−0470−5249] Carnegie Mellon University, Pittsburgh PA [email protected] Abstract. As the usage of theorem prover technology expands, so too does the reliance on correctness of the tools. Metamath Zero is a ver- ification system that aims for simplicity of logic and implementation, without compromising on efficiency of verification. It is formally speci- fied in its own language, and supports a number of translations to and from other proof languages. This paper describes the abstract logic of Metamath Zero, essentially a multi-sorted first order logic, as well as the binary proof format and the way in which it can ensure essentially linear time verification while still being concise and efficient at scale. Metamath Zero currently holds the record for fastest verification of the set.mm Metamath library of proofs in ZFC (including 71 of Wiedijk’s 100 formalization targets), at less than 200 ms. Ultimately, we intend to use it to verify the correctness of the implementation of the verifier down to binary executable, so it can be used as a root of trust for more complex proof systems. Keywords: Metamath Zero, mathematics, formal proof, verification, metamathematics 1 Introduction The idea of using computers to check mathematical statements has been around almost as long as computers themselves, but the scope of formalizations have grown in recent times, both in pure mathematics and software verification, and it now seems that there is nothing that is really beyond our reach if we aim for it. But at the same time, software faces a crisis of correctness, where more powerful systems lead to more reliance on computers and higher stakes for failure.
    [Show full text]
  • Curry-Howard Isomorphism
    Lectures on the Curry-Howard Isomorphism Morten Heine B. Srensen University of Copenhagen Pawel Urzyczyn University of Warsaw Preface The Curry-Howard isomorphism states an amazing correspondence between systems of formal logic as encountered in proof theory and computational calculi as found in type theory. For instance, minimal propositional logic corresponds to simply typed -calculus, rst-order logic corresponds to de- pendent types, second-order logic corresponds to polymorphic types, etc. The isomorphism has many aspects, even at the syntactic level: formulas correspond to types, proofs correspond to terms, provability corresponds to inhabitation, proof normalization corresponds to term reduction, etc. But there is much more to the isomorphism than this. For instance, it is an old idea—due to Brouwer, Kolmogorov, and Heyting, and later formalized by Kleene’s realizability interpretation—that a constructive proof of an implication is a procedure that transforms proofs of the antecedent into proofs of the succedent; the Curry-Howard isomorphism gives syntactic representations of such procedures. These notes give an introduction to parts of proof theory and related aspects of type theory relevant for the Curry-Howard isomorphism. Outline Since most calculi found in type theory build on -calculus, the notes be- gin, in Chapter 1, with an introduction to type-free -calculus. The intro- duction derives the most rudimentary properties of -reduction including the Church-Rosser theorem. It also presents Kleene’s theorem stating that all recursive functions are -denable and Church’s theorem stating that -equality is undecidable. As explained above, an important part of the Curry-Howard isomor- phism is the idea that a constructive proof of an implication is a certain procedure.
    [Show full text]
  • Logic-Independent Proof Search in Logical Frameworks (Extended Report)
    Logic-Independent Proof Search in Logical Frameworks (extended report) Michael Kohlhase1, Florian Rabe1, Claudio Sacerdoti Coen2, and Jan Frederik Schaefer1 1 Computer Science, FAU Erlangen-N¨urnberg 2 Department of Computer Science and Engineering, Universit`adi Bologna Abstract. An important question in research on logical framework is whether they can induce a logic-independent automated theorem prover. While many theorem proving innovations can indeed be generalized to large classes of logics, practically competitive provers usually require logic-specific optimizations. To investigate this question more deeply, we build a suite of modular logic definitions in a logical framework and generate Prolog-based the- orem provers for them. We focus on generality and avoid taking logic- specific knowledge into account. Our generated provers support natural deduction proof search, including backchaining, as well as tableau provers and model generators. Even though these efforts have only just started, we are already able to use the latter in a system for natural language understanding that combines grammatical with semantic processing. 1 Introduction and Related Work Logical frameworks like LF [HHP93] and λProlog [Mil] enable prototyping and analyzing logical systems, using high-level declarative logic definitions based on higher-order abstract syntax. Building theorem provers automatically from declarative logic definitions has been a long-standing research goal. But cur- rently, logical framework-induced fully logic-independent proof support is gen- erally limited to proof checking and simple search. Competitive proof support, on the other hand, is either highly optimized for very specific logics, most im- portantly untyped first-order logic, or obtained by defining logics as DSLs inside interactive proof assistants like Isabelle [Pau94].
    [Show full text]
  • A Concurrent Logical Framework: the Propositional Fragment
    A Concurrent Logical Framework: The Propositional Fragment Kevin Watkins1, Iliano Cervesato2, Frank Pfenning1, and David Walker3 1 kw,[email protected], Department of Computer Science, Carnegie Mellon University 2 [email protected], ITT Industries, AES Division 3 [email protected], Department of Computer Science, Princeton University Abstract. We present the propositional fragment CLF0 of the Concurrent Logical Framework (CLF). CLF extends the Linear Logical Framework to allow the natural representation of concurrent computations in an object language. The underlying type theory uses monadic types to segregate values from computations. This separation leads to a tractable notion of definitional equality that identifies computations differing only in the order of execution of independent steps. From a logical point of view our type theory can be seen as a novel combination of lax logic and dual intuitionistic linear logic. An encoding of a small Petri net exemplifies the representation methodology, which can be summarized as “concurrent computations as monadic expressions”. 1 Introduction A logical framework is a meta-language for deductive systems. It is usually defined as a formal meta-logic or type theory together with a representation methodology. A single implementation of a logical framework can then be used to study a va- riety of deductive systems, thereby factoring the effort that would be required to implement each deductive system separately. Applications of logical frameworks lie mostly in logic and programming languages, where deductive systems have be- come a common conceptual tool and presentation device. Examples are rules of logical inference, typing rules, and rules specifying the operational semantics of a programming language.
    [Show full text]
  • Semantics of Mizar As an Isabelle Object Logic
    Journal of Automated Reasoning https://doi.org/10.1007/s10817-018-9479-z Semantics of Mizar as an Isabelle Object Logic Cezary Kaliszyk1 · Karol P˛ak2 Received: 5 January 2018 / Accepted: 11 August 2018 © The Author(s) 2018 Abstract We formally define the foundations of the Mizar system as an object logic in the Isabelle logical framework. For this, we propose adequate mechanisms to represent the various components of Mizar. We express Mizar types in a uniform way, provide a common type intersection operation, allow reasoning about type inhabitation, and develop a type inference mechanism. We provide Mizar-like definition mechanisms which require the same proof obligations and provide same derived properties. Structures and set comprehension opera- tors can be defined as definitional extensions. Re-formalized proofs from various parts of the Mizar Library show the practical usability of the specified foundations. 1 Introduction Mizar [8] is one of the longest-lived proof assistants today. Its set theoretic foundations [27] together with an intuitive soft type system make the system attractive for mathematicians [68] and its formal library—the Mizar Mathematical Library (MML) [7]—became one of the largest libraries of formalized mathematics today. It includes many results absent from those derived in other systems, such as lattices [9], topological manifolds [63], and random-access Turing machines [42]. The unique features of the system include: – A soft type system which allows for dependent types and intersection types, – Declarative proofs in Ja´skowski-style natural deduction [33], – Convenient structure types with (multiple) inheritance, – A term language that allows for disambiguation based on types, in some cases allowing hundreds of meanings of a single symbol, – Proof checking corresponding to the research on the notion of “obviousness” of a single proof step, without the need to explicitly reference proof procedures or tactics.
    [Show full text]
  • Representing Model Theory in a Type-Theoretical Logical Framework Fulya Horozal, Florian Rabe ∗ Jacobs University Bremen, Germany Article Info a B S T R a C T
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector Theoretical Computer Science 412 (2011) 4919–4945 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Representing model theory in a type-theoretical logical framework Fulya Horozal, Florian Rabe ∗ Jacobs University Bremen, Germany article info a b s t r a c t Keywords: In a broad sense, logic is the field of formal languages for knowledge and truth that have a Logical framework formal semantics. It tends to be difficult to give a narrower definition because very different Model theory kinds of logics exist. One of the most fundamental contrasts is between the different Proof theory First-order logic methods of assigning semantics. Here two classes can be distinguished: model theoretical Module system semantics based on a foundation of mathematics such as set theory, and proof theoretical semantics based on an inference system possibly formulated within a type theory. Logical frameworks have been developed to cope with the variety of available logics unifying the underlying ontological notions and providing a meta-theory to reason abstractly about logics. While these have been very successful, they have so far focused on either model or proof theoretical semantics. We contribute to a unified framework by showing how the type/proof theoretical Edinburgh Logical Framework (LF) can be applied to the representation of model theoretical logics. We give a comprehensive formal representation of first-order logic, covering both its proof and its model theoretical semantics as well as its soundness in LF.
    [Show full text]
  • A Type Theory for Defining Logics and Proofs
    A Type Theory for Defining Logics and Proofs Brigitte Pientka David Thibodeau Andreas Abel Francisco Ferreira Rebecca Zucchini School of Computer Science Dept. of Computer Science and Eng. Dept. of Computing ENS Paris Saclay McGill University Gothenburg University Imperial College London Abstract—We describe a Martin-Lof-style¨ dependent type this view, intensional LF-style functions represent syntactic theory, called COCON, that allows us to mix the intensional binding structures and functions are transparent. However, function space that is used to represent higher-order abstract we cannot write recursive programs about such syntactic syntax (HOAS) trees with the extensional function space that describes (recursive) computations. We mediate between HOAS structures within LF, as we lack the power of recursion. representations and computations using contextual modal types. In contrast, (recursive) computation relies on the extensional Our type theory also supports an infinite hierarchy of universes type-theoretic function space. Under this view, functions are and hence supports type-level computation thereby providing opaque and programmers cannot compare two functions for metaprogramming and (small-scale) reflection. Our main con- equality nor can they use pattern matching on functions to tribution is the development of a Kripke-style model for COCON that allows us to prove normalization. From the normalization inspect their bodies. Functions are treated as a black box. proof, we derive subject reduction and consistency. Our work lays To understand the fundamental difference between defining the foundation to incorporate the methodology of logical frame- HOAS trees in LF vs. defining HOAS-style trees using in- works into systems such as Agda and bridges the longstanding ductive types, let us consider an inductive type D with one gap between these two worlds.
    [Show full text]