Documente Academic
Documente Profesional
Documente Cultură
DE VALENCIA
Indice
1. Introducci
on.
2. Lenguajes y Aut
omatas finitos.
2.1. Alfabetos, palabras y lenguajes. . . . . . . . . . . .
2.2. Aut
omatas finitos. . . . . . . . . . . . . . . . . . .
2.3. Aut
omatas finitos deterministas. . . . . . . . . . .
2.4. Otros tipos de aut
omatas finitos. . . . . . . . . . .
2.4.1. Aut
omatas finitos con transiciones vacas. .
2.4.2. RFSA (Residual Finite State Automaton).
2.4.3. Aut
omatas maximales asociados a lenguajes
2.5. Operaciones sobre aut
omatas finitos. . . . . . . . .
2.5.1. Cocientes. . . . . . . . . . . . . . . . . . . .
2.5.2. Reverso. . . . . . . . . . . . . . . . . . . . .
2.5.3. Subaut
omatas. . . . . . . . . . . . . . . . .
2.5.4. Homomorfismos. . . . . . . . . . . . . . . .
2.5.5. Uni
on. . . . . . . . . . . . . . . . . . . . . .
2.5.6. Determinizaci
on. . . . . . . . . . . . . . . .
2.5.7. Minimizaci
on. . . . . . . . . . . . . . . . . .
2.6. Aut
omata Universal. . . . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
finitos.
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
6
8
10
10
10
11
13
13
14
14
15
15
16
16
16
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
19
19
21
21
22
23
25
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4. Minimalizaci
on de Aut
omatas Finitos.
4.1. Introducci
on. . . . . . . . . . . . . . . . . . . . . . .
4.2. Minimalidad. . . . . . . . . . . . . . . . . . . . . . .
4.2.1. Aut
omatas finitos minimales. . . . . . . . . .
4.2.2. Minimalidad relativa. . . . . . . . . . . . . .
4.3. Irreducibilidad. . . . . . . . . . . . . . . . . . . . . .
4.3.1. Aut
omatas finitos irreducibles. . . . . . . . .
4.3.2. Estados fusionables. . . . . . . . . . . . . . .
4.3.3. Estados fusionables y el aut
omata universal. .
4.3.4. Irreducibilidad relativa. . . . . . . . . . . . .
4.4. Concisi
on. . . . . . . . . . . . . . . . . . . . . . . . .
4.4.1. Aut
omatas finitos concisos. . . . . . . . . . .
4.4.2. Estados superfluos. . . . . . . . . . . . . . . .
4.4.3. Aut
omatas finitos concisos irreducibles. . . .
4.4.4. Concisi
on relativa. . . . . . . . . . . . . . . .
1
29
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
29
29
31
32
32
33
35
38
41
41
42
43
44
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
aut
omatas finitos.
. . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
45
49
49
50
55
56
60
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8. Conclusi
on.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
70
70
71
71
71
73
1.
Introducci
on.
proposiciones b
asicos de teora de lenguajes y se establece la notaci
on utilizada
a lo largo del trabajo. Lo mismo, pero en lo que concierne a la inferencia gramatical, se realiza en el tercer captulo, donde se describe adem
as el actual estado
del arte. En el cuarto captulo se discuten los problemas de minimalizaci
on
y reducci
on de aut
omatas finitos y se demuestra el primero de los resultados
centrales de esta tesis, la existencia de una cota en el tama
no de los aut
omatas
finitos irreducibles que aceptan un determinado lenguaje regular. Se introducen
adem
as los conceptos de irreducibilidad y concisi
on relativas. En el captulo
quinto se discuten y amplan los conceptos de red de aut
omatas cocientes y
completitud estructural y se introduce el concepto de universalidad estructural.
Como resultado de este estudio se obtiene el segundo de los resultados centrales
de este trabajo, el cual establece que cualquier algoritmo de fusi
on de estados
que obtenga como resultado un aut
omata finito irreducible compatible con los
datos de entrada infiere en el lmite la clase de los lenguajes regulares siempre y
cuando se aplique en cierta manera, por lo dem
as poco restrictiva. En el captulo
sexto se introduce el concepto de subaut
omata asociado a una palabra en un
lenguaje y a partir de el se describe una nueva familia de algoritmos de inferencia de la clase de los lenguajes regulares representados mediante aut
omatas
finitos, algoritmos que tienen la particularidad de que su complejidad temporal
es funci
on b
asicamente de la longitud de las palabras de la muestra de entrada,
mientras que son pr
acticamente lineales respecto al n
umero de las mismas. En el
captulo septimo se describen algunos algortmos de las familias mencionadas y
mediante la experimentaci
on se compara con exito su rendimiento con el de los
algortmos de inferencia hoy por hoy mas relevantes. Por u
ltimo, en el captulo
octavo se enumeran las conclusiones de este trabajo y se exponen diferentes vas
para la futura ampliaci
on del mismo.
2.
2.1.
Lenguajes y Aut
omatas finitos.
Alfabetos, palabras y lenguajes.
P ref (L) = P ref (x). En forma similar se definen Suf (L), Seg(L) y
xL
SubW (L).
Dados un lenguaje L y una palabra x denominaremos derivada de L respecto
a x al conjunto x1 L= {y : xy L}. Adem
as denotaremos por Lx1 al
lenguaje {y : yx L} .
Siendo 1 y 2 alfabetos un homomorfismo de 1 sobre 2 es cualquier
funci
on h : 1 2 . Esta operaci
on se extiende a palabras de forma que para
cualquier homomorfismo h, h() = y h(ax) = h(a)h(x) para cada smbolo a y
cada palabra x. Se extiende asimismo a lenguajes siendo h(L) = {h(x) : x L}.
Si h es un homomorfismo de 1 sobre 2 y L es un lenguaje sobre 2 entonces
h1 (L) = {x 1 : h(x) L}. El operador h1 se denomina homomorfismo
inverso.
De los diferentes sistemas de representaci
on de lenguajes utilizaremos con
cierta frecuencia las expresiones regulares, definidas en la siguiente manera: ,
y a, para cada a , son expresiones regulares que denotan respectivamente a
los lenguajes , {} y {a} . Si r1 y r2 son expresiones regulares que representan
respectivamente a los lenguajes L1 y L2 entonces r1 + r2 , r1 r2 y r1 son expresiones regulares que representan respectivamente a los lenguajes L1 L2 , L1 L2 y
L1 . La prioridad de estos operadore es, de menor a mayor, +, , , donde denota
la concatenaci
on. Esta prioridad puede alterarse en la forma habitual mediante
el uso de parentesis. S
olo las expresiones as construidas son expresiones regulares, si bien, por concisi
on, en algunos casos las utilizaremos combinadas con
otros operadores como la notaci
on exponencial y la clausura positiva.
Dado un alfabeto llamaremos clase de lenguajes a cualquier conjunto de
lenguajes sobre . La clase de los lenguajes que pueden ser representados mediante expresiones regulares se llama clase de los lenguajes regulares o L 3 y es
la misma que la formada por los lenguajes que pueden ser representados mediante aut
omatas finitos. L3 es cerrada bajo cada una de las operaciones sobre
lenguajes anteriormente descritas.
2.2.
Aut
omatas finitos.
Definici
on 1 Un aut
omata finito es cualquier quntupla A =hQ, , , I, F i,
donde Q es un conjunto finito de estados, es un alfabeto, I es un subconjunto no vaco de Q a cuyos elementos llamamos estados iniciales, F es un
subconjunto de Q a cuyos elementos llamamos estados finales y, por u
ltimo, ,
a la que se llama funci
on de transici
on, es una funci
on : (Q ) 2 Q o,
equivalentemente, un subconjunto de Q Q.
Cada elemento hq1 , a, q2 i de Q Q tal que q2 (q1 , a) es una transici
on
de .
La funci
on se extiende en forma natural a conjuntos de estados, de manera
que para cualquier subconjunto P de Q y cualquier smbolo a de , (P, a) =
(q, a).
qP
qI
qF
qF
Demostraci
on. Trivial.
Un estado q de un aut
omata finito A = hQ, , , I, F i es inalcanzable si no existe
x tal que q (I, x) o, equivalentemente si Lq = . Es un sumidero si
x(q, x) F = o, lo que es lo mismo, si Rq = . Un estado es inutil si es
inalcanzable o es un sumidero y, por tanto, si Lq Rq = . Un aut
omata es aseado
si no contiene estados in
utiles. El aut
omata A0 = hQ0 , , 0 , I 0 , F 0 i donde Q0
se obtiene de eliminar los estados in
utiles de Q, I 0 = I Q0 , F 0 = F Q0 y
0
0
0
= (Q Q ) es aseado y equivalente a A. Generalmente, si no se indica
lo contrario, supondremos que los aut
omatas finitos con los que trabajamos son
aseados.
7
0,1
0,1
0
2
0
1
1
1
0
4
1
3
1
5
0
1
4
0
1
3
(A)
(B)
Figura
1:
(A)
Diagrama
de
transiciones
del
aut
omata
finito
A = hQ, , , I, F i, donde Q = {1, 2, 3, 4, 5, 6}, = {0, 1}, =
{h1, 0, 2i, h1, 1, 3i, h2, 0, 2i, h2, 1, 2i, h2, 0, 4i, h3, 1, 1i, h3, 1, 2i, h3, 1, 3i, h3, 0, 5i, h4, 0, 2i,
h4, 1, 5i, h5, 0, 5i, h6, 1, 4i, h6, 0, 5i}, I = {1, 4} y F = {2}. Acepta el lenguaje
(0 + 11)(0 + 1) . (B) Dado que el estado 5 es un sumidero y el 6 es inalcanzable, este
aut
omata es equivalente al anterior.
Desde el punto de vista de los diagramas de transici
on una palabra x es
aceptada por el aut
omata si existe un camino etiquetado con los smbolos de x
que conduce desde alg
un estado inicial hasta alguno final.
2.3.
Aut
omatas finitos deterministas.
Definici
on 5 Un aut
omata finito A = hQ, , , I, F i es determinista si |I| = 1
y para todo estado q y todo smbolo a, | (q, a)| 1.
Usualmente, si I = {q0 } , A se representa en la forma hQ, , , q0 , F i, donde
es una funci
on parcial : (Q ) Q.
Si es una funci
on total diremos que A es un automata finito determinista completamente especificado o completo. A partir de cada aut
omata finito
determinista no completo A = hQ, , , q0 , F i puede obtenerse uno completo
equivalente A0 = hQ {qs } , , 0 , q0 , F i sin mas que a
nadir un nuevo estado qs
de forma que para todo q Q {qs } y para todo a tales que (q, a) no
est
a definida, 0 (q, a) = qs , siendo en los dem
as casos 0 (q, a) = (q, a). En
0
general consideraremos que A y A son el mismo aut
omata.
Proposici
on 6 Todo lenguaje regular es aceptado por alg
un aut
omata finito
determinista.
Demostraci
on. Sea
omata finito. El aut
omata finito
A = hQ, , , I, F i un aut
determinista A0 = 2Q , , , I, 2Q 2QF , donde ahora se interpreta como
una funci
on de 2Q 2Q , es equivalente a A.
Los aut
omatas de la figura 1 no son deterministas. En la figura 2(A) se
muestra otro equivalente a ellos que s lo es.
0,1
0
0
0
1
(A)
0,1
0
1
(B)
Proposici
on 7 Para cada lenguaje L sea D = x1 L : x . L
L3 |D| < .
D
E
+
Demostraci
on. Por una parte, el aut
omata D = D, , , L, D 2
donde
(x1 L, a) = (xa)1 L acepta el lenguaje L, y si |D| < , D es un aut
omata
finito determinista.
Por otra parte, sea A = hQ, , , q0 , F i un aut
omata finito determinista
completo tal que L(A) = L. Puesto que (q0 , x) = (q0 , y) = q x1 L =
y 1 L = Rq tenemos que |Q| |D| y por tanto |D| < .
2.4.
2.4.1.
El concepto de aut
omata finito con transiciones vacas es una generalizaci
on
del de aut
omata finito. Dado que para cada aut
omata de este tipo existe un
aut
omata finito equivalente con el mismo n
umero de estados, los aut
omatas
finitos con transiciones vacas apenas incrementan la capacidad representativa
de los aut
omatas finitos. Su principal utilidad reside en contribuir a simplificar
algunas demostraciones, pero incluso esta utilidad ha disminuido debido a la
utilizaci
on de aut
omatas finitos con varios estados iniciales.
A lo largo de este trabajo apenas ser
an utilizados, por lo que nos limitaremos
a dar una breve descripci
on de los mismos.
Definici
on 9 Se denomina aut
omata finito con transiciones vacas a cualquier
quntupla A = hQ, , , I, F i, donde Q, , I y F significan lo mismo que en
el caso de los aut
omatas finitos, mientras que es en este caso una funci
on
: (Q ( {})) 2Q .
Los aut
omatas finitos con transiciones vacas se representan mediante diagramas de transiciones construidos de la misma manera que los asociados a
aut
omatas finitos. A los arcos etiquetados se les denomina transiciones vacas.
Desde el punto de vista de estos diagramas una palabra x es aceptada por
un aut
omata A si existe alg
un camino en A etiquetado con los smbolos de x
y con transiciones vacas intercaladas en cualesquiera posici
on y n
umero que
conduzca desde alg
un estado inicial hasta alg
un estado final.
Vease un ejemplo en la figura 3(A).
2.4.2.
0,1
0
0,1
0,1
0,1
0,1
1
0,1
(A)
(B)
Figura 3: (A) Automata finito con transiciones vacas para el lenguaje (0 + 01) . (B)
RF SA can
onico para el lenguaje (0 + 1) 0(0 + 1)2 . Los estados se corresponden con
los siguientes valores de residuos primos: 1 := 1 L = L, 2 := 01 L = L + (0 + 1)2 ,
3 := 011 L = L + 0 + 1, 4 := 0111 L = L + . Los dem
as residuos hasta un total de
8, tama
no del aut
omata finito determinista mnimo, son compuestos.
Aut
omatas maximales asociados a lenguajes finitos.
Q = {hx, yi : xy L} ,
I = {h, xi : x L} ,
F = {hx, i : x L} y
(hx, ayi , b) = {hxa, yi} si a = b o si a 6= b, para a, b .
M CA(L) es el mayor aut
omata sin estados superfluos que acepta el lenguaje
L. Vease un ejemplo de esta definici
on y de las siguientes en la figura 4.
Esta definici
on difiere de la establecida en [12] puesto que los autores consideran solamente aut
omatas finitos con un u
nico estado inicial. Damos ahora
esa definici
on bajo un nombre diferente:
Definici
on 12 El aut
omata can
onico maximal con un estado incial de L es el
aut
omata M OICA(L) = hQ, , , I, F i , donde
Q = {hx, yi : x + , xy L} {} ,
I = {} ,
F = {hx, i : x L} si
/ L o {hx, i : x L} {} si L,
(hx, ayi , b) = {hxa, yi} si a = b o si a 6= b, para a, b y
(, a) = {ha, xi : ax L} , para a .
Evidentemente M OICA(L) = M CA(L)/I .
Definici
on 13 El a
rbol aceptor de prefijos de L es el aut
omata P T A(L) =
hQ, , , I, F i , donde
Q = P ref (L),
I = {} ,
F =L y
(x, a) = {xa} si xa P ref (L) o si xa
/ P ref (L).
P T A(L) es por tanto el mayor aut
omata finito determinista sin estados
in
utiles que acepta a L. Adem
as, P T A(L) = M OICA(L)/ siendo tal que
hx1 , y1 i y hx2 , y2 i pertenecen al mismo bloque si y solo si x1 = x2 y {} es el
u
nico elemento de su bloque. Puesto que P T A(L) es un cociente de M OICA(L)
y este lo es a su vez de M CA(L), el primero es a su vez un cociente de este
u
ltimo .
Asociaremos ahora un aut
omata finito a cada secuencia finita de palabras,
teniendo en cuenta que, como tal secuencia, puede contener palabras repetidas,
lo cual no tiene sentido cuando hablamos de lenguajes por ser estos conjuntos.
Definici
on 14 Sea S = hxi , 1 i ni una secuencia finita de palabras. Llamaremos aut
omata can
onico secuencial de S al aut
omata finito SCA(S) =
hQ, , , I, F i donde
Q = {hi, y, zi : yz = xi } ,
I = {hi, , xi i} ,
F = {hi, xi , i} y
(hi, y, azi , b) = {hi, ya, zi} si yaz = xi y a = b o en caso contrario.
12
Est
a claro que SCA(S) puede contener estados superfluos. Por otra parte
M CA(S) = SCA(S)/ siendo tal que hi1 , x1 , y1 i e hi2 , x2 , y2 i pertenecen al
mismo bloque si y solo si x1 = x2 e y1 = y2 .
0
1
0
1
0
(B)
0
(A)
0
1
0
1
(C)
(D)
Figura 4: Siendo L = {, 00, 01, 11, 010} se representan los siguientes automatas: (A)
M CA(L), (B) M OICA(L), (C) P T A(L), (D) SCA(h, 00, 01, 01, 11, 010i).
2.5.
A lo largo de este apartado describiremos algunos de los mas conocidos operadores sobre aut
omatas finitos.
2.5.1.
Cocientes.
I, F i un aut
de Q. El aut
omata finito A/ = Q/, , , Q/ 2QI , Q/ 2QF , siendo
((p), a) = {(q) : ((p), a) (q) 6= }, se denomina aut
omata cociente de
A por .
Evidentemente si p (q, x) entonces (p) ((q), x) y adem
as p I
(p) Q/ 2QI y p F (p) Q/ 2QF por lo que en todo caso
L(A) L(A/).
Definici
on 16 Diremos que un aut
omata finito A es irreducible si L(A/) =
L(A) implica que es la partici
on trivial.
2.5.2.
Reverso.
Definici
on 17 Se denomina
reverso de
omata finito A = hQ, , , I, F i
un aut
al aut
omata finito AR = Q, , R , F, I , donde hp, a, qi R hq, a, pi .
Por inducci
on sobre |x| , x , se demuestra que R (P1 , x) = P2
R
(P2 , x ) = P1 y de esto se deduce que L(AR ) = (L(A))R .
Evidentemente (AR )R = A. Adem
as, si A es aseado tambien lo es AR , si A
R
es irreducible tambien lo es A y si A es minimal tambien lo es AR .
2.5.3.
Subaut
omatas.
Un subaut
omata de un aut
omata finito A = hQ, , , I, F i es cualquier
aut
omata A0 = hQ0 , , 0 , I 0 , F 0 i tal que Q0 Q, 0 (Q0 Q0 ),
I 0 I Q0 , F 0 F Q0 . Obviamente, si A0 es un subaut
omata de A entonces
L(A0 ) L(A).
Definici
on 18 Sea A = hQ, , , I, F i un aut
omata finito y sea P un subconjunto de Q.Denominaremos subaut
omata de A inducido por P al aut
omata
AP = hP, , (P P ), I P, F P i . Igualmente, dado I 0 I, F 0 F
o 0 llamaremos AII 0 , AF F 0 , A0 respectivamente a los subaut
omatas
hQ, , , I 0 , F i , hQ, , , I, F 0 i , hQ, , 0 , I, F i .
As, A0 es un subaut
omata de A = hQ, , , I, F i si y solo si existen I 0 I,
0
F F, y P Q tales que A0 es isomorfo a (((AII 0 )F F 0 )0 )P .
En algunas construcciones ser
a conveniente considerar para un aut
omata
A = hQ, , , I, F i conjuntos, por ejemplo, de .estadosque no est
an includos en
Q. Supondremos en esos casos que
AP = hQ P, , (P P ), I P, F P i , AII 0 = hQ, , , I I 0 , F i ,
AF F 0 = hQ, , , I, F F 0 i y A0 = hQ, , 0 , I, F i . Esta generalizaci
on
presenta algunas ventajas, entre otras que los operadores II 0 ,F F 0 ,0 y P
as definidos conmutan.
0
14
Definici
on 19 Un subconjunto no vaco de estados P de un aut
omata finito A
es superfluo si L(AQP ) = L(A). Diremos que un aut
omata finito es conciso si
no contiene estados superfluos.
Puede ocurrir que P1 y P2 sean subconjuntos superfluos y sin embargo P1 P2
no lo sea. Todo estado in
util es superfluo pero lo inverso no es necesariamente
cierto, aunque si lo es en el caso de los aut
omatas finitos deterministas. Un
aut
omata irreducible puede tener estados superfluos.
As mismo un conjunto de transiciones 0 , de estados iniciales I 0 o de estados
finales F 0 es superfluo si, respectivamente, L(A0 ) = L(A), L(AIII 0 ) =
L(A), L(AF F F 0 ) = L(A). Diremos que un aut
omata finito es estrictamente
conciso si no contiene estados, transiciones, estados iniciales ni estados finales
superfluos.
2.5.4.
Homomorfismos.
Definici
on 20 Un homomorfismo de un aut
omata A = hQ, , , I, F i sobre
un aut
omata A0 = hQ0 , , 0 , I 0 , F 0 i es cualquier funci
on h : Q Q0 tal que
0
0
h(I) I , h(F ) F y hp, a, qi hh(p), a, h(q)i 0 .
Claramente, para todo q Q, Lq Lh(q) y Rq Rh(q) por lo que si existe
alg
un homomorfismo de A sobre A0 entonces necesariamente L(A) L(A0 ).
As, dados dos aut
omatas finitos A y A0 , existe un homomorfismo de A sobre
A0 si y solo si existe un subaut
omata de A0 isomorfo a alg
un cociente de A.
Definici
on 21 Sean A = hQ, , , I, F i y A0 = hQ0 , , 0 , I 0 , F 0 i aut
omatas finitos y sea h un homomorfismo de A sobre A0 . Sea h la partici
on de Q tal que
para cada estado q, h (q) = {p Q : h(p) = h(q)}. Llamaremos h(A) al subaut
omata de A0 isomorfo a A/q .
La definici
on anterior no es completamente estandar, pues tambien se encuentra en la literatura otra seg
un la cual h(A) = A0h(q) , esto es, la imagen de
0
A sera el subaut
omata de A inducido por el subconjunto h(Q) de Q0 . Hemos
preferido utilizar la primera por considerar que nos ser
a de mayor utilidad.
Definici
on 22 Diremos que el homomorfismo h : A A0 es inyectivo o subyectivo si lo es la funci
on asociada h : Q Q0 .
No es suficiente con que h : Q Q0 sea inyectiva y subyectiva para que
h : A A0 sea un isomorfismo; ha de cumplirse adem
as que h(A) = A0 .
De esa definici
on se desprende que un aut
omata finito A es irreducible si y
solo si L(h(A)) = L(A) implica que h es un isomorfismo.
2.5.5.
Uni
on.
Definici
on 23 Dados A = hQ, , , I, F i y A0 = hQ0 , , 0 , I 0 , F 0 i aut
omatas
finitos, llamaremos al aut
omata AA0 = hQ Q0 , , 0 , I I 0 , F F 0 i, donde
todas las uniones son disjuntas, uni
on de A y A0 .
Evidentemente L(A A0 ) = L(A) L(A0 ).
15
2.5.6.
Determinizaci
on.
Denominaremos determinizaci
on de un aut
omata finito al metodo cl
asico de
obtenci
on de un aut
omata finito determinista aseado equivalente a un aut
omata
finito dado.
Sea A = hQ, , , I, F i un aut
omata finito. Diremos que un subconjunto P
de Q es alcanzable si existe x tal que (I, x) = P. Llamaremos Alc(2Q ) al
conjunto de partes alcanzables de Q.
Definici
on 24 Dado un aut
omata finito
o
A = hQ, , , I, F i llamaremos al aut
mata finito determinista Det(A) = Alc(2Q ), , , I, Alc(2Q ) 2QF determinizaci
on de A.
Como es bien sabido, el aut
omata Det(A) es equivalente a A, pero en el peor
de los casos su n
umero de estados es 2|Q| .
2.5.7.
Minimizaci
on.
La minimizaci
on es el proceso de obtenci
on del aut
omata finito determinista
mnimo equivalente a un aut
omata finito dado.
Definici
on 25 Dado un aut
omata finito A = hQ, , , I, F i llamaremos M in(A)
al aut
omata finito determinista mnimo equivalente a A.
Sea A = hQ, , , q0 , F i un aut
omata finito determinista y sea la partici
on
de Q tal que (q) = {p Q : Rp = Rq }. Entonces M in(A) = A/.
Este c
alculo se puede realizar en tiempo |Q| ln |Q| . Sin embargo cuando
tenemos de partida un aut
omata finito es preciso realizar primero la determinizaci
on del mismo por lo que el proceso en su conjunto es de complejidad
exponencial.
Un metodo alternativo [3], no mas eficiente pero si elegante, de minimalizar
un aut
omata finito se desprende de la identidad M in(A) = Det((Det(AR ))R ).
2.6.
Aut
omata Universal.
El concepto de aut
omata universal de un lenguaje fue establecido por Carrez en [4]. Tambien, independientemente, aparece implcito en los trabajos de
Conway [7] y de Kameda y Weiner [23]. Arnold, Dicky y Nivat en [1] formalizan
el concepto y establecen su relevancia en el problema de encontrar aut
omatas
finitos minimales equivalentes a uno dado. Lombardy y Sakarovitch en [26] lo
aplicaron al estudio de la star height(el anidamiento mnimo del operador
clausura en las expresiones regulares que representan a un lenguaje) de los
lenguajes regulares. Las definiciones y proposiciones de este apartado pueden
encontrarse, por ejemplo en [29] o [30], donde Pol
ak utiliza el aut
omata universal
como base de partida en la b
usqueda de aut
omatas finitos minimales.
Definici
on 26 Sea L un lenguaje cualquiera. Se define el aut
omata uni1
versal de L como U = hU, , , I, F i, donde U = {x1
L
...
x
n L : n
1
16
0
2
0,1
2
0,1
0,1
0,1
1
0
12
0,1
1
0,1
123
0,1
0,1
0
0,1
0,1
3
23
(A)
(B)
Proposici
on 27 Sean hp1 , q1 i , ..., hpn , qn i las soluciones maximales de la inecuaci
on L1 L2 L y sea U = hU, , , I, F i el aut
omata universal de L. Entonces {q1 , ..., qn } = U .
Demostraci
on. Por el requisito de maximalidad qi = x1 L. Por el mismo
xpi
motivo pi = [y]RL : yx L.
xqi
Proposici
on 28 Sea U = hU, , , I, F i el aut
omata universal de L. Entonces
U acepta a L.
Demostraci
on. De la proposici
on anterior se desprende que para cada qi U ,
Lqi = pi y Rqi = qi , por lo que L(U ) = pi = [y]RL : y L = L.
i:qi F
Proposici
on 29 L L3 su aut
omata universal U es un aut
omata finito.
Demostraci
on. La implicaci
on es obvia por la proposici
on anterior. Para
demostrar la implicaci
on es suficiente con observar que si L L3 el n
umero
de conjuntos diferentes de la forma x1 L es finito por lo que tambien es finito
el n
umero de intersecciones diferentes de los mismos, esto es, de estados de U .
17
Proposici
on 30 Sea L L3 , sean D = hQD , , D , ID , FD i su aut
omata finito determinista mnimo y U = hU, , , I, F i su aut
omata universal. Entonces
|U | 2|QD | .
Demostraci
on. Dado que QD = x1 L : x tenemos que U = { q :
qP
funci
on es un homomorfismo por lo que la implicaci
on queda demostrada.
18
3.
3.1.
Se llama inducci
on al proceso mediante el cual podemos pasar de lo particular a lo general, de observaciones concretas a una proposici
on que da cuenta
de las mismas. El proceso de aprendizaje mediante inducci
on y en particular
su aplicaci
on a la demostraci
on de proposiciones, ha sido objeto de estudio y
controversia desde su primera formulaci
on, realizada por Arist
oteles. En lneas
generales el paradigma de la inferencia inductiva puede ser descrito como sigue:
Un agente, enfrentado con alg
un fen
omeno, recoge datos experimentales, bien
de forma activa mediante la realizaci
on de experimentos, o bien de forma pasiva
mediante la mera observaci
on. A continuaci
on el agente formula una hip
otesis
consistente con los datos que pretende explicar o describir el fen
omeno estudiado. Si la hip
otesis satisface determinados criterios, por ejemplo permite vaticinar con exito los resultados de nuevas observaciones del fen
omeno, es aceptada
como teora.
Cuando los fen
omenos objeto de estudio son o se representan mediante
lenguajes la inferencia inductiva recibe el nombre de inferencia gramatical.
Para definir un problema de inferencia gramatical es necesario especificar
los siguientes conceptos: Dominio de objetos, espacio de hip
otesis, metodo de
presentaci
on, metodo de inferencia y criterio de exito. Hablaremos brevemente
sobre ellos.
El dominio de objetos es el conjunto de lenguajes que se pretende inferir,
entre los cuales pensamos que est
a aquel que buscamos como resultado final del
proceso. En principio podra considerarse como dominio de objetos cualquier
familia de lenguajes, pero consideraciones tales como la necesidad de poder
averiguar si una palabra pertenece o no al lenguaje en cuesti
on reducen en la
pr
actica los posibles dominios a las subclases enumerables de la clase de los
lenguajes recursivos.
El espacio de hip
otesis es un conjunto de descriptores de los elementos del
dominio de objetos tal que contiene al menos un descriptor para cada elemento
del dominio. Los elementos de este espacio pueden ser gram
aticas, aut
omatas,
m
aquinas de Turing, etc.
El metodo de presentaci
on es el tipo de informaci
on que se utiliza para
aprender. En el caso del aprendizaje activo este puede ser muy diverso e incluir cosas como consultas a or
aculos, solicitudes de determinada informaci
on al
maestro, etc. En el caso del aprendizaje pasivo se distinguen dos tipos b
asicos
de presentaci
on de la informaci
on, presentaci
on positiva y presentaci
on completa. Una presentaci
on positiva es una secuencia, posiblemente infinita, de todas
las palabras del lenguaje a aprender. Una presentaci
on completa es una sucesi
on
de todas las palabras sobre el alfabeto en que est
a descrito el lenguaje etiquetadas seg
un su pertenencia o no al mismo. En la pr
actica diremos que se utiliza
presentaci
on positiva si se aprende exclusivamente a partir de ejemplos, esto es,
de palabras del lenguaje y diremos que se utiliza presentaci
on completa si se
aprende usando tambien contraejemplos, esto es palabras que no pertenecen al
19
lenguaje.
Un metodo de inferencia es una funci
on que hace corresponder una hip
otesis
a cada lenguaje finito, en caso de trabajar con presentaci
on positiva, o a cada
par de lenguajes finitos disjuntos en caso de hacerlo con presentaci
on completa. Tradicionalmente los metodos de inferencia se dividen en dos familias,
enumerativos y constructivos. Los metodos enumerativos se basan en una enumeraci
on del espacio de hip
otesis y proporcionan como resultado la primera
hip
otesis compatible con los datos. Los metodos constructivos elaboran su salida a partir de los datos de entrada. Entre los primeros resultados obtenidos en
el estudio de la inferencia gramatical se encuentra la demostraci
on de que todo
lo que puede ser aprendido mediante metodos constructivos puede ser tambien
aprendido mediante metodos enumerativos. Algunas propiedades consideradas
en general deseables en un metodo de inferencia son la consistencia (en todo
caso la hip
otesis de salida clasifica correctamente todos los datos de entrada) y
la conservaci
on (si la hip
otesis obtenida como salida para un conjunto de datos
D1 es compatible con un superconjunto D2 de D1 entonces el algoritmo produce
la misma salida cuando tiene como entrada D2 ).
El concepto de criterio de exito pretende establecer un sistema de evaluaci
on
de la eficacia del metodo de inferencia. Las primeras ideas sobre el mismo fueron
extradas del concepto de lmite de una sucesi
on por lo que se contempla la
labor de inferencia como un proceso infinito cuyo exito est
a relacionado con
su comportamiento en el lmite. Posteriormente se han definido otros criterios
tanto de tipo probabilstico como basados en la cantidad de datos necesarios
para aprender con determinada aproximaci
on. El criterio de exito mas utilizado
es el de identificaci
on en el lmite, introducido por Gold [14][15], seg
un el cual un
algoritmo de inferencia identifica en el lmite una cierta clase de lenguajes si para
cada elemento L de la misma existe un conjunto de datos tal que para cualquier
superconjunto del mismo compatible con L el algoritmo obtiene como hip
otesis
la misma representaci
on de L. Otros criterios de exito son los de concordancia en
el lmite [13], -identificaci
on en el lmite [34], identificaci
on PAC (probablemente
aproximadamente correcta) [33], etc.
El marco actual de la inferencia gramatical fue establecido por Gold, Feldman y otros a finales de la decada de los sesenta y principios de la de los setenta
del siglo XX. Entre sus principales trabajos destacan aquellos que marcan el
lmite de lo que puede ser aprendido mediante los diferentes tipos b
asicos de presentaci
on. Se demuestra entonces que mediante presentaci
on completa pueden
ser aprendidas las subclases enumerables de la clase de los lenguajes recursivos, mientras que mediante presentaci
on positiva solo pueden ser aprendidas
aquellas clases de lenguajes cuyos elementos pueden ser enumerados de forma
que para cada lenguaje exista un subconjunto finito no incluido en ninguno de
los lenguajes anteriores en la enumeraci
on. Esto supone, entre otras cosas, que
ninguna clase de lenguajes superfinita (que contiene todos los lenguajes finitos
y al menos uno infinito) puede ser aprendida mediante presentaci
on positiva.
Entre las clases superfinitas se encuentran todas las de la jerarqua de Chomsky, en particular la de los lenguajes regulares as como algunas de sus subclases
mas relevantes como, por ejemplo, la de los lenguajes sin estrella (star-free en
20
la terminologa inglesa).
3.2.
3.2.1.
21
3.2.2.
El algoritmo Trakhtenbrot-Barzdin-Gold.
22
0
1
00
01
000
001
0
0
1
2
2
2
2
2
0
0
2
1
0
2
2
00
1
2
1
2
2
2
2
001
2
1
2
2
1
2
2
01
0
2
0
1
2
2
2
1
2
0
2
2
2
1
2
1001
2
1
2
2
2
2
2
110
2
0
2
2
2
2
2
10
2
2
2
2
0
2
2
1
0
1
0
0,1
00
El algoritmo RPNI.
permanece inalterada hasta que en 1992 Oncina y Garca [28] presentan el algoritmo RPNI (regular positive and negative inference) y, simultaneamente, Lang
[24] modifica el algoritmo Trakhtenbrot-Barzdin-Gold para garantizar la consistencia con la muestra de entrada del aut
omata obtenido a
un en el caso de que
esta no sea completa, obteniendo as un algoritmo que se comporta exactamente
igual que el RPNI.
Desde entonces el RPNI ha sido sin duda el algoritmo mas relevante y el mas
utilizado en la inferencia de lenguajes regulares y ha dado lugar al desarrollo de
numerosas variantes algunas de las cuales mencionaremos mas adelante.
Una de las caractersticas mas destacables del RPNI es la introducci
on del
sistema de inferencia mediante fusi
on de estados, metodo del que posteriormente
han hecho uso la mayora de algoritmos y heursticos de inferencia gramatical
de lenguajes regulares.
Dada una muestra, RPNI comienza construyendo una m
aquina de Moore
cuyos estados son los prefijos de la muestra y cuyas transiciones son de la forma
(x, a) = xa. A cada estado se le asigna la salida 0, 1 o ? seg
un este asociado a
una palabra de la muestra positiva, a una de la muestra negativa, o a un prefijo
de alguna palabra de la muestra que no es a su vez una palabra de la misma. A
continuaci
on intenta fusionar cada estado con alguno de los anteriores en orden
lexicogr
afico. Si esta fusi
on da lugar a la aparici
on de no determinismo han de
realizarse adem
as todas las fusiones necesarias para restablecer el determinismo.
Si como resultado de este proceso se produce la fusi
on de un estado con salida
0 con otro con salida 1 se descarta la fusi
on inicial y se prueba con la siguiente.
La fusi
on de un estado con salida s con otro con salida ? da como resultado un
estado con salida s.
Vease un ejemplo en la figura 7.
La complejidad de este algoritmo est
a acotada por mn2 siendo m el tama
no
de la m
aquina de Moore inicial y n el tama
no del automata final. Adem
as, para
cada lenguaje regular L existe una muestra caracterstica de tama
no acotado por
n3 || siendo n el n
umero de estados del aut
omata finito determinista mnimo
para L. Siempre que la muestra de entrada contenga una muestra car
acterstica
de un lenguaje regular L RPNI produce como salida el aut
omata finito determinista mnimo para L. En cualquier otro caso RPNI produce como salida el
aut
omata finito determinista mnimo de un lenguaje compatible con la muestra.
Las prestaciones del RPNI han hecho de el un algoritmo de referencia en
inferencia gramatical en el que se han inspirado otros algoritmos y heursticos
basados igualmente en el metodo de inferencia por fusi
on de estados. De hecho,
desde su aparici
on, la mayor parte de trabajos presentados en el campo de
la inferencia gramatical de lenguajes regulares son heursticos que pretenden
mejorar algunos aspectos del RPNI. Destacan entre estos aquellos basados en
el metodo EDSM (evidence driven state merging) [25]. La idea general de este
metodo consiste en utilizar la informaci
on proporcionada por la muestra de
entrada para guiar el orden en que se realizan las fusiones. As, por ejemplo,
si la fusi
on de dos estados da lugar a sucesivas fusiones por determinizaci
on
de numerosos pares de estados etiquetados con la misma salida es razonable
suponer que ambos estados son efectivamente el mismo.
24
0
1
(C)
1
1
0
0
0
0
0
1
1
0
2
1
(D)
1
0,1
(A)
0
0
0
1
(E)
0
0
0,1
1
2
0
1
(B)
(F )
Inferencia no determinista.
25
presentaci
on razonablede los mismos puede hablarse de identificaci
on mediante
estos de L3 en tiempo y datos polin
omicos.
La utilizaci
on de aut
omatas finitos deterministas tiene en cualquier caso el
inconveniente de que para muchas familias sencillas de L3 el n
umero de estados del aut
omata finito determinista mnimo de cada lenguaje es exponencial
respecto al de los aut
omatas finitos deterministas mnimos para ese lenguaje.
As pues Por que no utilizar algoritmos polin
omicos que infieran en el lmite
la clase de los lenguajes regulares utilizando como representaci
on aut
omatas
finitos?. Al fin y al cabo estos algoritmos siempre pueden ser modificados para
ofrecer como resultado el aut
omata finito obtenido por el RPNI u otro algoritmo
similar en aquellos casos en que no han podido obtener uno de menor tama
no.
El mas conocido de los algoritmos que infieren aut
omatas finitos no deterministas es el DeLeTe2 [9][10][11]. Este algoritmo utiliza como sistema de
representaci
on RFSAs. L3 no es identificable en el lmite en tiempo y datos
polin
omicos respecto a su representaci
on mediante RFSAs, pero sin embargo
DeLeTe2 construye un RFSA consistente con la muestra de entrada en tiempo polin
omico y para cada lenguaje regular es posible construir una muestra
caracterstica de tama
no polin
omico respecto al tama
no del aut
omata finito
determinista mnimo para el lenguaje.
Hay que se
nalar no obstante, que el uso de RFSAs no elimina en muchos casos
el inconveniente se
nalado para los aut
omatas finitos deterministas, pues tambien
para muchas familias de L3 el n
umero de estados de los RFSAs minimales de
cada lenguaje es exponencial respecto al de los aut
omatas finitos mas peque
nos
para
ese
mismo
lenguaje.
Este
es
el
caso,
por
ejemplo,
de
la
familia
indexada
por
n 0i : i admite alg
un divisor mayor que 1 y menor que n en la que el n
umero
de estados crece polin
omicamente respecto a n en el caso de los aut
omatas finitos
y exponencialmente en caso de los RFSAs. Vease un ejemplo de aut
omatas para
un lenguaje de esta familia en la figura 8.
El algoritmo DeLeTe2 es una adaptaci
on del algoritmo de Gold al trabajo
con RFSAs. Se basa en el c
alculo de una relaci
on, que denominaremos y
que definimos a continuaci
on:
Sea S = hS+ , S i una muestra. Se define la relaci
on sobre Pr ef (S+ ) de
forma que u v si no existe ninguna palabra w tal que uw S+ y vw S .
La relaci
on es la clausura transitiva de . Se define adem
as la equivalencia
w de forma que u w v si u v y v u.
Cuando DeLeTe2 recibe como entrada la muestra S act
ua de la siguiente
manera:
Calcula en primer lugar la secuencia Pr ef de prefijos de S+ ordenados en
orden can
onico e inicializa el aut
omata A = hQ, , , I, F i al valor h, , , , i .
A continuaci
on, para cada elemento u de Pr ef mira si existe alg
un estado v
en Q tal que u w v. Si lo hay, elimina de Pr ef todas las palabras de la forma
u . En caso contrario a
nade u a Q, si u a
nade u a I, si u S+ a
nade u
a F y por u
ltimo a
nade a todas las transiciones de la forma hv, a, ui tales que
v Q, va Pr ef y u va y de la forma hu, a, vi tales que v Q, ua Pr ef
y v ua.
El proceso finaliza en el momento en que el aut
omata A es consistente con
26
0
0
(A)
0
0
0
0
0
0
0
0
(B)
Figura 8: (A) Automata finito determinista mnimo, que es ademas un RFSA minimal,
para el lenguaje formado por aquellas palabras cuya longitud es m
ultiplo de alg
un
n
umero i siendo 1 < i n y siendo n = 5. (B) Aut
omata finito minimal para el mismo
lenguaje. Para n = 11 el RFSA minimal tiene 2310 estados mientras que existen
aut
omatas finitos para ese mismo lenguaje con 28 estados.
la muestra S. Puede verse un ejemplo en la figura 9.
Otros algoritmos que infieren aut
omatas finitos son NRPNI [2], variante del
RPNI que trabaja con RFSAs y Ubhc y Uhc [6], variantes del RPNI que trabajan
con aut
omatas finitos inambiguos.
27
0,1
0,1
0
0,1
0,1
0,1
0,1
00
(A)
(B)
0,1
(C)
28
4.
4.1.
Minimalizaci
on de Aut
omatas Finitos.
Introducci
on.
4.2.
4.2.1.
Minimalidad.
Aut
omatas finitos minimales.
29
0
1
0,1
0
1
1
0,1
1
1
0,1
(A)
(B)
Figura 10: (A) Automata finito determinista mnimo para {0, 1} 0 {0, 1}2 . (B) Un
aut
omata minimal para el mismo lenguaje.
1,2
0,1
Figura 11: Dos automatas minimales para el lenguaje {01, 02, 12}.
excesivamente complejos que en ciertos casos consiguen aproximaciones relativamente buenas.
El primer avance significativo lo establecieron Arnold, Dicky y Nivat en [1]
donde demuestran que cualquier aut
omata minimal para un lenguaje regular L
es isomorfo a un subaut
omata del aut
omata universal para L. Este resultado
fija un espacio de b
usqueda finito pero muy grande, pues el n
umero de estados
del aut
omata universal puede llegar a ser de hasta 2n , siendo n el n
umero de
estados del aut
omata finito determinista mnimo.
Pol
ak en [30] expone una serie de condiciones, necesarias unas y suficientes
otras, para que el subaut
omata del aut
omata universal inducido por un subconjunto de estados acepte el lenguaje completo. Estas condiciones pueden ser
testeadas en tiempo polin
omico respecto al tama
no del aut
omata universal y
pueden ser utilizadas como guas en la b
usqueda sistem
atica de minimales. Evidentemente, esta aproximaci
on no es en absoluto eficiente en la pr
actica.
Kameda y Weiner, en [23], han desarrollado una teora para abordar el problema de la minimalizaci
on. Para cada aut
omata finito definen una matriz que
denominan mapa reducido de estados del aut
omata, de la que demuestran que
es isomorfa a la de cualquier otro aut
omata finito para el mismo lenguaje, ad30
mitiendo tan solo permutaciones de las filas y columnas. A partir de este mapa
reducido pueden obtener una secuencia de aut
omatas ordenada en cuanto a
n
umero de estados que son aut
omatas minimales. Sin embargo la construcci
on
no garantiza que en todos los casos el aut
omata obtenido sea equivalente al
original, por lo que esto debe comprobarse, comprobaci
on que como sabemos es
de complejidad P SP ACE completo.
Otros autores presentan aproximaciones cuyo objetivo no es ya la b
usqueda
de aut
omatas minimales sino simplemente de aut
omatas mas peque
nos equivalentes al original. Algunos de estos algoritmos han probado bastante eficacia en
ciertos casos, pero est
an lejos de garantizar siquiera la obtenci
on de aut
omatas
polin
omicos en tama
no respecto al aut
omata finito determinista mnimo para
el lenguaje.
4.2.2.
Minimalidad relativa.
0,1
0,1
Una soluci
on ser
a minimal si no existe otro aut
omata finito con menos estados, para el mismo lenguaje o para cualquier otro, compatible con la muestra.
La obtenci
on de una soluci
on minimal [15] es un problema N P duro a
un en
el caso de restringir el espacio de b
usqueda al de las aut
omatas finitos deterministas. Si prescindimos de la condici
on de minimalidad el problema deviene
trivial. Una vez mas surge la necesidad de buscar una situaci
on de compromiso
entre ambos extremos. Para el caso de los aut
omatas finitos deterministas se
han dise
nado algoritmos polin
omicos [28][24] que proporcionan una soluci
on y
adem
as garantizan que esta es mnima cuando los conjuntos M+ y M satisfacen determinadas condiciones, pero en el de los aut
omatas finitos no se han
encontrado algortmos de caractersticas similares.
En resumidas cuentas, parece que estamos todava lejos de encontrar algortmos no ya que permitan resolver el problema de la minimalizaci
on, si no
que tan siquiera consigan aproximaciones razonables con una cierta garanta.
Dejamos aqu esta cuesti
on y pasamos a estudiar otras formas de abordar el
problema de la obtenci
on de aut
omatas finitos peque
nos.
31
4.3.
Irreducibilidad.
4.3.1.
Aut
omatas finitos irreducibles.
2,3
2
0
1
0
0
3
1
2
0,1
0
5
0
5
(A)
(B)
5
0,1
3,4
(C)
Figura 13: (A) Automata finito reducible. (B) y (C) Diferentes automatas cocientes
de (A) equivalentes a el e irreducibles.
Una de las primeras preguntas que uno puede plantearse a la hora de abordar este problema es si est
a o no acotado de alguna manera, esto es, si dado
un lenguaje regular existen aut
omatas finitos irreducibles que lo aceptan con
cualquier n
umero de estados. C
ampeanu, S
antean y Yu han planteado recientemente este problema en los siguientes terminos:
Sea L un lenguaje regular arbitrario y k 2 un entero arbitrario. Existe (y
si la respuesta es si, construir) una constante EL,k tal que cualquier aut
omata
finito para L de tama
no mayor o igual a EL,k contiene al menos k estados
fusionables?
32
0,1
0,2
X
0
0,1
0,1,2
0,1
1,2
X
(A)
(B)
Figura 14: Los nodos marcados del automata (A) pueden mezclarse para obtener el
aut
omata equivalente (B), pero dado que cada estado tiene lenguajes por la derecha y
por la izquierda diferentes a los de los dem
as, la fusi
on no es detectada por los metodos
basados en la congruencia de Nerode.
NL
Estados fusionables.
Definici
on 32 Sea Q un conjunto y sea P un subconjunto del mismo. Llamaremos P a la partici
on de Q en la que P es un bloque y cada uno de los dem
as
bloques est
a formado por un u
nico elemento.
Definici
on 33 En un aut
omata finito A = hQ, , , I, F i, un conjunto P de
estados es fusionable si L(A/P ) = L(A).
Equivalentemente, los estados de P son fusionables si el aut
omata finito con
transiciones vacas resultante de a
nadir a una de tales transiciones desde cada
33
p,qP
qP
Demostraci
on. Demostraremos
S
S primero
S que
L(A/P ) L(A) (
Lq )(
Ipq ) (
Rq ) :
qP
p,qP
qP
qP
p,qP
qP
p,qP
qP
Demostraci
on. Se desprende trivialmente del teorema anterior.
Dado que la verificaci
on de la anterior desigualdad no es realizable mediante
algoritmos eficientes, la mayora de heursticos para la reducci
on mediante fusi
on
del n
umero de estados se basan en condiciones suficientes aunque no necesarias
similares a la enunciada en el siguiente lema:
Lema 36 Sea A = hQ, , , I, F i un aut
omata finito con transiciones vacas y
sean q1 y q2 dos estados de Q. Si q1 y q2 tienen el mismo lenguaje por la derecha
entonces son fusionables.
Demostraci
on. Demostraremos en primer lugar que si Rq1 = Rq2 entonces
Proposici
on 37 [1]. Sea U el aut
omata universal de un lenguaje regular L y
sea A = hQ, , , I, F i un aut
omata finito que acepta un subconjunto cualquiera
de L. La funci
on que asigna a cada estado q de A el estado de U (q) =
x1 L es un homomorfismo de A en U .
xLA
q
35
2
0,1
1,2
0,1
1,2
0,1,2
6
0
0,1,2
0,2
0,2
(B)
2,5
2,5
0,1,2
0,1
0,1,2
0,1
0,1,2
6
0
(A)
1,2
0,1
0,1
1,2
8
0,1,2
6
0
3
4
(C)
(D)
Figura 15: (A) Automata finito cuyo lenguaje genera las clases
{}, {0}, {1, 2}, {00, 01, 03, 10, 11, 12, 20, 21, 22}, y otra formada por las dem
as
palabras. A los estados 2 y 5 llegan palabras de las mismas clases, la {0}, y la {1, 2}
cuyos buenos finales comunes forman el lenguaje {0, 1}. (B) Agregamos el aut
omata
para el lenguaje {0, 1} y dirijimos a su estado inicial transiciones vacas desde los
estados 2 y 5. Esto no vara el lenguaje reconocido. (C) Ahora los estados 2 y 5
tienen el mismo lenguaje por la derecha, por lo que podemos fusionarlos sin alterar
el lenguaje reconocido. (D) Si eliminamos el subaut
omata agregado obtenemos un
aut
omata cociente del original y equivalente al mismo.
Llamaremos homomorfismo can
onico a ese homomorfismo.
Comentario 38 Sea U = (U, , , I, F ) el aut
omata universal de un lenguaje regular L. Para cada estado q de U sea {x1 , ..., xn } un conjunto maximal
1
de palabras tal que para i, j {1, ..., n} , si i 6= j, entonces x1
i L 6= xj L
n
y q = x1
i L. Se puede apreciar facilmente que cada palabra de [x i ]L ali=1
canza el estado x1
on de la funci
on de transici
on de U ,
i L y, por la definici
alcanza cualquier estado de U que sea un subconjunto de x1
L.
Por
tanto
i
36
LU
q = [xi ]L .
I=1
i,j=1
i=1
L
Teorema 41 Sea A = hQ, , , I, F i un aut
omata finito para el lenguaje L. Si
|Q| > (k 1)2NL el aut
omata A contiene al menos k estados fusionables.
Demostraci
on. El n
umero de estados del aut
omata universal est
a acotado por
2NL . Por el principio de la caja de Dirichlet, si |Q| > (k 1)2NL , al menos k
tendr
an la misma imagen bajo .
La cota calculada no puede ser reducida. Para demostrarlo, dado que el
aut
omata universal de un lenguaje regular no contiene estados fusionables, es
suficiente con definir para cada alfabeto una familia de aut
omatas finitos
deterministas mnimos tales que las intersecciones de sus lenguajes residulales
son todas diferentes entre s y cuyos aut
omatas universales tienen, por tanto,
2NL estados. Para n 2 considerese el aut
omata A(n) = (Zn , , , 0, Zn {0})
con funci
on de transici
on definida como sigue:
Para cada estado i en Zn y cada smbolo a, (i, a) = (i + 1)modn. Vease
como ejemplo el aut
omata A(3) y su aut
omata universal en la figura 16.
Demostraremos ahora un resultado adicional:
Teorema 42 Sea A = hQ, , , I, F i un aut
omata finito para el lenguaje L y
sea U el aut
omata universal de L. Los estados q1 y q2 de A son fusionables si
y solo si existe alg
un homomorfismo de A en U tal que (q1 ) = (q2 ).
37
1
0
1,2
0,2
0,1
(A)
(B)
Figura 16: (A) Automata finito determinista mnimo para el lenguaje formado por
aquellas palabras cuya longitud no es m
ultiplo de tres. (B) Aut
omata universal para
el mismo lenguaje en el que se han suprimido los estados in
utiles correspondientes a
la intersecci
on de todos los estados del mnimo y a la de ninguno.
Demostraci
o
n. En primer lugar, si existe el homomorfismo entonces
L A/{q1, q2 } L((A)) L (U ) L(A) y por tanto q1 y q2 son fusionables.
Y, en segundo lugar, si q1 y q2 son fusionables sea el homomorfismo can
onico
de A/{q1, q2 } en U . Entonces la funci
on de Q en U tal que a cada estado p de
Q {q1 , q2 } le asigna ((p)) y (q1 ) = (q2 ) = ((q1 )) es un homomorfismo
de A en U tal que (q1 ) = (q2 ).
En terminos de la congruencia por la derecha de Nerode el teorema anterior
significa que los estados q1 y q2 de A son fusionablesSsi y solo si existe un conjunto
finito de palabras {xi } tal que Lq1 Lq2
[xi ]L(A) y Rq1 Rq2
xi {xi }
T
x1
i L(A).
xi {xi }
Irreducibilidad relativa.
38
a0
a1
a2
l0
l1
u0
0
0
u1
0
(A)
(B)
(C)
Figura 17: (A) Automata finito A para el lenguaje 0 00. (B) y (C) Automata finito determinista mnimo y Aut
omata universal para el lenguaje L = 0 0. A no es irreducible
en L pues el homomorfismo h(a0 ) = h(a1 ) = u0 , h(a2 ) = u1 no es inyectivo.
Demostraci
on. Por el lema anterior es suficiente con demostrar la implicaci
on
. Dado que el conjunto Q es finito tambien lo es el conjunto {i } de sus
particiones no triviales. Puesto que A es irreducible, para cada partici
on no
trivial i existe al menos una palabra que no pertenece a L(A) y si a L(A/i ).
Sea, para cada i, xi la menor en orden can
onico de tales palabras, sea {xi } el
lenguaje finito formado por ellas y sea L = {xi }. Entonces A es irreducible en
L.
Lema 48 Sea A = hQ, , , I, F i un aut
omata finito, sean P1 y P2 subconjuntos
de Q y sean q1 P1 y q2 P2 . Entonces L(A/{qi ,qj } ) * L L(A/P1 P2 ) *
L.
Demostraci
on. Se desprende trivialmente del hecho de que para toda partici
on
de Q, L(A) L(A/).
Teorema 49 El problema de dados un aut
omata finito A = hQ, , , I, F i y un
lenguaje finito M L(A) encontrar un aut
omata finito A0 de tama
no menor
o igual que A e irreducible en M tal que L(A) L(A0 ) es polin
omico respecto
a |Q| y kM k .
Demostraci
on. Sea Q = {q1 , ..., qn } y sea M = {x1 , ..., xm } . Supongamos que
en el aut
omata A/{qj ,qi } el estado {qj , qi } recibe como nombre qj . El algoritmo
A0 = A
DESDE i = 2 HAST A n
DESDE j = 1 HAST A i
SI qj es un estado de A0
compatible = CIERT O
DESDE k = 1 HAST A m
SI xk L(A0 /{qj ,qi } )
compatible = F ALSO
SI compatible
A0 = A0 /{qj ,qi }
computa un aut
omata A0 con las caractersticas requeridas. (Vease un ejemplo en la figura 18).
Ya hemos visto que un aut
omata finito determinista A = hQ, , , I, F i es
irreducible si y solo si es mnimo. Pero puede ocurrir que A no sea irreducible
en un lenguaje L y sin embargo no exista ninguna partici
on de Q tal que
L(A/) L y A/ sea un aut
omata finito determinista. Cabe entonces introducir el concepto de irreducibilidad determinista relativa.
Definici
on 50 Un aut
omata finito determinista A = hQ, , , I, F i es deterministicamente irreducible en un lenguaje L si y solo si L(A) L y no existe
ninguna partici
on de Q tal que L(A/) L y A/ sea un aut
omata finito
determinista.
40
1,3
0
1,3
(D)
(C)
0
1
(B)
1
1
5
(A)
2,4
1
1
0
1,2
(E)
Figura 18: Se pretende obtener un automata finito a partir del mostrado en (A)
irreducible respecto a M = {001, 010}. Se prueba a fusionar primero los estados 1
y 2, pero el aut
omata obtenido acepta la palabra 001. A continuaci
on se prueba a
fusionar 1 y 3 obteniendose el de la figura (B), compatible con la muestra. Se desecha
la mezcla de {1, 3} y 4 que acepta 010 y se prueba con 2 y 4 resultando el aut
omata
(C). Dado que 5 no puede mezclarse ni con {1, 3} ni con {2, 4} (C) es el aut
omata
buscado. (D) y (E) muestran que una ordenaci
on diferente de los nodos produce un
resultado diferente. Los intentos de mezcla pueden en realidad hacerse en cualquier
orden aleatorio.
4.4.
4.4.1.
Concisi
on.
Aut
omatas finitos concisos.
Un aut
omata finito es conciso si no contiene estados superfluos, esto es, si
la eliminaci
on de cualquier estado del aut
omata junto con las transiciones que
acceden a el o parten de el da lugar a un aut
omata que no es equivalente al
original.
41
Un aut
omata finito determinista es conciso si y solo si es aseado. En otras
palabras un estado de un aut
omata finito determinista es superfluo si y s
olo si
es in
util. Debido a ello la eliminaci
on de los estados superfluos puede realizarse
mediante algortmos lineales. Tambien en el caso de los aut
omatas finitos en
general la eliminaci
on de los estados in
utiles puede hacerse linealmente, pero en
este caso nos encontramos con que no todos los estados superfluos son in
utiles.
De hecho, los problemas de dado un aut
omata finito averiguar si es o no conciso
y de dado un estado de un aut
omata finito averiguar si es o no superfluo son
P SP ACE completos.
En esta situaci
on nos planteamos la misma cuesti
on ya resuelta en el caso de
los aut
omatas irreducibles: Dado un lenguaje regular existen aut
omatas finitos
concisos arbitrariamente grandes que lo acepten o, por el contrario, existe una
constante asociada al lenguaje tal que todo aut
omata finito que lo acepte de
tama
no mayor a ese valor contiene necesariamente estados superfluos?. Como
veremos, en este caso la respuesta es muy distinta a la obtenida en aquel.
4.4.2.
Estados superfluos.
Definici
on 52 Sea A = hQ, , , I, F i un aut
omata finito y sea P un subconjunto de Q. Denominaremos AP al subaut
omata de A inducido por Q P.
Por lo tanto,
AP = hQ P, , (P Q) (Q P ), I P, F P i.
Definici
on 53 Sea A = hQ, , , I, F i un aut
omata finito y sea P un subconjunto de Q. Diremos que el subconjunto P es superfluo si L (AP ) = L (A) .
Puede ocurrir que los subconjuntos P1 y P2 sean superfluos y que sin embargo
P1 P2 no lo sea, pues aunque P2 sea superfluo en A no tiene por que serlo en
AP1 .
Lema 54 Sea L un lenguaje finito y sea ||L|| la suma de las longitudes de las
palabras de L. El aut
omata finito para L de mayor tama
no sin estados superfluos
contiene ||L|| + |L| estados.
Demostraci
on. Sea M CA(L) el aut
omata finito maximal para L. Este aut
omata contiene ||L|| + |L| estados, ninguno de los cuales es superfluo. Cada estado
corresponde a un par prefijo-sufijo de una palabra de L. Este aut
omata utiliza
un subconjunto de estados en el proceso de cada palabra x de tama
no |x| + 1, el
m
aximo posible, y adem
as disjunto al utilizado en el proceso de cualquier otra
palabra. Cualquier otro aut
omata que reconozca L podr
a hacerlo utilizando como m
aximo ||L|| + |L| estados por lo que si tiene mas, algunos ser
an superfluos.
Teorema 55 Todo lenguaje regular infinito es aceptado por aut
omatas finitos
arbitrariamente grandes sin estados superfluos.
42
Demostraci
on. Sea L un lenguaje regular infinito. Entonces existe una palabra
x de L que admite una factorizaci
on x = uvw tal que v 6= y uv w L.
Sea A1 un aut
omata finito sin estados superfluos para L uv w. Sea, para
cada n 0, A2,n el aut
omata finito determinista mnimo para uv n w y A3,n
n
el aut
omata finito determinista mnimo para uv w uv i w. Cada aut
omata
i=0
Adem
as, siendo Qn el conjunto de estados de An tenemos que |Qn | > |Qn1 | .
En la figura 19 puede verse un ejemplo de esta construcci
on.
0,1
0,1
A1
A
0
A2,0
A2,1
0
A2,2
A3,2
Figura 19: Para obtener automatas arbitrariamente grandes equivalentes a A seleccionamos una palabra de L(A), 0 en este caso, y la dividimos en tres factores, en el
ejemplo u = , v = 0, w = , de forma que uv w L(A). Ahora, para cualquier
valor de n, 2 en el ejemplo, obtenemos los aut
omatas A1 : L(A1 ) = L(A) uv w,
i
A2,i , 0 i n tales que L(A2,i ) = uv w y por u
ltimo A3,n : L(A3,n ) = {uv j w, j > n}.
El aut
omata resultante de la uni
on de todos ellos es equivalente a A, no tiene estados
superfluos y el n
umero de estados crece estrictamente con el valor de n.
4.4.3.
Aut
omatas finitos concisos irreducibles.
43
n1
estados. Sea LR
=
0
el
reverso
de
L
.
El
aut
o
mata
finito
determinista
n
n
n
mnimo para LR
omata finito
n tiene 2 estados, por lo que su reverso es un aut
conciso e irreducible para Ln con 2NLn 2 estados.
Vease en la figura 20 el caso para = {0, 1} y n = 2.
0,1
0
1
0,1
0,1
0
1
0
1
1
0
0
1
(A)
(B)
Figura 20: (A) Automata finito determinista mnimo para {0, 1} 2 0 {0, 1} . (B) Un
aut
omata irreducible y conciso para el mismo lenguaje.
4.4.4.
Concisi
on relativa.
Por motivos similares a los expuestos para introducir el concepto de irreducibilidad relativa introducimos ahora el de concisi
on relativa:
Definici
on 57 Un aut
omata finito A = hQ, , , I, F i es conciso en el lenguaje
L si y solo si L(A) L y para todo subconjunto no vaco P de Q se cumple que
L L(AP ) 6= .
Lema 58 Un automata finito A es conciso si y solo si existe alg
un lenguaje L
tal que A es conciso en L.
44
Demostraci
on. La implicaci
on se deduce de que si A es conciso entonces
es conciso en L(A). Para demostrar la implicaci
on es suficiente con observar
que, puesto que L(A) L, si L(AP ) no acepta alguna palabra que pertenece
a L entonces tampoco acepta una palabra (la misma) que pertenece a L(A).
Lema 59 Un automata finito A = hQ, , , I, F i es conciso si y solo si existe
alg
un lenguaje finito L tal que A es conciso en L.
Demostraci
on. Por el lema anterior es suficiente con demostrar la implicaci
on
: Dado que el conjunto Q es finito tambien lo es el conjunto {Pi } de sus
subconjuntos no vacos. Puesto que A es conciso, para cada subconjunto no
vaco Pi existe al menos una palabra que pertenece a L(A) y no a L(APi ). Sea,
para cada i, xi la menor en orden can
onico de tales palabras, sea L = {xi } el
lenguaje finito formado por ellas. Entonces A es conciso en L.
Lema 60 Sea A = hQ, , , I, F i un aut
omata finito, sea P un subconjunto de
Q y sea q P. Entonces L(Aq ) + L L(AP ) + L.
Demostraci
on. Se desprende trivialmente del hecho de que para todo subconjunto P de Q, L(A) L(AP ).
Teorema 61 El problema de dados un aut
omata finito A = hQ, , , I, F i y un
lenguaje finito M+ L(A) encontrar un aut
omata finito A0 con un n
umero de
estados menor o igual que el de A conciso en M+ tal que L(A) L(A0 ) es
polin
omico respecto a |Q| y kM+ k .
Demostraci
on. Sea Q = {q1 , ..., qn } y sea M+ = {x1 , ..., xm } . El algoritmo
A0 = A
DESDE i = 1 HAST A n
compatible = CIERT O
DESDE j = 1 HAST A m
SI xj
/ L(A0qi )
compatible = F ALSO
SI compatible
A0 = A0qi
computa un aut
omata A0 con las caractersticas requeridas.
El aut
omata obtenido depender
a del orden establecido entre los estados de
Q. Vease por ejemplo la figura 21.
4.4.5.
Irreducibilidad y concisi
on relativas.
1
1
1
1
0
7
6
0
0
1
1
0
1
4
1
7
1
4
1
5
A{3,6,9}
1
9
2
0
0
6
0
7
0
0
A{3,6}
1
1
3
0
7
A{3}
6
0
A
1
1
0
1
4
1
0
0
7
0
0
2
0
1
5
0
1
A{1,3,6}
Notaci
on 62 A lo largo de este apartado, denominaremos Irreducible(A, L)
y Conciso (A, L) a cualquier aut
omata obtenido a partir de A utilizando los
algoritmos descritos anteriormente para la obtenci
on de aut
omatas irreducibles
en L y concisos respecto a L respectivamente.
Lema 63 Sean M+ y M dos lenguajes finitos tales que M+ M = . Sea
A = hQ, , , I, F i un aut
omata finito tal que M+ L(A) M . Entonces
M+ L(Irreducible(A, M )) y L(Conciso (A, M+ )) M .
Demostraci
on. Se deduce trivialmente del hecho de que
L(A) L(Irreducible(A, M )) y L(Conciso (A, M+ )) L(A).
Lema 64 Sean M+ y M dos lenguajes finitos tales que M+ M = . Sea
A = hQ, , , I, F i un aut
omata finito irreducible en M y tal que M+ L(A).
El aut
omata Conciso (A, M+ ) no es necesariamente irreducible en M . En otras
46
1
1
2
0
1
4
(A)
(B)
0
0
2
1
(C)
Figura 22: (A) Este automata es irreducible en M siendo M = {, 1, 10, 110}, pero
no es conciso respecto a M+ = {0010}. Aplicando el algoritmo obtenemos (B) que es
conciso respecto a M+ pero no irreducible en M ya que podemos unir los estados 2
y 3 obteniendo (C) que es irreducible en M y conciso respecto a M+ .
Lema 65 Sean M+ y M dos lenguajes finitos tales que M+ M = . Sea
A = hQ, , , I, F i un aut
omata finito conciso en M+ y tal que L(A) M .
El aut
omata Irreducible A, M no es necesariamente conciso en M+ . En
otras palabras Conciso(A,
M+ ) = A ; Conciso(Irreducible(A, M ), M+ ) =
Irreducible A, M .
Demostraci
on. Sean M+ = {2, 01, 10, 20, 21} , M = {, 0, 00, 11, 22, 200} , A =
h{1, 2, 3, 4, 5, 6} , {0, 1, 2} , , {1}, {2, 6}i con =
{h1, 2, 2i , h1, 1, 3i , h1, 0, 4i , h1, 2, 4i , h1, 2, 5i , h3, 0, 6i , h4, 1, 6i , h5, 0, 6i , h5, 1, 6i} .
Entonces L(A) es conciso en M+ y est
a incluido en M . Sea hQi = h1, 2, 3, 4, 5, 6i .
Entonces Irreducible(A, hQi , M ) = A0 = h{1, 2, 4, 5, 6} , {0, 1, 2} , 0 , {1}, {2, 6}i
con 0 =
{h1, 1, 2i , h1, 2, 2i , h1, 0, 4i , h1, 2, 4i , h1, 2, 5i , h2, 0, 6i , h4, 1, 6i , h5, 0, 6i , h5, 1, 6i}
que no es conciso en M+ ya que el estado 5 es superfluo. Vease la figura 23.
Teorema 66 El problema de dados dos lenguajes finitos M+ y M tales que
M+ M = encontrar un aut
omata finito A conciso en M+ e irreducible en
M es polin
omico respecto a kM+ k y kM k .
47
1
1
2
0,2
2
2
0,1
1,2
0
6
0,2
1,2
0
4
0,2
0
4
0,1
(A)
(B)
(C)
Figura 23: (A) Este automata es conciso respecto a M+ = {2, 01, 10, 20, 21} pero
no es irreducible en M siendo M = {, 0, 00, 11, 22, 200}, ya que podemos unir los
estados 2 y 3 obteniendo (B) que es irreducible en M pero no conciso respecto a
M+ ya que podemos eliminar el estado 5 obteniendo (C) que es irreducible en M y
conciso respecto a M+ .
Demostraci
on. Cualquier algoritmo de la forma
A = ACM (M+ )
REP ET IR
A0 = A
A = Conciso(Irreducible(A, M ), M+ )
HAST A A = A0
resuelve el problema y es polin
omico respecto a kM+ k y kM k ya que lo son
los algoritmos Conciso e Irreducible y dado que o bien A0 = A o bien A tiene
estrictamente menos estados que A0 , el bucle REP ET IR se ejecutar
a como
mucho kM+ k + |M+ | veces.
48
5.
Redes de aut
omatas cocientes.
5.1.
0,1
A/{0,1}
1,2
A/{1,2}
La afirmaci
on anterior puede no obstante sustituirse por la siguiente, mas
debil:
Lema 67 L L0 A, A0 : L(A) = L, L(A0 ) = L0 , A A0 .
Demostraci
on. Sean A00 = hQ00 , , 00 , I 00 , F 00 i y A0 = hQ0 , , 0 , I 0 , F 0 i los
aut
omatas finitos deterministas completos mnimos de L y L0 respectivamente.
Sea A = hQ, , , I, F i tal que Q = Q00 Q0 , I = I 00 I 0 , F = F 00 F 0 , y
(hq 00 , q 0 i , a) = 00 (q 00 , a) 0 (q 0 , a). Entonces evidentemente L(A) = L y adem
as
A0 = A/ siendo (hq 00 , q 0 i) = {hq, q 0 i , q Q00 } .
49
0
1
1
2
3
0
1
4
0,1
0
1,1
0
1
2
1
1
1
1
2,2
3,1
0
4,1
4,2
A00
A0
5.2.
A continuaci
on exponemos una definici
on y un teorema extrados de [12] y
adaptados a la definici
on de aut
omata finito con la que nosotros trabajamos.
50
0,1
1
1
1,2
2
0
0,1
0
3
0,1
0,1
4,5
1
A0
0,1
0
1
0
0,1
0
2
3
1
A00
Figura 26: A A0 puesto que existe el homomorfismo h0 (1) = h0 (2) = {1, 2}, h0 (3) =
{3}, h0 (4) = h0 (5) = {4, 5}, y h0 (A) = A0 . Sin embargo no es cierto que A A00 ya que
el u
nico homomorfismo de A en A00 es h00 (1) = h00 (2) = 1, h00 (3) = 2, h00 (4) = h00 (5) =
3, y h00 (A) 6= A00 .
Definici
on 70 Un lenguaje finito L es estructuralmente completo respecto a un
aut
omata finito A = hQ, , , I, F i si L L(A) y existe una aceptaci
on de L
por A tal que utiliza cada transici
on de A, cada estado de I es utilizado como
estado inicial y cada estado de F es utilizado como estado final.
Teorema 71 Sea L un lenguaje finito. El aut
omata A = hQ, , , I, F i pertenece
a Lat(M CA(L)) si y solo si L es estructuralmente completo respecto a A.
Demostraci
on. Demostraremos en primer lugar la condici
on si. Basta para
ello con considerar el homomorfismo de M CA(L) en A tal que a cada estado
hx, yi de M CA(L) le hace corresponder el estado de A accedido tras procesar x
en la aceptaci
on de xy.
Simetricamente, para demostrar la condici
on solo sipartimos del hecho
de que si A pertenece a Lat(M CA(L)) entonces existe un homomorfismo h :
M CA(L) A tal que A = h(M CA(L)). La aceptaci
on de L por A tal que en el
proceso de cada palabra xy el estado accedido tras procesar x es h(hx, yi) cumple
las condiciones suficientes para afirmar que L es estructuralmente completo
respecto a A.
Intuitivamente podra parecer que para todo aut
omata finito ha de existir alg
un lenguaje finito estructuralmente completo respecto a el, y de hecho
no sabemos que nadie haya mencionado lo contrario. Sin embargo, aunque eso
es cierto para los aut
omatas finitos deterministas aseados, no lo es para los
aut
omatas finitos en general, ni siquiera para aquellos con un solo estado inicial, irreducibles y que no contienen estados superfluos ni tampoco para los
aut
omatas universales de algunos lenguajes:
Lema 72 Existen aut
omatas finitos para los que no existe ning
un lenguaje estructuralmente completo respecto a ellos.
Demostraci
on. Vease la figura 27.
51
X
0,1
0
X
0,2
0,3
1,2
1,3
0,1
1
1
3
X
0
2
1
(A)
(B)
Figura 27: (A) Automata finito irreducible, sin estados superfluos y con solo un estado
inicial. Los estados marcados pueden ser utilizados como finales u
nicamente en la
aceptaci
on de palabras del conjunto {0, 1, 2, 3}. Dado que este conjunto est
a formado
por cuatro palabras mientras que hay cinco estados marcados, es imposible construir
un lenguaje finito en cuya aceptaci
on se utilicen todos ellos como finales. (B) Aut
omata
universal para el lenguaje 0 + 1 . El estado 1 solo puede ser utilizado como final en
la aceptaci
on de la palabra y el estado 2 solo puede ser utilizado como inicial en
la aceptaci
on de esa misma palabra, por lo que no existe ning
un lenguaje en cuya
aceptaci
on se utilice 1 como final y 2 como inicial.
52
estado puede dejar de serlo sin alterar el lenguaje reconocido por el aut
omata.
En estas condiciones, para no interferir en la legibilidad de algunos enunciados, identificaremos cada aut
omata finito con el o los subaut
omatas Linferibles
maximales del mismo, excepto cuando esta identificaci
on pueda afectar a la
validez general de un anunciado.
Vease por ejemplo la figura 28.
X
0,1
0
X
0,2
0,3
1,2
1,3
1
1
3
X
0
0,1
2
1
(A)
(B)
0,1
0,1
0,1
0,1
(A)
0,1
(B)
0,1
1
(C)
0,1
1
0
(D)
1
0,1
(E)
0,1
(F)
Aplicaciones a la inferencia de L3 .
Teorema 82 La clase de los lenguajes regulares es inferible en el lmite mediante datos positivos y un or
aculo para la inclusi
on.
Demostraci
on. Basta con considerar cualquier algortmo que pruebe a unir
en un orden cualquiera pares de estados del M CA de la muestra, conservando
como nueva hip
otesis el aut
omata resultante si este es aceptado por el or
aculo.
El proceso termina cuando ya no se pueden fusionar mas estados tras un n
umero
de como m
aximo n(n 1)/2 intentos de fusi
on siendo n el n
umero de estados
del M CA de la muestra. Si la muestra es estructuralmente universal para el
lenguaje objetivo se obtendr
a como resultado del proceso un aut
omata finito
irreducible que lo reconoce.
Si los datos se van proporcionando secuencialmente basta con, por ejemplo,
averiguar si la nueva palabra es aceptada por la hip
otesis actual y en caso de
55
0
0
0
(A)
0
(B)
(C)
(D)
(E)
(F)
(G)
(H)
5.3.
Definici
on 83 Dados dos aut
omatas finitos A y A0 tales que L(A) L(A0 ) =
llamaremos semired de cocientes asociada a A y A0 al conjunto SemiLat(A, A0 )
formado por aquellos elementos A00 de Lat(A) tales que L(A00 ) L(A0 ) = . Por
extensi
on llamaremos SemiLat(A, L) al conjunto formado por aquellos elemen-
56
1
1
A0
A
1
0
1,3
1
0
2,3
2,4
1
1
0
0
A1
1
3
A2
A3
0,1
1
1
0
1,3
1
3,4
A4
0
2,4
2,3,4
A5
A6
A
A1
A3
A2
A5
A4
A6
57
Demostraci
on. El razonamiento es el mismo que en el lema anterior.
Teorema 93 Para todo lenguaje regular L existen lenguajes finitos S 1 y S2
tales que BSM CA (S1 , S2 ) es el conjunto formado exclusivamente por todos los
aut
omatas finitos irreducibles que reconocen L.
Demostraci
on. Sea S1 una muestra estructuralmente universal de L. Entonces
para cualquier aut
omata finito A irreducible en L, A Lat(M CA(S1 ))
L(A) = L. Esto es, en la red Lat(M CA(S1 )) est
an todos los aut
omatas finitos irreducibles que aceptan L y adem
as esos son los u
nicos aut
omatas finitos
irreducibles en L que figuran en la red. Por tanto BS(M CA(S1 ), L) es el conjunto formado exclusivamente por todos los aut
omatas finitos irreducibles que
reconocen L. Basta ahora con escojer S2 de forma que BS(M CA(S1 ), S2 ) =
BS(M CA(S1 ), L). La existencia de tal S2 est
a garantizada por el lema anterior.
Teorema 94 Para toda muestra estructuralmente universal S1 de un lenguaje
regular L existe un lenguaje finito S2 tal que todo aut
omata finito A irreducible
en S2 que satisface S1 L(A) reconoce L.
Demostraci
on. Se desprende directamente de las propiedades de una muestra
estructuralmente universal y de los resultados anteriores.
Definici
on 95 Llamaremos muestra completa universal de un lenguaje regular
L a cualquier par de lenguajes finitos S1 y S2 tales que BSM CA (S1 , S2 ) es el
conjunto formado exclusivamente por todos los aut
omatas finitos irreducibles
que reconocen L.
Veamos a continuaci
on un resultado negativo que en cierta forma limita la
caracterizaci
on de los lenguajes regulares mediante pares de lenguajes finitos.
Teorema 96 No es cierto que para cada lenguaje regular L existen lenguajes
finitos S1 y S2 tales que para lenguajes finitos cualesquiera S10 , S20 , se cumpla
que si S1 S10 L y S2 S20 L entonces necesariamente BSM CA (S10 , S20 )
contiene exclusivamente aut
omatas finitos que reconocen L.
Demostraci
on. Sea por ejemplo L = (aa) . Supongamos la existencia de
2n+1
los citados S1 y S2 y sea
la palabra de mayor longitud en S2 . Sea
a
0
2n+2 2n+4
S1 = S 1 a
, a
. Entonces
unir los estados de M CA(S1 )
2n+3podemos
2n+2
correspondientes a a
, y a
, a obteniendo as un aut
omata finito
perteneciente a Lat(M CA(S10 )) e incluido en S2 que sin embargo acepta la
palabra a2n+3 que no pertenece a L. Esta palabra ser
a aceptada tambien por
cualquiera de sus cocientes por lo que BSM CA (S10 ,S2 ) contendr
a al menos un
aut
omata finito que no reconoce L.
59
5.3.1.
Aplicaciones a la inferencia de L3 .
Veremos a continuaci
on que el resultado anterior no plantea restricciones tan
fuertes a la inferencia en el lmite de L3 como pudiera parecer.
Teorema 97 Dadas una muestra positiva S+ = {xi }1in y otra negativa S
de un lenguaje, cualquier algortmo de la forma
A = h, , , , i
Desde i = 1 Hasta n
Si xi
/ L(A)
A = M CA({x1 , ..., xi })
A = A/ para cualquier partici
on tal que A/ sea irreducible en S
infiere en el lmite L3 .
Demostraci
on. Sea e : N una biyecci
on. Entonces e induce una enumeraci
on de . Sea L un lenguaje regular y sea ne el menor n
umero tal que
las primeras ne palabras de L en el orden fijado por e forman una muestra
estructuralmente universal S1 de L. Sea S2 tal que todo aut
omata finito A irreducible en S2 que satisface S1 L(A) reconoce L. Entonces, para cualquier
par muestra positiva muestra negativa hS+ , S i tal que S1 S+ y S2 S
en que las palabras de S+ esten ordenadas seg
un e, el anterior algoritmo produce como salida un aut
omata irreducible para L. Por otra parte, cualquiera
que sea el orden que fijemos entre las palabras de nuestra muestra finita, ese
orden puede ser considerado como el comienzo de alguna enumeraci
on, y o bien
incluye ya una muestra estructuralmente universal, o bien la incluir
a eventualmente seg
un se vayan a
nadiendo a ella nuevas palabras independientemente del
orden en que estas se a
nadan. En el momento en que la muestra positiva es ya estructuralmente universal los datos positivos que se suministren posteriormente
no jugar
an ning
un papel en el proceso, por lo que no afectar
an a la muestra
negativa necesaria para garantizar la inferencia del lenguaje objetivo.
La operaci
on A = A/ para cualquier partici
on tal que A/ sea irreducible en S requrir
a como m
aximo n(n 1)/2 intentos de fusi
on siendo n el
n
umero de estados del M CA({x1 , ..., xi }).
Comentario 98 Jugando con cierta imprecisi
on en el concepto de inferencia
en el lmite podemos enunciar una proposici
on a
un mas general: Supongamos
que en el procedimiento anterior los datos positivos se procesan en paquetes de
p palabras. El argumento utilizado anteriormente para n palabras sirve igualmente para n paquetes de p palabras. Si nuestra muestra positiva consiste en un
n
umero cualquiera p de palabras, el proceso de obtenci
on de un aut
omata finito
consistente e irreducible en el complementario de la muestra negativa mediante
fusi
on de estados en un orden completamente aleatorio, puede ser visto como
el primer paso de un algoritmo que en el lmite infiere la clase de los lenguajes
60
61
0
3
12
125
1
A1
A2
0
4
A3
0
0
2
0
1
1
14
3
1
5
B1
B2
1
0
25
14
0,1
1
256
14
0,1
1
B3
0
3
B4
256
14
0,1
1
0
37
B5
62
6.
6.1.
Subaut
omatas asociados a una palabra en un lenguaje.
Comenzaremos recordando algunos conceptos ya descritos en secciones anteriores que son de especial relevancia en esta:
Un subaut
omata de un automata finito A = hQ, , , I, F i es cualquier
aut
omata finito A0 = hQ0 , , 0 , I 0 , F 0 i donde Q0 Q, I 0 I Q0 , F 0 F Q0 y
0 Q0 Q0 . Evidentemente si A0 es un subaut
omata de A, L(A0 ) L(A).
Evidentemente tambien, cualquier aut
omata finito tiene un n
umero finito de
subaut
omatas diferentes. A es irreducible en un lenguaje L si y solo si L(A) L
y para toda partici
on de Q L(A/) L 6= . A es irreducible si y solo si es
irreducible en L(A).
Recordaremos tambien un par de proposiciones ya vistas de las que haremos
uso en esta secci
on:
Un aut
omata finito es irreducible si y solo si es irreducible en alg
un lenguaje
y, en particular, si y solo si es irreducible en el complementario de alg
un lenguaje
finito. Por u
ltimo, todo aut
omata finito irreducible en un lenguaje L es isomorfo
a un subaut
omata del aut
omata universal para L.
Pasamos ahora a definir los dem
as conceptos b
asicos de esta secci
on.
Definici
on 101 Dado un aut
omata finito A llamaremos descomposici
on de A
a cualquier colecci
on hAi iiI de subaut
omatas de A tal que L(A) = L(Ai ).
iI
Definici
on 102 Dada una palabra x = a1 a2 ...an , n 0, donde los ai son smbolos, denotaremos mediante Ax al aut
omata finito determinista mnimo sin estados in
utiles para el lenguaje {x}, esto es, al aut
omata hQ, , , I, F i donde,
siendo Q = {hy, zi : yz = x}, la funci
on de transici
on es tal que para yaz = x,
(hy, azi , a) = {hya, zi} y adem
as I = {h, xi}, F = {hx, i}.
63
Definici
on. Sea L un lenguaje sobre un alfabeto y sea x una palabra de
L. Llamaremos subaut
omata asociado a x en L a cualquier aut
omata finito A
irreducible en L obtenido a partir de Ax mediante una secuencia cualquiera de
fusiones de estados.
Es evidente que para cualquier palabra x y cualquier lenguaje L el n
umero
de subaut
omatas asociados a x en L es finito, as como que para cada aut
omata
A asociado a x en L, x L(A). Vease un ejemplo en la figura 33.
(A)
0,1
123
67
12
34
(B)
67
(C)
1
0,1
0
1
123
1267
0
1
(D)
34
(E)
Figura 33: Siendo L = (0+1) 101(0+1) y x = 011010 vemos: (A) Automata Ax . (B)
y (C) Subaut
omatas asociados a x en L. (D) Este aut
omata no es un subaut
omata
asociado a x en L pues no es irreducible en L. (E) Este aut
omata tampoco es un
subaut
omata asociado a x en L pues el lenguaje que acepta no est
a includo en L.
Demostraci
on. La existencia del subconjunto M est
a garantizada por el hecho
de que cada palabra x de L es aceptada por cualquier subaut
omata asociado a
x en L. La finitud de M se deduce de que cada subaut
omata asociado a una
palabra x en L es irreducible en L y por tanto isomorfo a alg
un subaut
omata
de U , el aut
omata universal de L, junto con el hecho de que el n
umero de
subaut
omatas de U es finito.
Vease un ejemplo en la figura 34.
0,1
0,1
0,1
0,1
(A)
(B)
6.2.
6.2.1.
La familia WASRI.
Presentamos ahora una familia (Word Associated Subautomata Regular Inference) de algoritmos basados en los conceptos anteriormente expuestos. Cada
uno de los miembros de WASRI infiere en el lmite la clase de los lenguajes
regulares.
Esta familia se corresponde con el sencillo esquema que describimos a continuaci
on, siendo L el lenguaje a inferir.
Sea A = hQ, , , I, F i con Q = = I = F =
Mientras x L L(A)
Obtengase al menos un aut
omata finito asociado a x en L
Para cada A0 = hQ0 , , 0 , I 0 , F 0 i obtenido
A = hQ Q0 , , 0 , I I 0 , F F 0 i.
Las uniones indicadas deben suponerse uniones disjuntas.
Teorema 105 Cualquier algoritmo de la familia WASRI infiere en el lmite la
clase de los lenguajes regulares.
65
Demostraci
on. Sabemos por una parte que cada lenguaje regular L es la uni
on
de los lenguajes reconocidos por los subaut
omatas asociados en L a las palabras de un subconjunto finito de L, y por otra, que el n
umero de palabras
pertenecientes a L que necesitamos conocer para obtener esos aut
omatas es
tambien finito. Estos dos hechos garantizan la convergencia del proceso, pues
despues de un tiempo finito esas palabras aparecer
an y L ser
a identificado.
Los distintos algoritmos de la familia WASRI se diferencian entre si en conceptos tales como
El n
umero de subaut
omatas inferidos para cada palabra.
El orden a seguir en el proceso de fusi
on de estados para la obtenci
on de
cada subaut
omata.
El criterio de selecci
on final entre los subaut
omatas inferidos.
etc.
Veamos a continuaci
on la descripci
on de uno de los miembros mas b
asicos
de la familia.
6.2.2.
WASRI1.
6.3.
Dos ejemplos.
Ejemplo de ejecuci
on.
(A)
0,1
0,1
(B)
(C)
0,1
0
5
(D)
6
0
Figura 35: Mezclas sucesivas realizadas por el algoritmo WASRI1 durante el proceso de la palabra 0101010 siendo su entrada S+ = {0101010, 0, 001, 000011} y
S = {01000010}.
Por ser mas ilustrativo, comenzaremos por mostrar el proceso de la palabra
0101010 como si fuera la primera de la muestra. El aut
omata A0101010 se muestra
en la figura 35(A). Los estados 2,3 y 4 pueden unirse con el estado 1 ya que
el aut
omata resultante no acepta la muestra negativa. El resultado de estas
primeras uniones est
a en la figura 35(B). Siguiendo el mismo orden, los siguientes estados que pueden ser mezclados son 6 y 7, pues las posibles uniones
67
0,1
0,1
(A)
1
0
(B)
(C)
Un ejemplo bonito.
0
0
0
0
0
0
0
Figura 37: Automata finito producido por WASRI1 para la entrada S+ = {02 , 03 , 05 }
y S = {0, 011 }.
68
69
7.
7.1.
Experimentaci
on.
Las muestras.
70
7.2.
W ASRI2.
En la experimentaci
on hemos utilizados dos algoritmos diferentes, uno por
cada uno de los esquemas descritos.
El primero de ellos, correspondiente al esquema W ASRI, al que denominaremos W ASRI2, obtiene para cada muestra dos aut
omatas finitos y finalmente
elige aquel de los dos que tiene menos estados. El primero de estos aut
omatas
se construye aplicando el esquema W ASRI en orden can
onico a cada palabra
que no es aceptada por la hip
otesis actual, esto es, para la palabra xi el prefijo
corresponde al estado qi0 mientras que al prefijo xi le corresponde el estado
qi|x | y se prueba a unir cada estado con cada uno de los anteriores en orden
i
de ndice menor a mayor hasta que se encuentra una fusi
on compatible con la
muestra. Por u
ltimo se eliminan aquellos subaut
omatas que resultan superfluos
para la aceptaci
on de toda la muestra positva.
El segundo aut
omata se obtiene en forma similar, salvo que en este caso
los estados de cada subaut
omata se ordenan en orden inverso, de forma que
al prefijo corresponde al estado qi|x | (que pese a su nombre ser
a el inicial)
i
mientras que al prefijo xi le corresponde el estado qi0 (que ser
a final).
Evidentemente el esquema permitira la obtenci
on de no solo estos dos
aut
omatas, sino tambien la de muchos otros mediante cualquier otra ordenaci
on
de los estados o la fusi
on de pares de estados seleccionados de forma aleatoria,
etc. En cualquier caso el proceso finalizara con la selecci
on entre todas las
hip
otesis obtenidas de aquella con menor tama
no.
7.3.
LP EF.
7.4.
Resultados
er 50
er 100
er 150
er 200
RP N I
Tasa Rec.
76.4
80.6
84.5
91.1
Tam.
9.7
14.2
15.4
13.3
DeLeT e2
Tasa Rec.
Tam.
81.3
32.4
91.4
30.7
92.0
61.0
95.7
47.7
W ASRI2
Tasa Rec.
Tam.
89.2
15.9
93.0
25.4
94.9
25.7
95.8
35.5
LP EF
Tasa Rec.
Tam.
92.0
7.5
93.5
12.1
94.5
16.2
97.4
11.3
nf a 50
nf a 100
nf a 150
nf a 200
64.8
68.3
71.2
71.7
14.3
21.8
28.1
33.4
69.3
74.4
76.7
78.9
71.3
149.1
218.3
271.3
74.8
76.5
77.3
81.2
39.3
79.8
121.1
148.1
71.5
75.3
76.7
78.6
22.2
42.2
57.2
60.4
100
200
300
400
500
83.4
93.9
96.3
97.5
98.1
12.4
11.6
11.2
11.0
11.0
91.7
97.0
97.8
98.5
98.8
30.2
24.5
31.4
27.4
29.9
93.4
95.7
96.2
97.1
97.6
25.3
33.4
47.0
51.3
48.6
94.4
97.4
98.1
98.8
99.0
10.7
11.2
12.7
11.6
11.8
66.5
69.3
72.9
74.6
76.8
20.3
32.4
40.9
49.8
55.9
74.0
77.8
80.9
82.7
84.3
98.8
220.9
322.1
421.3
512.6
74.7
77.1
79.7
81.1
83.5
82.9
170.4
267.2
350.1
431.2
74.3
77.5
79.7
81.3
83.6
37.0
64.7
90.1
108.1
125.8
ER
ER
ER
ER
ER
NFA
NFA
NFA
NFA
NFA
100
200
300
400
500
Las columnas Tasa Rec. indican el tanto por ciento medio de acierto en los
diferentes casos que componen cada experimento, mientras que las columnas
Tam. indican el valor medio en el n
umero de estados. Puede apreciarse que los
resultados obtenidos por W ASRI2 y LP EF compiten razonablemente con los
de DeLeT e2 y superan ampliamente a los de RP N I, aunque, como ya hemos
dicho, esto u
ltimo no es as cuando los lenguajes objetivo se derivan de la obtenci
on de aut
omatas finitos deterministas mediante metodos pseudoaleatorios.
En cualquier caso, parece razonable esperar que algoritmos mas sofisticados
derivados de estos esquemas puedan competir en ciertas tareas con los utilizados actualmente.
72
8.
Conclusi
on.
74
Referencias
[1] A. Arnold, A. Dicky and M. Nivat. A note about minimal non-deterministic
automata. Bull. EATCS 47, pp 166-169, 1992.
[2] G. I. Alvarez, J. Ruiz, A. Cano and P. Garca. Non deterministic regular
positive negative inference NRPNI. Proc. of the XXXI Conferencia latinoamericana de inform
aatica, pp 239-249, 2005.
[3] J. A. Brzozowski. Canonical regular expressions and minimal state graphs
for definite events. Mathematical theory of automata, MRI symposia series
12, pp 520-561, 1962.
[4] C. Carrez. On the minimization of non-deterministic automaton. Laboratoire de calcul de la faculte des sciences de luniversite de Lille, 1970.
[5] J. M. Champarnaud and F. Coulon. NFA Reduction algorithms by mean
of regular inequalities. Theoretical computer science 327, pp 241-253, 2004.
[6] F. Coste and D. Fredouille. Unambiguous automata inference by means of
state-merging methods. ECML 2003.
[7] J. H. Conway. Regular algebra and finite machines. Chapman and Hall,
1971.
[8] C. C
ampeanu, N. S
antean and S. Yu. Mergible states in large NFA. Theoretical computer science 330, pp 23-34, 2005.
[9] F. Denis, A. Lemay and A. Terlutte. Learning regular languages using
nondeterministic finite automata. ICGI 2000, LNAI 1891, pp 39-50, 2000.
[10] F. Denis, A. Lemay and A. Terlutte. Residual finite state automata. STACS
2001, LNAI 2010, pp 144-157, 2001.
[11] F. Denis, A. Lemay and A. Terlutte. Learning regular languages using
RFSAs. Theoretical computer science 313, pp 267-294, 2004.
[12] P. Dupont, L. Miclet and E. Vidal. What is the search space of the regular
inference?. ICGI 1994, LNCS 862, pp 25-37, 1994.
[13] J. A. Feldman. Some decidability results on grammatical inference and
complexity. Information and control 20, pp 244-262, 1972.
[14] E. M. Gold. Language identification in the limit. Information and control
37, pp 447-474, 1967.
[15] E. M. Gold. Complexity of automaton identification from given data. Information and control 37, pp 302-320, 1978.
[16] P. Garcia and M. V
azquez de Parga. A note about mergible states in large
NFA. Bull. of the EATCS 87, pp 181-184, 2005.
75
77