Automi a pila. Automi a pila
|
|
- Amanda Giglio
- 7 anni fa
- Visualizzazioni
Transcript
1
2 utomi a pila Un automa a pila (PDA) e in pratica un ǫ-nfa con una pila. In una transizione un PDA: 1 Consuma un simbolo di input. 2 Va in un nuovo stato (o rimane dove e ). 3 Rimpiazza il top della pila con una stringa (non fa niente, o elimina il top della pila, o mette una stringa in cima alla pila) Input Finite state control Accept/reject Stack
3 sempio Consideriamo L wwr = {ww R : w {0,1} }, con grammatica P 0P0, P 1P1, P ǫ. Un PDA per L wwr ha tre stati, e funziona come segue: 1 Scommette che sta leggendo w. Rimane nello stato 0, e mette il simbolo di input sulla pila. 2 Scommette che sta nel mezzo di ww R. Va spontaneamente nello stato 1. 3 Sta leggendo la testa di w R. La paragona al top della pila. Se sono uguali, fa un pop della pila, e rimane nello stato 1. Se non sono uguali, si ferma. 4 Se la pila e vuota, va nello stato 2 e accetta la stringa.
4 Il PDA per L wwr come diagramma di transizione: 0, Z 0 / 0 Z 0 1, Z 0 / 1 Z 0 0, 0 / 0 0 0, 1 / 0 1 1, 0 / 1 0 1, 1 / 1 1 0, 0 / ε 1, 1 / ε Start q 0 q q 1 2 ε, Z 0 / Z 0 ε, Z 0 / Z 0 ε, 0 / 0 ε, 1 / 1
5 efinizione formale di PDA Un PDA e una tupla di 7 elementi: P = (Q,Σ,Γ,δ,q 0,Z 0,F), dove Q e un insieme finito di stati, Σ e un alfabeto finito di input, Γ e un alfabeto finito di pila, δ : Q Σ {ǫ} Γ 2 Q Γ e la funzione di transizione, q 0 e lo stato iniziale, Z 0 Γ e il simbolo iniziale per la pila, e F Q e l insieme di stati di accettazione.
6 sempio Il PDA 0, Z 0 / 0 Z 0 1, Z 0 / 1 Z 0 0, 0 / 0 0 0, 1 / 0 1 1, 0 / 1 0 1, 1 / 1 1 0, 0 / ε 1, 1 / ε Start q 0 q q 1 2 ε, Z 0 / Z 0 ε, Z 0 / Z 0 ε, 0 / 0 ε, 1 / 1 e la 7-tupla P = ({q 0,q 1,q 2 }, {0,1}, {0,1,Z 0 },δ,q 0,Z 0, {q 2 }), dove δ e data dalla tavola seguente:
7 sempio - funzione di transizione 0, Z 0 1, Z 0 0,0 0,1 1,0 1,1 ǫ, Z 0 ǫ, 0 ǫ, 1 q 0 q 0, 0Z 0 q 0, 1Z 0 q 0, 00 q 0, 01 q 0, 10 q 0, 11 q 1, Z 0 q 1, 0 q 1, 1 q 1 q 1, ǫ q 1, ǫ q 2, Z 0 q 2
8 escrizioni istantanee Un PDA passa da una configurazione ad un altra configurazione consumando un simbolo di input. Per ragionare sulle computazioni dei PDA, usiamo delle descrizioni istantanee (ID) del PDA. Una ID e una tripla (q,w,γ) dove q e lo stato, w l input rimanente, e γ il contenuto della pila. Sia P = (Q,Σ,Γ,δ,q 0,Z 0,F) un PDA. Allora w Σ,β Γ : (p,α) δ(q,a,x) (q,aw,xβ) (p,w,αβ). Definiamo la chiusura riflessiva e transitiva di.
9 sempio Su input 1111 il PDA 0, Z 0 / 0 Z 0 1, Z 0 / 1 Z 0 0, 0 / 0 0 0, 1 / 0 1 1, 0 / 1 0 1, 1 / 1 1 0, 0 / ε 1, 1 / ε Start q 0 q q 1 2 ε, Z 0 / Z 0 ε, Z 0 / Z 0 ε, 0 / 0 ε, 1 / 1 ha le seguenti sequenze di computazioni:
10 ( q 0, 1111, Z 0 ) ( q 0, 111, 1Z ) 0 ( q, , Z 0 ) ( q 2, 1111, Z 0 ) ( q 0, 11, 11Z 0 ) ( q, 1 111, 1Z 0 ) ( q, 11, 1 Z 0 ) ( q 0, 1, 111Z 0 ) ( q, 1 11, 11Z 0 ) ( q 2, 11, Z 0 ) ( q 0, ε, 1111Z 0 ) ( q, 1 1, 111Z 0 ) ( q, 1 1, 1 Z 0 ) ( q, 1 ε, 1111Z 0 ) ( q, 1 ε, 11 Z 0 ) ( q, ε, 1 Z 0 )
11 Valgono le seguenti proprieta : 1 Se una sequenza di ID e una computazione legale per un PDA, allora lo e anche la sequenza ottenuta aggiungendo una stringa alla fine della seconda componente (input). 2 Se una sequenza di ID e una computazione legale per un PDA, allora lo e anche la sequenza ottenuta aggiungendo una stringa alla fine della terza componente. 3 Se una sequenza di ID e una computazione legale per un PDA, e la coda di un input non e consumata, allora rimuovendola da tutte le ID si ottiene una computazione lecita.
12 Teorema 6.5: w Σ,β Γ : (q,x,α) (p,y,β) (q,xw,αγ) (p,yw,βγ). Prova: Induzione sulla lunghezza della sequenza sulla destra. Nota: Se γ = ǫ abbiamo la proprieta 1, e se w = ǫ abbiamo la proprieta 2. Nota: L inverso del teorema e falso. Dalla proprieta 3 abbiamo Teorema 6.6: (q,xw,α) (p,yw,β) (q,x,α) (p,y,β).
13 ccettazione per stato finale Sia P = (Q,Σ,Γ,δ,q 0,Z 0,F) un PDA. Il linguaggio accettato da P per stato finale e L(P) = {w : (q 0,w,Z 0 ) (q,ǫ,α), q F }.
14 sempio Il PDA di prima accetta esattamente L wwr. Sia P l automa visto. Proviamo che L(P) = L wwr. (direzione.) Sia x L wwr. Allora x = ww R, e la seguente e una sequenza di computazione legale (q 0,ww R,Z 0 ) (q 0,w R,w R Z 0 ) (q 1,w R,w R Z 0 ) (q 1,ǫ,Z 0 ) (q 2,ǫ,Z 0 ).
15 (direzione ) Osserviamo che l unico modo in cui il PDA puo andare in q 2 e se e nello stato q 1 con la pila vuota. Quindi e sufficiente mostrare che se (q 0,x,Z 0 ) (q 1,ǫ,Z 0 ) allora x = ww R, per una qualche stringa w. Mostreremo per induzione su x che (q 0,x,α) (q 1,ǫ,α) x = ww R. Base: Se x = ǫ allora x e una palindrome. Induzione: Supponiamo che x = a 1 a 2 a n, dove n > 0, e che l ipotesi induttiva valga per stringhe piu corte. Ci sono due mosse per il PDA da ID (q 0,x,α):
16 Mossa 1: La mossa spontanea (q 0,x,α) (q 1,x,α). Allora (q 1,x,α) (q 1,ǫ,β) implica che β < α, che implica β α. Mossa 2: (q 0,a 1 a 2 a n,α) (q 0,a 2 a n,a 1 α). In questo caso c e una sequenza (q 0,a 1 a 2 a n,α) (q 0,a 2 a n,a 1 α) (q 1,a n,a 1 α) (q 1,ǫ,α). Quindi a 1 = a n e (q 0,a 2 a n,a 1 α) (q 1,a n,a 1 α). Per il teorema 6.6 possiamo rimuovere a n. Quindi (q 0,a 2 a n 1,a 1 α (q 1,ǫ,a 1 α). Allora, per ipotesi induttiva a 2 a n 1 = yy R. Allora x = a 1 yy R a n e una palindrome.
17 ccettazione per pila vuota Sia P = (Q,Σ,Γ,δ,q 0,Z 0,F) un PDA. Il linguaggio accettato da P per pila vuota e N(P) = {w : (q 0,w,Z 0 ) (q,ǫ,ǫ)}. Nota: q puo essere uno stato qualunque. Domanda: come modificare il PDA per le palindromi per accettare lo stesso linguaggio per pila vuota?
18 a pila vuota a stato finale Teorema 6.9: Se L = N(P N ) per un PDA P N = (Q,Σ,Γ,δ N,q 0,Z 0 ), allora PDA P F, tale che L = L(P F ). Prova: Sia P F = (Q {p 0,p f },Σ,Γ {X 0 },δ F,p 0,X 0, {p f }) dove δ F (p 0,ǫ,X 0 ) = {(q 0,Z 0 X 0 )}, e per ogni q Q,a Σ {ǫ},y Γ : δ F (q,a,y ) = δ N (q,a,y ), e inoltre (p f,ǫ) δ F (q,ǫ,x 0 ). ε, X 0 / ε ε, X 0 / ε Start ε, X 0 / Z 0 X p 0 0 q 0 P N p f ε, X 0 / ε ε, X 0 / ε
19 Dobbiamo mostrare che L(P F ) = N(P N ). (direzione ) Sia w N(P N ). Allora (q 0,w,Z 0 ) N (q,ǫ,ǫ), per un qualche q. Dal teorema 6.5 abbiamo Dato che δ N δ F, abbiamo Concludiamo che (q 0,w,Z 0 X 0 ) N (q,ǫ,x 0 ). (q 0,w,Z 0 X 0 ) (q,ǫ,x 0 ). F (p 0,w,X 0 ) (q 0,w,Z 0 X 0 ) (q,ǫ,x 0 ) (p f,ǫ,ǫ). F F F (direzione ) Basta esaminare il diagramma.
20 a stato finale a pila vuota Teorema 6.11: Sia L = L(P F ), per un PDA P F = (Q,Σ,Γ,δ F,q 0,Z 0,F). Allora PDA P n, tale che L = N(P N ). Prova: Sia P N = (Q {p 0,p},Σ,Γ {X 0 },δ N,p 0,X 0 ) dove δ N (p 0,ǫ,X 0 ) = {(q 0,Z 0 X 0 )}, δ N (p,ǫ,y) = {(p,ǫ)}, per Y Γ {X 0 }, e per tutti i q Q, a Σ {ǫ},y Γ : δ N (q,a,y ) = δ F (q,a,y ), e inoltre q F, and Y Γ {X 0 } : (p,ǫ) δ N (q,ǫ,y ). Start ε, any/ ε ε, X 0 / Z 0 X p 0 P 0 q 0 F p ε, any/ ε ε, any/ ε
21 Dobbiamo mostrare che N(P N ) = L(P F ). (direzione ) Basta esaminare il diagramma. (direazione ) Sia w L(P F ). Allora (q 0,w,Z 0 ) (q,ǫ,α), F per un q F,α Γ. Dato che δ F δ N, e teorema 6.5 dice che X 0 puo essere infilato sotto la pila, otteniamo Il P N puo calcolare: (q 0,w,Z 0 X 0 ) N (q,ǫ,αx 0 ). (p 0,w,X 0 ) N (q 0,w,Z 0 X 0 ) N (q,ǫ,αx 0 ) N (p,ǫ,ǫ).
22 quivalenza di PDA e CFG Un linguaggio e generato da una CFG se e solo se e accettato da un PDA per pila vuota se e solo se e accettato da un PDA per stato finale Grammar PDA by empty stack PDA by final state Faremo vedere solo come passare da una grammatica ad un automa a pila (sappiamo gia andare da pila vuota a stato finale e viceversa). Ometteremo la costruzione di una grammatica da un automa a pila.
23 a CFG a PDA Data G, costruiamo un PDA che simula lm. Scriviamo le forme sentenziali sinistre come xaα dove A e la variabile piu a sinistra. Ad esempio, (a+ }{{}}{{} E x A ) }{{} α }{{} tail Sia xaα lm xβα. Questo corrisponde al PDA che ha prima consumato x e ha Aα sulla pila, e poi, leggendo ǫ, elimina A e mette β sulla pila. Piu formalmente, sia y tale che w = xy. Allora il PDA va non deterministicamente dalla configurazione (q,y,aα) alla configurazione (q, y, βα).
24 Alla configurazione (q,y,βα) il PDA si comporta come prima, a meno che ci sono terminali nel prefisso di β. In questo caso, il PDA li elimina, se li legge nell input. Se tutte le scommesse sono giuste, il PDA finisce l input con la pila vuota. Formalmente, sia G = (V,T,Q,S) una CFG. Definiamo P G come ({q},t,v T,δ,q,S), dove per A V, e per a T. δ(q,ǫ,a) = {(q,β) : A β Q}, δ(q,a,a) = {(q,ǫ)},
25 DA deterministici Un PDA P = (Q,Σ,Γ,δ,q 0,Z 0,F) e deterministico se e solo se 1 δ(q,a,x) e sempre o vuoto o con un solo elemento. 2 Se δ(q,a,x) non e vuoto, allora δ(q,ǫ,x) deve essere vuoto. Esempio: Definiamo L wcwr = {wcw R : w {0,1} } Allora L wcwr e riconosciuto dal seguente DPDA 0, Z 0 / 0 Z 0 1, Z 0 / 1 Z 0 0, 0 / 0 0 0, 1 / 0 1 1, 0 / 1 0 1, 1 / 1 1 0, 0 / ε 1, 1 / ε Start q 0 q q 1 2 c, Z 0 / Z 0 ε, Z 0 / Z 0 c, 0 / 0 c, 1 / 1
26 Mostreremo che Regolari L(DPDA) CFL Teorema 6.17: Se L e regolare, allora L = L(P) per qualche DPDA P. Prova: Dato che L e regolare, esiste un DFA A tale che L = L(A). Sia A = (Q,Σ,δ A,q 0,F) definiamo il DPDA dove per tutti i p,q Q e a Σ. Un induzione su w ci da P = (Q,Σ, {Z 0 },δ P,q 0,Z 0,F), δ P (q,a,z 0 ) = {(δ A (q,a),z 0 )}, (q 0,w,Z 0 ) (p,ǫ,z 0 ) ˆ δ A (q 0,w) = p
27 i DPDA che accettano per pila vuota? Possono riconoscere solo CFL con la proprieta del prefisso. Un linguaggio L ha la proprieta del prefisso se non esistono due stringhe distinte in L, tali che una e un prefisso dell altra. Esempio: L wcwr ha la proprieta del prefisso. Esempio: {0} non ha la proprieta del prefisso. Teorema 6.19: L e N(P) per qualche DPDA P se e solo se L ha la proprieta del prefisso e L e L(P ) per qualche DPDA P.
28 Abbiamo visto che Regolari L(DPDA). L wcwr L(DPDA)\ Regolari Ci sono linguaggi in CFL\L(DPDA). Si, per esempio L wwr. Cosa possiamo dire su DPDA e grammatiche ambigue? L wwr ha una grammatica non ambigua S 0S0 1S1 ǫ ma non e L(DPDA). Per l inverso abbiamo Teorema 6.20: Se L = N(P) per qualche DPDA P, allora L ha una CFG non ambigua. Prova: Guardando la prova del teorema 6.14 vediamo che se la costruziuone e applicata ad un DPDA, il risultato e un CFG con derivazioni a sinistra uniche per ogni stringa.
29 Il teorema 6.20 puo essere rafforzato: Teorema 6.21: Se L = L(P) per qualche DPDA P, allora L ha una CFG non ambigua. Prova: Sia $ un simbolo fuori dell alfabeto di L, e sia L = L$. E facile vedere che L ha la proprieta del prefisso. Per il teorema 6.20 abbiamo che L = N(P ) per qualche DPDA P. Per il teorema 6.20 N(P ) puo essere generato da una CFG G non ambigua Modifichiamo G in G, tale che L(G) = L, aggiungendo la produzione $ ǫ Dato che G ha derivazioni a sinistra uniche, anche G le ha, dato che l unica cosa nuova e l aggiunta di derivazioni alla fine. w$ lm w
Ma il programma in Fig. 8.2 del libro? Stampa hello, world, dato un input n se e solo se l equazione
Problemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa uello che ci aspettiamo. E facile vedere che il programma Ma il programma in Fig. 8.2 del libro?
DettagliProprieta dei Linguaggi regolari
Proprieta dei Linguaggi regolari Pumping Lemma. Ogni linguaggio regolare soddisfa il pumping lemma. Se qualcuno vi presenta un falso linguaggio regolare, l uso del pumping lemma mostrera una contraddizione.
DettagliLinguaggi Regolari e Linguaggi Liberi
Linguaggi Regolari e Linguaggi Liberi Linguaggi regolari Potere espressivo degli automi Costruzione di una grammatica equivalente a un automa Grammatiche regolari Potere espressivo delle grammatiche 1
DettagliLinguaggi regolari e automi a stati finiti
utomi a stati finiti Gli automi a stati finiti sono usati come modello per Software per la progettazione di circuiti digitali. Analizzatori lessicali di un compilatore. Ricerca di parole chiave in un file
DettagliAUTOMI A PILA. M.P. Schutzenberger
UTOMI PIL Introdotti da. G. Oettinger in utomatic Syntactic nalysis and the pushdown store Proc. Symp. pplied Math., 1961 e da M.P. Schutzenberger in Context free languages and pushdown automata Information
DettagliLinguaggi Regolari e Linguaggi Liberi
Linguaggi Regolari e Linguaggi Liberi Potenza espressiva degli automi Potenza espressiva delle grammatiche 9/11/2004 Programmazione - Luca Tesei 1 Linguaggi Regolari Tutti i linguaggi che possono essere
DettagliForma Normale di Chomsky
2. Eliminazione delle produzioni unitarie Forma Normale di Chomsky Una produzione si dice unitaria se è della forma A! B. Le produzioni unitarie in pratica consistono in una ridenominazione di variabili,
DettagliEspressioni regolari
spressioni Regolari Un FA (NFA o DFA) e una macchina a stati finiti che riconosce linguaggi regolari. Una espressione regolare e un modo dichiarativo (o algebrico) per descrivere un linguaggio regolare.
DettagliDispense del corso di Linguaggi di programmazione e laboratorio Linguaggi formali(versione non definitiva con diversi refusi) Francesco Sisini
Dispense del corso di Linguaggi di programmazione e laboratorio Linguaggi formali(versione non definitiva con diversi refusi) Francesco Sisini 04 Giugno 2014 Indice 0.1 Automi.................................
DettagliMacchine di Turing, problemi ricorsivi e ricorsivamente enumerabili
Macchine di Turing, problemi ricorsivi e ricorsivamente enumerabili roblemi che i calcolatori non possono risolvere E importante sapere se un programma e corretto, cioe fa quello che ci aspettiamo. E facile
DettagliAutoma deterministico con prospezione 1. < {q}, Σ, Σ V, δ, q, S, Φ > δ(a, X) = α R. se a Gui(X α) senza spostamento della testina.
Automa deterministico con prospezione 1 < {q}, Σ, Σ V, δ, q, S, Φ > δ(a, X) = α R δ(a, a) = ε se a Gui(X α) senza spostamento della testina con spostamento della testina Grammatica 1S ( S ) 2S [ S ] 3S
DettagliSvolgimento del compitino di Algebra 2 del 17/11/2014 (Tema A). 1. (a) Provare che G/Z(G) è isomorfo a un sottogruppo del gruppo degli
Svolgimento del compitino di Algebra 2 del 17/11/2014 (Tema A). 1. (a) Provare che G/Z(G) è isomorfo a un sottogruppo del gruppo degli automorfismi di G. (b) Provare che se G/Z(G) è ciclico allora G è
DettagliEspressioni regolari. Espressioni regolari
spressioni regolari Un FA (NFA o DFA) e un metodo per costruire una macchina che riconosce linguaggi regolari. Una espressione regolare e un modo dichiarativo per descrivere un linguaggio regolare. Esempio:
DettagliDefinizione di Grammatica
Corso di Linguaggi e Traduttori 1 AA 2004-05 GRAMMATICHE 1 Definizione di Grammatica Formalmente definiamo un grammatica G mediante una quadrupla ( VN, VT, P, S ) dove: V N e l insieme dei simboli non
DettagliAniello Murano Automi e Pushdown
Aniello Murano Automi e Pushdown 2 Lezione n. Parole chiave: Automi e PDA Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Calcolabilità, complessità e macchine computazionali
DettagliForme Normali. Forma normale di Chomsky. E caratterizzata da regole di due tipi. A! BC dove A, B, C $ V N A! a con a $ V T. Forma normale di Greibach
Forme Normali A partire da una grammatica Context-free G è sempre possibile costruire una grammatica equivalente G ovvero L(G) = L(G ) che abbiano le produzioni in forme particolari, dette forme normali.
DettagliCorso di Linguaggi e Traduttori 1 AA GRAMMATICHE
Corso di Linguaggi e Traduttori 1 AA 2004-05 GRAMMATICHE 1 Definizione di Grammatica Formalmente definiamo un grammatica G mediante una quadrupla V, V, P S ( ) N T, dove: V N e l insieme dei simboli non
Dettaglicontrollo stringa a a b a b b c c b a b x y z pila di memoria
Gli automi a pila Dagli automi finiti iti agli automi a pila Possiamo ottenere un automa a pila a partire da un automa finito (così come l abbiamo definito in precedenza), attraverso l introduzione di
DettagliLe grammatiche formali
Le grammatiche formali Il carattere generativo dei sistemi linguisticii i Consideriamo i la seguente frase: Un gatto rincorre il topo Non facciamo difficoltà a riconoscere che si tratta di una frase sintatticamente
DettagliLinguaggio universale, riduzioni, e teorema di Rice. Linguaggio universale, riduzioni, e teorema di Rice
l linguaggio universale Il linguaggio universale L u e l insieme delle stringhe binarie che codificano una coppia (M,w) dove w L(M). Esiste una TM U, detta TM universale, tale che L u = L(U). U ha tre
DettagliPumping lemma per i linguaggi Context-free
Pumping lemma per i linguaggi Context-free Sia L un linguaggio context-free. E possibile determinare una costante k, dipendente da L, tale che qualunque stringa z! L con z > k si può esprimere come z=
DettagliUniversità degli Studi di Udine. 1 Automi e Linguaggi. Prova Scritta di Fondamenti dell Informatica II Alcune Soluzioni
Università degli Studi di Udine Prova Scritta di Fondamenti dell Informatica II Alcune Soluzioni 1 Automi e Linguaggi 1. Sia dato p N, p > 0 dimostri che il linguaggio è regolare. L p = { a 0 a 1... a
DettagliCapitolo 5: Macchine di Turing e calcolabilitá secondo Turing
Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo
DettagliCostruzione di espressioni regolari 4
ostruzione di espressioni regolari 4 Indicando con d uno dei possibili digits {,, 2,,9} --possiamo esprimere il sotto linguaggio dei digits come d = ( + + 2 +.. + 9) Quale linguaggio produce l espressione:
DettagliCapitolo 5: Macchine di Turing e calcolabilitá secondo Turing
Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing 1 Macchina di Turing (MDT ) Un dispositivo che accede a un nastro (potenzialmente) illimitato diviso in celle contenenti ciascuna un simbolo
DettagliTEORIA DELLA COMPUTAZIONE 2
TEORIA DELLA COMPUTAZIONE 2 A.A. 2009/2010 Caputo Luca Cimmino Giovanni Costante Luca Davino Cristiano Di Giacomo Ivan Ferri Vincenzo Fierro Nunzio Palo Umberto Pepe Valeriano Vitale Pasquale Sommario
DettagliLOGICA MATEMATICA PER INFORMATICA (A.A. 12/13)
LOGICA MATEMATICA PER INFORMATICA (A.A. 12/13) DISPENSA N. 4 Sommario. Dimostriamo il Teorema di Completezza per il Calcolo dei Predicati del I ordine. 1. Teorema di Completezza Dimostriamo il Teorema
DettagliProgamma sintetico. Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP
Progamma sintetico Nozioni preliminari Automi Finiti Macchine di Turing Limiti delle macchine di Turing La tesi di Church-Turing Le classi P e NP Un problema classico Un uomo viaggia con un lupo, una pecora
DettagliLinguaggi e Grammatiche Liberi da Contesto
N.Fanizzi-V.Carofiglio Dipartimento di Informatica Università degli Studi di Bari 22 aprile 2016 1 Linguaggi Liberi da Contesto 2 Grammatiche e Linguaggi Liberi da Contesto G = (X, V, S, P) è una grammatica
DettagliEspressioni Regolari
Espressioni Regolari Le espressioni regolari sono costituite dalle stringhe sull alfabeto Σ = Σ {+,,*,(,),φ} ottenute secondo le seguenti regole: 1. φ e ciascun membro di Σ sono Epressioni Regolari 2.
DettagliProprietà dei linguaggi regolari
Proprietà dei linguaggi regolari Argomenti della lezione Relazione tra automi, grammatiche ed espressioni regolari Pumping lemma per i linguaggi regolari Equivalenza di automi a stati finiti Le seguenti
DettagliParser Bottom UP. Giuseppe Morelli
Parser Bottom UP Giuseppe Morelli Parser Bottom UP Un parser Bottom Up lavora costruendo il corrispondente albero di parsing per una data stringa di input partendo dalle foglie (bottom) e risalendo via
DettagliMacchine di Turing. Francesco Paoli. Istituzioni di logica, Francesco Paoli (Istituzioni di logica, ) Macchine di Turing 1 / 29
Macchine di Turing Francesco Paoli Istituzioni di logica, 2016-17 Francesco Paoli (Istituzioni di logica, 2016-17) Macchine di Turing 1 / 29 Alan M. Turing (1912-1954) Francesco Paoli (Istituzioni di logica,
DettagliEsercizi di Fondamenti di Informatica per la sicurezza. Stefano Ferrari
Esercizi di Fondamenti di Informatica per la sicurezza tefano Ferrari 23 dicembre 2003 2 Argomento 1 Grammatiche e linguaggi Esercizi Es. 1.1 Definiti i linguaggi: L 1 = {aa, ab, bc, c} L 2 = {1, 22, 31}
DettagliGrammatiche e Linguaggi Context-Free
rammatiche e Linguaggi Context-Free Def.: Una rammatica =(N,Σ,P,S) e detta context-free se ogni produzione in P e del ( ). tipo A α, con A N ed " # N $ % I linguaggi generati da una grammatica context-free
DettagliPROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica G=(V n,v t
PROLOG E ANALISI SINTATTICA DEI LINGUAGGI Quando si vuole definire in modo preciso la sintassi di un linguaggio si ricorre a una grammatica Una grammatica permette di stabilire se una sequenza di simboli
DettagliLinguaggi di Programmazione Corso C. Parte n.3 Linguaggi Liberi da Contesto e Linguaggi Contestuali. Nicola Fanizzi
Linguaggi di Programmazione Corso C Parte n.3 Linguaggi Liberi da Contesto e Linguaggi Contestuali Nicola Fanizzi (fanizzi@di.uniba.it) Dipartimento di Informatica Università degli Studi di Bari Grammatiche
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 richiami teorici sulle grammatiche di Chomsky esercizivari esercizi su grammatiche ed espressioni regolari
DettagliRICHIAMI E COMPLEMENTI SU LINGUAGGI FORMALI E AUTOMI
PARTE I RICHIAMI E COMPLEMENTI SU LINGUAGGI FORMALI E AUTOMI Linguaggi regolari Linguaggi non contestuali Automi 1 1.1 I LINGUAGGI IN INFORMATICA @ Presenti a vari livelli di applicazione linguaggi di
DettagliA.A CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5.
A.A. 2015-2016. CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5. Esercizio 5.1. Determinare le ultime tre cifre di n = 13 1625. (Suggerimento. Sfruttare il Teorema di Eulero-Fermat)
DettagliSviluppi e derivate delle funzioni elementari
Sviluppi e derivate delle funzioni elementari In queste pagine dimostriamo gli sviluppi del prim ordine e le formule di derivazioni delle principali funzioni elementari. Utilizzeremo le uguaglianze lim
DettagliITLCC 2006/10/6 19:09 page 7 #3
ITLCC 2006/10/6 19:09 page 7 #3 Capitolo 2 Macchine di Turing SOMMARIO In questo capitolo introdurremo il modello di calcolo proposto dal logico matematico inglese Alan Turing, in un suo famoso articolo
DettagliDerivazione Numerica
Derivazione Numerica I metodi alle differenze finite sono basati sull approssimazione numerica di derivate parziali. Per questo consideriamo come problema iniziale quello di approssimare le derivate di
DettagliTracce di soluzioni di alcuni esercizi di matematica 1 - gruppo 76-93
Tracce di soluzioni di alcuni esercizi di matematica 1 - gruppo 76-93 5. Funzioni continue Soluzione dell Esercizio 76. Osserviamo che possiamo scrivere p() = n (a n + u()) e q() = m (b m + v()) con lim
DettagliCorso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis
Corso di Linguaggi di Programmazione + Laboratorio Docente: Marco de Gemmis Capitolo 2 Grammatiche e Linguaggi Si ringraziano il Prof. Giovanni Semeraro e il Dott. Pasquale Lops per la concessione del
DettagliQuiz sui linguaggi CF
Fondamenti dell Informatica 1 semestre Quiz sui linguaggi CF Prof. Giorgio Gambosi a.a. 2014-2015 Problema 1: Si consideri la seguente grammatica context free G, dove S, NP, V P, P P, A sono i simboli
DettagliDispense del corso di Algebra 1. Soluzioni di alcuni esercizi
Dispense del corso di Algebra 1 Soluzioni di alcuni esercizi Esercizio 1.1. 1) Vero; ) Falso; 3) V; 4) F; 5) F; 6) F (infatti: {x x Z,x < 1} {0}); 7) V. Esercizio 1.3. Se A B, allora ogni sottoinsieme
DettagliALGEBRE DI BOOLE. (d) x, y X x y oppure y x.
ALGEBRE DI BOOLE Un insieme parzialmente ordinato è una coppia ordinata (X, ) dove X è un insieme non vuoto e " " è una relazione binaria definita su X tale che (a) x X x x (riflessività) (b) x, y, X se
DettagliEsercizi per il corso Matematica clea
Esercizi per il corso Matematica clea Daniele Ritelli anno accademico 008/009 Lezione : Numeri naturali e principio di induzione Esercizi svolti. Provare che + + + n. Provare che + + + n n(n + ) n(n +
DettagliEsercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16
Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana - 015/16 Esercizio 1 Per quali valori n Z \ {0} l espressione è un numero intero positivo? (n + 5)(n + 6) 6n Soluzione. Il problema
DettagliLunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27
Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza vale sse D l i = p i.. p.1/27 Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza
Dettagli1 Se X e Y sono equipotenti, Sym(X) e Sym(Y ) sono isomorfi
In ogni esercizio c è la data del giorno in cui l ho proposto. 1 Se X e Y sono equipotenti, Sym(X) e Sym(Y ) sono isomorfi Se X è un insieme indichiamo con Sym(X) l insieme delle biiezioni X X. Si tratta
DettagliAlcuni Teoremi sulle funzioni continue e uniforme continuità
Alcuni Teoremi sulle funzioni continue e uniforme continuità Teorema 0. Una funzione f(x) è continua in x 0 se e solo se per ogni sucessione {x n } dom(f) con x n x 0 dom(f), risulta f(x n ) f(x 0 ). (Non
DettagliLa tesi di Church-Turing
ITLCC 2006/11/12 21:06 page 79 #3 Capitolo 5 La tesi di Church-Turing SOMMARIO Sebbene il concetto di algoritmo abbia avuto una lunga storia nel campo della matematica, il concetto formale di algoritmo
DettagliDue numeri naturali non nulli a, b tali che MCD(a,b) = 1 si dicono coprimi o relativamente primi.
MASSIMO COMUNE DIVISORE E ALGORITMO DI EUCLIDE L algoritmo di Euclide permette di calcolare il massimo comun divisore tra due numeri, anche se questi sono molto grandi, senza aver bisogno di fattorizzarli
DettagliFondamenti dell Informatica: Linguaggi Formali e Calcolabilità
Eserciziario per il corso di Verona, Settembre 24 Fondamenti dell Informatica: Linguaggi Formali e Calcolabilità Dott.ssa Isabella Mastroeni Dipartimento di Informatica Università degli Studi di Verona
Dettagli(2) se A A, allora A c A; (3) se {A n } A, allora +
1. Spazi di misura In questo paragrafo accenneremo alla nozione di spazio di misura. Definizione 1. Sia X un insieme non vuoto. Una famiglia A di sottoinsiemi di X è una σ-algebra se : (1) A; (2) se A
DettagliFondamenti di Informatica. Algoritmo. Algoritmo funzionale. Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a.
Fondamenti di Informatica Prof.ssa Enrica Gentile Informatica e Comunicazione Digitale a.a. 2011-2012 Algoritmo L algoritmo è una sequenza finita di istruzioni, mediante le quali un qualunque operatore
DettagliMacchina di Turing ... !!... !!! a b b! b a! Nastro di Input. testina. s t q i. s r. Unità di Controllo q j S / D / F
Macchina di Turing Nastro di Input...!!! a b b! b a! testina!!... s r s t q i Unità di Controllo q j Q S / D / F P Definizione Formale Una macchina di Turing deterministica è una sestupla
DettagliI. Foglio di esercizi su vettori linearmente dipendenti e linearmente indipendenti. , v 2 = α v 1 + β v 2 + γ v 3. α v 1 + β v 2 + γ v 3 = 0. + γ.
ESERCIZI SVOLTI DI ALGEBRA LINEARE (Sono svolti alcune degli esercizi proposti nei fogli di esercizi su vettori linearmente dipendenti e vettori linearmente indipendenti e su sistemi lineari ) I. Foglio
DettagliDAI NUMERI NATURALI AI NUMERI RAZIONALI
DAI NUMERI NATURALI AI NUMERI RAZIONALI 1. L insieme dei numeri naturali Nel sistema assiomatico ZF, l Assioma dell infinito stabilisce che: Esiste un insieme A, i cui elementi sono insiemi e tale che
DettagliAnalisi Matematica II Corso di Ingegneria Gestionale Compito del f(x, y) = log(1 + x 2 y) lim x 2 x
Analisi Matematica II Corso di Ingegneria Gestionale Compito del -7-14 Esercizio 1. (14 punti) Data la funzione = log(1 + x y) i) determinare il dominio e studiare l esistenza del ite (x,y) (,) x x ii)
Dettagli1 Polinomio di Taylor 1. 2 Formula di Taylor 2. 3 Alcuni sviluppi notevoli 2. 4 Uso della formula di Taylor nel calcolo dei limiti 4
1 POLINOMIO DI TAYLOR 1 Formula di Taylor Indice 1 Polinomio di Taylor 1 Formula di Taylor 3 Alcuni sviluppi notevoli 4 Uso della formula di Taylor nel calcolo dei iti 4 5 Soluzioni degli esercizi 6 La
DettagliMacchine di Turing. a n B B. Controllo Finito
Macchine di Turing Il modello standard di macchina di Turing era un controllo finito, un nastro di input, diviso in celle, e una testina che prende in considerazione una cella del nastro alla volta. Il
DettagliGiovanna Carnovale. October 18, Divisibilità e massimo comun divisore
MCD in N e Polinomi Giovanna Carnovale October 18, 2011 1 Divisibilità e massimo comun divisore 1.1 Divisibilità in N In questa sezione introdurremo il concetto di divisibilità e di massimo comun divisore
Dettagli1 Relazione di congruenza in Z
1 Relazione di congruenza in Z Diamo ora un esempio importante di relazione di equivalenza: la relazione di congruenza modn in Z. Definizione 1 Sia X = Z, a,b Z ed n un intero n > 1. Si dice a congruo
DettagliLinguaggi di programmazione - Principi e paradigmi 2/ed Maurizio Gabbrielli, Simone Martini Copyright The McGraw-Hill Companies srl
Approfondimento 2.1 Non è questo il testo dove trattare esaurientemente queste tecniche semantiche. Ci accontenteremo di dare un semplice esempio delle tecniche basate sui sistemi di transizione per dare
DettagliTeorema delle Funzioni Implicite
Teorema delle Funzioni Implicite Sia F una funzione di due variabili definita in un opportuno dominio D di R 2. Consideriamo l equazione F (x, y) = 0, questa avrà come soluzioni coppie di valori (x, y)
Dettagli0.1 Esercizi calcolo combinatorio
0.1 Esercizi calcolo combinatorio Esercizio 1. Sia T l insieme dei primi 100 numeri naturali. Calcolare: 1. Il numero di sottoinsiemi A di T che contengono esattamente 8 pari.. Il numero di coppie (A,
Dettagliacuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1
acuradi Luca Cabibbo e Walter Didimo Esercizi di Informatica teorica - Luca Cabibbo e Walter Didimo 1 macchine di Turing a nastro singolo macchine di Turing multinastro macchine di Turing trasduttrici
DettagliEspressività e limitazioni delle grammatiche regolari
Espressività e limitazioni delle grammatiche regolari Vantaggi: Le grammatiche regolari consentono di esprimere una significativa classe di linguaggi: linguaggi con un numero di sequenze infinito grazie
DettagliIl teorema di Schwarz
Il teorema di Schwarz 1. Quante sono le derivate parziali seconde, terze,...? Il procedimento di derivazione parziali applicato ad una funzione f(x, y) di due variabili raddoppia il numero di derivate
DettagliValutazione Lazy. Prefazione alla lezione
Valutazione Lazy Aniello Murano Università degli Studi di Napoli Federico II 1 Prefazione alla lezione Nella lezione precedente abbiamo introdotto i linguaggi (funzionali) con tipi di ordine superiore.
DettagliLinguaggi formali, automi e logiche
Linguaggi formali, automi e logiche Angelo Montanari 1 Automi a stati finiti su parole finite In questo capitolo vengono richiamati gli elementi di base della teoria degli automi a stati finiti (automi
DettagliINSIEMI E RELAZIONI. 1. Insiemi e operazioni su di essi
INSIEMI E RELAZIONI 1. Insiemi e operazioni su di essi Il concetto di insieme è primitivo ed è sinonimo di classe, totalità. Sia A un insieme di elementi qualunque. Per indicare che a è un elemento di
DettagliIntegrale indefinito
Integrale indefinito 1 Primitive di funzioni Definizione 1.1 Se f: [a, b] R è una funzione, una sua primitiva è una funzione derivabile g: [a, b] R tale che g () = f(). Ovviamente la primitiva di una funzione,
DettagliLEZIONE 23. ax 2 + bxy + cy 2 + dx + ey + f
LEZIONE 23 23.1. Riduzione delle coniche a forma canonica. Fissiamo nel piano un sistema di riferimento Oxy e consideriamo un polinomio di grado 2 in x, y a meno di costanti moltiplicative non nulle, diciamo
Dettagli04 - Logica delle dimostrazioni
Università degli Studi di Palermo Facoltà di Economia CdS Sviluppo Economico e Cooperazione Internazionale Appunti del corso di Matematica 04 - Logica delle dimostrazioni Anno Accademico 013/014 D. Provenzano,
DettagliLe Derivate. Appunti delle lezioni di matematica di A. Pisani Liceo Classico Dante Alighieri
Le Derivate Appunti delle lezioni di matematica di A. Pisani Liceo Classico Dante Alighieri Nota bene Questi appunti sono da intendere come guida allo studio e come riassunto di quanto illustrato durante
DettagliInsiemi, Numeri, Terminologia. Prof. Simone Sbaraglia
Insiemi, Numeri, Terminologia Prof. Simone Sbaraglia Corso Rapido di Logica Matematica La logica formale definisce le regole cui deve obbedire qualsiasi teoria deduttiva. Una proposizione e` una affermazione
Dettagli4 0 = 4 2 = 4 4 = 4 6 = 0.
Elementi di Algebra e Logica 2008. Esercizi 4. Gruppi, anelli e campi. 1. Determinare la tabella additiva e la tabella moltiplicativa di Z 6. (a) Verificare dalla tabella moltiplicativa di Z 6 che esistono
DettagliFasci di Coniche. Salvino Giuffrida. 2. Determinare e studiare il fascio Φ delle coniche che passano per A (1, 0) con tangente
1 Fasci di Coniche Salvino Giuffrida 1. Determinare e studiare il fascio Φ delle coniche che passano per O = (0, 0), con tangente l asse y, e per i punti (1, 0), (1, ). Determinare vertice e asse della
DettagliCORSO DI ANALISI MATEMATICA 2 SOLUZIONI ESERCIZI PROPOSTI 15/04/2013
CORSO DI ANALISI MATEMATICA SOLUZIONI ESERCIZI PROPOSTI 5/04/03 D.BARTOLUCCI, D.GUIDO. Integrali Impropri Esercizio. (CRITERIO DEL CONFRONTO). Dimostrare che se f : (a, b] R e g(x) : (a, b] R sono integrabili
DettagliIL TEOREMA FONDAMENTALE DELL ARITMETICA: DIMOSTRAZIONE VELOCE.
IL TEOREMA FONDAMENTALE DELL ARITMETICA: DIMOSTRAZIONE VELOCE. PH. ELLIA Indice Introduzione 1 1. Divisori di un numero. 1 2. Il Teorema Fondamentale dell Aritmetica. 2 3. L insieme dei numeri primi è
DettagliLa codifica digitale
La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore
DettagliIntroduciamo ora un altro campo, formato da un numero finito di elementi; il campo delle classi resto modulo n, con n numero primo.
Capitolo 3 Il campo Z n 31 Introduzione Introduciamo ora un altro campo, formato da un numero finito di elementi; il campo delle classi resto modulo n, con n numero primo 32 Le classi resto Definizione
Dettagli1 IL LINGUAGGIO MATEMATICO
1 IL LINGUAGGIO MATEMATICO Il linguaggio matematico moderno è basato su due concetti fondamentali: la teoria degli insiemi e la logica delle proposizioni. La teoria degli insiemi ci assicura che gli oggetti
DettagliESERCIZI SUI PUNTI DI NON DERIVABILITÀ TRATTI DA TEMI D ESAME
ESERCIZI SUI PUNTI DI NON DERIVABILITÀ TRATTI DA TEMI D ESAME a cura di Michele Scaglia FUNZIONI DERIVABILI Sia f : domf R una funzione e sia 0 domf di accumulazione per domf Chiamiamo derivata prima di
Dettagli4.11 Massimi e minimi relativi per funzioni di più variabili
5. Determinare, al variare del parametro a R, la natura delle seguenti forme quadratiche: (i) Φ(x, y, z) = x 2 + 2axy + y 2 + 2axz + z 2, (ii) Φ(x, y, z, t) = 2x 2 + ay 2 z 2 t 2 + 2xz + 4yt + 2azt. 4.11
DettagliGrammatiche Parse trees Lezione del 17/10/2012
Fondamenti di Programmazione A.A. 2012-2013 Grammatiche Parse trees Lezione del 17/10/2012 AUTILI MARCO http://www.di.univaq.it/marco.autili/ Riassunto lezione precedente Sintassi vs Semantica Stringhe,
DettagliLimiti e continuità. Teoremi sui limiti. Teorema di unicità del limite Teorema di permanenza del segno Teoremi del confronto Algebra dei limiti
Limiti e continuità Teorema di unicità del ite Teorema di permanenza del segno Teoremi del confronto Algebra dei iti 2 2006 Politecnico di Torino 1 Se f(x) =` ` è unico Per assurdo, siano ` 6= `0 con f(x)
Dettagli10.2 EQUIVALENZA TRA ESPRESSIONI REGOLARI, GRAMMATICHE REGOLARI E AUTOMI
10.2 EQUIVALENZA TRA ESPRESSIONI REGOLARI, GRAMMATICHE REGOLARI E AUTOMI Sono computazionalmente più potenti gli ASF o gli ASFND? In altre parole, se con L(ASF) indichiamo la classe dei linguaggi riconoscibili
DettagliSPAZI VETTORIALI. Esercizi Esercizio 1. Sia V := R 3. Stabilire quale dei seguenti sottoinsiemi di V sono suoi sottospazi:
SPAZI VETTORIALI Esercizi Esercizio. Sia V := R 3. Stabilire quale dei seguenti sottoinsiemi di V sono suoi sottospazi: V := { (a, a, a) V a R }, V 2 := { (a, b, a) V a, b R }, V 3 := { (a, 2a, a + b)
DettagliCenni di programmazione ricorsiva. Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B)
Cenni di programmazione ricorsiva Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B) Corso di Laurea in Informatica Università di Pisa A.A. 2009/10 R. Barbuti, P. Mancarella Indice
Dettagli1 Il Teorema della funzione implicita o del Dini
1 Il Teorema della funzione implicita o del Dini Ricordiamo che dato un punto x R n, un aperto A R n che contiene x si dice intorno (aperto) di x. Teorema 1.1. (I Teorema del Dini) Sia f : A (aperto) R
DettagliInformatica Generale Homework di Recupero 2016
Informatica Generale Homework di Recupero 016 docente: Ivano Salvo Sapienza Università di Roma Gruppo 1 Esercizio 1.1 Scrivere un programma C che presi in input due interi positivi a ed b (a, b > 0) calcola
DettagliLuca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1
Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1 Esercizio 1.12 Per dimostrare che per ogni funzione esiste una formula in cui compaiono le variabili tale che la corrispondente
DettagliLinguaggi e Traduttori: Analisi sintattica
Linguaggi e Traduttori: Analisi sintattica Armando Tacchella Sistemi e Tecnologie per il Ragionamento Automatico (STAR-Lab) Dipartimento di Informatica Sistemistica e Telematica (DIST) Università di Genova
Dettagli8. Completamento di uno spazio di misura.
8. Completamento di uno spazio di misura. 8.1. Spazi di misura. Spazi di misura completi. Definizione 8.1.1. (Spazio misurabile). Si chiama spazio misurabile ogni coppia ordinata (Ω, A), dove Ω è un insieme
Dettagli1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine
1 Giochi di Ehrenfeucht-Fraissé e Logica del Prim ordine In questo tipo di giochi l arena è costituita da due grafi orientati G = (V, E), G = (V, E ). Lo scopo del I giocatore è di mostrare, in un numero
Dettagli