Está en la página 1de 64

3.

Autmatas Finitos
Araceli Sanchis de Miguel Agapito Ledezma Espino Jos A. Iglesias Mar<nez Beatriz Garca Jimnez Juan Manuel Alonso Weber

Grado Ingeniera InformDca Teora de Autmatas y Lenguajes Formales

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Objetivos
Denir el concepto de Autmata Finito Determinista (AFD). Denir el concepto de Autmata Finito No Determinista (AFND). Establecer las equivalencias entre AFD. ConverDr un AFND en un AFD. Minimizar AFD. IdenDcar el Dpo de lenguaje aceptado por un AFND.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos
Los Autmatas Finitos son de dos Dpos: Deterministas: - cada combinacin (estado, smbolo de entrada) produce un solo (estado). No Deterministas: - cada combinacin (estado, smbolo de entrada) produce varios (estado1, estado 2, ..., estado i). - son posibles transiciones con
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos. Representacin


Se pueden representar mediante:
1. Diagramas de transicin o 2. Tablas de transicin
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

1. Diagramas de transicin:
Nodos eDquetados por los estados (qi Conjunto de estados) Arcos entre nodos qi a qj eDquetados con ei (ei es un smbolo de entrada ) si existe la transicin de qi, a qj con a a ei p El estado inicial se seala con q El estado nal se seala con * o doble crculo
b r b
AFD1

a,b

Autmatas Finitos. Representacin


2. Tablas de transicin:
Filas encabezadas por los estados (qi Conjunto de estados) Columnas encabezadas por los smbolos de entrada (ei alfabeto de entrada )
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

e1 q1
Estados

e2 f(q1, e2)

...

en

Smbolos de Entrada

... *qm

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos Deterministas


AF Deterministas, AFDs: se denen mediante una quntupla
(, Q, f, q0, F), donde: : alfabeto de entrada Q: conjunto de estados, es conjunto nito no vaco, realmente un alfabeto para disDnguir a los estados f: Qx Q, funcin de transicin q0Q, estado inicial FQ: conjunto de estados nales o de aceptacin
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos Deterministas


Ejemplo: El AFD1 = ({0,1}, {p,q,r}, f, p, {q}), donde f est denida por:
f(p,0) = q f(q,0) = q f(r,0) = r

f(p,1) = r f(q,1) = r f(r,1) = r

Tiene la tabla de transicin y el diagrama de estados siguientes: 0 0 0 1


p *q r
q q r

r
r r

p 1

q 1

0,1

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

10

Cuando un AF transita desde q0 a un estado nal en varios movimientos, se ha producido el RECONOCIMIENTO o ACEPTACIN de la cadena de entrada Cuando un AF no es capaz de alcanzar un estado nal, se dice que el AF NO RECONOCE la cadena de entrada y que sta NO PERTENECE al lenguaje reconocido por el AF

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

AFD como reconocedores de Lenguajes

11

AFD. Conceptos Bsicos


A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Conguracin: es un par ordenado de la forma (q,w) donde: Universo del q: estado actual del AF Discurso w: cadena que le queda por leer en ese instante, w * Conguracin inicial: (q0, t) q0: estado inicial t: cadena de entrada a reconocer por el AFD, t * Conguracin nal: (qi,) qi: estado nal la cadena de entrada ha sido leda completamente Movimiento: es el trnsito entre dos conguraciones.

(q,aw)

f ( q , a ) = q

(q,w)

a,w *

12

AFD. Conceptos Bsicos


Extensin a palabra de la funcin de transicin f, f: Es la ampliacin de la denicin de f a palabras de *, i.e. w *
f: Q x * Q
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

a parDr de f, que slo considera palabras de longitud 1, hay que aadir: f(q,) = q q Q f(q, ax) = f( f( q ,a ), x ) q Q, a , x *

13

AFD. Conceptos Bsicos


En el AFD1 (de la gura), indicar el resultado de las siguientes expresiones: 0 0
f'(p,) f'(p, 0n) f'(p,11) f'(p,0011010) f (p,100)
1 p q 1
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

0,1

14

AFD. Conceptos Bsicos


Sea un AFD = (, Q, f, q0, F), se dice que una palabra x es aceptada o reconocida por el AFD si f(q0,x) F Se llama lenguaje asociado a un AFD al conjunto de todas las palabras aceptadas por ste: L = { x / x * and f(q0,x) F }
Si F = { } = L= Si F = Q L= *
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Lenguaje asociado a un AFD:

Otra denicin: L = { x / x * and (q0, x) (q,) and q F}


15

AFD. Conceptos Bsicos


En el AFD1 Cul es L(AFD1) = ? Y si se hace F = {r}, cul es L(AFD1) = ? 0 0
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

q
1 0,1

1
AFD1

16

AFD. Conceptos Bsicos


En el AFD1 Cul es L(AFD1) = {0n / n > 0}. 0 0
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

q
1 0,1

1
AFD1

17

AFD. Conceptos Bsicos


En el AFD1 Cul es L(AFD1) = {0n / n > 0}. Comprobacin 0 0
Desde p, con el nmero de 0s que sea, pero siempre al menos uno, se llega al estado nal
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

q
1 0,1

18

AFD. Conceptos Bsicos


En el AFD1 Y si se hace F = {r}, L(AFD1) = {0n1x / n 0, x *}. 0 0
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

p r
0,1

q
1
1
AFD1

19

AFD. Conceptos Bsicos


comprobar que si se hace F = {r}, L(AFD1) = {0n1x / n 0, x *}.

p
1

q r
0,1
1

p
1

q r
0,1
1

Desde p, con un 0 llego al estado q y desde all se pueden aceptar tantos 0s como sean. Luego con un 1 salto al estado nal y all puedo terminar o reconocer cualquier cadena de 0s y 1s.

Expresin regular: LA= 0+1 (0+1)*

Expresin regular: LB= 1(0+1)*

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

En el AFD1,

20

AFD. Conceptos Bsicos


comprobar que si se hace F = {r}, L(AFD1) = {0n1x / n 0, x *}.

p
1 LB= 1(0+1)* 0,1

q r
1

LA= 0+1 (0+1)*

Expresin regular LA U LB = 0*1(0+1)*

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

En el AFD1,

21

AFD. Conceptos Bsicos


Estados accesibles y Autmatas conexos:
Sea un AFD = (, Q, f, q0, F), el estado p Q es ACCESIBLE desde q Q si x * f(q,x) = p. En otro caso se dice que INACCESIBLE. Todo estado es accesible desde s mismo pues f(p,) = p
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Teoremas:
teorema 3.2.2, libro 1 de la bibliograya. Sea un AFD, Q= n, p, q Q p es accesible desde q sii x*, x< n / f(p,x) = q teorema 3.2.3, libro 1 de la bibliograya Sea un AFD, Q= n, entonces LAFD sii el AFD acepta al menos una palabra x*, x< n Nota: sii= si y solo si

22

AFD. Conceptos Bsicos


Estados accesibles y Autmatas conexos: Sea un AFD = (, Q, f, q0, F). Diremos que el autmata es conexo si todos los estados de Q son accesibles desde q0 Dado un autmata no conexo, podemos obtener a parDr de l otro autmata equivalente conexo eliminando los estados inaccesibles desde el estado inicial. Los autmatas reconocen el mismo lenguaje. Eliminacin de estados inaccesibles. Qu algoritmo, para ser implementado en un programa, se podra implementar para marcar los accesibles?
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

23

AFD. Ejercicios
p, f, {q,r,s}), donde f viene dada por la tabla.
Se eliminan todos los estados innacesibles y todos las transiciones (i.e. arcos) que salen desde dichos estados innacesibles.

p *q *r *s

0 r r r s

1 p p p s

Indicar, adems el leguaje reconocido por ambos AFDs (original y conexo).

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Hallar el AFD conexo equivalente al dado: AF= ({0,1}, {p,q,r,s},

24

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

25

AFD. Equivalencia y Minimizacin


Es posible tener varios autmatas que reconozcan el mismo lenguaje. Para todo autmata se puede obtener un autmata equivalente (i.e. reconoce el mismo lenguaje) donde el nmero de estados del autmata sea el mnimo.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Por qu interesa obtener el mnimo? (Apartado 4.4 Libro 2 bibliograca)

26

AFD. Equivalencia y Minimizacin


Por qu interesa obtener el AFD mnimo? (Ap. 4.3 y 4.4 Libro 2 bibliograf)
Se dispone de un descriptor del lenguaje (lenguaje regular): gramDca Dpo 3, AFD, AFND, expresin regular. Se plantean problemas de decisin: El lenguaje descrito es vacio? Existe una determinada cadena w en el lenguaje descrito? Dos descripciones de un lenguaje describen realmente el mismo lenguaje?
Nota: usualmente los lenguajes son innitos, con lo que no es posible plantear la pregunta y recorrer el conjunto INFINITO de cadenas.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Los algoritmos para responder a las dos primeras preguntas son sencillos. Pero y para la lDma pregunta ? Dos descripciones de un lenguaje describen realmente el mismo lenguaje? Consecuencia de esta comprobacin: es necesario obtener el AFD mnimo equivalente

27

AFD. Equivalencia y Minimizacin


Teoremas:
Equivalencia de estados: p E q, donde p,q Q, si x * se verica que f'(p,x) F f'(q,x) F
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Equivalencia de orden (o de longitud) n p En q, donde p,q Q, si x * / x n se verca que f'(p,x) F f'(q,x) F

E y En son relaciones de equivalencia.

28

AFD. Equivalencia y Minimizacin


Equivalencia de estados Casos particulares:
E0 , x palabra |x| 0 => x = se verica que
p E0 q, p,q Q, si x * / x 0 se verca que x es lamba f(p,x) = f(p,) = p (por denicin de f) f(p, ) F f(q, ) F -> p F q F Todos los estados nales de son E0 equivalentes. p,q F se cumple que p E0 q p,q Q - F se cumple que p E0 q f'(p,x) F f'(q,x) F
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

29

AFD. Equivalencia y Minimizacin


Equivalencia de estados Casos particulares:
E1, x palabra |x| 1, (x ) se verica que
p E1 q, p,q Q, si x * / x 1 se verica que f'(p,x) F f'(q,x) F x es lamba o smbolo del alfabeto. f(p,x) = f(p,a) = f(p,a) f(p,x) = f(p,) = p (por denicin de f) f(p,a) F f(q,a) F
ParDendo de p y q con una sola transicin se debe llegar a un estado nal para ambos casos o uno no nal para ambos casos.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

30

AFD. Equivalencia y Minimizacin


Propiedades
Nota: en estas expresiones matemgcas, n no signica | Q|

Lema: p E q p En q, n, p, q Q Lema: p En q p Ek q, n > k Lema: p En+1 q p En q and f(p,a) En f(q,a) a

Teorema: p E q p En-2 q , donde n= Q> 1


(Teorema 5.1 (pag 117 libro 4 bibliograa))

Aqu n S signica |Q|

p E q sii x*, x= m n-2 se verica que f(p,x) F f(q,x) F


m = n-2 es el valor ms pequeo que cumple este teorema
(n-1 s lo cumple, pero n-3 no se garanDza que se cumpla)

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

31

AFD. Equivalencia y Minimizacin


"E" es una relacin de equivalencia. Qu signica Q/E? Q/E es una pargcin de Q, Q/E = {C1,C2,, Cm}, donde Ci Cj =
p E q (p,q Ci), por lo tanto x * se verica que f'(p,x) Ci f'(q,x) Ci
Nota: en libro 1 biblio, p,q Ci se representa por p = q = Ci;
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Para la relacin de orden n


En: Q/En = {C1,C2,, Cm}, Ci interseccin Cj = p En q p,q Ci; por lo tanto x *, x n se verica que f'(p,x) Ci f'(q,x) Ci

32

AFD. Equivalencia y Minimizacin


Propiedades. (Lemas)
Lema: Si Q/En = Q/En+1 Q/En = Q/En+i i = 0, 1, ... Lema: Si Q/En = Q/En+1 Q/En = Q/E conjunto cociente Lema: Si Q/E0 = 1 Q/E0 = Q/E1 Lema: n = Q > 1 Q/En-2 = Q/En-1 p En+1 q ( p En q and f(p,a) En f(q,a) a )
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

33

AFD. Equivalencia y Minimizacin


Interpretacin lemas anteriores:
El objeDvo es obtener la parDcin Q/E, puesto que ser el autmata mnimo, sin estados equivalentes . En cuanto se obDenen dos parDciones consecuDvas Q/Ek = Q/Ek+1, se para. Para obtener Q/E, hay que empezar por Q/E0, Q/E1, etc. Para obtener Q/E, hay que obtener Q/En-2 en el peor caso, ya que si se obDene Q/En-k = Q/En-k+1, con k>=3, se habra obtenido ya Q/E. El lema p En+1 q p En q and f(p,a) En f(q,a) a , permite es extender la equivalencia de orden n desde E0 y E1
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

34

AFD. Equivalencia y Minimizacin


A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

q Teorema: pEq pEn-2 q donde Q= n > 1 (**) Es decir, p E q Sii x*, x n-2 , f(p,x) F f(q,x) F

n-2 es el valor ms pequeo que cumple este teorema

35

AFD. Equivalencia y Minimizacin


Algoritmo formal para obtener Q/E:
1. Q/E0 = { F, no F}

1 divisin en funcin de si son o no estados nales.


2. Q/Ei+1

parDendo de Q/Ei = {C1,C2,...Cn}, se construye Q/Ei+1: p y q estn en la misma clase si: p, q Ck Q/Ei a f(p,a) y f(q,a) Cm Q/Ei
3. Si Q/Ei = Q/Ei+1 entonces Q/Ei = Q/E Si no, repeDr el paso 2 parDendo de Q/Ei+1

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

36

AFD. Equivalencia y Minimizacin


Ejercicio: Hallar el AFD mnimo equivalente

a p b S

b b a t a q

a r

a,b

a b u a b b v

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

37

AFD. Equivalencia
Autmatas Equivalentes:
Estados equivalentes en AFDs disgntos:
Sean 2 AFDs: (,Q,f,q0,F) y (,Q,fq0,F) Los estados p,q / pQ y qQ son equivalentes (pEq) si se verica que f(p,x) F f(q,x) F x *
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Estados equivalentes en AFDs disgntos:


Dos AFDs son equivalentes si reconocen el mismo lenguaje, es decir: Si f(q0,x) F f(q0,x) F x *. Es decir: Dos AFDs son equivalentes si lo son sus estados iniciales: q0 E q0

38

AFD. Equivalencia
Sean 2 AFDs:
Se llama suma directa de A1 y A2 al AF A:
q0 es el estado inicial de uno de los AFs f: f(p,a) = f1 (p,a) si p Q1 f(p,a) = f2 (p,a) si p Q2 39

A1 = (,Q1,f1,q01,F1) A2 = (,Q2,f2, q02,F2)

Donde Q1 Q2 =

A = A1 + A2 = (, Q1Q2, f, q0, F1 F2), donde:

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Qu es la suma directa de 2 AFDs?

AFD. Equivalencia
q Teorema: (el teorema (**) aplicado a la suma directa de dos autmatas):
sean A1, A2 / Q1 Q2 = , Q1= n1, Q2= n2 A1 E A2 si q01 E q02 en A = A1+A2
Es decir, si A1 y A2 aceptan las mismas palabras x / x n1+n2-2 adems, n1+n2-2 es el valor mnimo que cumple el teorema
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

40

AFD. Equivalencia
Autmatas equivalentes, comprobacin:
Algoritmo para comprobar la equivalencia de AFDs 1. Se hace la suma directa de los dos AFDs 2. Se hace Q/E del AFD suma 3. Si los dos estados iniciales estn en la misma clase de equivalencia de Q/E los 2 AFDs son equivalentes
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

41

AFD. Equivalencia
Ejercicio: Comprobar que los autmatas A1 y A2 son equivalentes.
b
p a b q b a a r

u a v w

u a , b A1

A2

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

42

AFD. Equivalencia
Sean dos autmatas: A1 = (,Q1,f1,q01,F1) y A2 = (,Q2,f2, q02,F2), tales que Q1=Q2 Se dice que A1 y A2 son isomorfos, si existe una aplicacin biyecDva i : Q1 Q2 que cumple: 1. 2. 3. i(q01) = q02, es decir, los estados iniciales son correspondientes q F1 i(q) F2 es decir, los estados nales son correspondientes i(f1(q,a)) = f2(i(q),a) a qQ1
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

En deniDva, a cada estado le corresponde otro equivalente que solo se diferencia en el nombre de sus estados. Dos AFDs isomorfos, tambin son equivalentes y reconocen el mismo lenguaje.

43

AFD. Minimizacin
1. 2. 3. ParDr del AFD conexo, i.e. eliminar estados inaccesibles desde el estado inicial Construir Q/E del autmata conexo El AFD mnimo, salvo isomorsmos, es: A = (,Q, f,q0,F) donde: Q = Q/E f se construye: f(Ci,a) = Cj si q Ci , p Cj / f(q,a) = p q0 = C0 si q0 C0, C0 Q/E F = {C / C conDene al menos un estado de F( un q F tal que q C)} COROLARIO: 2 AFDs son equivalentes si sus AF mnimos respecgvos son isomorfos.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Sea el AFD, A = (,Q, f,q0,F):

44

AFD. Ejercicio

b p

a b q

a a b r

a,b

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Hallar el AFD mnimo equivalente al dado:

45

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

46

Autmatas Finitos No Deterministas


DeYiniciones de AFND :
1.AFND = (,Q, f,q0,F), donde
f: Q x ( U } Q es No determinista,
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

es decir, por ejemplo: f(p,a) = {q,r} y f(p,) = {q,r}

2.AFND = (,Q, f,q0,F, T), donde


f : Q x P(Q): conjunto de las partes de Q T : Relacin denida sobre pares de elementos de Q.
pTq = (p,q) T si est denida la transicin f(p, )=q Nota: T es la denicin formal de la transicin

47

Autmatas Finitos No Deterministas


Ejemplo: Sea el AFND siguiente: A = ({a,b}, {p,q,r,s}, f,p, {p,s}, T= {(q,s), (r,r), (r,s), (s,r)}) donde f: f(p,a) = {q} f(p,b) = {} f(q,a) = {p,r,s} f(q,b) = {p,r} f(r,a) = {} f(r,b) = {p,s} f(s,a) = {} f(s,b) = {} La tabla de transiciones es
q r s a *p q p,r s 48 r p,s r,s b
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

AFNDs. Funcin de Transicin extendida a palabras


Se dene a parDr de f, una funcin de transicin f, que acta sobre palabras de *;
f es la funcin de transicin sobre palabras.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Es una aplicacin: f: Q x * P(Q). Donde :


1. f"(q,) = {p / qT*p q Q} (T* se dene ms adelante) donde se cumple que q f(q,) 2. sea x = a1a2a3...an , n>0 f(q,x) = {p / p es accesible desde q por medio de la palabra *a1 *a2 *a3 *... *an * q Q}

es idnDca a x
Lectura recomendada: Apartado 3.3.4 del primer libro de la bibliograca bsica

49

AFNDs. Funcin de Transicin extendida a palabras


Calculo de T*

Sea AFND = (,Q, f, q0, F, T).


Para calcular f es necesario extender las transiciones con una a *, es decir calcular T* del AFND= (,Q, f,q0,F, T ) Para ello existe el mtodo formal de las matrices booleanas, o el mtodo de la matriz de pares (estado, estado).

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

50

AFNDs. Funcin de Transicin extendida a palabras


Calculo de T*. Mtodo de la matriz de pares de estados Se construye una matriz con tantas las como estados.
En la 1 columna se coloca el par correspondiente al estado en cuesDn, es decir, por ej. (p,p) puesto que cada estado es accesible desde si mismo. En las columnas siguientes se aaden las transiciones denidas en el AFND, considerando si el hecho de aadirlas permite extender alguna transicin ms.
Pej. Si existe la transicin (q,r) y se aade la transicin (r,s), habr que aadir asimismo, la transicin (q,s).
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Cuando no sea posible aadir ningn par ms, se habr terminado T*

51

AFNDs. Funcin de Transicin extendida a palabras


Calculo de T*. Ejemplo 1: Sea el AFND: A, denido anteriormente donde T= {(q,s), (r,r),
(r,s), (s,r)}. Se trata de calcular T*
a *p q q r *s p,r s r p,s r,s b
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

( p, p ) (q, q) (q, s ) (q, r ) T *= (r , r ) (r , s) ( s, s ) ( s, r )

Producen (s,s), que ya estaba

52 Producen (q,r)

AFNDs. Funcin de Transicin extendida a palabras


Calculo de T*. Ejemplo 2:
Se exDende la tabla de transicin anterior para contener T*, insertando una nueva columna correspondiente a *
a b * *p q p q p,r,s p,r s q,s,r r p,s r,s r,s *s r r,s
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

53

AFNDs. Funcin de Transicin extendida a palabras


Calculo de T*. Ejemplo 3:
Y ahora se calcula la tabla de transicin correspondiente a f, cambiando las transiciones con a por *a * y las de b por *b *.
*p q r *s *a* q,r,s p,r,s *b* p,r,s p,r,s p,r,s
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

a b * *p q p q p,r,s p,r s q,s,r r p,s r,s r,s *s r r,s

54

AFND. Lenguaje aceptado por un AFND


f (q0,x) y F Denen al menos un elemento comn, es decir, que f(q0,x) conDene al menos un estado nal.
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Una palabra x * es aceptada por un AFND si:

El conjunto de todas las palabras aceptadas por un AFND es el lenguaje aceptado por ese AFND. Formalmente:
LAFND = {x / x * y qo F} = {x / x * y f(qo,x) F }

55

AFND. Lenguaje aceptado por un AFND


Al ser un AFND, desde qo puede haber ms de un camino para la palabra x , y x es aceptada slo con que uno de los caminos lleve a un estado nal. Adems: L AFND si : qo F un estado nal, q F, tal que est en relacin T* con qo (qo T* q)
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

56

Autmatas Finitos Autmatas Finitos Deterministas (AFD) AFD como reconocedores de lenguajes Equivalencia y minimizacin de AFD Autmatas Finitos No Deterministas (AFND) Equivalencia entre AFD y AFND
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

57

AFD equivalente a un AFND


El conjunto de los LAFND = al conjunto de los LAFD. Un AFND no es ms potente que un AFD, sino que un AFD es un caso parDcular de AFND. Paso de AFND a AFD: Sea el AFND A = (, Q,f,q0,F,T). Se dene a parDr de A el AFD B, donde: B = (, Q,f^,qo,F), tal que: Q= P(Q) conjunto de las partes de Q que incluye a Q y a . q0 = f(qo,) (f extensin a palabra de f, i.e. todos los estados que tengan relacin T* con q0). F = {C / C Q y q C / q F} f^(C,a) = {C /C = q , a f ( ) }
qC
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Dado un AFND siempre es posible encontrar un AFD que reconozca el mismo lenguaje:

58

AFD equivalente a un AFND. Ejemplo


*p q r *s a q p,r,s b p,r p,s s r,s r
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

Obtener el AFD correspondiente al siguiente AFND

Pasos:
1. Eliminar transiciones
a) b) Determinar * (el cierre de las transiciones , T*) Obtener la tabla sin transiciones

2. Aplicar algoritmo de creacin de nuevos estados que pertenecen a P(Q), aadiendo su transiciones.

59

AFD equivalente a un AFND. Ejemplo


a) Determinar * (el cierre de las transiciones ) a parDr de la tabla de transiciones.
*p q r *s a q p,r,s b p,r p,s s r,s r
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

1. Eliminar transiciones

*p q r *s

a q p,r,s

b p,r p,s

s r,s r

* p q,s,r r,s s,r

60

AFD equivalente a un AFND. Ejemplo


a) Determinar * (el cierre de las transiciones )
*p q r *s a q p,r,s b p,r p,s s r,s r * p q,r,s r,s r,s
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

1. Eliminar transiciones

b) Obtener la tabla sin transiciones

(transiciones con entrada *a *, para cada elemento, a, del alfabeto )

*p q r *s

*a* q,r,s p,r,s

*b* p,r,s p,r,s p,r,s

61

AFD equivalente a un AFND. Ejemplo


*a* q,r,s p,r,s *b* p,r,s p,r,s p,r,s
a *p {q,r,s} q p,r,s r *s {q,r,s} {p,r,s}U U {p,r,s}U b p,r,s p,r,s p,r,s {p,r,s}U{p,r,s}
A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

2. Aplicar algoritmo de creacin de nuevos estados que pertenecen a P(Q), aadiendo su transiciones.

*p
q r *s

*p q r *s {q,r,s}

*a* {q,r,s} p,r,s {p,r,s}

*b* p,r,s p,r,s p,r,s {p,r,s}

62

AFD equivalente a un AFND. Ejemplo


*p q r *s *a* *b* q,r,s p,r,s p,r,s p,r,s p,r,s

*a* *b* *p {q,r,s} q p,r,s p,r,s r p,r,s *s p,r,s {q,r,s} {p,r,s} {p,r,s}

*p q r *s {q,r,s}

*a* {q,r,s} {p,r,s} {p,r,s}

*b* {p,r,s} {p,r,s} {p,r,s} {p,r,s}

*a* *b* *p {q,r,s} q p,r,s p,r,s r p,r,s *s p,r,s {q,r,s} {p,r,s} {p,r,s} {p,r,s} {q,r,s} U U U {p,r,s} U {p,r,s}

*a* *b* *p {q,r,s} {q,r,s} {p,r,s} {p,r,s} {p,r,s} {q,r,s} {p,r,s}

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso

2. Aplicar algoritmo de creacin de nuevos estados que pertenecen a P(Q), aadiendo su transiciones.

63

3. Autmatas Finitos
Araceli Sanchis de Miguel Agapito Ledezma Espino Jos A. Iglesias Mar<nez Beatriz Garca Jimnez Juan Manuel Alonso Weber

Grado Ingeniera InformDca Teora de Autmatas y Lenguajes Formales

A. Sanchis, A. Ledezma, J.A. Iglesias, B. Garca, J. M.Alonso