1 / 6

Reducibility

Giorgi Japaridze Theory of Computability. Reducibility. Chapter 5. 5.1.a. Giorgi Japaridze Theory of Computability. The undecidability of the halting problem. Let HALT TM = {<M,w> | M is a TM and M halts on input w} HALT TM is called the halting problem . .

graceland
Télécharger la présentation

Reducibility

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Giorgi Japaridze Theory of Computability Reducibility Chapter 5

  2. 5.1.a Giorgi JaparidzeTheory of Computability The undecidability of the halting problem Let HALTTM = {<M,w> | M is a TM and M halts on input w} HALTTM is called the halting problem. Theorem 5.1:HALTTM is undecidable. Proof idea: Assume, for a contradiction, that HALTTMis decidable. I.e. there is a TM R that decides HALTTM. Construct the following TM S: S = “On input <M,w>, an encoding of a TM M and a string w: 1. Run R on input <M,w>. 2. If R rejects, reject. 3. If R accepts, simulate M on w until it halts. 4. If M has accepted, accept; if M has rejected, reject.” • If M works forever on w, what will S do on <M,w>? • If M accepts w, what will S do on input <M,w>? • If M explicitly rejects w, what will S do on <M,w>? Thus, S decides the language But this is impossible (Theorem 4.11)

  3. 5.3.a Giorgi JaparidzeTheory 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mB, if there is a computable function f: ** such that, for every w*, wA iff f(w)B. The function f is called a mappingreduction of A to B. * * A B f f

  4. 5.3.b Giorgi JaparidzeTheory 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> <D,w> <N,w>

  5. 5.3.c Giorgi JaparidzeTheory of Computability Using mapping reducibility for proving decidability/undecidability Theorem 5.22: If AmB 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mB and A is undecidable, then B is undecidable. Theorem 5.22 remains valid with “Turing recognizable” instead of “decidable”. So does Corollary 5.23.

  6. 5.3.d Giorgi JaparidzeTheory of Computability 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.” A mapping reduction of ATM to HALTTM 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 ATMis undecidable, HALTTMis undecidable as well.

More Related