CSCI 2670 Introduction to Theory of Computing November
CSCI 2670 Introduction to Theory of Computing November 2, 2005
Agenda • Yesterday – Two undecidability proofs • REGULARTM • Rice’s Theorem • Today – Reductions (Section 5. 3) • Tomorrow – Section 6. 3 & part of 6. 4 November 2, 2005
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 A m. B, if there is a computable function f: * → *, where for every w, w A iff f(w) B f A f November 2, 2005 B
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: 1. Compute f(w) 2. 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 w L(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 November 2, 2005 L(B) = {w * | w has an even number of 1’s}
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, A B> • A has an even number of 1’s if and only if L(A) = L(A B) – I. e. , A EV iff f(A) EQDFA November 2, 2005
- Slides: 12