Categories, Proofs and Programs

Size: px
Start display at page:

Download "Categories, Proofs and Programs"

Transcription

1 Categories, Proofs and Programs Samson Abramsky and Nikos Tzevelekos Lecture 4: Curry-Howard Correspondence and Cartesian Closed Categories

2 In A Nutshell Logic Computation Categories The upper link (Logic Computation) is usually attributed to H. B. Curry and W. A. Howard, although the idea is related to the operational interpretation of intuitionistic logic given in various formulations by Brouwer, Heyting and Kolmogorov. The link to Categories is mainly due to the pioneering work of J.Lambek in the 1970s. 2/36

3 Logic

4 What is Logic about? One main kind of answer focuses on Truth. Another, on Proof. We shall focus mainly on Proof: Formal proofs What follows from what? Traditional introductions to logic focus on Hilbert-style proof systems: generating the set of theorems of a system from a set of axioms by applying rules of inference (e.g. Modus Ponens). A key step in logic took place in the 1930 s, with the advent of Gentzen-style systems. Instead of focusing on theorems, look more generally and symmetrically at What follows from what? 4/36

5 Proof from Assumptions To capture this formally: Proof of formula A from assumptions A 1,...,A n : (cf. open vs. closed Systems) A 1,...,A n A We use Γ, to range over finite sets of formulas, writing Γ A etc. We write Γ,A as short for Γ {A}. We call each such Γ A a sequent. We look at the (, )-fragment of propositional logic. That is: A,B ::= p A B A B where p ranges over some set of atomic propositions. 5/36

6 Natural Deduction system for, Identity Γ,A A Id Conjunction Γ A Γ B Γ A B -intro Γ A B Γ A -elim 1 Γ A B Γ B -elim 2 Implication Γ,A B Γ A B -intro Γ A B Γ A Γ B -elim 6/36

7 Examples A proof of a sequent Γ A is simply a tree built using the proof rules and such that Γ A is at its root. For example, here is a proof of A B,B C,A A C (transitivity of ): Notes: A B,B C,A B C Id Id A B,B C,A A B A B,B C,A A Id A B,B C,A B A B,B C,A C A B,B C A C I The same sequent may have several proofs e.g: A,A A A or A B A B. There are rules for transforming proofs. Standard rules like Cut are admissible. E E 7/36

8 Example: Cut admissibility Consider the rule: Γ A A, B Γ, B Cut Seeing the proof of A, B as a procedure that produces B given A and, the rule means feeding Γ A in that procedure. We can prove that the rule is admissible: whenever we have proofs for Γ A and A, B, then we can obtain a proof of Γ, B. This can be done by replacing all leaves, i.e. axioms, of the form,a A inside the proof of A, B by a proof Γ, A. Alternatively, we can see that it can be (almost) derived using introduction and elimination of. 8/36

9 Structural Proof Theory The idea is to study the space of formal proofs as a mathematical structure in its own right, rather than to focus only on Provability Truth (i.e. the usual notions of soundness and completeness). Why? One motivation comes from trying to understand and use the computational content of proofs. To make this precise, we shall look at the Curry-Howard correspondence. 9/36

10 Computation

11 λ-calculus The λ-calculus is a pure calculus of functions, defined as follows. Assuming a set of Variables, ranged over by x,y,z,..., we define Terms: t,u ::= x tu }{{} application λx.t }{{} abstraction Examples λx. x identity function λx.x+1 successor function (via an encoding) λf. λx. f x application λf. λx. f(f x) double application λf.λg.λx.g(f(x)) composition g f Note: Terms are identified up to α-equivalence, that is we identify two terms if they differ solely in their choice of bound variables (i.e. variables in binding position: immediately following a λ). 11/36

12 Conversion and Reduction The basic equation governing this calculus is β-conversion: (λx.t)u = t[u/x] where substitution is given by: y[t/x] { t if y = x y if x y (λz.u)[t/x] λz.(u[t/x]) (uv)[t/x] (u[t/x])(v[t/x]) ( ) The equation is applied in sub-terms (i.e. we extend it to a congruence). E.g. (λf.λx.f(fx))(λx.x+1)0 = 2. By orienting this equation, we get a dynamics β-reduction: (λx.t)u t[u/x] 12/36

13 Examples Projection functions: λx.λy.x and λx.λy.y. For any pair of terms u,t: (λx.λy.x)ut (λy.u)t u whereas (λx.λy.y)ut t. Nested application operators: λf.λx.fx, λf.λx.f(fx),... For any terms u,t: (λf.λx.fx)ut (λx.ux)t ut whereas (λf.λx.fx)ut u(ut), etc. If-then-else: λc.λx.λy. c x y. For any terms u,t: (λc.λx.λy.cxy)(λx.λy.x)ut u projections can be used as booleans! Recursion: Y λf.(λx.f(xx))(λx.f(xx)). Yt (λx.t(xx))(λx.t(xx)) t((λx.t(xx))(λx.t(xx))) = t(yt). Historically, Curry extracted Y from an analysis of Russell s Paradox. 13/36

14 Expressive power What kind of programs can we write? What kind of functions can we define? Via an encoding of integers, we can express all (total) computable functions, i.e. the λ-calculus is Turing complete. n λf.λx.f(f( (f x) )) }{{} n times E.g. how can we define the successor function? While this is great in theory, in practice it means that any meaningful property about λ-calculus reduction is undecidable: termination, equality, etc. 14/36

15 From type-free to typed Pure λ-calculus is very unconstrained. For example, it allows terms like ω λx.xx self-application. Hence Ω ωω, which diverges: Ω Ω While divergence is natural in programming, the fact that any term can be applied to any other term is not. Solution: introduce Types. Types are there to stop you doing (bad) things Types impose the intuitive distinction between a function and its argument (and data-type disciplines in general). It has turned out that types constitute one of the most fruitful positive ideas in Computer Science! 15/36

16 Simply-Typed λ-calculus The simply-typed λ-calculus is defined as follows. Types B ::= ι... θ,θ ::= B θ θ θ θ ( e.g. ι ι ι first-order function type ) base types general types (ι ι) ι second-order function type Terms t,u ::= x tu λx.t t,u π 1 u π 2 u Typed terms x 1 : θ 1,...,x k : θ k t : θ (typing judgement) ( ) the term t has type θ in context Γ = {x1 : θ 1,...,x k : θ k }, i.e. under the assumption that x 1 has type θ 1,..., and x k has type θ k. 16/36

17 Typing rules Terms are typed by use of typing rules: Variable Γ,x : θ x : θ Product Γ t : θ Γ u : θ Γ v : θ θ Γ t,u : θ θ Γ π 1 v : θ Γ v : θ θ Γ π 2 v : θ Function Γ,x : θ t : θ Γ λx.t : θ θ Γ t : θ θ Γ u : θ Γ tu : θ 17/36

18 The power of types We can still type the terms: λx.x λf.λx.fx λf.λx.f(fx) λf.λg.λx.g(f(x)) Also typable: λx.λy. x,y λx.λg. (π 1 g)x,(π 2 g)x However, we cannot type λx.xx, and hence neither Y. 18/36

19 Reduction rules Computation rules (β-reductions): (λx.t)u t[u/x] π 1 t,u t π 2 t,u u Also, extensionality principles (η-laws): t = λx.tx u = π 1 u,π 2 u x not free in t, at function types at product types 19/36

20 Strong Normalisation A λ-term is called a redex if it is in one of forms of the left-hand-side of the reduction rules: (λx.t)u t[u/x] π 1 t,u t π 2 t,u u and therefore β-reduction can be applied to it. A term is in normal form if it contains no redexes as subterms. All reductions in the simply-typed λ-calculus lead to a normal form. Fact (Strong Normalisation) For every term t, there is no infinite sequence of β-reductions t t 0 t 1 t 2... The complexity of reducing to normal form is nonelementary. 20/36

21 The Curry-Howard Correspondence Simple Type System for, Γ,x : t x : θ Natural Deduction System for, Γ,A A Id Γ t : θ Γ u : θ Γ t,u : θ θ Γ A Γ B Γ A B I Γ v : θ θ Γ π 1 v : θ Γ,x : θ t : θ Γ λx.t : θ θ Γ A B Γ A E 1 Γ,A B Γ A B I Γ t : θ θ Γ u : θ Γ tu : θ Γ A B Γ B Γ A E 21/36

22 The Curry-Howard Correspondence ctd If we equate they are the same! This is the Curry-Howard correspondence (sometimes: Curry-Howard isomorphism ), and it works on three levels: Formulas Types Proofs Terms Proof transformations Term reductions Essentially, it shows that the simply-typed λ-calculus is an internal language (a formal syntax) for proofs in natural deduction. Reduction results in a normal form: a proof in which all lemmas have been eliminated, resulting in an explicit but much longer expression. 22/36

23 Constructive reading of formulas The Brouwer-Heyting-Kolmogorov interpretation of intuitionistic logic: A proof of an implication A B is a construction which transforms any proof of A into a proof of B. A proof of A B is a pair consisting of a proof of A and a proof of B. These readings motivate identifying A B with A B, and A B with A B. The correspondence has strong connections to programming: the λ-calculus can be seen as the pure core of functional programming languages such as Haskell and OCaml. So we get a reading of Proofs as Programs 23/36

24 The link to Categories

25 The Connection to Categories We now have our link Logic Computation We next complete the triangle by showing the connection to Categories: Logic Computation Categories This is sometimes called the Curry-Howard-Lambek correspondence. 25/36

26 Exponentials In Set, given sets A,B, we can form the set of functions from A to B: which is again a set. B A = Set(A,B) This closure of Set under forming function spaces is one of its most important properties. How can we axiomatise/generalise this situation? Once again, rather than asking what the elements of a function space are, we ask rather what can we do with it operationally? Answer: apply functions to their arguments. That is, there is a map ev A,B : B A A B ev A,B (f,a) = f(a) Think of the function as a black box: we can feed it inputs and observe the outputs. 26/36

27 Couniversal property of evaluation For any g : C A B, there is a unique map Λ(g) : C B A such that commutes. In Set, this is defined by Λ(g) id A B A A ev A,B B g 1 C A Λ(g)(c) : A B := a g(c,a). This process of transforming a function of two arguments into a function-valued function of one argument is known as Currying, after H. B. Curry. It is an algebraic form of λ-abstraction. 27/36

28 General definition of exponentials Let C be a category with binary products. For each object A of C, we can define a functor A : C C We say that C has exponentials if for all objects A and B of C there is a couniversal arrow from A to B, i.e. there is an object B A of C and a morphism ev A,B : B A A B such that for every g : C A B there is a unique morphism Λ(g) : C B A such that the following diagram commutes: Λ(g) id A B A A ev A,B B g 1 C A 28/36

29 Uniqueness equationally The uniqueness of Λ(g) can be expressed equationally. Proposition. C has exponentials if for all objects A and B of C there is: an object B A of C, a morphism ev A,B : B A A B, and for each object C, a mapping Λ : C(C A,B) C(C,B A ) such that, for all g : C A B: ev A,B (Λ(g) id A ) = g and, for all h : C B A : Λ(ev A,B (h id A )) = h 29/36

30 The exponential functor From the existence of exponentials we obtain, for each A in C, a functor: A : C C which maps each B to the exponential B A and each f : B C to: ( f A : B A C A := Λ B A A ev ) A,B B f C Lemma. Suppose f : B A C, h : B B and g : C C. Then: g A Λ(f) h = Λ(g f (h id)). Proof: Hence, Λ(f) h = Λ(ev ((Λ(f) h) id)) = Λ(ev ((Λ(f) id) (h id))) = Λ(f (h id)). g A Λ(f) h = Λ(g ev) Λ(f (h id)) = Λ(g ev (Λ(f (h id)) id)) = Λ(g f (h id)) 30/36

31 Exponentials via right adjoints We can show that A is right adjoint to A. As we saw in the previous lecture, this is no coincidence. Proposition. C has exponentials iff, for each object A, the functor A : C C has a right adjoint (i.e. A ). Equivalently, if there is a functor A : C C and a family of (set) bijections: Λ B,C : C(B A,C) = C(B,C A ) natural in B and C. (what is naturality? what is ev A,B?) 31/36

32 Cartesian Closed Categories A category with a terminal object, products and exponentials is called a Cartesian Closed Category (CCC). Equivalently: a CCC is a category with (all) finite products and with exponentials. This notion is fundamental in understanding functional types, models of λ-calculus, and the structure of proofs. Notation The notation of B A for exponential objects is standard in the category theory literature. However, for our purposes, it will be more convenient to write A B. 32/36

33 Example: Boolean Algebras A Boolean algebra, seen as a preorder category, is a CCC. (E.g. a powerset P(X).) Products are given by conjunctions A B. We define exponentials as implications: A B = A B Evaluation is just Modus Ponens: (A B) A B Couniversality is the Deduction Theorem : C A B C A B. 33/36

34 The Connection To Logic Let C be a category. We shall interpret Formulas (or Types) as Objects of C. A morphism f : A B will then correspond to a proof of B from assumption A, i.e. a proof of A B. Note that the bare structure of a category only supports proofs from a single assumption. Now suppose C has finite products. A proof of will correspond to a morphism This time, we map to, and to. A 1,...,A k A f : A 1 A k A. 34/36

35 Axiom, Conjunction Axiom Conjunction Γ,A A Id π 2 : Γ A A Γ A Γ B Γ A B I f : Γ A g : Γ B f,g : Γ A B Γ A B Γ A E 1 Γ A B Γ B E 2 f : Γ A B π 1 f : Γ A f : Γ A B π 2 f : Γ B 35/36

36 Implication Now let C be cartesian closed. Γ,A B Γ A B I f : Γ A B Λ(f) : Γ (A B) Γ A B Γ B Γ A E f : Γ (A B) g : Γ A ev A,B f,g : Γ B Moreover, the β- and η-equations are all then derivable from the equations of cartesian closed categories. So cartesian closed categories are models of (, )-logic, at the level of proofs and proof transformations, and of simply typed λ-calculus, at the level of terms and equations between terms. 36/36

Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. Radboud University Nijmegen. March 5, 2012

Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky. Radboud University Nijmegen. March 5, 2012 1 λ Henk Barendregt and Freek Wiedijk assisted by Andrew Polonsky Radboud University Nijmegen March 5, 2012 2 reading Femke van Raamsdonk Logical Verification Course Notes Herman Geuvers Introduction to

More information

University of Oxford, Michaelis November 16, Categorical Semantics and Topos Theory Homotopy type theor

University of Oxford, Michaelis November 16, Categorical Semantics and Topos Theory Homotopy type theor Categorical Semantics and Topos Theory Homotopy type theory Seminar University of Oxford, Michaelis 2011 November 16, 2011 References Johnstone, P.T.: Sketches of an Elephant. A Topos-Theory Compendium.

More information

CHAPTER 11. Introduction to Intuitionistic Logic

CHAPTER 11. Introduction to Intuitionistic Logic CHAPTER 11 Introduction to Intuitionistic Logic Intuitionistic logic has developed as a result of certain philosophical views on the foundation of mathematics, known as intuitionism. Intuitionism was originated

More information

Introduction to Intuitionistic Logic

Introduction to Intuitionistic Logic Introduction to Intuitionistic Logic August 31, 2016 We deal exclusively with propositional intuitionistic logic. The language is defined as follows. φ := p φ ψ φ ψ φ ψ φ := φ and φ ψ := (φ ψ) (ψ φ). A

More information

Boolean Algebra and Propositional Logic

Boolean Algebra and Propositional Logic Boolean Algebra and Propositional Logic Takahiro Kato June 23, 2015 This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a more direct connection

More information

Grammatical resources: logic, structure and control

Grammatical resources: logic, structure and control Grammatical resources: logic, structure and control Michael Moortgat & Dick Oehrle 1 Grammatical composition.................................. 5 1.1 Grammar logic: the vocabulary.......................

More information

Boolean Algebra and Propositional Logic

Boolean Algebra and Propositional Logic Boolean Algebra and Propositional Logic Takahiro Kato September 10, 2015 ABSTRACT. This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a

More information

185.A09 Advanced Mathematical Logic

185.A09 Advanced Mathematical Logic 185.A09 Advanced Mathematical Logic www.volny.cz/behounek/logic/teaching/mathlog13 Libor Běhounek, behounek@cs.cas.cz Lecture #1, October 15, 2013 Organizational matters Study materials will be posted

More information

CS Lecture 19: Logic To Truth through Proof. Prof. Clarkson Fall Today s music: Theme from Sherlock

CS Lecture 19: Logic To Truth through Proof. Prof. Clarkson Fall Today s music: Theme from Sherlock CS 3110 Lecture 19: Logic To Truth through Proof Prof. Clarkson Fall 2014 Today s music: Theme from Sherlock Review Current topic: How to reason about correctness of code Last week: informal arguments

More information

Topos Theory. Lectures 17-20: The interpretation of logic in categories. Olivia Caramello. Topos Theory. Olivia Caramello.

Topos Theory. Lectures 17-20: The interpretation of logic in categories. Olivia Caramello. Topos Theory. Olivia Caramello. logic s Lectures 17-20: logic in 2 / 40 logic s Interpreting first-order logic in In Logic, first-order s are a wide class of formal s used for talking about structures of any kind (where the restriction

More information

Non-Idempotent Typing Operators, beyond the λ-calculus

Non-Idempotent Typing Operators, beyond the λ-calculus Non-Idempotent Typing Operators, beyond the λ-calculus Soutenance de thèse Pierre VIAL IRIF (Univ. Paris Diderot and CNRS) December 7, 2017 Non-idempotent typing operators P. Vial 0 1 /46 Certification

More information

Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic

Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic Evaluation Driven Proof-Search in Natural Deduction Calculi for Intuitionistic Propositional Logic Mauro Ferrari 1, Camillo Fiorentini 2 1 DiSTA, Univ. degli Studi dell Insubria, Varese, Italy 2 DI, Univ.

More information

Introduction to dependent type theory. CIRM, May 30

Introduction to dependent type theory. CIRM, May 30 CIRM, May 30 Goals of this presentation Some history and motivations Notations used in type theory Main goal: the statement of main properties of equality type and the univalence axiom First talk P ropositions

More information

From pre-models to models

From pre-models to models From pre-models to models normalization by Heyting algebras Olivier HERMANT 18 Mars 2008 Deduction System : natural deduction (NJ) first-order logic: function and predicate symbols, logical connectors:,,,,

More information

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg Type Theory and Constructive Mathematics Type Theory and Constructive Mathematics Thierry Coquand University of Gothenburg Content An introduction to Voevodsky s Univalent Foundations of Mathematics The

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 17 Tuesday, April 2, 2013 1 There is a strong connection between types in programming languages and propositions

More information

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016 Rules and derivations in an elementary logic course arxiv:160101483v1 [cslo] 7 Jan 2016 Gilles Dowek Inria, 23 avenue d Italie, CS 81321, 75214 Paris Cedex 13, France gillesdowek@inriafr When teaching

More information

The Curry-Howard Isomorphism

The Curry-Howard Isomorphism The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09

More information

Subtractive Logic. To appear in Theoretical Computer Science. Tristan Crolard May 3, 1999

Subtractive Logic. To appear in Theoretical Computer Science. Tristan Crolard May 3, 1999 Subtractive Logic To appear in Theoretical Computer Science Tristan Crolard crolard@ufr-info-p7.jussieu.fr May 3, 1999 Abstract This paper is the first part of a work whose purpose is to investigate duality

More information

AN ALTERNATIVE NATURAL DEDUCTION FOR THE INTUITIONISTIC PROPOSITIONAL LOGIC

AN ALTERNATIVE NATURAL DEDUCTION FOR THE INTUITIONISTIC PROPOSITIONAL LOGIC Bulletin of the Section of Logic Volume 45/1 (2016), pp 33 51 http://dxdoiorg/1018778/0138-068045103 Mirjana Ilić 1 AN ALTERNATIVE NATURAL DEDUCTION FOR THE INTUITIONISTIC PROPOSITIONAL LOGIC Abstract

More information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications NICTA Advanced Course Theorem Proving Principles, Techniques, Applications λ 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic, natural

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

Nonclassical logics (Nichtklassische Logiken)

Nonclassical logics (Nichtklassische Logiken) Nonclassical logics (Nichtklassische Logiken) VU 185.249 (lecture + exercises) http://www.logic.at/lvas/ncl/ Chris Fermüller Technische Universität Wien www.logic.at/people/chrisf/ chrisf@logic.at Winter

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

A CATEGORICAL APPROACH TO PROOFS-AS-PROGRAMS

A CATEGORICAL APPROACH TO PROOFS-AS-PROGRAMS A CATEGORICAL APPROACH TO PROOFS-AS-PROGRAMS CARSEN BERGER Abstract. The correspondence between proofs in intuitionistic logic, programs in the λ-calculus, and cartesian closed categories is presented

More information

CS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus

CS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus CS 4110 Programming Languages & Logics Lecture 16 Programming in the λ-calculus 30 September 2016 Review: Church Booleans 2 We can encode TRUE, FALSE, and IF, as: TRUE λx. λy. x FALSE λx. λy. y IF λb.

More information

Typed Lambda Calculi. Nikos Tzeveλekos Queen Mary, University of London 1 / 23

Typed Lambda Calculi. Nikos Tzeveλekos Queen Mary, University of London 1 / 23 Typed Lambda Calculi Nikos Tzeveλekos Queen Mary, University of London 1 / 23 What is the Lambda Calculus A minimal formalism expressing computation with functionals s ::= x λx.s ss All you need is lambda.

More information

Structuring Logic with Sequent Calculus

Structuring Logic with Sequent Calculus Structuring Logic with Sequent Calculus Alexis Saurin ENS Paris & École Polytechnique & CMI Seminar at IIT Delhi 17th September 2004 Outline of the talk Proofs via Natural Deduction LK Sequent Calculus

More information

Simply Typed λ-calculus

Simply Typed λ-calculus Simply Typed λ-calculus Lecture 1 Jeremy Dawson The Australian National University Semester 2, 2017 Jeremy Dawson (ANU) COMP4630,Lecture 1 Semester 2, 2017 1 / 23 A Brief History of Type Theory First developed

More information

Logical Preliminaries

Logical Preliminaries Logical Preliminaries Johannes C. Flieger Scheme UK March 2003 Abstract Survey of intuitionistic and classical propositional logic; introduction to the computational interpretation of intuitionistic logic

More information

Review. Principles of Programming Languages. Equality. The Diamond Property. The Church-Rosser Theorem. Corollaries. CSE 230: Winter 2007

Review. Principles of Programming Languages. Equality. The Diamond Property. The Church-Rosser Theorem. Corollaries. CSE 230: Winter 2007 CSE 230: Winter 2007 Principles of Programming Languages Lecture 12: The λ-calculus Ranjit Jhala UC San Diego Review The lambda calculus is a calculus of functions: e := x λx. e e 1 e 2 Several evaluation

More information

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018

More information

Zoran Petrić. 270 Minutes on Categorial Proof Theory

Zoran Petrić. 270 Minutes on Categorial Proof Theory Zoran Petrić 270 Minutes on Categorial Proof Theory Abstract. The aim of these notes is to provide an introduction of basic categorial notions to a reader interested in logic and proof theory. The first

More information

Logic for Computer Science - Week 4 Natural Deduction

Logic for Computer Science - Week 4 Natural Deduction Logic for Computer Science - Week 4 Natural Deduction 1 Introduction In the previous lecture we have discussed some important notions about the semantics of propositional logic. 1. the truth value of a

More information

Natural Deduction for Propositional Logic

Natural Deduction for Propositional Logic Natural Deduction for Propositional Logic Bow-Yaw Wang Institute of Information Science Academia Sinica, Taiwan September 10, 2018 Bow-Yaw Wang (Academia Sinica) Natural Deduction for Propositional Logic

More information

What is a Proof? Jean Gallier and Kurt W.A.J.H.Y. Reillag CIS, Upenn and Hospices de Beaune. Friday, February 22, 13

What is a Proof? Jean Gallier and Kurt W.A.J.H.Y. Reillag CIS, Upenn and Hospices de Beaune. Friday, February 22, 13 What is a Proof? Jean Gallier and Kurt W.A.J.H.Y. Reillag CIS, Upenn and Hospices de Beaune Reillag s office Another office After a bad proof! Finally, some peace! Quick History Quick History Formalizing

More information

cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018

cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018 cse371/mat371 LOGIC Professor Anita Wasilewska Fall 2018 Chapter 7 Introduction to Intuitionistic and Modal Logics CHAPTER 7 SLIDES Slides Set 1 Chapter 7 Introduction to Intuitionistic and Modal Logics

More information

Constructive approach to relevant and affine term calculi

Constructive approach to relevant and affine term calculi Constructive approach to relevant and affine term calculi Jelena Ivetić, University of Novi Sad, Serbia Silvia Ghilezan,University of Novi Sad, Serbia Pierre Lescanne, University of Lyon, France Silvia

More information

Handbook of Logic and Proof Techniques for Computer Science

Handbook of Logic and Proof Techniques for Computer Science Steven G. Krantz Handbook of Logic and Proof Techniques for Computer Science With 16 Figures BIRKHAUSER SPRINGER BOSTON * NEW YORK Preface xvii 1 Notation and First-Order Logic 1 1.1 The Use of Connectives

More information

Informal Statement Calculus

Informal Statement Calculus FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example

More information

Logic. Propositional Logic: Syntax

Logic. Propositional Logic: Syntax Logic Propositional Logic: Syntax Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about

More information

Basic Algebraic Logic

Basic Algebraic Logic ELTE 2013. September Today Past 1 Universal Algebra 1 Algebra 2 Transforming Algebras... Past 1 Homomorphism 2 Subalgebras 3 Direct products 3 Varieties 1 Algebraic Model Theory 1 Term Algebras 2 Meanings

More information

hal , version 1-21 Oct 2009

hal , version 1-21 Oct 2009 ON SKOLEMISING ZERMELO S SET THEORY ALEXANDRE MIQUEL Abstract. We give a Skolemised presentation of Zermelo s set theory (with notations for comprehension, powerset, etc.) and show that this presentation

More information

Programming Languages

Programming Languages CSE 230: Winter 2010 Principles of Programming Languages Lecture 10: Programming in λ-calculusc l l Ranjit Jhala UC San Diego Review The lambda calculus is a calculus of functions: e := x λx. e e 1 e 2

More information

Propositional Logic Language

Propositional Logic Language Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite

More information

Lecture Notes on Combinatory Modal Logic

Lecture Notes on Combinatory Modal Logic Lecture Notes on Combinatory Modal Logic 15-816: Modal Logic Frank Pfenning Lecture 9 February 16, 2010 1 Introduction The connection between proofs and program so far has been through a proof term assignment

More information

Modal Logic XX. Yanjing Wang

Modal Logic XX. Yanjing Wang Modal Logic XX Yanjing Wang Department of Philosophy, Peking University May 6th, 2016 Advanced Modal Logic (2016 Spring) 1 Completeness A traditional view of Logic A logic Λ is a collection of formulas

More information

Kleene realizability and negative translations

Kleene realizability and negative translations Q E I U G I C Kleene realizability and negative translations Alexandre Miquel O P. D E. L Ō A U D E L A R April 21th, IMERL Plan 1 Kleene realizability 2 Gödel-Gentzen negative translation 3 Lafont-Reus-Streicher

More information

Locally cartesian closed categories

Locally cartesian closed categories Locally cartesian closed categories Clive Newstead 80-814 Categorical Logic, Carnegie Mellon University Wednesday 1st March 2017 Abstract Cartesian closed categories provide a natural setting for the interpretation

More information

William J. CookLogic via Topoi NCSU William J. CookLogic via Topoi. Logic via Topoi. CSC591Z: Computational Applied Logic Final Presentation

William J. CookLogic via Topoi NCSU William J. CookLogic via Topoi. Logic via Topoi. CSC591Z: Computational Applied Logic Final Presentation Logic via Topoi CSC591Z: Computational Applied Logic Final Presentation William J. Cook wjcook@math.ncsu.edu Wednesday, December 8, 2004 1 Categories 2 Def: A category C is a collection of objects Ob(C)

More information

02 Propositional Logic

02 Propositional Logic SE 2F03 Fall 2005 02 Propositional Logic Instructor: W. M. Farmer Revised: 25 September 2005 1 What is Propositional Logic? Propositional logic is the study of the truth or falsehood of propositions or

More information

Propositional logic (revision) & semantic entailment. p. 1/34

Propositional logic (revision) & semantic entailment. p. 1/34 Propositional logic (revision) & semantic entailment p. 1/34 Reading The background reading for propositional logic is Chapter 1 of Huth/Ryan. (This will cover approximately the first three lectures.)

More information

Investigation of Prawitz s completeness conjecture in phase semantic framework

Investigation of Prawitz s completeness conjecture in phase semantic framework Investigation of Prawitz s completeness conjecture in phase semantic framework Ryo Takemura Nihon University, Japan. takemura.ryo@nihon-u.ac.jp Abstract In contrast to the usual Tarskian set-theoretic

More information

Logic As A Tool For Building Theories

Logic As A Tool For Building Theories Logic As A Tool For Building Theories Samson Abramsky Oxford University Computing Laboratory Logic For Building Theories Practice-Based PoL: Amsterdam 2009 1 / 29 Overview The Plan Logic For Building Theories

More information

Natural Deduction. Formal Methods in Verification of Computer Systems Jeremy Johnson

Natural Deduction. Formal Methods in Verification of Computer Systems Jeremy Johnson Natural Deduction Formal Methods in Verification of Computer Systems Jeremy Johnson Outline 1. An example 1. Validity by truth table 2. Validity by proof 2. What s a proof 1. Proof checker 3. Rules of

More information

Stratifications and complexity in linear logic. Daniel Murfet

Stratifications and complexity in linear logic. Daniel Murfet Stratifications and complexity in linear logic Daniel Murfet Curry-Howard correspondence logic programming categories formula type objects sequent input/output spec proof program morphisms cut-elimination

More information

Logic Part II: Intuitionistic Logic and Natural Deduction

Logic Part II: Intuitionistic Logic and Natural Deduction Yesterday Remember yesterday? classical logic: reasoning about truth of formulas propositional logic: atomic sentences, composed by connectives validity and satisability can be decided by truth tables

More information

Chapter 11: Automated Proof Systems

Chapter 11: Automated Proof Systems Chapter 11: Automated Proof Systems SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems are

More information

On a computational interpretation of sequent calculus for modal logic S4

On a computational interpretation of sequent calculus for modal logic S4 On a computational interpretation of sequent calculus for modal logic S4 Yosuke Fukuda Graduate School of Informatics, Kyoto University Second Workshop on Mathematical Logic and Its Applications March

More information

Complete Partial Orders, PCF, and Control

Complete Partial Orders, PCF, and Control Complete Partial Orders, PCF, and Control Andrew R. Plummer TIE Report Draft January 2010 Abstract We develop the theory of directed complete partial orders and complete partial orders. We review the syntax

More information

Propositional Logic: Part II - Syntax & Proofs 0-0

Propositional Logic: Part II - Syntax & Proofs 0-0 Propositional Logic: Part II - Syntax & Proofs 0-0 Outline Syntax of Propositional Formulas Motivating Proofs Syntactic Entailment and Proofs Proof Rules for Natural Deduction Axioms, theories and theorems

More information

TR : Tableaux for the Logic of Proofs

TR : Tableaux for the Logic of Proofs City University of New York (CUNY) CUNY Academic Works Computer Science Technical Reports Graduate Center 2004 TR-2004001: Tableaux for the Logic of Proofs Bryan Renne Follow this and additional works

More information

The Calculus of Inductive Constructions

The Calculus of Inductive Constructions The Calculus of Inductive Constructions Hugo Herbelin 10th Oregon Programming Languages Summer School Eugene, Oregon, June 16-July 1, 2011 1 Outline - A bit of history, leading to the Calculus of Inductive

More information

First-Order Logic. Chapter Overview Syntax

First-Order Logic. Chapter Overview Syntax Chapter 10 First-Order Logic 10.1 Overview First-Order Logic is the calculus one usually has in mind when using the word logic. It is expressive enough for all of mathematics, except for those concepts

More information

Introduction to Metalogic

Introduction to Metalogic Introduction to Metalogic Hans Halvorson September 21, 2016 Logical grammar Definition. A propositional signature Σ is a collection of items, which we call propositional constants. Sometimes these propositional

More information

Concrete Models for Classical Realizability

Concrete Models for Classical Realizability Concrete Models for Classical Realizability Jaap van Oosten (joint work with Tinxiang Zou) Department of Mathematics, Utrecht University Utrecht Workshop on Proof Theory, April 16, 2015 Classical Realizability

More information

Rules of Inference. Lecture 1 Tuesday, September 24. Rosalie Iemhoff Utrecht University, The Netherlands

Rules of Inference. Lecture 1 Tuesday, September 24. Rosalie Iemhoff Utrecht University, The Netherlands Rules of Inference Lecture 1 Tuesday, September 24 Rosalie Iemhoff Utrecht University, The Netherlands TbiLLC 2013 Gudauri, Georgia, September 23-27, 2013 1 / 26 Questions Given a theorem, what are the

More information

About categorical semantics

About categorical semantics About categorical semantics Dominique Duval LJK, University of Grenoble October 15., 2010 Capp Café, LIG, University of Grenoble Outline Introduction Logics Effects Conclusion The issue Semantics of programming

More information

Bidirectional Decision Procedures for the Intuitionistic Propositional Modal Logic IS4

Bidirectional Decision Procedures for the Intuitionistic Propositional Modal Logic IS4 Bidirectional ecision Procedures for the Intuitionistic Propositional Modal Logic IS4 Samuli Heilala and Brigitte Pientka School of Computer Science, McGill University, Montreal, Canada {sheila1,bpientka}@cs.mcgill.ca

More information

Surface Reasoning Lecture 2: Logic and Grammar

Surface Reasoning Lecture 2: Logic and Grammar Surface Reasoning Lecture 2: Logic and Grammar Thomas Icard June 18-22, 2012 Thomas Icard: Surface Reasoning, Lecture 2: Logic and Grammar 1 Categorial Grammar Combinatory Categorial Grammar Lambek Calculus

More information

Semantical study of intuitionistic modal logics

Semantical study of intuitionistic modal logics Semantical study of intuitionistic modal logics Department of Intelligence Science and Technology Graduate School of Informatics Kyoto University Kensuke KOJIMA January 16, 2012 Abstract We investigate

More information

A fully abstract semantics for a nondeterministic functional language with monadic types

A fully abstract semantics for a nondeterministic functional language with monadic types A fully abstract semantics for a nondeterministic functional language with monadic types Alan Jeffrey 1 School of Cognitive and Computing Sciences University of Sussex, Brighton BN1 9QH, UK alanje@cogs.susx.ac.uk

More information

Two-dimensional models of type theory

Two-dimensional models of type theory Two-dimensional models of type theory Richard Garner Uppsala University Logic Colloquium 2008, Bern 1/33 Outline Motivation Two-dimensional type theory: syntax Two-dimensional type theory: semantics Further

More information

UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS

UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS Bulletin of the Section of Logic Volume 32:1/2 (2003), pp. 19 26 Wojciech Dzik UNITARY UNIFICATION OF S5 MODAL LOGIC AND ITS EXTENSIONS Abstract It is shown that all extensions of S5 modal logic, both

More information

Propositional Logic: Deductive Proof & Natural Deduction Part 1

Propositional Logic: Deductive Proof & Natural Deduction Part 1 Propositional Logic: Deductive Proof & Natural Deduction Part 1 CS402, Spring 2016 Shin Yoo Deductive Proof In propositional logic, a valid formula is a tautology. So far, we could show the validity of

More information

Chapter 11: Automated Proof Systems (1)

Chapter 11: Automated Proof Systems (1) Chapter 11: Automated Proof Systems (1) SYSTEM RS OVERVIEW Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. Automated systems

More information

Truth values algebras and proof normalization

Truth values algebras and proof normalization Truth values algebras and proof normalization Gilles Dowek École polytechnique and INRIA, LIX, École polytechnique, 91128 Palaiseau Cedex, France http://lix.polytechnique.fr/ dowek/ Gilles.Dowek@polytechnique.edu

More information

Modèles des langages de programmation Domaines, catégories, jeux. Programme de cette seconde séance:

Modèles des langages de programmation Domaines, catégories, jeux. Programme de cette seconde séance: Modèles des langages de programmation Domaines, catégories, jeux Programme de cette seconde séance: Modèle ensembliste du lambda-calcul ; Catégories cartésiennes fermées 1 Synopsis 1 the simply-typed λ-calculus,

More information

Preuves de logique linéaire sur machine, ENS-Lyon, Dec. 18, 2018

Preuves de logique linéaire sur machine, ENS-Lyon, Dec. 18, 2018 Université de Lorraine, LORIA, CNRS, Nancy, France Preuves de logique linéaire sur machine, ENS-Lyon, Dec. 18, 2018 Introduction Linear logic introduced by Girard both classical and intuitionistic separate

More information

Hypersequent Calculi for some Intermediate Logics with Bounded Kripke Models

Hypersequent Calculi for some Intermediate Logics with Bounded Kripke Models Hypersequent Calculi for some Intermediate Logics with Bounded Kripke Models Agata Ciabattoni Mauro Ferrari Abstract In this paper we define cut-free hypersequent calculi for some intermediate logics semantically

More information

First Order Logic: Syntax and Semantics

First Order Logic: Syntax and Semantics CS1081 First Order Logic: Syntax and Semantics COMP30412 Sean Bechhofer sean.bechhofer@manchester.ac.uk Problems Propositional logic isn t very expressive As an example, consider p = Scotland won on Saturday

More information

Consequence Relations and Natural Deduction

Consequence Relations and Natural Deduction Consequence Relations and Natural Deduction Joshua D. Guttman Worcester Polytechnic Institute September 9, 2010 Contents 1 Consequence Relations 1 2 A Derivation System for Natural Deduction 3 3 Derivations

More information

Proving Completeness for Nested Sequent Calculi 1

Proving Completeness for Nested Sequent Calculi 1 Proving Completeness for Nested Sequent Calculi 1 Melvin Fitting abstract. Proving the completeness of classical propositional logic by using maximal consistent sets is perhaps the most common method there

More information

Non-classical Logics: Theory, Applications and Tools

Non-classical Logics: Theory, Applications and Tools Non-classical Logics: Theory, Applications and Tools Agata Ciabattoni Vienna University of Technology (TUV) Joint work with (TUV): M. Baaz, P. Baldi, B. Lellmann, R. Ramanayake,... N. Galatos (US), G.

More information

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30) Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural

More information

cis32-ai lecture # 18 mon-3-apr-2006

cis32-ai lecture # 18 mon-3-apr-2006 cis32-ai lecture # 18 mon-3-apr-2006 today s topics: propositional logic cis32-spring2006-sklar-lec18 1 Introduction Weak (search-based) problem-solving does not scale to real problems. To succeed, problem

More information

Intersection Synchronous Logic

Intersection Synchronous Logic UnB 2007 p. 1/2 Intersection Synchronous Logic Elaine Gouvêa Pimentel Simona Ronchi della Rocca Luca Roversi UFMG/UNITO, 2007 UnB 2007 p. 2/2 Outline Motivation UnB 2007 p. 2/2 Outline Motivation Intuitionistic

More information

Applied Logic for Computer Scientists. Answers to Some Exercises

Applied Logic for Computer Scientists. Answers to Some Exercises Applied Logic for Computer Scientists Computational Deduction and Formal Proofs Springer, 2017 doi: http://link.springer.com/book/10.1007%2f978-3-319-51653-0 Answers to Some Exercises Mauricio Ayala-Rincón

More information

COMP219: Artificial Intelligence. Lecture 19: Logic for KR

COMP219: Artificial Intelligence. Lecture 19: Logic for KR COMP219: Artificial Intelligence Lecture 19: Logic for KR 1 Overview Last time Expert Systems and Ontologies Today Logic as a knowledge representation scheme Propositional Logic Syntax Semantics Proof

More information

Semantics of intuitionistic propositional logic

Semantics of intuitionistic propositional logic Semantics of intuitionistic propositional logic Erik Palmgren Department of Mathematics, Uppsala University Lecture Notes for Applied Logic, Fall 2009 1 Introduction Intuitionistic logic is a weakening

More information

Higher Order Containers

Higher Order Containers Higher Order Containers Thorsten Altenkirch 1, Paul Levy 2, and Sam Staton 3 1 University of Nottingham 2 University of Birmingham 3 University of Cambridge Abstract. Containers are a semantic way to talk

More information

Discrete Mathematics: Lectures 6 and 7 Sets, Relations, Functions and Counting Instructor: Arijit Bishnu Date: August 4 and 6, 2009

Discrete Mathematics: Lectures 6 and 7 Sets, Relations, Functions and Counting Instructor: Arijit Bishnu Date: August 4 and 6, 2009 Discrete Mathematics: Lectures 6 and 7 Sets, Relations, Functions and Counting Instructor: Arijit Bishnu Date: August 4 and 6, 2009 Our main goal is here is to do counting using functions. For that, we

More information

Fundamentals of Logic

Fundamentals of Logic Fundamentals of Logic No.5 Soundness and Completeness Tatsuya Hagino Faculty of Environment and Information Studies Keio University 2015/5/18 Tatsuya Hagino (Faculty of Environment and InformationFundamentals

More information

Type Systems Winter Semester 2006

Type Systems Winter Semester 2006 Type Systems Winter Semester 2006 Week 7 November 29 November 29, 2006 - version 1.0 Plan PREVIOUSLY: 1. type safety as progress and preservation 2. typed arithmetic expressions 3. simply typed lambda

More information

Uniform Schemata for Proof Rules

Uniform Schemata for Proof Rules Uniform Schemata for Proof Rules Ulrich Berger and Tie Hou Department of omputer Science, Swansea University, UK {u.berger,cshou}@swansea.ac.uk Abstract. Motivated by the desire to facilitate the implementation

More information

Fast Growing Functions and Arithmetical Independence Results

Fast Growing Functions and Arithmetical Independence Results Fast Growing Functions and Arithmetical Independence Results Stanley S. Wainer (Leeds UK) Stanford, March 2013 1. Intro A Mathematical Incompleteness Are there any genuine mathematical examples of incompleteness?

More information

Display calculi in non-classical logics

Display calculi in non-classical logics Display calculi in non-classical logics Revantha Ramanayake Vienna University of Technology (TU Wien) Prague seminar of substructural logics March 28 29, 2014 Revantha Ramanayake (TU Wien) Display calculi

More information

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic

The Importance of Being Formal. Martin Henz. February 5, Propositional Logic The Importance of Being Formal Martin Henz February 5, 2014 Propositional Logic 1 Motivation In traditional logic, terms represent sets, and therefore, propositions are limited to stating facts on sets

More information

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only

Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only 1/53 Extensions to the Logic of All x are y: Verbs, Relative Clauses, and Only Larry Moss Indiana University Nordic Logic School August 7-11, 2017 2/53 An example that we ll see a few times Consider the

More information

FORMAL PROOFS DONU ARAPURA

FORMAL PROOFS DONU ARAPURA FORMAL PROOFS DONU ARAPURA This is a supplement for M385 on formal proofs in propositional logic. Rather than following the presentation of Rubin, I want to use a slightly different set of rules which

More information