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