Grammatiche libere dal contesto

Una grammatica libera del contesto (Context-Free Grammar, CFG) è una quadrupla $G=\lang V, T, \Gamma, S\rang$ in cui:

Il significato di questi elementi verrà formalizzato più avanti, ma sostanzialmente:

Esempio: linguaggio dei palindromi

Esempio: linguaggio delle espressioni

Backus-Naur form

Nelle applicazioni pratiche delle CFG è tipicamente necessario rappresentarle in forma testuale, mediante una sintassi concreta che sia facilmente manipolabile tramite un editore di testo. Una tale sintassi concreta è la Backus-Naur form, BNF. Essa è sostanzialmente simile alla rappresentazione usata finora, con due principali differenze:

Ad esempio, la rappresentazione in BNF della grammatica delle espressioni vista prima è:

Untitled