Week 3: Some undecidable 1. 2. ATM = {<M,w> | M is a TM and M accepts w} is undecidable. ATM is Turing recognizable (recursively enumerable). Diagonalization Method Countable, uncountable Z is countable, ZZ is countable. Theorem: A is a subset of B, and B is countable, then A is also countable. RR has the same size as R. R is uncountable. The set of all languages is uncountable. Theorem: The set L of all TMs, that is L = {<M>| M is a TM}, is countable. Note that L is a subset of * Theorem. There exist a language not decidable. Theorem: ATM = {<M,w> | M is a TM and M accepts w} is undecidable. (proof) Diagnalization. Suppose it is decidable. Then Lu = {<M> | M rejects <M> }. L is also decidable. Let M’ be the Turing machine which decides Lu. Then consider Mu with input <Mu>. If <Mu> is in Lu, then Mu must accepts <Mu>(Mu accepts Lu), also Mu must reject <Mu>(def of x in Lu) , If <Mu> is not in Lu, Mu must reject <Mu>, and if Mu reject <Mu>, then <Mu> must be in Lu, contradiction A non recursively enumerable (Turing-unrecognizable) language: no TM exists Theorem: If A is re and Ac is also r.e., then A is recursive The complement of ATM is not r.e. 3. Hating problem is undecidable. HALTTM = {<M,w> | M is a TM and M halts on input w} is undecidable. Reduce the Universal TM to halting. Proof: Suppose that HALT is decidable then ATM is decidable. Suppose a halting TM R which decides LHALT. Then we can decide ATM = {<M,w>| M accepts w}, a CONTRODICTION. Construct a new TM S as follows: Note that L(S) = LU and S is a halting machine S M halts on w <M,w> R Accept M M does not Halt Halt accept Reject Reject Turing reduction An Oracle for a language B is an external device that reports if x is B or not. We do not care about the effectives of the device. A oracle TM with an oracle B. Definition: Turing reduction A<TB if there is a decision procedure of A with an oracle B. That is, there exists an oracle halting TM M with an oracle B such that L(M)=A. That is, AT B iff an instance of A can be decided using the oracle B. xB? M oracle B yes or no x A<TB and B is decidable, then A is decidable. If A<TB and A is undecidable, then B is undecidable. Theorem: ATM <T HALTTM We proved already. So HALT TM is undecidable. A is r.e. and A is r.e., then A is recursive A TM is not r.e. Theorem: A B and A is not R.E. then B is not R.E. Proof: If B is R.E. then A should be R.E. Given an instance x of A, compute f(x) . Using the TM MB which recognizes B, we can construct a TM M which recognizes A as follows: x f(x) yes MB M Theorem: EQTM is neither R.E. nor co-R.E. Proof: Part1: EQTM is not R.E. yes ATM={<M,w>|M accept w} we know that ATM is R.E., but A TM is not R.E. Constructs the following two TM M1 and M2 : M1: always reject. M2 x w yes yes M Then we know <M,w> is in A TM iff (M1=M2), that is A TM m EQTM Since A TM is not R.E. , EQTM is not R.E. Part2: EQTM is not co-R.E. Construct two following TM M1,M2, M1: always accept. M2:the same as the Part1. Then we know <M,w> in ATM iff (M1=M2), that is ATM m EQTM. From the definition of mapping reducibility implies that ATM m EQTM means the same as ATM m EQ TM. Since ATM is not R.E, EQ TM is not R.E. too. Therefore EQTM is neither R.E. nor co-R.E. Rice Theorem: Property P is a collection of languages. Example of P : P = { {0, 11} } P = { L | L is CFL } P={} Rice Theorem: For any non trivial property P, it is undecidable if L(M) is in P or not.