## Elimination of null production from context free grammar

If ε belongs to the language then we are supposed to generate it and thus we will not remove it.

Using below example we will understand the whole concept.

**Example 1**

S -> aSb/aAb/ab/a A -> ε How to know whether ε is generated in the CFG or not ? Find all the Variable which are generating ε So onlyAis genrating ε Thus ε does not belong to the langauge.Now we will proceed with elimination of NULL production:Replace NULL producing symbol with and without in R.H.S. of remaining states And drop the productions which has ε directly. eg. A -> ε S -> aSb/aAb/ab/ab/a But we no need to write "ab" twice So,S -> aSb/aAb/ab/a

**Example 2**

S -> AB A -> aAA/ε B -> bBB/ε Nullale Variables are {A, B, S} Because start state also a Nullable symbol so ε belongs to given CFG We will proceed with the method:S -> AB/A/B/ε A -> aAA/aA/a B -> bAA/bA/b