Grammatica regolare: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Erano scambiate le definizioni per grammatica regolare destra e sinistra ora sono corrette
Riga 16:
* nel caso di '''lineari destre''' (in inglese ''right regular grammar'')
:<math>A \to \beta, A \in N, \beta \in (N \circ \Sigma) \cup \Sigma</math><br/>
:ossia a sinistra della regola di produzione c'e' un non terminale e a destra un non terminale seguito da un non terminale oppure un singolo terminale.
 
* nel caso di '''lineari sinistre''' (in inglese ''left regular grammar'')
:<math>A \to \beta, A \in N, \beta \in (\Sigma \circ N) \cup \Sigma</math><br/>
:ossia a sinistra della regola di produzione c'e' un non terminale e a destra un non terminale seguito da un non terminale oppure un singolo terminale.
 
 
Riga 37:
 
== Esempi ==
Un esempio di grammatica lineare sinistradestra <math>\mathcal{G}</math> con <math>N = \{S\}, \Sigma = \{a, b\}, S</math> assioma, <math>P</math> formato dalle seguenti regole di produzione:
: <math>S \to aS</math>
: <math>S \to b</math>
Questa grammatica descrive lo stesso linguaggio dell'[[espressione regolare]] <math>a^*b</math>.
 
Un altro esempio di grammatica lineare sinistradestra <math>\mathcal{G}</math> con <math>N = \{S, C\}, \Sigma = \{a, b, c\}, S</math> assioma, <math>P</math> formato dalle seguenti regole di produzione:
: <math>S \to aS</math>
: <math>S \to bC</math>