začneme symbolem "„<math>S</math>"“ a vybereme pravidlo, které budeme aplikovat. pokud vybereme 1, nahradíme '<math>S</math>' řetězcem '<math>aSb</math>' a obdržíme tak "„<math>aSb</math>"“. Znovuzvolením 1. pravidla nahradíme '<math>S</math>' opět řetězcem '<math>aSb</math>' a obdržíme "„<math>aaSbb</math>"“. Tento proces můžeme opakovat, dokud nejsou všechny symboly našeho slova z abecedy (tj. '<math>a</math>' a '<math>b</math>'). Abychom tedy vygenerovali slovo, musíme zvolit 2. pravidlo a přepsat '<math>S</math>' na '<math>ba</math>'. Tím obdržíme "„<math>aababb</math>"“ a jsme hotovi. Jazykem gramatiky jsou všechna slova, která dokážeme vygenerovat: <math>\left \{ba, abab, aababb, aaababbb, ...\right \}</math>
Znaky z abecedy (v našem případě '<math>a</math>' a '<math>b</math>') se nazývají terminály, ostatní znaky (<math>S</math>) se nazývají neterminály