Download presentation
Presentation is loading. Please wait.
Published byLiana Tanuwidjaja Modified over 6 years ago
1
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
Prof. Busch - LSU
2
Decidable Languages Recall that: A language is decidable,
if there is a Turing machine (decider) that accepts the language and halts on every input string Decision On Halt: Turing Machine YES Accept Input string Decider for NO Reject Prof. Busch - LSU
3
A computational problem is decidable
if the corresponding language is decidable We also say that the problem is solvable Prof. Busch - LSU
4
Corresponding Language: (Decidable)
Problem: Does DFA accept the empty language ? Corresponding Language: (Decidable) Description of DFA as a string (For example, we can represent as a binary string, as we did for Turing machines) Prof. Busch - LSU
5
Determine whether there is a path from
Decider for : On input : Determine whether there is a path from the initial state to any accepting state DFA DFA Decision: Accept Reject Prof. Busch - LSU
6
Corresponding Language: (Decidable)
Problem: Does DFA accept a finite language? Corresponding Language: (Decidable) Prof. Busch - LSU
7
Check if there is a walk with a cycle
Decider for : On input : Check if there is a walk with a cycle from the initial state to an accepting state DFA DFA infinite finite Decision: Accept Reject (NO) (YES) Prof. Busch - LSU
8
Corresponding Language: (Decidable)
Problem: Does DFA accept string ? Corresponding Language: (Decidable) Prof. Busch - LSU
9
Decider for : On input string : Run DFA on input string If accepts
Then accept (and halt) Else reject (and halt) Prof. Busch - LSU
10
accept the same language?
Problem: Do DFAs and accept the same language? Corresponding Language: (Decidable) Prof. Busch - LSU
11
Let be the language of DFA
Decider for : On input : Let be the language of DFA Construct DFA such that: (combination of DFAs) Prof. Busch - LSU
12
and Prof. Busch - LSU
13
or Prof. Busch - LSU
14
which is a solvable problem for DFAs:
Therefore, we only need to determine whether which is a solvable problem for DFAs: Prof. Busch - LSU
15
Undecidable Languages
undecidable language = not decidable language There is no decider: there is no Turing Machine which accepts the language and makes a decision (halts) for every input string (machine may make decision for some input strings) Prof. Busch - LSU
16
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) Prof. Busch - LSU
17
We have shown before that there are undecidable languages:
Turing-Acceptable Decidable is Turing-Acceptable and undecidable Prof. Busch - LSU
18
We will prove that two particular problems are unsolvable:
Membership problem Halting problem Prof. Busch - LSU
19
Corresponding language:
Membership Problem Input: Turing Machine String Question: Does accept ? Corresponding language: Prof. Busch - LSU
20
We will assume that is decidable; We will then prove that
Theorem: is undecidable (The membership problem is unsolvable) Proof: Basic idea: We will assume that is decidable; We will then prove that every Turing-acceptable language is also decidable A contradiction! Prof. Busch - LSU
21
Suppose that is decidable
Input string Decider for accepts YES NO rejects Prof. Busch - LSU
22
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 Prof. Busch - LSU
23
String description of Decider for Decider for YES accept accepts ? NO
This is hardwired and copied on the tape next to input string s, and then the pair is input to H Decider for Decider for YES accept (and halt) accepts ? NO reject Input string (and halt) Prof. Busch - LSU
24
But there is a Turing-Acceptable language which is undecidable
Therefore, is decidable Since is chosen arbitrarily, every Turing-Acceptable language is decidable But there is a Turing-Acceptable language which is undecidable Contradiction!!!! END OF PROOF Prof. Busch - LSU
25
We have shown: Undecidable Decidable Prof. Busch - LSU
26
We can actually show: Turing-Acceptable Decidable Prof. Busch - LSU
27
Turing machine that accepts :
is Turing-Acceptable Turing machine that accepts : 1. Run on input 2. If accepts then accept Prof. Busch - LSU
28
processing input string ?
Halting Problem Input: Turing Machine String Question: Does halt while processing input string ? Corresponding language: Prof. Busch - LSU
29
Suppose that is decidable; we will prove that
Theorem: is undecidable (The halting problem is unsolvable) Proof: Basic idea: Suppose that is decidable; we will prove that every Turing-acceptable language is also decidable A contradiction! Prof. Busch - LSU
30
Suppose that is decidable
Input string halts on input YES Decider for NO doesn’t halt on input Prof. Busch - LSU
31
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 Prof. Busch - LSU
32
Decider for NO reject halts on ? YES accept Run with input reject
and halt YES Input string halts and accepts accept and halt Run with input halts and rejects reject and halt Prof. Busch - LSU
33
But there is a Turing-Acceptable language which is undecidable
Therefore, is decidable Since is chosen arbitrarily, every Turing-Acceptable language is decidable But there is a Turing-Acceptable language which is undecidable Contradiction!!!! END OF PROOF Prof. Busch - LSU
34
An alternative proof Theorem: is undecidable Proof: Basic idea:
(The halting problem is unsolvable) Proof: Basic idea: Assume for contradiction that the halting problem is decidable; we will obtain a contradiction using a diagonilization technique Prof. Busch - LSU
35
Suppose that is decidable
Input string Decider for YES halts on NO doesn’t halt on Prof. Busch - LSU
36
Looking inside Decider for YES Input string: halts on ? NO
Prof. Busch - LSU
37
If halts on input Then Loop Forever Else Halt
Construct machine : Loop forever YES halts on ? NO If halts on input Then Loop Forever Else Halt Prof. Busch - LSU
38
Construct machine : Copy on tape If halts on input Then loop forever
Else halt Prof. Busch - LSU
39
Then loops forever on input
Run with input itself Copy on tape If halts on input Then loops forever on input Else halts on input CONTRADICTION!!! END OF PROOF Prof. Busch - LSU
40
We have shown: Undecidable Decidable Prof. Busch - LSU
41
We can actually show: Turing-Acceptable Decidable Prof. Busch - LSU
42
Turing machine that accepts :
is Turing-Acceptable Turing machine that accepts : 1. Run on input 2. If halts on then accept Prof. Busch - LSU
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.