Professional Documents
Culture Documents
Teorema: Sea A un autmata finito determinista. Existe , afd equivalente a A, con un nmero mnimo de estados, nico salvo isomorfismo. Proceso en varias etapas: A Estados equivalentes. B Autmatas equivalentes. C Isomorfismo de A.F. D Autmata mnimo.
Equivalencia de estados
Definiciones: Sea A = ( , Q, q0, f, F) un autmata finito determinista. 1. Sean p,q Q. Se dice que p y q son equivalentes p E q x * f (p,x) F f (q,x) F
2. Sean p,q Q , k N. Se dice que p y q son equivalentes en longitud k o k-equivalentes p Ek q x * x k f (p,x) F f (q,x) F
Notas: 1. p E q significa que los dos estados evolucionan de manera paralela, funcionan igual, hacen lo mismo en el siguiente sentido: f (p,x) F f (q,x) F se puede escribir f (p,x) F f (q,x) F f (q,x) F f (p,x) F y
y puesto que la proposicin p q es lgicamente equivalente a q p, se puede escribir f (p,x) F f (q,x) F f (p,x) F f (q,x) F y
es decir, para cualquier palabra, si desde p llega a un estado final, tambin desde q se llega a estado final y si desde p llega a estado no final, tambin desde q llega a estado no final.
1
2. La definicin 1 no proporciona un procedimiento para saber si dos estados p,q Q son equivalentes, puesto que hay infinitas palabras x en *, aunque el alfabeto slo tenga un smbolo. En cambio, para un determinado nmero natural k, si es posible, con la definicin 2, saber si dos estados p,q Q son k-equivalentes, puesto que hay un nmero finito de palabras x * cuya longitud es x k. No obstante, utilizar la definicin 2 para ello, parece, cuando menos, muy pesado o laborioso.
3. Obviamente las relaciones binarias E y Ek son relaciones de equivalencia sobre el conjunto Q y determinarn una particin de Q, el conjunto cociente, que denotaremos de la siguiente forma: Q/E se denotar como Q/Ek se denotar como PE Pk
f (p, ) F f (q, ) F
es la nica palabra x 0
(p F q F)
definicin de f, extensin de la funcin de transicin a palabras
es decir, dos estados p,q Q son 0-equivalentes, si los dos son finales, o los dos son no finales. Por tanto el conjunto cociente Q/E0 = P0 es P0 = { F, Q F } es decir, hay dos clases de 0-equivalencia.
5. De las definiciones 1 y 2 se deducen las siguientes propiedades inmediatas: 5.1 : p E q p Ek q En particular 5.2 : p Ek q p Er q En particular k p E q p E0 q r k p Ek q p E0 q
2
p,q F
p,q F
p,q F
p,q F
i.e, si dos estados son equivalentes, entonces los correspondientes estados siguientes desde p y q con cualquier palabra x, tambin son equivalentes. p Ek q f (p,x) Ek f (q,x) x *
2.
es decir, la propiedad anloga para la relacin de k-equivalencia no se cumple. p Ek+1 q p Ek q f (p,e) Ek f (q,e) e
3.
4.
5.
6.
Antes de pasar a demostrar cada una de estas propiedades veamos su significado (para qu sirven?). La propiedad 3 puesto que es una condicin necesaria y suficiente, permite obtener la relacin de k+1 equivalencia a partir de la k-equivalencia o, dicho de otra forma, la particin Pk+1 a partir de la particin Pk. La propiedad 4 dice que si, al ir obteniendo cada particin de k-equivalencia a partir de la anterior, se repiten dos, entonces todas las siguientes son ya iguales y Propiedad 5: esa particin que se repite es la particin de equivalencia PE. La propiedad 6 afirma que esa repeticin existe siempre y se produce en un nmero finito de pasos o iteraciones.
Este conjunto de propiedades es, por consiguiente, un procedimiento para obtener la relacin de equivalencia E que, como se indic, no es posible hacerlo basndose solamente en la definicin. Pero es que, adems, este resultado es muy importante porque el conjunto cociente Q/E = PE va a ser el conjunto de estados del autmata mnimo equivalente al autmata A, es decir, cada clase de equivalencia de la relacin E ser un estado del autmata .
En consecuencia, un algoritmo para la obtencin de la particin de equivalencia PE es el siguiente: P0 = {F, Q F } Se obtiene Pk+1 a partir de Pk, utilizando la propiedad 3. Pk+1 = Pk P E = Pk Pk+1 Pk volver a 2 fin
1234-
Demostracin Propiedad 1:
Hay que probar f (f (p,x), y) F f (f (q,x), y) F x y *
Pero f (f (p, x), y) = f (p,xy) x y * , segn se prob en mquinas secuenciales para la funcin f, extensin a palabras de la funcin de transicin, y un autmata finito es un caso particular de mquina secuencial de Moore. Por tanto, hay que probar: f (p,xy) F f (q,xy) F La hiptesis de la que partimos es p E q, es decir Luego, obviamente, se cumple lo que hay que probar. x y * x *
f (p,x) F f (q,x) F
Demostracin Propiedad 2:
Bastar con encontrar un ejemplo, es decir, un autmata A y dos estados de l p y q, un nmero natural k y una palabra x tales que pEkq y f (p,x) Ek f (q,x) Sea el autmata a a
q0
q1 a
q2
q1 E0 q2
pues q1 F y q2 F
f (q1,a) = q2 F f (q2,a) = q0 F
f (q1,a) E0 f (q2,a)
*)
*)
p Ek+1 q p Ek q
o lo que es lo mismo: f (p,ex) F f (q,ex) F e , x * x k o expresado de otro modo f (p,y) F f (q,y) F pero por hiptesis sabemos que p Ek+1 q, es decir p Ek+1 q f (p,x) F f (q,x) F x * x k+1 y * 0 <y k+1
e , x * x k
Paso bsico Pk = Pk
i=0
(Para los valores i = 1 y i = 2 no es necesario probarlo, pero da pistas sobre cmo actuar en el paso de induccin) i=1 i=2 Pk = Pk+1 por hiptesis hay que probar Pk = Pk+2 , o lo que es lo mismo, p Ek q p Ek+2 q p,q
definicin de equivalencia en longitud k y k+2 p Ek q p Ek+1 q f (p,e) Ek f (q,e) e f (p,e) E k+1 f (q,e) e p Ek+1 q Pk = Pk+1 prop 3 Pk = Pk+1 prop 3 p Ek+2 q
*)
Paso de induccin:
Hiptesis de induccin: Pk = Pk+r Hay que probar: Pk = Pk+r+1, o lo que es lo mismo, p Ek q p Ek+r+1 q p,q
definicin de equivalencia en longitud k y k+r+1 p Ek q p Ek+1 q f (p,e) Ek f (q,e) e f(p,e) Ek+r f(q,e) e p Ek+r q hiptesis Pk = Pk+1 prop 3 hip induccin prop 3 p Ek+r+1 q
pEq
def. de E y Ek
j n-2 Pj = Pj+1
Q slo tiene un estado Q = {q } P0 = P1 = = PE = {Q } = {{q }}
Q = 1
*)
n 2
p E1 q
p E0 q
(def. de k-equivalencia) p E0 q
P0 = 1 p E0 q p,q
f (p,e) E0 f (q,e) e
p E1 q
en particular 2 caso. P0 > 1. Se har por reduccin al absurdo: 0 j n-2 Pj Pj+1 Pn-1 > n !!!!!
prop 3
Supongamos j
Definiciones: Sean A 1 = ( , Q1, q01, f1, F1 ) y A 2 = ( , Q2, q02, f2, F2 ) 1. q1 Q 1 y q2 Q 2 son equivalentes q1 E q2 x * f1(q1,x) F1 f2(q2,x) F2 A1 E A2 L(A1) = L(A2) f1(q01,x) F1 f2(q02,x) F2
2.
3.
Autmata suma
A1 A2 = ( , Q1 Q2, q0, f, F1 F2 )
*) f : (Q1 Q2) x Q1 Q2
*)
La tabla de transicin del autmata suma, o el diagrama de transicin, es simplemente el resultado de colocar juntas las dos tablas o de dibujar uno junto al otro los diagramas de transicin. Teorema: Sean A1, A2 tales que Q1 Q2 = A1 E A2 q01 E q02 en A1 A2
es decir, para saber si dos autmatas A1 y A2 son equivalentes, se construye la particin PE del autmata suma y se mira si los estados iniciales q01 y q02 estn en la misma clase de equivalencia.
Definicin:
A1 y A2 son isomorfos, A1 A2 i : Q1 Q2 biyectiva tal que: a) i(q01) = q02 b) i[f1(q,e)] = f2[i(q),e] c) q F1 i(q) F2 Notas:
*) *)
q Q1 , e q Q1
A1 E A2 A1 E A2
Demostracin de :
x L (A1) f1(q01,x) F1 i[f1(q01,x)] F2 f2[i(q01),x] F2 f2(q02,x) F2 x L(A2) i[f1(q,x)] = f2[i(q),x] x *, q a continuacin Induccin sobre x :
c)
a)
.) Hiptesis de induccin: cierto para palabras de longitud n: Sea y, y = n+1 Hay que probar y = xe, x = n i[f1(q,y)] = f2[i(q),y]
i[f1(q,x)] = f2[i(q),x] q, x, x = n
def de f1
b)
Hip. induccin, x = n
def de f2
El paso de induccin tambin se puede hacer con y = ex: i[f1(q,y)] = i[f1(q,ex)] = i[f1(f1(q,e),x)] = f2[i(f1(q,e)),x] = f2[f2(i(q),e),x] = f2[i(q),ex] = f2[i(q),y] hip induccin, | x | = n q, en particular, f1(q,e)
def de f1
b)
def de f2
Autmata mnimo
Definicin: Autmata cociente: Sea A = (, Q, q0, f, F) un afd. A partir de ste se construye otro:
([q],e) = [f(q,e)] f
Notas:
est bien definida: 1) f est definida a partir de representantes de una clase de equivalencia, Puesto que f no depende del representante habr que comprobar que la imagen mediante f utilizado para obtener esa imagen. Es decir, habr que probar:
[q] = [q]
En efecto: [q] = [q] q E q f(q,x) E f(q,x) x * f(q,e) E f(q,e) e
([q],e) = f ([q],e) f
propiedad 1
en particular
En efecto, en cada clase de equivalencia del conjunto cociente Q/E, todos los estados son finales o todos los estados son no finales:
p E q p Ek q k p E0 q P0 = {F, Q-F} p qF pq F
10
Por fin !!! : Teorema: Sea A un autmata finito determinista. Existe , afd equivalente a A, con un nmero mnimo de estados, nico salvo isomorfismo.
Demostracin: El autmata que estbamos buscando es , el autmata cociente. Hay que probar: 1. es equivalente a A. 2. es mnimo, es decir, si hay otro autmata A equivalente a A, entonces A tiene un nmero de estados mayor o igual que el autmata cociente. 3. es nico salvo isomorfismo, es decir, si hay otro autmata A equivalente a A con el mismo nmero de estados que , entonces A y son isomorfos.
def de F
([qo],x) = [f(qo,x)] ) x * , siendo f y f las (En rigor, adems habra que probar f correspondientes extensiones a palabras de las funciones de transicin de los autmatas y A.)
2. es mnimo.
Bastar probar A E A QQ/E
lo cual se consigue encontrando una aplicacin del tipo : Q Q/E que sea sobreyectiva. Se define de la siguiente forma: q Q Aconexo x * f (qo,x) = q (q) = [f(qo,x)] (qo) = [f(qo,)] = [qo] f (qo,) = qo
f(qo,x) = q
11
*)
es sobreyectiva: Sea c Q/E. de qu elemento de Q es imagen? c = [q] x f(qo,x) = q f (qo,x) = q (q) = c Pero adems hay que probar que est bien definida, es decir, hay que probar: f (qo,x) = q f (qo,y) = q
*)
[f(qo,x)] = [f(qo,y)]
es decir:
f[f(qo,x),z] F f(qo,xz) F xz L(A) xz L(A) f (qo,xz) F A E A f [f (qo,x),z] F f [f (qo,y),z] F f (qo,yz) F yz L(A) f (qo,x) = f (qo,y) yz L(A) f(qo,yz) F f[f(qo,y),z] F A E A
*)
Sea : Q Q/E
ya se demostr que es sobreyectiva Q = Q/E es la funcin que define el isomorfismo: a) (qo) = [q o] En efecto, pues
*)
b)
[ (q),e] [f (q,e)] = f
q Q e
12
def de
(f ([qo],x),e) = f ([f(qo,x)]e) = f ( (q),e) = f
def de f
(1)
c)
q F (q) F
En efecto: Sea x * f (qo,x) = q (q) = [f(qo,x)] (1)
13