1 / 44

Reducibility

Reducibility. Problem is reduced to problem. If we can solve problem then we can solve problem. Problem is reduced to problem. If is decidable then is decidable. If is undecidable then is undecidable. Example:. the halting problem. is reduced to.

vila
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. Reducibility COMP 335

  2. Problem is reduced to problem If we can solve problem then we can solve problem COMP 335

  3. Problem is reduced to problem If is decidable then is decidable If is undecidable then is undecidable COMP 335

  4. Example: the halting problem is reduced to the state-entry problem COMP 335

  5. The state-entry problem Inputs: • Turing Machine • State • String Question: Does enter state on input ? COMP 335

  6. Theorem: The state-entry problem is undecidable Proof: Reduce the halting problem to the state-entry problem COMP 335

  7. Suppose we have a Decider for the state-entry algorithm: YES enters state-entry problem decider NO doesn’t enter COMP 335

  8. We want to build a decider for the halting problem: YES halts on Halting problem decider NO doesn’t halt on COMP 335

  9. We want to reduce the halting problem to the state-entry problem: Halting problem decider YES YES State-entry problem decider NO NO COMP 335

  10. We need to convert one problem instance to the other problem instance Halting problem decider YES Convert Inputs ? YES State-entry problem decider NO NO COMP 335

  11. Convert to : • Add new state • From any halting state of add transitions to Single halt state halting states COMP 335

  12. halts on input if and only if halts on state on input COMP 335

  13. Halting problem decider YES YES State-entry problem decider Generate NO NO COMP 335

  14. We reduced the halting problem to the state-entry problem Since the halting problem is undecidable, the state-entry problem is undecidable END OF PROOF COMP 335

  15. Another example: the halting problem is reduced to the blank-tape halting problem COMP 335

  16. The blank-tape halting problem Input: Turing Machine Question: Does halt when started with a blank tape? COMP 335

  17. Theorem: The blank-tape halting problem is undecidable Proof: Reduce the halting problem to the blank-tape halting problem COMP 335

  18. Suppose we have a decider for the blank-tape halting problem: halts on blank tape YES blank-tape halting problem decider NO doesn’t halt on blank tape COMP 335

  19. We want to build a decider for the halting problem: YES halts on halting problem decider NO doesn’t halt on COMP 335

  20. We want to reduce the halting problem to the blank-tape halting problem: Halting problem decider YES YES Blank-tape halting problem decider NO NO COMP 335

  21. We need to convert one problem instance to the other problem instance Halting problem decider YES YES Convert Inputs ? Blank-tape halting problem decider NO NO COMP 335

  22. Construct a new machine • When started on blank tape, writes • Then continues execution like step 1 step2 if blank tape execute then write with input COMP 335

  23. halts on input string if and only if halts when started with blank tape COMP 335

  24. Halting problem decider YES YES blank-tape halting problem decider Generate NO NO COMP 335

  25. We reduced the halting problem to the blank-tape halting problem Since the halting problem is undecidable, the blank-tape halting problem is undecidable END OF PROOF COMP 335

  26. Summary of Undecidable Problems Halting Problem: Does machine halt on input ? Membership problem: Does machine accept string ? COMP 335

  27. Blank-tape halting problem: Does machine halt when starting on blank tape? State-entry Problem: Does machine enter state on input ? COMP 335

  28. Uncomputable Functions COMP 335

  29. Uncomputable Functions Values region Domain A function is uncomputable if it cannot be computed for all of its domain COMP 335

  30. An uncomputable function: maximum number of moves until any Turing machine with states halts when started with the blank tape COMP 335

  31. Theorem: Function is uncomputable Proof: Assume for contradiction that is computable Then the blank-tape halting problem is decidable COMP 335

  32. Decider for blank-tape halting problem: Input: machine 1. Count states of : 2. Compute 3. Simulate for steps starting with empty tape If halts then return YES otherwise return NO COMP 335

  33. Therefore, the blank-tape halting problem is decidable However, the blank-tape halting problem is undecidable Contradiction!!! COMP 335

  34. Therefore, function in uncomputable END OF PROOF COMP 335

  35. Undecidable Problems for Recursively Enumerable Languages COMP 335

  36. Take a recursively enumerable language Decision problems: • is empty? • is finite? • contains two different strings • of the same length? All these problems are undecidable COMP 335

  37. Theorem: For any recursively enumerable language it is undecidable to determine whether is empty Proof: We will reduce the membership problem to this problem COMP 335

  38. Let be the TM with Suppose we have a decider for the empty language problem: YES empty empty language problem decider NO not empty COMP 335

  39. We will build the decider for the membership problem: YES accepts membership problem decider NO rejects COMP 335

  40. We want to reduce the membership problem to the empty language problem: Membership problem decider NO YES empty language problem decider YES NO COMP 335

  41. We need to convert one problem instance to the other problem instance Membership problem decider NO YES Convert inputs ? empty language problem decider YES NO COMP 335

  42. Construct machine : On arbitrary input string executes the same as with When enters a final state, compare with Accept only if COMP 335

  43. if and only if is not empty COMP 335

  44. Membership problem decider NO YES empty language problem decider construct YES NO END OF PROOF COMP 335

More Related