Sunteți pe pagina 1din 19

Limbaje Formale

Liviu P. DINU Bucharest University, Faculty of Mathematics, Academiei 14, RO-70109, Bucharest, Romania E-mail: ldinu@funinf.cs.unibuc.ro http://funinf.cs.unibuc.ro/ ldinu November 22, 2003

Contents
1 Preliminarii 1.1 Ierarhia Chomsky . . . . . . . . . . . . . . . . . . . . . . . . . 2 Limbaje regulate 2.1 Gramatici regulate . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Automate cu Stri Finite . . . . . . . . . . . . . . . . . . . . a 2.2.1 Automate Finite Deterministe (AFD) . . . . . . . . . . 2.2.2 Automate Finite Nedeterministe (AFN) . . . . . . . . 2.3 Gramatici regulate i Automate cu numr nit de stri . . . . s a a 2.4 Proprieti de inchidere ale limbajelor regulate. Lema Bar-Hillel at 2.5 Automatul minimal . . . . . . . . . . . . . . . . . . . . . . . . 3 Limbaje Independente de Context 3.1 Gramatici Independente de Context . . . . . . . . . . . . . 3.2 Automate Pushdown Nedeterministe (APD) . . . . . . . . 3.3 Limbaje Independente de Context i Automate Pushdown s 3.4 Proprieti de inchidere . . . . . . . . . . . . . . . . . . . . at . . . . . . . . 2 3 6 6 7 7 9 10 11 11 13 13 14 16 17

Chapter 1 Preliminarii
Aceast sectiune contine notiuni i denitii elementare despre alfabet, cua s vinte, concatenare, monoid libe generat, lungimea cuvintelor, gramatici, limbaj, etc. Un alfabet este o multime nit nevid. Elementele unui alfabet se a a numesc litere. Un cuvnt este o secvent nit de zero sau mai multe litere a a a ale lui ; cuvntul fr nici o liter se numete cuvnt vid i este notat cu . a aa a s a s Multimea tuturor cuvintelor peste se noteaz cu , timp ce multimea a n + tuturor cuvintelor nevide peste se noteaz cu = {}. Concatenarea a a dou cuvinte u, v, notat uv, este obtinuta prin juxtapunere, i.e., prin a a a scrierea lui v dup u. Multimea este monoidul liber generat de cu a operatia de concatenare. Lungimea unui cuvnt w, notat |w|, este dat de a a a numrul literelor care apar w; ecare liter este contorizat ori de cte ori a n a a a apare. Un limbaj peste un alfabet este orice submultime a lui . Denitia 1. O gramatic G este un sistem (T, N, S, P ) unde T i N sunt a s alfabete disjuncte (numite alfabetul terminalelor, respectiv neterminalelor), S N este simbolul de start iar P este o multime nit i nevid a.i. as a P (N T ) N (N T ) , numit multimea productiilor. a Notatia 1. Elementele lui P le notm cu u v. a Denitia 2. Fie G=(N,T,S,P) o gramatic. Denim relatia G (N a T ) (N T ) prin w1 w2 (citim w1 deriveaz direct in w2 ) i exist x, a a 2

y, u, v (N T ) a.i. w1 = xuy, w2 = xvy i u v P . Cnd nu exist s a a pericol de confuzie renuntm la indicele G din rela ctia denit mai sus. a a Observatia 1. Relatia de mai sus nu este neaprat reexiv i tranzitiv. a as a
Denitia 3. Inchiderea reexiv i tranzitiv a relatiei o notm . Avem as a a u v dac e u=v, e exist k 1, exist u = w0 , w1 , w2 , . . . , wk = v a.i. a a a wi wi+1 , i = 0, . . . k 1.

Denitia 4. Fie G=(N,T,S,P) o gramatic. Limbajul a L(G) = {w | w T , S w} se numete limbajul generat de gramatica G. s Exemplul 1. Fie gramatica G = ({S}, (a, b), S, {S aSb, S ab}). Limbajul generat de G este L(G) = {an bn | n 1}.

1.1

Ierarhia Chomsky

Impunerea unor restrictii asupra formei productiilor unei gramatici (Chom sky, 1958) a dus la aparitia unor familii de limbaje care ocup un loc central a in teoria limbajelor formale. Denitia 5. O gramatic G = (N, T, S, P ) se numete: a s 1. dependent de context (context sensitive) sau de tipul 1, dac ecare a a productie u v a sa satisface conditia |u| |v|. 2. independent de context (context free) sau de tipul 2, dac ecare productie a a u v a sa satisface conditia |u| = 1, v = . 3. regulat sau de tipul 3, dac ecare productie u v a sa satisface a a conditia |u| = 1, v T T N , v = . Orice gramatic se numete de tipul 0. a s Denitia 6. Orice limbaj generat de o gramatic de tipul 3 (2,1,0) se numeste a limbaj regulat (independent de context, dependent de context, oarecare) sau limbaj de tipul 3 (2,1,0). 3

Este evident c orice gramatic de tipul i este de tipul i-1, i=3,2,1. a a Familia limbajelor generate de gramatici de tipul i (i=0,1,2,3) se noteaz a cu Li (i=0,1,2,3). Sunt evidente incluziunile urmtoare: a L3 L 2 L 1 L 0 . Se va arta c aceste incluziuni sunt stricte. a a Lema 1. Fie G=(N,T,S,P) o gramatic de tipul i (i=3,2,1). Exist o graa a matic G1 echivalent cu G a.i. simbolul initial S1 al lui G1 s nu apar in a a a a nici unul din cuvintele aate in membrul al doilea al productiilor gramaticii G1 . Demonstratie: (schita) Fie G=(N,T,S,P) o gramatic de tipul i (i=3,2,1) a i e S1 N T . Considerm gramatica G1 = (N S1 , T, S1 , P1 ), unde s / a P1 = P {S1 u | S u P }. Se arat uor c G i G1 sunt echivalente, a s a s i.e. dac w L(G) atunci w L(G1 ) i reciproc. a s Denitia 7. O gramatic G=(N,T,S,P) se numete recursiv dac pentru a s a a orice cuvnt w T + exist un algoritm pentru a decide care din alternativele a a w L(G) sau w L(G) are loc. / Teorema 1. Gramaticile dependente de context sunt recursive Demonstratie: Fie G=(N,T,S,P) o gramatic de tipul 1 i w T + . Notm a s a n = |w| i denim recursiv multimile: s U0 = {S} Um+1 = Um {v | v (N T )+ , u[u Um a.i. u v si |v| n} Se demonstreaz uor c au loc urmtoarele proprieti: a s a a at 1. Um = {v | v (N T )+ , S |v| n} 2. U0 U1 . . . Um . . .
t=n t=1 (N m

T )t

3. exist k N a.i. Uk = Uk + 1. Daca Uk = Uk+1 atunci Uk = Uk+i , a pentru orice i=1,2,... 4. Fie k0 cel mai mic numr natural a.i.Uk = Uk+1 . Atunci a 4

w L(G) if f w Uk0 . Denitia 8. O productie de forma X Y , X i Y neterminale, se numete s s redenumire. Propozitia 1. Fie G=(N,T,S,P) o gramatic de tipul 2 sau 3. Exist o a a gramatic G1 echivalent cu G i fr redenumiri. a a s a a Demonstratie: Fie G=(N,T,S,P) o gramatic de tipul 2 sau 3. Fie a P1 = {A u | u N, A u P } / + P2 = {A u | A N, B[B N a.i. A G B, B u P1 ]} Productiile din P2 nu sunt redenumiri. Fie P = P1 P2 . Gramatica G1 = (N, T, S, P ) este fr redenumiri i se arat uor c este echivalent cu G. aa s a s a a

Chapter 2 Limbaje regulate


2.1 Gramatici regulate

Reamintim c o gramatic regulat sau de tipul 3, este o gramatic in care a a a a ecare productie u v a sa satisface conditia |u| = 1, v T T N , v = . Propozitia 2. Pentru orice gramatic regulat G=(N,T,S,P) exist o gra a a a matic G1 = (N1 , T, S1 , P1 ) exchivalent cu ea i avnd proprietatea c ecare a a s a a productie u v P1 a sa satisface conditiile u N1 , v T T N1 . a Demonstratie: Cf. Lemei anterioare, exist o gramatic echivalent G a a a cu G i fr redenumiri. Productiile ei sunt e de forma A a1 a2 . . . ak , s aa k 1 cu ai T , i=1,2,...k, e de forma A a1 a2 . . . ak B, k 1 cu ai T , i=1,2,...k, B N . cazul k=1 aceste productii sunt de forma In A a, a T i le adugm noii gramatici G1 . Cnd k 2, pentru ecare s a a a productie adugm neterminalele noi A1 , A2 , . . . , Ak1 i productiile: a a s A a1 A1 A1 a2 A2 ......... Ak1 ak in locul productiei A a1 a2 . . . ak , iar in locul productiei A a1 a2 . . . ak B adugm productiile: a a A a1 A1 A1 a2 A2 6

......... Ak1 ak B Gramatica G1 va avea aceleai terminale ca i G , neterminalele vor cele s s vechi la care le adugm pe cele nou introduse, simbolul de start va acelai, a a s iar productiile vor cele pe care le-am introdus cf. procedurilor de mai sus. Nu este greu de artat c G1 i G sunt echivalente. a a s Propozitia anterioar ne permite construirea unui algoritm ecient pentru a a decide dac un cuvnt dat aparttine sau nu unui limbaj regulat. a a Observatia 2. Fie o gramatic regulat G=(N,T,S,P) cu productiile in a a forma canonic i un cuvnt w = w1 w2 . . . wk , wi T , i=1,2,...,k. Putem a s a constata care din alternativele w L(G) sau w L(G) are loc alctuind / a recursiv multimile: U0 = {X | X N a.i. X wk P } Um = {X | X N, Y [Y Um1 a.i. X wkm Y P ]}, m=1,2,. . . , k-1. Avem w L(G) i S Uk1 .

2.2
2.2.1

Automate cu Stri Finite a


Automate Finite Deterministe (AFD)

Denitia 9. Se numete automat nit determinist un quintuplu (, Q, q0 , , F ), s unde: 1. este un alfabet numit alfabetul de intrare 2. Q este o multime nit nevud numit multimea strilor interne a a a a 3. q0 Q este starea initial a automatului a 4. : Q Q se numete functia de tranzitie a automatului s 5. F Q este multimea strilor nale ale automatului a Extindem functia de tranzitie la cuvinte in felul urmtor: a Denitia 10. : Q Q este denit astfel: a 7

(q, ) = (q, wx) = ((q, w), x), pentru orice w , orice x i orice q Q. s Cu alte cuvinte, (q, w) este starea in care ajunge automatul plecnd din a starea q i primind la intrare cuvntul w. s a Observatia 3. Functia extinde functia , deoarece dac (q, a) Q , a avem (q, a) = (q, a) = ((q, ), a) = (q, a) Vom nota extensia tot cu pentru uurinta scrierii. s Observatia 4. Denitia 11. Fie A = (, Q, q0 , , F ) un AFD. Limbajul acceptat de au tomatul A este: L(A) = {w | w , (q0 , w) F }. Nu este greu de demonstrat urmtoarele dou leme: a a Lema 2. Fie A un AFD. Fiind dat starea (q, w) = s, cu w = , w = a w1 w2 . . . wn , wi , i = 1, 2, ...n, exist strile q1 , q2 , . . . qn+1 a.i. q1 = a a q, qn+1 = s, qi+1 = (qi , wi ), i = 1, 2, ..., n. Lema 3. Fie A un AFD. Fiind date strile q1 , q2 , . . . qn+1 a.i. qi+1 = (qi , wi ), i = a 1, 2, ..., n, atunci qn+1 = (q1 , w), cu w = w1 w2 . . . wn , wi , i = 1, 2, ...n Corolar 2.2.1. Intr-un AFD, dac w=uv, atunci (q, w) = ((q, u), v). a Denitia 12. Multimea strilor accesibile ale unui AFD A = (, Q, q0 , , F ) a este multimea Qa = {q | q Q, , w[w a.i. (q0 , w) = q]} Cu alte cuvinte, strile accesibile ale unui automat sunt acele stri in care a a se poate ajunge pornind din starea initial i primind la intrare un cuvnt as a oarecare w. Strile accesibile pot calculate cu urmtorul algoritm: a a 8

U0 = {q0 } Um+1 = Um {q | q Q, as[a , s Um , a.i. (s, a) = q]} Cel mai mic i N pentru care Ui = Ui+1 ne permite determinarea strilor a accesibile: Qa = Ui . Denitia 13. Multimea strilor observabile ale unui AFD A = (, Q, q0 , , F ) a este multimea Qo = {q | q Q, , w[w a.i. (q, w) F ]}

2.2.2

Automate Finite Nedeterministe (AFN)

Denitia 14. Un AFN este este un quintuplu (, Q, Q0 , , F ), unde: 1. este un alfabet numit alfabetul de intrare 2. Q este o multime nit nevud numit multimea strilor interne a a a a 3. Q0 Q este o multime nevid, numit multimea strilor initiale ale a a a automatului 4. : Q 2Q se numete functia de tranzitie a automatului s 5. F Q este multimea strilor nale ale automatului a Denitia 15. Fie A = (, Q, Q0 , , F ) un AFN. Limbajul acceptat de A este format din toate cuvintele w = w1 w2 . . . wn (wi , i = 1, 2, ..., n) pentru care exist q1 , q2 , . . . , qn+1 cu q1 Q0 , qn+1 F i qi+1 (qi , wi ), a s i=1,2,...,n. Este evident c orice AFD poate privit ca un AFN, prin urmare avem a urmtoarea teorem: a a Teorema 2. Limbajul reprezentabil intr-un AFD este reprezentabil intr-un AFN Vom arta c i reciproca este adevrat. a as a a Teorema 3. Limbajul reprezentabil intr-un AFN este reprezentabil intr-un AFD. 9

Demonstratie: (constructie) Fie L un limbaj reprezentat in AFN-ul A = (, Q, Q0 , , F ). Considerm AFD A1 = (, 2Q , Q0 , , F1 ), unde functia de a tranzitie este denit astfel: a (P, a) = , dac P = a (P, a) =
qP

(q, a), dac P = , a

iar multimea strilor nale este: F1 = {S | S Q, S F = }. a

2.3

Gramatici regulate i Automate cu numr s a nit de stri a

Teorema 4. Orice limbaj regulat este reprezentabil intr-un AFN (AFD). Demonstratie: (constructie) Fie L un limbaj regulat; exist asadar o a a gramatic regulat G = (N, T, S, P ) care il genereaz a.i. simbolul de start a a a al gramaticii nu apare in membrul drept al nici unei productii i ale crei s a productii sunt de forma A a sau A aB, cu A, B N i a T . s Fie X T N i automatul nit determinist A = (T, N {X}, {S}, , F1 ), / s unde : (N {X}) T 2N {X} este dat de: a (Y, a) = dac Y = X a (Y, a) = {A | Y aA} dac Y = X i Y a P a s / (Y, a) = {A | Y aA} {X} dac Y = X i Y a P a s Teorema 5. Orice limbaj reprezentabil intr-un AFD (AFN) este regulat. Demonstratie: (constructie) Fie AFD A = (, Q, q0 , , F ) care accept a limbajul L. Construim gramatica G = (N, T, S, P ), unde: 1. T = ; 2. N=Q; 3. S = q0 ; 4. Productiile sunt denite astfel: 1) A a P i (A, a) F ; 2) A aB i (A, a) = B, A, B Q, a T . Se arat uor c limbajul generat de gramatica G este identic cu L. a s a 10

2.4

Proprieti de inchidere ale limbajelor regat ulate. Lema Bar-Hillel

Teorema 6. Limbajele regulate sunt inchise la urmtoarele operatii: a 1. reuniune: dac L1 , L2 L3 atunci L1 L2 L3 a 2. intersectie: dac L1 , L2 L3 atunci L1 L2 L3 a 3. concatenare: dac L1 , L2 L3 atunci L1 L2 L3 a 4. complementar: dac L L3 atunci CL L3 a a 5. inchiderea Kleene: dac L L3 atunci L = a
i0

Li L3 ;

6. dac L L3 atunci Sub(L) = {w | x , y a.i. xwy L} a este un limbaj regulat.

2.5

Automatul minimal

Ne punem problema determinrii unui automat cu un numr minim de stri a a a intermediare care s accepte un limbaj regulat dat. a Propozitia 3. Fie A = (, Q, q0 , , F ) un AFD. 1. Pentru orice numr natural k se denete relatia pe Q dup cum a s a urmeaz: a q1 q2 i w[w
k k i=0 k

i avem (q1 , w) F (q2 , w) F ]

2. Pe Q denim relatia astfel: q1 q2 i k[k N, q1 q2 ]. Relatiile i sunt relatii de echivalent. s a Propozitia 4. Au loc urmtoarele proprieti: a at s 1. q1 q2 i q1 i q2 sunt simultan in F sau in Q-F. 11
0 k k

2. dac k 1 atunci q1 q2 i (q1 , a) (q2 , a), a {}. a Propozitia 5. Relatiile de echivalent satisfac proprietile: a at 1. . . . . . . 2. exist k0 N a.i. = , i 1 a 3. =. Propozitia 6. Notm Q1 = Q/ . Denim functia a 1 : Q1 prin 1 ([q], a) = [(q, a)] penrtu orice a , unde prin [q] am notat clasa de echivalent a lui q in raport cu relatia . S a a se arate c 1 este bine denit. a a Propozitia 7. S se arate c 1 ([q], w) = [(q, w)], pentru orice w . a a Teorema 7. Fie A = (, Q, , q0 , F ) un AFD fr stri inaccesibile. Aua a a tomatul cu numr minim de stri care accept acelai limbaj ca i A este a a a s s Amin = (, Q1 , 1 , [q0 ], F/ ), unde elementele sale sunt denite cf. propozitiilor anterioare. Lema 4. (Lema de pompare sau lema Bar-Hillel) Dac L este un limbaj a regulat, atunci exist k N a.i. oricare ar w L, |w| > k, are o a descompunere de forma w = xyz, cu x, y, z , 0 < |y| k i xy i z L, s pentru orice i 0. Demonstratie: Fie A = (, Q, , q0 , F ) un AFD minimal cu k stri a.i. s a a accepte limbajul L. Dac w L i |w| > k scriem w = w1 w2 . . . wn i considerm secventa de a s s a stri: a (q0 , w1 ), (q0 , w1 w2 ) . . . (q0 , w1 w2 . . . wk+1 ) secventa de mai sus exist dou stri egale i de aici demonstratia decurge In a a a s uor. s
k0 k0 k0 +i k k1 0 k

k1

12

Chapter 3 Limbaje Independente de Context


3.1 Gramatici Independente de Context

Propozitia 8. Orice limbaj independent de context poate generat de o gramatic G=(N,T,S,P) de tipul 2 ale crei productii sunt de forma X a a A1 A2 . . . Ak sau X a, unde k > 1, X, A1 , A2 , . . . , Ak N i a T . s Demonstratie: Exist o gramatic echivalent G cu G i fr redenumiri a a a s aa care il genreaz pe L. Productiile ei sunt e de forma A A1 A2 . . . Ak , k 2 a cu Ai T N , i=1,2,...k, e de forma A a, cu a T . In cazul al doilea aceste productii sunt de forma dorit i le lsm neschimbate. primul caz, as aa In pentru ecare terminal Ai adugm un nou neterminal Bi distinct de toate a a celelalte i inlocuim in productie pe Ai cu Bi , adugnd productia Bi Ai . s a a Propozitia 9. (Forma normal Chomsky) Orice limbaj independent de con a text poate generat de o gramatic G=(N,T,S,P) de tipul 2 ale crei productii a a sunt de forma X A1 A2 sau X a, unde X, A1 , A2 N i a T . s Demonstratie: (constructie) Din propozitia anterioar am vzut c orice a a a limbaj independent de context poate generat de o gramatic de tipul 2 a fr redenumiri i ale crei productii sunt de forma: A A1 A2 . . . Ak , k 2 aa s a cu Ai N , i=1,2,...k, sau de forma A a, cu a T . Pentru ecare productie de forma A A1 A2 . . . Ak , k 2 vom introduce k-2 neterminale noi B1 , B2 , . . . , Bk2 i productiile: s 13

A A1 B1 B1 A2 B2 ......... Bk2 Ak1 Ak Teorema 8. Fie G=(N,T,S,P) o gramatic independent de context in FNC. a a Dac derivarea S are proprietatea c cel mai lung lant de la rdcin la a a a a a vrfurile terminale in arborele de derivare asociat ei are k noduri, atunci a |w| 2k1 . Teorema 9. (Lema de pompare) Pentru orice limbaj independent de context L exist numerele naturale p i q a.i. orice cuvnt w L cu |w| > p poate a s a scris sub forma w=xyzuv, unde: 1. |yzu| q; 2. yu = 3. xy i zui v L, pentru orice i 0.

3.2

Automate Pushdown Nedeterministe (APD)

Denitia 16. Un APD este un sistem (K, , , , q0 , Z0 , F ) unde: 1. K este o multime nevid, nit, repezentnd multimea strilor a a a a 2. este un alfabet, numit alfabetul de intrare 3. este un alfabet, numit alfabetul stivei 4. : K ( {}) 2K 5. q0 K este starea initial a 6. Z0 este simbolul de start al stivei 7. F K este multimea strilor nale. a Denitia 17. Se numete conguratie a unui automat pushdown P un triplet s (q, w, u) K , unde: 1. q K este starea in care se a automatul a 14

2. w este partea necitit din cuvntul aat pe banda de intrare. a a 3. u reprezint continutul stivei a Pe multimea conguratiilor denim o relatie binar notat a a astfel: Denitia 18. Conguratia (q, aw, Zu) se a in relatia a (s, w, vu) i scriem s (q, aw, Zu) (s, w, vu) denit a

cu conguratia

dac (s, v) (q, a, Z), unde q, s K, a {}, Z , w , u, v a . Intr-un mod analog gramaticilor regulate denim inchiderea reexiv i as tranzitiv a relatiei . a Denitia 19. Cuvntul w este acceptat de automatul pushdown P dac a a exist q F, u a.i. (q0 , w, Z0 ) a

(q, , u)

Denitia 20. Fie P = (K, , , , q0 , Z0 , ) un APD. Spunem c un cuvnt a a w este acceptat de P cu memoria pushdown vid dac exist q K a.i. a a a (q0 , w, Z0 )

(q, , )

Notatia 2. Vom nota cu L (P ) multimea tuturor cuvintelor acceptate de P cu memoria vid. a Teorema 10. Fie L(P) limbajul acceptat de un APD P = (K, , , , q0 , Z0 , F ). Exist un APD P1 a.i. L(P ) = L (P1 ). a Demonstratie: Fie q , q0 dou elemente distincte ce nu apar in K i e a s X, X . Construim APD cu memorie vid P1 = (K {q , q0 }, , / a {X}, 1 , q0 , X, ), unde 1 o denim astfel: 1. 1 (q, a, Z) = (q, a, Z), dac q K, a , Z a 1 (q, , Z) = (q, , Z), dac q K F, Z a 1 (q, , Z) = (q, , Z) {(q , )}, dac q F, Z a 2. 1 (q, , X) = {(q , )}, dac q F a 3. 1 (q0 , , X) = {(q0 , Z0 X)} 15

4. 1 (q , , Z) = {(q , )} dac Z {X} a 5. in celelalte cazuri Teorema 11. Fie L(P) limbajul acceptat de un APD P = (K, , , , q0 , Z0 , ). Exist un APD P1 a.i. L(P1 ) = L (P ). a Demonstratie: Fie P1 = (K {q0 , qf }, , {X}, 1 , q0 , X, qf ), q0 = qf / K, X ,iar 1 o denim astfel: / 1. 1 (q, a, Z) = (q, a, Z), dac q K, a {}, Z a 2. 1 (q, , X) = {(qf , )}, dac q K a 3. 1 (q0 , , X) = {(q0 , Z0 X)} 4. in celelalte cazuri

3.3

Limbaje Independente de Context i Aus tomate Pushdown

Teorema 12. Fie L un limbaj independent de context. Exist un APD P a a.i. L (P ) = L. Demonstratie: Dac L L2 , exist o gramatic independent de context a a a a G=(N,T,S,P) a.i. L=L(G). Construim automatul pushdown P = ({q}, T, T N, , q, S, ), unde este dat de: a 1. (q, , A) = {(q, u) | A u P } 2. (q, a, a) = {(q, )}, pentru a T 3. in celelalte cazuri. Teorema 13. Fie P = (K, , , , q0 , Z0 , ) un APD cu memoria vid. a Atunci limbajul L (P ) este independent de context. Demonstratie: Vom construi o gramatic independent de context care a a s genereze L (P ). a Fie G=(N,T,S,P), unde: 16

N = K K {S}, unde S K K; ecare neterminal (q,Z,r) / il notm [qZr]. a T = Productiile sunt denite dup cum urmeaz: a a 1. S [q0 Z0 q], pentru orice q K; 2. [qZr] a pentru orice a {} a.i. (r, ) (q, a, Z) 3. [qZsk ] a[ru1 s1 ][s1 u2 s2 ] . . . [sk1 uk sk ] pentru orice insiruire de k 1 stri s1 , . . . , sk din K i orice a {} pentru care a s (r, u1 u2 . . . uk ) (q, a, Z), ui , i=1,2,...k.

3.4

Proprieti de inchidere at

Teorema 14. Limbajele independente de context sunt inchise la reuniune, concatenare, inchiderea Kleene, substitutii. Propozitia 10. Limbajele independente de context nu sunt inchise la intersectie i la complementar. s a Demonstratie: {ai bi cj | i, j, k 1} {ai bj cj | i, j, k 1} = {aj bj cj | j 1} L2 , dei / s ecare din cele dou limbaje este independent de context. a C{aj bj cj | j 1} L2 Propozitia 11. Familia limbajelor independente de context este inchis la a intersectia cu limbaje regulate.

17

Bibliography
[1] . Atanasiu, A. Mateescu. Limbaje Formale. Culegere de Probleme, Ed. Univ. Bucureti, 1990 s [2] H. Georgescu, C. Popovici, S. Rudeanu. Bazele Informaticii, vol. II, Ed. Univ. Bucureti, 1991, pg.1-90 s [3] . Salomaa. Formal Languages, 1973 [4] . Salomaa, Rozenberg (eds.) Handbook of Formal Languages, Springer, 1997

18

S-ar putea să vă placă și