Chomsky normaalvorm
Een formele grammatica is in Chomsky Normal Form als alle productieregels van een van de volgende vormen zijn:
- of
- α
waarbij , en niet-terminale symbolen (of variabelen) zijn en α een terminalsymbool is.
Elke contextvrije taal die geen lege string heeft, is uitdrukbaar door middel van een Chomsky normaalvormgrammatica (GFNCH) en vice versa. Bovendien is het, gegeven een contextvrije grammatica , algoritmisch mogelijk om een equivalente GFNCH te produceren, dat wil zeggen een die dezelfde taal genereert.
Alternatieve definitie
In sommige teksten kun je een definitie van een GFNCH vinden, zodat elke GFNCH elke contextvrije taal produceert en evenzo dat er voor elke contextvrije taal een GFNCH is die deze definieert. Deze definitie verschilt nauwelijks in het toestaan van een ε-regel van de volgende vorm:
- of
- of
- ε
waarbij het onderscheidende (of initiële) symbool van de grammatica is, een niet-terminaal symbool (of variabele) is en ook niet-terminale maar verschillende symbolen zijn, α een terminalsymbool is en ε de nul (of lege) tekenreeks is.