Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas...
Transcript of Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas...
![Page 1: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/1.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Autómatas MínimosEncontrar el autómata mínimo.
Universidad de Cantabria
Autómatas Finitos
![Page 2: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/2.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Introducción
Dado un lenguaje regular sabemos encontrar un autómatafinito. Pero, ¿hay autómatas más sencillos que aceptan elmismo lenguaje?
¿Que significa que un autómata sea más sencillo?
Los autómatas minimos son aquellos que tienen el mínimonúmero de estados.
Autómatas Finitos
![Page 3: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/3.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Introducción
Dado un lenguaje regular sabemos encontrar un autómatafinito. Pero, ¿hay autómatas más sencillos que aceptan elmismo lenguaje?
¿Que significa que un autómata sea más sencillo?
Los autómatas minimos son aquellos que tienen el mínimonúmero de estados.
Autómatas Finitos
![Page 4: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/4.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Introducción
Dado un lenguaje regular sabemos encontrar un autómatafinito. Pero, ¿hay autómatas más sencillos que aceptan elmismo lenguaje?
¿Que significa que un autómata sea más sencillo?
Los autómatas minimos son aquellos que tienen el mínimonúmero de estados.
Autómatas Finitos
![Page 5: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/5.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Introducción
Nos restringiremos a autómatas deterministas. Queremostener un procedimiento que, dado un autómata determinista, seretorne un autómata mínimo.Para resolver esta situación se utiliza un proceso deminimización de los autómatas que pasaremos a describir acontinuación.
Autómatas Finitos
![Page 6: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/6.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Minimización de Autómatas Deterministas
DefiniciónSea A := (Q,Σ,q0,F , δ) un autómata. Dos estados p,q ∈ Q sedicen equivalentes si se verifica que ∀z ∈ Σ∗:
(p, z) ` (p′, λ) ∧ (q, z) ` (q′, λ) =⇒ (p′ ∈ F ) ⇔ (q′ ∈ F ).
Autómatas Finitos
![Page 7: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/7.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Minimización de Autómatas Deterministas
En otras palabras, dos estados son equivalentes si paracualquier palabra el efecto de la computación que generan esel mismo (en términos de alcanzar o no un estado finalaceptador).
Autómatas Finitos
![Page 8: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/8.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Minimización de Autómatas Deterministas
Denotaremos por p ∼A q en el caso de que p y q seanequivalentes. Para cada estado q ∈ Q, denotaremos por [q]A laclase de equivalencia definida por q y denotaremos por Q/ ∼Aal conjunto cociente. Definiremos autómata minimal alautómata que tiene el menor número de estados y que aceptaun lenguaje.
Autómatas Finitos
![Page 9: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/9.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Minimización de Autómatas Deterministas
Esta relación es equivalente a la relación de equivalencia dadapor los prefijos. En el caso anterior trabajamos con las palabrasdel lenguaje, lo que quiere decir que es un invariante dellenguaje.
Autómatas Finitos
![Page 10: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/10.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Resultado Principal
TeoremaSea L un lenguaje aceptado por un autómata determinista A.Entonces, existe un autómata mínimo que lo acepta. Dichoautómata (Q̃,Σ, Q̃0, F̃ , δ̃) viene dado por las propiedadessiguientes:
Q̃ := Q/ ∼A,F̃ := {[q]A : q ∈ F}.q̃0 := [q0]A.δ̃([q]A, z) := [δ(q,a)].
Autómatas Finitos
![Page 11: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/11.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Nota
Este autómata se llama cociente, por la relación deequivalente, ya que agrupa estados equivalentes y solo sepreocupa de sus transiciones. Para definir las transiciones vande la clase de equivalencia a otra clase de equivalencia y vienedada por las transiciones de cualquiera de sus miembros.
Autómatas Finitos
![Page 12: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/12.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Ejemplo
Sea el siguiente automataA = ({q0,q1,q2,q3}, {0,1},q0,q0,q1, δ), donde la función detransición es:
δ a bq0 q1 q3q1 q0 q2q2 q3 q2q3 q3 q3
Si supieramos que {q0,q1} y {q2,q3} son equivalentesentonces podemos hallar un nuevo autómata que solo tienedos estados.
Autómatas Finitos
![Page 13: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/13.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Ejemplo
¿Pueden ser q0,q2 equivalentes?, ¿sabiendo que {q0,q1} sonequivalentes se podia deducir que {q2,q3} son equivalentes?
Autómatas Finitos
![Page 14: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/14.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
El problema es que el cálculo de las clases de equivalencia nopuede hacerse de manera simple (porque habríamos deverificar todas las palabras z ∈ Σ∗).
Autómatas Finitos
![Page 15: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/15.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
Sea A := (Q,Σ,q0,F , δ) un autómata. Vamos a definirdiferentes relaciones, cada una más tosca que la siguiente quenos permita hallar las clases de equivalencia.
Autómatas Finitos
![Page 16: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/16.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
La relación E0: Dados p,q ∈ Q, diremos que pE0q (p y q estánrelacionados al nivel 0) si se verifica:
p ∈ F ⇔ q ∈ F .
Es claramente una relación de equivalencia. El conjuntocociente está formado por dos clases:
Q/E0 := {F ,Q \ F}.
Definamos e0 := ] (Q/E0) = 2.
Autómatas Finitos
![Page 17: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/17.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
La relación E1: Dados p,q ∈ Q, diremos que pE1q (p y q estánrelacionados al nivel 1) si se verifica:
pE1q ⇔
pE0q,∧
δ(p, z)E0δ(q, z), ∀z ∈ Σ ∪ {λ}
Es, de nuevo, una relación de equivalencia. El conjuntocociente ya no es tan obvio, y definimos:
e1 := ] (Q/E1) .
Autómatas Finitos
![Page 18: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/18.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
La relación En: Para n ≥ 2, definimos la relación del modosiguiente: Dados p,q ∈ Q, diremos que pEnq (p y q estánrelacionados al nivel n) si se verifica:
pEnq ⇔
pEn−1q,∧
δ(p, z)En−1δ(q, z), ∀z ∈ Σ ∪ {λ}
Es, de nuevo, una relación de equivalencia. El conjuntocociente ya no es tan obvio, y definimos:
en := ] (Q/En) .
Autómatas Finitos
![Page 19: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/19.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
Esto separa cada vez más estados y muestra cuales puedenser equivalentes y cuales no. En algún momento estasrelaciones nos daran los mismos conjuntos.Queremos ver si cuando da los mismos conjuntos tenemos elautómata deseado.
Autómatas Finitos
![Page 20: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/20.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
El Algoritmo
Lo que esta claro es que la relación de equivalencia En es másdébil que pedir que dos estados sean equivalentes, pero si nes lo suficientemente grande, se tiene que son la mismarelación de equivalencia.
Autómatas Finitos
![Page 21: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/21.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Teorema
TeoremaSea A := (Q,Σ,q0,F , δ) un autómata sin λ−transiciones ysean p,q dos estados. Entonces, tomando n = ](Q)− 2, setendrá que
p ∼A q ⇔ pEnq.
Autómatas Finitos
![Page 22: Autómatas Mínimos - Encontrar el autómata mínimo. · Minimización de Autómatas Deterministas Resultados Algoritmo Autómatas Mínimos Encontrar el autómata mínimo. ... número](https://reader033.fdocuments.es/reader033/viewer/2022052712/5b0835d37f8b9a51508b88d5/html5/thumbnails/22.jpg)
IntroducciónMinimización de Autómatas Deterministas
ResultadosAlgoritmo
Resumen del algoritmo
Hallar el conjunto cociente (Q/E0) y su cardinal e0.(Siguiendo los Ei ’s) Mientras el conjunto cociente “nuevo”sea alterado con respecto al anterior, hallar el conjuntocociente siguiente.Parar cuando el cardinal del “nuevo” conjunto cocientecoincida con el último calculado.
Autómatas Finitos