Presentation is loading. Please wait.

Presentation is loading. Please wait.

Linear Bounded Automata LBAs

Similar presentations


Presentation on theme: "Linear Bounded Automata LBAs"— Presentation transcript:

1 Linear Bounded Automata LBAs

2 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

3 Linear Bounded Automaton (LBA)
Input string Working space in tape Left-end marker Right-end marker All computation is done between end markers

4 We define LBA’s as NonDeterministic
Open Problem: NonDeterministic LBA’s have same power with Deterministic LBA’s ?

5 Example languages accepted by LBAs:
LBA’s have more power than NPDA’s LBA’s have also less power than Turing Machines

6 The Chomsky Hierarchy

7 Unrestricted Grammars:
Productions String of variables and terminals String of variables and terminals

8 Example unrestricted grammar:

9 Theorem: A language is recursively enumerable if and only if is generated by an unrestricted grammar

10 Context-Sensitive Grammars:
Productions String of variables and terminals String of variables and terminals and:

11 The language is context-sensitive:

12 Theorem: 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

13 The Chomsky Hierarchy Non-recursively enumerable Recursively-enumerable Recursive Context-sensitive Context-free Regular

14 Decidability

15 Consider problems with answer YES or NO
Examples: Does Machine have three states ? Is string a binary number? Does DFA accept any input?

16 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?

17 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

18 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

19 Turing Machine that decides a problem
YES states NO states YES and NO states are halting states

20 Difference between Recursive Languages and Decidable problems For decidable problems: The YES states may not be final states

21 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

22 The Membership Problem
Input: Turing Machine String Question: Does accept ?

23 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

24 Thus, there exists a Turing Machine
that solves the membership problem accepts YES NO rejects

25 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

26 Turing Machine that accepts
and halts on any input YES accept accepts ? NO reject

27 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!!!!

28 Therefore, the membership problem is undecidable
END OF PROOF

29 Another famous undecidable problem:
The halting problem

30 The Halting Problem Input: Turing Machine String Question: Does halt on input ?

31 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

32 Thus, there exists Turing Machine
that solves the halting problem YES halts on NO doesn’t halt on

33 Construction of Input: initial tape contents YES NO Encoding of String

34 Construct machine : If returns YES then loop forever If returns NO then halt

35 Loop forever YES NO

36 Construct machine : Input: (machine ) If halts on input Then loop forever Else halt

37 copy

38 Run machine with input itself:
If halts on input Then loop forever Else halt

39 on input : If halts then loops forever If doesn’t halt then it halts NONSENSE !!!!!

40 Therefore, we have contradiction
The halting problem is undecidable END OF PROOF

41 Another proof of the same theorem:
If the halting problem was decidable then every recursively enumerable language would be recursive

42 Theorem: The halting problem is undecidable Proof: Assume for contradiction that the halting problem is decidable

43 There exists Turing Machine
that solves the halting problem YES halts on NO doesn’t halt on

44 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

45 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

46 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!!!!

47 Therefore, the halting problem is undecidable
END OF PROOF


Download ppt "Linear Bounded Automata LBAs"

Similar presentations


Ads by Google