You are on page 1of 10

REPASITO

Examen Final

Matemtica
Computacional
MA475

AFD Algoritmo de Thompson

Ejemplo:
Construya el AFD que reconozca la expresin regular: r = (a|b)*a.b.b

Tener en cuenta
a.b se representa por:

Tener en cuenta
a|b se representa por:
a

Tener en cuenta
a* se representa como:

Ejemplo: r = (a|b)*a.b.b
AFND GENERADO:

2
0

3
6

1
4

1
0

Ejemplo: r = (a|b)*a.b.b

S0 se forma por todos los


elementos que se puede dirigir
sin una variable, desde el inicio
del AFND.

CALCULAMOS LOS ESTADOS:

2 a

S0 = {0,1,2,4,7}
Cl(F(S0,a)) = Cl(F({0,1,2,4,7},a) = Cl({3,8}) = {1,2,3,4,6,7,8} = S1
Cl(F(S0,b)) = Cl(F({0,1,2,4,7},b) = Cl({5}) = {1,2,4,5,6,7} = S2
Cl(F(S1,a)) = Cl(F({1,2,3,4,6,7,8},a) = Cl({3,8}) = {1,2,3,4,6,7,8} = S1
Cl(F(S1,b)) = Cl(F({1,2,3,4,6,7,8},b) = Cl({5,9}) = {1,2,4,5,6,7,9} = S3
Cl(F(S2,a)) = Cl(F({1,2,4,5,6,7},a) = Cl({3,8}) = {1,2,3,4,6,7,8} = S1
Cl(F(S2,b)) = Cl(F({1,2,4,5,6,7},b) = Cl({5}) = {1,2,4,5,6,7} = S2
Cl(F(S3,a)) = Cl(F({1,2,4,5,6,7,9},a) = Cl({3,8}) = {1,2,3,4,6,7,8} = S1
Cl(F(S3,b)) = Cl(F({1,2,4,5,6,7,9},b) = Cl({5,10}) = {1,2,4,5,6,7,10} = S4
Cl(F(S4,a)) = Cl(F({1,2,4,5,6,7,10},a) = Cl({3,8}) = {1,2,3,4,6,7,8} = S1
Cl(F(S4,b)) = Cl(F({1,2,4,5,6,7,10},b) = Cl({5}) = {1,2,4,5,6,7} = S2

1
4

3
6
5

7 a

8 b

9 b

1
0

Ejemplo: r = (a|b)*a.b.b
GRAFICAMOS EL AFD:
0

3
b

a
b

1
a

a
a

4
b

2
b

Problemas propuestos:
CALCULE EL AFD GENERADO POR
LAS EXPRESIONES:

r=a.b|c*
r=(a|b)*c.a*
r=(b|c).(a.c)*

You might also like