undecidability of the halting problem
play

Undecidability of the halting problem A TM = { M , w | M is a Turing - PowerPoint PPT Presentation

Undecidability of the halting problem A TM = { M , w | M is a Turing machine that accepts w } Theorem A TM is undecidable Undecidability of the halting problem A TM = { M , w | M is a Turing machine that accepts w } Theorem A TM is


  1. Undecidability of the halting problem A TM = {� M , w � | M is a Turing machine that accepts w } Theorem A TM is undecidable

  2. Undecidability of the halting problem A TM = {� M , w � | M is a Turing machine that accepts w } Theorem A TM is undecidable Proof. Assume that A TM is decidable by a Turing machine H 1 Construct a new Turing machine D which takes � M � as 2 input and works as follows: Run H on � M , � M �� and output the opposite of what H outputs Running D on input � D � results in a contradiction because 3 D rejects � D � if D accepts � D � , and D accepts � D � if D rejects � D �

  3. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM }

  4. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM } Theorem A TM is not Turing-recognizable

  5. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM } Theorem A TM is not Turing-recognizable Proof. Assume with the aim of reaching a contradiction that A TM 1 is Turing-recognizable.

  6. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM } Theorem A TM is not Turing-recognizable Proof. Assume with the aim of reaching a contradiction that A TM 1 is Turing-recognizable. Let M 1 be a Turing machine recognizing A TM and M 2 a 2 Turing machine recognizing A TM .

  7. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM } Theorem A TM is not Turing-recognizable Proof. Assume with the aim of reaching a contradiction that A TM 1 is Turing-recognizable. Let M 1 be a Turing machine recognizing A TM and M 2 a 2 Turing machine recognizing A TM . On input w run both M 1 and M 2 on w in parallel 3

  8. An explicit language which is not Turing-recognizable A TM = { w | w / ∈ A TM } Theorem A TM is not Turing-recognizable Proof. Assume with the aim of reaching a contradiction that A TM 1 is Turing-recognizable. Let M 1 be a Turing machine recognizing A TM and M 2 a 2 Turing machine recognizing A TM . On input w run both M 1 and M 2 on w in parallel 3 If M 1 accepts, then reject. If M 2 accepts, then accept. 4 This shows that A TM is decidable, which is a contradiction 5

  9. Reductions

  10. Reductions Definition A function f : Σ ∗ → Σ ∗ is computable if some Turing machine M on every input w halts with f ( w ) on its tape

  11. Reductions Definition Language A is mapping reducible to language 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 reduction from A to B If A is mapping reducible to B then we write A ≤ m B

  12. Reductions Theorem If B is decidable and A ≤ m B, then A is decidable

  13. Reductions Theorem If B is decidable and A ≤ m B, then A is decidable Proof. Let M B be a Turing machine that decides B and f the reduction from A to B . Given input w : Compute f ( w ) 1 Run M B on f ( w ) , accept if M B accepts f ( w ) , and reject if 2 M B rejects f ( w )

  14. Reductions Theorem If A is undecidable and A ≤ m B, then B is undecidable

  15. Reductions Theorem If A is undecidable and A ≤ m B, then B is undecidable Proof. Assume with the aim of reaching a contradiction that B is decidable. Let M B be a Turing machine that decides B and f the reduction from A to B . Given input w : Compute f ( w ) 1 Run M B on f ( w ) , accept if M B accepts f ( w ) , and reject if 2 M B rejects f ( w ) This shows that A is decidable, which is a contradiction 3

  16. Reductions Theorem If B is Turing-recognizable and A ≤ m B, then A is Turing-recognizable

  17. Reductions Theorem If A is not Turing-recognizable and A ≤ m B, then B is not Turing-recognizable

  18. Reductions E TM = {� M � | M is a Turing machine and L ( M ) = ∅}

  19. Reductions E TM = {� M � | M is a Turing machine and L ( M ) = ∅} Theorem E TM is undecidable

  20. Reductions E TM = {� M � | M is a Turing machine and L ( M ) = ∅} Theorem E TM is undecidable Proof. By reduction from A TM (Theorem 5.2 in Sipser)

  21. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) }

  22. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) } Theorem EQ TM is undecidable

  23. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) } Theorem EQ TM is undecidable Proof. E TM ≤ m EQ TM :

  24. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) } Theorem EQ TM is undecidable Proof. E TM ≤ m EQ TM : Let M 2 be a Turing machine such that L ( M 2 ) = ∅ 1

  25. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) } Theorem EQ TM is undecidable Proof. E TM ≤ m EQ TM : Let M 2 be a Turing machine such that L ( M 2 ) = ∅ 1 Given a Turing machine M , let f ( � M � ) = � M , M 2 � 2

  26. Reductions EQ TM = {� M 1 , M 2 � | M 1 and M 2 are TMs and L ( M 1 ) = L ( M 2 ) } Theorem EQ TM is undecidable Proof. E TM ≤ m EQ TM : Let M 2 be a Turing machine such that L ( M 2 ) = ∅ 1 Given a Turing machine M , let f ( � M � ) = � M , M 2 � 2 � M � ∈ E TM iff L ( M ) = ∅ iff L ( M ) = L ( M 2 ) iff 3 � M , M 2 � ∈ EQ TM

  27. Incompleteness Theorem via Undecidability Kurt Gödel (1906-1978)

  28. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved

  29. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved Proof idea. The language of all true mathematical statements is 1 undecidable (by reduction from A TM )

  30. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved Proof idea. The language of all true mathematical statements is 1 undecidable (by reduction from A TM ) The language of all provable statements is Turing 2 recognizable by a Turing machine M

  31. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved Proof idea. The language of all true mathematical statements is 1 undecidable (by reduction from A TM ) The language of all provable statements is Turing 2 recognizable by a Turing machine M Assume that all true statements are provable 3

  32. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved Proof idea. The language of all true mathematical statements is 1 undecidable (by reduction from A TM ) The language of all provable statements is Turing 2 recognizable by a Turing machine M Assume that all true statements are provable 3 Given a statement Φ , run M in parallel on Φ and ¬ Φ . One 4 of them is true and thus (by assumption) provable. If Φ is provable then Φ is true and if ¬ Φ is provable then Φ is false.

  33. Incompleteness Theorem via Undecidability (S, 6.2) Theorem (Informally) There are true mathematical statements that cannot be proved Proof idea. The language of all true mathematical statements is 1 undecidable (by reduction from A TM ) The language of all provable statements is Turing 2 recognizable by a Turing machine M Assume that all true statements are provable 3 Given a statement Φ , run M in parallel on Φ and ¬ Φ . One 4 of them is true and thus (by assumption) provable. If Φ is provable then Φ is true and if ¬ Φ is provable then Φ is false. So M decides the truth of Φ . This is a contradiction (with 1 5 above)

Recommend


More recommend