Logo dell'Università di Catania: Siciliae Studium Generale 1434 Logo DMI, Fondamenti di informatica
matite e gomma
Loghi istituzionali: Siciliae Studium Generale 1434, Università di Catania, Facoltà di Scienze Matematiche, Fisiche, Naturali, Insegnamento di Fondamenti di Informatica

Grammatiche formali e riconoscitori, gerarchia di Chomsky

Lezione 20 di Fondamenti di informatica

Docente: Giuseppe Scollo

Università di Catania
Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Informatica, I livello, AA 2009-10

Logo di Conformità WCAG-1 di Livello Tripla A, W3C-WAI Web Content Accessibility Guidelines 1.0 Validazione XHTML 1.0 Validazione CSS 3

Indice

  1. Grammatiche formali e riconoscitori, gerarchia di Chomsky
  2. algebra delle stringhe
  3. linguaggi formali
  4. operazioni e proprietà dei linguaggi
  5. grammatiche formali
  6. un esempio stimolante
  7. gerarchia di Chomsky
  8. automi e riconoscitori
  9. gerarchia di riconoscitori

algebra delle stringhe

rivediamo alcuni concetti noti e introduciamo convenzioni notazionali comuni nella teoria dei linguaggi formali:

altre operazioni e proprietà facilmente definibili (ad es. per induzione sulla lunghezza):

linguaggi formali

un linguaggio L sull'alfabeto Σ è un insieme di stringhe su Σ:   L  Σ*

operazioni sui linguaggi (su un alfabeto Σ):

operazioni e proprietà dei linguaggi

perché estendere le operazioni delle stringhe ai linguaggi?

le algebre di interesse a tal fine sono note come algebre di Kleene

proprietà di frequente interesse di linguaggi, ad es. nella codifica dell'informazione, sono le seguenti, raccolte in una sola definizione:

esempio:

grammatiche formali

si tratta di strutture matematiche atte alla definizione generativa di linguaggi formali

una classe più generale di grammatiche, che generano una più ampia classe di linguaggi, si ha dalla definizione di grammatica libera ammettendo nella parte sinistra delle produzioni, invece che solo un simbolo non terminale, una stringa sull'alfabeto VT  VN che contenga almeno un simbolo non terminale

quest'ultima proprietà è definita come segue: siano α, β, γ, δ stringhe di VT  VN :

un esempio stimolante

convenzioni notazionali: d'ora innanzi designiamo con

problema: trovare una grammatica che generi il linguaggio {anbncn | n  0}

soluzione: con N = {A,B,C} e s0=A, la grammatica che ha le seguenti produzioni:

  • A   →  aABC
  • A   →  aBC
  • CB  →  BC
  • aB  →  ab
  • bB  →  bb
  • bC  →  bc
  • cC  →  cc

fatto: non è generabile da una grammatica libera (come si vedrà più avanti)

esempio: derivazione della stringa aabbcc

  • A → aABC → aaBCBC → aaBBCC → aabBCC → aabbCC → aabbcC → aabbcc

gerarchia di Chomsky

classificazione di Chomsky delle grammatiche, per restrizioni crescenti sulla forma delle produzioni α→β :

si rammenti che α deve sempre contenere almeno un simbolo di N

se si escludono le produzioni aventi β=ε, le suddette classi di grammatiche sono ordinate da inclusione propria, così come lo sono le corrispondenti classi di linguaggi da esse generabili, ai quali si applica la stessa terminologia

le grammatiche di tipo 1 devono il loro nome al fatto di avere sempre una grammatica equivalente le cui produzioni sono della forma γAδ→γβδ, con A∈N e β non vuota

automi e riconoscitori

data una grammatica G, il problema di decisione del linguaggio LG consiste nel determinare se, data una stringa x sul suo alfabeto terminale, x LG

costituenti essenziali dei riconoscitori:

un automa a stati finiti (FSA) non ha altri costituenti, e la sua dinamica è limitata alle transizioni di stato e alla lettura sequenziale dell'input

gerarchia di riconoscitori

ulteriori costituenti, e altre possibilità di azione oltre alle transizioni di stato, caratterizzano classi di riconoscitori più sofisticati degli automi:

un riconoscitore accetta una stringa x in input se la sua dinamica permette una sequenza di transizioni dallo stato iniziale a un stato accettante

le classi di linguaggi definite nella gerarchia di Chomsky possono essere caratterizzate in base alle caratteristiche di corrispondenti classi di riconoscitori: