Formální gramatika: Porovnání verzí

Smazaný obsah Přidaný obsah
Porthos (diskuse | příspěvky)
Dinybot (diskuse | příspěvky)
m robot: stylistické, typografické a kódové korekce a náhrady přesměrování podle specifikace
Řádek 8:
: 2. <math>S \longrightarrow ba</math>
 
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