Вы находитесь на странице: 1из 16

Autmatas Finitos

Autmatas Finitos Deterministas


Se llama Autmata Finito Determinista (AFD) a la quntupla:
(, Q, f, q
0
, F)
es un alfabeto, llamado alfabeto de entrada
Q es un !on"unto finito, no #a!o llamado !on"unto de estados
f es una fun!in f: Q$ Q que se llama fun!in de transi!in
q
0
Q es el estado ini!ial
FQ es el !on"unto de estados finales, o estados de a!epta!in,
no #a!o
%n AFD puede !onsiderarse !omo una m&quina se!uen!ial de 'oore,
!u(o alfabeto de entrada sea , su alfabeto de salida
S
){0,*}, ( donde F
ser& el !on"unto de los estados tales que +(q))*
Tabla de Transicin
Ser& una tabla !u(as filas est&n
en!abe,adas por los estados (elemen-tos de Q)
.os en!abe,amientos de las !olumnas son los
smbolos del alfabeto de entrada (los elementos
de ) /umpli0ndose que el elemento i, " de la
tabla de transi!in !orresponde al #alor de f(q
i
,
e
"
), donde q
i
es el elemento i-0simo de Q, ( e
"
es
el elemento "-0simo de 1anto el estado ini!ial
!omo el final estar&n mar!ados por ( por 2
respe!ti#amente Nota: el estado final puede ser
indi!ado tambi0n rodeando el estado por un
!r!ulo
():
a
1
...a
n
q
0
.....
q
i
......
*q
f
Ejemplo:
AF)({0,*},{q
0
,q
*
,q
3
},
f, q
0
, {q
*
} )
f 0 1
q
0
q
*
q
0
*q
1
q
0
q
3
q
2
q
*
-
Diagrama de Transicin
4s un +rafo diri+ido que se forma de la si+uiente manera:
* 4l +rafo tendr& tantos nodos !omo |Q|, !ada nodo estar& etiquetado por
un elemento de Q
3 Si f(q
i
, e
"
) ) q
5
, dibu"aremos una rama diri+ida desde el nodo de etiqueta
q
i
6asta el nodo de etiqueta q
5
.a etqueta de la rma ser& e
"

7 4l estado ini!ial estar& se8alado mediante el smbolo


9 .os estados finales estar&n se8alados mediante el simbolo 2, o doble
!r!ulo alrededor de la etiqueta del estado final
*
:epresentamos los estados !omo:
Ejemplo: (partiendo del autmata anterior)
Lenguaje asociado a un autmata finito determinista L(AFD)
Sea un AFD (, Q, f, q
0
, F) De!imos qie una palabra $ 2 es
a!eptada o re!ono!ida por el autmata si f(q
0
,$) F Se llama len+ua"e
aso!iado al autmata finito, o !ondu!ta del autmata finito al !on"unto de
todas las palabras a!eptadas por 0ste 4s de!ir: . ) { $ | $2 ; f(q
0
,$)F}
Ejemplo:
0 .(AF), (a que f(q
0
, 0) ) q
*
F
*0 .(AF)
*20 .(AF)
*20*0 .(AF)
.ue+o .(AF) ) *20(*0)2
Ejemplo 2 :
/al!ulo posibles !aminos desde q
0
a q
0
(por ser el estado ini!ial):
(*2<(*0)20)2
/aminos desde el estado ini!ial 6asta el estado final (el mas !orto): 0
/aminos desde el estado final al estado final sin pasar por el ini!ial: (*0)2
.ue+o .(AF)) (*2<(*0)20)2 0 (*0)2
3
Estado Accesible
%n estado de un AF es a!!esible si e$iste una palabra $ que permite
que el autmata se pare en ese estado partiendo del estado ini!ial 4s de!ir,
un estado q es a!!esible desde otro estado p del autmata si e$iste una
!adena $ que permite que el autmata transitando desde p !on $ se pare en
el estado q:
qQ es a!!esible si $ = $ 2 = q ) f(q
0
, $)
>or defini!in de fun!in de transi!in, todo estado es a!!esible desde
s mismo, ( es a!!esible mediante la palabra #a!a
LEMA del estado accesible
Dado un AF que tiene n estados, =Q=) n, un estado qQ es a!!esible
desde otro estado p si ( slo si $2 = =$=?n (siendo n el n@ de estados
de autmata) = f(p,$))q
Supon+amos =$=A)n = f(p,$)q siempre es posible es!ontrar otra
!adena $B2 = =$=?n = f(p,$B))q
4s de!ir, que si (o ten+o un autmata !on n estados, si transito por
todos los estados, pasando una #e, por !ada estado, 6abr0 reali,ado n-*
transi!iones, que es menos que n estados
Si =$=A)n para la transi!in se repetir& al menos un estado
Ejemplo :
q
3
es a!!esible desde q
0
, por
e"emplo !on la palabra:
$)**000*, =$=)C, !omo =Q=)7,
de!imos que siempre podremos
en!ontrar una palabra $B tal que =
$B=?=$= (puesto que =$=A=Q=)
( adem& !umple que =$B=?=Q=
4sta $B sera: $B)0*
Autmatas conexos
Sea (, Q, f, q
o
, F) un autmata finito determinista Diremos que el
autmata es D!one$oD si todos los estados de Q son a!!esibles desde el
estado ini!ial q
o

Dado un autmata no !one$o, podemos obtener a partir de 0l otro


autmata que sea !one$o eliminando todos los estados que no sean
a!!esibles desde qo 4s e#idente que los dos autmatas a!eptar&n el
mismo len+ua"e
4"emplo:sea el autmata definido por el dia+rama de transi!in
si+uiente:
7
4s e#idente que los estados q y s son ina!!esibles desde el estado ini!ial p
>or lo tanto, el autmata si+uiente a!eptar& el mismo len+ua"e:
Minimizacin de AF
Equialencia de estados en AF
Sea el autmata finito determinista (, Q, f, q
0
, F) De!imos que dos
estados p,qQ son equi#alentes (se representa por p4q) si para toda
palabra $2, se #erifi!a que f(p,$)Ff(q,$)F
Nota: Si p4q enton!es p4
n
q, para todo n
Propiedades de la equivalencia de estados
Dado AF)(, Q, f, q
0
, F), !on p,qQ
* , p4q si $2 f(p,$)F f(q,$)F
3 p4
5
q (p ( q son 5-equi#alentes) si: $2 = =$=?)5 f(p,$)F
f(q,$)F
7 Ambas rela!iones de equi#alen!ia 4 ( 4
5
indu!en una parti!in de
equi#alen!ia sobre el autmata finito 4s de!ir: 4 indu!e >
4
, ( 4
5
indu!e >
5

9 .a primera parti!in que se estable!e es >


0
, se 6a!e !on: p 4
0
q
( pF qF) Eota: 4nton!es >
0
){(Q-F),F}
F 4
5
,si p4
5
q p4
#
q #?5G si p4q 5 p4
5
q
LEM1(propiedad de estados)
Si p4
5<*
q p4
5
q ( f(p,a)4
5
f(q,a) a
LEM2
>
5
)>
5<*
>
5
) >
4
LEM! (Se #a a estable!er !uando se estabili,a el #alor de la parti!in)
Si =Q= ) n A* p4
n
q p4
n-3
q
4s de!ir, n-3 es el +rado de equi#alen!ia menor al que 6abra que lle+ar
para !onse+uir !onfirmar la equi#alen!ia de dos estados en un autmata
!on n estados
"E#$EM
9
Si =Q=)nA* "?)n-3 = >
"
) >
"<*
l%orit&o para construir P
E
* >
0
){{q
i
F},{ q
i
F}}
3 >
n<*
){ p4
n<*
q p4
n
q ( f(p,a)4
n
f(q,a) a}
7 >
n
)>
n<*
)>
4
F
Ejemplo :
>ara 6allar las partes de
equi#alen!ia del autmata
primero debemos partir de
un autmata finito !one$o
>ara ello #amos a eliminar
q
9
, (a que no es posible
a!!eder a 0l desde el estado
ini!ial (q
*
) A6ora #amos a
estable!er las partes de
equi#alen!ia:
>
0
){Q-F, F}){{q
*
}, {q
3
,
q
7
}}
A6ora 6a!emos >
*
, para ello sabemos que {q
*
} #a a se+uir i+ual, es
de!ir, #a a ser equi#alente !on si+o mismo, puesto que a!!ede a los
mismo estados(finales o no finales)
'iramos {q
3
, q
7
} ( !omprobamos si a!!eden al mismo tipo de estado
para las mismas entradas, es de!ir, sabiendo que q
3
4
0
q
7
#amos a #er
si q
3
4
*
q
7
:
f(q
3
,a))q
7
F f(q
3
,b))q
*
F
f(q
7
,a))q
3
F f(q
7
,b))q
*
F
lue+o q
3
4
*
q
7
>
*
){{q
*
}, {q
3
, q
7
}}) >
0
) >
4
l%orit&o para 'allar el aut(&ata &)ni&o de uno dado
* /al!ular el autmata !one$o
3 /onstruir QH4 del autmata !one$o obtenido en el punto anterior
7 /al!ular AB)(,QH4,fB,/
0
,FB), donde:
a. C
0
es la !lase donde se en!uentra q
0
G
b F){! = ! !ontiene al menos un estado de F(es de!ir, e$iste
un qF, tal que q!)}G
! f: QH4 $ QH4, donde
fB(!
i
, a)) !
"
q
i
!
i
( q
"
!
"
= f(q
i
,a))q
"
Ejemplo:
4s un autmata !one$o, pues todos sus estados son a!!esibles,
#amos a 6allar las partes de equi#alen!ia:
>
0
){{s,t,u,#},{p,q,r}} (){Q-F,F})
miramos la equi#alen!ia de las !lases de equi#alen!ia
estable!idas en >
0

f(p,a) ) pFG f(p,b)) qFG


C
f(q,a)) rFG f(q,b))pFG
f(r,a)) rFG f(r,b))rFG
aqui #emos que {p,q,r} se !onser#a pues tienen i+uales
transi!iones a estados finales a partir de las entradas
f(s,a))tFG f(s,b))pF
f(t,a))tFG f(t,b))uF
f(u,a))tFG f(u,b))#F
f(#,a))#FG f(#,b))uF
a6ora #emos que mientras t,u,# tienen i+uales transi!iones a
estados no finales para las mismas entradas, si+uen siendo
equi#alentes, mientras que s para b transita a un estado final,
(a ser& equi#alente a los tres estados anteriores:
>
*
){{p,q,r},{s},{t,u,#}}
A6ora 6allamos >
3
:
f(p,a) ) pFG f(p,b)) qFG
f(q,a)) rFG f(q,b))pFG
f(r,a)) rFG f(r,b))rFG
f(t,a))tFG f(t,b))uF
f(u,a))tFG f(u,b))#F
f(#,a))#FG f(#,b))uF
>
3
) {{p,q,r},{s},{t,u,#}} )
>
*

lue+o >
4
) {{p,q,r},{s},
{t,u,#}}
4l autmata mnimo nos #a
a quedar:
Si nos pidieran el len+ua"e del autmata: .(A)).(AB)){b(a<b)2}, (donde A
es el autmata ini!ial, ( AB es el autmata mnimo)
Autmatas Equialentes
*u&a directa de aut(&atas finitos deter&inistas
Sean los AFD A
*
)(, Q
*
, f
*
, q
0*
, F
*
) ( A
3
)(, Q
3
, f
3
, q
03
, F
3
), tales que
Q
*
( Q
3
no tienen elementos !omunes .lamamos suma dire!ta de A
*
( A
3
al
autmata A)A
*
<A
3
)(, Q
*
%Q
3
, f, q
0
, F
*
% F
3
), dinde q
0
es uno !ualquiera de
los dos estados q
0*
o q
03
, ( f se define as:
f(q,a))f
*
(q,a) si qQ
*
f(q,a))f
3
(q,a) si qQ
3
Equivalencia de aut(&atas
Sean los AFD A
*
)(, Q
*
, f
*
, q
0*
, F
*
) ( A
3
)(, Q
3
, f
3
, q
03
, F
3
) De!imos
que dos estados pQ
*
( qQ
3
son equi#alentes si f(p,$)F
*
f(q,$)F
3
,
para todo $2
De!imos que los dos autmatas son equi#alentes si re!ono!en el
mismo len+ua"e 4s de!ir: si f(q
0*
,$) F
*
f(q
03
,$)F
3
, para todo $2 Di!6o
I
de otro modo, de!imos que dos autmatas son equi#alentes si sus estados
ini!iales los son: q
0*
4q
03

"eore&a.+ Sean dos autmatas finitos deterministas A


*
)(, Q
*
, f
*
,
q
0*
, F
*
) ( A
3
)(, Q
3
, f
3
, q
03
, F
3
), tales que Q
*
( Q
3
no tienen estados
!omunes ( =Q
*
=)n
*
( =Q
3
=)n
3
4nton!es, A
*
( A
3
son equi#alentes si q
0*
(q
03
son equi#alentes en el autmata A)A
*
<A
3
, es de!ir, si ambos autmatas
a!eptan las mismas palabras de lon+itud menor que n
*
<n
3
-* Adem&s, en
+eneral, n
*
<n
2
-3 es el #alor m&s peque8o que !umple siempre este
teorema
J
L,#$-"M# P$ .E$ *- /#* 0"1M"* *#N E20-.LEN"E*
* /al!ular la suma dire!ta de autmatas
3 /onstruir >
4
del autmata suma obtenido
7 /omprobar que los estados ini!iales son equi#alentes, es de!ir,
est&n en la misma !lase de equi#alen!ia /uando se da la
!ondi!in: p
0*
, p
03
/
0
A
*
( A
3
son equi#alentes
Ejemplo:
4l autmata suma me dar&:
f

a 3
q
1
q
3
q
*
*q
2
q
7
q
*
*q
!
q
3
q
*
q
4
q
*
q
*
p
1
p
3
p
*
*p
2
p
3
p
*
p
!
p
3
p
*
>
0
){{q
*
, q
9
, p
*
, p
7
}, {q
3
, q
7
, p
3
}}
>
*
){{ q
*
, p
*
, p
7
}, { q
9
},{q
3
, q
7
, p
3
}}
>
3
){{ q
*
, p
*
, p
7
}, { q
9
},{q
3
, q
7
, p
3
}}
lue+o >
*
) >
3
)>
4
K
!somorfismo entre Autmatas
Se di!e que A
*
es isomorfo a A
3
, es de!ir, A
*
A
3
si i :Q
*
Q
3
, (i :
ima+en) >or lo tanto :
* i(p
0*
) ) p
03
(la ima+en del estado ini!ial de A
*
es el estado ini!ial de
A
3

3 Dados pF
*
, qF
3
: i(p)F
3
, ( i(q)F
*
(es de!ir, la ima+en de los
estados finales de uno de los autmatas, es un estado final del
otro autmata)
7 i(f
*
(p
*
,e)) ) f
3
(i(p
*
),e) ) f
3
(i(p
3
),e).a ima+en de la transi!in es la
transi!in de la ima+en
>or lo tanto A
*
( A
3
son i+uales renombrando estados
4nton!es si dos autmatas son isomorfos #an a ser equi#alentes, es
de!ir, los len+ua"es que #an a +enerar ambos autmatas #an a ser el
mismo : .(A
*
) ) .(A
3
) /on esto !omprobamos que la isomorfa impli!a la
equi#alen!ia
"eore&a : Si dos autmatas son equi#alentes, enton!es sus
autmatas mnimos son isomorfos, es de!ir : A
*
4A
3
L
*
L
3
(siendo L
i

autmata mnimo de A
i
)
*0
Autmatas Finitos No Deterministas
.lamaremos autmata finito no determinista (AFED) a la s0$tupla:
A ) ( , Q, f, q
0
, F, 1 ), donde:
, Q,q
0
, F si+nifi!an lo mismo que en un autmata finito
determinista
f es una apli!a!in de Q $ en el !on"unto de las partes de Q
1 es una rela!in definida sobre pares de elementos de Q, donde p,
q Q est&n en rela!in 1( se representar& por p1q, o (p,q)1) si
e$iste una transi!in del estado p al estado q por medio de la
palabra #a!a (-transi!in)
Ejemplo: Sea el autmata finito no determinista:
({a, b}, {p, q, r, s}, f, p, {p, s}, {(q,s), (r,r), (r,s), (s,r)}), donde f se define
asi:
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))
"e#resentacin
4n Dia+rama: /on tantos nodos
!omo estados
>ueden sobrar o faltar ar!os
de un estado a otro
Si f(p,a))Q
*
, tra,aremos
una rama diri+ida desde p
6asta !ada uno de los
estados del !on"unto de
estados Q
*
, !on la etiqueta
a
>ueden e$istir ar!os de un
estado a otro por medio de
, en el !aso de p1q, que
tra,aremos una rama desde
p 6asta q !on la etiqueta
Ejemplo (!ontinua!in):
1abla: 1endr& tantas filas !omo estados, ( tantas !olumnas !omo elementos
de ,
m&s una !olumna adi!ional en!abe,ada por la palabra #a!a , esta
ser& la !lumna reser#ada a las -transi!iones
Ejemplo (!ontinua!in) :
a b
**
p {q}
q {p,r,s} {p,r} {s}
r {p,s} {r,s}
2s {r}
"elacin T
Sabemos que: (p,q) 12, donde 12 ) 1
0
1
*
1
3

%tili,aremos las matrices booleanas de representacin T, para
representar si un estado q es a!!esible desde un estado p mediante una -
transi!in
>rimero se representar& la
matri, booleana de representa!in
de 1, o, lo que es lo mismo, la
matri, booleana que representa la
posibilidad de transitar a otro
estado a partir de una -
transi!in:
1 p q r s
p 0 0 0 0
q 0 0 0 *
r 0 0 * *
s 0 0 * 0
12 p q r s
p 0 0 0 0
q 0 0 * *
r 0 0 * *
s 0 0 * *
A6ora se 6a!e la !lausura
transiti#a de la rela!in 1, es de!ir,
la rela!in 12, que no es m&s que
!al!ular la a!!esibilidad de unos
estados a otros mediante un
nMmero de -transi!iones ma(or
.o que se 6a 6e!6o en esta !lausura no es m&s que !al!ular aquellos
estados q, que a partir de un estado p, es posible a!!eder mediante -
transi!iones 4sto se puede #er tanto en el dia+rama de estados, !omo en la
matri, booleana de la rela!in 1 Se puede obser#ar que el estado r no
a!!esible desde q mediante una -transi!in, sin embar+o si ser& a!!esible
mediante dos -transi!iones 4ste tambi0n ser& el !aso del estado s ( su
a!!eso a s mismo mediante -transi!iones
Extensin de f a #alabras
A6ora #amos a definir fB !omo una nue#a fun!in de transi!in que,
en lu+ar de a!tuar sobre letras del alfabeto de entrada, a!tMe sobre
palabras (que in!lu(an la palabra #a!a ) 4s de!ir: fB: Q $ 2 >(Q)
(>(Q), partes de Q)
a) fB(q,) ) {p | q 12 p}, para todo qQ
b) Sea $ ) a
*
a
3
a
n
, n A 0 4nton!es, fB(q,$) ) {p | p es a!!esible
desde q mediante la !adena de entrada
i0
a
*

i*
a
3
a
n

in
} para todo
qQ (la su!esin anterior es id0nti!a a $)
Ejemplo (en el autmata anterior):
fB(p,) ) {p} fB(q,) ) {q,r,s}
fB(r,) ) {r,s} fB(s,) ) {r,s}
*3
fB(p,a) ) {q,r,s} fB(p,b) )
fB(q,a) ) {p,r,s} fB(q,b) ) {p,r,s}
fB(r,a) ) fB(r,b)){p,r,s}
fB(s,a) ) fB(s,b) ) {p,r,s}
fB(p,aa) ) {p,r,s} fB(p,ab) ) {p,r,s}
fB(q,aa) ) {q,r,s} fB(r,ba) ) {q,r,s}
Lenguaje ace#tado #or un AF$D
4l .(AFED) estar& formado por el !on"unto de !adenas que a!!eden a
un estado final: .(AFED) ) { $ | $ 2 | f (q
0
, $) ) /
i
| q
f
/
i
| q
f
F }
.a !adena #a!a , es a!eptada por el AFED , !uando el estado final
es un estado final: .(AFED) si q
0
F q
0
12 q
f
| q
f
F (esto quiere
de!ir que si pertene!e al len+ua"e aso!iado al AFED enton!es: N el estado
ini!ial es tambi0n un estado final, o que el estado final es a!!esible
mediante -transi!iones desde el estado ini!ial)
Autmata finito determinista equialente a uno no determinista
Dado un autmata finito no determinista, siempre es posible !onstruir
otro finito determinista que a!epta el mismo len+ua"e que el primero
>uesto que el !on"unto de len+ua"es a!eptados por los autmatas finitos no
deterministas es id0nti!o al !on"unto de los len+ua"es finitos deterministas:
.(AFD) ) . (AFED)
Sea el autmata finito no determinista A ) ( , Q, f, q
0
, F, 1)
Definiremos a partir de 0l el si+uiente autmata finito determinista: O ) (
, QB, fB, qB
0
, FB) donde:
QB ) >(Q), el !on"unto de las partes de Q, que in!lu(e a Q ( al
!on"unto #a!o,
qB
0
) fB(q
0
, ) (4stados a los que podemos ir desde q
0
mediante -
transi!iones )
FB ) {! | ! QB ( e$iste un q ! tal que q F}
fB(!,a) ) { !B | !B ) %
q!
fB(!,a) } 4s de!ir, !omo ! es un
sub!on"unto de Q, fB(!,a) es el sub!on"unto de Q formado por
todos los estados a los que puede ir el autmata A, partiendo de
un estado !, mediante la entrada a
Ejemplo :
Sea el autmata finito no determinista definido por la tabla
si+uiente :
f a 3
p p
q q, r
*r r
tendr& el dia+rama si+uiente :
*7
4l autmata finito determinista equi#alente ser& (por pasos) :
*@) p ser& el estado ini!ial
3@) (6allamos las partes de Q)
>(Q) ) { , {p}, {q}, {r}, {p, q}, {q, r}, {r, p}, {p, q, r} }
*9
7@) Pa+o una tabla de
transi!iones, ( pon+o en la
!olumna de estados
aquellos que sean a!!esibles
desde el estado ini!ial, no se
ponen todas las partes de Q
(>(Q)) >odra 6a!erse
primero de esa forma,
poniendo en los estados
>(Q), pero despu0s
tendramos que 6allar el
autmata !one$o aso!iado
a 3
{p} {p}
{q} {q, r}
*{r} {r}
*{q5r} {q,r} {r}
Q este es el autmata finito determinista equi#alente al no determinista
Si nos pidieran minimi,ar el AFD obtenido:
:enombramos:
Pallamos el autmata equi#alente 6allando la parti!in de
equi#alen!ia !orrespondiente:
>
0
){{A,O,4}, {/,D}}
>
*
){{A,4}, {O}, {/}, {D}}
>
3
){{A}, {O}, {/}, {D}, {4}}) >
4
lue+o el autmata (a es mnimo
Autmata finito no determinista equialente a uno determinista
%n AFD es i+ual a un AFED sin -transi!iones
Autmata Finito asociado a una %ram&tica "egular(%ram&tica ti#o ')
*F
$otas
4l alfabeto no terminal de la Rram&ti!a ( el !on"unto de estados
del AF #an a memori,ar el pro!eso
4l !on"unto de produ!!iones de > mar!6ar& en paralelo !on la
fun!in de transi!in f
4n las +ram&ti!as 6emos 6ablado de depura!in, lo !ual podra
!onsiderarse !omo un smil a la minimi,a!in en un AF:
Rram&ti!as Autmatas
Quitamos #ariables
ina!!esibles
/reamos autmata finito !one$o
Sariables no +enerati#as 4stados trampa
>rodu!!iones redu!toras
(A)
-transi!in a estado final (A

q
f
)
>rodu!!in AO -transi!in(A

O)
>rodu!!in aA -transi!in(A

A)
/uando tenemos un AFD #amos a tener una +ram&ti!a depurada
(e$!ep!in de R:.T)
De un AFED +ram&ti!a ambi+ua
De un AFED AFD +ram&ti!a no ambi+ua
Dada una +ram&ti!a ambi+ua, a partie de ella podemos obtener un AFED de
donde puedo obtener el AFD ( a partir de aqu una +ram&ti!a no ambi+ua
*C

Вам также может понравиться