Limits of Algorithmic Computation Wen-Guey Tzeng Computer Science - - PowerPoint PPT Presentation

limits of algorithmic computation
SMART_READER_LITE
LIVE PREVIEW

Limits of Algorithmic Computation Wen-Guey Tzeng Computer Science - - PowerPoint PPT Presentation

Limits of Algorithmic Computation Wen-Guey Tzeng Computer Science Department National Chiao Tung University The halting problem Problem : given an encoding string <M, w>, determine whether M(w) halts or not. Solvable? We want


slide-1
SLIDE 1

Limits of Algorithmic Computation

Wen-Guey Tzeng Computer Science Department National Chiao Tung University

slide-2
SLIDE 2

The halting problem

  • Problem: given an encoding string <M, w>,

determine whether M(w) halts or not.

– Solvable? – We want an “yes/no” answer for each input <M, w>.

  • <M, w> = 10110101011 00 11011010111011 … 000

11011101110111011

  • Methods:

– Run M(w) in TMU – Analyze M – …

2 2017 Spring

slide-3
SLIDE 3

The halting problem: really hard?

  • Can we just run M(w) for a long time?

– If it hasn’t halted yet, we just claim that M(w) does not halt.

  • The busy beaver problem will show that it is

indeed M(w) can run a very very very long time and halt.

8 2017 Spring

slide-4
SLIDE 4

Theorem: The halting problem cannot be solved by any algorithm (Turing machine). Proof. Step 1: Assume that it can be solved by some TM H.

– The initial state q0. – qY and qN are both final states. – q0 <M,w> |-* x1qY x2 (halt) if M(w) halts – q0 <M,w> |-* y1qN y2 (halt) if M(w) does not halt

3 2017 Spring

slide-5
SLIDE 5

4

<M, w>

H

2017 Spring

slide-6
SLIDE 6

Step 2: We construct H’, from H, as follows:

– q0 <M,w> |-* x1qYx2 |-*  if M(w) halts – q0 <M,w> |-* y1qN y2 (halt) if M(w) does not halt

H’

5 2017 Spring

<M, w>

slide-7
SLIDE 7

Step 3: We construct , from H’, as follows:

– Its input is the encoding <M> of a TM – It copies the input <M> and runs H’ on <M><M>

  • q0 <M> |-* q0 <M><M> |-* 

if M(<M>) halts

  • q0 <M> |-* q0 <M><M> |-* y1qN y

if M(<M>) does not halt <M><M>

<M>

H’

6 2017 Spring

slide-8
SLIDE 8

Step 4: Now, feed < > into :

– q0 < > |-* q0 < > < > |-*  if (< >) halts – q0 < > |-* q0 < > < > |-* y1qNy2 (halt) if (< >) does not halt

Conclusion:

  • It is a contradiction !!!
  • Thus, H does not exist. 

< >< >

<𝐼 >

H’

7 2017 Spring

slide-9
SLIDE 9