Documente Academic
Documente Profesional
Documente Cultură
RAPORT
Lucrare de laborator Nr. 2
Tema: Automate
finite
Chiinu 2012
1
1. Reprezentai automatul sub form de graf. 2. Construii gramatica regulat echivalent cu automatul dat. 3. Inventai un ir peste vocabularul care nu va fi acceptat de ctre automat. Artai acest lucru scriind secvena (secvenele) de configuraii respectiv. 4. Pentru automatul finit AF=(Q, , , q0, F) construii 5 iruri acceptate de automat. Lungimea irurilor s nu fie mai mic dect n+2, unde n este numrul de stri din Q. 5. Pentru fiecare ir x scriei secvena de configuraii pentru acceptarea irului, adic (q0, x) | (qi1, x1) | (qi2, x2) | | (qf, ), unde qf F. 6. Petru toate cele 5 iruri obinute construii aplicnd lema de pompare descompunerea x=uvw. 7. Este sau nu automatul dat determinist? De ce? 8. Dac automatul este nedeterminist, construii automatul finit determinist echivalent Reprezentai AFD n form de graf.
Varianta 5 AF=(Q, , , q0, F), Q = { q0, q1, q2 , q3 }, = { a, b }, F = { q3 }. (q0, a ) = q1 , (q0, b ) = q0 , (q1, a ) = q2, (q1, a ) = q3, (q2, a ) = q3, (q2, b) = q0.
b q
0
a a
q
1
a b
q
3
q
2
1) VN = Q = {q0, q1, q2, q3} 2) VT = ={a, b, } 3) S=q0 4) Produciile sunt definite astfel: (q0,a) ={q1} (q0,b) ={q0} (q1,a) ={q2} (q1,a) ={q3} (q2,a) ={q3} (q2,b) ={q0} 1. q0 aq1 2. q0 bq0 3. q1 aq2 4. q1 aq3 5. q2 aq3 6. q2 bq0 7. q1 a
8. q2 a
3) Inventm un ir peste vocabularul care nu este acceptat de ctre automat. Artm acest lucru scriind secvena (secvenele) de configuraii respectiv. Cuvintul neacceptat de gramatica dat este
aaabbaaa (q0, x) = (q0, aaabbaaa)|(q1, aabbaaa)|(q2 q3, abbaaa)|(q3, bbaaa) deoarece (q3, a) = , q3 F, bbaaa
4) Pentru automatul finit AF=(Q, , , q0, F) construim 5 iruri acceptate de automat. Lungimea irurilor nu este mai mic dect n+2, unde n este numrul de stri din Q.
1. x = aabaaa 2. x = bbbaaa 3. x = aabbaaa 4. x = bbaabaaa 5. x = aabaaa 5) Pentru fiecare ir x scriem secvena de configuraii pentru acceptarea irului:
(q0, x) = (q0, aabaaa)|(q1, abaaa)|(q2, baaa)|(q0, aaa)|(q1, aa)|( q2, a)|(q3, ), q3 F acceptare 2. (q0, x) = (q0, bbbaaa)|(q0, bbaaa)|(q0, baaa)|(q0, aaa )|(q1, aa)|(q2, a)|(q3, ), q3 F acceptare 3. (q0, x) = (q0, aabbaaa)|(q1, abbaaa)|(q2, bbaaa)|(q0, baaa )|(q0, aaa)|(q1, aa)| (q2, a) |(q3, ), q3 F acceptare 4. (q0, x) = (q0, bbaabaaa)|(q0, baabaaa )|(q0, aabaaa )|(q1, abaaa )|(q2, baaa ) |(q0, aaa)| (q1, aa ) | (q2, a ) |( q3, ), q3 F acceptare
5. (q0, x) = (q0, aabaaa)|(q1, abaaa)|(q2, baaa)|(q0, aaa )|(q1, aa)|(q2, a)|(q3, ), q3 F acceptare
6) Petru toate cele 5 iruri obinute construim aplicnd lema de pompare descompunerea z=uvw: 1. z=uvw 2. |z| n, n=card(Q), |v|1 3. |uv| n 4. uviw L 1. x = aabaaa
a
q
0
a
q
1
b
q2 q
0
a
q
1
a
q2
a
q
3
b
q
0
b
q
0
a
q
0
a
q
1
a
q
2
q
3
u= v=bbb w=aaa
3. x = aabbaaa
a
q
0
a
q
1
b
q
2
b
q
0
a
q
0
a
q
1
a
q
2
q
3
b
q
0
a
q
0
a
q
1
b
q
2
a
q
0
a
q
1
a
q
2
q
3
u= v=bbaab w=aaa
5. x = aabaaa
a
q
0
a
q
1
b
q
2
a
q
0
a
q
1
a
q
2
q
3
v u= v=aab w= aaa
7) Este sau nu automatul dat determinist? De ce? Automatul dat este nedeterminist, deoarece din starea q1 prin a se poate trece n 2 stri diferite: q3 sau q2
(q1,a) ={ q2,q3}
8) Dac automatul este nedeterminist, construii automatul finit determinist echivalent. Reprezentai AFD n form de graf. AFD = ( Q1, , 1, q0 , F1 ),
= {a, b, } Q1={ [ q0 ] } 1( [q0 ], a ) = [ q1 ] 1( [q0 ], a ) = [ q0 ]
Q1={ [ q0 ], [q1 ] }
1( [q1 ], a) =[ q2, q3 ]
Q1={ [ q0 ], [q1 ], [q2,q3 ] }
F1 = Q1 F , F1 = { [ q2, q3 ] }
1( [q2 ], b ) = [ q0]
b
q
0
q
1
b
a
q
3
q2 q3