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

Post on 22-Dec-2015

212 views

Category:

## Documents

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