The Chomsky Hierarchy - PowerPoint PPT Presentation

About This Presentation
Title:

The Chomsky Hierarchy

Description:

Solves (decides) the problem. Decidable problems: Does Machine have three ... The Turing machine that solves a problem. answers YES or NO for each instance. 14 ... – PowerPoint PPT presentation

Number of Views:703
Avg rating:3.0/5.0
Slides: 45
Provided by: costas
Learn more at: http://www.cs.rpi.edu
Category:

less

Transcript and Presenter's Notes

Title: The Chomsky Hierarchy


1
The Chomsky Hierarchy

2
Unrestricted Grammars
Productions
String of variables and terminals
String of variables and terminals
3
Example unrestricted grammar
4
Theorem
A language is recursively enumerable if
and only if is generated by
an unrestricted grammar
5
Context-Sensitive Grammars
Productions
String of variables and terminals
String of variables and terminals
and
6
The language
is context-sensitive
7
Theorem
A language is context sensistive
if and only if is accepted by a
Linear-Bounded automaton
8
Observation
There is a language which is context-sensitive but
not recursive
9
The Chomsky Hierarchy
Non-recursively enumerable
Recursively-enumerable
Recursive
Context-sensitive
Context-free
Regular
10
Decidability

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

12
A problem is decidable if some Turing
machine Solves (decides) the problem
Decidable problems
  • Does Machine have three states ?
  • Is string a binary number?
  • Does DFA accept any input?

13
The Turing machine that solves a problem answers
YES or NO for each instance
YES
Input problem instance
Turing Machine
NO
14
The machine that decides 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
15
Turing Machine that decides a problem
YES
NO
YES and NO states are halting states
16
Difference between
Recursive Languages and Decidable problems
For decidable problems
The YES states may not be final states
17
Some problems are undecidable
There is no Turing Machine that solves all
instances of the problem
18
A simple undecidable problem
The membership problem
19
The Membership Problem
Input
  • Turing Machine
  • String

Question
Does accept ?
20
Theorem
The membership problem is undecidable
Proof
Assume for contradiction that the membership
problem is decidable
21
There exists a Turing Machine that solves the
membership problem
accepts
YES
NO
rejects
22
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
23
Turing Machine that accepts and halts on any input
YES
accept
accepts ?
NO
reject
24
Therefore,
is recursive
Since is chosen arbitrarily, we have
proven that every recursively enumerable language
is also recursive
But there are recursively enumerable languages
which are not recursive
Contradiction!!!!
25
Therefore, the membership problem is undecidable
END OF PROOF
26
A famous undecidable problem
The halting problem
27
The Halting Problem
Input
  • Turing Machine
  • String

Question
Does halt on ?
28
Theorem
The halting problem is undecidable
Proof
Assume for contradiction that the halting problem
is decidable
29
There exists Turing Machine that solves the
halting problem
YES
halts on
doesnt halt on
NO
30
Construction of
Input initial tape contents
YES
NO
Encoding of
String
31
Construct machine
If returns YES then loop forever
If returns NO then halt
32
Loop forever
YES
NO
33
Construct machine
Input
(machine )
halts on input
If
Then loop forever
Else halt
34
copy
35
Run machine with input itself
Input
(machine )
halts on input
If
Then loop forever
Else halt
36

on input
If halts then loops forever
If doesnt halt then it halts
NONSENSE !!!!!
37
Therefore, we have contradiction
The halting problem is undecidable
END OF PROOF
38
Another proof of the same theorem
If the halting problem was decidable then every
recursively enumerable language would be recursive
39
Theorem
The halting problem is undecidable
Proof
Assume for contradiction that the halting problem
is decidable
40
There exists Turing Machine that solves the
halting problem
YES
halts on
doesnt halt on
NO
41
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
42
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
43
Therefore
is recursive
Since is chosen arbitrarily, we have
proven that every recursively enumerable language
is also recursive
But there are recursively enumerable languages
which are not recursive
Contradiction!!!!
44
Therefore, the halting problem is undecidable
END OF PROOF
Write a Comment
User Comments (0)
About PowerShow.com