Sunteți pe pagina 1din 10

Minimizacin de Atomatas Finitos

Supongamos que para un AFD M = (Q, , , q0, F ) denimos la siguiente relacin RM : o xRM y ssi (q0, x) = (q0, y) Claramente, podemos notar que esta relacin es de equivalencia e invariante por o la derecha con respecto a concatenacin. Esto ultimo quiere decir que o xRM y xzRM yz para todo z . Intuitivamente, xRM y signica que M no puede distinguir a x de y. Cuntas clases de equivalencia tiene esta relacin? a o Respuesta: El nmero de estados que posee el autmata. u o
Jorge Baier Aranda, PUC 38

La idea de la minimizacin de autmatas nitos es obtener una relacin de o o o equivalencia con las caracter sticas de la anterior, pero de un ndice lo ms a pequeo posible. n Por ejemplo, si para un AFD arbitrario M = (Q, , , q0, F ) tenemos que (q1, x) F ssi (q2, x) F, para todo x Sabemos que esencialmente los estados q1 estn cumpliendo la misma funcin; a o es decir, son indistinguibles. Formalmente, diremos que dos estados p y q del autmata M son distinguibles o ssi existe w tal que

(p, w) F y (q, w) F Supongamos el siguiente AFD:


Jorge Baier Aranda, PUC 39

q2

0 0 q1 1

0,1

Claramente aqu los estados q1 y q2 son indistinguibles. Retomando la idea de las relaciones de equivalencia, supongamos que pudisemos e denir para un lenguaje regular cualquiera L, una relacin de equivalencia: o xRLy ssi xz L yz L, para todo z Es posible imaginar que cada una de las clases de equivalencia de esta relacin o representan estados de algn autmata. u o
Jorge Baier Aranda, PUC 40

De esta manera, si x pertenece a la clase de equivalencia representada por q e y pertenece a una clase de equivalencia q distinta entonces x RLy y por lo tanto q y q son indistinguibles.

Jorge Baier Aranda, PUC

41

Teorema de Myhill Nerode


El teorema de Myhill-Nerode dice que las siguientes armaciones son equivalentes. (1) L es aceptado por un autmata nito. o (2) L es la unin de algunas de las clases de equivalencia de una relacin RM de o o ndice nito. (3) Si una relacin de equivalencia RL est denida por o a xRLy ssi xz L yz L, para todo z Entonces el nmero de clases de equivalencia de RL ( u ndice de RL) es nito. La demostracin del teorema tiene que ver con la relacin RM que ya hemos o o denido. o (1)(2) Sea L aceptado por M = (Q, , , q0, F ). L es la unin de las clases de equivalencia a las que pertenecen los x tales que (q0, x) F . Como ya hemos dicho, RM tiene ndice nito. (2)(3) En efecto, RL tiene ndice nito puesto que
Jorge Baier Aranda, PUC 42

xRM y xRLy Es decir, cada clase de equivalencia de RM est contenida en una de RL. a (3)(1) Queda como ejercicio. La idea es construr un AFD a partir de RL que acepte L.

Jorge Baier Aranda, PUC

43

Algoritmo de Minimizacin
El algoritmo de minimizacin recibe un AFD como entrada y encuentra los o estados de ste que son distinguibles (e indistinguibles) entre s e . El algoritmo es el siguiente:
Minimice(M ) 1 for p F and q Q F 2 do marque(p, q) 3 for each (p, q) in F F (Q F ) (Q F ) 4 do if para algn a , ((p, a), (q, a)) est marcado u a 5 then marque(p, q) 6 marque recursivamente todos los pares que estn en L[p, q] a 7 y en las listas de los pares marcados en este paso 8 else for each a in 9 do agregue (p, q) a la lista para L[(p, a), (q, a)] 10 a menos que (p, a) = (q, a)

Jorge Baier Aranda, PUC

44

En este algoritmo est impl a cito el hecho que cada par de estados (p, q) tiene asociada una lista L[p, q] que contiene a los pares que estados que sern a distinguibles si en algn momento se demuestra que p y q son distinguibles. u El funcionamiento del algoritmo se puede resumir en lo siguiente: l neas 12 Si p es un estado nal y q es un estado no nal, entonces debemos marcarlos como distinguibles. l nea 3 De aqu en adelante consideramos pares de estados que son slo nales o o slo no nales. o l neas 47 Si a partir de (p, q) se llega, procesando el s mbolo a, a un par de estados que ya se sabe que son distinguibles, entonces p y q son distinguibles, pero tambin todos los pares que estn en la lista de L[p, q] y (recursivamente) e a todos los que estn en las listas de aqullos. Se marcan todos estos estados. a e l neas 810 En caso contrario (no hemos podido demostrar que p y q son distinguibles) agregamos (p, q) a las listas L[(p, a), (q, a)], para cada a . Esto se realiza porque p y q son distinguibles si algn par ((p, a), (q, a)) lo u es.

Jorge Baier Aranda, PUC

45

Correccin del Algoritmo


Demostraremos que si dos estados del AFD son distinguibles, entonces, el algoritmo los encuentra. Supongamos que p y q son distinguibles y que x es la palabra ms corta que a los distingue. Demostraremos por induccin en el largo de x que el par (p, q) es o marcado por el algoritmo. Caso base (x = ). Necesariamente, exactamente un estado entre p y q es nal y por lo tanto, (p, q) es marcado en las l neas 12. Induccin. Suponemos que la hiptesis se cumple para todo |x| k. Sea w = ay o o tal que |w| = k. Sea t = (p, a) y u = (q, a). Necesariamente, el string y distingue a (t, u). Por hiptesis inductiva, entonces, el par (t, u) es eventualmente marcado por el o algoritmo.

Jorge Baier Aranda, PUC

46

Cuando el algoritmo revisa el par (p, q) tenemos 2 casos posibles: 1. El algoritmo ya marc a (t, u). En este caso, el par (p, q) es marcado en las o l neas 47. 2. El algoritmo an no ha marcado al par (t, u). En este caso, por las l u neas 89, (p, q) es agregado a la lista L[t, u]. Cuando el par (t, u) sea marcado entonces (p, q) tambin ser marcado (por las l e a neas 47), porque se encuentra en la lista asociada a (t, u). Teorema. El AFD construido por el algoritmo de minimizacin a partir de M , o sin los estados inaccesibles, es el AFD m nimo para L(M ).

Jorge Baier Aranda, PUC

47

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