Greibach Normal Form Transformation Revisited

We develop a new method for placing a given context-free grammar into Greibach normal form with only polynomial increase of its size. Starting with an arbitrarye-free context-free grammarG, we transformGinto an equivalent context-free grammarHin extended Greibach normal form; i.e., in addition to rules, fulfilling the Greibach normal form properties, the grammar can have chain rules. The size ofHwill beO(|G|3), where |G| is the size ofG. Moreover, in the case thatGis chain rule free,Hwill be already in Greibach normal form. IfHis not chain rule free then we use the standard method for chain rule elimination for the transformation ofHinto Greibach normal form. The size of the constructed grammar isO(|G|4).