Reducibility Sipser 5.1 (pages 187-198). CS 311 Fall 2008 2 Reducibility.
-
date post
19-Dec-2015 -
Category
Documents
-
view
216 -
download
3
Transcript of Reducibility Sipser 5.1 (pages 187-198). CS 311 Fall 2008 2 Reducibility.
Reducibility
Sipser 5.1 (pages 187-198)
CS 311Fall 2008
2
Reducibility
CS 311Fall 2008
3
Driving directions
Western MassCambridge
Boston
CS 311Fall 2008
4
If you can’t drive to London…
CS 311Fall 2008
5
If something’s impossible…
• Theorem 4.11: ATM = {<M,w> | M is a TM and M accepts w}
is undecidable.
• Define:HALTTM =
{<M,w> | M is a TM and M halts on input w}• Is HALTTM decidable?
CS 311Fall 2008
6
The Halting Problem (again!)
• Theorem 5.1: HALTTM is undecidable.
• Proof Idea: –We know ATM is undecidable.
–We need to reduce one of HALTTM or ATMto the other. • Which way to go?
CS 311Fall 2008
7
HALTTM is undecidable.
• Proof: Suppose R decides HALTTM. Define
S = "On input <M,w>, where M is a TM and w a string: 1. Run TM R on input <M,w>. 2. If R rejects, then reject. 3. If R accepts, simulate M on input w until it
halts.4. If M enters its accept state, accept;
if M enters its reject state, reject."
CS 311Fall 2008
8
What about emptiness?
• ETM = {<M> | M is a TM and L(M) = Ø}
• Theorem 5.2: ETM is undecidable.
CS 311Fall 2008
9
A step along the way
• Given an input <M,w>, define a machine Mw as follows.
• Mw = "On input x: 1. If x ≠ w, reject.2. If x = w, run M on input w and
accept if M does.”
CS 311Fall 2008
10
ETM = {<M> | M is a TM and L(M) = Ø}
• Proof:Suppose TM R decides ETM. Define a TM to decide ATM
S = "On input <M,w>: 1. Use the description of M and w to
construct Mw.
2. Run R on input <Mw>.
3. If R accepts, reject; if R rejects, accept."
CS 311Fall 2008
11
With power comes uncertaintyM accepts w L(M) = Ø L(M1) = L(M2)
Turing machines ✗ ✗ ✗
PDA ✔ ✔ ✗
Finite automata ✔ ✔ ✔
CS 311Fall 2008
12
Is there anything that can be done?
• Rice’s Theorem: Testing any nontrivial property of the languages recognized by Turing machines is undecidable!
CS 311Fall 2008
13
We can’t even tell when something’s regular!
• REGULARTM =
{<M> | M is a TM and L(M) is regular} • Theorem 5.3: REGULARTM is
undecidable.
CS 311Fall 2008
14
REGULARTM is undecidable
• Proof: Assume R is a TM that decides REGULARTM.
Define S = "On input <M,w>: 1. Construct TM
M2 = "On input x: 1. If x has the form 0n1n, accept. 2. Otherwise, run M on input w and accept if M
accepts w."
2. Run R on input <M2>.
3. If R accepts, accept; if R rejects, reject."