0% au considerat acest document util (0 voturi)
268 vizualizări7 pagini

Lab 2 LFA Doc

Documentul prezintă o lucrare de laborator care analizează operații cu automate finite deterministe și nedeterministe. Sarcinile includ reprezentarea automatelor sub formă de graf, construirea gramaticilor regulate echivalente, transformarea automatelor nedeterministe în deterministe echivalente, generarea de șiruri acceptate și neacceptate și aplicarea lemei de pompare.

Încărcat de

Jenya Matevosean
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
268 vizualizări7 pagini

Lab 2 LFA Doc

Documentul prezintă o lucrare de laborator care analizează operații cu automate finite deterministe și nedeterministe. Sarcinile includ reprezentarea automatelor sub formă de graf, construirea gramaticilor regulate echivalente, transformarea automatelor nedeterministe în deterministe echivalente, generarea de șiruri acceptate și neacceptate și aplicarea lemei de pompare.

Încărcat de

Jenya Matevosean
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd

Ministerul Educației, Culturii și Cercetării

Universitatea Tehnică a Moldovei

Departamentul Inginerie Software și Informatică

RAPORT
Limbaje formale si automate
Lucrarea de laborator nr.2

A efectuat:
st. gr. SI-161 Malai Ion

A verificat:
lect., sup. Duca Ludmila

Chişinau 2017
Lucrarea de laborator № 2 la disciplina LFA
Tema: „Automate finite”

Sarcina lucrării:

1. Este dat automatul finit AF=(Q, ∑, δ, q0, F). Reprezentaţi automatul sub formă de graf.
2. Construiţi gramatica regulată echivalentă cu automatul dat.
3. Este sau nu automatul dat determinist? De ce?
4. Dacă automatul este nedeterminist, construiţi automatul finit determinist echivalent.
Reprezentaţi AFD în formă de graf.
5. Construiţi gramatica regulată echivalentă cu automatul finit determinist.
6. Inventaţi un şir peste vocabularul ∑ care nu va fi acceptat de către automatul finit
determinist. Arătaţi acest lucru scriind secvenţa (secvenţele) de configuraţii respectivă.
7. Pentru AFD=(Q, ∑, δ, q0, F) construiţi 5 şiruri acceptate. Lungimea şirurilor să nu fie
mai mică decât n+2, unde n este numărul de stări din Q.
8. Pentru fiecare şir x scrieţi secvenţa de configuraţii pentru acceptarea şirului, adică (q0,
x) |— (qi1, x1) |— (qi2, x2) |— … |— (qf, ε), unde qf ∈ F.
9. Petru toate cele 5 şiruri obţinute construiţi descompunerea x=uvw aplicând lema de
pompare.
10. Scrieți expresia regulată echivalentă.

Varianta 16
AF = (Q, ∑, δ, q0, F)
Q = {q0, q1, q2, q3}
∑ = {a, b, c}
F = {q3}.
δ (q0, c ) = q1
δ (q0, a ) = q0
δ (q1, b ) = q2
δ (q2, a ) = q1
δ (q2, b ) = q2
δ (q2, c ) = q2
δ (q2, c ) = q3
δ (q3, c ) = q3
1. Reprezentarea automatului sub formă de graf:

Fig.1. Graf automat finit

2. Gramatica regulată echivalentă construită în baza AF:

Gramatica G = (V N , V T , P, V)
V N - vocabularul simbolurilor neterminale.
V T - vocabularul simbolurilor terminale.
P - mulţimea de producţii.
S - simbol iniţial sau axiomă.

V N = {q 0, q 1, q 2, q 3}
V T = {a, b, c} 
S = {q 0}
F = {q 3}

P ={ q 0 →aq 0 q 2→aq 1 q 2→c


q 0→cq 1 q 2→cq 2 q 3→c}
q 1→bq 2 q 2→cq 3
q 2→bq 2 q 3→cq 3
3. Automatul este finit nedeterminist deoarece, dintr-o stare există mai multe ieșiri cu
aceeași pondere.

4. Transformarea automatului nedeterminist in AF determinist echivalent:

Metoda analitică

Q’ =∅ Q’ = {[q 0] , [q 1, [q 2 , [q 2 q 3}

δ(q 0, a) ={ q 0 } δ(q 2, b) ={q 2 }


δ(q 0, b) =∅ δ(q 2, c) ={q 2 q 3 }

δ(q 0, c) ={ q 1 } δ(q 2 q 3, a) ={ q 1 }

δ(q 1, a)=∅ δ(q 2 q 3, b) ={q 2 }

δ(q 1, b)={ q 2 } δ(q 2 q 3, c) ={q 2 q 3 }

δ(q 1, c)= ∅
δ(q 2, a) ={ q 1 }
q
F’={ ¿ ]}
¿
¿

Metoda tabelară

Q’ a b c
q0 q0 - q1
q1 - q2 -
q2 q1 q2 q2q3
q2q3 q1 q2 q2q3

Tabel 1 – Transformarea AFN in AFD echivalent


Fig.2.a - Graful AFN convertat în AFD prin aplicația JFLAP

Fig.2.b - Graful AFD echivalent obținut din AFND


5. Gramatica regulată echivalentă AFD:
Gramatica G = (V N , V T , P, S)
V N = {q 0, q 1, q 1 q 2, q 2 q 3, q 1 q 3 , q 1 q 2 q 3 }
V T = {a, b, c} 
S = {q 0}
P = { q 0 →aq 0 7. Lungimea şirurilor u= c
q 0→cq 1     să nu fie mai mică v= babab
decât n+2=6.
q 1→bq 2  w= c
9. Lema de pompare:
q 2→aq 1
x= acbabc x= aaacbc
q 2→bq 2  q 0 − a → q0 −c →q 1 − b →q 2 − a →q 1 − b → q2 − c → q 2 q 3
q 0 − a → q0 −a → q0 −a → q 0 − c → q1 −
q 2→ cq 2 q 3 
u= ac
q 2 q 3→ aq 1   u=ε
v= ba
q 2 q 3→ bq 2 v=aaa
w= bc
q 2 q 3→ cq 2 q 3 w= cbbc

q 2→ c  x= cbbccc
q 0 − c → q1 −b → q 2 − b→ q 2 − c → q8. Secvențele de
2 q3 − c → q2 q3 −c → q2 q3
q 2 q 3→ c.}
configuratii pentru
u= cb acceptarea șirurilor:
6. Inventaţi un şir peste v= b
1. x=acbabc
vocabularul ∑ care nu va w= ccc
q
fi acceptat de către q
(|0 , acbabc ) ├ ∗ − ( q2 q3 , ε )
automatul finit (|0 , x ) ├
¿
determinist: ¿
x= acbb (q 0 , acbb) q
x= acbbbc (|0 , acbabc )├(
├ (q 0 ,cbb ├ (q 1 , bb ├ (q 2 , b q 0 − a → q0 −c →q 1 − b →q 2 − b →q 2 − b →
¿ q2 − c → q 2 q 3
¿
├ impas q 0 ,cbabc ├ ( q1 , babc ) ├ ( q2 , abc ) ├ ( q 1 ,
(Nu exista din q0 iesiri în u= ε
2. x=cbbccc
v=a
spre q2q3, care este starea q
w=cbbbc q
finala, iar din q2 nu sunt (|0 , cbbccc ) ├ ∗− ( q2 q3 , ε )
ieșiri cu ponderea c). x= cbababc (|0 , x ) ├
¿
q 0 − c → q1 −b → q 2 − a→ q 1 − b →q 2 − a →q 1 − b¿→q 2 − c → q 2 q 3
q 10. Scrieți expresia Am obţinut deprinderi
(|0 , cbbccc ) ├( regulată echivalentă: practice de operare cu aplicatia
¿
¿ JFLAP, pentru convertirea AF,
q 1 , bbccc ├ ( q2 , bccc ) ├ ( q2 , ccc ) ├ ( q 2 q3 , cc ) ├ ( q 2 q3 , c ) ├ ( q 2 q3 , ε ) am aplicat cunoștințele
3. x=acbbbc acumulate pentru alcătuirea
q configuratiilor de validare a
q
(|0 , acbbbc ) ├ ∗ − ( q2 q3 , ε ) șirurilor create pe baza ∑, data
(|0 , x ) ├ în sarcinile de lucru.
¿
¿
q
(|0 , acbbbc )├(
¿
¿
q 0 ,cbbbc ├ ( q1 , b bbc ) ├ ( q2 , bbc ) ├ ( q 2 , bc ) ├ ( q2 , c ) ├ ( q2 q3 , ε )
4. x =cbababc
q Fig.3.- Expresia regulate
q pentru Autimatul finit
(|0 , cbababc ) ├ ∗ − ( q2 q3 , ε )
(|0 , x ) ├
¿
¿
q
(|0 , cbababc )├(
¿
¿
Concluzie:
q 1 , bababc ├ ( q2 , ababc ) ├ ( q 1 , babc ) ├ ( q2 , abc ) ├ ( q 1 ,bc ) ├ ( q 2 , c ) ├ ( q2 q3 , ε )
În urma efectuării
5. x =aaacbc lucrării de laborator, am
q însuşit caracteristica
q tipurilor de automate
(|0 , aaacbc ) ├ ∗ − ( q2 q3 , ε )
nedeterministe și
(|0 , x ) ├
¿ deterministe. Am
¿
q implementat modul de
(|0 , aaacbc )├( convertare AFN în AFD
¿
¿ prin metoda analitică și
tabelară,
q 0 ,aacbc ├ ( q0 , acbc ) ├ ( q0 , cbc ) ├ ( q1 , bc ) ├ ( q 2 ,c ) ├ ( qprecum
2q3 , ε )
și
transformarea AF în
gramatică echivalenta
acestuia.

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