Chomsky Hierarchy in Theory of Computation
According to Chomsky hierarchy, grammar is divided into 4 types as follows:
- Type 0 is known as unrestricted grammar.
- Type 1 is known as context-sensitive grammar.
- Type 2 is known as a context-free grammar.
- Type 3 Regular Grammar.
Type 0: Unrestricted Grammar:
Type-0 grammars include all formal grammar. Type 0 grammar languages are recognized by turing machine. These languages are also known as the Recursively Enumerable languages.
Grammar Production in the form of where
\alpha is ( V + T)* V ( V + T)* V : Variables T : Terminals.
is ( V + T )*.
In type 0 there must be at least one variable on the Left side of production.
Sab --> ba A --> S
Here, Variables are S, A, and Terminals a, b.
Type 1: Context-Sensitive Grammar
Type-1 grammars generate context-sensitive languages. The language generated by the grammar is recognized by the Linear Bound Automata
In Type 1
- First of all Type 1 grammar should be Type 0.
- Grammar Production in the form of
|\alpha |<=|\beta |
That is the count of symbol in is less than or equal to
Also β ∈ (V + T)+
i.e. β can not be ε
S --> AB AB --> abc B --> b
Type 2: Context-Free Grammar: Type-2 grammars generate context-free languages. The language generated by the grammar is recognized by a Pushdown automata. In Type 2:
- First of all, it should be Type 1.
- The left-hand side of production can have only one variable and there is no restriction on
|\alpha | = 1.
S --> AB A --> a B --> b
Type 3: Regular Grammar: Type-3 grammars generate regular languages. These languages are exactly all languages that can be accepted by a finite-state automaton. Type 3 is the most restricted form of grammar.
Type 3 should be in the given form only :
V --> VT / T (left-regular grammar) (or) V --> TV /T (right-regular grammar)
S --> a
The above form is called strictly regular grammar.
There is another form of regular grammar called extended regular grammar. In this form:
V --> VT* / T*. (extended left-regular grammar) (or) V --> T*V /T* (extended right-regular grammar)
For example :
S --> ab.
Please write comments if you find anything incorrect, or if you want to share more information about the topic discussed above.