Minimización de Autómatas Finitos - Pontificia Universidad Católica

Transcripción

Minimización de Autómatas Finitos - Pontificia Universidad Católica
Minimización de Autómatas Finitos
Jorge A. Baier
Departamento de Ciencia de la Computación
Pontificia Universidad Católica de Chile
Santiago, Chile
Una Relación de Equivalencia Natural
Supongamos que para un AFD M = (Q, Σ, δ, q0 , F ) definimos
relación RM :
xRM y ssi δ(q0 , x) = δ(q0 , y )
Esta relación es de equivalencia e invariante por la derecha
con respecto a concatenación. Es decir:
xRM y ⇒ xzRM yz,
para todo z ∈ Σ∗
Si xRM y diremos que M no puede distinguir a x de y .
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
2/7
Un ejemplo
¿Son q1 y q2 distinguibles en el AFD de abajo?
1
q2
0
0
0
q1
1
1
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
0,1
3/7
Teorema de Myhill-Nerode
Theorem
Myhill-Nerode Las siguientes afirmaciones son equivalentes.
(1) L ⊆ Σ∗ es aceptado por un autómata finito.
(2) L es la unión de algunas de las clases de equivalencia de una
relación RM de ı́ndice finito.
(3) Si una relación de equivalencia RL está definida por
xRL y ssi xz ∈ L ⇔ yz ∈ L, para todo z ∈ Σ∗
Entonces el número de clases de equivalencia de RL (ı́ndice de
RL ) es finito.
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
4/7
Demostración Teorema Myhill-Nerode
(1)→(2) Sea L aceptado por M = (Q, Σ, δ, q0 , F ) y sea RM la
relación que definimos antes. Entonces L es la unión de las clases
de equivalencia a las que pertenecen los x ∈ Σ∗ tales que
δ(q0 , x) ∈ F . Como ya hemos dicho, RM tiene ı́ndice finito.
(2)→(3) En efecto,
xRM y → xRL y
Es decir, cada clase de equivalencia de RM está contenida en una
de RL . Por lo tanto RL tiene ı́ndice finito.
(3)→(1) Queda como ejercicio. La idea es construr un AFD a
partir de RL que acepte L.
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
5/7
Minimizando un AFD
Definición
Diremos que dos estados p y q son indistinguibles ssi para todo
string w :
δ(p, w ) ∈ F ssi δ(q, w ) ∈ F
p y q son distinguibles cuando no son indistinguibles.
Observación 1
Si q es un estado final y p es un estado no final, entonces p y q
son distinguibles.
Observación 2
Si p y q son distinguibles y p 0 y q 0 son tales que δ(p 0 , a) = p y
δ(q 0 , a) = q entonces p 0 y q 0 son estados distinguibles.
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
6/7
Algoritmo de Minimización
Para un AFD M = (Q, Σ, δ, q0 , F )
1
L ← {{p, q} | p ∈ Q, q ∈ Q, p 6= q}
2
for each {p, q} ∈ L and not (p ∈ F ⇔ q ∈ F )
3
4
5
6
7
Mark({p, q}).
for each p 0 , q 0 ∈ Q, {p, q} marcados y a ∈ Σ
if (δ(p 0 , a), δ(q 0 , a)) = (p, q)
Mark({p 0 , q 0 })
Si algo fue marcado volver al paso 4.
Jorge A. Baier (DCC-PUC): Minimización de Autómatas Finitos
7/7

Documentos relacionados