Alonzo Church ( ) Lambda Calculus. λ-calculus : syntax. Grammar for terms : Inductive denition for λ-terms

Size: px
Start display at page:

Download "Alonzo Church ( ) Lambda Calculus. λ-calculus : syntax. Grammar for terms : Inductive denition for λ-terms"

Transcription

1 Alonzo Church ( ) Lambda Calculus 2 λ-calculus : syntax Grammar for terms : t, u ::= x (variable) t u (application) λx.t (abstraction) Notation : Application is left-associative so that t 1 t 2... t n means (... (t 1 t 2 )... t n ). Inductive denition for λ-terms t is a λ-term t u is a λ-term x is a variable (Var) x is a λ-term u is a λ-term (App) t is a λ-term (Lamb) λx.t is a λ-term λx 1... x n.t means λx λx n.t. 3 4

2 Free and bound variables λx.(z x y (λz.z y)) The set of free and bound variables are dened as follows fv(x) = {x} bv(x) = fv(t u) = fv(t) fv(u) bv(t u) = bv(t) bv(u) fv(λx.t) = fv(t) \ {x} bv(λx.t) = bv(t) {x} But for t = x (λx.x) Alpha-conversion The relation = α, called alpha-conversion, is the congruence generated by the axiom α. Formally, λx.t α λy.t[x /y] for y fresh t= α t λx.t= α λx.t λx.t = α λy.t[x /y] t= α t u= α u t u= α t u fv(x (λx.x)) = {x} = bv(x (λx.x)) 5 6 Dening the notion of fresh replacement The operation t[x /y] means the replacement of all the free occurrences of x in t by a fresh variable y. Examples x[x /y] = y z[x /y] = z (t u)[x /y] = t[x /y] u[x /y] (λx.t)[x /y] = λx.t (λz.t)[x /y] = λz.t[x /y] λx.(λx.x z) α λy.(λx.x z) = α λy.(λy.y z) x (λx.x) = α x (λz.z) 7 8

3 Barendregt variable convention From now on we assume the following variable convention : 1. No variable is both free and bound. 2. Bound variables have all dierent names. Example : x (λz.z) is OK, x (λx.x) is not OK, λx.λy.x z is OK but λx.λx.x z is not OK. Theorem : For every λ-term t there is λ-term u verifying the Barendregt convention such that t = α u. Indeed, x (λx.x) = α x (λz.z) and λx.λx.x z = α λy.λx.x z. Operational semantics of λ-calculus A one-step β-reduction is given inductively by t t (λx.t) u t{x/u} λx.t λx.t t t u u t u t u t u t u What is exactly _{_/_}? 9 10 Towards a notion of substitution : warning! A simple notion of higher-order substitution t{x/u} means replace all the free occurrences of x in t by u. (λx.(λy.x)) y (λy.x){x/y} = λy.y This operation is dened modulo α-conversion as follows : Incorrect (λx.(λy.x)) y = α (λx.(λz.x)) y Correct (λz.x){x/y} = λz.y x{x/u} = u y{x/u} = y (λy.v){x/u} = λy.v{x/u} if x y and y / fv(u) (no capture holds) (t v){x/u} = (t{x/u} v{x/u}) 11 12

4 A terminating β-reduction sequences A non terminating β-reduction sequences (λx.λf.x f y) (λz.z) (λw.w w) (λf.x f y) {x/λz.z} (λw.w w) = (λf.(λz.z) f y) (λw.w w) (λf.f y) (λw.w w) (f y){f/λw.w w} = (λw.w w) y (w w) {w/y} = (y y) Let Π = λx.f (x x). Π Π (f (x x)){x/π} = f (Π Π) f (f (x x)){x/π} = f (f (Π Π)) Curry-Howard Isomorphism Properties of λ-calculus [Conuence] The reduction relation is conuent. [Free variables decrease] If t t, then fv(t) fv(t ). Logical system Language Propositions Types Proofs Programs Proof normalisation Program Evaluation 15 16

5 Adding (simply) types to λ-calculus Curry'58, Howard'68 Grammar for types : A, B ::= τ (base types) A B (functional types) Notation : is right-associative so that for example A 1 A 2 A 3 means A 1 (A 2 A 3 ) Typing Environment A typing environment Γ is a nite function from variables to types, usually written x 1 : A 1,..., x n : A n. Thus for example, x : A, y : B and y : B, x : A are two dierent notations for the same typing environment. The domain of Γ = x 1 : A 1,..., x n : A n, written dom(γ), is the set {x 1,..., x n }. We write Γ, x : A for the typing environment extending Γ with the pair x : A. It is only dened i x / dom(γ). Natural deduction as typed λ-calculus (ax) Γ, x : A x : A Γ, x : A t : B Γ t : A B Γ u : A ( i) Γ λx.t : A B Γ t u : B We denote by Γ t : A the derivability/typing relation. We say that t is typable i there is Γ and A such that Γ t : A. Remark : Γ t : A denotes also a sequent! ( e) 19 20

6 Examples Example of a typable term : (λx.x)(λy.y). y : σ σ y : σ σ x : σ x : σ λy.y : (σ σ) (σ σ) λx.x : σ σ (λy.y)(λx.x) : σ σ Example of non-typable term : λx.xx. Typed Properties [Subject Reduction] If Γ t : A and t t, then Γ t : A. [Strong Normalization] Every typed term is normalising : if Γ t : A, then t SN β Some General Remarks When using typed terms, the notation t{x/u} means that x and u have the same type. t SN β i there is no innite β-reduction sequence starting at t i every β-reduction sequence starting at t is nite t SN β can also be dened as follows If t is a β-normal form, then t SN β If t [(t t ) implies t SN β ], then t SN β If t SN β, then every subterm of t is also SN β. SN β is not stable by substitution. Example : x x SN β, λy.y y SN β, but (x x){x/λy.y y} = / SN β. u SN β i λy.u SN β. u 1,..., u n SN β i x u 1... u n SN β. Given t SN β we dene µ β (t) as the maximal lenght of a reduction sequence starting at t. We observe that t t implies µ β (t ) < µ β (t). Every type A can be written as A 1... A n τ, where A 1,..., A n (n 0) are arbitrary types and τ is a base type. The standard order between types is given by A < A B and B < A B. Thus base types are minimal with respect this order

7 First Proof of the SN property Dénition : Let M be of type A = A 1... A n τ. Then M SC i R i : A i SC M R 1... R n SN β. The denition implies 1. SC SN. 2. SC is closed under β. 3. x SC for every variable x (using 1). Lemma : [Basic Lemma] If t, R 1,..., R n (n 1) SN β and t{x/r 1 }R 2... R n SN β, then (λx.t)r 1 R 2... R n SN β. Proof. It is sucient to show that all the reducts of (λx.t)r 1... R n are in SN β. We reason by induction on µ(t) + Σ i µ(r i ). The reducts are (λx.t )R 1... R n, where t t. Then µ(t ) < µ(t), we conclude by the i.h. (λx.t)r 1... R i... R n, where R i R i. Then µ(r i ) < µ(r i), we conclude by the i.h. t{x/r 1 }R 2... R n. We conclude by the hypothesis Lemma : Let M be a typed term. Let σ be a type preserving substitution mapping all the free variables of M to terms in SC. Then Mσ SC. Proof. We proceed by induction on the typed term M. If M = x, then xσ = σ(x) SC by hypothesis. If M = NL, then let R n SC. We have Nσ and Lσ in SC by i.h. Then (N L)σ R n = Nσ Lσ R n SN β by denition. If M = λx.n, then (λx.n)σ = λx.nσ. Since σ {x/x} veries the hypothesis of the lemma, then by the i.h. N(σ {x/x}) = Nσ SC SN β. To show λx.nσ SC we show (λx.nσ)p 1... P n SN β for P 1... P n SC SN β. This follows from the Basic Lemma. Lemma : Every typed term is SC. Proof. Using the previous lemma with the identity substitution (which veries the hypothesis of the lemma). Theorem : Every typed term is in SN β. Proof. Using the previous lemma and the fact the SC SN β

8 Second proof of the SN property 1. Dene SN inductively : M 1,..., M n SN implies x M 1... M n SN. M SN implies λx.m SN. M{x/N} P n SN and N SN implies (λx.m) N P n SN. 2. Dene Λ A inductively : If x is a variable of type A, then x Λ A. If t Λ C and x is a variable of type B, then λx.t Λ B C. If t Λ B A and u Λ B, then t u Λ A. 3. Dene SN A = SN Λ A. 5. Show SN = SN β (in fact SN SN β suces). 6. Show Λ A B = Λ A Λ B 7. Show SN A SN B SN A B (easy). 8. If N SN A1 SN A2... SN Am with A m a base type and P SN B, then P {x/n} SN B (induction on SN using 7). 9. Show SN A B SN A SN B (using 8). 10. Show that Λ A SN A (by induction using 9). 4. Dene X Y = {M N X (MN) Y } Third Proof of the SN property Lemma : If t and u are typed and belong to SN β, then t{x/u} SN β. Proof. By induction on type(u), µ(t), size(t). The base case base type, 0, 1 is trivial. Case t = λy.v is straightforward (size(t) strictly decreases). Case t = y c n with x y is straightforward (µ(t) decreases and size(t) strictly decreases.). Case t = x. We have x{x/u} = u SN β by hypothesis. Case t = x b c n. By i.h. B = b{x/u} and C i = c i {x/u} are in SN β. We want to show that u B C n SN β. It is sucient to show that all its reducts are in SN β. We reason by induction on µ(u) + µ(b) + Σ i µ(c i ). The reducts are u B C n, where u u. Apply the i.h. u B Cn, where B B. Apply the i.h. u B C 1... C i... C n, where C i C i. Apply the i.h. u 1 {y/b} C n, where u = λy.u 1. But u 1 {y/b} C n = (zc n ){z/u 1 {y/b}} and type(u 1 {y/b}) < type(u). We thus conclude by the i.h. since zc n and u 1 {y/b} are typed and in SN β by the i.h.. Case t = (λz.b) c d. By i.h. B = b{x/u} and C = c{x/u} and D i = d i {x/u} are in SN β. Suppose t{x/u} = (λz.b) C D n / SN β. Then B{z/C} D n / SN β. But B{z/C} D n = (b{z/c} d n ){x/u} and µ(b{z/c} d n ) < µ(t). Thus B{z/C} D n SN β by the i.h. Contradiction. Thus t{x/u} = (λz.b) C D n SN β

9 Theorem : If t is typable, then t SN β. Proof. By induction on the typing derivation of t. Case t = x is trivial. Case t = λy.u holds by the i.h. For the case t = u v use the fact that t = (z v){z/u} and apply previous lemma (verication of the hypothesis is easy). Fourth proof of the SN property See for example Gandy's proof by Alexandre Miquel. A combinatorial proof of strong normalisation for the simply typed lambda-calculus. snlam.pdf 33 34

The Lambda-Calculus Reduction System

The Lambda-Calculus Reduction System 2 The Lambda-Calculus Reduction System 2.1 Reduction Systems In this section we present basic notions on reduction systems. For a more detailed study see [Klop, 1992, Dershowitz and Jouannaud, 1990]. Definition

More information

Simply Typed λ-calculus

Simply Typed λ-calculus Simply Typed λ-calculus Lecture 2 Jeremy Dawson The Australian National University Semester 2, 2017 Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, 2017 1 / 19 Outline Properties of Curry type system:

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

Lazy Strong Normalization

Lazy Strong Normalization Lazy Strong Normalization Luca Paolini 1,2 Dipartimento di Informatica Università di Torino (ITALIA) Elaine Pimentel 1,2 Departamento de Matemática Universidade Federal de Minas Gerais (BRASIL) Dipartimento

More information

Lambda-Calculus (I) 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010

Lambda-Calculus (I) 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010 Lambda-Calculus (I) jean-jacques.levy@inria.fr 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010 Plan computation models lambda-notation bound variables conversion

More information

The Permutative λ-calculus

The Permutative λ-calculus The Permutative λ-calculus Beniamino Accattoli 1 Delia Kesner 2 INRIA and LIX (École Polytechnique) PPS (CNRS and Université Paris-Diderot) 1 / 34 Outline 1 λ-calculus 2 Permutative extension 3 Confluence

More information

A THEORY OF EXPLICIT SUBSTITUTIONS WITH SAFE AND FULL COMPOSITION

A THEORY OF EXPLICIT SUBSTITUTIONS WITH SAFE AND FULL COMPOSITION A THEORY OF EXPLICIT SUBSTITUTIONS WITH SAFE AND FULL COMPOSITION DELIA KESNER PPS (Université Paris-Diderot and CNRS), France e-mail address: kesner@pps.jussieu.fr Abstract. Many different systems with

More information

Models of computation

Models of computation Lambda-Calculus (I) jean-jacques.levy@inria.fr 2nd Asian-Pacific Summer School on Formal ethods Tsinghua University, August 23, 2010 Plan computation models lambda-notation bound variables odels of computation

More information

Silvia Ghilezan and Jelena Ivetić

Silvia Ghilezan and Jelena Ivetić PUBLICATIONS DE L INSTITUT MATHÉMATIQUE Nouvelle série, tome 82(96) (2007), 85 91 DOI 102298/PIM0796085G INTERSECTION TYPES FOR λ Gtz -CALCULUS Silvia Ghilezan and Jelena Ivetić Abstract. We introduce

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

Variations on a theme: call-by-value and factorization

Variations on a theme: call-by-value and factorization Variations on a theme: call-by-value and factorization Beniamino Accattoli INRIA & LIX, Ecole Polytechnique Accattoli (INRIA Parsifal) Variations on a theme: call-by-value and factorization 1 / 31 Outline

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

Sub-λ-calculi, Classified

Sub-λ-calculi, Classified Electronic Notes in Theoretical Computer Science 203 (2008) 123 133 www.elsevier.com/locate/entcs Sub-λ-calculi, Classified François-Régis Sinot Universidade do Porto (DCC & LIACC) Rua do Campo Alegre

More information

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

The Greek Alphabet. (a) The Untyped λ-calculus

The Greek Alphabet. (a) The Untyped λ-calculus 3. The λ-calculus and Implication Greek Letters (a) The untyped λ-calculus. (b) The typed λ-calculus. (c) The λ-calculus in Agda. (d) Logic with Implication (e) Implicational Logic in Agda. (f) More on

More information

Categories, Proofs and Programs

Categories, Proofs and Programs Categories, Proofs and Programs Samson Abramsky and Nikos Tzevelekos Lecture 4: Curry-Howard Correspondence and Cartesian Closed Categories In A Nutshell Logic Computation 555555555555555555 5 Categories

More information

Lecture 2. Lambda calculus. Iztok Savnik, FAMNIT. March, 2018.

Lecture 2. Lambda calculus. Iztok Savnik, FAMNIT. March, 2018. Lecture 2 Lambda calculus Iztok Savnik, FAMNIT March, 2018. 1 Literature Henk Barendregt, Erik Barendsen, Introduction to Lambda Calculus, March 2000. Lambda calculus Leibniz had as ideal the following

More information

Reducibility proofs in λ-calculi with intersection types

Reducibility proofs in λ-calculi with intersection types Reducibility proofs in λ-calculi with intersection types Fairouz Kamareddine, Vincent Rahli, and J. B. Wells ULTRA group, Heriot-Watt University, http://www.macs.hw.ac.uk/ultra/ March 14, 2008 Abstract

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

Rewriting, Explicit Substitutions and Normalisation

Rewriting, Explicit Substitutions and Normalisation Rewriting, Explicit Substitutions and Normalisation XXXVI Escola de Verão do MAT Universidade de Brasilia Part 1/3 Eduardo Bonelli LIFIA (Fac. de Informática, UNLP, Arg.) and CONICET eduardo@lifia.info.unlp.edu.ar

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

Command = Value Context. Hans-Dieter Hiep. 15th of June, /17

Command = Value Context. Hans-Dieter Hiep. 15th of June, /17 1/17 Command = Value Context Hans-Dieter Hiep 15th of June, 2018 2/17 Example Consider a total functional programming language. swap :: A B B A swap (a, b) = (b, a) paws :: A B B A paws a = a paws b =

More information

Reasoning about call-by-need by means of types

Reasoning about call-by-need by means of types Reasoning about call-by-need by means of types Delia Kesner Univ. Paris-Diderot, SPC, IRIF, CNRS, France Abstract. We first develop a (semantical) characterization of call-byneed normalization by means

More information

3.2 Equivalence, Evaluation and Reduction Strategies

3.2 Equivalence, Evaluation and Reduction Strategies 3.2 Equivalence, Evaluation and Reduction Strategies The λ-calculus can be seen as an equational theory. More precisely, we have rules i.e., α and reductions, for proving that two terms are intensionally

More information

Overview. I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof.

Overview. I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof. Overview I Review of natural deduction. I Soundness and completeness. I Semantics of propositional formulas. I Soundness proof. I Completeness proof. Propositional formulas Grammar: ::= p j (:) j ( ^ )

More information

Call-by-value non-determinism in a linear logic type discipline

Call-by-value non-determinism in a linear logic type discipline Call-by-value non-determinism in a linear logic type discipline Alejandro Díaz-Caro? Giulio Manzonetto Université Paris-Ouest & INRIA LIPN, Université Paris 13 Michele Pagani LIPN, Université Paris 13

More information

The Vectorial Lambda-Calculus

The Vectorial Lambda-Calculus The Vectorial Lambda-Calculus Pablo Arrighi a,b, Alejandro Díaz-Caro c,e, Benoît Valiron d,e a ENS-Lyon, Laboratoire LIP, France b Université de Grenoble, Laboratoire LIG, France c Université Paris-Ouest

More information

3. The λ-calculus and Implication

3. The λ-calculus and Implication 3. The λ-calculus and Implication (a) (b) (c) (d) (e) (f) The untyped λ-calculus. The typed λ-calculus. The λ-calculus in Agda. Logic with Implication Implicational Logic in Agda. More on the typed λ-calculus.

More information

Strong normalization of lambda-sym-prop and lambda bare-mu-mu tilde*-calculi

Strong normalization of lambda-sym-prop and lambda bare-mu-mu tilde*-calculi Strong normalization of lambda-sym-prop and lambda bare-mu-mu tilde*-calculi Péter Battyányi, Karim Nour To cite this version: Péter Battyányi, Karim Nour. Strong normalization of lambda-sym-prop and lambda

More information

Origin in Mathematical Logic

Origin in Mathematical Logic Lambda Calculus Origin in Mathematical Logic Foundation of mathematics was very much an issue in the early decades of 20th century. Cantor, Frege, Russel s Paradox, Principia Mathematica, NBG/ZF Origin

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

On the Standardization Theorem for λβη-calculus

On the Standardization Theorem for λβη-calculus On the Standardization Theorem for λβη-calculus Ryo Kashima Department of Mathematical and Computing Sciences Tokyo Institute of Technology Ookayama, Meguro, Tokyo 152-8552, Japan. e-mail: kashima@is.titech.ac.jp

More information

Lecture 3. Lambda calculus. Iztok Savnik, FAMNIT. October, 2015.

Lecture 3. Lambda calculus. Iztok Savnik, FAMNIT. October, 2015. Lecture 3 Lambda calculus Iztok Savnik, FAMNIT October, 2015. 1 Literature Henk Barendregt, Erik Barendsen, Introduction to Lambda Calculus, March 2000. Lambda calculus Leibniz had as ideal the following

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

Introduction to λ-calculus

Introduction to λ-calculus p.1/65 Introduction to λ-calculus Ken-etsu FUJITA fujita@cs.gunma-u.ac.jp http://www.comp.cs.gunma-u.ac.jp/ fujita/ Department of Computer Science Gunma University :Church 32, 36, 40; Curry 34 1. Universal

More information

A Rewrite System for Strongly Normalizable Terms

A Rewrite System for Strongly Normalizable Terms A Rewrite System for Strongly Normalizable Terms IRIF Seminar Olivier Hermant & Ronan Saillard CRI, MINES ParisTech, PSL University June 28, 2018 O. Hermant (MINES ParisTech) Intersection Types in DMT

More information

Mathematical Logic IV

Mathematical Logic IV 1 Introduction Mathematical Logic IV The Lambda Calculus; by H.P. Barendregt(1984) Part One: Chapters 1-5 The λ-calculus (a theory denoted λ) is a type free theory about functions as rules, rather that

More information

Typed Arithmetic Expressions

Typed Arithmetic Expressions Typed Arithmetic Expressions CS 550 Programming Languages Jeremy Johnson TAPL Chapters 3 and 5 1 Types and Safety Evaluation rules provide operational semantics for programming languages. The rules provide

More information

Advanced Lambda Calculus Lecture 5

Advanced Lambda Calculus Lecture 5 Advanced Lambda Calculus Lecture 5 The fathers Alonzo Church (1903-1995) as mathematics student at Princeton University (1922 or 1924) Haskell B. Curry (1900-1982) as BA in mathematics at Harvard (1920)

More information

Safety Analysis versus Type Inference

Safety Analysis versus Type Inference Information and Computation, 118(1):128 141, 1995. Safety Analysis versus Type Inference Jens Palsberg palsberg@daimi.aau.dk Michael I. Schwartzbach mis@daimi.aau.dk Computer Science Department, Aarhus

More information

Higher-Order Matching in the Linear λ-calculus with Pairing

Higher-Order Matching in the Linear λ-calculus with Pairing Higher-Order Matching in the Linear λ-calculus with Pairing Philippe de Groote and Sylvain Salvati LORIA UMR n o 7503 INRIA Campus Scientifique, B.P. 239 54506 Vandœuvre lès Nancy Cedex France {degroote,

More information

Consequence Relations and Natural Deduction

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

More information

Origin in Mathematical Logic

Origin in Mathematical Logic Lambda Calculus Origin in Mathematical Logic Foundation of mathematics was very much an issue in the early decades of 20th century. Cantor, Frege, Russel s Paradox, Principia Mathematica, NBG/ZF The Combinatory

More information

SHARING IN THE WEAK LAMBDA-CALCULUS REVISITED

SHARING IN THE WEAK LAMBDA-CALCULUS REVISITED SHARING IN THE WEAK LAMBDA-CALCULUS REVISITED TOMASZ BLANC, JEAN-JACQUES LÉVY, AND LUC MARANGET INRIA e-mail address: tomasz.blanc@inria.fr INRIA, Microsoft Research-INRIA Joint Centre e-mail address:

More information

The Dierential Lambda-Calculus

The Dierential Lambda-Calculus The Dierential Lambda-Calculus Thomas Ehrhard and Laurent Regnier Institut de Mathématiques de Luminy, C.N.R.S. U.P.R. 9016 ehrhard@iml.univ-mrs.fr and regnier@iml.univ-mrs.fr July 17, 2003 Abstract We

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

Foundations of Strong Call by Need

Foundations of Strong Call by Need Foundations of Strong Call by Need THIBAUT BALABONSKI, LRI, Université Paris-Sud, CNRS, Université Paris-Saclay PABLO BARENBAUM, Universidad Buenos Aires and IRIF, CNRS and Université Paris-Diderot EDUARDO

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

Combinators & Lambda Calculus

Combinators & Lambda Calculus Combinators & Lambda Calculus Abstracting 1/16 three apples plus two pears = five fruits concrete 3+2 = 5 abstract objects a+b = b+a a (b c) = (a b) c abstract quantities abstract operations a, b[r(a,

More information

Intersection and Singleton Type Assignment Characterizing Finite Böhm-Trees

Intersection and Singleton Type Assignment Characterizing Finite Böhm-Trees Information and Computation 178, 1 11 (2002) doi:101006/inco20022907 Intersection and Singleton Type Assignment Characterizing Finite Böhm-Trees Toshihiko Kurata 1 Department of Mathematics, Tokyo Metropolitan

More information

Strong normalization of a symmetric lambda calculus for second order classical logic

Strong normalization of a symmetric lambda calculus for second order classical logic Archive for Mathematical Logic manuscript No. (will be inserted by the editor) Strong normalization of a symmetric lambda calculus for second order classical logic YAMAGATA, yoriyuki e-mail: yoriyuki@ms.u-tokyo.ac.jp

More information

Intersection Types and Lambda Theories

Intersection Types and Lambda Theories Intersection Types and Lambda Theories M.Dezani-Ciancaglini S.Lusin Abstract We illustrate the use of intersection types as a semantic tool for showing properties of the lattice of λ-theories. Relying

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

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

STRONG NORMALIZATION OF λ Sym

STRONG NORMALIZATION OF λ Sym Logical Methods in Computer Science Vol. 13(3:34)2017, pp. 1 22 www.lmcs-online.org Submitted Mar. 11, 2016 Published Sep. 28, 2017 STRONG NORMALIZATION OF λ Sym Prop - AND λµ µ -CALCULI PÉTER BATTYÁNYI

More information

A Behavioural Model for Klop s Calculus

A Behavioural Model for Klop s Calculus Replace this file with prentcsmacro.sty for your meeting, or with entcsmacro.sty for your meeting. Both can be found at the ENTCS Macro Home Page. A Behavioural Model for Klop s Calculus Mariangiola Dezani-Ciancaglini

More information

Lambda calculus L9 103

Lambda calculus L9 103 Lambda calculus L9 103 Notions of computability L9 104 Church (1936): λ-calculus Turing (1936): Turing machines. Turing showed that the two very different approaches determine the same class of computable

More information

Elementary Affine Logic and the Call by Value Lambda Calculus

Elementary Affine Logic and the Call by Value Lambda Calculus Elementary Affine Logic and the Call by Value Lambda Calculus Paolo Coppola 1, Ugo Dal Lago 2, and Simona Ronchi Della Rocca 3 1 Università di Udine 2 Università di Bologna 3 Università di Torino Abstract.

More information

On the relations between the syntactic theories of lambda-mu-calculi.

On the relations between the syntactic theories of lambda-mu-calculi. On the relations between the syntactic theories of lambda-mu-calculi. Alexis Saurin INRIA-Futurs & École polytechnique (LIX) saurin@lix.polytechnique.fr Abstract. Since Parigot's seminal article on an

More information

EXTENDED ABSTRACT. 2;4 fax: , 3;5 fax: Abstract

EXTENDED ABSTRACT. 2;4 fax: , 3;5 fax: Abstract 1 Syntactic denitions of undened: EXTENDED ABSTRACT on dening the undened Zena Ariola 1, Richard Kennaway 2, Jan Willem Klop 3, Ronan Sleep 4 and Fer-Jan de Vries 5 1 Computer and Information Science Department,

More information

Traditional and Non Traditional lambda calculi

Traditional and Non Traditional lambda calculi Strategies July 2009 Strategies Syntax Semantics Manipulating Expressions Variables and substitutions Free and bound variables Subterms and substitution Grafting and substitution Ordered list of variables

More information

Lambda Calculus. Andrés Sicard-Ramírez. Semester Universidad EAFIT

Lambda Calculus. Andrés Sicard-Ramírez. Semester Universidad EAFIT Lambda Calculus Andrés Sicard-Ramírez Universidad EAFIT Semester 2010-2 Bibliography Textbook: Hindley, J. R. and Seldin, J. (2008). Lambda-Calculus and Combinators. An Introduction. Cambridge University

More information

Formal Methods Lecture 6. (B. Pierce's slides for the book Types and Programming Languages )

Formal Methods Lecture 6. (B. Pierce's slides for the book Types and Programming Languages ) Formal Methods Lecture 6 (B. Pierce's slides for the book Types and Programming Languages ) Programming in the Lambda-Calculus, Continued Testing booleans Recall: tru = λt. λf. t fls = λt. λf. f We showed

More information

Advanced Lambda Calculus. Henk Barendregt & Giulio Manzonetto ICIS Faculty of Science Radboud University Nijmegen, The Netherlands

Advanced Lambda Calculus. Henk Barendregt & Giulio Manzonetto ICIS Faculty of Science Radboud University Nijmegen, The Netherlands Advanced Lambda Calculus Henk Barendregt & Giulio Manzonetto ICIS Faculty of Science Radboud University Nijmegen, The Netherlands Form of the course Ordinary lecture Seminar form Exam: working out an exercise

More information

The Safe λ-calculus. William Blum. Joint work with C.-H. Luke Ong. Lunch-time meeting, 14 May Oxford University Computing Laboratory

The Safe λ-calculus. William Blum. Joint work with C.-H. Luke Ong. Lunch-time meeting, 14 May Oxford University Computing Laboratory The Safe λ-calculus William Blum Joint work with C.-H. Luke Ong Oxford University Computing Laboratory Lunch-time meeting, 14 May 2007 Overview Safety is originally a syntactic restriction for higher-order

More information

A General Type for Storage Operators

A General Type for Storage Operators A General Type for Storage Operators Karim NOUR LAMA - Equipe de Logique, Université de Chambéry 73376 Le Bourget du Lac e-mail nour@univ-savoie.fr Abstract In 1990, J.L. Krivine introduced the notion

More information

Sequent Combinators: A Hilbert System for the Lambda Calculus

Sequent Combinators: A Hilbert System for the Lambda Calculus Sequent Combinators: A Hilbert System for the Lambda Calculus Healfdene Goguen Department of Computer Science, University of Edinburgh The King s Buildings, Edinburgh, EH9 3JZ, United Kingdom Fax: (+44)

More information

Observability for Pair Pattern Calculi

Observability for Pair Pattern Calculi Observability for Pair Pattern Calculi Antonio Bucciarelli 1, Delia Kesner 2, and Simona Ronchi Della Rocca 3 1,2 Univ Paris Diderot, Sorbonne Paris Cité, PPS, UMR 7126, CNRS, Paris, France 3 Dipartimento

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

Typing λ-terms. Types. Typed λ-terms. Base Types. The Typing Relation. Advanced Formal Methods. Lecture 3: Simply Typed Lambda calculus

Typing λ-terms. Types. Typed λ-terms. Base Types. The Typing Relation. Advanced Formal Methods. Lecture 3: Simply Typed Lambda calculus Course 2D1453, 200607 Advanced Formal Methods Lecture 3: Simply Typed Lambda calculus Mads Dam KTH/CSC Some material from B. Pierce: TAPL + some from G. Klein, NICTA Typing λterms The uptyped λcalculus

More information

Optimizing Optimal Reduction: A Type Inference Algorithm for Elementary Affine Logic

Optimizing Optimal Reduction: A Type Inference Algorithm for Elementary Affine Logic Optimizing Optimal Reduction: A Type Inference Algorithm for Elementary Affine Logic Paolo Coppola Università di Udine Dip. di Matematica e Informatica Simone Martini Università di Bologna Dip. di Scienze

More information

The structural λ-calculus

The structural λ-calculus The structural λ-calculus Beniamino Accattoli and Delia Kesner PPS (CNRS and Université Paris Diderot) Abstract. Inspired by a recent graphical formalism for λ-calculus based on Linear Logic technology,

More information

3.2 Reduction 29. Truth. The constructor just forms the unit element,. Since there is no destructor, there is no reduction rule.

3.2 Reduction 29. Truth. The constructor just forms the unit element,. Since there is no destructor, there is no reduction rule. 32 Reduction 29 32 Reduction In the preceding section, we have introduced the assignment of proof terms to natural deductions If proofs are programs then we need to explain how proofs are to be executed,

More information

Classical Combinatory Logic

Classical Combinatory Logic Computational Logic and Applications, CLA 05 DMTCS proc. AF, 2006, 87 96 Classical Combinatory Logic Karim Nour 1 1 LAMA - Equipe de logique, Université de Savoie, F-73376 Le Bourget du Lac, France Combinatory

More information

Formal Methods Lecture 6. (B. Pierce's slides for the book Types and Programming Languages )

Formal Methods Lecture 6. (B. Pierce's slides for the book Types and Programming Languages ) Formal Methods Lecture 6 (B. Pierce's slides for the book Types and Programming Languages ) This Saturday, 10 November 2018, room 335 (FSEGA), we will recover the following activities: 1 Formal Methods

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

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC)

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC) University of Science and Technology of China (USTC) 09/26/2011 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?

More information

Strong Normalization through Intersection Types and Memory

Strong Normalization through Intersection Types and Memory Available online at www.sciencedirect.com Electronic Notes in Theoretical Computer Science 323 (2016) 75 91 www.elsevier.com/locate/entcs Strong Normalization through Intersection Types and Memory Antonio

More information

On some Metatheorems about FOL

On some Metatheorems about FOL On some Metatheorems about FOL February 25, 2014 Here I sketch a number of results and their proofs as a kind of abstract of the same items that are scattered in chapters 5 and 6 in the textbook. You notice

More information

Nominal Completion for Rewrite Systems with Binders

Nominal Completion for Rewrite Systems with Binders Nominal Completion for Rewrite Systems with Binders Maribel Fernández King s College London July 2012 Joint work with Albert Rubio Summary Motivations Nominal Rewriting Closed nominal rules Confluence

More information

Probabilistic Applicative Bisimulation and Call-by-Value Lam

Probabilistic Applicative Bisimulation and Call-by-Value Lam Probabilistic Applicative and Call-by-Value Lambda Calculi Joint work with Ugo Dal Lago ENS Lyon February 9, 2014 Probabilistic Applicative and Call-by-Value Lam Introduction Fundamental question: when

More information

Type Systems. Lecture 2 Oct. 27th, 2004 Sebastian Maneth.

Type Systems. Lecture 2 Oct. 27th, 2004 Sebastian Maneth. Type Systems Lecture 2 Oct. 27th, 2004 Sebastian Maneth http://lampwww.epfl.ch/teaching/typesystems/2004 Today 1. What is the Lambda Calculus? 2. Its Syntax and Semantics 3. Church Booleans and Church

More information

λ Slide 1 Content Exercises from last time λ-calculus COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification

λ Slide 1 Content Exercises from last time λ-calculus COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Content COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Toby Murray, June Andronick, Gerwin Klein λ Slide 1 Intro & motivation, getting started [1] Foundations & Principles Lambda

More information

Example. Lemma. Proof Sketch. 1 let A be a formula that expresses that node t is reachable from s

Example. Lemma. Proof Sketch. 1 let A be a formula that expresses that node t is reachable from s Summary Summary Last Lecture Computational Logic Π 1 Γ, x : σ M : τ Γ λxm : σ τ Γ (λxm)n : τ Π 2 Γ N : τ = Π 1 [x\π 2 ] Γ M[x := N] Georg Moser Institute of Computer Science @ UIBK Winter 2012 the proof

More information

Computability via the Lambda Calculus with Patterns

Computability via the Lambda Calculus with Patterns Computability via the Lambda Calculus with Patterns Bodin Skulkiat (Corresponding author) Department of Mathematics, Faculty of Science Chulalongkorn University, Bangkok, Thailand Tel: 66-89-666-5804 E-mail:

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

Komponenten- und Service-orientierte Softwarekonstruktion

Komponenten- und Service-orientierte Softwarekonstruktion Komponenten- und Service-orientierte Softwarekonstruktion Vorlesung 5: Combinatory Logic Synthesis Jakob Rehof LS XIV Software Engineering TU Dortmund Sommersemester 2015 SS 2015 J. Rehof (TU Dortmund)

More information

Light Types for Polynomial Time Computation in Lambda Calculus

Light Types for Polynomial Time Computation in Lambda Calculus Light Types for Polynomial Time Computation in Lambda Calculus Patrick Baillot 1 LIPN - UMR 7030 CNRS - Université Paris 13, F-93430 Villetaneuse, France Kazushige Terui 2 Research Institute for Mathematical

More information

Functional Database Query Languages as. Typed Lambda Calculi of Fixed Order. Gerd G. Hillebrand and Paris C. Kanellakis

Functional Database Query Languages as. Typed Lambda Calculi of Fixed Order. Gerd G. Hillebrand and Paris C. Kanellakis Functional Database Query Languages as Typed Lambda Calculi of Fixed Order Gerd G. Hillebrand and Paris C. Kanellakis Department of Computer Science Brown University Providence, Rhode Island 02912 CS-94-26

More information

Semantics with Intersection Types

Semantics with Intersection Types Semantics with Intersection Types Steffen van Bakel Department of Computing, Imperial College of Science, Technology and Medicine, 180 Queen s Gate, London SW7 2BZ, U.K., E-mail: svb@doc.ic.ac.uk (Sections

More information

Typage et déduction dans le calcul de

Typage et déduction dans le calcul de Typage et déduction dans le calcul de réécriture Benjamin Wack Encadrants : C. Kirchner, L. Liquori Deduction and computation λ-calculus [Church 40] is a simple and powerful computational model Explicit

More information

Beyond First-Order Logic

Beyond First-Order Logic Beyond First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Beyond First-Order Logic MFES 2008/09 1 / 37 FOL

More information

Proofs in classical logic as programs: a generalization of lambda calculus. A. Salibra. Università Ca Foscari Venezia

Proofs in classical logic as programs: a generalization of lambda calculus. A. Salibra. Università Ca Foscari Venezia Proofs in classical logic as programs: a generalization of lambda calculus A. Salibra Università Ca Foscari Venezia Curry Howard correspondence, in general Direct relationship between systems of logic

More information

COMP6463: λ-calculus

COMP6463: λ-calculus COMP6463: λ-calculus 1. Basics Michael Norrish Michael.Norrish@nicta.com.au Canberra Research Lab., NICTA Semester 2, 2015 Outline Introduction Lambda Calculus Terms Alpha Equivalence Substitution Dynamics

More information

Bi-rewrite Systems. Universitat Politecnica de Catalunya. Consejo Superior de Investigaciones Cientcas. Abstract

Bi-rewrite Systems. Universitat Politecnica de Catalunya. Consejo Superior de Investigaciones Cientcas. Abstract Bi-rewrite Systems Jordi Levy z and Jaume Agust x z Departament de Llenguatges i Sistemes nformatics Universitat Politecnica de Catalunya x nstitut d'nvestigacio en ntelligencia Articial Consejo Superior

More information

Modal Logic as a Basis for Distributed Computation

Modal Logic as a Basis for Distributed Computation Modal Logic as a Basis for Distributed Computation Jonathan Moody 1 jwmoody@cs.cmu.edu October 2003 CMU-CS-03-194 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 1 This material

More information

Realisability methods of proof and semantics with application to expansion

Realisability methods of proof and semantics with application to expansion Realisability methods of proof and semantics with application to expansion First Year Examination Supervisors : Professor Fairouz Kamareddine and Doctor Joe B. Wells Student : Vincent Rahli ULTRA group,

More information

An Introduction to the Lambda Calculus

An Introduction to the Lambda Calculus An Introduction to the Lambda Calculus Mayer Goldberg February 20, 2000 1 Notation and Conventions It is surprising that despite the simplicity of its syntax, the λ-calculus hosts a large body of notation,

More information

1. Propositional Calculus

1. Propositional Calculus 1. Propositional Calculus Some notes for Math 601, Fall 2010 based on Elliott Mendelson, Introduction to Mathematical Logic, Fifth edition, 2010, Chapman & Hall. 2. Syntax ( grammar ). 1.1, p. 1. Given:

More information

Type Inference Algorithms

Type Inference Algorithms Type Inference Algorithms February 19, 2009 S. Saeidi Mobarakeh ( 0559938 ) Abstract In this paper we are going to describe the Wand s type inference algorithm and we ll try to extend this algorithm with

More information