CSCI 2670 Introduction to Theory of Computing November 2, 2005
Agenda Yesterday Today Tomorrow Two undecidability proofs REGULARTM Rice’s Theorem Today Reductions (Section 5.3) Tomorrow Section 6.3 & part of 6.4 November 2, 2005
Announcements Announcements Quiz tomorrow Undecidability proofs Pizza party! You are all invited to my house for pizza and snacks Wednesday, November 9 at 6:30 PM Please send me an email and let me know if you want to come! Let me know of any special dietary requirements so I can accommodate everyone November 2, 2005
Reductions and decidability To prove a language is decidable, we have converted it to another language and used the decidability of that language Example – use decidability of EDFA to determine decidability of EQDFA Thus, we reduce the problem of determining if EQDFA is decidable to the problem of determining if EDFA is decidable November 2, 2005
Reductions and undecidability To prove a language is undecidable, we have assumed it’s decidable and found a contradiction Example – assume decidability of HALTTM and show ATM is decidable which is a contradiction In each case, we have to do a computation to convert one problem to another problem What kind of computations can we do? November 2, 2005
TM’s and computation TM’s can do more than just accept and reject strings They can perform functions Definition: A function f:* → * is a computable function if there is some TM M that, on every input w, halts with f(w) on the tape November 2, 2005
Examples The copying TM discussed several weeks ago Start with w on the tape, halt with ww on the tape Finding intersection of two DFA’s Start with <A,B> on the tape, where A and B are DFA’s, halt with <C> on the tape, where L(C) = L(A) L(B) November 2, 2005
Mapping reducibility Definition: Language A is mapping reducible to language B, written AmB, if there is a computable function f:* → *, where for every w, w A iff f(w) B f B A November 2, 2005
Using mapping reductions Test whether w A by finding a mapping reduction f from A to B and determining whether f(w) B Example ALLDFA = {<A> | A is a DFA with L(A)=*} Let D = {<B> | B is a DFA} and let f:D→D where f(A) = Ā Ā is the DFA that accepts L(A) Then A ALLDFA iff Ā EDFA Use membership of Ā in EDFA to determine membership of A in ALLDFA November 2, 2005
Mapping reductions & decidability Theorem: If A m B and B is decidable, then A is decidable. Proof: Let M be a decider for B and let f be a reduction from A to B. Consider the following TM, N: N = “On input w: Compute f(w) Run M on f(w) and report M’s output” Then N decides A November 2, 2005
Example Let EV = {<A>| A is a DFA s.t. every wL(A) has an even number of 1’s} How can we prove EV is decidable using a mapping reduction? Consider the following DFA B 1 \{1} L(B) = {w * | w has an even number of 1’s} November 2, 2005
Mapping reduction of L Use EQDFA = {<A,B> | A and B are DFA’s with L(A) = L(B)} Mapping from L to EQDFA f(<A>) = <A,AB> A has an even number of 1’s if and only if L(A) = L(AB) I.e., A EV iff f(A) EQDFA November 2, 2005