Undecidability and Rice Theorem

advertisement
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, ZZ is countable.
Theorem: A is a subset of B, and B is countable, then A is also countable.
RR 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, AT B iff an instance of A can be decided using the oracle B.
xB?
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.
Download