Informti Teori Proprietà dei Linguggi Regolri 1 Proprietà dei linguggi regolri pumping lemm hiusur rispetto d operzioni insiemistihe unione, omplementzione, intersezione ontenzione, stell rpporti on espressioni regolri deidiilità e linguggi regolri teorem di Myhill-Nerode 2 1
Considerzioni sul numero degli stti e sulle ripetizioni nelle stringhe del linguggio questo utom rionose, tr le ltre, le stringhe:, (), q 0 q 3 (), ()(), ()(), q 2 ()(), ()(), ()()(), Qundo l string h più rtteri del numero degli stti, ontiene un prte he si può eliminre o ripetere piimento. E quest un ondizione generle? 3 Pumping lemm per i linguggi regolri risultto fondmentle sui linguggi regolri lemm: per ogni linguggio regolre L esiste un ostnte n tle he se z L e z n llor z=uvw on uv n, v 1 e uv i w L, per i=0,1, dimostrzione: st sui ili (eventuli) del digrmm degli stti 4 2
Dimostrzione (pumping lemm, regolri) onsiderimo l ASF A=<,K,,q 0,F> he rionose L on il minimo numero n= K di stti supponimo esist z L on z n (ltrimenti l dimostrzione è nle) imo he (q 0,z) F si q i0,q i1,,q i z l sequenz di stti ttrversti d A durnte il rionosimento di z, q i0 =q 0 e q i z F dto he z n, llor esiste lmeno uno stto ttrversto 2 volte si j il primo vlore per ui q ij è ttrversto 2 volte, si u il più reve prefisso di z tle he (q 0,u)=q ij e si z=ux 5 Dimostrzione (ontinu) imo he u <n e he (q ij,x)=q i z F si v il più reve prefisso (non vuoto) di x tle he (q ij,v)=q ij e si x=vw imo he uv n e (q ij,w)=q i z F inoltre (q 0,uv)= ( (q 0,u),v)= (q ij,v)=q ij (q 0,uv i w) = ( (q 0,u),v i w) = (q ij,v i w) = ( (q ij,v),v i-1 w) = (q ij,v i-1 w) = = (q ij,w) = q i z F 6 3
Considerzioni sul pumping lemm il pumping lemm mostr he gli ASF non hnno l pità di memorizzre un numero infinito di situzioni, non snno ontre il pumping lemm offre l opportunità di un verifi rgionevolmente rpid di non regolrità per un linguggio dto: se non vle il pumping lemm il linguggio non è regolre se vle il pumping lemm null si può ffermre sull regolrità del linguggio 7 Esempio: il linguggio n n il linguggio L={ n n n 0} non è regolre inftti, supponimo he vlg il pumping lemm dovree esistere un indie m tle he in tutte le stringhe z del linguggio di lunghezz mggiore di m è possiile individure un sottostring v, on z=uvw e uv m, he è possiile elissre o ripetere indefinitmente generndo stringhe sempre pprtenenti l linguggio se però prendimo l string 2m 2m vedimo he questo non è vero 8 4
Proprietà di hiusur dei linguggi regolri dimostreremo nel seguito he i linguggi regolri sono hiusi rispetto lle operzioni di: unione, omplementzione, intersezione, ontenzione e stell 9 teorem: Unione di linguggi regolri l unione di due linguggi regolri è regolre dimostrzione: dti due utomi non deterministii A 1 =< 1,K 1, N1,q 01,F 1 > A 2 =< 2,K 2, N2,q 02,F 2 > he rionosono i linguggi L 1 ed L 2 ostruimo un utom A=<,K, N,q 0,F> he rionos il linguggio L 1 L 2 10 5
Dimostrzione (unione) = 1 2 K=K 1 K 2 {q 0 } q 0 nuovo stto inizile se L 1 oppure L 2 F=F 1 F 2 {q 0 } ltrimenti F=F 1 F 2 N (q,) = N1 (q,) se q K 1 1 N (q,) = N2 (q,) se q K 2 2 N (q 0,) = N1 (q 01,) N2 (q 02,) 1 2 osservzione: l utom risultnte potree non essere deterministio nhe se lo sono A 1 e A 2 11 Esempio (unione) q2 q 3 q 4 q 0 q2 q 3 q 4 12 6
teorem: Complementzione di un linguggio regolre il omplementre di un linguggio regolre è regolre dimostrzione: prtire d un ASF A=<,K,,q 0,F> he rionose L, ostruimo l ASF A he rionose il linguggio omplementre 13 Dimostrzione (omplemento) A =<,K,,q 0,F =K-F> Ogni string he port A in uno stto finle port A in uno stto non finle, per ui L(A )= * -L(A) q 0 q 2 q 3,, q 0 q 2 q 3,, 14 7
Osservzioni (omplemento) Prim di eseguire l trsformzione dell utom A in A, oorre verifire he l funzione si totle Eventulmente, se lo stto pozzo è tiuto d A, oorre espliitrlo Esempio: q 0 q 2 q 0 q 2 d,, q 0 d q 2,, 15 Intersezione di linguggi regolri teorem: l intersezione di due linguggi regolri è regolre dimostrzione: nle usndo le leggi di De Morgn 16 8
Contenzione di linguggi regolri teorem: l ontenzione di due linguggi regolri è regolre dimostrzione: prtire dgli utomi A 1 =< 1,K 1, 1,q 01, F 1 > A 2 =< 2,K 2, 2,q 02, F 2 > he rionosono i linguggi L(A 1 ) e L(A 2 ), ostruimo un ASFND he rionose L(A 1 ) L(A 2 ) 17 Dimostrzione (ontenzione) l ASFND A=<,K,,q 0,F> è definito ome segue = 1 2 K=K 1 K 2 se L(A 2 ) llor F=F 1 F 2 ltrimenti F=F 2 q 0 =q 01 N (q,) = 1 (q,) se q K 1 -F 1 e 1 N (q,) = 1 (q,) 2 (q 02,) se q F 1 e (gli stti finli di A 1 hnno nhe le trnsizioni dello stto inizile di A 2 ) N (q,) = 2 (q,) se q K 2 e 2 18 9
Esempio (ontenzione) q 2 q 2 q 3 q 4 q 3 q 4 19 Chiusur trnsitiv di linguggi regolri teorem: se L è un linguggio regolre, L * è regolre dimostrzione: prtire dll utom A=<,K,,q 0,F> he rionose il linguggio L(A), ostruimo l utom A =<,K,,q 0,F > he rionose il linguggio L * =(L(A)) * 20 10
Dimostrzione (iterzione) L ASF A =<,K,,q 0,F > è definito ome segue: = K =K {q 0 } (q,) = (q,) se q K-F (q,) = (q,) (q 0,) se q F (q 0,) = (q 0,) F =F {q 0 } q 0 q 2 q 0 q 0, q 2 21 Proprietà di hiusur dei linguggi regolri teorem: l lsse dei linguggi regolri su è l più piol ontenente e { i }, on i, he si hius rispetto lle operzioni di unione, ontenzione e stell 22 11
teorem: Espressioni e grmmtihe regolri un linguggio definito d un espressione regolre è regolre dimostrzione: dimostrimo he ogni espressione regolre definise un linguggio regolre: iò è file per il linguggi e { i }, on i per i linguggi definiti utilizzndo gli opertori +,, e *, possimo pplire le proprietà di hiusur dei linguggi regolri rispetto unione, ontenzione e stell ripetuti un numero finito di volte 23 teorem: Espressioni e grmmtihe regolri un linguggio regolre è definiile on un espressione regolre dimostrzione: dto un linguggio regolre L ostruimo l espressione regolre orrispondente risovendo un sistem di equzioni estendimo il linguggio delle espressioni regolri mmettendo l presenz di vriili esempio: l presenz dell vriile A in un espressione regolre indi he A è un espressione regolre non not 24 12
Dimostrzione (impostzione del sistem) rggruppimo le produzioni he hnno lo stesso non terminle sinistr d ogni produzione A 1 B 1 2 B 2 n B n 1 2 m ssoimo l equzione A = 1 B 1 + 2 B 2 + + n B n + 1 + 2 + + m il sistem ottenuto è omposto d equzioni lineri destre, on monomi dll struttur semplie esempio: ll grmmti A A B B B orrisponde il sistem A = A+B B = B+ 25 Dimostrzione (risoluzione del sistem) teni di sostituzione esempio d A = A+B B = B+ ottenimo A = A+(B+) B = B+ 26 13
Dimostrzione (risoluzione del sistem) teni di eliminzione dell riorsione esempio d B = B+ ottenimo B = * inftti sostituendo B= * in B=B+ ottenimo: * = ( * )+= + +=( + + ) = * più in generle A = 1 A+ 2 A+ n A+ 1 + 2 + + m si risolve on A = ( 1 + 2 + n ) * ( 1 + 2 + + m ) 27 Dimostrzione (onlusioni) pplindo le regole di sostituzione ed eliminzione dell riorsione possimo risolvere ogni sistem di equzioni lineri destre quindi possimo determinre il linguggio ssoito ll vriile orrispondente ll ssiom quindi possimo determinre l espressione regolre he desrive il linguggio 28 14
generlizzzione ostruzione ostruzione Qudro rissuntivo sui linguggi regolri ASF ostruzione grmmti di tipo 3 ASFND ostruzione espressione regolre 29 Qudro rissuntivo sui linguggi regolri tipo 0 tipo 1 tipo 2 n n generti d grmmtihe di tipo 3 rionosiuti d ASF rionosiuti d ASFND desritti d espressioni regolri 30 15
Esempio erhimo l espressione regolre orrispondente ll grmmti: S S A A A S espressione regolre orrispondente: A = A+S+ = A+(S+) A = * (S+) S = S+A+ = S+ * (S+) + = S+ * S+ * + S = (+ * )S+( * +) S = (+ * ) * ( * +) S = (+ * ) * ( * + ) = (+ * ) * * dunque l espressione regolre orrispondente ll grmmti di prtenz è: (+ * ) * * 31 Esempio rivre l espressione regolre orrispondente ll grmmti: S A B A A A A B B impostimo il sistem: S = A + B + A + + + A = A + A + + B = B + 32 16
Esempio (soluzione del sistem) S = A + B + A + + + A = A + A + + B = B + = * (eliminzione dell riorsione) S A B = A + B + A + + + = A + A + + = (+) * (+) (elim dell riorsione) = * S = (+) * (+) + * + (+) * (+) + + + (sost.) S = (+)(+) * (+) + * + + + S = (+) * (+)(+) + (+) + * + S = (+) * (+) + * 33 Proprietà deidiili dei linguggi regolri teorem: è possiile deidere se il linguggio regolre L(A) rionosiuto d un ASF A on n stti è vuoto, finito o infinito dimostrzione: L(A) è vuoto L(A) è vuoto se e solo se non ett nessun string z on z <n; inftti, se A rionose prole on lmeno n simoli, per il pumping lemm rionose nhe prole on meno di n simoli quindi per verifire se L(A) è vuoto st verifire he A non rionos nessun prol tr tutte quelle di lunghezz < n definiili su 34 17
Proprietà deidiili dei linguggi regolri L(A) è finito o infinito L(A) è infinito se e solo se ett un string z on n z <2n; inftti, se A ett z on z n per il pumping lemm ett infinite stringhe inoltre, se A ett z on z 2n, per il pumping lemm ett un string x on n x <2n lgoritmo input: utom A he rionose il linguggio L(A) output: determin se L(A) è vuoto, finito o infinito proponi d A tutte le stringhe di * di lunghezz minore di 2n se nessun string è ettt llor L è vuoto se tutte le strighe ettte hnno lunghezz < n llor n è finito se tr le strighe ettte ve ne sono lune on lunghezz n llor L è infinito 35 Proprietà deidiili dei linguggi regolri teorem: il prolem dell equivlenz di due linguggi regolri è deidiile dimostrzione: st dimostrre he l loro intersezione oinide on l loro unione st quindi dimostrre he l unione dell intersezione del primo on il omplementre del seondo e dell intersezione del seondo on il omplementre del primo è il linguggio vuoto osservzione: l deidiilità dell equivlenz impli l deidiilità dell minimizzzione del numero degli stti lgoritmo: dto un utom on n stti he rionose L, ostruiso tutti gli utomi on m<n stti (sull lfeto di L) e verifio l equivlenz on L 36 18
Teorem di Myhill-Nerode un linguggio L definise impliitmente l seguente relzione inri di equivlenz su * x R L y ( z * xz L yz L) ioè x e y sono nell stess lsse di equivlenz se omplette on lo stesso suffisso entrme pprtengono o non pprtengono d L teorem: L è regolre se e solo se R L h indie finito dimostrzione: se L è regolre dimostrimo he R L h indie finito ostruendo un relzione di equivlenz più fine di R L e dimostrndo he l nuov relzione h indie finito se R L h indie finito dimostrimo he L è regolre ostruendo un utom he rionose L 37 Dimostrzione (L regolre R L indie finito) ostruimo l ASF A=<,K,,q 0,F> he rionose L e definimo un nuov relzione inri R M su * x R M y (q 0,x)= (q 0,y) due stringhe sono equivlenti se portno nello stesso stto di K prtire d q 0 R M h indie finito, pri, l più, K se x R M y llor z * xz R M yz, inftti se (q 0,x)= (q 0,y) llor nhe (q 0,xz)= (q 0,yz) se x R M y llor x R L y, inftti se (q 0,x)= (q 0,y) llor nhe (q 0,xz)= (q 0,yz) e quindi xz L yz L quindi l indie di R L è minore o ugule dell indie di R M su volt finito 38 19
Dimostrzione (R L indie finito L regolre) supponimo he R L i indie finito definimo un utom he rionose L d ogni lsse [x] ssoimo lo stto q [x] ponimo: q 0 = q [ ] F={q [x] x L} (q [x], ) = q [x ] l utom rionose L he quindi è regolre osservzione: l utom ostruito h il numero minimo di stti, in qunto R L h indie di R M 39 20