Quick Intro to MLTT*

Total Page:16

File Type:pdf, Size:1020Kb

Quick Intro to MLTT* Quick Intro to MLTT* Sergey Goncharov FAU Erlangen-Nürnberg April 28, 2021 * (intensional) Martin-Löf type theory Roadmap 1 A Cherry-Banana Calculus 2 Formal Systems 3 Principles of Type Theory 4 Formal MLTT adapted from the HoTT book 1 47 A Cherry-Banana Calculus A Cherry-Banana Calculus Consider a Cherry-Banana Calculus: X X Y X (i) (ii) (iii) (iv) X XY X Each rule scheme represents an infinite number of rules, obtained by replacing variables X; Y with non-empty finite sequences of and We can build proofs or derivations, like (i) (i) (iv) (ii) (iii) starting from rules without premises, i.e. axioms 2 47 Deriavability We have shown that is derivable But is not derivable: no rule has it as the conclusion The fact that is not derivable is a meta-property of this system, it is provable in a very weak meta-logic But is not derivable either: neither derivation ? ? ? (ii) (iii) can be finished. This requires a stronger meta-logic, supporting induction. For a proof: define the derivation height, and show by induction that it cannot be finite 3 47 Derivable and Admissible Rules A rule (scheme) is derivable, if it can be obtained by X combining existing rules, e.g. , for X (i) X (iv) (ii) X (iii) X A rule (scheme) is admissible if by adding it, one can derive X nothing new. Trivial example X Derivable rules are always admissible, but admissible need not be derivable 4 47 Formal Systems Formal Systems A formal system consists of Finite alphabet of symbols Language over that alphabet, determined by a grammar Inference rules Example: Alphabet: , Language: X ::= j j X j X Inference rules: as above Schematization ensures that an infinite set of rules can be organized in a finite way. More generally, one typically requires the set of rules to be recursive or recursively enumerable 5 47 More Examples λ-calculus: I Language M; N ::= x j λx: M j NM I Rules: η-conversion, β-reduction Operational semantics I Language for judgements M ! N (small-step) or M + v (big-step), requires a sublanguage for terms M; N and values v I Custom set of rules First-order logic (Hilbert style) I Language: first-order formulas φ φ ! I Lots of axioms + two rules: (modus ponens) and φ (generalization) 8x: φ First-order logic (Gentzen style) I Language of sequents φ1; : : : ; φn ` 1; : : : ; m of formulas I Lots of rules + one axiom φ ` φ 6 47 Foundations Formal systems (since Hilbert) are used in foundations of mathematics: inference process captures building new knowledge from old, inferred judgements are theorems Two big questions: I (In-)consistency: Can we derive contradictions: φ and :φ? I (In-)completeness: Can we always derive either φ or :φ? These questions are "meta" (!) – we need another formal system, to deal with them for a given system However, we can also encode the meta-logic in the system itself, provided the system is suciently expressive For systems far behind what is needed for formalizing mathematics (Robinson “induction free” arithmetic) neither consistency not completeness can be established by itself. This is what Gödel incompleteness means 7 47 Foundations: Set Theory Most of mathematicians in the world work in a specially chosen foundation of mathematics – set theory, say ZFC, if you really press them to detail ZFC =Zermelo–Fraenkel set theory + the axiom ofChoice ZFC is manufactured in two stages: I A formal system for first-order logic I A first order theory, i.e. the axioms, sets must satisfy By Gödel, ZFC is incomplete (or inconsistent), i.e. there are formulas that are neither provable not disprovable, e.g. continuum hypothesis, existence of large cardinals, etc By adding them (assuming consistency) one obtains another incomplete system 8 47 Set Theory: Issues There are lots of issues with set theory, type theory aims to fix The language of set theory is unsuitable for direct use: numbers, functions, smooth manifolds must all be encoded as sets. Think of π \ R Logic is decoupled from structures we involve, i.e. we care so much how true statements are derived, but not how complex structures are build from their parts The axioms are arbitrary and do not help to orient proofs towards reaching goals The background logic of sets features debatable principles, preventing computational implementation, hence impinging automation: excluded middle, axiom of choice, impredicativity 9 47 Example: Total Computable Functions Total computable functions are those computable functions (normally partial), which are total But what means total? Totality is a logical property, which must be proven. Proven where? I The theory of computable functions can be developed in natural arithmetic, and then it is the question, which axioms we choose. There exist extremely slowly converging functions (see Goodstein’s theorem), whose totality cannot be proven in Peano arithmetic I Also in set theory, because of incompleteness, there are total computable functions, which are not provably total Logic and computation are thus intimately connected, but that connection is obscured by dumb encodings into set theory and running along dierent paths 10 47 Practical Considerations Set theory is a very theoretical theory – it is done by set theorists, the rest never mind and just do math Theoretically, set theory is relevant to the whole math, though. That is an example of the general situation: Theoretically, there is no dierence between theory and practice. Practically, there is Type theory aims at an inclusive, unifying platform, reconciling various aspects of algebra, logic and computability in one package. This is of direct use for programming, verification, proof automation, but also for abstract math, citing Voevodsky: And I now do my mathematics with a proof assistant. I have a lot of wishes in terms of getting this proof assistant to work better, but at least I don’t have to go home and worry about having made a mistake in my work. I know that if I did something, I did it, and I don’t have to come back to it nor do I have to worry about my arguments being too complicated or about how to convince others that my arguments are correct. I can just trust the computer. There are many people in computer science who are contributing to our program, but most mathematicians still don’t believe that it is a good idea. And I think that is very wrong. 11 47 Principles of Type Theory Types Simply-typed λ-calculus is a good start By adding types to the untyped lambda calculus, we prevent non-termination via (λx: xx)(λx: xx) and enable strong normalization: every λ-term has a unique normal form, regardless of the reduction strategy We need two kinds of rules: term formation rules Γ ` f : A ! B Γ ` t: A Γ; x: A ` t: A Γ ` f t: B Γ ` λx: t: A ! B and reduction rules for αβη-reduction (omited) Types are used for programming to prevent errors, to structure code, avoid boiler plate, etc, etc We need a far more advanced type system than simply typed λ-calculus, even more than most of the advanced programming languages have 12 47 Propositions as Types If we add to the simply-typed λ-calculus the unit type 1, the empty type 0 and binary coproducts, we obtain a beautiful correspondence between propositions and types Proposition Type False 0 True 1 A ^ B A × B A _ B A + B A ! B A ! B It is advisable to spell this out for every raw, for example, for products, we see that to have an inhabitant of A × B, we have to provide an inhabitant both for A and for B A constructive interpretation of logic and types is thus coded in! 13 47 Proofs as Programs A judgement Γ ` t: A (where Γ = (x1 : A1;:::; x1 : A1)) can now be viewed as a proof of A1 ^ ::: ^ An ! A Example: a proof of (A ! B) ! (B _ A) ! B: f : A ! B ` λx: B + A: case x of inl y 7! y; inr z 7! f z: B The derivation rules of propositional logic in the natural deduction (viz. Fitch) style precisely correspond to formation rules of λ-terms Computational interpretation: a proposition is derivable, i we can construct a program, i.e. a proof, which it types Exception is the excluded middle law: φ _ (φ ! False), which fails to have a computational interpretation in this sense (!) 14 47 Induction as Recursion If we add the type of natural numbers N (and other so-called inductive types), we obtain a connection between induction (logic) and structural recursion (programs) zero: 1 ! N and suc: N ! N are constructors Recursion on N (primitive recursion), produces unique ^ f : X × N ! Y for any given fzero : X ! Y and fsuc : X × N ! X, such that ^ ^ ^ f(x; zero) = fzero(x) f(x; suc n) = fsuc(f(x; n); n) A proof “by induction” = constructing a witness by resursion General (non-structural) recursion fix:(X ! X) ! X (like in Haskell) would contradict both I logic: every proposition X is provable with fix(id: X ! X), and I computational interpretation: (fix f) is generally a non-terminating program (infinite proof?) 15 47 Dependent Types Stil, we can extend the type system in many other “safe” ways Consider the type Vec(n) of vectors of length n. Then, the type of all vectors is the dependent sum P Vec(n) (i: N) Function n 7! (0;:::; n − 1) is an inhabitant of the dependent product Q Vec(n) (compare with ! P Vec(n)) (n: N) N (i: N) P and Q extend the propositions as types correspondence: Proposition Type P (9x: X) φ(x) (x : X) φ(x) Q (8x: X) φ(x) (x : X) φ(x) Type theories supporting dependent types are called dependent type theories.
Recommended publications
  • Indexed Induction-Recursion
    Indexed Induction-Recursion Peter Dybjer a;? aDepartment of Computer Science and Engineering, Chalmers University of Technology, 412 96 G¨oteborg, Sweden Email: [email protected], http://www.cs.chalmers.se/∼peterd/, Tel: +46 31 772 1035, Fax: +46 31 772 3663. Anton Setzer b;1 bDepartment of Computer Science, University of Wales Swansea, Singleton Park, Swansea SA2 8PP, UK, Email: [email protected], http://www.cs.swan.ac.uk/∼csetzer/, Tel: +44 1792 513368, Fax: +44 1792 295651. Abstract An indexed inductive definition (IID) is a simultaneous inductive definition of an indexed family of sets. An inductive-recursive definition (IRD) is a simultaneous inductive definition of a set and a recursive definition of a function from that set into another type. An indexed inductive-recursive definition (IIRD) is a combination of both. We present a closed theory which allows us to introduce all IIRDs in a natural way without much encoding. By specialising it we also get a closed theory of IID. Our theory of IIRDs includes essentially all definitions of sets which occur in Martin-L¨of type theory. We show in particular that Martin-L¨of's computability predicates for dependent types and Palmgren's higher order universes are special kinds of IIRD and thereby clarify why they are constructively acceptable notions. We give two axiomatisations. The first and more restricted one formalises a prin- ciple for introducing meaningful IIRD by using the data-construct in the original version of the proof assistant Agda for Martin-L¨of type theory. The second one admits a more general form of introduction rule, including the introduction rule for the intensional identity relation, which is not covered by the restricted one.
    [Show full text]
  • Formal Systems: Combinatory Logic and -Calculus
    INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION FORMAL SYSTEMS:COMBINATORY LOGIC AND λ-CALCULUS Andrew R. Plummer Department of Linguistics The Ohio State University 30 Sept., 2009 INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION OUTLINE 1 INTRODUCTION 2 APPLICATIVE SYSTEMS 3 USEFUL INFORMATION INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION COMBINATORY LOGIC We present the foundations of Combinatory Logic and the λ-calculus. We mean to precisely demonstrate their similarities and differences. CURRY AND FEYS (KOREAN FACE) The material discussed is drawn from: Combinatory Logic Vol. 1, (1958) Curry and Feys. Lambda-Calculus and Combinators, (2008) Hindley and Seldin. INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION FORMAL SYSTEMS We begin with some definitions. FORMAL SYSTEMS A formal system is composed of: A set of terms; A set of statements about terms; A set of statements, which are true, called theorems. INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION FORMAL SYSTEMS TERMS We are given a set of atomic terms, which are unanalyzed primitives. We are also given a set of operations, each of which is a mode for combining a finite sequence of terms to form a new term. Finally, we are given a set of term formation rules detailing how to use the operations to form terms. INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION FORMAL SYSTEMS STATEMENTS We are given a set of predicates, each of which is a mode for forming a statement from a finite sequence of terms. We are given a set of statement formation rules detailing how to use the predicates to form statements. INTRODUCTION APPLICATIVE SYSTEMS USEFUL INFORMATION FORMAL SYSTEMS THEOREMS We are given a set of axioms, each of which is a statement that is unconditionally true (and thus a theorem).
    [Show full text]
  • Wittgenstein, Turing and Gödel
    Wittgenstein, Turing and Gödel Juliet Floyd Boston University Lichtenberg-Kolleg, Georg August Universität Göttingen Japan Philosophy of Science Association Meeting, Tokyo, Japan 12 June 2010 Wittgenstein on Turing (1946) RPP I 1096. Turing's 'Machines'. These machines are humans who calculate. And one might express what he says also in the form of games. And the interesting games would be such as brought one via certain rules to nonsensical instructions. I am thinking of games like the “racing game”. One has received the order "Go on in the same way" when this makes no sense, say because one has got into a circle. For that order makes sense only in certain positions. (Watson.) Talk Outline: Wittgenstein’s remarks on mathematics and logic Turing and Wittgenstein Gödel on Turing compared Wittgenstein on Mathematics and Logic . The most dismissed part of his writings {although not by Felix Mülhölzer – BGM III} . Accounting for Wittgenstein’s obsession with the intuitive (e.g. pictures, models, aspect perception) . No principled finitism in Wittgenstein . Detail the development of Wittgenstein’s remarks against background of the mathematics of his day Machine metaphors in Wittgenstein Proof in logic is a “mechanical” expedient Logical symbolisms/mathematical theories are “calculi” with “proof machinery” Proofs in mathematics (e.g. by induction) exhibit or show algorithms PR, PG, BB: “Can a machine think?” Language (thought) as a mechanism Pianola Reading Machines, the Machine as Symbolizing its own actions, “Is the human body a thinking machine?” is not an empirical question Turing Machines Turing resolved Hilbert’s Entscheidungsproblem (posed in 1928): Find a definite method by which every statement of mathematics expressed formally in an axiomatic system can be determined to be true or false based on the axioms.
    [Show full text]
  • Warren Goldfarb, Notes on Metamathematics
    Notes on Metamathematics Warren Goldfarb W.B. Pearson Professor of Modern Mathematics and Mathematical Logic Department of Philosophy Harvard University DRAFT: January 1, 2018 In Memory of Burton Dreben (1927{1999), whose spirited teaching on G¨odeliantopics provided the original inspiration for these Notes. Contents 1 Axiomatics 1 1.1 Formal languages . 1 1.2 Axioms and rules of inference . 5 1.3 Natural numbers: the successor function . 9 1.4 General notions . 13 1.5 Peano Arithmetic. 15 1.6 Basic laws of arithmetic . 18 2 G¨odel'sProof 23 2.1 G¨odelnumbering . 23 2.2 Primitive recursive functions and relations . 25 2.3 Arithmetization of syntax . 30 2.4 Numeralwise representability . 35 2.5 Proof of incompleteness . 37 2.6 `I am not derivable' . 40 3 Formalized Metamathematics 43 3.1 The Fixed Point Lemma . 43 3.2 G¨odel'sSecond Incompleteness Theorem . 47 3.3 The First Incompleteness Theorem Sharpened . 52 3.4 L¨ob'sTheorem . 55 4 Formalizing Primitive Recursion 59 4.1 ∆0,Σ1, and Π1 formulas . 59 4.2 Σ1-completeness and Σ1-soundness . 61 4.3 Proof of Representability . 63 3 5 Formalized Semantics 69 5.1 Tarski's Theorem . 69 5.2 Defining truth for LPA .......................... 72 5.3 Uses of the truth-definition . 74 5.4 Second-order Arithmetic . 76 5.5 Partial truth predicates . 79 5.6 Truth for other languages . 81 6 Computability 85 6.1 Computability . 85 6.2 Recursive and partial recursive functions . 87 6.3 The Normal Form Theorem and the Halting Problem . 91 6.4 Turing Machines .
    [Show full text]
  • 15-819 Homotopy Type Theory Lecture Notes
    15-819 Homotopy Type Theory Lecture Notes Nathan Fulton October 9 and 11, 2013 1 Contents These notes summarize and extend two lectures from Bob Harper’s Homotopy Type Theory course. The cumulative hierarchy of type universes, Extensional Type theory, the ∞-groupoid structure of types and iterated identity types are presented. 2 Motivation and Overview Recall from previous lectures the definitions of functionality and transport. Function- ality states that functions preserve identity; that is, domain elements equal in their type map to equal elements in the codomain. Transportation states the same for 0 0 type families. Traditionally, this means that if a =A a , then B[a] true iff B[a ] true. In proof-relevant mathematics, this logical equivalence is generalized to a statement 0 0 about identity in the family: if a =A a , then B[a] =B B[a ]. Transportation can be thought of in terms of functional extensionality. Un- fortunately, extensionality fails in ITT. One way to recover extensionality, which comports with traditional mathematics, is to reduce all identity to reflexivity. This approach, called Extensional Type theory (ETT), provides a natural setting for set-level mathematics. The HoTT perspective on ETT is that the path structure of types need not be limited to that of strict sets. The richer path structure of an ∞-groupoid is induced by the induction principle for identity types. Finding a type-theoretic description of this behavior (that is, introduction, elimination and computation rules which comport with Gentzen’s Inversion Principle) is an open problem. 1 Homotopy Type Theory 3 The Cumulative Hierarchy of Universes In previous formulations of ITT, we used the judgement A type when forming types.
    [Show full text]
  • Formal Systems .1In
    Formal systems | University of Edinburgh | PHIL08004 | 1 / 32 January 16, 2020 Puzzle 3 A man was looking at a portrait. Someone asked him, \Whose picture are you looking at?" He replied: \Brothers and sisters have I none, but this man's father is my father's son." Whose picture was the man looking at? 2 / 32 3 / 32 I Is the man in the picture the man himself? I Self-portrait? 4 / 32 I Is the man in the picture the man himself? I Self-portrait? 4 / 32 I Is the man in the picture the man himself? I Self-portrait? 4 / 32 I No. I If the man in the picture is himself, then this father would be his own son! I \this man is my father's son" vs. I \this man's father is my father's son" 5 / 32 I No. I If the man in the picture is himself, then this father would be his own son! I \this man is my father's son" vs. I \this man's father is my father's son" 5 / 32 I No. I If the man in the picture is himself, then this father would be his own son! I \this man is my father's son" vs. I \this man's father is my father's son" 5 / 32 I No. I If the man in the picture is himself, then this father would be his own son! I \this man is my father's son" vs. I \this man's father is my father's son" 5 / 32 I No.
    [Show full text]
  • (Ie a Natural Model) Closed Under a Particular Connec
    CONNECTIVES IN SEMANTICS OF TYPE THEORY JONATHAN STERLING Abstract. Some expository notes on the semantics of inductive types in Awodey’s nat- ural models [Awo18]. Many of the ideas explained are drawn from the work of Awodey [Awo18], Streicher [Str14], Gratzer, Kavvos, Nuyts, and Birkedal [Gra+20], and Sterling, Angiuli, and Gratzer [SAG20]. When is a model of type theory (i.e. a natural model) closed under a particular connec- tive? And what is a general notion of connective? Leing C be a small category with a terminal object and E = Pr¹Cº be its logos1 of presheaves, a natural model is a representable natural transformation TÛ τ T : E [Awo18]. j Connectives that commute with the Yoneda embedding C E (such as dependent product and sum) may be specied in a particularly simple way. ! F ! (1) First, one denes an endofunctor Ecart Ecart taking a family (viewed as a uni- verse) to the generic family for that connective. e intuition for this family is that the upstairs part carries the data of its introduction rule, and the downstairs part carries the data of its formation rule. For instance, one may take F to be the endofunctor that takes a map f to the functorial action of the polynomial endofunctor Pf on f itself. In this case, one has the notion of a dependent product type. (2) en, one requires a cartesian mapF¹τº τ, i.e. a pullback square of the following kind: Û @0¹F¹τºº T F¹τº τ @1¹F¹τºº T In the case of our example, the downstairs map becomes a code for the depen- dent product type, and the upstairs map becomes a constructor for λ-abstraction.
    [Show full text]
  • 15-819 Homotopy Type Theory Lecture Notes
    15-819 Homotopy Type Theory Lecture Notes Henry DeYoung and Stephanie Balzer September 9 and 11, 2013 1 Contents These notes summarize the lectures on homotopy type theory (HoTT) given by Professor Robert Harper on September 9 and 11, 2013, at CMU. They start by providing a introduction to HoTT, capturing its main ideas and its connection to other related type theories. Then they present intuitionistic propositional logic (IPL), giving both an proof-theoretic formulation as well an order-theoretic formulation. 2 Introduction to homotopy type theory Homotopy type theory(HoTT) is the subject of a very active research community that gathered at the Institute for Advanced Study (IAS) in 2012 to participate in the Univalent Foundations Program. The results of the program have been recently published in the HoTT Book [1]. 2.1 HoTT in a nutshell HoTT is based on Per Martin-L¨of’s intuitionistic type theory, which provides a foun- dation for intuitionistic mathematics and which is an extension of Brouwer’s program. Brouwer viewed mathematical reasoning as a human activity and mathematics as a language for communicating mathematical concepts. As a result, Brouwer per- ceived the ability of executing a step-by-step procedure or algorithm for performing a construction as a fundamental human faculty. Adopting Brouwer’s constructive viewpoint, intuitionistic theories view proofs as the fundamental forms of construction. The notion of proof relevance is thus a 1 Homotopy Type Theory characteristic feature of an intuitionistic (or constructive1) approach. In the context of HoTT, proof relevance means that proofs become mathematical objects [3]. To fully understand this standpoint, it is necessary to draw a distinction between the notion of a proof and the one of a formal proof [3, 2].
    [Show full text]
  • A Dictionary of PHILOSOPHICAL LOGIC
    a dictionary of a dictionary of PHILOSOPHICAL LOGIC This dictionary introduces undergraduate and graduate students PHILOSOPHICAL LOGIC in philosophy, mathematics, and computer science to the main problems and positions in philosophical logic. Coverage includes not only key figures, positions, terminology, and debates within philosophical logic itself, but issues in related, overlapping disciplines such as set theory and the philosophy of mathematics as well. Entries are extensively cross-referenced, so that each entry can be easily located within the context of wider debates, thereby providing a dictionary of a valuable reference both for tracking the connections between concepts within logic and for examining the manner in which these PHILOSOPHICAL LOGIC concepts are applied in other philosophical disciplines. Roy T. Cook is Assistant Professor in the Department of Philosophy at Roy T. Cook the University of Minnesota and an Associate Fellow at Arché, the Philosophical Research Centre for Logic, Language, Metaphysics and Epistemology at the University of St Andrews. He works primarily in the philosophy of logic, language, and mathematics, and has also Cook Roy T. published papers on seventeenth-century philosophy. ISBN 978 0 7486 2559 8 Edinburgh University Press E 22 George Square dinburgh Edinburgh EH8 9LF www.euppublishing.com Cover image: www.istockphoto.com Cover design: www.paulsmithdesign.com 1004 01 pages i-vi:Layout 1 16/2/09 15:18 Page i A DICTIONARY OF PHILOSOPHICAL LOGIC 1004 01 pages i-vi:Layout 1 16/2/09 15:18 Page ii Dedicated to my mother, Carol C. Cook, who made sure that I got to learn all this stuff, and to George Schumm, Stewart Shapiro, and Neil Tennant, who taught me much of it.
    [Show full text]
  • 2 Formal Languages – 2
    Hardegree, Metalogic, Formal Languages – 2 page 1 of 28 2 Formal Languages – 2 1. Introduction ......................................................................................................................................3 2. The Meta-Language ..........................................................................................................................3 3. Prefix, Infix, and Postfix...................................................................................................................3 1. Prefix Format........................................................................................................................3 2. Postfix Format......................................................................................................................4 3. Infix Format..........................................................................................................................4 4. Prefix (Polish) Formatted ZOL’s......................................................................................................4 1. General Vocabulary..............................................................................................................4 2. General Rules Of Formation.................................................................................................4 5. Abstract Example of a Polish Formatted ZOL..................................................................................4 1. Vocabulary (lexicon)............................................................................................................4
    [Show full text]
  • Martin Löf's J-Rule
    Bachelor thesis Martin Löf’s J-Rule by Lennard Götz July 16, 2018 supervised by Dr. Iosif Petrakis Faculty for mathematics, informatics and statistics of Ludwig-Maximilian-Universität München Statement in Lieu of an Oath Ich versichere hiermit, dass ich die vorgelegte Bachelorarbeit eigenständig und ohne fremde Hilfe verfasst, keine anderen als die angegebenen Quellen verwendet und die den benutzten Quellen entnommenen Passagen als solche kenntlich gemacht habe. Diese Bachelorarbeit istt in dieser oder einer ähnlichen Form in keinem anderen Kurs und/oder Studiengang als Studien- oder Prüfungsleistung vorgelegt worden. Hiermit stimme ich zu, dass die vorliegende Arbeit von dem Prüfer in elektronischer Form mit entsprechender Software über prüft wird. 2 Contents 1 Introduction 5 2 Function types 5 2.1 Dependent function types (Π − types)......... 6 2.2 Product type (A × B) ................. 6 2.3 Dependent pair types (P −types)........... 7 2.4 Coproduct type (A + B) . 7 3 Identity types 8 3.1 Martin Löf’s J-Rule . 9 3.2 J-Rule as function . 9 4 The relation between the J-rule and the j-rule 10 4.1 Transport . 10 4.2 The M-judgement . 12 4.3 Based versions . 15 4.4 The j-Rule . 15 4.5 Equivalence between the J-Rule and the j-Rule . 16 4.6 Based Transport (transport) . 17 4.7 Based LeastRefl (leastrefl) . 18 4.8 The m-judgement . 19 5 Applications of the J-rule 21 6 C++ and the J-Rule 29 7 Identity systems 33 8 Appendix 40 3 Abstract After giving an overview of Martin-Löf Type Theory (MLTT), we focus on identity types.
    [Show full text]
  • Formal Language (3A)
    Formal Language (3A) ● Regular Language Young Won Lim 6/9/18 Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Please send corrections (or suggestions) to [email protected]. This document was produced by using LibreOffice and Octave. Young Won Lim 6/9/18 Formal Language a formal language is a set of strings of symbols together with a set of rules that are specific to it. https://en.wikipedia.org/wiki/Formal_language Young Won Lim Regular Language (3A) 3 6/9/18 Alphabet and Words The alphabet of a formal language is the set of symbols, letters, or tokens from which the strings of the language may be formed. The strings formed from this alphabet are called words the words that belong to a particular formal language are sometimes called well-formed words or well-formed formulas. https://en.wikipedia.org/wiki/Formal_language Young Won Lim Regular Language (3A) 4 6/9/18 Formal Language A formal language (formation rule) is often defined by means of a formal grammar such as a regular grammar or context-free grammar, https://en.wikipedia.org/wiki/Formal_language Young Won Lim Regular Language (3A) 5 6/9/18 Formal Language and Natural Language The field of formal language theory studies primarily the purely syntactical aspects of such languages— that is, their internal structural patterns.
    [Show full text]