Computability Theory

Size: px
Start display at page:

Download "Computability Theory"

Transcription

1 Computability Theory Cristian S. Calude May 2012 Computability Theory 1 / 1

2 Bibliography M. Sipser. Introduction to the Theory of Computation, PWS (textbook) Computability Theory 2 / 1

3 Supplementary bibliography 1 A. A. Abbott, C. S. Calude, K. Svozil. A quantum random oracle, in S. B. Cooper, J. van Leeuwen (eds.). Alan Turing, His Work and Impact, Elsevier, Amsterdam, 2012, to appear. C. S. Calude. Incompleteness: A Personal Perspective, Google Technical Talk, Mountainview, USA, 4 November 2008, J. P. Dowling. To compute or not to compute? Nature 439, 23 February 2006, Computability Theory 3 / 1

4 Supplementary bibliography 2 R. Lipton and K. Regan. Random Axioms and Gödel Incompleteness, Lipton s blog: A Personal View of the Theory of Computation, 03/30/random-axioms-and-gdel-incompleteness/, March 30, H. Zenil (ed.). Randomness Through Computation, World Scientific, Singapore, S. Wolfram. The New Kind of Science, Wolfram Media, 2002, Hypercomputation Research Network, Computability Theory 4 / 1

5 Church-Turing thesis revisited 1 The Church-Turing thesis (formerly known as Church s thesis) says that every intuitively computable function is computable by some Turing machine. There are conflicting points of view about the Church-Turing thesis... Computability Theory 5 / 1

6 Church-Turing thesis revisited 2 (1) There has never been a proof for Church-Turing thesis; in fact it cannot be proven. The evidence for its validity comes from the fact that every realistic model of computation, yet discovered, has been shown to be equivalent. (2) A device which could answer questions beyond those that a Turing machine can answer would disprove the Church-Turing thesis. No such convincing device has been found (yet). Hypercomputation is searching for such a device. Computability Theory 6 / 1

7 Physical Church-Turing thesis or Here are two formulations out of a much larger set: every real-world computation can be translated into an equivalent computation involving a Turing machine any physical process can be simulated by some Turing machine. Both formulations would be falsified by the existence of genuine random processes. A. Turing: a machine with a random element can do more than a Turing Machine (see Turing 1950, pp ). What is more? Computability Theory 7 / 1

8 Wolfram s principle of computational equivalence Almost all processes that are not obviously simple can be viewed as computations of equivalent sophistication. In detail, the principle of computational equivalence says that: the systems found in nature can perform computations up to a maximal ( universal ) level of computational power, and that most systems do in fact attain this maximal level of computational power, so most systems are computationally equivalent. For example, the workings of the human brain or the evolution of weather systems can, in principle, compute the same things as a computer. Computability Theory 8 / 1

9 Recap A TM = { M, w : M is a TM and M accepts w}. HALT TM = { M, w : M is a TM and M halts on input w}. Theorem 4.11 A TM is undecidable. Theorem 5.1 HALT TM is undecidable. Computability Theory 9 / 1

10 Undecidable problems 1 The strategy used in the proof of undecidability of HALT TM was the following: we assumed that HALT TM is decidable and use that assumption to show that A TM is decidable, contradicting Theorem We will use this method to prove the undecidability of other problems. Computability Theory 10 / 1

11 Undecidable problems 2 E TM = { M : M is a TM and L(M) = }. Theorem 5.2 E TM is undecidable. Proof. First we construct the auxiliary TM M 1 based on a TM M and string w: M 1 = On input string x: 1. If x w, reject. 2. If x = w, run M on input w and accept if M does. Computability Theory 11 / 1

12 Undecidable problems 3 Proof of Theorem 5.2 continued. Assume that TM R decides E TM and construct TM S that decides A TM : S = On input M, w, an encoding of a TM M and a string w: 1. Use the description of M and w to construct the TM M 1 described before. 2. Run R on input M If R accepts, reject; if R rejects, accept. If R were a decider for E TM, S would be a decider for A TM, a contradiction. Computability Theory 12 / 1

13 Undecidable problems 4 EQ TM = { M 1, M 2 : M 1 and M 2 are TMs and L(M 1 ) = L(M 2 )}. Theorem 5.4 EQ TM is undecidable. Proof. Let R decide EQ TM and construct TM S to decide E TM : S = On input M, where M is a TM: 1. Run R on input M, M 1, where M 1 is a TM that rejects all inputs. 2. If R accepts, accept; if R rejects, reject. If R decides EQ TM, S decides E TM, which by Theorem 5.2 is a contradiction. Computability Theory 13 / 1

14 Mapping reducibility 1 The notion of reducing one problem to another may be defined formally in one of several ways. Our choice is a simple type of reducibility called mapping reducibility or many-one reducibility. A problem A can be reduced to a problem B by using a mapping reducibility if there is a computable function that converts instances of problem A to instances of problem B. If we have such a conversion function we can solve A with a solver for B. Reason: any instance of A can be solved by first using the reduction to convert it to an instance of B and then applying the solver for B. Computability Theory 14 / 1

15 Mapping reducibility 2 A function f : Σ Σ is called computable if some TM M, on every input w, halts with f (w) on its tape. All usual arithmetic operations on integers are computable functions. All usual string operations are computable functions. Computable functions may be transformations of TM descriptions. For example, the function that takes an input string w and returns 1 if w = M is an encoding of a TM or returns 0 in the opposite case, is computable. Computability Theory 15 / 1

16 Formal definition of mapping reducibility 1 Language A is mapping reducible to language B, written A m B, if there is a computable function f : Σ Σ, where for every w Σ w A f (w) B. The function f is called the reduction of A to B. To test whether w A we use the reduction f to map w to f (w) and test whether f (w) B. Computability Theory 16 / 1

17 Formal definition of mapping reducibility 2 Theorem 5.22 If A m B and B is decidable, then A is decidable. Proof. Let M be the decider for B and f be the reduction from A to B. Here is a decider N for A: N = On input w: 1. Compute f (w). 2. Run M on input f (w) and output whatever M outputs. So, w A iff f (w) B because f is a reduction from A to B. Computability Theory 17 / 1

18 Formal definition of mapping reducibility 3 Corollary If A m B and A is undecidable, then B is undecidable. Proof. Assume by contradiction that B is decidable. Then, by Theorem 5.22, A is decidable, a contradiction. Computability Theory 18 / 1

19 Formal definition of mapping reducibility 4 Theorem 5.28 If A m B and B is Turing-recognisable, then A is Turing-recognisable. Proof. The proof is the same as that of Theorem 5.22, except that M and N are recognisers instead of deciders. Let M be the recogniser for B and f be the reduction from A to B. The recogniser N for A is: N = On input w: 1. Compute f (w). 2. Run M on input f (w) and output whatever M outputs. So, w A iff f (w) B because f is a reduction from A to B. Computability Theory 19 / 1

20 Formal definition of mapping reducibility 5 Corollary 5.29 If A m B and A is not Turing-recognisable, then B is not Turing-recognisable. Proof. Assume A m B. If A is not Turing-recognisable then B cannot be Turing-recognisable because by Theorem 5.28 A would be Turing-recognisable. Computability Theory 20 / 1

21 Example 1 Example 5.24 A TM m HALT TM. Proof. We will construct a computable function f that takes input of the form M, w and returns output of the form M, w, where M, w A TM M, w HALT TM. The following TM F computes f. F = On input M, w : 1. Construct the following machine M. M = On input x: 1. Run M on x. 2. If M accepts, accept. 3. If M rejects, enter a loop. 2. Output M, w. Computability Theory 21 / 1

22 Example continued 1 Improperly formed input strings i.e. inputs not of the form M, w (where M is a TM and w is a string) can be detected and in such a case F outputs a string not in HALT TM. How does the proof compare with the proof of Theorem 5.1? Computability Theory 22 / 1

23 Example 2 Example 5.26 E TM m EQ TM. Proof. The reduction f maps the input M to the output M, M 1, where M 1 is the TM that rejects all inputs (revisit the proof of Theorem 5.4). Computability Theory 23 / 1

24 Example 3 Example 5.27 A TM m E TM. Proof. From the reduction in the proof of Theorem 5.2.2, we construct a function f that takes input M, w and produces output M 1, where M 1 is the TM described in that proof. As M accepts w iff L(M 1 ), f is a mapping reduction from A TM to E TM. Computability Theory 24 / 1

25 Example 4 Example A If A TM m B, then B is not Turing-recognisable. Proof. As A TM m B, we have A TM m B = B, so by Corollary 4.23 and Corollary 5.29, B is not Turing-recognisable. Example B E TM is not Turing-recognisable. Proof. Use Example A and Example Computability Theory 25 / 1

26 Example 5 Example C If A m B, A m B, and B is Turing-recognisable, then A is decidable. Proof. First, from A m B and B is Turing-recognisable we deduce, using Theorem 5.28, that A is Turing-recognisable. If A m B, then A m B = B and B is Turing-recognisable we deduce, using Theorem 5.28, that A is Turing-recognisable. Since A and A are Turing-recognisable, A is decidable (Theorem 4.22). Computability Theory 26 / 1

27 Example 6 Example D A TM m E TM. Proof. In Example C we put: A = A TM, B = E TM. By Example 5.27, A TM m E TM. Since the language E TM is Turing-recognisable, if A TM m E TM, then by Example C, A TM is decidable, a contradiction (Theorem 4.9). Computability Theory 27 / 1

28 The remarkable language EQ TM 1 Recall that EQ TM = { M 1, M 2 : M 1 and M 2 are TMs and L(M 1 ) = L(M 2 )}. Theorem 5.30 EQ TM is not Turing-recognisable nor co-turing-recognisable. Proof. First we show that EQ TM is not Turing-recognisable by showing that A TM m EQ TM. Computability Theory 28 / 1

29 The remarkable language EQ TM 2 The reducing function f works as follows. F = On input M, w where M is a TM and w a string: 1. Construct the following two machines M 1 and M 2. M 1 = On any input: 1. Reject. M 2 = On any input: 1. Run M on w. If it accepts, accept. 2. Output M 1, M 2. Here, M 1 accepts nothing. If M accepts w, M 2 accepts everything, and so the two TMs are not equivalent. Conversely, if M doesn t accept w, M 2 accepts nothing, and the TMs are equivalent. Computability Theory 29 / 1

30 The remarkable language EQ TM 3 To show that EQ TM is not Turing-Recognisable we give a reduction from A TM to the complement of EQ TM which is simply EQ TM. Hence we show that A TM m EQ TM. The following TM G computes the reducing function g: G = The input is M, w where M is a TM and w a string: 1. Construct the following two machines M 1 and M 2. M 1 = On any input: 1. Accept. M 2 = On any input: 1. Run M on w. If it accepts, accept. 2. Output M 1, M 2. Computability Theory 30 / 1

31 The remarkable language EQ TM 4 The only difference between f and g is in the construction of the TM machine M 1. In f, machine M 1 always rejects, whereas in g it always accepts. In both f and g, M accepts w iff M 2 always accepts. In g, M accepts w iff L(M 1 ) = L(M 2 ) showing that A TM m EQ TM. Computability Theory 31 / 1

32 Rice s theorem 1 Rice s theorem (Problem 5.28) Let P be a language consisting of TM descriptions where P fulfils two conditions. First, P is nontrivial it contains some, but not all, TM descriptions. Second, P is a property of the TM s language whenever L(M 1 ) = L(M 2 ), we have M 1 P iff M 2 P. Here M 1 and M 2 are any TMs. Then, P is undecidable. Proof. Assume for the sake of a contradiction that P is decidable and let R P be a TM that decides P. We will show how to use R P to decide A TM obtaining a contradiction (Theorem 4.11). Computability Theory 32 / 1

33 Rice s theorem 2 Proof of Rice s theorem continued. First let T be a TM such that L(T ) =. You may assume that T P without loss of generality (otherwise proceed with P instead of P). Secondly, because P is not trivial, there exists a TM T with T P. Computability Theory 33 / 1

34 Rice s theorem 2 Proof of Rice s theorem continued. The following TM S decides A TM. S = On input M, w : 1. Use M and w to construct the following TM M w. M w = On input x: 1. Simulate M on w. If it halts and rejects, reject. If it accepts, proceed to stage Simulate T on x. If it accepts, accept. 2. Use TM R P to determine whether M w P. If YES, accept. If NO, reject. Computability Theory 34 / 1

35 Rice s theorem 3 Proof of Rice s theorem continued. TM M w simulates T if M accepts w, hence { L(T ), if M accepts w, L(M w ) =, if M does not accept w, { L(T ), if M accepts w, = L(T ), if M does not accept w. Therefore M w P iff M accepts w. Computability Theory 35 / 1

36 Rice s theorem 4 Corollary to Rice s Theorem The following languages 1 { M : L(M) = }, 2 { M : L(M) = infinite}, 3 { M : L(M) = finite}, 4 { M : L(M) = regular}, 5 { M : 10 L(M)}, 6 { M : L(M) = Σ }. are undecidable. Proof. Each property specified in the languages above is a nontrivial property of the TM s language so it satisfies Rice s Theorem. Computability Theory 36 / 1

37 Turing reducibility 1 The mapping reducibility was introduced to model the idea of reducing one problem to another one: if A is reducible to B, and we find a solution to B, we can obtain a solution to A. We now test its adequacy for the languages A TM and A TM. Intuitively, A TM and A TM are reducible to one another because a solution to either could be used to solve the other by simply reversing the answer. However, we know that A TM m A TM because A TM is Turing-recognisable but A TM is not. Computability Theory 37 / 1

38 Turing reducibility 2 Definition 6.18 An oracle for a language B is an external device that is capable of reporting whether any string w is a member of B. According to Turing We shall not go any further into the nature of this oracle apart from saying that it cannot be a machine. An oracle Turing machine is a modified TM that has the additional capability of querying an oracle. We write M B to describe an oracle TM that has an oracle for language B. We accept the term oracle as a magical ability and consider oracles for possibly non-decidable languages. Computability Theory 38 / 1

39 Turing reducibility 3 Example 6.19 Consider an oracle for A TM. An oracle TM M A TM can decide undecidable languages languages, for example, A TM itself, by querying the oracle about the input. The following oracle TM T A TM decides E TM. T A TM = On input M, where M is a TM: 1. Construct the following TM N. N = On any input: 1. Run M in parallel on all strings in Σ. 2. If M accepts any of these strings, accept. 2. Query the oracle to determine whether N, 0 A TM. 3. If the oracle answers NO, accept; if YES, reject. Computability Theory 39 / 1

40 Turing reducibility 4 Example 6.19 continued. If L(M), then N will accept every input and, in particular, input 0. Hence the oracle will answer YES, and T A TM Conversely, if L(M) =, then L(N) =, T A TM will reject. will accept. Thus T A TM decides E TM. We also say that E TM is decidable relative to A TM. Computability Theory 40 / 1

41 Turing reducibility 5 Definition 6.20 Language A is Turing reducible to language B, written A T B, if A is decidable relative to B. Example 6.19 shows that E TM is Turing reducible to A TM. Computability Theory 41 / 1

42 Turing reducibility 6 Turing reducibility satisfies our intuitive concept of reducibility: Theorem 6.21 If A T B and B is decidable, then A is decidable. Proof. If B is decidable, then we may replace the oracle for B by an actual TM that decides B. Thus we may replace the oracle TM M B that decides A by an ordinary TM D that decides A. Fact If A m B, then A T B, because the mapping reduction may be used to give an oracle TM that decides A relative to B. Computability Theory 42 / 1

43 Turing reducibility 7 Theorem HALT TM is Turing-complete, i.e. a) it is Turing-recognisable and b) it can decide any Turing-recognisable set. Proof. The language HALT TM is Turing-recognisable (same type of proof as in Theorem 4.11). Let B be Turing-recognisable by a TM M. The following TM, R HALT TM decides B: R HALT TM = On input M, w : 1. If M, w is in HALT TM, then run M on w and produce the same output; 2. If M, w is not in HALT TM, then reject. Computability Theory 43 / 1

44 Berry s paradox The least integer not definable by an English sentence with less than fifteen words. The sentence above has 14 words! Computability Theory 44 / 1

45 Probability theory paradox If we toss an unbiassed coin 100 times then, according to probability theory, 100 heads are just as probable as any other outcome. Do you really believe this? Probability theory does not explain all mysteries that are sometimes supposed to do! Computability Theory 45 / 1

46 Four strings Consider the information content of the following strings: A= B= C= D= Computability Theory 46 / 1

47 Minimal length descriptions 1 Try to memorise as many strings in the previous slide as you can. Which strings contain more information? Why? Computability Theory 47 / 1

48 Minimal length descriptions 2 We define the quantity of information contained in an object (= binary string, for this discussion) to be the size of that object s smallest description a precise and unambiguous characterisation of the object so that we may recreate it from the description alone. Why do we consider only the shortest description when determining a string s quantity of information? Computability Theory 48 / 1

49 Minimal length descriptions 2 We can easily describe a string by placing a copy of itself directly into the description. Thus we can obviously describe the preceding string D with a table that is 64 bits long containing a copy of D. This description does not tell us anything about its information quantity. A significantly shorter description implies that the information contained within it can be compressed into a small volume, and so the amount of information cannot be very large. Hence the size of the shortest description determines the amount of information. Computability Theory 49 / 1

50 Minimal length descriptions 3 In what follows we use TM computations to describe strings. We describe a string x with a TM M and a binary input w to M. The length of the description is the combined length of representing M and w: M, w = M w. Because we use prefix-free encoding, from M, w we can uniquely extract its components M and w, and M, w = 2 M + w. Computability Theory 50 / 1

51 Minimal length descriptions 4 Definition 6.3 Let x be a binary string. The minimal description of x, written d(x), is the shortest string M, w where TM M on input w halts with x on its tape. If several such strings exist, select the lexicographically first among them. The descriptive complexity or Kolmogorov-Chaitin complexity of x, written K(x), is K(x) = d(x). Computability Theory 51 / 1

52 Minimal length descriptions 5 Theorem 6.24 c x [K(x) x + c]. Proof. Consider the following description of the string x. Let M(x)=x be a TM that computes the identity function. A description of x is simply M, x which has the length: M, w = 2 M + x = x + c, where c = 2 M is a fixed constant depending on the particular M used (not on x). Computability Theory 52 / 1

53 Minimal length descriptions 6 Theorem 6.25 c x [K(xx) K(x) + c]. Proof. Consider the following TM M, which expects an input of the form N, w, where N is a TM and w is an input for it. M = On input N, w : 1. Run N on w until it halts and produces an output string s. 2. Output the string ss. A description of xx is M d(x). As d(x) is a minimal description of x, the length of this description is where c = M. M d(x) = M + d(x) = c + K(x), Computability Theory 53 / 1

54 Minimal length descriptions 7 Theorem 6.26 c x, y [K(xy) 2K(x) + K(y) + c]. Proof. We construct a TM M that breaks its input w into two separate descriptions. The bits of the first description d(x) are all doubled, string 01 follows and finally the description d(y). Once both descriptions have been obtained, they are run to obtain the strings x and y and output xy. The length of this description of xy is the sum 2K(x) + K(y) + the description for M. Computability Theory 54 / 1

55 Minimal length descriptions 8 Theorem (Problem 6.22) The function K is not computable. Proof. Assume for a contradiction that K is computable. Fix m 0 and define f m = min[x : K(x) > m], where min is in taken according to the lexicographical order. As K is unbounded, for every m there exists a string x such that K(x) > m. Because K is computable, f m is also computable, say, by a TM R. Clearly, R log 2 (m) + constant < m, for large enough m and R ε is a description of a string x with K(x) > m, a contradiction. Computability Theory 55 / 1

56 Optimality of the definition 1 K(x) has an optimality property among all possible ways of defining descriptive complexity with algorithms. A general description language is a computable function p : Σ Σ ; the minimal description of x with respect to p, written d p (x), is the lexicographically shortest string s where p(s) = x and K p (x) = d p (x). For example, for LISP (encoded into binary) as the description language, d L1SP (x) is the minimal LISP program that outputs x, and K L1SP (x) is the length of the minimal program. Computability Theory 56 / 1

57 Optimality of the definition 2 Theorem 6.27 For any descriptional language p, a fixed constant c exists that depends only on p, such that x [K(x) K p (x) + c]. Proof. Let p be a description language and consider the following TM M: M = On input w: 1. Output p(w). Then M d p (x) is a description of x and where c = M. M d p (x) = K p (x) + M = K p (x) + c, Computability Theory 57 / 1

58 Incompressible strings and randomness 1 Theorem 6.24 shows that a string s minimal description is never much longer than the string itself. Of course for some strings, the minimal description may be much shorter if the information in the string appears sparsely or redundantly. But, do some strings lack short descriptions? Definition 6.28 A string x is c-compressible (1 c < x ) if K(x) x c. If x is not c-compressible, we say that x is incompressible by c. If x is incompressible by 1, we say that x is incompressible. Do incompressible strings exist? Computability Theory 58 / 1

59 Incompressible strings and randomness 2 Theorem 6.29 Incompressible strings of every length exist. Proof. Each description is a binary string, so the number of descriptions of length less than n is at most the sum of the number of strings length 0, 1,... up to n 1: n 1 = 2 n 1. The number of short descriptions is less than the number of strings of length n which is 2 n, so at least one string of length n is incompressible. Computability Theory 59 / 1

60 Incompressible strings and randomness 3 Corollary 6.30 At least 2 n 2 n c strings of length n are incompressible by c. Proof. As in the proof of Theorem 6.29, at most 2 n c+1 1 strings of length n are c-compressible (at most that many descriptions of length at most n c exist), hence the remaining 2 n (2 n c+1 1) strings of length n are incompressible by c. Incompressible strings have many properties of random strings, i.e. the set of incompressible strings is not computable, in a long enough incompressible string the numbers of 0s and 1s are roughly equal and the length of its longest run of 0s is about the log of the string s length. Computability Theory 60 / 1

61 Incompressible strings and randomness 4 The probability that a string x of length n is c-compressible is #{ x = n : K(x) n c} 2 n (2 n c+1 1) 2 n < 2 1 c, so the probability that a string x of length n is not c-compressible is #{ x = n : K(x) n c} 2 n c. For example, the probability that a string x of length n is not n/2-compressible is smaller than 2 1 n/2 which converges to 0 when n tends to infinity, while the probability that a string x of length n is n/2-compressible is larger than n/2 which converges to 1 when n tends to infinity. Computability Theory 61 / 1

62 Probability theory paradox revisited 1 According to probability theory every string of length 100 has the same probability = , The probability of getting a 50-compressible string of length 100 is at most Computability Theory 62 / 1

63 Probability theory paradox revisited 2 The probability of getting a 100-bit string which is not 50-compressible is at least far higher than , Computability Theory 63 / 1

64 Incompressible strings and randomness 5 Theorem (undecidability) For every b > 0, the set R b = {x : K(x) > x b} is not Turing-recognisable, in particular, undecidable. Proof. Assume for the sake of a contradiction that R b is enumerated by a TM M. Let E be a computable infinite subset of R b and define the function (defined on a non-negative integer represented in binary): p(n) = min[x E : x > n], where min is taken according to the fixed enumeration given by M. Computability Theory 64 / 1

65 Incompressible strings and randomness 6 Theorem (undecidability) continued. The function p has the following properties: 1 As E R b is computable and infinite, p is computable. 2 For each n, p(n) E R b, so K(p(n)) p(n) b > n b. 3 Finally, in view of Theorem 6.27, there exists constant c such that for all n: n b < K(p(n)) K p (p(n)) + c log 2 (n) + c + 1, a contradiction. Computability Theory 65 / 1

66 Incompressible strings and randomness 7 Corollary (Problem 6.23) The set of incompressible strings is undecidable. Proof. Put b = 1 in the above Theorem. Theorem (Problem 6.24) The set of incompressible strings contains no infinite Turing-recognisable set. Proof. Use an infinite Turing-recognisable set D R b instead of R b in the proof of the above Theorem. Computability Theory 66 / 1

67 Incompressible strings provability 1 Consider a formal theory (like Peano arithmetic or ZFC set theory) whose theorems can be enumerated by a TM. Assume: 1 All theorems are true. 2 The theory can express all statements of the form K(x) > m, where x is a string and m > 0 is an integer. Computability Theory 67 / 1

68 Incompressible strings provability 2 Theorem (Chaitin) There exists a constant c (depending on the formal system only) such that for every theorem of the form K(x) > m we have m < c. Proof. Construct the function computable p (defined on non-negative integers represented in binary) as follows: p(i) = x if K(x) > s is the first theorem (in the order generated by the formal system) of the form K(x) > s with s i. Because all theorems are true, K(p(i)) > s i. In view of Theorem 6.27, there exists a c such that for all i: a contradiction. i s < K(p(i)) K p (p(i)) + c log 2 (i) + c + 1, Computability Theory 68 / 1

69 Incompressible strings provability 3 Corollary (Gödel) In the context of the above theorem, there exist infinitely many true statements (expressible in the formal theory) which are not theorems (not provable in the formal theory). Proof. First, as K is unbounded, there are infinitely many true statements of the form K(x) > m, all expressible in the formal theory. By Chaitin s Theorem, there exists a constant c such that if K(x) > s is the first theorem generated in the formal theory, then s c. Consequently, no statement in the infinite set { K(x) > m : K(x) > m > c} is a theorem (but each such statement is true). Computability Theory 69 / 1

70 Oracles Following Definition 6.18 we said: We accept the term oracle as a magical ability and consider oracles for possibly non-decidable languages. Are Turing oracles real or just pure theoretical mathematical notions? Computability Theory 70 / 1

71 Quantum mechanics Quantum mechanics is a world that appears to behave randomly and is essentially non-deterministic. The failures of a deterministic viewpoint to account for the predictions of quantum mechanics are exemplified by no-go theorems which exclude the possibility of assigning hidden variables that predict the outcome of quantum measurements. Computability Theory 71 / 1

72 Quantum random number generators Can be easily and reliably produced: A photon generated by a source beamed to a semitransparent mirror is reflected or transmitted with 50 per cent chance, and these measurements can be translated into a string of quantum random bits. Computability Theory 72 / 1

73 Quantum random oracles Let x be the sequence of bits obtained from the concatenation of repeated state preparations and non-trivial measurements. If the experiment is certified by value-indefiniteness roughly speaking, the variable measured has no definite value 0 or 1 before measurement then the sequence x is bi-immune, i.e. no Turing machine can compute more than finitely many bits of it. Such experiments exist, so it follows that x is a real oracle! Computability Theory 73 / 1

74 Quantum random oracle Turing machines A Turing machine working with the oracle x trespasses the Turing barrier. Does this fact challenge the Church-Turing thesis? Open problem: Does a Turing machine working with the oracle x solve the halting problem? Computability Theory 74 / 1

Introduction to Languages and Computation

Introduction to Languages and Computation Introduction to Languages and Computation George Voutsadakis 1 1 Mathematics and Computer Science Lake Superior State University LSSU Math 400 George Voutsadakis (LSSU) Languages and Computation July 2014

More information

Lecture 13: Foundations of Math and Kolmogorov Complexity

Lecture 13: Foundations of Math and Kolmogorov Complexity 6.045 Lecture 13: Foundations of Math and Kolmogorov Complexity 1 Self-Reference and the Recursion Theorem 2 Lemma: There is a computable function q : Σ* Σ* such that for every string w, q(w) is the description

More information

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

FORMAL 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 information

CS154, Lecture 12: Kolmogorov Complexity: A Universal Theory of Data Compression

CS154, 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 information

Computability Theory

Computability Theory Computability Theory Cristian S. Calude and Nicholas J. Hay May June 2009 Computability Theory 1 / 155 1 Register machines 2 Church-Turing thesis 3 Decidability 4 Reducibility 5 A definition of information

More information

,

, Kolmogorov Complexity Carleton College, CS 254, Fall 2013, Prof. Joshua R. Davis based on Sipser, Introduction to the Theory of Computation 1. Introduction Kolmogorov complexity is a theory of lossless

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

Computational Models Lecture 9, Spring 2009

Computational 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 information

CS 125 Section #10 (Un)decidability and Probability November 1, 2016

CS 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 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

CISC 876: Kolmogorov Complexity

CISC 876: Kolmogorov Complexity March 27, 2007 Outline 1 Introduction 2 Definition Incompressibility and Randomness 3 Prefix Complexity Resource-Bounded K-Complexity 4 Incompressibility Method Gödel s Incompleteness Theorem 5 Outline

More information

Finish K-Complexity, Start Time Complexity

Finish K-Complexity, Start Time Complexity 6.045 Finish K-Complexity, Start Time Complexity 1 Kolmogorov Complexity Definition: The shortest description of x, denoted as d(x), is the lexicographically shortest string such that M(w) halts

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

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

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

1 Reducability. CSCC63 Worksheet Reducability. For your reference, A T M is defined to be the language { M, w M accepts w}. Theorem 5.

1 Reducability. CSCC63 Worksheet Reducability. For your reference, A T M is defined to be the language { M, w M accepts w}. Theorem 5. CSCC63 Worksheet Reducability For your reference, A T M is defined to be the language { M, w M accepts w}. 1 Reducability Theorem 5.1 HALT TM = { M, w M is a T M that halts on input w} is undecidable.

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

Large Numbers, Busy Beavers, Noncomputability and Incompleteness

Large Numbers, Busy Beavers, Noncomputability and Incompleteness Large Numbers, Busy Beavers, Noncomputability and Incompleteness Food For Thought November 1, 2007 Sam Buss Department of Mathematics U.C. San Diego PART I Large Numbers, Busy Beavers, and Undecidability

More information

17.1 The Halting Problem

17.1 The Halting Problem CS125 Lecture 17 Fall 2016 17.1 The Halting Problem Consider the HALTING PROBLEM (HALT TM ): Given a TM M and w, does M halt on input w? Theorem 17.1 HALT TM is undecidable. Suppose HALT TM = { M,w : M

More information

Final Exam Comments. UVa - cs302: Theory of Computation Spring < Total

Final Exam Comments. UVa - cs302: Theory of Computation Spring < Total UVa - cs302: Theory of Computation Spring 2008 Final Exam Comments < 50 50 59 60 69 70 79 80 89 90 94 95-102 Total 2 6 8 22 16 16 12 Problem 1: Short Answers. (20) For each question, provide a correct,

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

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

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

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

CSCI3390-Lecture 6: An Undecidable Problem

CSCI3390-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 information

CSE 105 THEORY OF COMPUTATION

CSE 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 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

CS 361 Meeting 26 11/10/17

CS 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 information

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch

6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch 6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 8 Nancy Lynch Today More undecidable problems: About Turing machines: Emptiness, etc. About

More information

CS154, Lecture 10: Rice s Theorem, Oracle Machines

CS154, 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 information

6.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, 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 information

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch]

Undecidability. 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 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

The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational

The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational 1 The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational model. We'll remind you what a Turing machine is --- you

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

q FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY. FLAC (15-453) Spring L. Blum. REVIEW for Midterm 2 TURING MACHINE

q FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY. FLAC (15-453) Spring L. Blum. REVIEW for Midterm 2 TURING MACHINE FLAC (15-45) Spring 214 - L. Blum THURSDAY APRIL 15-45 REVIEW or Midterm 2 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY TUESDAY April 8 Deinition: A Turing Machine is a 7-tuple T = (Q, Σ, Γ,, q, q accept,

More information

UNIT-VIII COMPUTABILITY THEORY

UNIT-VIII COMPUTABILITY THEORY CONTEXT SENSITIVE LANGUAGE UNIT-VIII COMPUTABILITY THEORY A Context Sensitive Grammar is a 4-tuple, G = (N, Σ P, S) where: N Set of non terminal symbols Σ Set of terminal symbols S Start symbol of the

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

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

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

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

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

Theory of Computation

Theory of Computation Theory of Computation Lecture #6 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 39 Lecture 6: Overview Prove the equivalence of enumerators and TMs. Dovetailing

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

SD & Turing Enumerable. Lecture 33: Reductions and Undecidability. Lexicographically Enumerable. SD & Turing Enumerable

SD & Turing Enumerable. Lecture 33: Reductions and Undecidability. Lexicographically Enumerable. SD & Turing Enumerable SD & Turing Lecture 33: Reductions and Undecidability CSCI 81 Spring, 2012 Kim Bruce Theorem: A language is SD iff it is Turing enumerable. Proof: Spose L is Turing enumerable. Show L is SD. Let w be input.

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

Most General computer?

Most 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 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

Computation. Some history...

Computation. Some history... Computation Motivating questions: What does computation mean? What are the similarities and differences between computation in computers and in natural systems? What are the limits of computation? Are

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

Mapping Reductions. Mapping Reductions. Introduction to Computability. Theory. Mapping Reductions. Lecture13: Mapping. Reductions

Mapping Reductions. Mapping Reductions. Introduction to Computability. Theory. Mapping Reductions. Lecture13: Mapping. Reductions Introduction to Computability Theory Lecture13: apping Reductions Prof. Amos Israeli 1 apping Reductions apping reductionsconstitute the generalization we are looking for. They are always in a specified

More information

Non-emptiness Testing for TMs

Non-emptiness Testing for TMs 180 5. Reducibility The proof of unsolvability of the halting problem is an example of a reduction: a way of converting problem A to problem B in such a way that a solution to problem B can be used to

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

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines

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

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

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Today's learning goals Summarize key concepts, ideas, themes from CSE 105. Approach your final exam studying with

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

Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis

Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harry Lewis October 22, 2013 Reading: Sipser, 3.2, 3.3. The Basic Turing Machine The Basic Turing Machine a a b a

More information

The Turing machine model of computation

The Turing machine model of computation The Turing machine model of computation For most of the remainder of the course we will study the Turing machine model of computation, named after Alan Turing (1912 1954) who proposed the model in 1936.

More information

About the relationship between formal logic and complexity classes

About the relationship between formal logic and complexity classes About the relationship between formal logic and complexity classes Working paper Comments welcome; my email: armandobcm@yahoo.com Armando B. Matos October 20, 2013 1 Introduction We analyze a particular

More information

CPSC 421: Tutorial #1

CPSC 421: Tutorial #1 CPSC 421: Tutorial #1 October 14, 2016 Set Theory. 1. Let A be an arbitrary set, and let B = {x A : x / x}. That is, B contains all sets in A that do not contain themselves: For all y, ( ) y B if and only

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

Theory of Computation (IX) Yijia Chen Fudan University

Theory of Computation (IX) Yijia Chen Fudan University Theory of Computation (IX) Yijia Chen Fudan University Review The Definition of Algorithm Polynomials and their roots A polynomial is a sum of terms, where each term is a product of certain variables and

More information

Computability and Complexity

Computability and Complexity Computability and Complexity Decidability, Undecidability and Reducibility; Codes, Algorithms and Languages CAS 705 Ryszard Janicki Department of Computing and Software McMaster University Hamilton, Ontario,

More information

Turing Machines (TM) The Turing machine is the ultimate model of computation.

Turing Machines (TM) The Turing machine is the ultimate model of computation. TURING MACHINES Turing Machines (TM) The Turing machine is the ultimate model of computation. Alan Turing (92 954), British mathematician/engineer and one of the most influential scientists of the last

More information

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class CSE 105 THEORY OF COMPUTATION Spring 2018 review class Today's learning goals Summarize key concepts, ideas, themes from CSE 105. Approach your final exam studying with confidence. Identify areas to focus

More information

CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010

CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010 CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010 We now embark on a study of computational classes that are more general than NP. As these classes

More information

Homework 8. a b b a b a b. two-way, read/write

Homework 8. a b b a b a b. two-way, read/write Homework 8 309 Homework 8 1. Describe a TM that accepts the set {a n n is a power of 2}. Your description should be at the level of the descriptions in Lecture 29 of the TM that accepts {ww w Σ } and the

More information

Lecture 20: conp and Friends, Oracles in Complexity Theory

Lecture 20: conp and Friends, Oracles in Complexity Theory 6.045 Lecture 20: conp and Friends, Oracles in Complexity Theory 1 Definition: conp = { L L NP } What does a conp computation look like? In NP algorithms, we can use a guess instruction in pseudocode:

More information

Complexity Theory Part I

Complexity Theory Part I Complexity Theory Part I Outline for Today Recap from Last Time Reviewing Verifiers Nondeterministic Turing Machines What does nondeterminism mean in the context of TMs? And just how powerful are NTMs?

More information

CS154, Lecture 17: conp, Oracles again, Space Complexity

CS154, Lecture 17: conp, Oracles again, Space Complexity CS154, Lecture 17: conp, Oracles again, Space Complexity Definition: conp = { L L NP } What does a conp computation look like? In NP algorithms, we can use a guess instruction in pseudocode: Guess string

More information

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION FORMAL LANGUAGES, AUTOMATA AND COMPUTATION DECIDABILITY ( LECTURE 15) SLIDES FOR 15-453 SPRING 2011 1 / 34 TURING MACHINES-SYNOPSIS The most general model of computation Computations of a TM are described

More information

CSCE 551: Chin-Tser Huang. University of South Carolina

CSCE 551: Chin-Tser Huang. University of South Carolina CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Computation History A computation history of a TM M is a sequence of its configurations C 1, C 2,, C l such

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

A version of for which ZFC can not predict a single bit Robert M. Solovay May 16, Introduction In [2], Chaitin introd

A version of for which ZFC can not predict a single bit Robert M. Solovay May 16, Introduction In [2], Chaitin introd CDMTCS Research Report Series A Version of for which ZFC can not Predict a Single Bit Robert M. Solovay University of California at Berkeley CDMTCS-104 May 1999 Centre for Discrete Mathematics and Theoretical

More information

Decidability: Reduction Proofs

Decidability: Reduction Proofs Decidability: Reduction Proofs Basic technique for proving a language is (semi)decidable is reduction Based on the following principle: Have problem A that needs to be solved If there exists a problem

More information

Gödel s Incompleteness Theorem. Overview. Computability and Logic

Gö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 information

On Rice s theorem. Hans Hüttel. October 2001

On 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 information

Kolmogorov complexity and its applications

Kolmogorov complexity and its applications Spring, 2009 Kolmogorov complexity and its applications Paul Vitanyi Computer Science University of Amsterdam http://www.cwi.nl/~paulv/course-kc We live in an information society. Information science is

More information

Models. Models of Computation, Turing Machines, and the Limits of Turing Computation. Effective Calculability. Motivation for Models of Computation

Models. Models of Computation, Turing Machines, and the Limits of Turing Computation. Effective Calculability. Motivation for Models of Computation Turing Computation /0/ Models of Computation, Turing Machines, and the Limits of Turing Computation Bruce MacLennan Models A model is a tool intended to address a class of questions about some domain of

More information

Kolmogorov complexity

Kolmogorov complexity Kolmogorov complexity In this section we study how we can define the amount of information in a bitstring. Consider the following strings: 00000000000000000000000000000000000 0000000000000000000000000000000000000000

More information

A Note on Turing Machine Design

A Note on Turing Machine Design CS103 Handout 17 Fall 2013 November 11, 2013 Problem Set 7 This problem explores Turing machines, nondeterministic computation, properties of the RE and R languages, and the limits of RE and R languages.

More information

AND RANDOMNESS1 by P. Martin-Lof University of Stockholm

AND RANDOMNESS1 by P. Martin-Lof University of Stockholm REVIEW OF THE INTERNATIONAL STATISTICAL INSITUTE Volume 37: 3, 1969 ALGORITHMS AND RANDOMNESS1 by P. Martin-Lof University of Stockholm 1. KOLMOGOROV'S COMPLEXITY MEASURE Kolmogorov [2] has proposed a

More information

Decidable Languages - relationship with other classes.

Decidable 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 information

Kolmogorov complexity and its applications

Kolmogorov complexity and its applications CS860, Winter, 2010 Kolmogorov complexity and its applications Ming Li School of Computer Science University of Waterloo http://www.cs.uwaterloo.ca/~mli/cs860.html We live in an information society. Information

More information

CSE 105 THEORY OF COMPUTATION

CSE 105 THEORY OF COMPUTATION CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 3.3, 4.1 State and use the Church-Turing thesis. Give examples of decidable problems.

More information

Decidability (What, stuff is unsolvable?)

Decidability (What, stuff is unsolvable?) University of Georgia Fall 2014 Outline Decidability Decidable Problems for Regular Languages Decidable Problems for Context Free Languages The Halting Problem Countable and Uncountable Sets Diagonalization

More information

CS151 Complexity Theory. Lecture 1 April 3, 2017

CS151 Complexity Theory. Lecture 1 April 3, 2017 CS151 Complexity Theory Lecture 1 April 3, 2017 Complexity Theory Classify problems according to the computational resources required running time storage space parallelism randomness rounds of interaction,

More information

Turing Machines. Lecture 8

Turing Machines. Lecture 8 Turing Machines Lecture 8 1 Course Trajectory We will see algorithms, what can be done. But what cannot be done? 2 Computation Problem: To compute a function F that maps each input (a string) to an output

More information

Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage?

Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? What is the most powerful of automata? In this lecture we will introduce

More information

4.2 The Halting Problem

4.2 The Halting Problem 172 4.2 The Halting Problem The technique of diagonalization was discovered in 1873 by Georg Cantor who was concerned with the problem of measuring the sizes of infinite sets For finite sets we can simply

More information

Turing Machines. Reading Assignment: Sipser Chapter 3.1, 4.2

Turing Machines. Reading Assignment: Sipser Chapter 3.1, 4.2 Reading Assignment: Sipser Chapter 31, 42 Turing Machines 41 covers algorithms for decidable problems about DFA, NFA, RegExp, CFG, and PDAs, eg slides 17 & 18 below I ve talked about most of this in class

More information

Reading Assignment: Sipser Chapter 3.1, 4.2

Reading Assignment: Sipser Chapter 3.1, 4.2 Turing Machines 1 Reading Assignment: Sipser Chapter 3.1, 4.2 4.1 covers algorithms for decidable problems about DFA, NFA, RegExp, CFG, and PDAs, e.g. slides 17 & 18 below. I ve talked about most of this

More information

Theory of Computation

Theory 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 information

The Church-Turing Thesis

The Church-Turing Thesis The Church-Turing Thesis Huan Long Shanghai Jiao Tong University Acknowledgements Part of the slides comes from a similar course in Fudan University given by Prof. Yijia Chen. http://basics.sjtu.edu.cn/

More information

CS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction)

CS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction) CS5371 Theory of Computation Lecture 14: Computability V (Prove by Reduction) Objectives This lecture shows more undecidable languages Our proof is not based on diagonalization Instead, we reduce the problem

More information

15-251: Great Theoretical Ideas in Computer Science Fall 2016 Lecture 6 September 15, Turing & the Uncomputable

15-251: Great Theoretical Ideas in Computer Science Fall 2016 Lecture 6 September 15, Turing & the Uncomputable 15-251: Great Theoretical Ideas in Computer Science Fall 2016 Lecture 6 September 15, 2016 Turing & the Uncomputable Comparing the cardinality of sets A B if there is an injection (one-to-one map) from

More information