Simply Typed λ-calculus

Size: px
Start display at page:

Download "Simply Typed λ-calculus"

Transcription

1 Simply Typed λ-calculus Lecture 2 Jeremy Dawson The Australian National University Semester 2, 2017 Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

2 Outline Properties of Curry type system: Type preservation (also known as subject reduction): is typeability preserved by β-reduction? Context lemmas: how does typing depend on contexts, what changes to contexts that preserve typing. Substitution lemma: is a typeable term (in a given context) also typeable after substitution? Subterm lemma: is a subterm of a typeable term also typeable? Church-Rosser property for typed λ-calculus. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

3 Type preservation Type preservation, in general (given any type system), relates a program execution to its type. Why is it important? If f is, say, a factorial function, taking a natural number to to a natural number, then we would like f to satisfy: f(n) evaluates to a natural number, for any natural number n. If the type system has the type preservation property, then one needs to check the type of f once, and be convinced that f(n) always produces integer. This is the essence of static analysis in programming language. Check programs at compile time and don t need to worry about its runtime behaviours. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

4 Curry type system Γ λcu x : τ axiom,if (x : τ) Γ Γ,x : τ 1 λcu M : τ 2 Γ λcu (λx.m) : τ 1 τ 2 intro Γ λcu M : τ τ Γ λcu N : τ Γ λcu (M N) : τ elim Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

5 Substitution (review) x[x := N] N y[x := N] y; provided x y (P Q)[x := N] (P[x := N]) (Q[x := N]) (λy.p)[x := N] λy.(p[x := N]) provided y x (λx.p)[x := N] (λx.p) Note: assume Barendregt s variable convention: bound names are always chosen to be distinct from free names. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

6 β-reduction (review) Axiom: (λx.m) N β M[x := N] M β N M P β N P M β N P M β P N M β N λx.m β λx.n Note that β-reduction can be applied in any subterm. M β N means M can be reduced to N using zero or more β-reduction steps. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

7 Type preservation for Curry type system Type preservation (subject reduction) Suppose M β M. Then Γ λcu M : τ implies Γ λcu M : τ. Problems: Need to consider reduction in subterms. Need also to prove that substitution preserves typing, because β-reduction uses substitutions. To prove the substitution lemma, we need a series of lemmas about properties of typing context in typing derivation. Dealing with bound variables, freshness constraints etc in inductive proofs is messy (we ll see one example). Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

8 Context lemmas: weakening Context weakening Let Γ be a context and let Γ be another context such that Γ Γ. Then Γ λcu M : τ implies Γ λcu M : τ. Proof: By induction on the structure of the derivation of Γ λcu M : τ. A problem: suppose M = λx.n, τ τ 1 τ 2,and x appears in Γ, say (x : σ) Γ and σ τ 1. Γ,x : τ 1 N : τ 2 Γ (λx.n) : τ 1 τ 2 intro Γ,x : τ 1 N : τ 2 Γ (λx.n) : τ 1 τ 2 intro This is not valid because a variable x has two distinct declarations in Γ,x : τ 1. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

9 Context lemmas: weakening (continued) Need to rename x in (λx.n) to a fresh variable, say z. Γ,z : τ 1 N[x := z] : τ 2 Γ (λz.n[x := z]) : τ 1 τ 2 intro But how do we know Γ,z : τ 1 N[x := z] : τ 2 is derivable? Need to prove this separately as a lemma Lemma (Renaming) If Γ,x : σ M : τ is derivable in λ Cu and y is a fresh variable not appearing anywhere in Γ and M, then Γ,y : σ M[x := y] : τ is derivable in λ Cu with exactly the same deduction steps. Proof: left as an exercise. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

10 Context lemmas: free variables Recall the definition of free variables in a term: FV(x) = {x} FV(M N) = FV(M) FV(N) FV(λx.M) = FV(M)\{x} Given a context Γ = {x 1 : τ 1,...,x n : τ n }, we denote by dom(γ) the domain of Γ, i.e., the set dom(γ) = {x 1,...,x n }. Let V be a set of variables. The restriction of Γ to V is defined as: Γ V = {x : σ x V and (x : σ) Γ} Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

11 Context lemmas: free variables If Γ M : τ is derivable, then the only relevant declarations in Γ are those that occur free in M. Free-variables lemma 1 If Γ λcu M : σ then FV(M) dom(γ). 2 If Γ λcu M : σ then Γ FV(M) λcu M : σ. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

12 Substitution lemma We are now ready to prove the following substitution lemma: Lemma (Substitution) Suppose Γ,x : σ λcu M : τ and Γ λcu N : σ. Then Γ λcu M[x := N] : τ. Notice that M[x := N] is derivable without x : σ. This says that replacing a free variable x with a term of the same type preserves typeability. Proof by induction on the structure of the derivation (OR, on the size or structure of the term M) Base cases: M = x and τ = σ, then M[x := N] is N M = y, y x, and y : τ Γ, then M[x := N] is y Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

13 Substitution lemma : one inductive case Inductive hypothesis: assume it is true for all smaller terms M (OR, assume it is true for all earlier steps in showing that Γ,x : σ M : τ) Example case: M is an application M M, so the last rule in its typing deduction must be Γ,x : σ λcu M : τ τ Γ,x : σ λcu M : τ Γ,x : σ λcu (M M ) : τ elim By induction, Γ λcu M[x := N] : τ τ and Γ λcu M [x := N] : τ. Then Γ λcu M[x := N] : τ τ Γ λcu M [x := N] : τ Γ λcu (M[x := N]) (M [x := N]) : τ elim And as (M M )[x := N] (M[x := N]) (M [x := N]) (by definition of...[x := N]) we have (M M )[x := N] : τ, as required Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

14 Type preservation (subject reduction) Finally, the main property we want to prove (let s give it a theorem status to say it s important): Theorem (Subject reduction) Suppose M β M. Then Γ λcu M : τ implies Γ λcu M : τ. Proof by induction on the size of M, OR on the structure of the proof that M β M base case in definition of β : (λx.m) N β M[x := N], the typing deduction of (λx.m) N : τ must look like this; Γ,x : σ M : τ intro Γ λx.m : σ τ Γ (λx.m) N : τ Γ N : σ elim then Γ M[x := N] : τ, by the Substitution Lemma. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

15 Proof of Subject reduction : one inductive case Inductive hypothesis: assume it is true for all smaller terms M (OR, assume it is true for all earlier steps in showing that M β M ) One example case (one rule in definition of β ): M β N M P β N P Given M P : τ, we want to show N P : τ The derivation of M P : τ must conclude with Γ λcu M : σ τ Γ λcu P : σ Γ λcu (M P) : τ elim so, by induction, have N : σ τ, and Γ λcu N : σ τ Γ λcu P : σ Γ λcu (N P) : τ elim Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

16 Church-Rosser property Recall the Church-Rosser property for untyped λ-calculus: If M β N 1 and M β N 2 then for some N 3, one has N 1 β N 3 and N 2 β N 3. In picture: β N 1 M β N 2 β N 3 β Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

17 Church-Rosser for typeable terms Suppose M is a closed term of type τ (typeable in λ Cu ) and M β N 1 and M β N 2. Does there exist a term N 3 such that N 3 has type τ and N 1 β N 3 and N 2 β N 3? Thanks to subject reduction, the answer is yes. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

18 Subterm typeability If a term M is typeable, does it follow that each subterm of M is typeable? Subterm typeability Let M be a subterm of M. If Γ λcu M : σ then Γ λcu M : σ for some Γ and σ. Note that σ may not be equal to σ. Also Γ need not be related to Γ. Useful to show untypeability of a term. Example: to show (λx.x x) (λy.y y) untypeable it is enough to show (λx.x x) untypeable. Is the converse true? That is, if every strict subterm of M is typeable, does it follow that M is typeable? (Exercise) Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

19 Subject expansion Consider the reverse of subject reduction. Suppose N has type τ and M β N. Does it follow that M also has type τ? Unfortunately, this is not always true. Consider this: N = λxλy.y M = (λzλxλy.y) (λp.p p) We have M β N but M is untypeable (why?) A consequence of this: typeability is not preserved by β-equality = β. Jeremy Dawson (ANU) COMP4630,Lecture 2 Semester 2, / 19

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

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

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

Functional Programming with Coq. Yuxin Deng East China Normal University

Functional Programming with Coq. Yuxin Deng East China Normal University Functional Programming with Coq Yuxin Deng East China Normal University http://basics.sjtu.edu.cn/ yuxin/ September 10, 2017 Functional Programming Y. Deng@ECNU 1 Reading materials 1. The Coq proof assistant.

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

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

Alonzo Church ( ) Lambda Calculus. λ-calculus : syntax. Grammar for terms : Inductive denition for λ-terms Alonzo Church (1903-1995) 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...

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

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

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

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

THE A-CALCULUS IS c-incomplete

THE A-CALCULUS IS c-incomplete THE JOURNAL OF SYSTOLIc LoGIc Volume 39, Number 2, June 1974 THE A-CALCULUS IS c-incomplete G. D. PLOTKIN?1. Introduction. The w-rule in the A-calculus (or, more exactly, the AK-fg, 7 calculus) is MZ =

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

Computation Theory, L 9 116/171

Computation Theory, L 9 116/171 Definition. A partial function f is partial recursive ( f PR) ifitcanbebuiltupinfinitelymanysteps from the basic functions by use of the operations of composition, primitive recursion and minimization.

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

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

Tutorial on Semantics Part I

Tutorial on Semantics Part I Tutorial on Semantics Part I Basic Concepts Prakash Panangaden 1 1 School of Computer Science McGill University on sabbatical leave at Department of Computer Science Oxford University Fields Institute,

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

Lambda Calculus with Types. Henk Barendregt ICIS Radboud University Nijmegen The Netherlands

Lambda Calculus with Types. Henk Barendregt ICIS Radboud University Nijmegen The Netherlands Lambda Calculus with Types Henk Barendregt ICIS Radboud University Nijmegen The Netherlands New book Cambridge University Press / ASL Perspectives in Logic, 2011 Lambda Calculus with Types (698 pp) Authors:

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

Models of Computation,

Models of Computation, Models of Computation, 2010 1 The Lambda Calculus A brief history of mathematical notation. Our notation for numbers was introduced in the Western World in the Renaissance (around 1200) by people like

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

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

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

Local Representations of Binding

Local Representations of Binding Local Representations of Binding Randy Pollack LFCS, University of Edinburgh Joint work with James McKinna, Christian Urban, Arthur Charguéraud, Brian Aydemir, Benjamin Pierce, Stephanie Weirich Version

More information

Resource control and strong normalisation

Resource control and strong normalisation esource control and strong normalisation Silvia Ghilezan, Jelena Ivetic, Pierre Lescanne, Silvia Likavec To cite this version: Silvia Ghilezan, Jelena Ivetic, Pierre Lescanne, Silvia Likavec. esource control

More information

TYPED LAMBDA CALCULI. Andrzej S. Murawski University of λeicester.

TYPED LAMBDA CALCULI. Andrzej S. Murawski University of λeicester. TYPED LAMBDA CALCULI Andrzej S. Murawski University of λeicester http://www.cs.le.ac.uk/people/amurawski/mgs2011-tlc.pdf THE COURSE The aim of the course is to provide an introduction to the lambda calculus

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

An Implicit Characterization of PSPACE

An Implicit Characterization of PSPACE An Implicit Characterization of PSPACE Marco Gaboardi Dipartimento di Scienze dell Informazione, Università degli Studi di Bologna - Mura Anteo Zamboni 7, 40127 Bologna, Italy, gaboardi@cs.unibo.it and

More information

Lambda Calculus. Week 12 The canonical term models for λ. Henk Barendregt, Freek Wiedijk assisted by Andrew Polonsky

Lambda Calculus. Week 12 The canonical term models for λ. Henk Barendregt, Freek Wiedijk assisted by Andrew Polonsky Lambda Calculus Week 12 The canonical term models for λ Henk Barendregt, Freek Wiedijk assisted by Andrew Polonsky Two version of λ Curry version (type assignment). Λ Γ (A) {M Λ Γ M : A} with (axiom) Γ

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

CMSC 336: Type Systems for Programming Languages Lecture 10: Polymorphism Acar & Ahmed 19 February 2008

CMSC 336: Type Systems for Programming Languages Lecture 10: Polymorphism Acar & Ahmed 19 February 2008 CMSC 336: Type Systems for Programming Languages Lecture 10: Polymorphism Acar & Ahmed 19 February 2008 Contents 1 Polymorphism 1 2 Polymorphic λ-calculus: Syntax 1 3 Static Semantics 2 4 Dynamic Semantics

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

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

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

Introduction to Type Theory

Introduction to Type Theory Introduction to Type Theory Herman Geuvers Radboud University Nijmegen & Technical University Eindhoven, The Netherlands July 8, 2008 1 Overview These notes comprise the lecture Introduction to Type Theory

More information

ADVANCED CALCULUS - MTH433 LECTURE 4 - FINITE AND INFINITE SETS

ADVANCED CALCULUS - MTH433 LECTURE 4 - FINITE AND INFINITE SETS ADVANCED CALCULUS - MTH433 LECTURE 4 - FINITE AND INFINITE SETS 1. Cardinal number of a set The cardinal number (or simply cardinal) of a set is a generalization of the concept of the number of elements

More information

Logic and Probability Lecture 3: Beyond Boolean Logic

Logic and Probability Lecture 3: Beyond Boolean Logic Logic and Probability Lecture 3: Beyond Boolean Logic Wesley Holliday & Thomas Icard UC Berkeley & Stanford August 13, 2014 ESSLLI, Tübingen Wesley Holliday & Thomas Icard: Logic and Probability, Lecture

More information

Lecture Notes on Subject Reduction and Normal Forms

Lecture Notes on Subject Reduction and Normal Forms Lecture Notes on Subject Reduction and Normal Forms 15-814: Types and Programming Languages Frank Pfenning Lecture 4 September 13, 2018 1 Introduction In the last lecture we proved some key aspect of a

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

A call-by-name lambda-calculus machine

A call-by-name lambda-calculus machine A call-by-name lambda-calculus machine Jean-Louis Krivine University Paris VII, C.N.R.S. 2 place Jussieu 75251 Paris cedex 05 (krivine@pps.jussieu.fr) Introduction We present, in this paper, a particularly

More information

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison 1 Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison Amy Felty University of Ottawa July 13, 2010 Joint work with Brigitte Pientka, McGill University 2 Comparing Systems We focus on

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

Spring 2016 Program Analysis and Verification. Lecture 3: Axiomatic Semantics I. Roman Manevich Ben-Gurion University

Spring 2016 Program Analysis and Verification. Lecture 3: Axiomatic Semantics I. Roman Manevich Ben-Gurion University Spring 2016 Program Analysis and Verification Lecture 3: Axiomatic Semantics I Roman Manevich Ben-Gurion University Warm-up exercises 1. Define program state: 2. Define structural semantics configurations:

More information

2.2 Separable Equations

2.2 Separable Equations 2.2 Separable Equations Definition A first-order differential equation that can be written in the form Is said to be separable. Note: the variables of a separable equation can be written as Examples Solve

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

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

Lecture 17: Floyd-Hoare Logic for Partial Correctness

Lecture 17: Floyd-Hoare Logic for Partial Correctness Lecture 17: Floyd-Hoare Logic for Partial Correctness Aims: To look at the following inference rules Page 1 of 9 sequence; assignment and consequence. 17.1. The Deduction System for Partial Correctness

More information

The Safe Lambda Calculus

The Safe Lambda Calculus The Safe Lambda Calculus William Blum Linacre College Submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy Oxford University Computing Laboratory Michaelmas 2008 Abstract

More information

TERMS FOR NATURAL DEDUCTION, SEQUENT CALCULUS AND CUT ELIMINATION IN CLASSICAL LOGIC

TERMS FOR NATURAL DEDUCTION, SEQUENT CALCULUS AND CUT ELIMINATION IN CLASSICAL LOGIC TERMS FOR NATURAL DEDUCTION, SEQUENT CALCULUS AND CUT ELIMINATION IN CLASSICAL LOGIC SILVIA GHILEZAN Faculty of Engineering, University of Novi Sad, Novi Sad, Serbia e-mail address: gsilvia@uns.ns.ac.yu

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

Encoding Graph Transformation in Linear Logic

Encoding Graph Transformation in Linear Logic Encoding Graph Transformation in Linear Logic Paolo Torrini joint work with Reiko Heckel pt95@mcs.le.ac.uk University of Leicester GTLL p. 1 Graph Transformation Graph Transformation Systems (GTS) high-level

More information

On Upper Bounds on the Church-Rosser Theorem

On Upper Bounds on the Church-Rosser Theorem On Upper Bounds on the Church-Rosser Theorem Ken-etsu Fujita Department of Computer Science Gunma University Kiryu, Japan fujita@cs.gunma-u.ac.jp The Church-Rosser theorem in the type-free λ-calculus is

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

Math 324 Summer 2012 Elementary Number Theory Notes on Mathematical Induction

Math 324 Summer 2012 Elementary Number Theory Notes on Mathematical Induction Math 4 Summer 01 Elementary Number Theory Notes on Mathematical Induction Principle of Mathematical Induction Recall the following axiom for the set of integers. Well-Ordering Axiom for the Integers If

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

Comparing Cubes of Typed and Type Assignment Systems

Comparing Cubes of Typed and Type Assignment Systems Comparing Cubes of Typed and Type Assignment Systems (Annals of Pure and Applied Logic, 86(3):267-303, 1997) Steffen van Bakel 1, Luigi Liquori 2, Simona Ronchi della Rocca 2, and Paweł Urzyczyn 3 1 Department

More information

Type Systems as a Foundation for Reliable Computing

Type Systems as a Foundation for Reliable Computing Type Systems as a Foundation for Reliable Computing Robert Harper Carnegie Mellon University Summer School on Reliable Computing University of Oregon July, 2005 References These lectures are based on the

More information

MATH 324 Summer 2011 Elementary Number Theory. Notes on Mathematical Induction. Recall the following axiom for the set of integers.

MATH 324 Summer 2011 Elementary Number Theory. Notes on Mathematical Induction. Recall the following axiom for the set of integers. MATH 4 Summer 011 Elementary Number Theory Notes on Mathematical Induction Principle of Mathematical Induction Recall the following axiom for the set of integers. Well-Ordering Axiom for the Integers If

More information

Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3.

Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3. Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3. Elena Machkasova Contents 1 Introduction and Related Work 1 1.1 Introduction..............................

More information

Equivalence of Algebraic λ -calculi extended abstract

Equivalence of Algebraic λ -calculi extended abstract Equivalence of Algebraic λ -calculi extended abstract Alejandro Díaz-Caro LIG, Université de Grenoble, France Alejandro.Diaz-Caro@imag.fr Christine Tasson CEA-LIST, MeASI, France Christine.Tasson@cea.fr

More information

Variants of the basic calculus of constructions

Variants of the basic calculus of constructions Journal of Applied Logic 2 (2004) 191 217 www.elsevier.com/locate/jal Variants of the basic calculus of constructions M.W. Bunder a,1, Jonathan P. Seldin b,,2 a School of Mathematics and Applied Statistics,

More information

Graph models for the untyped λ-calculus

Graph models for the untyped λ-calculus Graph models for the untyped λ-calculus Kelley Philip van Evert On the cover: a picture I drew of Dana Scott. Graph models for the untyped λ-calculus Kelley Philip van Evert 4046854 Bachelor s thesis in

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

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

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

Spring 2015 Program Analysis and Verification. Lecture 4: Axiomatic Semantics I. Roman Manevich Ben-Gurion University

Spring 2015 Program Analysis and Verification. Lecture 4: Axiomatic Semantics I. Roman Manevich Ben-Gurion University Spring 2015 Program Analysis and Verification Lecture 4: Axiomatic Semantics I Roman Manevich Ben-Gurion University Agenda Basic concepts of correctness Axiomatic semantics (pages 175-183) Hoare Logic

More information

1 Strict local optimality in unconstrained optimization

1 Strict local optimality in unconstrained optimization ORF 53 Lecture 14 Spring 016, Princeton University Instructor: A.A. Ahmadi Scribe: G. Hall Thursday, April 14, 016 When in doubt on the accuracy of these notes, please cross check with the instructor s

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

Justifying Algorithms for βη-conversion

Justifying Algorithms for βη-conversion Justifying Algorithms for βη-conversion Healfdene Goguen AT&T Labs, 180 Park Ave., Florham Park NJ 07932 USA hhg@att.com. Abstract. Deciding the typing judgement of type theories with dependent types such

More information

CSE 505, Fall 2005, Midterm Examination 8 November Please do not turn the page until everyone is ready.

CSE 505, Fall 2005, Midterm Examination 8 November Please do not turn the page until everyone is ready. CSE 505, Fall 2005, Midterm Examination 8 November 2005 Please do not turn the page until everyone is ready. Rules: The exam is closed-book, closed-note, except for one side of one 8.5x11in piece of paper.

More information

Mechanizing a Decision Procedure for Coproduct Equality in Twelf

Mechanizing a Decision Procedure for Coproduct Equality in Twelf Mechanizing a Decision Procedure for Coproduct Equality in Twelf Arbob Ahmad (applying to PhD programs this fall!) Dan Licata Robert Harper Carnegie Mellon University Dan Licata WMM 2007...1 Equality Equality

More information

Introduction to lambda calculus Part 2

Introduction to lambda calculus Part 2 Introduction to lambda calculus Part 2 Antti-Juhani Kaijanaho 2017-01-24... 1 Untyped lambda calculus 1.1 Syntax... x, y, z Var t, u Term t, u ::= x t u λx t... In this document, I will be using the following

More information

Strong Normalization with Singleton Types

Strong Normalization with Singleton Types Electronic Notes in Theoretical Computer Science 70 No 1 (2002) URL: http://wwwelseviernl/locate/entcs/volume70html 19 pages Strong Normalization with Singleton Types Judicaël Courant 1 LRI, CNRS UMR 8623

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

Characterizing Polynomial and Exponential Complexity Classes in Elementary Lambda-Calculus

Characterizing Polynomial and Exponential Complexity Classes in Elementary Lambda-Calculus Characterizing Polynomial and Exponential Complexity Classes in Elementary Lambda-Calculus Patrick Baillot 1, Erika De Benedetti 2, and Simona Ronchi Della Rocca 2 1 CNRS, ENS de Lyon, INRIA, UCBL, Université

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

Lambda-Calculus (cont): Fixpoints, Naming. Lecture 10 CS 565 2/10/08

Lambda-Calculus (cont): Fixpoints, Naming. Lecture 10 CS 565 2/10/08 Lambda-Calculus (cont): Fixpoints, Naming Lecture 10 CS 565 2/10/08 Recursion and Divergence Consider the application: Ω ((λ x. (x x)) (λ x. (x x))) Ω evaluates to itself in one step. It has no normal

More information

1. each λ-variable is a λρ-term, called atom or atomic term, 2. if M and N are λρ-term then (MN) is a λρ-term called application,

1. each λ-variable is a λρ-term, called atom or atomic term, 2. if M and N are λρ-term then (MN) is a λρ-term called application, Yuichi Komori Arato Cho λρ-calculus abstract. In [K02], one of the authors introduced the system λρ-calculus and stated without proof that the strong normalization theorem hold. We have discovered an elegant

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

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

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

Topic 13 Notes Jeremy Orloff

Topic 13 Notes Jeremy Orloff Topic 13 Notes Jeremy Orloff 13 Analytic continuation and the Gamma function 13.1 Introduction In this topic we will look at the Gamma function. This is an important and fascinating function that generalizes

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

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

Lecture 14 Rosser s Theorem, the length of proofs, Robinson s Arithmetic, and Church s theorem. Michael Beeson

Lecture 14 Rosser s Theorem, the length of proofs, Robinson s Arithmetic, and Church s theorem. Michael Beeson Lecture 14 Rosser s Theorem, the length of proofs, Robinson s Arithmetic, and Church s theorem Michael Beeson The hypotheses needed to prove incompleteness The question immediate arises whether the incompleteness

More information

Legendre s Equation. PHYS Southern Illinois University. October 18, 2016

Legendre s Equation. PHYS Southern Illinois University. October 18, 2016 Legendre s Equation PHYS 500 - Southern Illinois University October 18, 2016 PHYS 500 - Southern Illinois University Legendre s Equation October 18, 2016 1 / 11 Legendre s Equation Recall We are trying

More information

Decidable structures between Church-style and Curry-style

Decidable structures between Church-style and Curry-style Decidable structures between Church-style and Curry-style Ken-etsu Fujita 1 and Aleksy Schubert 2 1 Gunma University Tenjin-cho 1-5-1, Kiryu 376-8515, Japan fujita@cs.gunma-u.ac.jp 2 The University of

More information

FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES

FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES a dissertation submitted to the department of computer science and the committee on graduate studies of stanford university in

More information

Solving Differential Equations Using Power Series

Solving Differential Equations Using Power Series LECTURE 25 Solving Differential Equations Using Power Series We are now going to employ power series to find solutions to differential equations of the form (25.) y + p(x)y + q(x)y = 0 where the functions

More information

Solving Differential Equations Using Power Series

Solving Differential Equations Using Power Series LECTURE 8 Solving Differential Equations Using Power Series We are now going to employ power series to find solutions to differential equations of the form () y + p(x)y + q(x)y = 0 where the functions

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

The Safe Lambda Calculus

The Safe Lambda Calculus The Safe Lambda Calculus William Blum Linacre College Submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy Oxford University Computing Laboratory Michaelmas 2008 Abstract

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

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

Church and Curry: Combining Intrinsic and Extrinsic Typing

Church and Curry: Combining Intrinsic and Extrinsic Typing Church and Curry: Combining Intrinsic and Extrinsic Typing Frank Pfenning Dedicated to Peter Andrews on the occasion of his retirement Department of Computer Science Carnegie Mellon University April 5,

More information

HORSes: format, termination and confluence

HORSes: format, termination and confluence HORSes: format, termination and confluence Jean-Pierre Jouannaud INRIA-LIAMA and singhua Software Chair Joint on-going work with Jianqi Li School of Software, singhua University Project CoqLF NList Cross-discipline

More information

Coherence and Transitivity of Subtyping as Entailment

Coherence and Transitivity of Subtyping as Entailment Coherence and Transitivity of Subtyping as Entailment GIUSEPPE LONGO, LIENS(CNRS) and DMI, Ecole Normale Supérieure, 45 rue d Ulm, 75005 Paris, France E-mail: longo@dmiensfr KATHLEEN MILSTED, NET, France

More information

FORMAL SYSTEMS: COMBINATORY LOGIC

FORMAL SYSTEMS: COMBINATORY LOGIC FORMAL SYSTEMS: COMBINATORY LOGIC AND λ-calculus Andrew R. Plummer Department of Linguistics The Ohio State University 30 Sept., 2009 OUTLINE 1 INTRODUCTION 2 APPLICATIVE SYSTEMS 3 USEFUL INFORMATION COMBINATORY

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