You are on page 1of 13

Elimination of

Left Factoring (LF)

2
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

3
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ
If I want to have “α β”
A αA
A αβ A A

α A α β
As we can derive both αA & αβ from the grammar, both have same prefix (α),
so, the grammar is non-deterministic.

4
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ
If I want to have “α β”
A αA
A αβ A A

α A α β
As we can derive both αA & αβ from the grammar, both have same prefix (α),
so, the grammar is non-deterministic.
To make this grammar deterministic, we can apply left factoring.

5
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

A α A If I want to have “α β”
A α β

6
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

A α A If I want to have “α β”
A α β

A α

7
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

A α A If I want to have “α β”
A α β

A α A’

8
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

A α A If I want to have “α β”
A α β

A α A’

A’ A|β
9
Grammar

Deterministic Grammar Non-Deterministic Grammar

A Aα|β A αA|αβ

A α A If I want to have “α β”
A α β

A
A α A’
α A’
A’ A|β
β
10
A αA|αβ
Exercise: S iEtS
|i E t S e S A α A’
|a A’ A|β
E b

Solution: S iEtS
|iEtSeS
|a
E b

11
A αA|αβ
Exercise: S iEtS
|i E t S e S A α A’
|a A’ A|β
E b
Left Factoring

Solution: S iEtS S i E t S S’ | a
|iEtSeS S’ ϵ|eS
|a E b
E b
Grammar is converted to deterministic.

12
Exercises for practice:

A aAB | aA
1
B bB | b

2 E T+E|Tϵ

3 S bSSaaS | bSSaSb | bSb | a

13
THANK YOU

14

You might also like