Download presentation
1
Linear Bounded Automata LBAs
Courtesy Costas Busch - RPI
2
Courtesy Costas Busch - RPI
Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the only tape space allowed to use Courtesy Costas Busch - RPI
3
Courtesy Costas Busch - RPI
Linear Bounded Automaton (LBA) Input string Working space in tape Left-end marker Right-end marker All computation is done between end markers Courtesy Costas Busch - RPI
4
Courtesy Costas Busch - RPI
We define LBA’s as NonDeterministic Open Problem: NonDeterministic LBA’s have same power with Deterministic LBA’s ? Courtesy Costas Busch - RPI
5
Courtesy Costas Busch - RPI
Example languages accepted by LBAs: LBA’s have more power than NPDA’s LBA’s have also less power than Turing Machines Courtesy Costas Busch - RPI
6
Courtesy Costas Busch - RPI
The Chomsky Hierarchy Courtesy Costas Busch - RPI
7
Courtesy Costas Busch - RPI
Unrestricted Grammars: Productions String of variables and terminals String of variables and terminals Courtesy Costas Busch - RPI
8
Courtesy Costas Busch - RPI
Example unrestricted grammar: Courtesy Costas Busch - RPI
9
Courtesy Costas Busch - RPI
Theorem: A language is recursively enumerable if and only if is generated by an unrestricted grammar Courtesy Costas Busch - RPI
10
Courtesy Costas Busch - RPI
Context-Sensitive Grammars: Productions String of variables and terminals String of variables and terminals and: Courtesy Costas Busch - RPI
11
Courtesy Costas Busch - RPI
The language is context-sensitive: Courtesy Costas Busch - RPI
12
Courtesy Costas Busch - RPI
Theorem: A language is context sensistive if and only if is accepted by a Linear-Bounded automaton Observation: There is a language which is recursive but not context-sensitive Courtesy Costas Busch - RPI
13
Courtesy Costas Busch - RPI
The Chomsky Hierarchy Non-recursively enumerable Recursively-enumerable Recursive Context-sensitive Context-free Regular Courtesy Costas Busch - RPI
14
Courtesy Costas Busch - RPI
Decidability Courtesy Costas Busch - RPI
15
Courtesy Costas Busch - RPI
Consider problems with answer YES or NO Examples: Does Machine have three states ? Is string a binary number? Does DFA accept any input? Courtesy Costas Busch - RPI
16
Courtesy Costas Busch - RPI
A problem is decidable if some Turing machine decides (solves) the problem Decidable problems: Does Machine have three states ? Is string a binary number? Does DFA accept any input? Courtesy Costas Busch - RPI
17
Courtesy Costas Busch - RPI
The Turing machine that decides (solves) a problem answers YES or NO for each instance of the problem Input problem instance YES Turing Machine NO Courtesy Costas Busch - RPI
18
Courtesy Costas Busch - RPI
The machine that decides (solves) a problem: If the answer is YES then halts in a yes state If the answer is NO then halts in a no state These states may not be final states Courtesy Costas Busch - RPI
19
Courtesy Costas Busch - RPI
Turing Machine that decides a problem YES states NO states YES and NO states are halting states Courtesy Costas Busch - RPI
20
Courtesy Costas Busch - RPI
Difference between Recursive Languages and Decidable problems For decidable problems: The YES states may not be final states Courtesy Costas Busch - RPI
21
Courtesy Costas Busch - RPI
Some problems are undecidable: which means: there is no Turing Machine that solves all instances of the problem A simple undecidable problem: The membership problem Courtesy Costas Busch - RPI
22
Courtesy Costas Busch - RPI
The Membership Problem Input: Turing Machine String Question: Does accept ? Courtesy Costas Busch - RPI
23
Courtesy Costas Busch - RPI
Theorem: The membership problem is undecidable (there are and for which we cannot decide whether ) Proof: Assume for contradiction that the membership problem is decidable Courtesy Costas Busch - RPI
24
Courtesy Costas Busch - RPI
Thus, there exists a Turing Machine that solves the membership problem accepts YES NO rejects Courtesy Costas Busch - RPI
25
Courtesy Costas Busch - RPI
Let be a recursively enumerable language Let be the Turing Machine that accepts We will prove that is also recursive: we will describe a Turing machine that accepts and halts on any input Courtesy Costas Busch - RPI
26
Courtesy Costas Busch - RPI
Turing Machine that accepts and halts on any input YES accept accepts ? NO reject Courtesy Costas Busch - RPI
27
Courtesy Costas Busch - RPI
Therefore, is recursive Since is chosen arbitrarily, every recursively enumerable language is also recursive But there are recursively enumerable languages which are not recursive Contradiction!!!! Courtesy Costas Busch - RPI
28
Courtesy Costas Busch - RPI
Therefore, the membership problem is undecidable END OF PROOF Courtesy Costas Busch - RPI
29
Courtesy Costas Busch - RPI
Another famous undecidable problem: The halting problem Courtesy Costas Busch - RPI
30
Courtesy Costas Busch - RPI
The Halting Problem Input: Turing Machine String Question: Does halt on input ? Courtesy Costas Busch - RPI
31
Courtesy Costas Busch - RPI
Theorem: The halting problem is undecidable (there are and for which we cannot decide whether halts on input ) Proof: Assume for contradiction that the halting problem is decidable Courtesy Costas Busch - RPI
32
Courtesy Costas Busch - RPI
Thus, there exists Turing Machine that solves the halting problem YES halts on NO doesn’t halt on Courtesy Costas Busch - RPI
33
Courtesy Costas Busch - RPI
Construction of Input: initial tape contents YES NO Encoding of String Courtesy Costas Busch - RPI
34
Courtesy Costas Busch - RPI
Construct machine : If returns YES then loop forever If returns NO then halt Courtesy Costas Busch - RPI
35
Courtesy Costas Busch - RPI
Loop forever YES NO Courtesy Costas Busch - RPI
36
Courtesy Costas Busch - RPI
Construct machine : Input: (machine ) If halts on input Then loop forever Else halt Courtesy Costas Busch - RPI
37
Courtesy Costas Busch - RPI
copy Courtesy Costas Busch - RPI
38
Courtesy Costas Busch - RPI
Run machine with input itself: Input: (machine ) If halts on input Then loop forever Else halt Courtesy Costas Busch - RPI
39
Courtesy Costas Busch - RPI
on input : If halts then loops forever If doesn’t halt then it halts NONSENSE !!!!! Courtesy Costas Busch - RPI
40
Courtesy Costas Busch - RPI
Therefore, we have contradiction The halting problem is undecidable END OF PROOF Courtesy Costas Busch - RPI
41
Courtesy Costas Busch - RPI
Another proof of the same theorem: If the halting problem was decidable then every recursively enumerable language would be recursive Courtesy Costas Busch - RPI
42
Courtesy Costas Busch - RPI
Theorem: The halting problem is undecidable Proof: Assume for contradiction that the halting problem is decidable Courtesy Costas Busch - RPI
43
Courtesy Costas Busch - RPI
There exists Turing Machine that solves the halting problem YES halts on NO doesn’t halt on Courtesy Costas Busch - RPI
44
Courtesy Costas Busch - RPI
Let be a recursively enumerable language Let be the Turing Machine that accepts We will prove that is also recursive: we will describe a Turing machine that accepts and halts on any input Courtesy Costas Busch - RPI
45
Courtesy Costas Busch - RPI
Turing Machine that accepts and halts on any input NO reject halts on ? YES accept Halts on final state Run with input reject Halts on non-final state Courtesy Costas Busch - RPI
46
Courtesy Costas Busch - RPI
Therefore is recursive Since is chosen arbitrarily, every recursively enumerable language is also recursive But there are recursively enumerable languages which are not recursive Contradiction!!!! Courtesy Costas Busch - RPI
47
Courtesy Costas Busch - RPI
Therefore, the halting problem is undecidable END OF PROOF Courtesy Costas Busch - RPI
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.