Documente Academic
Documente Profesional
Documente Cultură
2.3.minimizarea Unui Automat Finit
2.3.minimizarea Unui Automat Finit
x, y Si xRy
disjuncte S astfel nct .
i
S Si
i
Observaia 2.3.3 Se poate construi un cel mai mic automat care accept un limbaj T(M),
prin eliminarea strilor inaccesibile i comasarea celor redundante. Strile redundante sunt
determinate prin partiionarea strilor automatului n clase de echivalen astfel nct
fiecare clas conine stri care nu se pot distinge ntre ele i este att de mare ct este
posibil.
Definiia 2.3.4 Fie M (Q, , , q 0 , F) un automat finit determinist i q1,q2 dou stri
distincte. Spunem c x distinge q1 de q2 dac:
(q1 , x) * (q 3 , )
(q 2 , x) * (q 4 , )
i una i numai una dintre strile q3 i q4 este stare final adic:
q3 F q4 F
i q4 F q3 F.
k
Definiia 2.3.5 Spunem c q1 i q2 sunt k-nedistinctibile ( q 1 q 2 ) dac i numai dac nu
exist x, cu x
k, astfel nct x distinge q1 de q2.
Definiia 2.3.6 Spunem c q1 si q2 sunt nedistinctibile (q1q2) dac sunt k-nedistinctibile
pentru k0.
Definiia 2.3.7 O stare q este inaccesibil dac nu exist x astfel nct (q 0 , x) (q, ) .
Definiia 2.3.8 M este un automat redus dac nici o stare nu este inaccesibil i nu exist
dou stri nedistinctibile.
Exemplul 2.3.1 S se construiasc automatul finit redus pentru automatul finit M din
a
Start q0 q5
a
a b
b
q3 b b q2
a
a
b b
q1 q4 Figura 2.4.1
a
Figura 2.4.1 .
(q0,a) q5 0
(chiar egale)
(q5 ,a) q5 1
q0 q5 (rmn n aceeai clas)
(q0,b) q1 0
(q5 ,b) q4
(q1,a) q4 0
(q2,a) q2 1
q1 q2 (se vor separa n clase diferite)
(q1,b) q3 0
(q2,b) q5
(q1,a) q4 0
(q3,a) q3 1
q1 q3 (se vor separa n clase diferite)
(q1,b) q3 0
(q3,b) q0
tiind deja c q1 se separ de q2 i de q3, trebuie vzut dac q2 i q3 rmn totui mpreun:
(q2,a) q2 0
(q3,a) q3 1
q2 q3 (rmn n aceeai clas de echivalen)
(q2,b) q5 0
(q3,b) q0
Ultima stare neanalizat este q4; din cele vzute deja, aceasta ar putea aparine fie clasei
care conine pe q1, sau celei care conine pe q2 i q3, sau unei clase noi. n urmtorul calcul
se vede c prima este varianta valabil:
(q1,a) q4 0
(q4,a) q1 1
q1 q 4
(q1,b) q3 0
(q4,b) q2
Aadar, s-a obinut:
1
k 1 {q 0 , q 5 },{q 1 , q 4 },{q 2 , q 3 }
S analizm 2-nedistinctibilitatea:
(q0,a) q5 1
(q5,a) q5 2
q0 q5
(q0,b) q1 1
(q5,b) q4
(q1,a) q4 1
(q4,a) q1 2
q1 q 4
(q1,b) q3 1
(q4,b) q2
(q2,a) q2 1
(q3,a) q3 2
q2 q3
(q2,b) q5 1
(q3,b) q0
Se observ c nici una dintre clasele 1-nedistinctibile nu s-a mprit n subclase. Deci
relaia s-a stabilizat i s-a obinut:
2
k2 {q 0 , q 5 },{q1 , q 4 },{q 2 , q 3 }
1 2
Deoarece , relaia de echivalen este determinat.
Pasul A.3 Automatul redus are 3 stri (corespunznd celor trei clase de echivalen)
reprezentate de {q 0 , q1 , q 2 } i este descris n Figura 2.4.2 .
q
b a
1
Start q b
0 b
a q
2
Figura 2.4.2
a
a b
0 1 2
1 3 4
2 4 3
3 5 5
4 5 5
5 5 5
C1. Toate nodurile sunt accesibile deci trecem la :
C2. Tabelul iniial este cu toate perechile nemarcate.
0
_
1
_ _
2
_ _ _
3
_ _ _ _
4
_ _ _ _ _
5
C4. (i) Alegem acum o pereche nemarcat, (0,3). Pentru intrarea a, 0 i 3 trimit
automatul n 1 i 5, notat (0,3) (1,5). Deoarece perechea (1,5) nu este marcat, nu
vom marca nici (0,3). Cu intrarea b, avem (0,3) (2,5), care tot nemarcat estedeci nu
vom marca perechea (0,3) nici acum. Continuam s verificm perechile i observm c
pentru perechea (1,5) simbolul a realizeaz
(1,5) (3,5), unde perechea (3,5) este marcat., deci marcm perechea (1,5).
(ii) Acum mai facem o trecere prin tabel fiindc s-a modificat linia strii 5. Vom
obine:
0
X 1
X _ 2
X X X 3
X X X _ 4
X X X X X 5
Tabel care nu se mai modific.
C5. Strile echivalente sunt date de perechile nemarcate: (1,2) i
(3,4), deci automatul redus va fi:
a b
0 1 1
1 3 3
3 5 5
5 5 5