fall 2006costas busch - rpi1 undecidable problems (unsolvable problems)

Download Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)

Post on 22-Dec-2015

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)
  • Slide 2
  • Fall 2006Costas Busch - RPI2 Recall that: A language is decidable, if there is a Turing machine (decider) that accepts the language and halts on every input string Turing Machine Input string Accept Reject Decider for Decision On Halt: Decidable Languages YES NO
  • Slide 3
  • Fall 2006Costas Busch - RPI3 A computational problem is decidable if the corresponding language is decidable We also say that the problem is solvable
  • Slide 4
  • Fall 2006Costas Busch - RPI4 Problem: Does DFA accept the empty language ? Corresponding Language: Description of DFA as a string (For example, we can represent as a binary string, as we did for Turing machines) (Decidable)
  • Slide 5
  • Fall 2006Costas Busch - RPI5 Determine whether there is a path from the initial state to any accepting state Decider for : On input : DFA Reject Decision: Accept
  • Slide 6
  • Fall 2006Costas Busch - RPI6 Problem: Does DFA accept a finite language? Corresponding Language:(Decidable)
  • Slide 7
  • Fall 2006Costas Busch - RPI7 Decider for : On input : DFA Reject Decision: Accept Check if there is a walk with a cycle from the initial state to an accepting state infinitefinite (NO) (YES)
  • Slide 8
  • Fall 2006Costas Busch - RPI8 Problem: Does DFA accept string ? Corresponding Language:(Decidable)
  • Slide 9
  • Fall 2006Costas Busch - RPI9 Decider for : On input string : Run DFA on input string If accepts Then accept (and halt) Else reject (and halt)
  • Slide 10
  • Fall 2006Costas Busch - RPI10 Problem: Do DFAs and accept the same language? Corresponding Language:(Decidable)
  • Slide 11
  • Fall 2006Costas Busch - RPI11 Let be the language of DFA Decider for : On input : Construct DFA such that: (combination of DFAs)
  • Slide 12
  • Fall 2006Costas Busch - RPI12 and
  • Slide 13
  • Fall 2006Costas Busch - RPI13 or
  • Slide 14
  • Fall 2006Costas Busch - RPI14 Therefore, we only need to determine whether which is a solvable problem for DFAs:
  • Slide 15
  • Fall 2006Costas Busch - RPI15 Undecidable Languages there is no Turing Machine which accepts the language and makes a decision (halts) for every input string undecidable language = not decidable language There is no decider: (machine may make decision for some input strings)
  • Slide 16
  • Fall 2006Costas Busch - RPI16 For an undecidable language, the corresponding problem is undecidable (unsolvable): there is no Turing Machine (Algorithm) that gives an answer (yes or no) for every input instance (answer may be given for some input instances)
  • Slide 17
  • Fall 2006Costas Busch - RPI17 We have shown before that there are undecidable languages: Decidable Turing-Acceptable is Turing-Acceptable and undecidable
  • Slide 18
  • Fall 2006Costas Busch - RPI18 We will prove that two particular problems are unsolvable: Membership problem Halting problem
  • Slide 19
  • Fall 2006Costas Busch - RPI19 Membership Problem Input:Turing Machine String Question: Does accept ? Corresponding language:
  • Slide 20
  • Fall 2006Costas Busch - RPI20 Theorem: (The membership problem is unsolvable) Proof: We will assume that is decidable; We will then prove that every decidable language is Turing-Acceptable is undecidable Basic idea: A contradiction!
  • Slide 21
  • Fall 2006Costas Busch - RPI21 Suppose that is decidable YES accepts NO rejects Decider for Input string
  • Slide 22
  • Fall 2006Costas Busch - RPI22 Let be a Turing recognizable language Let be the Turing Machine that accepts We will prove that is also decidable: we will build a decider for
  • Slide 23
  • Fall 2006Costas Busch - RPI23 NO YES accept reject Decider for (and halt) Decider for Input string accepts ? String description of
  • Slide 24
  • Fall 2006Costas Busch - RPI24 Therefore,is decidable But there is a Turing-Acceptable language which is undecidable Contradiction!!!! Since is chosen arbitrarily, every Turing-Acceptable language is decidable END OF PROOF
  • Slide 25
  • Fall 2006Costas Busch - RPI25 We have shown: Decidable Undecidable
  • Slide 26
  • Fall 2006Costas Busch - RPI26 We can actually show: Decidable Turing-Acceptable
  • Slide 27
  • Fall 2006Costas Busch - RPI27 Turing machine that accepts : 1. Run on input 2. If accepts then accept is Turing-Acceptable
  • Slide 28
  • Fall 2006Costas Busch - RPI28 Halting Problem Input:Turing Machine String Question: Does halt while processing input string ? Corresponding language:
  • Slide 29
  • Fall 2006Costas Busch - RPI29 Theorem: (The halting problem is unsolvable) Proof: Suppose that is decidable; we will prove that every decidable language is also Turing-Acceptable is undecidable Basic idea: A contradiction!
  • Slide 30
  • Fall 2006Costas Busch - RPI30 YES halts on input doesnt halt on input NO Suppose that is decidable Decider for Input string
  • Slide 31
  • Fall 2006Costas Busch - RPI31 Let be a Turing-Acceptable language Let be the Turing Machine that accepts We will prove that is also decidable: we will build a decider for
  • Slide 32
  • Fall 2006Costas Busch - RPI32 halts and accepts halts on ? YES NO Run with input reject accept reject Decider for Input string Decider for and halt halts and rejects and halt
  • Slide 33
  • Fall 2006Costas Busch - RPI33 Contradiction!!!! END OF PROOF Therefore,is decidable But there is a Turing-Acceptable language which is undecidable Since is chosen arbitrarily, every Turing-Acceptable language is decidable
  • Slide 34
  • Fall 2006Costas Busch - RPI34 Theorem: Proof: Assume for contradiction that the halting problem is decidable; (The halting problem is unsolvable) is undecidable we will obtain a contradiction using a diagonilization technique An alternative proof Basic idea:
  • Slide 35
  • Fall 2006Costas Busch - RPI35 YEShalts on doesnt halt on NO Suppose that is decidable Decider for Input string
  • Slide 36
  • Fall 2006Costas Busch - RPI36 Input string: YES NO Looking inside Decider for halts on ?
  • Slide 37
  • Fall 2006Costas Busch - RPI37 NO Loop forever YES Construct machine : If halts on input Then Loop Forever Else Halt halts on ?
  • Slide 38
  • Fall 2006Costas Busch - RPI38 Construct machine : Copy on tape If halts on input Then loop forever Else halt
  • Slide 39
  • Fall 2006Costas Busch - RPI39 Run with input itself Copy on tape If halts on input Then loops forever on input Else halts on input END OF PROOF CONTRADICTION!!!
  • Slide 40
  • Fall 2006Costas Busch - RPI40 We have shown: Decidable Undecidable
  • Slide 41
  • Fall 2006Costas Busch - RPI41 We can actually show: Decidable Turing-Acceptable
  • Slide 42
  • Fall 2006Costas Busch - RPI42 Turing machine that accepts : 1. Run on input 2. If halts on then accept is Turing-Acceptable

Recommended

View more >