Está en la página 1de 33

Clase 09: AFN, AFD y Construccin de Thompson

Solicitado: Ejercicios 07: Construccin de AFNscon Thompson


1
M. en C. Ed!rdo Adri"n Fr!nco M!rt#ne$
http://computacion.cs.cinvestav.mx/~efranco
@efranco_escom
edfrancom@ipn.mx
Contenido
Autmata finito
Clasificacin de los autmatas finitos
Autmata finito no determinista (AFN
Autmata finito determinista (AF!
"eorema so#re la transformacin de AFN en AF!
"ransformacin de una expresin re$ular en un autmata
finito
Construccin de "hompson de un AFN a partir de una
expresin re$ular
Nomenclatura de "hompson
%&emplos
%&ercicios '(: Construccin de AFNs con "hompson
)
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Autmata finito
2n !utm!t! %inito es un mode&o m!tem"tico de
una m/3uina 3ue acepta cadenas de un len$ua&e
definido so#re un alfa#eto.
Consiste en un conjunto finito de estados y un
conjunto de transiciones entre esos estados, 3ue
dependen de los s*m#olos de la cadena de entrada.
%l !utm!t! %inito !cept! una c!den! x si la
secuencia de transiciones correspondientes a los
s*m#olos de x conduce desde e& est!do inici!& ! un
est!do %in!&.
4
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Clasificacin de los autmatas finitos
5a funcin %: E
'
( )*), es en $eneral no determinista. As* en
%uncin de f, se ha#lar/ de autmatas finitos deterministas
AFD y autmatas finitos no deterministas AFN.
+n !utm!t! %inito no determinist! AFN se caracteri1a por la
posi#ilidad de 3ue dada una entrada e en un estado q
i
, se pueda
pasar a un estado q
j
q
!
"""q
n
sin sa#er a ciencia cierta, a cual de esos
estados pasar/. E(istiendo &! mism! pro,!,i&id!d de 3ue pase a
cual3uiera de dichos estados.
+n !utm!t! %inito determinist! AFD es un caso particular de los
autmatas finitos, en el 3ue &! %uncin de tr!nsicin no present!
ninun! !m,i-ed!d en &!s tr!nsiciones de estados para una
entrada dada.
6
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Autmatas finitos no deterministas (AFN
5a definicin de autmata finito no determinista
AFN o AFN coincide con la de autmata finito:
AFN=(E, Q, f, q1, F)
Con la salvedad de 3ue %: E
'
( )*) es no determinista,
i.e. es a3uel 3ue presenta cero, una o m/s transiciones
por el mismo car/cter del alfa#eto.
7
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
AFN %&emplo
$esol%er:
8
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Solucin:
(
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Autmatas finitos deterministas (AF!
2n autmata finito determinista AFD es un caso
particular de los autmatas finitos, en el 3ue &!
%uncin de tr!nsicin no present! ninun!
!m,i-ed!d en las transiciones de estados para una
entrada dada.
2n autmata finito determinista es una 3u*ntupla
AFD=(E, Q, f, q1, F) donde la %uncin %: E
'
( )*) es
determinist!.
+
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
"eorema so#re la transformacin de AFN en AF!
"&ara todo autmata finito no determinista AFN=(E,
Q, f, q1,F) se 'uede construir un autmata finito
determinista AFD=(E, Q, f, q1, F) tal que el
len(uaje reconocido por el autata f!n!to
deter!n!sta AFD coincida con el len"ua#e
re$ono$!do por el autata f!n!to no deter!n!sta
AFN, es de$!r )*AFD+ , )*AFN+".
9
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
"ransformacin de AFN en AF!
-x'resin% a&'a$
(
AFN
a
&
a
)
1
$
*
+
,N,-,.
1'
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
AFD
-x'resin% a&'a$
(
#
a
1
c
4
6
),6
c
,N,-,.
11
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
"ransformacin de una expresin re$ular en un autmata
finito
D!d! un! e(presin reu&!r e(iste un !utm!t!
%inito capa1 de reconocer el len$ua&e 3ue :sta define.
;ec*procamente, d!do un !utm!t! %inito, se puede
expresar mediante una e(presin reu&!r de&
&enu!je .ue reconoce.
1)
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
//!0,1/!/,,!' 0 !!1 0 ,!11/,'1
"ransformacin de una expresin re$ular en un autmata
finito
14
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
16
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
17
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
Construccin de "hompson de un AFN a partir de
una expresin re$ular
2! construccin de Thompson construye un AFN !
p!rtir de cu!&.uier e(presin reu&!r.
5a construccin de "hompson constru-e a partir de
una expresin re$ular r un AFN 3ue reconoce el
len$ua&e definido por r, esto se reali1a con el
o#&etivo de 3ue en un al$oritmo si$uiente se pueda
$enerar un AF! m*nimo e3uivalente.
2tili1a una notacin est/ndar para $enerar el AFN
18
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara la representacin de una cadena vac*a se utili1a
el s*m#olo . o /
Nomenclatura de "hompson
C!den! 3!c#!
1(
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara representar un s*m#olo, se utili1an dos
estados - una transicin para el movimiento con el
s*m#olo.
r
1+
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara la conc!ten!cin de dos s*m#olos <nicamente
se unen
rs
Conc!ten!cin de s#m,o&o
19
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara la eleccin de !&tern!ti4!s, crear transiciones
= para la unin de las transiciones.
r 5 s
E&eccin de !&tern!ti4!s
)'
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara la cerr!dur! positi4!, se a$re$an transiciones =
para retornar al estado previo, permitiendo a$re$ar
1 o mas veces el s*m#olo
r 0
Cerr!dur! positi4!
)1
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
.ara la cerr!dur! de 6&eene, se a$re$an
transiciones = para retornar a estado previo. > otra
transicin = para saltar la transicin con r.
r '
Cerr!dur! de 6&eene
))
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
!ia$rama del AFN 3ue representa la %; !',.
1. .arte de la cerradura de ?leene.
%&emplo '1 0:todo de "hompson
!',
)4
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
). .ara continuar se $eneran la concatenacin del
s*m#olo ,
!',
)6
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
4. .ara finali1ar se numeran los estados - se indica el
estado inicial - final
!',
q0
q1 q2
q3
)7
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
q4
6. Formali1ando
AFN@(%,A,f,3',F
%@Ba,#C
A@B3',31,3),34,36C
F@B36C
f: %Dx AEA
2/!',172/AFN1
)8
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
% ! , 8
3' F F B31, 34C
31 3) F F
3) F F B31, 34C
34 F 36 F
36 F F F
A partir de la %; /,5/,'!1'1!
1. .arte de la cerradura de ?leene 3ue se encuentra
dentro de par:ntesis.
%&emplo ') 0:todo de "hompson
/,5/,'!1'1!
)(
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
A partir de la %; /,5/,'!1'1!
). Completamos dicho par:ntesis concatenando el
s*m#olo a
/,5/,'!1'1!
)+
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
A partir de la %; /,5/,'!1'1!
4. Aplicar la Cerradura de ?leene al par:ntesis
/,5/,'!1'1!
=
=
)9
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
A partir de la %; /,5/,'!1'1!
6. 5a eleccin de alternativas del # - el dia$rama
anterior.
/,5/,'!1'1!
=
=
4'
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
7. Concatenamos el <ltimo s*m#olo, enumerando e
indicando el estado inicial - el final
/,5/,'!1'1!
=
=
41
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
8. Formali1ando
AFN@(%,A,f,3',F
%@Ba,#C
A@B3',31,3),34,36, 37,38,3(,3+,39,31',311C
F@B311C
f: %Dx AEA
2//,5/,'!1'1!172/AFN1
4)
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1
% A , 8
3' F F B31, 3+C
31 F F B3), 3(C
3) F F B34, 37C
34 F 36 F
36 F F 37
37 38 F F
38 F F B3(, 3)C
3( F F 31'
3+ F 39 F
39 F F 31'
31' 311 F F
A11 F F F
%&ercicios '(: Construccin de AFNGs con "hompson
Construir $rafica - formalmente los autmatas para las si$uientes
expresiones re$ulares a trav:s de la nomenclatura de "hompson.
9. /!,c1'
:. /,5,c1
H
;. &etr!</&etr!<5diito1'
=. /!5,1'!,,
>. ?/,5,'!1'@!
A. /!'5,
H
1
H
(/e entre"ar0n antes del d1a )unes 00 de Se'tiem#re de 1020
()*%23%23 4ora l!!te).
(/u"eren$!a ut!l!5ar 6flap para el d!&u#o y s!ula$!n de los
autatas
(,n$lu!r la reda$$!n de $ada e#er$!$!o
(7ortada y en$a&e5ados de pa"!na
44
"
e
o
r
*
a

c
o
m
p
u
t
a
c
i
o
n
a
l
C
l
a
s
e

'
+
:

A
F
N
,

A
F
!

-

C
o
n
s
t
r
u
c
c
i

n

d
e

"
h
o
m
p
s
o
n
.
r
o
f
.

%
d
$
a
r
d
o

A
d
r
i
/
n

F
r
a
n
c
o

0
a
r
t
*
n
e
1

También podría gustarte