Lecture 2: Self-interpretation in the Lambda-calculus

Size: px
Start display at page:

Download "Lecture 2: Self-interpretation in the Lambda-calculus"

Transcription

1 Lecture 2: Self-interpretation in the Lambda-calculus H. Geuvers Nijmegen, NL 21st Estonian Winter School in Computer Science Winter 2016 H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 1 / 31

2 Outline Self-interpretation in the Lambda Calculus Self-interpretation in the Lambda Calculus H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 2 / 31

3 More on data types A data type D is a set with some operations (functions) on it. An k-ary operation is a function f : D k D. Thereby a 0-ary operation c : D 0 D is identified with a c D. A datatype is determined by its operations on D: c 1,..., c k0 : D 0 D = D f1 1,..., fk 1 1 : D 1 D f1 2,..., fk 2 2 : D 2 D... Nat has z : Nat, s : Nat Nat. Tree has l : Tree, j : Tree 2 Tree H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 4 / 31

4 Self-interpretation in the Lambda Calculus Defining functions on data types in the lambda-calculus F λ-defines the function f : N N if f (n) = F n for all n: f N N F Λ Λ Can we enode the λ-calculus in itself? F λ-defines the function f : Λ Λ if f (M) = F M M Λ. f Λ Λ for all Λ F Λ Is just the identity? Why is this useful? H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 5 / 31

5 Self-interpretation in the Lambda Calculus Defining functions on codes of lambda-terms Some functions f : Λ Λ can only be defined on codes of terms, not on terms. So we will need to talk about codes. f Λ Λ F Λ Λ Example. There is no λ-term F such that F (M N) = M for all M, N There is a λ-term F such that F M N = M for all M, N. (With a suitable encoding.) We also have an evaluator E: E M = M H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 6 / 31

6 Packing and unpacking λ-terms Given M 1,..., M k, define Define U k i, with 1 i k by M 1,..., M k := λz.z M 1... M k U k i := λx 1... x k.x i Then U k i M 1... M k = M i M 1,..., M k U k i = U k i M 1... M k = M i Note that K = U 2 1 H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 7 / 31

7 Second encoding of data types (Böhm-Piperno-Guerini) Consider the data type D with c : D, f : D D, g : D 2 D The Böhm-Piperno-Guerini coding (also denoted by t ) is c = λe.e U 3 1 e f (t) = λe.e U 3 2 t e g(t 1, t 2 ) = λe.e U 3 3 t 1 t 2 e Proposition. The constructors (c, f, g) can be λ-defined: There are lambda terms F, G such that Proof. Take F t = f (t) G t 1 t 2 = g(t 1, t 2 ) F := λx e.e U 3 2 x e G := λx y e.e U 3 3 x y e. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 8 / 31

8 Recursion Self-interpretation in the Lambda Calculus Theorem. Given A 1, A 2, A 3 Λ there is an H Λ such that Proof. Try H = B 1, B 2, B 3. H c = A 1 H H( f (t) ) = A 2 t H H( g(t 1, t 2 ) ) = A 3 t 1 t 2 H H c = B 1, B 2, B 3 c = c B 1, B 2, B 3 = B 1, B 2, B 3 U 3 1 B 1, B 2, B 3 = B 1 B 1, B 2, B 3 = A 1 B 1, B 2, B 3 if B 1 := λz.a 1 z = A 1 H H f (t) = B 1, B 2, B 3 U 3 2 t B 1, B 2, B 3 = B 2 t B 1, B 2, B 3 = A 2 t H if B 2 := λx z.a 2 x z H g(t 1, t 2 ) = A 3 t 1 t 2 H if B 3 := λx y z.a 3 xy z. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 9 / 31

9 Data type for coding lambda terms To encode λ-terms we consider the data type D with var : app : abs : D D D D D D D This data types is a bit strange: there is no base case. It is a priori unclear how to encode the λ-terms in this data type. How to encode the variable binding? (Later slide.) Like before, we can define the constructors Var, App, Abs: Var := λx e.e U 3 1 x e App := λx y e.e U 3 2 x y e Abs := λx e.e U 3 3 x e H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 10 / 31

10 Recursion for the lambda terms data type Like before, we have a recursion theorem: Theorem I. Given A 1, A 2, A 3 Λ there is an H Λ such that H(Var x) = A 1 x H H(App x y) = A 2 x y H H(Abs x) = A 3 x H Proof. Take H = B 1, B 2, B 3 with B 1 := λx z.a 1 x z B 2 := λx y z.a 2 xy z B 3 := λx z.a 3 x z. Then the equations hold indeed. (Exercise: Check this.). H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 11 / 31

11 Coding of lambda terms Coding lambda terms M M Definition (Mogensen) The coding of λ-terms inside the λ-calculus is defined as follows. x := Var x MN := App M N λx.m := Abs (λx. M ) A variable x is encoded using x itself and abstraction λx. is encoded using the same abstraction λx.. Note: coding is not λ-definable: there is no term C such that C M = M for all M. The reverse operation, evaluation, is λ-definable. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 12 / 31

12 Self-interpretation Theorem. There exists a λ-term E (evaluator) such that for all M Λ E M = M Proof. By recursion we can find an E such that Then E(Var x) = x E(App x y) = E x (E y) E(Abs x) = λz.e (x z) E( x ) = E(Var x) = x E( MN ) = E(App M N ) = E M (E N ) = MN E( λx.m ) = E(Abs(λx. M )) = λx.e M = λx.m. Filling in the details of E one has (writing C := λx y z.x z y) E = K, S, C. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 13 / 31

13 Why is this encoding so cool? There are many encoding of Λ in itself. Why is this one so nice? Older ones all go through a coding of λ-terms as numbers: : Λ N Λ. This one is direct, uses λ for λ-abstraction. E M M, also for terms with free variables. E = K, S, C, the initials of S.C. Kleene, one of the founders of the subject! M 1 α M 2 M 1 α M 2. M 1 α M 2 M 1 β M 2. One can define a term R with R M N, if M has N as normal form. There is a Second Fixed Point Theorem (later) H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 14 / 31

14 Recursion for lambda terms using the encoding We can state the recursion theorem for the encoded lambda terms slightly differently, as follows. Theorem II. Given A 1, A 2, A 3 Λ there is an H Λ such that H x = A 1 x H H M N = A 2 M N H H λx.m = A 3 (λx. M ) H Proof. According to Theorem I, there is an H satisfying H(Var x) = A 1 x H H(App x y) = A 2 x y H H(Abs x) = A 3 x H These equations immediately imply the ones of the statement of Theorem II (check this!), so the same H suffices.. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 15 / 31

15 Application 1 Self-interpretation in the Lambda Calculus If you see someone coming out of arrivals in an airport, you cannot determine where he/she comes from. Similarly, there is no F such that for all X, Y Λ F (X Y ) = X (Given the outcome of applying a function on an argument, there is no way we can determine the function that produced this outcome.) Proposition. There exists an F i Λ, i {1, 2} such that F i X 1 X 2 = X i. Proof. We do this for i = 1. By the Recursion Theorem II, there exists F 1 s.t. F 1 ( X 1 X 2 ) = A 2 X 1 X 2 F 1 = X 1, taking A 2 = U 3 1. This suffices. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 16 / 31

16 Second fixed point theorem Lemma. There exists a term Num Λ such that for all M Λ Num M = β Proof. Use recursion (Theorem I) for the lambda calculus data type with M A 1 x N = App Var (Var x) A 2 m n N = App (App App (N m))(n n) A 3 m N = App Abs (Abs (λx.n(m x))) Second fixed point theorem. For all F there is an X with F X = β X Proof. Let W := λz.f (App z(num z)) and X := W W. Then X = W W = F (App W (Num W ) = F (App W W ) = F W W = F X. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 17 / 31

17 Application 2 Self-interpretation in the Lambda Calculus Self-modifying programs For a given T (the program transformer) there exists a program P such that P c k = c k+1 if k is even, = T P c k otherwise. On even inputs, P performs a standard operation (adding 1) On odd inputs, the program P first modifies its own code using T. To find P, apply the second fixed-point theorem to F := λp x.if (Even x) then (x + 1) else(t p x) H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 18 / 31

18 Lambda-terms themselves are black boxes There is no λ-term F such that F (M N) = M for all M, N There is no λ-term F such that F (M N) = N for all M, N On the other hand, we can compute with the codes of λ-terms There is a λ-term F such that F M N = M for all M, N. There is a λ-term F such that F M N = N for all M, N. We also have an evaluator E: E M = M H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 20 / 31

19 Analogy with programming program text p Text inspect, edit,... compiler executable ˆp Black box input/output ( call ) pass around p : In ˆp Out H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 21 / 31

20 Universal programmable machine Specification of a universal (programmable) machine U: p : U ˆp(x) x Reflection over the programs / programming language: What functions (programs) can we write on program text? H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 22 / 31

21 Programs about programs Examples of programs one can write p : M 1 true if p contains a while false if p contains no while p : M 2 true if p 1000 false if p > 1000 What about this?? p : M 3 true if ˆp halts on all inputs false if ˆp diverges on some input H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 23 / 31

22 The Halting problem is undecidable Theorem It is impossible to write a program H with the following specification p : H true if ˆp halts on x false if ˆp diverges on x x The undecidability of the Halting Problem was first proven by Turing, for his Turing machines. We will prove it for the λ-calculus. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 24 / 31

23 Remember recursion for lambda terms using encoding Theorem II. Given A 1, A 2, A 3 Λ there is an H Λ such that Example There is a λ-term C satisfying H x = A 1 x H H M N = A 2 M N H H λx.m = A 3 (λx. M ) H C x = c 0 C M N = c 1 C λx.m = c 2 Proof Just take A 1 := λxy.c 0, A 2 := λxyz.c 1 and A 3 := λxy.c 2. Exercise: Write a function R that checks whether a code of a term is a redex. (So: R M = T if M is a redex and R M = F if M is not a redex.) H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 25 / 31

24 We need to compute with codes Recall that T = λx y.x and F = λx y.y. The following are impossible to define with λ-terms themselves. There is no term G satisfying G M = T if M has a normal form G M = F if M has no normal form There is no term H (compare the Halting problem) satisfying H M N = T if M N has a normal form H M N = F if M N has no normal form That these are impossible is not surprising: we can t look inside a black box. What if we recast these question with coded λ-terms? H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 26 / 31

25 The Halting problem for λ-calculus The Halting problem is undecidable (λ-calculus version): Theorem There is no term H satisfying H M N = T if M N has a normal form H M N = F if M N has no normal form Proof Suppose H exists, Consider Then Q := λx.h x x Ω T Q Q = H Q Q Ω T { TΩ T = Ω if Q Q has a normal form = FΩ T = T if Q Q has no normal form Contradiction. So H doesn t exist. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 27 / 31.

26 The Blank tape problem for λ-calculus Theorem There is no term B satisfying B M = T if M has a normal form B M = F if M has no normal form Proof Suppose B exists, Consider Q := λx.b x Ω T By the second fixed point theorem, there is a R such that Q R = R, that is B R Ω T = R. Now we have R = B R Ω T = T Ω T = Ω if R has a normal form = F Ω T = T if R has no normal form Contradiction. So B doesn t exist. (NB. There may be a proof by reducing H to B; I didn t see it.) H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 28 / 31

27 Some other terms one can(not) write Example There is a term L satisfying L M = c n if n is the number of λ s inside M Example There is a term V satisfying V M = T if M is of the shape x P 1... P n for some n, P, V M = F if M is not of the shape x P 1... P n. Example There is no term H satisfying H M N = T if M N has a normal form H M N = F if M N has no normal form Proof Reduce B to H. (Show that, if H exists, then we can also define B.) H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 29 / 31

28 Scott s theorem The impossibility (undecidability) results we have seen are all instances of a general theorem due to Scott. We phrase it here purely in terms of λ calculus. We assume a coding function : Λ Λ for which we have λ-terms App and Num satisfying App M N = M N Num M = M Definition Two disjoint subsets of Λ, A, B Λ are separable if there is a λ-term F such that F M = T/F for every M and M A F M = T M B F M = F Theorem (Scott) If A, B are non-empty and closed under = β, then they are not separable. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 30 / 31

29 Proof of Scott s theorem Let A, B Λ closed under = β and say a A and b B. Suppose: F separates A and B, so F M = T/F for every M and We define M A F M = T M B F M = F H := λy.if F (App y (Num y)) then b else a and we consider J := H H : J = H H = if F (App H (Num H )) then b else a = if F ( H H ) then b else a { b iff H H A = a iff H H B This is a contradiction. So F doesn t exist. H. Geuvers - Radboud Univ. EWSCS 2016 Self-interpretation in λ-calculus 31 / 31

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

Computability and Complexity

Computability and Complexity Computability and Complexity Lecture 5 Reductions Undecidable problems from language theory Linear bounded automata given by Jiri Srba Lecture 5 Computability and Complexity 1/14 Reduction Informal Definition

More information

Introduction to Turing Machines. Reading: Chapters 8 & 9

Introduction to Turing Machines. Reading: Chapters 8 & 9 Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages

More information

PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2

PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2 PROOFS IN PREDICATE LOGIC AND COMPLETENESS; WHAT DECIDABILITY MEANS HUTH AND RYAN 2.3, SUPPLEMENTARY NOTES 2 Neil D. Jones DIKU 2005 12 September, 2005 Some slides today new, some based on logic 2004 (Nils

More information

Introduction to Turing Machines

Introduction to Turing Machines Introduction to Turing Machines Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 12 November 2015 Outline 1 Turing Machines 2 Formal definitions 3 Computability

More information

Mapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement:

Mapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement: Mapping Reducibility 2017/11/16 Chapter 5.3 in Sipser Ø Announcement: q Slides for this lecture are here: http://www.public.asu.edu/~yzhan442/teaching/cse355/lectures/mapping.pdf 1 Last time Reducibility

More information

Computability Crib Sheet

Computability Crib Sheet Computer Science and Engineering, UCSD Winter 10 CSE 200: Computability and Complexity Instructor: Mihir Bellare Computability Crib Sheet January 3, 2010 Computability Crib Sheet This is a quick reference

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

There are two main techniques for showing that problems are undecidable: diagonalization and reduction

There are two main techniques for showing that problems are undecidable: diagonalization and reduction Reducibility 1 There are two main techniques for showing that problems are undecidable: diagonalization and reduction 2 We say that a problem A is reduced to a problem B if the decidability of A follows

More information

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff

Decidability. Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff Decidability Linz 6 th, Chapter 12: Limits of Algorithmic Computation, page 309ff 1 A property P of strings is said to be decidable if the set of all strings having property P is a recursive set; that

More information

uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 1 Turing Reducibility

uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 1 Turing Reducibility uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 1 Turing Reducibility uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 2 FINITE We have already seen that the language FINITE

More information

16.1 Countability. CS125 Lecture 16 Fall 2014

16.1 Countability. CS125 Lecture 16 Fall 2014 CS125 Lecture 16 Fall 2014 16.1 Countability Proving the non-existence of algorithms for computational problems can be very difficult. Indeed, we do not know how to prove P NP. So a natural question is

More information

(a) Definition of TMs. First Problem of URMs

(a) Definition of TMs. First Problem of URMs Sec. 4: Turing Machines First Problem of URMs (a) Definition of the Turing Machine. (b) URM computable functions are Turing computable. (c) Undecidability of the Turing Halting Problem That incrementing

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

7. The Recursion Theorem

7. The Recursion Theorem 7. The Recursion Theorem Main result in this section: Kleene s Recursion Theorem. Recursive functions are closed under a very general form of recursion. For the proof we will use the S-m-n-theorem. Used

More information

Lecture Notes: The Halting Problem; Reductions

Lecture Notes: The Halting Problem; Reductions Lecture Notes: The Halting Problem; Reductions COMS W3261 Columbia University 20 Mar 2012 1 Review Key point. Turing machines can be encoded as strings, and other Turing machines can read those strings

More information

Type Systems. Today. 1. What is the Lambda Calculus. 1. What is the Lambda Calculus. Lecture 2 Oct. 27th, 2004 Sebastian Maneth

Type Systems. Today. 1. What is the Lambda Calculus. 1. What is the Lambda Calculus. Lecture 2 Oct. 27th, 2004 Sebastian Maneth Today 1. What is the Lambda Calculus? Type Systems 2. Its Syntax and Semantics 3. Church Booleans and Church Numerals 4. Lazy vs. Eager Evaluation (call-by-name vs. call-by-value) Lecture 2 Oct. 27th,

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

Decidability: Church-Turing Thesis

Decidability: Church-Turing Thesis Decidability: Church-Turing Thesis While there are a countably infinite number of languages that are described by TMs over some alphabet Σ, there are an uncountably infinite number that are not Are there

More information

Element x is R-minimal in X if y X. R(y, x).

Element x is R-minimal in X if y X. R(y, x). CMSC 22100/32100: Programming Languages Final Exam M. Blume December 11, 2008 1. (Well-founded sets and induction principles) (a) State the mathematical induction principle and justify it informally. 1

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

Decidability and Undecidability

Decidability and Undecidability Decidability and Undecidability Major Ideas from Last Time Every TM can be converted into a string representation of itself. The encoding of M is denoted M. The universal Turing machine U TM accepts an

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

Programming Language Concepts: Lecture 18

Programming Language Concepts: Lecture 18 Programming Language Concepts: Lecture 18 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2009 PLC 2009, Lecture 18, 30 March 2009 One step reduction

More information

CS20a: Turing Machines (Oct 29, 2002)

CS20a: Turing Machines (Oct 29, 2002) CS20a: Turing Machines (Oct 29, 2002) So far: DFA = regular languages PDA = context-free languages Today: Computability 1 Church s thesis The computable functions are the same as the partial recursive

More information

Lecture 23: Rice Theorem and Turing machine behavior properties 21 April 2009

Lecture 23: Rice Theorem and Turing machine behavior properties 21 April 2009 CS 373: Theory of Computation Sariel Har-Peled and Madhusudan Parthasarathy Lecture 23: Rice Theorem and Turing machine behavior properties 21 April 2009 This lecture covers Rice s theorem, as well as

More information

Turing Machine Recap

Turing Machine Recap Turing Machine Recap DFA with (infinite) tape. One move: read, write, move, change state. High-level Points Church-Turing thesis: TMs are the most general computing devices. So far no counter example Every

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

CITS2211 Discrete Structures (2017) Cardinality and Countability

CITS2211 Discrete Structures (2017) Cardinality and Countability CITS2211 Discrete Structures (2017) Cardinality and Countability Highlights What is cardinality? Is it the same as size? Types of cardinality and infinite sets Reading Sections 45 and 81 84 of Mathematics

More information

TURING MAHINES

TURING MAHINES 15-453 TURING MAHINES TURING MACHINE FINITE STATE q 10 CONTROL AI N P U T INFINITE TAPE read write move 0 0, R, R q accept, R q reject 0 0, R 0 0, R, L read write move 0 0, R, R q accept, R 0 0, R 0 0,

More information

CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems

CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems Valentine Kabanets September 13, 2007 1 Complexity Classes Unless explicitly stated,

More information

CA320 - Computability & Complexity

CA320 - Computability & Complexity CA320 - Computability & Complexity David Sinclair Overview In this module we are going to answer 2 important questions: Can all problems be solved by a computer? What problems be efficiently solved by

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

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

CS481F01 Solutions 8

CS481F01 Solutions 8 CS481F01 Solutions 8 A. Demers 7 Dec 2001 1. Prob. 111 from p. 344 of the text. One of the following sets is r.e. and the other is not. Which is which? (a) { i L(M i ) contains at least 481 elements }

More information

Advanced topic: Space complexity

Advanced topic: Space complexity Advanced topic: Space complexity CSCI 3130 Formal Languages and Automata Theory Siu On CHAN Chinese University of Hong Kong Fall 2016 1/28 Review: time complexity We have looked at how long it takes to

More information

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability

The Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability The Turing Machine Computability Motivating idea Build a theoretical a human computer Likened to a human with a paper and pencil that can solve problems in an algorithmic way The theoretical provides a

More information

CSE 105 Theory of Computation

CSE 105 Theory of Computation CSE 105 Theory of Computation http://www.jflap.org/jflaptmp/ Professor Jeanne Ferrante 1 Undecidability Today s Agenda Review: The TM Acceptance problem, A TM The Halting Problem for TM s Other problems

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

CSCE 551 Final Exam, Spring 2004 Answer Key

CSCE 551 Final Exam, Spring 2004 Answer Key CSCE 551 Final Exam, Spring 2004 Answer Key 1. (10 points) Using any method you like (including intuition), give the unique minimal DFA equivalent to the following NFA: 0 1 2 0 5 1 3 4 If your answer is

More information

Theory of Computation

Theory of Computation Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 14: Applications of PCP Goal of this Lecture Our goal is to present some typical undecidability

More information

Peano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now

Peano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now CSC 438F/2404F Notes (S. Cook) Fall, 2008 Peano Arithmetic Goals Now 1) We will introduce a standard set of axioms for the language L A. The theory generated by these axioms is denoted PA and called Peano

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. May 11/13, 2015 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Predicate Logic - Undecidability

Predicate Logic - Undecidability CS402, Spring 2016 Undecidable Problems Does the following program halts? (1) N : n, total, x, y, z (2) n GetUserInput() (3) total 3 (4) while true (5) for x 1 to total 2 (6) for y 1 to total x 1 (7) z

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

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

Introduction to Type Theory February 2008 Alpha Lernet Summer School Piriapolis, Uruguay. Herman Geuvers Nijmegen & Eindhoven, NL

Introduction to Type Theory February 2008 Alpha Lernet Summer School Piriapolis, Uruguay. Herman Geuvers Nijmegen & Eindhoven, NL Introduction to Type Theory February 2008 Alpha Lernet Summer School Piriapolis, Uruguay Herman Geuvers Nijmegen & Eindhoven, NL Lecture 5: Higher Order Logic and the Calculus of Constructions 1 Church

More information

7. The Recursion Theorem

7. The Recursion Theorem 7. The Recursion Theorem Main result in this section: Kleene s Recursion Theorem. Recursive functions are closed under a very general form of recursion. For proof we will use the S-m-n-theorem. Used in

More information

Undecidable Problems and Reducibility

Undecidable Problems and Reducibility University of Georgia Fall 2014 Reducibility We show a problem decidable/undecidable by reducing it to another problem. One type of reduction: mapping reduction. Definition Let A, B be languages over Σ.

More information

Turing Machines, diagonalization, the halting problem, reducibility

Turing Machines, diagonalization, the halting problem, reducibility Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have

More information

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION "Winter" 2018 http://cseweb.ucsd.edu/classes/wi18/cse105-ab/ Today's learning goals Sipser Ch 4.2 Trace high-level descriptions of algorithms for computational problems. Use

More information

The Lambda Calculus. Stephen A. Edwards. Fall Columbia University

The Lambda Calculus. Stephen A. Edwards. Fall Columbia University The Lambda Calculus Stephen A. Edwards Columbia University Fall 2014 Lambda Expressions Function application written in prefix form. Add four and five is (+ 4 5) Evaluation: select a redex and evaluate

More information

Γ is usually left implicit: ϕ

Γ is usually left implicit: ϕ Types Summer School Gothenburg Sweden August 2005 Type Systems Herman Geuvers Radboud University Nijmegen, NL Lecture 2: Higher Order Logic and Type Theory The original motivation of Church to introduce

More information

7. The Recursion Theorem

7. The Recursion Theorem 7. The Recursion Theorem Main result in this section: Kleene s Recursion Theorem. Recursive functions are closed under a very general form of recursion. For proof we will use the S-m-n-theorem. Used in

More information

Computability Theory. CS215, Lecture 6,

Computability Theory. CS215, Lecture 6, Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. April 18/ May 2, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Reductions in Computability Theory

Reductions in Computability Theory Reductions in Computability Theory Prakash Panangaden 9 th November 2015 The concept of reduction is central to computability and complexity theory. The phrase P reduces to Q is often used in a confusing

More information

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard

More information

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181. Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität

More information

highlights proof by contradiction what about the real numbers?

highlights proof by contradiction what about the real numbers? CSE 311: Foundations of Computing Fall 2013 Lecture 27: Turing machines and decidability highlights Cardinality A set S is countableiffwe can writeit as S={s 1, s 2, s 3,...} indexed by N Set of rationals

More information

Type Systems. Lecture 9: Classical Logic. Neel Krishnaswami University of Cambridge

Type Systems. Lecture 9: Classical Logic. Neel Krishnaswami University of Cambridge Type Systems Lecture 9: Classical Logic Neel Krishnaswami University of Cambridge Where We Are We have seen the Curry Howard correspondence: Intuitionistic propositional logic Simply-typed lambda calculus

More information

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY

CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY RYAN DOUGHERTY If we want to talk about a program running on a real computer, consider the following: when a program reads an instruction,

More information

Decidability. Human-aware Robotics. 2017/10/31 Chapter 4.1 in Sipser Ø Announcement:

Decidability. Human-aware Robotics. 2017/10/31 Chapter 4.1 in Sipser Ø Announcement: Decidability 2017/10/31 Chapter 4.1 in Sipser Ø Announcement: q q q Slides for this lecture are here: http://www.public.asu.edu/~yzhan442/teaching/cse355/lectures/decidability.pdf Happy Hollaween! Delayed

More information

Computational Models Lecture 8 1

Computational Models Lecture 8 1 Computational Models Lecture 8 1 Handout Mode Nachum Dershowitz & Yishay Mansour. Tel Aviv University. May 17 22, 2017 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice

More information

Computable Functions

Computable Functions Computable Functions Part I: Non Computable Functions Computable and Partially Computable Functions Computable Function Exists a Turing Machine M -- M Halts on All Input -- M(x) = f (x) Partially Computable

More information

Lecture 9: The Recursion Theorem. Michael Beeson

Lecture 9: The Recursion Theorem. Michael Beeson Lecture 9: The Recursion Theorem Michael Beeson The problem of computing by recursion We still have not provided completely convincing evidence that every intuitively computable function is Turing computable,

More information

Domain theory and denotational semantics of functional programming

Domain theory and denotational semantics of functional programming Domain theory and denotational semantics of functional programming Martín Escardó School of Computer Science, Birmingham University MGS 2007, Nottingham, version of April 20, 2007 17:26 What is denotational

More information

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 15 Ana Bove May 17th 2018 Recap: Context-free Languages Chomsky hierarchy: Regular languages are also context-free; Pumping lemma

More information

Church s undecidability result

Church s undecidability result Church s undecidability result Alan Turing Birth Centennial Talk at IIT Bombay, Mumbai Joachim Breitner April 21, 2011 Welcome, and thank you for the invitation to speak about Church s lambda calculus

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

ELEMENTS IN MATHEMATICS FOR INFORMATION SCIENCE NO.6 TURING MACHINE AND COMPUTABILITY. Tatsuya Hagino

ELEMENTS IN MATHEMATICS FOR INFORMATION SCIENCE NO.6 TURING MACHINE AND COMPUTABILITY. Tatsuya Hagino 1 ELEMENTS IN MATHEMATICS FOR INFORMATION SCIENCE NO.6 TURING MACHINE AND COMPUTABILITY Tatsuya Hagino hagino@sfc.keio.ac.jp 2 So far Computation flow chart program while program recursive function primitive

More information

Theory of Computer Science. Theory of Computer Science. D7.1 Introduction. D7.2 Turing Machines as Words. D7.3 Special Halting Problem

Theory of Computer Science. Theory of Computer Science. D7.1 Introduction. D7.2 Turing Machines as Words. D7.3 Special Halting Problem Theory of Computer Science May 2, 2018 D7. Halting Problem and Reductions Theory of Computer Science D7. Halting Problem and Reductions Gabriele Röger University of Basel May 2, 2018 D7.1 Introduction

More information

Mathematical Foundations of Programming. Nicolai Kraus. Draft of February 15, 2018

Mathematical Foundations of Programming. Nicolai Kraus. Draft of February 15, 2018 Very short lecture notes: Mathematical Foundations of Programming University of Nottingham, Computer Science, module code G54FOP, Spring 2018 Nicolai Kraus Draft of February 15, 2018 What is this? This

More information

V Honors Theory of Computation

V Honors Theory of Computation V22.0453-001 Honors Theory of Computation Problem Set 3 Solutions Problem 1 Solution: The class of languages recognized by these machines is the exactly the class of regular languages, thus this TM variant

More information

Complete problems for classes in PH, The Polynomial-Time Hierarchy (PH) oracle is like a subroutine, or function in

Complete problems for classes in PH, The Polynomial-Time Hierarchy (PH) oracle is like a subroutine, or function in Oracle Turing Machines Nondeterministic OTM defined in the same way (transition relation, rather than function) oracle is like a subroutine, or function in your favorite PL but each call counts as single

More information

Verifying whether One-Tape Turing Machines Run in Linear Time

Verifying whether One-Tape Turing Machines Run in Linear Time Electronic Colloquium on Computational Complexity, Report No. 36 (2015) Verifying whether One-Tape Turing Machines Run in Linear Time David Gajser IMFM, Jadranska 19, 1000 Ljubljana, Slovenija david.gajser@fmf.uni-lj.si

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

(i) By Corollary 1.3 (a) on P. 88, we know that the predicate. Q(x, y, z) S 1 (x, (z) 1, y, (z) 2 )

(i) By Corollary 1.3 (a) on P. 88, we know that the predicate. Q(x, y, z) S 1 (x, (z) 1, y, (z) 2 ) COMPUTABILITY: ANSWERS TO SOME EXERCISES IN CHAPTER 5 AND 6 5.1.5, P. 90. 1. This exercise is important for several reasons. For example, it tells us that taking inverses is an effect operation; see Example

More information

Lecture 13: Turing Machine

Lecture 13: Turing Machine Lecture 13: Turing Machine Instructor: Ketan Mulmuley Scriber: Yuan Li February 19, 2015 Turing machine is an abstract machine which in principle can simulate any computation in nature. Church-Turing Thesis:

More information

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY 15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY THURSDAY APRIL 3 REVIEW for Midterm TUESDAY April 8 Definition: A Turing Machine is a 7-tuple T = (Q, Σ, Γ, δ, q, q accept, q reject ), where: Q is a

More information

DR.RUPNATHJI( DR.RUPAK NATH )

DR.RUPNATHJI( DR.RUPAK NATH ) Contents 1 Sets 1 2 The Real Numbers 9 3 Sequences 29 4 Series 59 5 Functions 81 6 Power Series 105 7 The elementary functions 111 Chapter 1 Sets It is very convenient to introduce some notation and terminology

More information

Section 14.1 Computability then else

Section 14.1 Computability then else Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible algorithms. Example (Turing machines). Associate

More information

Limits of Computability

Limits of Computability Limits of Computability Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at Wolfgang Schreiner

More information

1 The decision problem for First order logic

1 The decision problem for First order logic Math 260A Mathematical Logic Scribe Notes UCSD Winter Quarter 2012 Instructor: Sam Buss Notes by: James Aisenberg April 27th 1 The decision problem for First order logic Fix a finite language L. Define

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

Elementary Recursive Function Theory

Elementary Recursive Function Theory Chapter 9 Elementary Recursive Function Theory 9.1 Acceptable Indexings In a previous Section, we have exhibited a specific indexing of the partial computable functions by encoding the RAM programs. Using

More information

A Universal Turing Machine

A Universal Turing Machine A Universal Turing Machine A limitation of Turing Machines: Turing Machines are hardwired they execute only one program Real Computers are re-programmable Solution: Universal Turing Machine Attributes:

More information

6.045J/18.400J: Automata, Computability and Complexity. Quiz 2. March 30, Please write your name in the upper corner of each page.

6.045J/18.400J: Automata, Computability and Complexity. Quiz 2. March 30, Please write your name in the upper corner of each page. 6.045J/18.400J: Automata, Computability and Complexity March 30, 2005 Quiz 2 Prof. Nancy Lynch Please write your name in the upper corner of each page. Problem Score 1 2 3 4 5 6 Total Q2-1 Problem 1: True

More information

THE AUSTRALIAN NATIONAL UNIVERSITY Second Semester COMP2600 (Formal Methods in Software Engineering)

THE AUSTRALIAN NATIONAL UNIVERSITY Second Semester COMP2600 (Formal Methods in Software Engineering) THE AUSTRALIAN NATIONAL UNIVERSITY Second Semester 2007 COMP2600 (Formal Methods in Software Engineering) Writing Period: 3 hours duration Study Period: 15 minutes duration Permitted Materials: None Answer

More information

1 Showing Recognizability

1 Showing Recognizability CSCC63 Worksheet Recognizability and Decidability 1 1 Showing Recognizability 1.1 An Example - take 1 Let Σ be an alphabet. L = { M M is a T M and L(M) }, i.e., that M accepts some string from Σ. Prove

More information

T (s, xa) = T (T (s, x), a). The language recognized by M, denoted L(M), is the set of strings accepted by M. That is,

T (s, xa) = T (T (s, x), a). The language recognized by M, denoted L(M), is the set of strings accepted by M. That is, Recall A deterministic finite automaton is a five-tuple where S is a finite set of states, M = (S, Σ, T, s 0, F ) Σ is an alphabet the input alphabet, T : S Σ S is the transition function, s 0 S is the

More information

CSCI 490 problem set 6

CSCI 490 problem set 6 CSCI 490 problem set 6 Due Tuesday, March 1 Revision 1: compiled Tuesday 23 rd February, 2016 at 21:21 Rubric For full credit, your solutions should demonstrate a proficient understanding of the following

More information

Decision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012

Decision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012 Decision Problems with TM s Look at following sets: Lecture 31: Halting Problem CSCI 81 Spring, 2012 Kim Bruce A TM = { M,w M is a TM and w L(M)} H TM = { M,w M is a TM which halts on input w} TOTAL TM

More information

Normalization by Evaluation

Normalization by Evaluation Normalization by Evaluation Andreas Abel Department of Computer Science and Engineering Chalmers and Gothenburg University PhD Seminar in Mathematical Engineering EAFIT University, Medellin, Colombia 9

More information

Warm-Up Problem. Please fill out your Teaching Evaluation Survey! Please comment on the warm-up problems if you haven t filled in your survey yet.

Warm-Up Problem. Please fill out your Teaching Evaluation Survey! Please comment on the warm-up problems if you haven t filled in your survey yet. Warm-Up Problem Please fill out your Teaching Evaluation Survey! Please comment on the warm-up problems if you haven t filled in your survey yet Warm up: Given a program that accepts input, is there an

More information

Turing Machines Part III

Turing Machines Part III Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's

More information

Static Program Analysis

Static Program Analysis Static Program Analysis Xiangyu Zhang The slides are compiled from Alex Aiken s Michael D. Ernst s Sorin Lerner s A Scary Outline Type-based analysis Data-flow analysis Abstract interpretation Theorem

More information

Undecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65

Undecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65 Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving

More information

Lecture 11: Gödel s Second Incompleteness Theorem, and Tarski s Theorem

Lecture 11: Gödel s Second Incompleteness Theorem, and Tarski s Theorem Lecture 11: Gödel s Second Incompleteness Theorem, and Tarski s Theorem Valentine Kabanets October 27, 2016 1 Gödel s Second Incompleteness Theorem 1.1 Consistency We say that a proof system P is consistent

More information

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides First Person: Second Person: Family Name: Family Name: Given Name: Given

More information