CSC 4170 Theory of Computation Mapping Reducibility Section
CSC 4170 Theory of Computation Mapping Reducibility Section 5. 3
5. 3. a Giorgi Japaridze Theory of Computability Definition of mapping reducibility Let A and B be languages over an alphabet . We say that A is mapping reducible to B, written A m. B, if there is a computable function f: * * such that, for every w *, w A iff f(w) B. The function f is called a mapping reduction of A to B. * * A B f f
5. 3. b Giorgi Japaridze Theory of Computability An example of a mapping reduction Let f be the function computed by the following TMO M: M=“On input <N, w>, where N is an NFA and w is a string, 1. Convert N into an equivalent DFA D using the algorithm we learned; 2. Return <D, w>. ” f is then a mapping reduction of what language to what language? * * <N, w> <D, w>
5. 3. c Giorgi Japaridze Theory of Computability Using mapping reducibility for proving decidability/undecidability Theorem 5. 22: If A m. B and B is decidable, then A is decidable. Proof: Let DB be a decider for B and f be a reduction from A to B. We describe a decider DA for A as follows. DA= “On input w: 1. Compute f(w). 2. Run DB on input f(w) and do whatever DB does. ” Corollary 5. 23: If A m. B and A is undecidable, then B is undecidable. Theorem 5. 22 remains valid with “Turing recognizable” instead of “decidable”. So does Corollary 5. 23.
5. 3. d Giorgi Japaridze Theory of Computability A mapping reduction of ATM to HALTTM For every TM M, let M* be the following TM: M* = “On input x: 1. Run M on x. 2. If M accepts, accept. 3. If M rejects, enter an infinite loop. ” Thus, • If M accepts input x, then M* • If M explicitly rejects x, then M* • If M never halts on x, then M* To summarize, M accepts x iff M* Let then f be the function defined by f(<M, w>)=<M*, w>. Is f computable? Obviously <M, w> ATM iff f(<M, w>) i. e. f is a So, since ATM is undecidable, HALTTM is undecidable as well.
- Slides: 5