Академический Документы
Профессиональный Документы
Культура Документы
8
$
F"F
5
F
8
y -"-
5
-
8
2,3$ donde , es el nuevo estado inicial y se define de
forma que se incluyan todas las transiciones de
5
$
8
y las dos nuevas 6
transiciones de s a s
5
y
s
8.
0onviene considerar las relaciones de transicin
5
y
8
como colecciones de ternas ordenadas de -
5
xx-
5
y -
8
xx-
8
$ donde (q$$p)
si%nifica que existe una transicin de q a p mediante el car(cter @es decir$ p
i
(q$)). Asando esta notacin se puede definir7
"
5
8
2(s$$s
5
)$(s$$s
8)3
4eorema.6 El con&unto de len%ua&es aceptados por un autmata finito so)re el
alfa)eto contiene y los len%ua&es unitarios 2a3 para todo a. Este con&unto es
cerrado con respecto a la unin$ concatenacin y la cerradura de estrella.
Dada una expresin re%ular r para construir un AFND (con 6transiciones en
todos los lados excepto para expresiones re%ulares triviales)$ podemos aplicar las
t*cnicas precedentes a los t*rminos de las expresiones re%ulares. 'or tanto$ todo
len%ua&e re%ular es aceptado por un autmata finito. !o reciproco tam)i*n es
cierto$ como veremos en el Lema de Arden. Es decir$ todo len%ua&e aceptado por
un autmata finito es tam)i*n un len%ua&e re%ular. 'or lo tanto$ el con&unto de los
len%ua&es re%ulares es el mismo que el con&unto de len%ua&es aceptados por un
autmata finito.
0onsideremos el autmata finito M"(-$$,$) y supon%amos que s"q
=
es el
estado inicial. 'ara todo estado q
i
sea7
A
i
"2<B C (q
5
$<)F3
Es decir$ Ai es el con&unto de las cadenas so)re que/acer que M pase
desde q
i
/asta un estado de aceptacin. ,e dice que A
i
" . ,i q
i
F$ entonces se
tiene que A
i
.
Lema de Arden7 Ana ecuacin de la forma D"ADE$ donde A$ tiene una
solucion +nica D"ABE.
Demostracin: ;)s*rvese que ABE"(A
>
) E"A
>
EE"A(ABE)E. por tanto$
ABE esta contenida en toda solucin. ,upon%amos que D"ABE0 es una solucin$
donde 0ABE". ,i resustituye la expresin anterior en la ecuacin D"ADE$ se
o)tiene
ABE0" A(ABE0)E
" A
>
EA0E
" A
>
EEA0
" (A
>
)EA0
" ABEA0
Teorema de Kleene7 An len%ua&e es re%ular si y solo si es aceptado por un
autmata finito.
Autmatas finitos y expresiones regulares.
Una expresin regular para un alfabeto se define como:
es una expresin re%ular
0ada miem)ro de es una expresin re%ular
,i p y q son expresiones re%ulares$ entonces tam)i*n lo es (p q)
,i p y q son expresiones re%ulares$ entonces tam)i*n lo es (p q)
,i p es re%ular$ entonces tam)i*n lo es p
B
Para cada expresin regular r de un alfabeto representa un lenguaje L(r). Adems, si p
! son expresiones regulares, L(p !) " L(p) L(!), L(p !) " L(p) L(!) L(p
#
) " L (p)
#
.
Las expresiones regulares tambi$n especifican lenguajes (al igual !ue diagramas tablas,
autmatas gramticas) . %on una manera concisa de expresar lenguajes regulares (en una
sola l&nea se puede describir un autmata finito completo).
Teorema.' (ado un alfabeto (tiene !ue ser el mismo), los lenguajes regulares de son
exactamente los lenguajes representados por las expresiones regulares de .
Demostracin.' Lo primero !ue )a !ue tener en cuenta es !ue un lenguaje representado
por una expresin regular es regular (demostrado en los subapartados anteriores). Lo
siguiente !ue )aremos ser representar con una expresin regular cual!uier lenguaje
aceptado por un autmata finito. Adems, *amos a considerar *lidos unos diagramas, !ue
llamaremos generali+ados, en los !ue los arcos *an a estar eti!uetados con expresiones
regulares, en lugar de slo s&mbolos. Para ello, *amos a ir reduciendo el diagrama )asta
tener solo uno o dos estados:
a. !lamemos 4 al dia%rama de transiciones ori%inal. ,e /acen tantas copias de
4 como estados de aceptacin /aya. 0ada 4
i
tendr( slo un estado de
aceptacin distinto. !a expresin re%ular resultante ser( la unin de cada
una de las expresiones resultantes de cada 4
i
(4 " 4
5
4
8
.... 4
n
)
b. 0onsiderando por separado cada 4
i
$ y para ir reduciendo el dia%rama
estado por estado$ se usan las operaciones que se definieron
anteriormente7
c. Anin.6 ,i /ay varios arcos que conectan en la misma direccin dos
estados$ estos se puede sustituir por uno etiquetado con la unin de las
expresiones de esos arcos
d. Estrella de Fleene.6 !a expresin re%ular ser( la unin de las etiquetas de
los arcos que salen e inciden en un mismo estado
e. 0oncatenacin.6 Hay dos casos7 dado un estado$ si solo tiene un arco
incidente y otro saliente$ la expresin resultante ser( la concatenacin de
las etiquetas del arco incidente y la del salienteG si en el estado tiene un
arco solo incidente$ arcos que salen e inciden en el mismo estado y un solo
arco saliente$ la expresin resultante ser( la concatenacin de la etiqueta
del arco incidente$ la estrella de Fleene de la unin de las etiquetas de los
arcos que i)an del estado al mismo y la etiqueta del arco saliente por ese
orden.
,stas operaciones se *an aplicando estado a estado, de manera !ue nos *an !uedando
sucesi*amente diagramas con n estados, n'- estados, ..., . estados, / - estado. ,n estos
dos 0ltimos casos:
a. ,i el dia%rama 4 queda con slo un estado$ que es inicial y de aceptacin a
la ve1$ la expresin resultante es la estrella de Fleene de la unin de las
etiquetas de los arcos que salen e inciden en este mismo estado.
1ue 2 !uede con dos estados, uno inicial, el otro de aceptacin. A!u& se pueden tener
alguno o todos de estos 3 arcos: (r)del inicial al inicial, (s) del inicial al de aceptacin, (t) de
aceptacin a aceptacin (u) de aceptacin al inicial. %i s no existe entonces la expresin
regular es la cadena *ac&a, pues no se puede llegar a alg0n estado de aceptacin. %i existe s
pero no u entonces la expresin regular es (r# s t#). %i existe u entonces la expresin
!ueda ((r# s t#) (u (r# s t#))#). %i r t no existen son sustituidos por . A!u& r#
representa la unin de las eti!uetas de los arcos !ue sal&an entraban en el mismo estado,
como se dijo anteriormente.
Determinacin de lenguajes regulares y no regulares.
Es importante pre%untarse su dado un len%ua&e !$ H! es re%ularI. Desde
lue%o$ si ! es finito$ es re%ular$ y de podr( construir un autmata finito o una
expresin re%ular para ellos de forma sencilla. 4am)i*n si ! es especificado ya sea
por medio de un autmata finito o por una expresin re%ular$ la respuesta es o)via.
'or des%racia$ /ay relativamente pocos len%ua&es que sean re%ulares y$ en el caso
de un len%ua&e infinito$ la )+squeda ex/austiva de una expresin re%ular o un
autmata finito puede resultar in+til. En este caso$ se necesita o)tener al%unas
propiedades que compartan todos los len%ua&es re%ulares infinitos y que no est*n
presentes en los len%ua&es no re%ulares.
,upon%amos que un len%ua&e es re%ular y que$ por tanto$ es aceptado por un
AFD M"(-$$,$F$) donde - tiene n estados. ,i !(M) es infinito$ podremos
encontrar cadenas cuya lon%itud sea mayor que n. ,upon%amos que <"a
5
a
8
..
a
n>5
es una de las cadenas de lon%itud n>5 que pertenece a !(M). ,i tuvi*ramos
q
5 "
(,$a
5
)
q
8 "
(q
5
$a
8
)
y as. sucesivamente$ o)tendr.amos los n>5 estados q
5
$ q
8$ 9$
q
n>5
. 'uesto que
- contiene slo n estados$ los que q
i
no ser(n todos distintos. En consecuencia$
oara al%unos .ndices & y :$ con 5 & J : n>5$ se o)tendr( que q
&
"q
:
. 'or lo tanto$
tendremos un ciclo en el camino que parte de , /asta un estado de aceptacin.
'uesto que & J :$ se tiene que la Kparte centralL es decir a
&
>5 9 a
:
$ tiene al
menos lon%itud 5. ;)s*rvese adem(s que la cadena <"a
5
9a
&
a
:>5
9 a
n>5
de)e
pertenecer tam)i*n a !(M) para todo m=. Es decir$ se puede K)om)earL cero o
mas veces la parte central y se%uir teniendo una cadena que sea aceptada por el
autmata.
Lema de bombeo.6 ,ea ! un len%ua&e re%ular infinito. Entonces /ay una
constante n de forma que$ si < es una cadena de ! cuya lon%itud es mayor o i%ual
que n$ se tiene que <"uvx$ siendo uv
i
x! para todo i =$ con CvC 5 y CuvC n.
El lema de )om)eo presenta una propiedad que de)e tener todo len%ua&e
re%ular y nos facilita una forma de determinar si un len%ua&e no es re%ular. 'ara
demostrar que un len%ua&e no es re%ular$ se mostrar( que para cualquier valor n lo
)astante %rande$ se tendr( al menos una cadena de lon%itud n o mayor que falle al
ser K)om)eadaL.
'or e&emplo$ consid*rese el len%ua&e
!"2a
i8
C i 53
4oda la cadena de ! de)e tener una lon%itud que sea un cuadrado perfecto.
,upon%amos que ! es re%ular y sea n la constante dada en el lema de )om)eo.
;)s*rvese que a
n8
! y que$ por el lema de )om)eo$ tenemos que a
n8
" uvx de
forma que
5 CvC n y uv
i
x ! para todo i 5. Entonces se o)tiene que7
n
8
" CuvxC
J Cuv
8
xC
n
8
> n
J (n>5)
8
Es decir$ la lon%itud de uv
8
x no puede pertenecer a !$ es decir$ ! no puede
ser re%ular.
Autmatas bidireccionales
4asta a)ora los autmatas !ue )emos considerado leen su entrada de i+!uierda a derec)a
no reculan sobre ella para reali+ar transiciones alternati*as en funcin de la 55)istoria66 de la
entrada. Los autmatas bidireccionales en cambio, s& pueden re*isar la cadena de entrada
efectuar transiciones en funcin de una misma entrada le&da *arias *eces. 7eamos una
formali+acin de esta nocin de autmatas finitos.
Un autmata bidireccional es una estructura de la forma
donde
La semntica del autmata es mu intuiti*a: %i se est leendo la i'$sima posicin de una
palabra de entrada, en la cual aparece el s&mbolo e, se est en el estado q entonces,
si se pasa al estado p y a revisar la posicin i65 de la
cadena de entrada$
si se pasa al estado p y a revisar la posicin i>5 de la
cadena de entrada.
Para lle*ar un recuento de las transiciones del autmata utili+aremos descripciones
instantneas ((86s). Una DI es una cadena
que indica que la pala)ra de entrada actual es $ se est( leyendo el
s.m)olo e y se est( en el estado q7 o )ien de la forma
$ que indica que se /a arri)ado al estado q y se /a concluido la
lectura de la pala)ra de entrada.
(iremos !ue una (8 se sigue de otra ,
, si es el resultado de aplicar la transicin correspondiente a d9.
:ormalmente,
La cerradura reflexi*o'transiti*a de la relacin 55se sigue66 es la relacin 55se deriva66,
denotada como .
Una palabra es reconocida por el autmata bidireccional si para alg0n estado
final se tiene . ,s decir, una palabra es reconocida si para cuando
se conclua su lectura se )aa arribado a un estado final. ,l lenguaje reconocido por el
autmata bidireccional es
Un lenguaje es regular-B si es reconocido por un autmata bidireccional.
Ejemplo
,l autmata bidireccional !ue
avan1a a la derec/a /asta que /ayan aparecido dos 5Ms$ y
retrocede a la derec/a /asta encontrar un =$ en cuyo caso reentra al estado
inicial$
tiene como transicin a la si%uiente7
,l estado inicial es q9.
%i q- se designa como estado final, entonces se reconocer a palabras de la forma
9
#
(9-9
#
)
#
9-9
#
.
Ejemplo
;onsideremos el semiautmata bidireccional de < estados sobre el alfabeto de dos
s&mbolos A"=a,b>:
Una palabra !ue termina de leerse es . ,n la tabla (..-<) se *e la accin
de sobre .
Tale! Accin de so)re .
Ana pala)ra con un prefi&o de N aMs /ace que se sal%a por la i1quierda de la
cadena de entrada. En efecto$ consideremos . En la
ta)la (O.5P) se ve la accin de so)re .
Tale! Accin de so)re .
Ana pala)ra que cicla es . En la ta)la (O.5@) se ve la accin de
so)re .
Tale! Accin de so)re .
%i se *e la entrada del autmata como inscrita en una cinta con casillas contiguas, en cada
una de las cuales se inscribe un s&mbolo, entonces en una palabra de k s&mbolos )abr k?-
separadores de casillas. %i la palabra de entrada fuese , al escribir
expl&citamente a los separadores, podr&amos re'escribir a como
En la fi%ura (O.@) presentamos un dia%rama de esta presentacin.
Figure ".#! 0adena de entrada y
separadores en un AE.
La aplicacin de la palabra de entrada en el autmata determina una sucesin de cruce Si
en cada uno de los separadores si, de acuerdo con la construccin siguiente:
5.
Qnicialmente /acemos y para cada iR=$ .
8.
'osteriormente$ si es la descripcin instant(nea actual$
es tal que y e est( en la posicin j$
entonces
;on estas reglas, toda sucesin de cruce )a de comen+ar con una pareja de la forma
correspondiente a un mo*imiento a la derec)a, los mo*imientos correspondientes a dos
parejas sucesi*as en una misma sucesin de cruce )abrn de alternarse. Por tanto, al cabo
de la lectura de una palabra de entrada, en cada separador, la correspondiente sucesin de
cruce )a de tener un n0mero impar de elementos. Adems, en el caso de !ue se )aa
aplicado una palabra !ue es efecti*amente reconocida, ninguna sucesin de cruce puede
tener dos apariciones de una misma pareja (en otro caso la 55computacin66 se ciclar&a).
Ejemplo
Para la palabra de longitud <, -9-99-, las @ sucesiones de cruce en el semiautmata
bidireccional son las mostradas en la tabla ..-A.
Tale! ,ucesiones de cruce para el autmata )idireccional .
Ejemplo
Para la palabra de longitud -/, , las -. sucesiones de cruce en el
semiautmata bidireccional son las mostradas en la tabla ../9.
Tale! ,ucesiones de cruce para el autmata )idireccional .
(e manera general, diremos !ue una sucesin de cruce es una lista de parejas de la forma
tal !ue
los movimientos en la sucesin se van alternando$ y
nin%una pare&a se repite en la sucesin.
Por ra+ones !ue se aclararn ms adelante, diremos !ue una sucesin de cruce es derecha si
comien+a con un mo*imiento a la derec)a es de longitud impar. %im$tricamente, diremos
!ue es iquierda si comien+a con un mo*imiento a la i+!uierda es de longitud par.
%i )a n estados en el autmata bidireccional, entonces ninguna sucesin de cruce puede
tener ms de /n elementos. Adems, para cada )a sucesiones de cruce de
longitud /j'- !ue comiencen con el mo*imiento . Por tanto, con n estados, )a
posi)les sucesiones de cruce derec/as. El crecimiento de C
n
es muy r(pido como
se ve en la ta)la (O.85).
Tale ".$%! 0recimiento del n+mero m(ximo de sucesiones de cruce.
,n resumen, el conjunto de sucesiones de cruce para un autmata bidireccional siempre es
finito. Por esto, tendremos !ue todo autmata bidireccional ser e!ui*alente a uno finito
no'determinista. Los estados de $ste 0ltimo sern precisamente las sucesiones de cruce
derec)as posibles. ,n lo !ue resta de esta seccin, *eremos cmo con*ertir un autmata
bidireccional a uno finito e!ui*alente.
Bbser*emos en las tablas (..-A) (../9) !ue cuales!uiera dos sucesiones de cruces
contiguas 55concuerdan66 entre s& en el sentido de !ue sus construcciones son consistentes
con el funcionamiento del correspondiente autmata bidireccional.
A)ora bien, diremos !ue dos sucesiones de cruce S-, S/ concuerdan para un s&mbolo
si para alguna palabra , en la cual e apare+ca en una posicin,
digamos i, se tiene !ue S- aparece como subcadena de la sucesin de cruce Si'-, S/ aparece
como subcadena de Si ambas cadenas forman la 55tra+a66 del funcionamiento del autmata
bidireccional sobre la palabra . (iremos !ue S- concuerda !endo a la derecha con S/ si la
tra+a inicia con el primer elemento de S- el mo*imiento correspondiente es a la derec)a.
%imilarmente, diremos !ue S/ concuerda !endo a la iquierda con S- si la tra+a inicia con el
primer elemento de S/ el mo*imiento correspondiente es a la i+!uierda.
Para poner esto en t$rminos ms precisos:
D.%
!a sucesin vac.a concuerda yendo a la derec/a consi%o misma para
cualquier s.m)olo e.
&.%
!a sucesin vac.a concuerda yendo a la i1quierda consi%o misma para
cualquier s.m)olo e.
D.$
,i S
5
concuerda yendo a la derec/a con S
8
para el s.m)olo e y
entonces la sucesin concuerda yendo a la
derec/a con S
8
para el s.m)olo e.
,n efecto, la pareja indica !ue se atra*iesa al separador si'- )acia la
derec)a para leer el s&mbolo e, luego, por la accin del AC, se *uel*e a atra*esar
si'- pero a)ora )acia la i+!uierda.
&.$
,i S
8
concuerda yendo a la i1quierda con S
5
para el s.m)olo e y
entonces la sucesin
concuerda yendo a la i1quierda con S
5
para el s.m)olo e.
,n efecto, estamos en una situacin sim$trica de la anterior.
D."
,i S
8
concuerda yendo a la i1quierda con S
5
para el s.m)olo e y
entonces concuerda yendo a la derec/a con
para el s.m)olo e.
,n efecto, la pareja indica !ue se atra*iesa a si'- )acia la derec)a para
leer el s&mbolo e, luego, por la accin del AC, se atra*iesa si )acia la derec)a
tambi$n. Posteriormente para mantener la concordancia es necesario !ue S/
concuerde endo a la i+!uierda con S-.
&."
,i S
5
concuerda yendo a la derec/a con S
8
para el s.m)olo e y
entonces concuerda yendo a la i1quierda con
para el s.m)olo e.
,n efecto, estamos en una situacin sim$trica de la anterior.
,e si%ue inmediatamente lo si%uiente7
5.
,i S
5
concuerda yendo a la derec/a con S
8
$ entonces am)as sucesiones S
5
y S
8
son derec/as.
8.
,i S
8
concuerda yendo a la i1quierda con S
5
$ entonces am)as sucesiones
S
5
y S
8
son derec/as.
O.
'ara cualquier pala)ra que se lea por completo en el autmata
)idireccional$ si es su sucesin de sucesiones de cruce$ entonces7
(a)
cada S
i
es una sucesin de cruce derec/a$
())
cada S
i65
concuerda yendo a la derec/a con S
i
$ para el i6*simo s.m)olo de la
pala)ra .
Proposicin '.% (Equivalencia de los autmatas )idireccionales con los no6
deterministas) 4odo len%ua&e re%ular6E es re%ular6N$ y consecuentemente es
tam)i*n re%ular. Es decir$ todo autmata )idireccional es equivalente a un
autmata no6determinista$ y consecuentemente a un autmata finito.
,n efecto, sea un autmata bidireccional. ;onstruamos el
autmata no'determinista siguiente:
estados!
$
estado inicial!
$
estados finales!
$
transiciones!
,s fcil *er !ue ambos autmatas son e!ui*alentes pues una 55computacin reconocedora66,
en el autmata no'determinista, corresponde a una lectura por columnas como las
presentadas en las tablas ..-A ../9, correspondientes a sendas 55computaciones
reconocedoras66, en sus respecti*os autmatas bidireccionales. ,l rec&proco tambi$n *ale.
,l autmata descrito en la demostracin anterior es mu extenso seguramente )a de
contener una gran cantidad de estados inaccesibles. ;omo una primera aproximacin para
reducir el tamaDo del autmata e!ui*alente podemos calcular slo a!uellas sucesiones de
cruce !ue potencialmente pueden concordar, seg0n lo permita la funcin de transicin del
autmata bidireccional.
(escribamos un procedimiento !ue dado un s&mbolo a produce sendas listas de parejas de
sucesiones de cruce !ue concuerdan endo por la derec)a, abre*iado "oncDer, endo por
la i+!uierda, abre*iado "oncIq, respecto al s&mbolo a. Para cada una de las dos relaciones,
"oncDer "oncIq, utili+aremos un arreglo de palabras a re*isar otro de palabras a
re*isadas.
5.
Qnicialmente consideramos la sucesin de cruce vac.a . !a pare&a
se coloca en la lista de pare&as a revisar$ en tanto que la lista de pare&as
revisadas es vac.a$ para cada una de las dos relaciones de concordancia.
8.
'or cada pare&a de sucesiones que quede por revisar$
(a)
se toma la primera pare&a a revisar se%+n ConcDer para pasarla a
las ya revisadas tras el procesamiento que aqu. descri)imos$
())
para cada estado q sea el resultado de leer a en el estado q y
para cada pare&a entre las revisadas o por revisar de la relacin
ConcIzq7
si entonces consideramos la pare&a $ para
colocarla en la lista de las pare&as a revisar se%+n la relacin
ConcDer$ si es que es la primera ve1 que aparece$
si entonces consideramos la pare&a
$ para colocarla en la lista de las
pare&as a revisar se%+n la relacin ConcDer$ si es que es la primera
ve1 que aparece$
(c)
lue%o procedemos de manera dual$ es decir$ se toma la primera pare&a
a revisar se%+n ConcIzq para pasarla a las ya revisadas tras el
procesamiento que aqu. descri)imos$
(d)
para cada estado q sea el resultado de leer a en el estado q y
para cada pare&a entre las revisadas o por revisar de la relacin
ConcDer7
si entonces consideramos la pare&a
$ para colocarla en la lista de las
pare&as a revisar se%+n la relacin ConcIzq$ si es que es la primera
ve1 que aparece$
si entonces consideramos la pare&a
$ para colocarla en la lista de las
pare&as a revisar se%+n la relacin ConcIzq$ si es que es la primera
ve1 que aparece$
O.
!as listas de pare&as revisadas /an de concordar.
,l procedimiento descrito produce a0n una gran cantidad de sucesiones de cruce, aun!ue
efecti*amente est descartando a muc)&simas sucesiones irrele*antes.
Ejemplo
7ol*amos al autmata . ,l algoritmo anterior produce 3E parejas de sucesiones de
cruce derec)as, de manera !ue la primera concuerda con la segunda endo a la derec)a,
respecto al s&mbolo 9. ,n la tabla (..//(a)) las enlistamos en su orden de aparicin con el
algoritmo descrito. %in embargo, a)& aparecen tambi$n sucesiones !ue tienen elementos
repetidos. ,n la tabla (..//(b)) suprimimos esas sucesiones.
Tale ".$$! (a) !as N@ pare&as de sucesiones de cruce derec/as$ de manera que la
primera concuerda con la se%unda yendo a la derec/a$ respecto al s.m)olo =. ())
!as P pare&as de la ta)la (a) sin sucesiones con elementos repetidos.
,n la tabla (../.) enlistamos las parejas de sucesiones de cruce derec)as, de manera !ue la
primera concuerda con la segunda endo a la derec)a, respecto al s&mbolo -, tambi$n en el
orden de aparicin con el algoritmo descrito.
Tale ".$"! !as 5= pare&as$ de manera que la primera concuerda con la se%unda
yendo a la derec/a$ respecto al s.m)olo 5.
Para el autmata , de < estados, este algoritmo da un n0mero extremadamente
grande de sucesiones relacionadas.
;omo otra alternati*a, en *e+ de generar todas las sucesiones de cruce plausibles, con cierta
nocin de plausibilidad, partiendo de la sucesin de cruce primera , dada una
sucesin de cruce actual calcularemos a todas a!uellas !ue concuerdan con ella endo a la
derec)a para cada uno de los s&mbolos en el alfabeto de entrada.
Para esto, definimos dos relaciones de manera tal !ue para
cuales!uiera dos sucesiones de cruce S T:
(iremos !ue una pareja es 55de +ig'+ag66, respecto al s&mbolo a si en la
transicin del autmata bidireccional se tiene . (iremos tambi$n !ue un estado q
es un 55antecedente66 de si para alg0n s&mbolo b se tu*iese !ue .
(e manera recursi*a, tenemos:
(D.%
.
(D.$
.
(D."
.
(&.%
es de 1i%61a%$ respecto al s.m)olo a.
(&.$
.
Utili+aremos un arreglo de sucesiones de cruce a re*isar otro de sucesiones de cruce a
re*isadas.
5.
Qnicialmente se coloca la sucesin de cruce en la lista de
sucesiones a revisar y la de revisadas es vac.a.
8.
En tanto /aya sucesiones por revisar$
(a)
se toma la primera sucesin S a revisar$ para pasarla lue%o a las ya
revisadas$
())
para cada s.m)olo a$
i.
se calcula la lista de sucesiones T tales que $
ii.
se pone una transicin$ marcada con a de S a cada tal T$
iii.
la primera ve1 que apare1ca una tal T$ se la pone en la lista de sucesiones
a revisar.
O.
!a lista de sucesiones revisadas define al autmata no6determinista
equivalente.
Ejemplo
Para el autmata bidireccional , al aplicar el algoritmo anterior se distingue a las
sucesiones de cruce
y con la enumeracin de la primer columna$ la transicin del autmata no6
determinista es
y so)re *ste$ al calcular el autmata determinista equivalente$ o)tenemos el
autmata
donde la ta)la del lado i1quierdo representa una nueva enumeracin a/ora de los
con&untos de estados del autmata no6determinista$ y la ta)la de la derec/a$ la
transicin del nuevo autmata determinista. Este es el equivalente a .
Ejemplo
Para el autmata bidireccional , al aplicar el algoritmo anterior se distingue a -@@
sucesiones de cruce para formar el autmata no'determinista A#D. ;uando a $ste se le
con*ierte en uno determinista, digamos AD, aparecen <. estados. ,l estado 9 de A#D
corresponde a la sucesin de cruce . ,l estado 9 de AD corresponde al conjunto de
estados .
7imos anteriormente !ue la palabra se lee por completo en el
autmata arriba a su estado .. ;uando aplicamos a AD se llega a su estado 3A, el
cual corresponde a la coleccin de estados de A#D
entre los cuales est( el estado 5 que corresponde a la sucesin de cruce
.
Producto de autmatas
%ean dos autmatas
finitos. %u semiautmata producto se define sobre el producto cartesiano como sigue:
estados!
$
estado inicial!
q
=5
"(q
=5
$q
=8
)$
transiciones!
(se tiene un semiautmata porque a+n no /ay estados finales). Denotemos por
a este semiautmata.
,s e*idente !ue
As& pues, si definimos como conjunto de estados finales al conjunto
entonces una pala)ra ser( reconocida por el producto si y slo si lo es
por al%uno de los autmatas o $ es decir$ en este caso$
A)ora, si definimos como conjunto de estados finales al conjunto
entonces una pala)ra ser( reconocida por el producto si y slo si lo es
por am)os autmatas o $ es decir$ en este caso$
Congruencias de autmatas
,ea un semiautmata. Ana relacin de equivalencia SS MM
definida en el con&unto de estados Q se dice ser congrente con la funcin de
transicin si
(T)
es decir para cada s.m)olo$ los estados a los que transita el semiautmata desde
sendos estados equivalentes son tam)i*n equivalentes. ,i SS MM es una
con%ruencia$ entonces el cociente puede ser dotado de una estructura de
semiautmata7
y *ste se dice ser el semiatmata cociente respecto a la con%ruencia SS MM$
denotado como . ,e tiene pues que la proyeccin es un
/omomorfismo de semiautmatas. M(s a+n$ si es un autmata
finito y es una con%ruencia en el semiautmata $ en el cociente
distin%uimos como estados finales a las clases de la forma UqV tales que
$ para o)tener el atmata cociente . Aqu.$ la proyeccin es
un /omomorfismo de autmatas. 0onsecuentemente$ el cociente
su)sume al autmata .
)servacin $." !os autmatas y son equivalentes si y slo si el
con&unto de estados finales ! es la unin de al%unas clases de equivalencia
respecto a SS MM.
'ara presentar unos primeros e&emplos de con%ruencias$ consideremos
/omomorfismos de semiautmatas o autmatas. A lo lar%o de la presente seccin$
toda ve1 que /a)lemos de /omomorfismos$ supondremos que *stos son de /ec/o
epimorfismos$ es decir$ como funciones$ son suprayectivos. ,ean pues
y dos semiautmatas y
un /omomorfismo. Entonces su n+cleo$
$ es una relacin de equivalencia que es de /ec/o
una con%ruencia. 'or tanto$ se puede definir el cociente $ y *ste es
tal que cada clase de equivalencia corresponde )iun.vocamente a un elemento en
la ima%en de ". As. pues$ lo expuesto aqu. lo enunciamos como el
Teorema $.% (de /omomorfismo de semiautmatas) ,i es un
epimorfismo de semiautmatas entonces el cociente es isomorfo a
. En s.m)olos$ .
'ara el caso de autmatas$ si y son dos
autmatas y es un epimorfismo de autmatas$ tal que
entonces es la unin de al%unas clases de equivalencia
respecto a . 'or tanto los autmatas y son isomorfos.
Teorema $.$ (de /omomorfismo de autmatas) ,i es un
epimorfismo de autmatas tal que !
5
es la unin de clases de equivalencia
respecto a $ entonces el cociente es isomorfo a . En
s.m)olos$ .
As. pues$ en cada pare&a de semiautmatas o autmatas /omomorfos que ya
/emos visto$ tendremos con%ruencias de semiautmatas o autmatas y
correspondientes estructuras cocientes. !os e&emplos de /omomorfismos de
semiautmatas y de autmatas que ya /emos visto aqu.$ /an de proporcionar
e&emplos de con%ruencias y de autmatas cocientes.
Teorema
Un lenguaje en aceptado por un A.:.(. es aceptado
por un A.:.F.(.
Demostracin
2ri*ial, a !ue todo A.:.(. es un A.:.F.(.
7er apartado siguiente.
Paso de A.F.N.D. a A.F.D.
-. %e crea P(1) cada elemento de este nue*o conjunto
ser un estado del A.:.(. %i una componente de un
elemento de P(1) es un estado final, dic)o elemento
ser tambi$n un estado final.
/. ADadir un nue*o estado $ al !ue denominaremos estado
muerto.
.. Las entradas sern las mismas.
3. %i en la tabla de transicin del A.:.F.(. un estado pasa
con una entrada a *arios estados, la combinacin de
$stos pertenece a P(1), rellenando la casilla
correspondiente de la tabla de transicin del A.:.(. con
dic)o elemento de P(1).
G. Para rellenar las casillas de los elementos compuestos
de P(1) calculo todos los estados siguientes de cada uno
de los estados componentes de cada uno de dic)os
elementos de P(1). ,l conjunto de todos estos estados
siguientes conforman otro elemento de P(1),
procediendo a su anotacin en la tabla de transicin del
A.:.(.
<. ;ual!uier casilla !ue !uede *ac&a la relleno con el
estado $.
@. Las casillas del estado $ las relleno con el mismo
estado $.
,jemplo: Bbtener el A.:.(. asociado
9 -
A C, ;
#C A ;
#; ;
,jemplo: Bbtener el A.:.(. asociado
H"(I9, -J, I%, U, 7J, I%U9K7-, U%-K-, 7%-K9J,%)
Teorema
Un lenguaje es aceptado por un 'A.:.F.(. es
aceptado por un A.:.F.(.
Demostracin
2ri*ial, a !ue todo A.:.F.(. es un 'A.:.F.(.
7er algoritmo apartado siguiente.
7. Algoritmo de paso de -A.F.N.D. a A.F.N.D.
(ado un lenguaje L aceptado por el 'A.:.F.(.:
A " (,, 1, f, !9, :)
el A.:.F.(. !ue reconoce dic)o lenguaje se construe de
la siguiente manera:
AL " (,, 1, g, !9, :L)
donde:
=
=
9 ) ( J I
9 ) (
6
9
9
% q "l si q %
% q "l si %
%
o