2. CONTENTS
• DEFINATION OF RECURSIVE
• CLASSIFICATION OF RECURSION
• ABOUT LEFT RECURSION
• ELIMINATE OF LEFT RECURSION
• EXAMPLE
• REFERENCES
3. RECURSIVE GAMMER
A grammar is said to be recursive if it
contains at least one production that
containing recursion either in direct or
indirect form.
A → Aa | β.
A → aA | β.
4. CLASSIFICATION
Left Recursive grammar
A recursive grammar is said to be
left recursive if the leftmost variable
of RHS is same as variable of LHS.
A → Aa | β.
Right recursive grammar
A recursive grammar is said to be
right recursive if the rightmost
variable of RHS is same as variable
of LHS.
A → aA | β.
5. LEFT RECURSION
• A PRODUCTION OF GRAMMAR IS SAID TO HAVE LEFT
RECURSION IF THE LEFTMOST VARIABLE OF ITS RHS
IS SAME AS VARIABLE OF ITS LHS.
• A GRAMMAR CONTAINING A PRODUCTION HAVING
LEFT RECURSION IS CALLED AS LEFT RECURSIVE
GRAMMAR.
6. ELIMINATE OF LEFT RECURSION
LEFT RECURSION CAN BE ELIMINATED BY INTRODUCING NEW
NON-TERMINAL A SUCH THAT.
THIS TYPE OF RECURSION IS ALSO CALLED IMMEDIATE
LEFT RECURSION.
The general form for left recursion is
A → Aα1|Aα2| … . |Aαm|β1|β2| … . . βn
can be replaced by
A → β1A′|β2A′| … . . | … . . |βnA′
A → α1A′|α2A′| … . . |αmA′|ε
7. EXAMPLE
Consider the Left Recursion from the Grammar.
1. E → E + T|T
2. T → T * F|F
3. S → a|^|(T)
T → T, S|S
Solution
1. Comparing E → E + T|T with A → A α |β
∴ A = E, α = +T, β = T
∴ A → A α |β is changed to A → βA′ and A′ → α
A′|ε
∴ A → βA′ means E → TE′
A′ → α A′|ε means E′ → +TE′|ε
8. EXAMPLE
2. Comparing T → T ∗ F|F with A → Aα|β
∴ A = T, α =∗ F, β = F
∴ A → β A′ means T → FT′
A → α A′|ε means T′ →* FT′|ε
3. Comparing T → T, S|S With A → A α | β where A
= T, α =, S and β = S
We have immediate left recursion in T-productions
∴ Complete Grammar will be
S→ a|^(T)
T→ ST′
T′ →,ST′| ε