Linguaggi context-free
Una grammatica non contestuale (o CFG) è una quadrupla , dove:
- è l'insieme finito dei non-terminali (o variabili)
- è l'insieme finito di terminali, per cui
- è l'insieme finito di regole della forma , dove e
- è lo start symbol
Dati e , si dice produce la relazione e si dice deriva la relazione se o esiste una sequenza con tale che .
Inoltre, un linguaggio è context-free se esiste una CFG tale che .
Per esempio, con si ottiene e per esempio perchè , che si può rappresentare con un parse tree:
la cui frontiera rappresenta la stringa generata.