Considera il seguente linguaggio:

$$ L=\{(ra^i^)^n(ti^*)^n\space |\space n\geq 0\} $$

Dove l’alfabeto è $A=\{r,a,i,t\}$

  1. Definire una grammatica libera dal contesto non ambigua
  2. Definire una grammatica LR e fornire la tabella per il parser bottom-up
  3. Definire una grammatica LL e fornire la corrispettiva tabella per il parser top-down

Considera il seguente linguaggio:

$$ L=\{a^nub^{k-1}vc^m\space |\space n,k,m>0\text{ e }m=n+k\} $$

  1. Definisci una grammatica libera dal contesto
  2. Il linguaggio è LR? Giustifica la risposta mostrando tutti i passaggi
  3. Se il linguaggio è LR allora fornire una parsing table per il parser bottom-up shift-reduce

Considera il seguente linguaggio:

$$ L=\{a^nbc\space |\space n>0\}\cup\{b^ncb\space |\space n\geq 0\}\cup \{ca^n\space |\space n>0\} $$

  1. Definisci una grammatica libera dal contesto
  2. Il linguaggio è LL(1)? giustifica la risposta mostrando i passaggi
  3. Se il linguaggio è LL(1) fornire una tabella per il parser top-down predictive e esegui il parsing delle stringhe “cb” e “caa”