1 / 6

# Reducibility - PowerPoint PPT Presentation

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 . .

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Reducibility' - graceland

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Theory of Computability

Reducibility

Chapter 5

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)

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

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>

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.

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.