Recursion Theorem. Ziv Scully Ziv Scully Recursion Theorem / 28
|
|
- Amice Jasmine Jackson
- 5 years ago
- Views:
Transcription
1 Recursion Theorem Ziv Scully Ziv Scully Recursion Theorem / 28
2 A very λ-calculus appetizer P-p-p-plot twist! λ Ziv Scully Recursion Theorem / 28
3 A very λ-calculus appetizer The master plan 1 A very λ-calculus appetizer 2 Main theorem 3 Applications 4 Fixed points and diagonalization Ziv Scully Recursion Theorem / 28
4 A very λ-calculus appetizer The story so far 1 A very λ-calculus appetizer 2 Main theorem 3 Applications 4 Fixed points and diagonalization Ziv Scully Recursion Theorem / 28
5 A very λ-calculus appetizer What is computation? Depending on who you ask, computation is following clear procedures step by step (Turing machines). Ziv Scully Recursion Theorem / 28
6 A very λ-calculus appetizer What is computation? Depending on who you ask, computation is following clear procedures step by step (Turing machines).... a composition of primitive functions on (µ-recursive functions). Ziv Scully Recursion Theorem / 28
7 A very λ-calculus appetizer What is computation? Depending on who you ask, computation is following clear procedures step by step (Turing machines).... a composition of primitive functions on (µ-recursive functions).... complexity that emerges from simple rules (cellular automata). Ziv Scully Recursion Theorem / 28
8 A very λ-calculus appetizer What is computation? Depending on who you ask, computation is following clear procedures step by step (Turing machines).... a composition of primitive functions on (µ-recursive functions).... complexity that emerges from simple rules (cellular automata).... applying functions to functions to get more functions (λ-calculus). Ziv Scully Recursion Theorem / 28
9 A very λ-calculus appetizer Definition of λ-calculus A λ-calculus term is one of three things. A variable, such as x, y, or z. Ziv Scully Recursion Theorem / 28
10 A very λ-calculus appetizer Definition of λ-calculus A λ-calculus term is one of three things. A variable, such as x, y, or z. A function application, one term applied to another, such as f x, f (g x), or (f x) y = f x y. Ziv Scully Recursion Theorem / 28
11 A very λ-calculus appetizer Definition of λ-calculus A λ-calculus term is one of three things. A variable, such as x, y, or z. A function application, one term applied to another, such as f x, f (g x), or (f x) y = f x y. A function abstraction, making a term a one-argument function, such as λx. x, λx. (λy. x) = λx. λy. x, or λf. λg. λx. f (g x). Ziv Scully Recursion Theorem / 28
12 A very λ-calculus appetizer Definition of λ-calculus A λ-calculus term is one of three things. A variable, such as x, y, or z. A function application, one term applied to another, such as f x, f (g x), or (f x) y = f x y. A function abstraction, making a term a one-argument function, such as λx. x, λx. (λy. x) = λx. λy. x, or λf. λg. λx. f (g x). Additionally, we require that, at the top level, no variable appear outside the scope of a function abstraction that declares it. Ziv Scully Recursion Theorem / 28
13 A very λ-calculus appetizer Evaluating λ-calculus terms There are two rules for evaluating terms. α-renaming: change variable names, such as λx. λy. x λf. λg. f. Ziv Scully Recursion Theorem / 28
14 A very λ-calculus appetizer Evaluating λ-calculus terms There are two rules for evaluating terms. α-renaming: change variable names, such as λx. λy. x λf. λg. f. β-reduction: apply a function to an argument by substitution, such as (λx. λy. x)(λz. z) λy. λz. z. Ziv Scully Recursion Theorem / 28
15 A very λ-calculus appetizer Evaluating λ-calculus terms There are two rules for evaluating terms. α-renaming: change variable names, such as λx. λy. x λf. λg. f. β-reduction: apply a function to an argument by substitution, such as (λx. λy. x)(λz. z) λy. λz. z. These rules are powerful enough to simulate a Turing machine. Ziv Scully Recursion Theorem / 28
16 A very λ-calculus appetizer Hello, factorial! Let s define the factorial function. 1 x = 0 F = λx. x (F(x 1)) otherwise. Ziv Scully Recursion Theorem / 28
17 A very λ-calculus appetizer Hello, factorial! Let s define the factorial function. 1 x = 0 F = λx. x (F(x 1)) otherwise. Problem: we can t have F refer to itself in λ-calculus. Ziv Scully Recursion Theorem / 28
18 A very λ-calculus appetizer Sneakier self-reference What if we can t use self-reference? F = G G, where 1 x = 0 G = λg. λx. x (g g (x 1)) otherwise. Ziv Scully Recursion Theorem / 28
19 A very λ-calculus appetizer Sneakier self-reference What if we can t use self-reference? F = G G, where 1 x = 0 G = λg. λx. x (g g (x 1)) otherwise. We use an open definition: G refers to whatever function we want it to use next. Passing G to itself gives G a reference to itself. Ziv Scully Recursion Theorem / 28
20 A very λ-calculus appetizer Sneakier self-reference What if we can t use self-reference? F = G G, where 1 x = 0 G = λg. λx. x (g g (x 1)) otherwise. We use an open definition: G refers to whatever function we want it to use next. Passing G to itself gives G a reference to itself. 1 x = 0 G G = λg. λx. G x (g g (x 1)) otherwise 1 x = 0 = λx. x (G G (x 1)) otherwise. Ziv Scully Recursion Theorem / 28
21 A very λ-calculus appetizer Laziness is a virtue Using a self-application g g for every recursive call is cumbersome. What if we re lazy and want to write f instead of g g? 1 x = 0 F = λf. λx. x (f (x 1)) otherwise. Ziv Scully Recursion Theorem / 28
22 A very λ-calculus appetizer Laziness is a virtue Using a self-application g g for every recursive call is cumbersome. What if we re lazy and want to write f instead of g g? 1 x = 0 F = λf. λx. x (f (x 1)) otherwise. F is a shell that needs to be filled in by the true factorial function, f. We can think of F as having type ( ) ( ). Ziv Scully Recursion Theorem / 28
23 A very λ-calculus appetizer Laziness is a virtue Using a self-application g g for every recursive call is cumbersome. What if we re lazy and want to write f instead of g g? 1 x = 0 F = λf. λx. x (f (x 1)) otherwise. F is a shell that needs to be filled in by the true factorial function, f. We can think of F as having type ( ) ( ). If f computes factorial, then so does F f, in which case f = F f. That is, we necessarily want a fixed point of F. Ziv Scully Recursion Theorem / 28
24 A very λ-calculus appetizer Wishful thinking Let s wish for a function Y that finds a fixed point of its input. Namely, Y should satisfy Y F = F (Y F). Ziv Scully Recursion Theorem / 28
25 A very λ-calculus appetizer Wishful thinking Let s wish for a function Y that finds a fixed point of its input. Namely, Y should satisfy Y F = F (Y F). When F is our factorial shell, we get 1 x = 0 Y F = F (Y F) = λx. x (Y F (x 1)) otherwise. Ziv Scully Recursion Theorem / 28
26 A very λ-calculus appetizer Wishful thinking Let s wish for a function Y that finds a fixed point of its input. Namely, Y should satisfy Y F = F (Y F). When F is our factorial shell, we get 1 x = 0 Y F = F (Y F) = λx. x (Y F (x 1)) otherwise. That is, to do recursion, it suffices to find a fixed point of F. Ziv Scully Recursion Theorem / 28
27 A very λ-calculus appetizer Wish really, really sneakily We know how to do self-reference: make a function accept any reference as an argument, then feed the function to itself. With that inspiration, we wish for some G F such that Y F = F (Y F) = G F G F. Ziv Scully Recursion Theorem / 28
28 A very λ-calculus appetizer Y combinator? Because functions! Y F = F (Y F) = G F G F Ziv Scully Recursion Theorem / 28
29 A very λ-calculus appetizer Y combinator? Because functions! Y F = F (Y F) = G F G F G F G F = F (G F G F ) Ziv Scully Recursion Theorem / 28
30 A very λ-calculus appetizer Y combinator? Because functions! Y F = F (Y F) = G F G F G F G F = F (G F G F ) = (λg. F (g g)) G F Ziv Scully Recursion Theorem / 28
31 A very λ-calculus appetizer Y combinator? Because functions! Y F = F (Y F) = G F G F G F G F = F (G F G F ) = (λg. F (g g)) G F G F = λg. F (g g). Ziv Scully Recursion Theorem / 28
32 A very λ-calculus appetizer Y combinator? Because functions! Y F = F (Y F) = G F G F G F G F = F (G F G F ) = (λg. F (g g)) G F G F = λg. F (g g). Theorem (Existence of the Y combinator) The combinator Y = λf. G f G f = λf. (λg. f (g g)) (λg. f (g g)) satisfies Y F = F (Y F) for all F. Ziv Scully Recursion Theorem / 28
33 Main theorem The story so far 1 A very λ-calculus appetizer 2 Main theorem 3 Applications 4 Fixed points and diagonalization Ziv Scully Recursion Theorem / 28
34 Main theorem Turing machines are computers, too! Notation: [n] is the Turing machine n encodes. Theorem (Recursion theorem) There exists a total (always halting) computable function Y such that for all F, if [F] is total, then [Y(F)] = [[F](Y(F))]. Ziv Scully Recursion Theorem / 28
35 Main theorem Turing machines are computers, too! Notation: [n] is the Turing machine n encodes. Theorem (Recursion theorem) There exists a total (always halting) computable function Y such that for all F, if [F] is total, then [Y(F)] = [[F](Y(F))]. Put another way: if we consider numbers equivalent if they encode equivalent Turing machines, then [F] has a fixed point for all F, and that fixed point is computable from F. Ziv Scully Recursion Theorem / 28
36 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) Ziv Scully Recursion Theorem / 28
37 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) Ziv Scully Recursion Theorem / 28
38 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) Ziv Scully Recursion Theorem / 28
39 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). Ziv Scully Recursion Theorem / 28
40 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. We can compute G F, so we win! Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). Ziv Scully Recursion Theorem / 28
41 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. We can compute G F, so we win! What happens if [F](x) = x + 1? Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). Ziv Scully Recursion Theorem / 28
42 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). We can compute G F, so we win! What happens if [F](x) = x + 1? Y(F) = Y(F) + 1, so the universe explodes. Ziv Scully Recursion Theorem / 28
43 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). We can compute G F, so we win! What happens if [F](x) = x + 1? Y(F) = Y(F) + 1, so computing Y(F) = [G F ](G F ) must not halt. Ziv Scully Recursion Theorem / 28
44 Main theorem Proof of recursion theorem Notation: [n] is the Turing machine n encodes, x E(x) is the procedure that maps x to expression E(x), and P is the encoding of procedure P. Y(F) = [F](Y(F)) = [G F ](G F ) [G F ](G F ) = [F]([G F ](G F )) = (g [F]([g](g)))(G F ) G F = g [F]([g](g)). We can compute G F, so we win! What happens if [F](x) = x + 1? Y(F) = Y(F) + 1, so computing Y(F) = [G F ](G F ) must not halt. We tried to find a fixed point, but we only need a fixed point modulo equivalence of encoded Turing machines. Ziv Scully Recursion Theorem / 28
45 Main theorem Proof of recursion theorem 2: electric boogaloo We try again with a slightly weaker goal. Y(F) = [G F ](G F ) [Y(F)] = [[F](Y(F))] Ziv Scully Recursion Theorem / 28
46 Main theorem Proof of recursion theorem 2: electric boogaloo We try again with a slightly weaker goal. Y(F) = [G F ](G F ) [Y(F)] = [[F](Y(F))] [G F ](G F ) = x [[F]([G F ](G F ))](x) Ziv Scully Recursion Theorem / 28
47 Main theorem Proof of recursion theorem 2: electric boogaloo We try again with a slightly weaker goal. Y(F) = [G F ](G F ) [Y(F)] = [[F](Y(F))] [G F ](G F ) = x [[F]([G F ](G F ))](x) = (g x [[F]([g](g))](x) )(G F ) Ziv Scully Recursion Theorem / 28
48 Main theorem Proof of recursion theorem 2: electric boogaloo We try again with a slightly weaker goal. Y(F) = [G F ](G F ) [Y(F)] = [[F](Y(F))] [G F ](G F ) = x [[F]([G F ](G F ))](x) = (g x [[F]([g](g))](x) )(G F ) G F = g x [[F]([g](g))](x). Ziv Scully Recursion Theorem / 28
49 Main theorem Proof of recursion theorem 2: electric boogaloo We try again with a slightly weaker goal. Y(F) = [G F ](G F ) [Y(F)] = [[F](Y(F))] [G F ](G F ) = x [[F]([G F ](G F ))](x) = (g x [[F]([g](g))](x) )(G F ) G F = g x [[F]([g](g))](x). This time, not only can we compute G F, but [G F ] is a total function, so computing Y(F) = [G F ](G F ) always halts! Ziv Scully Recursion Theorem / 28
50 Main theorem For the skeptical Just to make sure we have this right, if Y(F) = [G F ](G F ), then [Y(F)](X) = [[G F ](G F )](X) = [[ g x [[F]([g](g))](x) ](G F )](X) = [ x [[F]([G F ](G F ))](x) ](X) = [[F]([G F ](G F ))](X) = [[F](Y(F))](X). As desired, Y(F) and [F](Y(F)) encode equivalent Turing machines. Ziv Scully Recursion Theorem / 28
51 Applications The story so far 1 A very λ-calculus appetizer 2 Main theorem 3 Applications 4 Fixed points and diagonalization Ziv Scully Recursion Theorem / 28
52 Applications Recursion (duh) Letting [F](f) =... [f]... gives so [Y(F)] can make recursive calls. [Y(F)] = [[F](Y(F))] =... [Y(F)]..., Ziv Scully Recursion Theorem / 28
53 Applications Recursion (duh) Letting [F](f) =... [f]... gives so [Y(F)] can make recursive calls. In general, [F](f) =... f... gives [Y(F)] = [[F](Y(F))] =... [Y(F)]..., [Y(F)] = [[F](Y(F))] =... Y(F)..., which gives us something stronger: [Y(F)] can access its own source code. Practical application is that, when defining a procedure P, we can use P in the definition. Ziv Scully Recursion Theorem / 28
54 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. Ziv Scully Recursion Theorem / 28
55 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. But we just said that defining P(x) = P is okay! Ziv Scully Recursion Theorem / 28
56 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. But we just said that defining P(x) = P is okay! Letting [F](f) = x f gives [Y(F)](x) = [[F](Y(F))](x) = Y(F). That is, [Y(F)] always returns its encoding. Ziv Scully Recursion Theorem / 28
57 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. But we just said that defining P(x) = P is okay! Letting [F](f) = x f gives [Y(F)](x) = [[F](Y(F))](x) = Y(F). That is, [Y(F)] always returns its encoding. This example is simple enough that we can examine G F directly. G F = g x [[F]([g](g))](x) = g x [g](g). Ziv Scully Recursion Theorem / 28
58 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. But we just said that defining P(x) = P is okay! Letting [F](f) = x f gives [Y(F)](x) = [[F](Y(F))](x) = Y(F). That is, [Y(F)] always returns its encoding. This example is simple enough that we can examine G F directly. G F = g x [[F]([g](g))](x) = g x [g](g). G F says apply my first argument, decoded, to itself, still encoded. Y(F) = [G F ](G F ) decodes G F and applies it to a still encoded G F. Ziv Scully Recursion Theorem / 28
59 Applications Quines A Quine is a program that prints its own source code. This sounds easy at first, but after some trial and error it starts to seem impossible. But we just said that defining P(x) = P is okay! Letting [F](f) = x f gives [Y(F)](x) = [[F](Y(F))](x) = Y(F). That is, [Y(F)] always returns its encoding. This example is simple enough that we can examine G F directly. G F = g x [[F]([g](g))](x) = g x [g](g). G F says apply my first argument, decoded, to itself, still encoded. Y(F) = [G F ](G F ) decodes G F and applies it to a still encoded G F. This echoes the famous natural-language Quine: quoted and followed by itself is a Quine quoted and followed by itself is a Quine. Ziv Scully Recursion Theorem / 28
60 Applications Impossibility results Theorem (Rice s theorem) No nontrivial predicate of Turing machines is decidable. Ziv Scully Recursion Theorem / 28
61 Applications Impossibility results Theorem (Rice s theorem) No nontrivial predicate of Turing machines is decidable. Proof. Fix some nontrivial predicate decidable by P, and let [A] and [B] satisfy and not satisfy the predicate, respectively. Ziv Scully Recursion Theorem / 28
62 Applications Impossibility results Theorem (Rice s theorem) No nontrivial predicate of Turing machines is decidable. Proof. Fix some nontrivial predicate decidable by P, and let [A] and [B] satisfy and not satisfy the predicate, respectively. The procedure B P( Q ) Q(x) = A otherwise gives a contradiction. Ziv Scully Recursion Theorem / 28
63 Fixed points and diagonalization The story so far 1 A very λ-calculus appetizer 2 Main theorem 3 Applications 4 Fixed points and diagonalization Ziv Scully Recursion Theorem / 28
64 Fixed points and diagonalization Yet another proof of Cantor s theorem A surjection â : 2 gives a function a : 2 such that for any b : 2, there is some n such that b = a(n, ), in which case we say that b is representable by a. Ziv Scully Recursion Theorem / 28
65 Fixed points and diagonalization Yet another proof of Cantor s theorem A surjection â : 2 gives a function a : 2 such that for any b : 2, there is some n such that b = a(n, ), in which case we say that b is representable by a. Let (n) = (n, n) and σ(p) = 1 p. Ziv Scully Recursion Theorem / 28
66 Fixed points and diagonalization Yet another proof of Cantor s theorem A surjection â : 2 gives a function a : 2 such that for any b : 2, there is some n such that b = a(n, ), in which case we say that b is representable by a. Let (n) = (n, n) and σ(p) = 1 p. a 2 b 2 σ Ziv Scully Recursion Theorem / 28
67 Fixed points and diagonalization Yet another proof of Cantor s theorem A surjection â : 2 gives a function a : 2 such that for any b : 2, there is some n such that b = a(n, ), in which case we say that b is representable by a. Let (n) = (n, n) and σ(p) = 1 p. a 2 b 2 σ By construction, because σ has no fixed points, b(n) a(n, n) for all n, which means b a(n, ) for all n. Therefore, â is not a surjection. Ziv Scully Recursion Theorem / 28
68 Fixed points and diagonalization Yet another proof the halting problem is undecidable Suppose a : 2 decides the halting problem. That is, a(f, X) is 1 if and only if [F](X) halts. Ziv Scully Recursion Theorem / 28
69 Fixed points and diagonalization Yet another proof the halting problem is undecidable Suppose a : 2 decides the halting problem. That is, a(f, X) is 1 if and only if [F](X) halts. Let σ(0) = 1 and σ(1) never terminate. Ziv Scully Recursion Theorem / 28
70 Fixed points and diagonalization Yet another proof the halting problem is undecidable Suppose a : 2 decides the halting problem. That is, a(f, X) is 1 if and only if [F](X) halts. Let σ(0) = 1 and σ(1) never terminate. a 2 b 2 σ Ziv Scully Recursion Theorem / 28
71 Fixed points and diagonalization Yet another proof the halting problem is undecidable Suppose a : 2 decides the halting problem. That is, a(f, X) is 1 if and only if [F](X) halts. Let σ(0) = 1 and σ(1) never terminate. a 2 b 2 σ By construction, because σ has no fixed points, b( b ) a( b, b ). This manifests itself as the usual contradiction: a( b, b ) = 0 b( b ) doesn t halt a( b, b ) = 1 Ziv Scully Recursion Theorem / 28
72 Fixed points and diagonalization Yet another cookie-cutter diagonalization proof The general picture, due originally to Lawvere and nicely explained by Yanofsky ( X X a Y X b Y σ X = domain = diagonal a = application Y = truth values σ = shuffle b = bad, where bad means not representable as a(x, ) for some x. Ziv Scully Recursion Theorem / 28
73 Fixed points and diagonalization Cookies contrapositively cut X X a Y X b Y σ Contrapositively, if b is representable as a(x, ) for some x, then σ must have a fixed point. Ziv Scully Recursion Theorem / 28
74 Fixed points and diagonalization A sketchier, boxier recursion theorem Fix total computable P. Let a(f, x) = [f](x) and σ([f]) = σ([p(f)]). (We strategically choose not to worry about how σ is well-defined as part of the composition but isn t on its own.) a TM b σ TM Ziv Scully Recursion Theorem / 28
75 Fixed points and diagonalization A sketchier, boxier recursion theorem Fix total computable P. Let a(f, x) = [f](x) and σ([f]) = σ([p(f)]). (We strategically choose not to worry about how σ is well-defined as part of the composition but isn t on its own.) a TM b σ TM All of, a, and σ do straightforward computations, so b is computable and therefore representable as a( b, ). Ziv Scully Recursion Theorem / 28
76 Fixed points and diagonalization A sketchier, boxier recursion theorem Fix total computable P. Let a(f, x) = [f](x) and σ([f]) = σ([p(f)]). (We strategically choose not to worry about how σ is well-defined as part of the composition but isn t on its own.) a TM b σ TM All of, a, and σ do straightforward computations, so b is computable and therefore representable as a( b, ). This means σ has a fixed point, or, equivalently, P has a fixed point modulo equivalence of encoded Turing machines. Ziv Scully Recursion Theorem / 28
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 informationCS 125 Section #10 (Un)decidability and Probability November 1, 2016
CS 125 Section #10 (Un)decidability and Probability November 1, 2016 1 Countability Recall that a set S is countable (either finite or countably infinite) if and only if there exists a surjective mapping
More informationUndecidability. Andreas Klappenecker. [based on slides by Prof. Welch]
Undecidability Andreas Klappenecker [based on slides by Prof. Welch] 1 Sources Theory of Computing, A Gentle Introduction, by E. Kinber and C. Smith, Prentice-Hall, 2001 Automata Theory, Languages and
More information6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 10 Nancy Lynch
6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 10 Nancy Lynch Today Final topic in computability theory: Self-Reference and the Recursion
More informationReductions 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 informationCSCI3390-Lecture 6: An Undecidable Problem
CSCI3390-Lecture 6: An Undecidable Problem September 21, 2018 1 Summary The language L T M recognized by the universal Turing machine is not decidable. Thus there is no algorithm that determines, yes or
More informationCS 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 informationCSE355 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 informationECS 120 Lesson 18 Decidable Problems, the Halting Problem
ECS 120 Lesson 18 Decidable Problems, the Halting Problem Oliver Kreylos Friday, May 11th, 2001 In the last lecture, we had a look at a problem that we claimed was not solvable by an algorithm the problem
More informationLecture 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 informationReview. 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 informationDecidability. 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 informationTuring 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 informationComputability 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 informationCS481F01 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 informationProgramming 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 informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Church-Turing Thesis The definition of the algorithm came in the 1936 papers of Alonzo Church h and Alan
More informationCS 361 Meeting 26 11/10/17
CS 361 Meeting 26 11/10/17 1. Homework 8 due Announcements A Recognizable, but Undecidable Language 1. Last class, I presented a brief, somewhat inscrutable proof that the language A BT M = { M w M is
More informationThere 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 informationTURING 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 informationChurch 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 informationTuring 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 informationLecture 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 informationA non-turing-recognizable language
CS 360: Introduction to the Theory of Computing John Watrous, University of Waterloo A non-turing-recognizable language 1 OVERVIEW Thus far in the course we have seen many examples of decidable languages
More informationTheory of Computation
Theory of Computation Unit 4-6: Turing Machines and Computability Decidability and Encoding Turing Machines Complexity and NP Completeness Syedur Rahman syedurrahman@gmail.com Turing Machines Q The set
More informationTheory of Computation
Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 13: Algorithmic Unsolvability The Halting Problem I In the last lecture we have shown
More informationCS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018
CS 301 Lecture 18 Decidable languages Stephen Checkoway April 2, 2018 1 / 26 Decidable language Recall, a language A is decidable if there is some TM M that 1 recognizes A (i.e., L(M) = A), and 2 halts
More informationCS154, Lecture 10: Rice s Theorem, Oracle Machines
CS154, Lecture 10: Rice s Theorem, Oracle Machines Moral: Analyzing Programs is Really, Really Hard But can we more easily tell when some program analysis problem is undecidable? Problem 1 Undecidable
More informationUndecidability and Rice s Theorem. Lecture 26, December 3 CS 374, Fall 2015
Undecidability and Rice s Theorem Lecture 26, December 3 CS 374, Fall 2015 UNDECIDABLE EXP NP P R E RECURSIVE Recap: Universal TM U We saw a TM U such that L(U) = { (z,w) M z accepts w} Thus, U is a stored-program
More informationDecidable Languages - relationship with other classes.
CSE2001, Fall 2006 1 Last time we saw some examples of decidable languages (or, solvable problems). Today we will start by looking at the relationship between the decidable languages, and the regular and
More informationLecture 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 informationDecidability 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 information2 Computable and Computably Enumerable Sets
Notes For CMSC 650- COMPUTABILITY by A.Amir and W.I. Gasarch 1 Introduction We take our model of computation to be Java Programs. Traditionally one defines Turing Machines and we will use that terminology,
More informationWarm-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 informationDay 15. Tuesday June 12, 2012
Day 15 Tuesday June 12, 2012 1 Properties of Function So far we have talked about different things we can talk about with respect to a function. So far if f : A B we have the following features: A domain:
More informationIntroduction 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λ 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 informationDecidable and undecidable languages
The Chinese University of Hong Kong Fall 2011 CSCI 3130: Formal languages and automata theory Decidable and undecidable languages Andrej Bogdanov http://www.cse.cuhk.edu.hk/~andrejb/csc3130 Problems about
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Today's learning goals Sipser Ch 5.1 Define and explain core examples of decision problems: A DFA, E DFA, EQ DFA,
More informationThe 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 informationUndecidability. Almost all Languages are undecidable. Question: Is it just weird languages that no one would care about which are undecidable?
15-251: Great Theoretical Ideas in Computer Science Lecture 7 Undecidability Almost all Languages are undecidable Set of all languages: Set of all dec. lang.: Most languages do not have a TM deciding them
More informationON COMPUTAMBLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHENIDUGSPROBLEM. Turing 1936
ON COMPUTAMBLE NUMBERS, WITH AN APPLICATION TO THE ENTSCHENIDUGSPROBLEM Turing 1936 Where are We? Ignoramus et ignorabimus Wir mussen wissen Wir werden wissen We do not know We shall not know We must know
More informationTheory 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 informationPHIL12A Section answers, 14 February 2011
PHIL12A Section answers, 14 February 2011 Julian Jonker 1 How much do you know? 1. You should understand why a truth table is constructed the way it is: why are the truth values listed in the order they
More informationUndecidable 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 informationCOMP6463: λ-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 informationGödel s Theorem: Limits of logic and computation
Gödel s Theorem: Limits of logic and computation David Keil (dkeil@frc.mass.edu) Framingham State College Math/CS Faculty Seminar March 27, 2003 1 Overview Kurt Gödel, 1931, at age 25, in Vienna, shook
More informationTime-bounded computations
Lecture 18 Time-bounded computations We now begin the final part of the course, which is on complexity theory. We ll have time to only scratch the surface complexity theory is a rich subject, and many
More informationCSE 311: Foundations of Computing. Lecture 27: Undecidability
CSE 311: Foundations of Computing Lecture 27: Undecidability Last time: Countable sets A set is countable iff we can order the elements of as = {,,, Countable sets: N-the natural numbers Z - the integers
More informationExamples: P: it is not the case that P. P Q: P or Q P Q: P implies Q (if P then Q) Typical formula:
Logic: The Big Picture Logic is a tool for formalizing reasoning. There are lots of different logics: probabilistic logic: for reasoning about probability temporal logic: for reasoning about time (and
More informationacs-07: Decidability Decidability Andreas Karwath und Malte Helmert Informatik Theorie II (A) WS2009/10
Decidability Andreas Karwath und Malte Helmert 1 Overview An investigation into the solvable/decidable Decidable languages The halting problem (undecidable) 2 Decidable problems? Acceptance problem : decide
More informationDiscrete Mathematics for CS Fall 2003 Wagner Lecture 3. Strong induction
CS 70 Discrete Mathematics for CS Fall 2003 Wagner Lecture 3 This lecture covers further variants of induction, including strong induction and the closely related wellordering axiom. We then apply these
More informationThere are problems that cannot be solved by computer programs (i.e. algorithms) even assuming unlimited time and space.
Undecidability There are problems that cannot be solved by computer programs (i.e. algorithms) even assuming unlimited time and space. Proved by Alan Turing in 1936 What is a computer program/algorithm?
More informationPropositions and Proofs
Propositions and Proofs Gert Smolka, Saarland University April 25, 2018 Proposition are logical statements whose truth or falsity can be established with proofs. Coq s type theory provides us with a language
More informationMath 300: Final Exam Practice Solutions
Math 300: Final Exam Practice Solutions 1 Let A be the set of all real numbers which are zeros of polynomials with integer coefficients: A := {α R there exists p(x) = a n x n + + a 1 x + a 0 with all a
More informationSequence convergence, the weak T-axioms, and first countability
Sequence convergence, the weak T-axioms, and first countability 1 Motivation Up to now we have been mentioning the notion of sequence convergence without actually defining it. So in this section we will
More informationLecture 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 informationCS 124 Math Review Section January 29, 2018
CS 124 Math Review Section CS 124 is more math intensive than most of the introductory courses in the department. You re going to need to be able to do two things: 1. Perform some clever calculations to
More informationUndecibability. Hilbert's 10th Problem: Give an algorithm that given a polynomial decides if the polynomial has integer roots or not.
Undecibability Hilbert's 10th Problem: Give an algorithm that given a polynomial decides if the polynomial has integer roots or not. The problem was posed in 1900. In 1970 it was proved that there can
More information1 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 information23.1 Gödel Numberings and Diagonalization
Applied Logic Lecture 23: Unsolvable Problems in Logic CS 4860 Spring 2009 Tuesday, April 14, 2009 The fact that Peano Arithmetic is expressive enough to represent all computable functions means that some
More informationE.g. The set RE of regular expressions is given by the following rules:
1 Lecture Summary We gave a brief overview of inductively defined sets, inductively defined functions, and proofs by structural induction We showed how to prove that a machine is correct using induction
More informationDiscrete Mathematics for CS Spring 2007 Luca Trevisan Lecture 27
CS 70 Discrete Mathematics for CS Spring 007 Luca Trevisan Lecture 7 Infinity and Countability Consider a function f that maps elements of a set A (called the domain of f ) to elements of set B (called
More informationComputational Models Lecture 9, Spring 2009
Slides modified by Benny Chor, based on original slides by Maurice Herlihy, Brown University. p. 1 Computational Models Lecture 9, Spring 2009 Reducibility among languages Mapping reductions More undecidable
More informationPeano 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 informationCS20a: 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 informationACS2: Decidability Decidability
Decidability Bernhard Nebel and Christian Becker-Asano 1 Overview An investigation into the solvable/decidable Decidable languages The halting problem (undecidable) 2 Decidable problems? Acceptance problem
More informationPROOFS 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 informationType 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 informationOn Rice s theorem. Hans Hüttel. October 2001
On Rice s theorem Hans Hüttel October 2001 We have seen that there exist languages that are Turing-acceptable but not Turing-decidable. An important example of such a language was the language of the Halting
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2018 http://cseweb.ucsd.edu/classes/sp18/cse105-ab/ Today's learning goals Sipser Ch 5.1, 5.3 Define and explain core examples of computational problems, including
More informationOn 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 informationComputability 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 informationSolutions to Old Final Exams (For Fall 2007)
Solutions to Old Final Exams (For Fall 2007) CS 381 (Fall 2002, Fall 2004, Fall 2005, Fall 2006) Yogi Sharma Disclaimer: I, Yogi Sharma, do not claim these solution to be complete, or even to be absolutely
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY KOLMOGOROV-CHAITIN (descriptive) COMPLEXITY TUESDAY, MAR 18 CAN WE QUANTIFY HOW MUCH INFORMATION IS IN A STRING? A = 01010101010101010101010101010101
More informationWhat happens to the value of the expression x + y every time we execute this loop? while x>0 do ( y := y+z ; x := x:= x z )
Starter Questions Feel free to discuss these with your neighbour: Consider two states s 1 and s 2 such that s 1, x := x + 1 s 2 If predicate P (x = y + 1) is true for s 2 then what does that tell us about
More informationMI 4 Mathematical Induction Name. Mathematical Induction
Mathematical Induction It turns out that the most efficient solution to the Towers of Hanoi problem with n disks takes n 1 moves. If this isn t the formula you determined, make sure to check your data
More informationGödel s Incompleteness Theorem. Overview. Computability and Logic
Gödel s Incompleteness Theorem Overview Computability and Logic Recap Remember what we set out to do in this course: Trying to find a systematic method (algorithm, procedure) which we can use to decide,
More informationThe 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 informationNP-Completeness and Boolean Satisfiability
NP-Completeness and Boolean Satisfiability Mridul Aanjaneya Stanford University August 14, 2012 Mridul Aanjaneya Automata Theory 1/ 49 Time-Bounded Turing Machines A Turing Machine that, given an input
More informationCMPT 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 informationMost General computer?
Turing Machines Most General computer? DFAs are simple model of computation. Accept only the regular languages. Is there a kind of computer that can accept any language, or compute any function? Recall
More informationTheory of Computer Science. Theory of Computer Science. D8.1 Other Halting Problem Variants. D8.2 Rice s Theorem
Theory of Computer Science May 15, 2017 D8. Rice s Theorem and Other Undecidable Problems Theory of Computer Science D8. Rice s Theorem and Other Undecidable Problems Malte Helmert University of Basel
More informationLimits 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 informationTuring machine recap. Universal Turing Machines and Undecidability. Alphabet size doesn t matter. Robustness of TM
Turing machine recap A Turing machine TM is a tuple M = (Γ, Q, δ) where Γ: set of symbols that TM s tapes can contain. Q: possible states TM can be in. qstart: the TM starts in this state qhalt: the TM
More informationMath 300 Introduction to Mathematical Reasoning Autumn 2017 Inverse Functions
Math 300 Introduction to Mathematical Reasoning Autumn 2017 Inverse Functions Please read this pdf in place of Section 6.5 in the text. The text uses the term inverse of a function and the notation f 1
More informationCogito ergo sum non machina!
Cogito ergo sum non machina! About Gödel s First Incompleteness Theorem and Turing machines. Ricardo Pereira Tassinari 1 Philosophy Department of State University of São Paulo - UNESP - Campus Marília
More informationSemantics and Generative Grammar. The Semantics of Adjectival Modification 1. (1) Our Current Assumptions Regarding Adjectives and Common Ns
The Semantics of Adjectival Modification 1 (1) Our Current Assumptions Regarding Adjectives and Common Ns a. Both adjectives and common nouns denote functions of type (i) [[ male ]] = [ λx : x D
More informationhighlights 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 information6.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 informationDecision 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 informationFormal 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 informationCS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression
CS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression Rosencrantz & Guildenstern Are Dead (Tom Stoppard) Rigged Lottery? And the winning numbers are: 1, 2, 3, 4, 5, 6 But is
More informationCHAPTER 0: BACKGROUND (SPRING 2009 DRAFT)
CHAPTER 0: BACKGROUND (SPRING 2009 DRAFT) MATH 378, CSUSM. SPRING 2009. AITKEN This chapter reviews some of the background concepts needed for Math 378. This chapter is new to the course (added Spring
More informationLogic. Quantifiers. (real numbers understood). x [x is rotten in Denmark]. x<x+x 2 +1
Logic One reason for studying logic is that we need a better notation than ordinary English for expressing relationships among various assertions or hypothetical states of affairs. A solid grounding in
More informationUndecidability. We are not so much concerned if you are slow as when you come to a halt. (Chinese Proverb)
We are not so much concerned if you are slow as when you come to a halt. (Chinese Proverb) CS /55 Theory of Computation The is A TM = { M,w M is a TM and w L(M)} A TM is Turing-recognizable. Proof Sketch:
More informationProof Techniques (Review of Math 271)
Chapter 2 Proof Techniques (Review of Math 271) 2.1 Overview This chapter reviews proof techniques that were probably introduced in Math 271 and that may also have been used in a different way in Phil
More informationGödel s Incompleteness Theorem. Overview. Computability and Logic
Gödel s Incompleteness Theorem Overview Computability and Logic Recap Remember what we set out to do in this course: Trying to find a systematic method (algorithm, procedure) which we can use to decide,
More informationTuring 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 informationComputational 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