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