Top Banner
Teoría de Autómatas y Lenguajes Formales 1 TEMA 4: AUTÓMATAS FINITOS (Parte A) María Llanos Alonso Díaz-Marta Antonio Fernández Caballero Departamento de Sistemas Informáticos Universidad de Castilla-la Mancha
50

AFD-AFN

Jan 01, 2016

Download

Documents

Silver Wolf
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 1

TEMA 4: AUTÓMATAS FINITOS(Parte A)

María Llanos Alonso Díaz-MartaAntonio Fernández Caballero

Departamento de Sistemas InformáticosUniversidad de Castilla-la Mancha

Page 2: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 2

TEMA 4: AUTÓMATAS FINITOS

INDICE

Sistemas de estados finitosAutómatas finitos deterministasAutómatas finitos no deterministasAutómatas finitos con transiciones nulas AFND-εAutómatas finitos y lenguajes regulares

Page 3: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 3

SISTEMAS DE ESTADOS FINITOS (1)Un Sistema de Estados Finitos es un dispositivo físico o lógico caracterizado porque, en un momento dado, puede encontrarse en un estado de entre un conjunto finito de ellos y éstos resumen el comportamiento del sistema hasta este instante dado.Ejemplos:

Semáforo: (rojo, amarillo, verde).Ascensor: (parado-piso-i, en-marcha).Máquina expendedora: (espera, coge-dinero, sirve ...).

Para caracterizar estos sistemas se usan modelos lógicos que simulan el comportamiento de un sistema de estados finitos.

TEMA 4: AUTÓMATAS FINITOS

Page 4: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 4

TEMA 4: AUTÓMATAS FINITOS

SISTEMAS DE ESTADOS FINITOS (2)Un Autómata Finito es, en particular, un sistema de estados finitos que reconoce palabras, y, en general, un modelo matemático para describir sistemas de estados finitos.

Ejemplo de Sistema de Estados Finitos (SEF). Control de un ascensor

Estados: (parado-piso-i, en-marcha-hasta-i)Acciones: (pulsar-boton-piso-i, stop)

Page 5: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 5

TEMA 4: AUTÓMATAS FINITOS

SISTEMAS DE ESTADOS FINITOS (2)Un Autómata Finito es, en particular, un sistema de estados finitos que reconoce palabras, y, en general, un modelo matemático para describir sistemas de estados finitos.

Ejemplo de Sistema de Estados Finitos (SEF). Control de un ascensor

Estados: (parado-piso-i, en-marcha-hasta-i)Acciones: (pulsar-boton-piso-i, stop)

Page 6: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 6

TEMA 4: AUTÓMATAS FINITOS

SISTEMAS DE ESTADOS FINITOS (2)Un Autómata Finito es, en particular, un sistema de estados finitos que reconoce palabras, y, en general, un modelo matemático para describir sistemas de estados finitos.

Ejemplo de Sistema de Estados Finitos (SEF). Control de un ascensor

Estados: (parado-piso-i, en-marcha-hasta-i)Acciones: (pulsar-boton-piso-i, stop)

Page 7: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 7

TEMA 4: AUTÓMATAS FINITOS

SISTEMAS DE ESTADOS FINITOS (2)Un Autómata Finito es, en particular, un sistema de estados finitos que reconoce palabras, y, en general, un modelo matemático para describir sistemas de estados finitos.

Ejemplo de Sistema de Estados Finitos (SEF). Control de un ascensor

Estados: (parado-piso-i, en-marcha-hasta-i)Acciones: (pulsar-boton-piso-i, stop)

Page 8: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 8

TEMA 4: AUTÓMATAS FINITOS

SISTEMAS DE ESTADOS FINITOS (2)Un Autómata Finito es, en particular, un sistema de estados finitos que reconoce palabras, y, en general, un modelo matemático para describir sistemas de estados finitos.

Ejemplo de Sistema de Estados Finitos (SEF). Control de un ascensor

Estados: (parado-piso-i, en-marcha-hasta-i)Acciones: (pulsar-boton-piso-i, stop)

Page 9: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 9

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (1)DESCRIPCIÓN INFORMAL

Un Autómata Finito Determinista es un SEF que “reconoce palabras de un determinado lenguaje”. Se denomina determinista porque su comportamiento queda determinado conocida la entrada.Se compone de:

Una Cinta de entrada dividida en celdas, la cual contiene la “palabra” de entrada (un símbolo por cada celda y desde la izquierda).Una Cabeza lectora, la cual apunta a una celda de la cinta determinada.Un Control finito; es como una “caja negra” que contiene el mecanismo de “transición” entre los estados en donde puede “permanecer”.

Page 10: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 10

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (2)

a a a b b

Cabeza lectora

Control

Autómata finito

Estado: Inicial

Page 11: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 11

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (2)

a a a b b

Cabeza lectora

Control

Autómata finito

Estado: Tras leer a

Page 12: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 12

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (2)

a a a b b

Cabeza lectora

Control

Autómata finito

Estado: Siguiente a

Page 13: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 13

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (2)

a a a b b

Cabeza lectora

Control

Autómata finito

Estado: Aceptado

Page 14: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 14

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (3)

Funcionamiento: Cada lenguaje tiene asociado (al menos) un Autómata Finito.

Lee los símbolos de entrada de izquierda a derecha.Cambia de estado con cada símbolo.Según el tipo de estado en donde quede tras el último símbolo leído, se decide si la palabra se acepta o no.Para leer una palabra de n símbolos, el AF realiza n transiciones, visitando (el control) n+1 estados.

Page 15: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 15

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (4)

a1, a2, …, an

q0

a1, a2, …, an

qi1⇒ ⇒

a1, a2, …, an

qin- 1qF⇒

…….

Page 16: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 16

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (5)DESCRIPCIÓN FORMAL

Un AFD es una quíntupla M = (Q, Σ, δ, q0, F) donde:Q: Conjunto finito y no vacío de estados {q0, q1, …, qn-1}.Σ: Alfabeto de entrada: conjunto finito y no vacío de símbolos.q0 ∈ Q: Estado inicial.F ⊆ Q: Subconjunto de estados finales.δ: Función de transición: reglas de cambio de estados.

δ: Q x Σ → Q (totalmente definida)donde, si δ(p, a) = q, significa que el AFD pasa del estado p al estado q cuando lee la entrada a.

Page 17: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 17

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (6)El término determinista hace referencia a que desde un estado p ∈ Q y una entrada a ∈ Σ, el AFD cambia de forma única y determinista a uno y solo uno de los estados de Q.La simplicidad del AFD radica en que, para cambiar de estado, basta conocer el estado actual y el símbolo de entrada correspondiente, sin necesidad de conocer qué ha pasado hasta este momento (no hace falta memoria adicional).

Page 18: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 18

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (7)REPRESENTACIÓN (1)

Un AFD M = (Q, Σ, δ, q0, F) puede representarse:a): Como un grafo dirigido: Los nodos son los estados Q y las aristas son ternas (p,q,a) ⇔ δ(p, a) = q, donde p,q ∈Q y a ∈ Σ.

Existen estados no finales a donde va cualquier salida no indicada, denominados estados sumideros

Page 19: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 19

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

Consideremos el AFD M = ({q0,q1,q2,q3}, {a,b}, δ, q0, {q2}), donde δ viene dada por:

δ(q0,a) = q1 δ(q0,b) = q3

δ(q1,a) = q2 δ(q1,b) = q1

δ(q2,a) = q3 δ(q2,b) = q3

δ(q3,a) = q3 δ(q3,b) = q3

Representar este AFD mediante un grafo dirigido.

Page 20: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 20

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (8)REPRESENTACIÓN (2)

Un AFD M = (Q, Σ, δ, q0, F) puede representarse:b): Como una tabla de transiciones de la función de transición δ, en donde:

Las columnas están etiquetas por los símbolos de Σ.Las filas están etiquetadas por los estados de Q.El estado inicial se simboliza anteponiendo al símbolo la marca >.Los estados finales con la marca *.Una casilla [p,a], contendrá q si y solo si δ(p, a) = qcon p,q ∈ Q y a ∈ Σ.

Page 21: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 21

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

M1 = ({q0,q1,q2}, {a,b}, δ, q0, {q0,q1})

Page 22: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 22

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (9)LENGUAJE ACEPTADO POR UN AFD (1)

Sea un AFD M = (Q, Σ, δ, q0, F).Una descripción instantánea (DI) es un par (q,α) que define la situación de M en un instante dado en el reconocimiento de una palabra ω ∈ Σ, en donde q es el estado actual y α es el sufijo de ω que falta por leer.Se denomina transición válida a la relación ├M entre dos DI’s definida como: (q,aα) ├M (p,α) ⇔ δ(q, a) = p.A partir de ├M se define, de forma natural, el cierre reflexivo y transitivo, ├*

M: Si I1, I2 son dos DI’s, entonces I1├*

M I2 ⇔ ∃J1, J2,…, Jn DI’s | I1 = J1├M J2…├M Jn = I2, con n ≥ 0.

Page 23: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 23

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

Si tenemos el siguiente AFD:

tenemos que (q0,aabb)├ (q0,abb)├ (q0,bb)├ (q1,b)

Page 24: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 24

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (10)LENGUAJE ACEPTADO POR UN AFD (2)

Veremos ahora otra forma equivalente de definir el Lenguaje aceptado por un AFD.Definiremos Función de transición extendida a palabrasde δ y lo notaremos como δ∗ a una función:

δ∗: Q x Σ∗ → Q como 1. δ∗(q, ε) = q2. δ∗(q, αa) = δ(δ∗(q,α),a), ∀q ∈ Q, α ∈ Σ∗, a ∈ Σ3. Equivalentemente:

δ∗(q,aα) = δ∗(δ(q,a),α), ∀q ∈ Q, α ∈ Σ∗, a ∈ Σ

Page 25: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 25

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

δ∗(q0,abb) = δ(δ∗(q0,ab),b) = δ(δ(δ(δ∗(q0,ε),a),b),b) = q1

Page 26: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 26

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (11)

LENGUAJE ACEPTADO POR UN AFD (3)Segunda definición de Lenguaje aceptado por un AFD a partir de la definición de δ∗.Una palabra ω ∈ Σ∗ es aceptada por un AFD M si δ∗(q0,ω) ∈ F.Se define el Lenguaje aceptado por M al conjunto:

L(M) = { ω ∈ Σ∗ | δ∗(q0,ω) ∈ F }

Page 27: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 27

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (1)Construir un AFD para reconocer las cadenas binarias que tengan un número impar de unos.

Alfabeto de entrada será: Σ = {0,1}Los estados tienen que representar las posibles situaciones:

La subcadena leída hasta ahora tiene número par de unos q0

La subcadena leída hasta ahora tiene número impar de unos q1

q0 q1

0

1

0 1

Page 28: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 28

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (1)Construir un AFD para reconocer las cadenas binarias que tengan un número impar de unos.

Alfabeto de entrada será: Σ = {0,1}Los estados tienen que representar las posibles situaciones:

La subcadena leída hasta ahora tiene número par de unos q0

La subcadena leída hasta ahora tiene número impar de unos q1

q0 q1

0

1

0 1

Page 29: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 29

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (2)

Construir un AFD para reconocer las cadenas válidas de ADN.Una cadena de ADN está formada por dos cadenas.La información genética reside en el orden en que aparecen las cuatro bases Adenina, Timina, Guanina y Citosina. Además se conoce que por condicionante químicos la Adenina sólo puede emparejarse con la Timina y la Citosina con la Guanina. No permitimos la cadena ε.

Page 30: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 30

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (2)

Page 31: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 31

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (2)

Page 32: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 32

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (2)

Page 33: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 33

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (3)

Representar el autómata finito que genera el lenguajeL = {abna | n ≥ 0}.

q0 q1b

a,b

a,b

a

q2 q3

b a

Page 34: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 34

TEMA 4: AUTÓMATAS FINITOS

PROBLEMAS

1.Dados los siguientes AFD AFD1 = ( {A,B}, {a,b,c}, δ1, A, {B} )AFD2 = ( {A,B}, {a,b,c}, δ2, A, {B} )

Determinar el lenguaje aceptado por cada uno de ellos.

BBBB

ABAA

cbaδ1

BBBBAABAcbaδ2

Page 35: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 35

TEMA 4: AUTÓMATAS FINITOS

PROBLEMAS

2. Construir los AFD que acepten los siguientes lenguajes con el alfabeto {0,1}.a) El conjunto de todas las cadenas terminadas en 00.b) El conjunto de todas las cadenas con tres ceros

consecutivos.c) El conjunto de todas las cadenas en las que el número de

ceros sea divisible por 5 y el número de unos sea divisible por 3.

d) El conjunto de todas las cadenas que comiencen por 1 y que, si se interpretan como la representación binaria de un entero, sean múltiplos de 5 (Ejemplo: 101, 1010, 1111).

Page 36: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 36

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (12)

ESTADOS ACCESIBLES. AUTÓMATA CONEXO Sea un AFD M, entonces:

Un estado q ∈ Q es accesible desde otro estado p ∈ Q si existe una palabra ω ∈ Σ* tal que δ∗(p,ω) = q.Nota: Cualquier estado es siempre accesible desde él mismo a través de la palabra vacía ε.Un AFD es conexo si cualquiera de sus estados es accesible desde el estado inicial q0.

Page 37: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 37

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

Page 38: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 38

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (13)

AFD CONEXO EQUIVALENTE (1)Sea un AFD M. Llamaremos Mc al subautómataconexo de M donde:

Qc = {q | q ∈ Q y q es accesible en M desde q0}Σc = Σq0c = q0Fc = F ∩ Qcδc será una restricción de δ a Qc x Σc → Qc

Page 39: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 39

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (14)

AFD CONEXO EQUIVALENTE (2)Propiedad: Dado un AFD M siempre existe un AFD conexo Mc equivalente a M.Demostraremos la doble inclusión:

⇒ Si x ∈ L(M) ⇒ δ* (q0, x) ∈ F⇒ δ* (q0, x) = p ∈ F, entonces p es accesible⇒ δ* (q0, x) ∈ F ∩ Qc⇒ δ* (q0, x) ∈ Fc⇒ x ∈ L(Mc)

⇐ Si x ∈ L(Mc) ⇒ δ* (q0, x) ∈ Fc ⊆ F⇒ δ* (q0, x) ∈ F⇒ x ∈ L(M)

Page 40: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 40

TEMA 4: AUTÓMATAS FINITOSAUTÓMATAS FINITOS DETERMINISTAS (15)

ALGORITMO PARA AFD CONEXO EQUIVALENTEVeremos un algoritmo que, basado en la definición de AFD conexo, busca en “anchura” en el grafo desde q0 hasta completar todos los posibles caminos dirigidos desde este estado inicial.Dado un AFD M = (Q, Σ, δ, q0, F) calcular el AFD conexo Mc = (Qc, Σ, δc, q0, Fc).1. Qc = {q0} e i = 0, número de fila.2. Mientras hay estado qj ∈ Qc y qj no esté en la tabla, hacer:

a) Crear una fila i en la tabla para qjb) Rellenar fila i con los estados Ei = {q | δ(qj , a) = q, a ∈ Σ} c) Etiquetar nuevas filas con los estados Nuevos = Ei - Qcd) Qc = Qc∪ Nuevos e i = i + 1

3. Fc = F ∩ Qc

Page 41: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 41

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

Construir el AFD conexo Mc para el siguiente AFD:

Page 42: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 42

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (16)

MINIMIZACIÓN DE AFDs (1)Dado un AFD M podemos intuir que varios estados se pueden “comportar” de similar manera ante una palabra o subpalabra ω ∈ Σ∗ de entrada.Informalmente, dos estados p y q serán equivalentes si, cuando estamos reconociendo una palabra ω, lo que ocurra tras leer ω desde p es lo mismo que leer ω desde q.

Page 43: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 43

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (17)

MINIMIZACIÓN DE AFDs (2)Formalmente: Hemos de definir la relación E. Dos estados son equivalentes y lo notamos por pEq si:∀x ∈ Σ∗, δ*(p, x) ∈ F ⇔ δ*(q, x) ∈ FDos estados son equivalentes en longitud n y lo notaremos como pEnq si:∀x ∈ Σ∗, |x| ≤ n, δ*(p, x) ∈ F ⇔ δ*(q, x) ∈ FA partir de las definiciones anteriores, se sigue que pEq⇒ pEnq, ∀n, y también que pEnq ⇒ pEkq, ∀k < n.

Page 44: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 44

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO

q0 q1

q2q3

>1

10

0

0

10,1

Page 45: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 45

TEMA 4: AUTÓMATAS FINITOSAUTÓMATAS FINITOS DETERMINISTAS (18)

MINIMIZACIÓN DE AFDs (3)Dado un AFD M. Las relaciones E y Ei son relaciones de equivalencia. Por lo tanto existen los conjuntos cocientes Q´ = Q/E y Qi = Q/Ei .

Q/E0 = Q0 = {Q00, Q01, ...}Q/E1 = Q1 = {Q10, Q11, ...}...Q/Em, = Qm = {Qm0, Qm1, ...}

Se sabe que: Si pEi+1q ⇒ pEiq.Dado Qi = {Qi0, Qi1, ... , Qim} y p, q ∈ Qij , entonces se cumple:pEi+1q ⇔ ∀a ∈ Σ, ∃Qik ∈ Qi | δ(p, a), δ(q, a) ∈ QikEsto significa que podemos obtener Qi+1 a partir de Qi, empezando por Q0.

Page 46: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 46

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (19)

MINIMIZACIÓN DE AFDs (4)ALGORITMO DEL CALCULO DE LOS CONJUNTOS COCIENTES Qi

1. Q0 = { Q-F, F }, i = 02. Mientras haya cambios (Qi ≠ Qi+1)

a) Qi = { Qi0, Qi1, ・・・Qim }b) Para cada Qij ∈ Qi hacer subgrupos S1, S2, ..., Sh

tales que:p, q ∈ Sr ⇔ ∀a ∈ Σ, ∃Qik | δ (p, a) ∧ δ (q, a) ∈ Qik

c) i = i + 1

Page 47: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 47

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (1)Calcular las clases de equivalencia Q/E del AFD:

q0 q1

q2q3

>1

10

0

0

10,1

Paso 1: Q0

Q00 = {q0, q1, q2} (no finales) ; Q01 = {q3} (finales)

Paso 2: Q1

Q10 = Q00 ; Q11 = Q01

Paso 3: Q1 = Q0 ⇒ FIN

Q01Q01q3Q01

Q00Q01q2

Q00Q01q1Q00

Q00Q01q0

10δ

Page 48: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 48

TEMA 4: AUTÓMATAS FINITOS

EJEMPLO (2)Calcular las clases de equivalencia Q/E del AFD:

q0 q1

q3q2

>0

11

1

0

0,10

0

q4

0 1

q5

1

Page 49: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 49

TEMA 4: AUTÓMATAS FINITOS

AUTÓMATAS FINITOS DETERMINISTAS (20)MINIMIZACIÓN DE AFDs (5)

Entrada: AFD M = (Q, Σ, δ, q0, F).Salida: AFD M’ = (Q’, Σ, δ’, q’0, F’) tal que L(M) = L(M’) y |Q’| ≤ |Q|.1. Eliminar de Q todos los estados inaccesibles desde q0. Es

decir, obtener Mc de M.2. Construir Q’ = Q/E de Mc.3. Construir el autómata M’ como sigue:

Q’ = Q/E = {Q’0, Q’1, ..., Q’n}q’0 = Q’i ∈ Q’ con q0 ∈ Q’iF’ = {Q’i ∈ Q’ con Q’i ⊆ F}δ’(Q’i,a) = Q’j ⇔ ∃p ∈ Q’i tal que δ(p,a) ∈ Q’j

Page 50: AFD-AFN

Teoría de Autómatas y Lenguajes Formales 50

TEMA 4: AUTÓMATAS FINITOS

EJEMPLOMinimizar el siguiente AFD:

q0 q1

q3q2

>0

11

1

0

0,10

0

q4

0 1

q5

1