Sunteți pe pagina 1din 78

UNIVERSIDAD POLITECNICA

DE VALENCIA

DEPARTAMENTO DE SISTEMAS INFORMATICOS


Y COMPUTACION

Automatas finitos: Irreducibilidad


e Inferencia

Tesis Doctoral presentada por Manuel V


azquez de Parga Andrade
Dirigida por Pedro Garca G
omez
Valencia, Junio 2007

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

3. Inferencia gramatical de lenguajes regulares.


3.1. Inferencia gramatical. . . . . . . . . . . . . . . .
3.2. Inferencia gramatical de lenguajes regulares. . . .
3.2.1. Conceptos b
asicos. . . . . . . . . . . . . .
3.2.2. El algoritmo Trakhtenbrot-Barzdin-Gold.
3.2.3. El algoritmo RPNI. . . . . . . . . . . . .
3.2.4. Inferencia no determinista. . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

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

4.4.5. Irreducibilidad y concisi


on relativas. . . . . . . . . . . . .
5. Redes de aut
omatas cocientes.
5.1. Red de cocientes de un aut
omata finito. .
5.2. Completitud y universalidad estructural. .
5.2.1. Aplicaciones a la inferencia de L3 .
5.3. Semired de cocientes asociada a un par de
5.3.1. Aplicaciones a la inferencia de L3 .

. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
aut
omatas finitos.
. . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

45
49
49
50
55
56
60

6. Inferencia mediante subaut


omatas asociados a palabras.
63
6.1. Subaut
omatas asociados a una palabra en un lenguaje. . . . . . . 63
6.2. Una familia de algoritmos para la inferencia de L3 mediante
aut
omatas finitos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.2.1. La familia WASRI. . . . . . . . . . . . . . . . . . . . . . . 65
6.2.2. WASRI1. . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.3. Dos ejemplos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.3.1. Ejemplo de ejecuci
on. . . . . . . . . . . . . . . . . . . . . 67
6.3.2. Un ejemplo bonito. . . . . . . . . . . . . . . . . . . . . . . 68
7. Experimentaci
on.
7.1. Las muestras. .
7.2. W ASRI2. . . .
7.3. LP EF. . . . .
7.4. Resultados . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

8. Conclusi
on.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

70
70
71
71
71
73

1.

Introducci
on.

Los lenguajes regulares se encuentran entre los objetos mas b


asicos de la
teora de lenguajes y entre los mas estudiados. Una de las razones para que esto
sea as es la gran variedad y riqueza formal de sus representaciones: gram
aticas
de tipo tres, expresiones regulares, aut
omatas finitos deterministas y no deterministas, etc. Estas representaciones juegan adem
as un importante papel en
m
ultiples aplicaciones inform
aticas en los a
mbitos del reconocimiento de formas, aprendizaje artificial, verificaci
on de programas, especificaci
on sint
actica,
sistemas de manipulaci
on de textos, lenguajes de programaci
on (awk, perl, php),
editores, etc. Evidentemente, el tama
no de la representaci
on interviene crucialmente en el tiempo de ejecuci
on de los algortmos en que se aplica.
El sistema mas extendido de representaci
on de lenguajes regulares es el dispositivo abstracto denominado aut
omata finito determinista. Estos aut
omatas,
adem
as de poseer gran riqueza formal, ostentan una serie de propiedades que
facilitan en diferentes maneras su manejo. Una de estas propiedades, quiz
as la
mas importante, es que para cada lenguaje regular existe un aut
omata finito determinista can
onico, mnimo en cuanto a tama
no y el u
nico con esta propiedad
y que adem
as puede ser calculado en tiempo polin
omico a partir de cualquier
otro aut
omata finito determinista equivalente.
Sin embargo, cuando el tama
no de la representaci
on es muy relevante puede
ocurrir que los aut
omatas finitos deterministas no sean la representaci
on mas
adecuada, pues el tama
no del aut
omata finito determinista mnimo puede ser
exponencialmente grande respecto al de otras representaciones equivalentes, en
particular al de alg
un otro automata finito (no determinista) para el mismo
lenguaje.
Los aut
omatas finitos (no deterministas) presentan sin embargo el inconveniente de que muchos de los problemas relacionados con ellos no admiten una
soluci
on eficiente. En particular, para cada lenguaje regular existen en general
varios aut
omatas finitos de tama
no minimal y el problema de encontrar alguno
de estos equivalente a otro aut
omata finito dado es P SP ACE completo. As,
siendo inabordable el problema de la minimalizaci
on, diferentes autores han
acometido un problema similar aunque mas modesto en sus objetivos, el problema de la reducci
on, consistente en encontrar un aut
omata mas peque
no que
el de entrada y equivalente a el.
Otro problema relevante de caractersticas similares al anterior es el de la
inferencia de lenguajes regulares, que persigue encontrar un aut
omata finito lo
mas peque
no posible consistente con una serie de datos de entrada. Tampoco este
problema admite soluci
on general polin
omica, ni a
un en el caso de los aut
omatas
finitos deterministas, aunque existen diferentes algoritmos polin
omicos que lo
resuelven cuando se dan determinadas circunstancias y que en muchos casos
son capaces de encontrar soluciones razonables.
En este trabajo abordamos estos dos problemas, el de la reducci
on de aut
o
matas finitos y el de la inferencia de los lenguajes regulares, y estudiamos las
relaciones entre ellos.
Tras esta introducci
on, en el segundo captulo se repasan los conceptos y
3

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.

En este apartado repasaremos brevemente los conceptos mas b


asicos de la
teora de lenguajes con el objetivo principal de establecer la notaci
on b
asica que
utilizaremos a lo largo de este trabajo. Los lectores interesados podr
an encontrar
estos conceptos desarrollados con mas amplitud en cualquiera de los manuales
cl
asicos sobre introducci
on a la teora de lenguajes como [17], [19] o [35].
Un alfabeto es cualquier conjunto finito y no vaco de smbolos.
Una palabra (sobre ) x es cualquier secuencia finita de smbolos de .
Denominaremos |x| a la longitud de la palabra x, esto es, al n
umero de smbolos
que la componen. As mismo denotaremos por |x|a al n
umero de veces que el
smbolo a aparece en la palabra x. Representaremos mediante a la palabra
vaca, aquella formada por cero smbolos.
Llamaremos al conjunto formado por todas las palabras sobre .
constituye un monoide libre junto con la operaci
on de concatenaci
on de palabras, asociativa, con elemento neutro . Supuesto un orden alfabetico sobre
los smbolos de , consideraremos un orden can
onico sobre las palabras de
en el que las palabras se ordenan de menor a mayor longitud y alfabeticamente
dentro de una misma longitud. Representaremos por n al conjunto formado
por todas las palabras de longitud n.
Utilizaremos la notaci
on exponencial para representar concatenaciones de
una palabra consigo misma, de manera que para cualquier palabra x, x0 = , y
para n > 0, xn = xxn1 .
El reverso de x, xR , es la imagen especular de x. Formalmente R = ,
(xa)R = axR para cualesquiera a , x .
Denotaremos por P ref (x), Suf (x), Seg(x), SubW (x) respectivamente a los
conjuntos formados por los prefijos, sufijos, segmentos y subpalabras de x. Tanto
como x pertenecen a cualquiera de estos conjuntos.
Un lenguaje (sobre ) L es cualquier subconjunto de , esto es, cualquier
conjunto de palabras sobre . Representaremos por al lenguaje vaco. Un
lenguaje es finito si contiene un n
umero finito de palabras e infinito en caso
contrario. Representaremos mediante |L| el n
umero de palabras del lenguaje L
y mediante kLk a la suma de las longitudes de las palabras de L.
Algunas de las operaciones mas usuales sobre lengujes son:
Las operaciones booleanas de uni
on, , intersecci
on, , complementaci
on,
y diferencia, , definidas igual que para los conjuntos en general.
La concatenaci
on de dos lenguajes L1 y L2 es L1 L2 = {xy : x L1 , y L2 }.
Esta operaci
on es asociativa y tiene como elemento neutro el lenguaje {} .
Utilizaremos tambien para ella la notaci
on exponencial, de forma que L0 = {}
n
n1
y para n > 0, L = LL
.
La clausura de un lenguaje es L = Ln , esto es, el submonoide de
n0

generado por L. La clausura positiva es L+ = Ln .


n1


El reverso de L es LR = xR : x L .
5

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.

Rabin y Scott [31] introdujeron el concepto de aut


omata finito no determinista. Nosotros utilizaremos una ligera generalizaci
on del mismo a la que
denominaremos aut
omata finito.
Intuitivamente, un aut
omata finito es un dispositivo abstracto que, partiendo de una configuraci
on inicial, procesa secuencias de smbolos mediante una
unidad de control que admite un n
umero finito de estados diferentes. Cada vez
que se procesa un smbolo la unidad de control cambia de estado.
Los aut
omatas finitos configuran una de las clases de sistemas mas fundamentales en la teora de lenguajes, tanto por la riqueza de su estructura como
por la diversidad e importancia de sus aplicaciones pr
acticas.
Las definiciones y proposiciones de este apartado pueden encontrarse en
cualquier manual de teora de lenguajes, tales como el de Hopcroft y Ullman
[19], el de Harrison [17], etc.

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

Asimismo se extiende a palabras, siendo para todo P Q, (P, ) = P y


para todo a , x , (P, ax) = ((P, a), x).
Una palabra x sobre es aceptada o reconocida por el aut
omata finito
A = hQ, , , I, F i si (I, x) F 6= .
Llamaremos camino en A para la palabra x = a1 a2 ...an1 a cualquier secuencia finita hq1 , a1 , q2 i hq2 , a2 , q3 i hq3 , a3 , q4 i ... hqn1 , an1 , qn i tal que qi+1
(qi , ai ) para cada i, 1 i < n. Si adem
as q1 I y qn F diremos que ese
camino es una aceptaci
on de x.
Definici
on 2 El lenguaje aceptado o reconocido por A, L(A), es el formado por
todas aquellas palabras que son aceptadas por A. Un lenguaje es regular si es
aceptado por alg
un aut
omata finito. La clase de los lenguajes regulares se denota
L3 .
Dos aut
omatas finitos son equivalentes si ambos aceptan el mismo lenguaje.
Definici
on 3 En un aut
omata finito A = hQ, , , I, F i el lenguaje por la
izquierda de un estado q es Lq = {x : q (I, x)}, su lenguaje por
la derecha es Rq = {x : (q, x) F 6= } y su lenguaje interior es
Iq = {x : q (q, x)}. Denotaremos Ipq al lenguaje {x : q (p, x)} .
Proposici
on 4 Para cualquier aut
omata finito A = hQ, , , I, F i, L(A) =
Iq R q = R q = Lq Iq R q = Lq R q = Lq Iq = Lq .
qI

qI

qQ

qQ

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

Un estado q es superfluo si el aut


omata resultante de eliminarlo junto con
todas las transiciones en las que interviene es equivalente al aut
omata original.
Todos los estados in
utiles son superfluos pero lo contrario no es cierto en general.
Diremos que un aut
omata es conciso si no contiene estados superfluos.
Un aut
omata finito es minimal si no existe otro equivalente a el con menos
estados. En general cada lenguaje regular es aceptado por mas de un aut
omata
finito minimal.
Usualmente describiremos un aut
omata finito A = hQ, , , I, F i mediante
su diagrama de transiciones, que consiste en un grafo dirigido con tantos nodos
como estados tiene Q, un nodo asociado a cada estado. Los estados iniciales se
distinguen mediante una flecha, los finales se distinguen en negrita y por u
ltimo,
el grafo contendr
a un arco del nodo asociado a q1 al asociado a q2 etiquetado a
si y solo si hq1 , a, q2 i . Vease un ejemplo en la figura 1.

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)

Figura 2: (A) Automata finito determinista para el lenguaje (0 + 11)(0 + 1) . No es


completo. (B) Aut
omata finito determinista mnimo completo equivalente al anterior.
Los estados se corresponden con los siguientes valores de derivadas: 1 := 1 L = L,
2 := 01 L = (0 + 1) , 3 := 11 L = 1(0 + 1) , 4 := 101 L = . Este u
ltimo estado es
inutil, por lo que puede ser suprimido.



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| < .

Corolario 8 Para cada lenguaje regular el aut


omata finito determinista D es
mnimo respecto al n
umero de estados, el u
nico excepto isomorfismos.
En la figura 2(B) se muestra el mnimo equivalente al de la figura 2(A).
Sin embargo D, considerado como aut
omata finito, no ser
a en general un
minimal.
La proposici
on anterior fue establecida por Myhill y Nerode y L , la congruencia por la derecha sobre tal que x L y x1 L = y 1 L, es conocida
como la congruencia de Nerode. Evidentemente el ndice de esta congruencia es
igual al n
umero de estados del aut
omata finito determinista mnimo para L.

2.4.
2.4.1.

Otros tipos de aut


omatas finitos.
Aut
omatas finitos con transiciones vacas.

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.

RFSA (Residual Finite State Automaton).

La derivada de un lenguaje L respecto a una palabra x, x1 L, recibe tambien


el nombre de lenguaje residual
L asociado a x. Un lenguaje residual x1 L es
 1 de 1
1
compuesto si x L = y L : y L x1 L . En caso contrario es primo.
Denis, Lemay y Terlutte introdujeron en [9],[10] y [11] el concepto de RF SA
como aut
omata finito cuyos estados est
an asociados a (o dicho de otra manera,
tienen lenguajes por la derecha iguales a) lenguajes residules del lenguaje que
10

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.

reconocen. Desarrollaron adem


as el algoritmo para la inferencia de lenguajes
regulares DeLeT e2, que produce como salida un RF SA. Este algortmo, uno
de los mas relevantes propuestos u
ltimamente, ser
a uno de los que comparemos
con aquellos que proponemos en este trabajo.
La utilizaci
on de RF SAs para representar lenguajes resulta interesante por
el hecho de la existencia para cada lenguaje regular de un RF SA can
onico,
minimal entre los RF SAs, que consta siempre de un n
umero de estados menor
o igual al del aut
omata finito determinista mnimo para ese lenguaje. Adem
as,
para algunas subfamilias parametrizadas de lenguajes el tama
no del aut
omata
finito determinista mnimo crece respecto al valor del par
ametro exponencialmente mas deprisa que el del RF SA can
onico.
Definici
on 10 Dado un lenguaje regular L , el RF SA can
onico de L
es el aut
omatafinito A = hQ, , , I, F i donde Q = x1 L : x1 L es primo ,
I = {L}, F = x1 L : x1 L y (x1 L, a) = {y 1 L : y 1 L xa1 L}.
Vease un ejemplo en la figura 3(B).
2.4.3.

Aut
omatas maximales asociados a lenguajes finitos.

Sea L un lenguaje finito sobre un cierto alfabeto . Asociamos entonces a


L diferentes aut
omatas finitos que lo reconocen, que pasamos a definir a continuaci
on:
Definici
on 11 El aut
omata can
onico maximal de L es el aut
omata M CA(L) =
hQ, , , I, F i , donde
11

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.

Operaciones sobre aut


omatas finitos.

A lo largo de este apartado describiremos algunos de los mas conocidos operadores sobre aut
omatas finitos.
2.5.1.

Cocientes.

Dado un conjunto cualquiera C, una partici


on de C es cualquier colecci
on
de subconjuntos disjuntos y no vacos de C cuya uni
on es el propio C. A cada el13

emento de se le denomina bloque. Para cada x C llamaremos (x) al bloque


que contiene a x. La partici
on trivial es aquella en la que cada bloque contiene
un solo elemento. Para simplificar la descripci
on de una partici
on, en algunos
caso enumeraremos solo aquellos bloques que contienen mas de un elemento.
Definici
on 15 Sea A = hQ, , ,
omata finito y sea una partici
on

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, x1 , ..., xn }, I = {q U : q L}, F = {q U : q} y para dos estados


cualesquiera de U y cualquier smbolo a de , q (p, a) q a 1 p.
Vease como ejemplo la figura 5.
0,1

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)

Figura 5: (A) Automata finito determinista mnimo para L = ((0 + 1)2 ) (0 + ).


Los estados se corresponden con los siguientes valores de derivadas de L: 1 := L,
2 := (0 + 1)L + , 3 := (0 + 1)L. (B) Aut
omata universal para el mismo lenguaje. Los
estados se corresponden con los siguientes valores de intersecciones entre derivadas:
1 := L, 2 := (0 + 1)L + , 23 := (0 + 1)L, 12 := (0 + 1) 0 + , 123 := (0 + 1) 0.

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

P QD }, de donde se deduce trivialmente el enunciado.


Proposici
on 31 Un aut
omata finito A = hQA , A , A , IA , FA i reconoce un subconjunto de L si y solo si existe un homomorfismo de A en U .
Demostraci
on. La implicaci
on es trivial por la propia definici
on de homomorfismo entre aut
omatas finitos. Para demostrar la implicaci
on se define la
funci
on que asigna a cada estado q QA el estado de U (q) = x1 L. La
xLq

funci
on es un homomorfismo por lo que la implicaci
on queda demostrada.

18

3.
3.1.

Inferencia gramatical de lenguajes regulares.


Inferencia gramatical.

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.

Inferencia gramatical de lenguajes regulares.


Conceptos b
asicos.

Dado un lenguaje L llamaremos muestra positiva de L a cualquiera de sus


subconjuntos finitos y llamaremos muestra negativa de L a cualquier subconjunto finito de su complementario. Una muestra de L es un par formado por
una muestra positiva y una muestra negativa. El tama
no de una muestra es la
suma de las longitudes de las palabras que contiene.
Un algoritmo de inferencia es cualquier algoritmo tal que para cualquier
muestra de entrada obtiene como salida una representaci
on de un lenguaje compatible con la muestra, esto es, un lenguaje que incluye a la muestra positiva y
es disjunto con la negativa.
Un algoritmo infiere una familia de lenguajes si para cada muestra de entrada
obtiene como salida un lenguaje de esa familia y adem
as cada lenguaje de la
familia se obtiene como salida para al menos una muestra.
En el a
mbito de un determinado algoritmo de inferencia una muestra S es
caracterstica de un lenguaje L si toda muestra que incluya a S produce como
salida una representaci
on de L. Un algoritmo infiere en el lmite una familia de
lenguajes si para cada lenguaje de la familia existe alguna muestra caracterstica.
Una familia de lenguajes L es identificable en el lmite en tiempo y datos
polin
omicos si para todo sistema finito de representaci
on R de los lenguajes de
L existe alg
un algoritmo A tal que A infiere en el lmite L, A es polin
omico
respecto al tama
no de la muestra de entrada y para cada lenguaje existe una
muestra caracterstica de tama
no polin
omico respecto a su representaci
on en R.
De forma menos restrictiva, una familia de lenguajes L es identificable en
el lmite en tiempo y datos polin
omicos respecto a la representaci
on R [18] si
existen algoritmos A1 , A2 tales que A1 infiere en el lmite L, A1 es polin
omico
respecto al tama
no de la muestra de entrada y A2 es un algoritmo que para
cada lenguaje calcula una muestra caracterstica en tiempo polin
omico respecto
al tama
no de cualquier representaci
on del lenguaje en R. El hecho de que una
familia de lenguajes sea identificable en el lmite en tiempo y datos polin
omicos
respecto a una representaci
on R no significa que esa familia sea en s identificable
en el lmite en tiempo y datos polin
omicos, por lo que este concepto solo tiene
sentido si la representaci
on en cuesti
on puede ser considerada razonable.
La familia de los lenguajes regulares no es identificable en el lmite en tiempo y datos polin
omicos, pues no lo es respecto a su representaci
on mediante
aut
omatas finitos [18]. Sin embargo s lo es respecto a su representaci
on mediante aut
omatas finitos deterministas que evidentemente puede ser considerada
razonable a que es una de las estructuras mas estudiadas y utilizadas en teora
de lenguajes, adem
as de ser una de las mas simples y de las que presentan mas
propiedades interesantes.

21

3.2.2.

El algoritmo Trakhtenbrot-Barzdin-Gold.

En 1978 Gold demostr


o [15] que el problema de dada una muestra encontrar el aut
omata finito determinista mas peque
no compatible con ella es
N P duro. Este resultado supone evidentemente un freno al aprendizaje de
lenguajes regulares. De hecho, este resultado, junto con otros resultados negativos ya mencionados condujo a que durante las dos siguientes decadas los
metodos de inferencia propuestos son en su inmensa mayora heuristicos que
utilizan presentaci
on positiva e infieren subclases no caracterizadas de la familia de los lenguajes regulares. Esta situaci
on no deja de ser parad
ojica: Por una
parte, el mismo Gold haba demostrado que la clase de los lenguajes regulares
no es inferible mediante presentaci
on positiva y por otra parte del resultado de
Gold se desprende u
nicamente que un algoritmo consistente en obtener cada vez
que se recibe un nuevo dato un aut
omata finito determinista, compatible con el
conjunto actual de datos procesados y minimal en cuanto al n
umero de estados,
no sera eficiente. Esta reacci
on resulta tanto mas sorprendente si se tiene en
cuenta que en el mismo artculo antes referenciado Gold propone un algoritmo
polin
omico que permite identificar en el lmite cualquier lenguaje regular.
El algoritmo expuesto por Gold haba sido en realidad propuesto ya por
Trakhtenbrok y Barzdin [32] en 1973, pero haba pasado inadvertido hasta
que fue redescubierto por Gold. Este algoritmo se realiza en dos etapas. En
la primera se calcula a partir de los datos una matriz de caracterizaci
on de estados y en la segunda se obtiene a partir de esta un aut
omata finito determinista
presentado inicialmente en forma de m
aquina de Mealey. Veamos a continuaci
on
una somera descripci
on del mismo que comenzaremos describiendo los conceptos
b
asicos utilizados.
Una matriz de caracterizaci
on de estados sobre un alfabeto es un triplete
hS, E, T i donde S y E son lenguajes finitos sobre a cuyos elementos se denomina respectivamente estados y experimentos y T : (S S)E {0, 1, 2} es
una funci
on que asigna una etiqueta a cada palabra de (S S)E.
Los datos D+ y D contenidos en la matriz son:
x D+ u (S S), v E : x = uv T (uv) = 1
x D u (S S), v E : x = uv T (uv) = 0
Para el resto de palabras T (uv) = 2. Cada elemento u de S S define una
hilera llamada row(u). Se dice que row(u) es obviamente diferente de row(v),
escrito row(u)  row(v), si existe un experimento e E tal que T (ue)+T (ve) =
1.
Una matriz de caracterizaci
on de estados est
a cerrada si ninguna hilera de
S S es obviamente diferente de cada hilera de S.
Dada una muestra hD+ , D i el algoritmo comienza asignando a S el valor
{} y a E el conjunto de sufijos propios de palabras de la muestra. Se construye
entonces la matriz de caracterizaci
on de estados correspondiente. En cada uno
de los siguientes pasos se selecciona una palabra u de S S tal que su hilera es
obviamente diferente de cada una de las correspondientes a palabras de S y se
a
nade al conjunto S. Se actualiza entonces la matriz. El proceso contin
ua hasta
que la matriz este cerrada.

22

Finalmente se construye el aut


omata finito determinista cuyos estados son
las palabras de S y cuyas transiciones son de forma que (u, a) = v siendo v = ua
si ua S o si no siendo v una palabra de S tal que row(v) no es obviamente
diferente de row(ua). Por u
ltimo, el estado x es final si T (x) = 1.
Vease un ejemplo en la figura 6.

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

Figura 6: Proceso mediante el algoritmo de Gold de la muestra S = hS+ , S i, siendo


S+ = {00, 100, 0001, 01001} y S = {, 0, 01, 101, 0110}. Para el c
alculo de la matriz
se incluye promero la fila para . A continuaci
on las filas para 0 y 1, siendo esta
u
ltima equivalente a la de . Se incluyen entonces las filas para 00 y 01, siendo esta
u
ltima equivalente a la de . Por u
ltimo se incluyen las filas para 000 y 001, ambas
equivalentes a , con lo que la matriz queda cerrada. A partir de la matriz se construye
el aut
omata
Puede ocurrir que el aut
omata calculado no sea compatible con la muestra
de entrada, en cuyo caso el algoritmo produce como salida el arbol aceptor de
prefijos de la muestra positiva.
En cualquier caso, Gold demostr
o que este algoritmo infiere polin
omicamente
en el lmite la clase de los lenguajes regulares, esto es, que construye un aut
omata
finito determinista en tiempo polin
omico respecto al tama
no de la muestra, que
para cada lenguaje regular L existe una muestra car
acterstica SL de tama
no
polin
omico respecto al n
umero de estados de su aut
omata finito determinista
mnimo y que si una muestra para L contiene a SL entonces el algoritmo produce
como salida el aut
omata finito determinista mnimo para L.
3.2.3.

El algoritmo RPNI.

Como ya hemos comentado, tras la publicaci


on de los resultados de Gold el
problema de la inferencia en el lmite de la clase de los lenguajes regulares mediante presentaci
on completa qued
o practicamente abandonado. Esta situaci
on
23

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 )

Figura 7: Proceso mediante el RPNI de la muestra S = hS+ , S i, siendo S+ =

{00, 100, 0001, 01001} y S = {, 0, 01, 101, 0110}. (A) Arbol


aceptor de prefijos representado mediante una m
aquina de Moore. (B) Tras descartar la uni
on de los estados
asociados a los prefijos y 0, ya que por determinizaci
on implicara la fusi
on prohibida
de los estados y 00, se fusionan los estados y 1 dando lugar por deteminizaci
on a
la m
aquina de la figura. (C) El estado 00 no puede fusionarse con ninguno de los anteriores. Se fusionan entonces los estados y 01. (D) El estado 000 no puede fusionarse
ni con ni con 0. Se fusiona con 00. (E) El estado 0001 no puede fusionarse ni con
ni con 0. Se fusiona con 00. (F) La m
aquina de Moore obtenida es transformada en
este aut
omata.
3.2.4.

Inferencia no determinista.

El problema de aprender lenguajes regulares utilizando como representaci


on
aut
omatas finitos es N P duro. Esto es debido a que el tama
no de la menor
muestra caracterstica crece de forma no acotada polinomicamente respecto al
n
umero de estados de un aut
omata finito minimal en algunas subfamilias de
lenguajes regulares. Este resultado ha desalentado la investigaci
on hasta el punto
de que solo recientemente se han empezado a publicar algunos resultados. Sin
embargo, no conviene olvidar que, de hecho, este resultado implica que la clase
de los lenguajes regulares no es identificable en tiempo y datos polin
omicos, de
forma que solo asumiendo que los aut
omatas finitos deterministas son una re-

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)

Figura 9: Proceso mediante el DeLeTe2 de la muestra S = hS+ , S i, siendo S+ =


{00, 100, 0001, 01001} y S = {, 0, 01, 101, 0110}. El conjunto de prefijos es P ref =
{, 0, 1, 00, 01, 10, 000, 010, 100, 0001, 0100, 01001}. (A) A
nadimos a Q y a I el estado .
Puesto que ,0 ( 0 y para todo x .x 0.x), a
nadimos la transici
on h, 0, i,
y puesto que ,1, a
nadimos la transici
on h, 1, i. (B) Tomamos el prefijo 0.
No es equivalente a , pues 0 , as que a
nadimos a Q el estado 0. Puesto que
0 ,0 a
nadimos la transici
on h, 0, 0i. Puesto que 0,0 y 0,1, a
nadimos
las transiciones h0, 0, i y h0, 1, i. Como adem
as 0 0,0 a
nadimos la transici
on
h0, 0, 0i. (C) 1 ' por lo que suprimimos de P ref las palabras que comienzan por
1. Consideramos entonces 00 obteniendo el aut
omata de la figura que, puesto que es
compatible con la muestra, ser
a la salida del algoritmo.

28

4.
4.1.

Minimalizaci
on de Aut
omatas Finitos.
Introducci
on.

Si estamos interesados en representar una familia de objetos mediante aut


omatas finitos es evidentemente conveniente que el tama
no de la representaci
on
sea lo menor posible, esto es, que los aut
omatas finitos en cuesti
on tengan el
menor n
umero posible de estados. Esto resulta particularmente evidente cuando
queremos aplicar a esos aut
omatas algortmos con una cierta complejidad.
Lo ideal sera representar cada lenguaje mediante un aut
omata finito minimal, esto es, tal que no existe otro con menos estados que reconozca el mismo
lenguaje. Sin embargo, los aut
omatas obtenidos mediante algoritmos o sistemas
heursticos de inferencia no tienen en general esa propiedad, por lo que cabe
plantear el problema de dado un aut
omata finito, encontrar uno minimal equivalente.
Para los aut
omatas finitos deterministas existen algoritmos eficientes (de
complejidad O(n log n)) y sencillos que producen como resultado el aut
omata
finito determinista mnimo para el lenguaje en cuesti
on. Por desgracia este no es
el caso cuando se trata de aut
omatas finitos en general, pues tanto el problema
de encontrar un aut
omata finito minimal equivalente a uno dado como el de
averiguar si un aut
omata finito es minimal son P SP ACE completos.
No queda entonces mas remedio que enfocar el problema de la obtenci
on
de aut
omatas finitos peque
nos desde otros puntos de vista como, por ejemplo, intentar que nuestros aut
omatas finitos posean determinadas propiedades
que garanticen que su tama
no no es innecesariamente grande. Algunas de estas
propiedades deseables son la irreducibilidad, la concisi
on y la primalidad. A su
estudio est
an dedicadas las siguientes secciones.

4.2.
4.2.1.

Minimalidad.
Aut
omatas finitos minimales.

Como es bien sabido, el aut


omata finito determinista mnimo de un lenguaje regular no es en general minimal respecto al n
umero de estados entre los
aut
omatas finitos que reconocen ese lenguaje. De hecho su tama
no puede llegar
a ser de hasta 2n , siendo n el n
umero de estados de un aut
omata minimal para
el lenguaje correspondiente. Por ejemplo, para los lenguajes de la forma 0m
sus aut
omatas finitos deterministas mnimos tienen tama
no 2m+1 , mientras que
son tambien aceptados por aut
omatas con m + 2 estados. En la figura 10 se
muestra el caso en que m = 2.
Adem
as, mientras que el aut
omata finito determinista es u
nico, para cada
lenguaje regular puede haber varios aut
omatas minimales diferentes. En la figura
11 podemos ver dos aut
omatas minimales para el lenguaje {01, 02, 12} .
Aunque el problema de encontrar un aut
omata minimal equivalente a un
aut
omata finito dado es P SP ACE completo, se han propuesto algoritmos no

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.

En ciertos campos de la teora de lenguajes, tales como la inferencia inductiva o la representaci


on de lenguajes finitos, podemos encontrar el problema
de calcular un aut
omata finito lo mas peque
no posible que acepte todas las
palabras de un cierto lenguaje finito M+ y rechace todas las de otro lenguaje finito M . En la figura 12 podemos ver algunas soluciones al caso en que
M+ = {010, 101} , M = {00, 11} .

0,1

0,1

Figura 12: Dos automatas minimales compatibles con la muestra M+

{010, 101}, M = {00, 11}.

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.

Una de las propiedades encaminadas a reducir el tama


no de los aut
omatas
finitos mas estudiadas es la irreducibilidad respecto a la fusi
on de estados. Como
ya hemos visto, un aut
omata finito es irreducible si ninguno de sus aut
omatas
cocientes es equivalente a el o, lo que es lo mismo, si no contiene dos estados
cuya fusi
on de lugar a un aut
omata finito equivalente al original.
En el caso de los aut
omatas finitos deterministas la irreducibilidad es equivalente a la minimalidad, por lo que todo aut
omata finito determinista con un
n
umero de estados mayor que el ndice de la congruencia por la derecha de
Nerode asociada al lenguaje aceptado contiene estados equivalentes que pueden
ser mezclados preservando el lenguaje reconocido. La aplicaci
on de esta misma
idea a los aut
omatas finitos ha dado lugar a diferentes sistemas para la reducci
on
del n
umero de estados ([27],[21],[22],[5],[20]), pero dado que la fusi
on puede
realizarse en diferentes o
rdenes conduciendo a resultados diferentes (ver figura
13) y que la congruencia de Nerode no es suficiente para detectar todos los
pares de estados fusionables (ver figura 14) , ninguno de los algoritmos eficientes
existentes garantiza la obtenci
on de un aut
omata finito irreducible. De hecho
no se conocen algoritmos eficientes que permitan decidir si dos estados dados
de un aut
omata finito son o no fusionables.

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.

Los mismos autores proponen en [8] una soluci


on, basada en la definici
on,
para cada estado del aut
omata, de dos relaciones de equivalencia, relacionada
una de ellas con la congruencia por la derecha de Nerode y la otra con la
congruencia sint
actica, como consecuencia de la cual obtienen la cota E L,k =
(k1)P (HL )NL P (NL )+1 donde NL es el ndice de la congruencia por la derecha
de Nerode (tama
no del aut
omata finito determinista mnimo que reconoce L),
HL es el ndice de la congruencia sint
actica y P (n), el llamado n
umero de Bell,
es el n
umero de todas las posibles particiones del conjunto {1, ..., n} . Dado que
n
P
HL est
a acotado por NLNL y que P (n) =
Snj , siendo Snj el n
umero de Stirling
j=1

de segunda clase, que tiene como valor el n


umero de particiones diferentes de
un conjunto de n elementos en j subconjuntos disjuntos no vacos, tenemos que
N

NL

la cota encontrada crece en forma similar a NL L .


Esta cota parece demasiado grande, y los autores del trabajo citado proponen
como problema abierto la obtenci
on de una m
as ajustada. En este captulo,
demostramos la existencia de una cota sustancialmente menor, que adem
as es
minimal, utilizando el concepto de aut
omata universal de un lenguaje L y las
propiedades que convierten a este en una representaci
on can
onica de L. Lo mas
sustancial de esta demostraci
on puede encontrarse en [16].
4.3.2.

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

estado de P a cada uno de los dem


as estados de P es equivalente al aut
omata
original.
Teorema 34 Sea A = hQ, , , I, F i un
omata
y sea P un subconjunto
S aut
S finito
S
de Q. Entonces L(A/P ) = L(A) (
Lq )(
Ipq ) (
Rq ).
qP

p,qP

qP

Demostraci
on. Demostraremos
S
S primero
S que
L(A/P ) L(A) (
Lq )(
Ipq ) (
Rq ) :
qP

p,qP

qP

Si x L(A/P ) existe un camino en A/P etiquetado con los smbolos de x.


Si ese camino no pasa por el estado P , ese mismo camino existe para x en A
y por tanto x L(A). En caso contrario existe una factorizaci
on x = x1 ...xn
tal que el camino en cuesti
on pasa por el estado P exclusivamente
despu
S
S es de
procesar cada segmento xi con 1 i < n. Entonces x1
L q , xn
Rq , y
S
S
S qP S qP
para 1 < i < n, xi
Ipq por lo que x (
Lq )(
Ipq ) (
Rq ).
p,qP

qP

p,qP

qP

Haremos ahora la demostraci


on de la inclusi
on inversa: S
S
Primero, si x L(A) entonces x L(A/P ). Ahora, si x (
Lq )(
Ipq )
qP
p,qP
S
(
Rq ) existe una factorizaci
on x = x1 ...xn tal que x1 Lq1 , xn Rqn y para
qP

1 < i < n, xi Ipi qi , donde los pi y los qi pertenecen a P. De ah se deduce


trivialmente la existencia de un camino de aceptaci
on para x en A/P que pasa
por el estado P exclusivamente tras procesar cada segmento xi para 1 i < n.
Corolario
estados
del conjunto P son fusionables si y solo si
S
S35 Los
S
(
Lq )(
Ipq ) (
Rq ) L(A).
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

Rq1 = (Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 :


R q1 =
R q1 R q2 =
I q1 R q1 I q1 q2 R q2 I q2 R q2 I q2 q1 R q1 =
(Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 =
34

(Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 Rq1 =


(Iq1 Iq2 Iq1 q2 Iq2 q1 )2 Rq1 (Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 Rq1 =
n
(Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 ... (Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 Rq1 =
(por inducci
on)

(Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 .


Entonces
(Lq1 Lq2 ) (Iq1 Iq2 Iq1 q2 Iq2 q1 ) (Rq1 Rq2 ) =

(Lq1 Lq2 ) (Iq1 Iq2 Iq1 q2 Iq2 q1 ) Rq1 =


(Lq1 Lq2 ) Rq1 =
L q1 R q1 L q2 R q1 =
L q1 R q1 L q2 R q2
L(A).
Este lema nos proporciona una idea intuitiva del camino a seguir para acotar
el tama
no de los aut
omatas finitos sin estados fusionables:
Sea A = hQ, , , I, F i un aut
omata finito. Sean q1 y q2 dos estados tales
que las clases en la congruencia por la derecha de Nerode de las palabras que
permiten acceder a ellos desde los estados iniciales son exactamente las mismas.
Sea R el lenguaje regular formado por todas aquellas palabras que son un buen
final en L(A) para todas esas clases. Sea AR un aut
omata finito que acepta R.
Si ampliamos A a
nadiendole AR y enviamos transiciones vacas desde q1 y q2
hasta el estado inicial de R, que ahora no ser
a ya inicial, el aut
omata finito con
transiciones vacas as obtenido ser
a equivalente a A. Adem
as el lenguaje por
la derecha de q1 y q2 en el nuevo aut
omata es en ambos casos R, por lo que si
fusionamos ambos estados el aut
omata obtenido ser
a tambien equivalente a A.
Si, por u
ltimo eliminamos de ese aut
omata el subaut
omata AR obtenemos como
resultado A/{q1 ,q2 } que evidentemente ser
a equivalente a A. Vease un ejemplo
en la figura 15.
En consecuencia, si dos estados de un aut
omata finito tienen lenguajes por
la izquierda formados por palabras (no necesariamente todas , ni las mismas) de
las mismas clases en la congruencia por la derecha de Nerode, esos estados son
fusionables. Siendo NL el ndice de esa congruencia, si un aut
omata finito para
L tiene 2Nl + 1 o mas estados contendr
a necesariamente dos estados fusionables,
por lo que el tama
no de un aut
omata finito para L sin estados fusionables queda
acotado por 2Nl .
En el siguiente apartado damos una demostraci
on mas formal de este resultado.
4.3.3.

Estados fusionables y el aut


omata universal.

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

Lema 39 Sea A un aut


omata finito para el lenguaje L y sea U el aut
omata
universal de L. Sean p y q estados de A y sea el homomorfismo can
onico de
A en U . Entonces:
U
1. LA
q L(q)
U
2. RqA (q) R(q)
A
U
3. Ipq I(q)(q)
Demostraci
on. La primera afirmaci
on se deduce directamente del comentario
anterior. La segunda proviene del hecho de que si un estado q es alcanzado por
palabras pertenecientes a diferentes clases en L , su lenguaje por la derecha
debe estar incluido en la intersecci
on de los lenguajes residuales de esas clases.
Por u
ltimo, la tercera se sigue del hecho de que es un homomorfismo entre
aut
omatas.
Lema 40 Sea A un aut
omata finito para el lenguaje L y sea U el aut
omata
universal de L. Sea el homomorfismo can
onico de A en U . Si existen k estados
de A, q1 , ..., qk tales que (q1 ) = ... = (qk ) entonces los estados q1 , ..., qk son
fusionables.
Demostraci
on. Por el lema anterior
k
k
k
S
S
S
A
U
U
U
U
U
( Lqi )(
IqAi ,qj ) ( RqAi ) LU
(q1 ) (I(q1 ) ) R(q1 ) L(q1 ) I(q1 ) R(q1 )
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 }

Corolario 43 Sea A = hQ, , , I, F i un aut


omata finito para el lenguaje L y
sea U el aut
omata universal de L. A es irreducible si y solo si todo homomorfismo de A en U es inyectivo.
Demostraci
on. Se desprende trivialmente del teorema anterior.
4.3.4.

Irreducibilidad relativa.

En ciertos campos de la teora de lenguajes, tales como la inferencia inductiva o la representaci


on de lenguajes finitos, podemos encontrar el problema
de calcular un aut
omata finito lo mas peque
no posible que acepte todas las palabras de un cierto lenguaje finito M+ y rechace todas las de otro lenguaje finito
M . La obtenci
on de una soluci
on minimal [15] es un problema N P duro. 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 am-

38

bos extremos, consistente en exigir al aut


omata obtenido ciertas propiedades,
irreducibilidad, concisi
on etc. que garanticen que no es innecesariamente grande.
Como veremos m
as adelante, s es f
acil garantizar que el resultado obtenido
mediante un metodo cualquiera sea cuanto menos un aut
omata finito irreducible.
Definici
on 44 Un aut
omata finito A = hQ, , , I, F i es irreducible en el lenguaje L si y solo si L(A) L y para toda partici
on no trivial de Q se cumple que
L(A/) L 6= .
Teorema 45 Sean L un lenguaje regular, U el aut
omata universal de L y A =
hQ, , , I, F i un aut
omata finito tal que L(A) L. A es irreducible en L si y
solo si todo homomorfismo de A en U es inyectivo.
Demostraci
on. Demostraremos primero la condici
on solo si: Si es un homomorfismo no inyectivo de A en U existir
an estados q1 y q2 de Q tales que
(q1 ) = (q2 ). Entonces L A/{q1, q2 } L((A)) L (U ) L y por tanto A
no es irreducible en L.
Veamos ahora la condici
on si: Si A no es irreducible en L existir
an estados
q1 y q2 de Q tales que L A/{q1, q2 } L. Entonces, siendo el homomorfismo
can
onico de A/{q1, q2 } en U , la funci
on de A en U tal que a cada estado p de
Q {q1 , q2 } le asigna ((p)) y (q1 ) = (q2 ) = ((q1 )) es un homomorfismo
no inyectivo de A en U . Vease un ejemplo en la figura 17.

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.

Lema 46 Un automata finito A es irreducible si y solo si existe alg


un lenguaje
L tal que A es irreducible en L.
Demostraci
on. La implicaci
on se deduce de que si A es irreducible entonces
es irreducible en L(A). Para demostrar la implicaci
on es suficiente con observar que, puesto que L(A) L, si L(A/) acepta alguna palabra que no pertenece
a L entonces acepta tambien una palabra (la misma) que no pertenece a L(A).
Lema 47 Un automata finito A = hQ, , , I, F i es irreducible si y solo si existe
alg
un lenguaje cofinito L tal que A es irreducible en L.
39

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.

Lema 51 La irreducibilidad determinista relativa en un lenguaje no implica la


irreducibilidad en ese mismo lenguaje.
Demostraci
on. Basta con considerar el aut
omata
A = h{q0 , q1 , q2 }, {a}, , q0, {q2 }i con (qi , a) = q(i+1)mod3 , el cual no es irreducible en a+ pero si es deterministicamente irreducible en el mismo.

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

An = ( A2,n ) A1 A3,n es un aut


omata finito sin estados superfluos para L.
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.

Como hemos visto, el tama


no de un aut
omata finito irreducible para un
lenguaje L est
a acotado superiormente por el tama
no del aut
omata universal
para ese lenguaje, el cual a su vez est
a acotado por 2NL siendo NL el tama
no
de su aut
omata finito determinista mnimo. Pero en el aut
omata universal el
subconjunto formado por todos los estados excepto los NL que corresponden a
valores del tipo x1 L es un conjunto superfluo. Cabra entonces plantearse la

43

existencia de una cota polin


omica en NL al tama
no del mayor aut
omata finito
para L conciso e irreducible. Veremos a continuaci
on que no existe esa cota.
Lema 56 Sea un alfabeto no trivial, esto es, formado por dos o mas smbolos. No existe una cota superior polin
omica respecto a NL al tama
no de los
aut
omatas finitos concisos irreducibles que aceptan un lenguaje L .
Demostraci
on. Basta para demostrar el enunciado con encontrar una familia
{Ln }n1 de lenguajes tal que NLn crezca polin
omicamente con n y una famila
{An }n1 de aut
omatas finitos concisos e irreducibles tales que L (An ) = Ln y
el n
umero de estados de cada An sea funci
on exponencial de n.
Sea Ln = n1 0 el lenguaje formado por todas aquellas palabras sobre
tales que su enesimo smbolo es 0. Evidentemente NLn = n + 2 aunque si eliminamos el estado superfluo su aut
omata finito determinista mnimo tendr
a n+1

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.

Nos fijaremos ahora en el problema de dados dos lenguajes finitos M+ y


M tales que M+ M = encontrar un aut
omata finito irreducible en M y
conciso en M+ .
45

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}

Figura 21: Se pretende obtener un automata finito a partir de A conciso respecto a


M+ = {0, 0010, 1001, 1010}. Se prueba a eliminar primero los estados 1 y 2, pero los
aut
omatas obtenidos no aceptan la palabra 0010. A continuaci
on se prueba a eliminar
3 obteniendose A{3} , compatible con la muestra. Se deshecha la eliminaci
on de 4 y
la de 5 ya que en ambos casos no se aceptara 1001 y se prueba con 6 resultando el
aut
omata A{3,6} , compatible. Se deshecha la eliminaci
on de 7 y la de 8 por no aceptar
1001 y por u
ltimo se elimina el 9 obteniendose A{3,6,9} , aut
omata conciso en M+ .
Una ordenaci
on diferente de los nodos produce un resultado diferente.

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

palabras Irreducible(A, M ) = A ; Irreducible(Conciso (A, M+ ) , M ) =


Conciso (A, M+ ) .
Demostraci
on. Sean por ejemplo M+ = {0010} , M = {, 1, 10, 110} y
A = h{1, 2, 3, 4} , {0, 1} , , {1}, {2}i con
= {h1, 0, 2i , h1, 1, 4i , h2, 0, 3i , h3, 1, 1i , h4, 0, 3i} . Se puede comprobar sencillamente que se cumplen las condiciones expuestas en el enunciado del lema.
Sin embargo A0 = Conciso (A, M+ ) = h{1, 2, 3} , {0, 1} , 0 , {1}, {2}i con 0 =
{h1, 0, 2i , h2, 0, 3i , h3, 1, 1i} no es irreducible en M pues los estados 2 y 3 pueden
fusionarse dando lugar al aut
omata A00 = A0 /{2,3} =
Irreducible(Conciso (A, M+ ) , M ) = h{1, 2} , {0, 1} , 00 , {1}, {2}i con
00 = {h1, 0, 2i , h2, 0, 2i , h2, 1, 1i} . Para mas claridad vease la figura 22.
0
0

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.

Este concepto fue introducido en [12] con el prop


osito de establecer un marco
que permita considerar el problema de la inferencia de lenguajes regulares como
una b
usqueda dentro de una red booleana construda a partir de un subconjunto
finito del lenguaje a aprender. En el mismo artculo los autores enuncian adem
as
algunas propiedades de ese espacio de b
usqueda.
En este captulo generalizamos en diversas maneras el concepto de red de
aut
omatas finitos y profundizamos en el estudio de sus propiedades, lo que
nos permitir
a enunciar algunos teoremas b
asicos sobre la inferibilidad mediante
diferentes tipos de algoritmos de la clase de los lenguajes regulares.

5.1.

Red de cocientes de un aut


omata finito.

Sea A = hQ, , , I, F i un aut


omata finito. Como se establece en [12], el
conjunto de aut
omatas cocientes de A est
a parcialmente ordenado por la relaci
on
 tal que A/1  A/2 si y solo si existe una partici
on del conjunto de
estados de A/1 tal que (A/1 ) / = A/2 , esto es , si A/2 es un aut
omata
cociente de A/1 . El par hA, i induce adem
as una red, llamada Lat(A), cuyo
cero es A y cuyo uno es el aut
omata finito determinista mnimo para .
Es evidente, por la definici
on de aut
omata cociente, que A/1  A/2
L(A/1 ) L(A/2 ). La implicaci
on contraria, afirmada en [12] debido quiz
as a
una errata, no es sin embargo cierta. Para demostrarlo considerese el aut
omata A = h{0, 1, 2} , {a} , , {0}, {2}i con = {h0, a, 1i , h1, a, 2i} . Evidentemente
L(A/{0,1} ) L(A/{1,2} ) y sin embargo no es cierto que A/{0,1}  A/{1,2}
(Vease la figura 24).
0

0,1

A/{0,1}

1,2

A/{1,2}

Figura 24: Evidentemente, L(A/{0,1} ) L(A/{1,2} ), sin embargo no es cierto que


A/{0,1}  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

Figura 25: Siendo L = 0((0 + 1) 0 + ) y L0 = (0 + 1) 0, A00 y A0 son sus respectivos


aut
omatas finitos deterministas mnimos. Puesto que L L0 construmos a partir de
ellos el aut
omata A que reconoce a L y del cual se puede obtener como cociente A0
mediante la partici
on = {{h1, 1i, h3, 1i, h4, 1i}, {h2, 2i, h4, 2i}}.

Vease un ejemplo en la figura 25.


Siguiendo la notaci
on de [12] diremos que A/1  A/2 si existen dos estados
q1 y q2 de A/1 tales que A/2 = (A/1 )/{q1 ,q2 } .  es as la clausura reflexiva
y transitiva de  . La profundidad de un aut
omata A0 en la red Lat(A) es n
si existen aut
omatas A0 , ..., An tales que A0 = A, An = A0 y para cada entero
i, 0 i < n, Ai  Ai+1 . Puesto que Ai  Ai+1 implica que el n
umero de
estados de Ai+1 es igual al n
umero de estados de Ai menos uno, se cumple que
la profundidad de A0 es igual al n
umero de estados de A menos el n
umero de
estados de A0 .
Lema 68 A  A0 Lat(A0 ) Lat(A).
Demostraci
on. Trivial.
Teorema 69 A0 Lat(A) si y solo si existe un homomorfismo h : A A0 tal
que A0 = h(A).
Demostraci
on. Sean A = hQ, , , I, F i y A0 = hQ0 , , 0 , I 0 , F 0 i . Para demostrar la parte sibasta con considerar, siendo A0 = A/, la funci
on h que
a cada estado q de A le hace corresponder el estado (q) de A0. h es evidentemente un homomorfismo y la imagen de A es A0 .
Para demostrar la parte solo siconsideramos, siendo A0 = h(A), la partici
on
tal que para cada estado (q) = {q 0 : h(q 0 ) = h(q)}. Dado que en h(A) el
estado q 0 es final o inicial si y solo si existe q final o inicial respectivamente
tal que q 0 = h(q) y q 00 (q 0 , a) si y solo si existen p0 , p00 Q tales que q 00
(q 0 , a), h(p0 ) = q 0 , h(p00 ) = q 00 tenemos que A0 = A/.
Para mas claridad vease un ejemplo en la figura 26.

5.2.

Completitud y universalidad estructural.

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.

Sin embargo, evidentemente, para todo aut


omata finito sin estados in
utiles
existe un multilenguaje (colecci
on de palabras en la que se admiten repeticiones)
finito estructuralmente completo respecto a el. El estudio de la inferencia de
lenguajes regulares a partir de multilenguajes y su SCA asociado lo dejamos
para un trabajo posterior. Veremos en cambio ahora un lema que nos permitir
a mantener razonablemente la generalidad sin salirnos del a
mbito de los
lenguajes.
Definici
on 73 Diremos que un aut
omata finito es Linferible si existe alg
un
lenguaje estructuralmente completo respecto a el.
Lema 74 Para todo aut
omata finito sin estados in
utiles ni transiciones superfluas existe otro equivalente Linferible, obtenido a partir de el mediante la
eliminaci
on de algunos estados de los conjuntos de estados iniciales y finales.
Demostraci
on. En primer lugar, dado que el aut
omata no contiene transiciones
superfluas, para cada transici
on existe al menos una palabra cuya aceptaci
on
pasa inevitablemente por ella. Y en segundo lugar, si no existe una palabra para
cuya aceptaci
on sea indispensable que determinado estado sea inicial o final el

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)

Figura 28: (A) Subautomata Linferible maximal equivalente al automata A de la


figura anterior. Existen un total de cinco, obtenido cada uno de ellos de la supresi
on
de uno de los estados marcados del conjunto de estados finales. (B) Subaut
omata
Linferible maximal equivalente al aut
omata B de la figura anterior. Existen un total
de dos, siendo el otro el resultante de eliminar el estado dos del conjunto de estados
iniciales.
As, teniendo presentes estas consideraciones, enunciamos el siguiente teorema:
Teorema 75 Para todo lenguaje regular L existe un lenguaje finito S tal que
todo aut
omata finito irreducible que acepte a L pertenece a Lat(M CA(S)).
Demostraci
on. Puesto que cada aut
omata irreducible para L es un subaut
omata del aut
omata universal para L, el conjunto {Ai }iI formado por todos ellos
es un conjunto finito. Sea para cada
S i I, Si un lenguaje estructuralmente
completo para Ai . Entonces S =
Si es estructuralmente completo respecto a
iI

cada uno de ellos.


Vease un ejemplo en la figura 29.
53

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)

Figura 29: En la figura (A) se muestra el automata universal U para el lenguaje


formado por todas aquellas palabras de ceros y unos que no terminan en dos o mas
ceros. En las dem
as figuras se muestran algunos aut
omatas irreducibles para el mismo
lenguaje que son, por tanto, subaut
omatas de U. Una muestra subestructuralmente
completa para U debe ser estructuralmente completa respecto a cada uno de ellos.
N
otese que el que la muestra sea estructuralmente completa para U no garantiza que
lo sea para cada uno de sus subaut
omatas. Por ejemplo, {10111, 11011, 0110111} es
estructuralmente completa para U pero no para los aut
omatas de las figuras (B), (C),
(D), (E) y (F).
Definici
on 76 Diremos que un lenguaje finito es subestructuralmente completo
respecto a un aut
omata A si lo es respecto a cada uno de sus subaut
omatas
irreducibles equivalentes a el.
Teorema 77 Para todo lenguaje regular L existe un lenguaje finito S tal que
todo aut
omata finito irreducible que acepte a L pertenece a Lat(M CA(S)) y tal
que cada aut
omata irreducible en L que pertenece a Lat(M CA(S)) reconoce L.
Demostraci
on. Sea S1 un lenguaje finito subestructuralmente completo respecto al aut
omata universal de L. Sea por otra parte {Ai }iJ el conjunto de
subaut
omatas del aut
omata universal de L irreducibles en L que reconocen un
lenguaje incluido propiamente en L. Este conjunto es evidentemente finito. Para
cada uno de estos subaut
omatas Ai existe al menos una palabra xi de L que
no es aceptada por el. Sea S2 = {xi }iJ el lenguaje finito formado por esas
palabras. Sea entonces S = S1 S2 .
54

Por el teorema anterior sabemos que todo aut


omata finito irreducible que
acepte a L pertenece a Lat(M CA(S)).
Sea por otra parte A un aut
omata de Lat(M CA(S)) irreducible en L. Puesto
que L(A) est
a includo en L existe un homomorfismo h de A en U , el aut
omata
universal para L. Dado que A es irreducible en L el homomorfismo h es inyectivo y por tanto h(A) es isomorfo a A. A es por tanto un subaut
omata de U
irreducible respecto a L. Como A acepta todas las palabras de S2 no puede ser
uno de los subaut
omatas irreducibles de U que aceptan un subconjunto propio
de L, y por tanto L(A) = L.
Definici
on 78 Llamaremos lenguaje estructuralmente universal de un lenguaje
regular L a cualquier subconjunto S de L tal que para cualquier aut
omata finito
A irreducible en L, A Lat(M CA(S)) L(A) = L.
Definici
on 79 Llamaremos muestra estructuralmente universal de un lenguaje
regular L a cualquier lenguaje finito estructuralmente universal de L.
Teorema 80 Para toda muestra estructuralmente universal S de un lenguaje
regular L se cumple que todo aut
omata finito A irreducible en L tal que S L(A)
reconoce L.
Demostraci
on. Puesto que A es irreducible en L es isomorfo a un subaut
omata
del aut
omata universal para L. Por construcci
on, si A reconociera un subconjunto propio de L habra al menos una palabra en S que no pertenecera a L(A).
Teorema 81 Sea L un lenguaje regular y sean S1 y S2 lenguajes finitos tales
que S1 S2 L. Si S1 es una muestra estructuralmente universal de L entonces
tambien lo es S2 .
Demostraci
on. Trivial.
5.2.1.

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

que no lo sea, obtener un nuevo aut


omata finito a
nadiendo a aquel el M CA del
lenguaje formado exclusivamente por la nueva palabra y probando a fusionar
cada uno de los nuevos estados con todos los dem
as del aut
omata resultante bajo
la supervisi
on del or
aculo. El proceso requrir
a como m
aximo mn + n(n 1)/2
intentos de fusi
on siendo m el n
umero de estados de la hip
otesis actual y n la
longitud de la nueva palabra mas uno.
Vease un ejemplo en la figura 30
0

0
0
0

(A)
0

(B)

(C)

(D)

(E)

(F)

(G)

(H)

Figura 30: En la figura (A) se muestra el automata universal U para el lenguaje 00 .


En las figuras (B)-(F) se muestran todos los aut
omatas irreducibles para el mismo
lenguaje que son, por tanto, subaut
omatas de U. La muestra {00000} es subestructuralmente completa para U, pues es estructuralmente completa respecto a cada uno
de ellos. En las figuras (G) y (H) tenemos los subaut
omatas de U que aceptan un
subconjunto propio de 00 distinto del vaco. La muestra {00, 00000} es estructuralmente universal para 00 , pues no es aceptada por ninguno de estos u
ltimos. Cualquier
proceso de mezcla de estados sobre M CA({00, 00000}) guiado por un or
aculo para la
inclusi
on en 00 teminar
a por tanto, cuando no puedan hacerse mas fusiones, en uno
de los aut
omatas (A)-(F).

5.3.

Semired de cocientes asociada a un par de aut


omatas
finitos.

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

tos A00 de Lat(A) tales que L(A00 ) L = .


Puede verse un ejemplo en la figura 31.

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

Figura 31: Semired de cocientes asociada a los automatas A y A0 . BS(A, A0 ) =


{A5 , A6 }

Lema 84 L(A) L(A0 ) = implica que SemiLat(A, A0 ) forma una semired


junto con el orden  .
Demostraci
on. Evidentemente A SemiLat(A, A0 ) por lo que es suficiente demostrar que si A1 , A2 Lat(A, A0 ), A1  A2 y A2 SemiLat(A, A0 ) entonces
A1 SemiLat(A, A0 ). Esto se deduce trivialmente de que A1  A2 implica que
L(A1 ) L(A2 ) que a su vez implica que L(A2 )L(A0 ) = L(A1 )L(A0 ) = .

57

Lema 85 A0 SemiLat(A, L(A)) L(A0 ) = L(A).


Demostraci
on. A0 SemiLat(A, L(A))
0
A  A L(A0 ) L(A) =
L(A) L(A0 ) L(A0 ) L(A)
L(A0 ) = L(A).
Definici
on 86 Dados dos aut
omatas finitos A y A0 tales que L(A) L(A0 ) =
llamaremos borde de la semired de cocientes asociada a A y A 0 al conjunto
BS(A, A0 ) formado por aquellos elementos A00 de SemiLat(A, A0 ) tales que
no existe A000 SemiLat(A, A0 ) tal que A000 6= A00 y A00  A000 . Adem
as,
para lenguajes fintos cualesquiera S1 y S2 tales que S1 S2 = llamaremos
BSM CA (S1 , S2 ), BSP T A (S1 , S2 ), etc. a BS(M CA(S1 ), M CA(S2 )),
BS(P T A(S1 ), P T A(S2 )),etc.
Lema 87 A1  A2 SemiLat(A2 , A0 ) SemiLat(A1 , A0 ). A1  A2
BS(A2 , A0 ) BS(A1 , A0 ).
Demostraci
on. Trivial.
Lema 88 Todo aut
omata finito perteneciente a BS(A, L) es un aut
omata irreducible en L.
Demostraci
on. Se desprende trivialmente de la definici
on de BS(A, L).
Lema 89 Todo aut
omata finito perteneciente a BS(A, L(A)) es un aut
omata
irreducible equivalente a A.
Demostraci
on. Es equivalente a A por pertenecer a SemiLat(A, L(A)) y es
irreducible por pertenecer a BS(A, L(A)).
Corolario 90 A es irreducible si y solo si SemiLat(A, L(A)) = BS(A, L(A)) =
{A} .
Lema 91 Para todo aut
omata finito A existe un lenguaje finito L para el que
BS(A, L) est
a formado exclusivamente por aut
omatas irreducibles equivalentes
a A. Concretamente, BS(A, L) = BS(A, L(A)).
Demostraci
on. Consideremos el conjunto {Ai } formado por aquellos aut
omatas Ai Lat(A) SemiLat(A, L(A)) tales que existe A0i SemiLat(A, L(A)),
A0i  Ai , esto es, Ai se obtiene de A0i mediante la fusi
on de dos de sus estados.
{Ai } es un conjunto finito. Adem
as, para cada Ai existe al menos una palabra
xi tal que xi L(A0i ) = L(A), xi
/ L(Ai ). Sea L un lenguaje finito formado
por una de estas palabras por cada Ai . Entonces BS(A, L) = BS(A, L(A)) y
por tanto est
a formado exclusivamente por aut
omatas irreducibles equivalentes
a A.
Lema 92 Para todo aut
omata finito A y todo lenguaje regular L tal que L(A)
L = existe un lenguaje finito S tal que BS(A, L) = BS(A, S).
58

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

regulares. Despues de todo, en cualquier caso pr


actico siempre dispondremos de
un n
umero finito de muestras, y el hecho de que el algoritmo utilizado infiera
en el lmite la clase L3 no garantiza en absoluto que a partir de ellas podamos
obtener un aut
omata para el lenguaje objetivo.
Veamos ahora una versi
on semiincremental del teorema anterior. Comenzaremos estableciendo el siguiente lema:
Lema 99 Sea hS+ , S i una muestra completa universal de un lenguaje L y sea
S1 S+ . Entonces si M CA(S1 )/ es irreducible en S y L(M CA(S1 )/) S+
se cumple que L(M CA(S1 )/) = L.
Demostraci
on. Dado que hS+ , S i es una muestra completa universal de L,
basta con demostrar que M CA(S1 )/ Lat(M CA(S+ )). Para ello es suficiente
con observar que podemos obtener M CA(S1 )/ a partir de M CA(S+ ) de la
siguiente manera: Primero construmos M CA(S1 )/ utilizando el subaut
omata
M CA(S1 ) de M CA(S+ ); por u
ltimo, dado que L(M CA(S1 )/) S+ , para
cada palabra xy de S+ S1 existe un camino de aceptaci
on en M CA(S1 )/ por
lo que podemos unir el estado hx, yi de M CA(S+ ) con el estado alcanzado en la
aceptaci
on de xy tras procesar x, obteniendo como resultado final el aut
omata
M CA(S1 )/.
Ahora estamos ya en condiciones de demostrar el siguiente teorema:
Teorema 100 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 = A M CA({xi })
A = A/ para cualquier partici
on tal que A/ sea irreducible en S
infiere en el lmite L3 .
Demostraci
on. El razonamiento es exactamente el mismo que en el teorema
anterior, exceptuando el hecho de que s
olo se utilizan en la construcci
on del
aut
omata aquellas palabras que no son reconocidas por la hip
otesis actual. El
lema precedente garantiza la convergencia.
Vease un ejemplo de la traza de un algoritmo de este tipo en la figura 32.

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

Figura 32: Proceso de inferencia a partir de las muestras M+ =


{0001, 001, 00, 0, 110, 11010} y M = {1, 01, 11, 011, 100}. En cada caso se toman los
estados en orden y se prueba a unir cada uno de ellos con cada uno de los anteriores,
tambien en orden. A1 : M CA({0001}). A2 : Unimos el estado 2 con el 1 sin que se
produzca incompatibilidad con M . Probamos a unir el 3 con el 1 y el 4 con el 1 y
con el 3, pero en todos los casos se producen incompatibilidades. A3 : Unimos el 5 con
el 1. Pasamos a la siguiente palabra de la muestra, 001, pero como es aceptada por
la hip
otesis actual la ignoramos. Lo mismo ocurre con 00 y 0. Llegamos a 110 que
no es aceptada. B1 : Unimos M CA({110}) a la hip
otesis actual. B2 : Unimos 4 con 1.
B3 : Tras rechazar la uni
on de 5 y 1, unimos 5 con 2. B4 : Tras rechazar la uni
on de
6 y 1, unimos 6 con 2. B5 : Tras rechazar la uni
on de 7 con 1 y con 2, unimos 7 con
3. La u
ltima palabra de la muestra es aceptada por la hip
otesis actual, por lo que la
ignoramos. B5 es un aut
omata irreducible compatible con la muestra.

62

6.

Inferencia mediante subaut


omatas asociados
a palabras.

Describimos en esta secci


on una nueva familia de algoritmos para la inferencia de lenguajes regulares. Cada algoritmo de esta familia, teniendo como
entrada una muestra hS+ , S i , calcula para cada palabra x de S+ al menos
un aut
omata finito que acepta a x y es consistente con S . Este aut
omata
es adem
as irreducible en S y por tanto irreducible. La salida del algoritmo
es el aut
omata formado por la colecci
on de aut
omatas finitos asociados a cada
palabra de S+ . Cada algoritmo de la familia converge en el lmite a un aut
omata
para el lenguaje objetivo.
Presentamos tambien los experimentos realizados para comparar algunos
algoritmos de esta familia con otros algoritmos bien conocidos para la misma
tarea. Los resultados obtenidos por nuestros algoritmos son en general mejores,
tanto en tasa de error como en el tama
no de la salida. Adem
as, la estructura
particular de estos algoritmos resulta en una complejidad menor y por tanto
tiempos de ejecuci
on sustancialmente menores a los de los algoritmos cl
asicos.

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.

Lema 103 Sea L un lenguaje regular y sea x L. Cualquier subaut


omata asociado a x en L puede obtenerse conociendo un n
umero finito de palabras de
L.
Demostraci
on. Se deduce directamente del hecho de que un aut
omata finito
es irreducible si y solo si es irreducible en el complementario de alg
un lenguaje
finito. Adem
as, sea hu, v, wi una factorizaci
on de x, esto es, x = uvw. Si los
estados de Ax hu, vwi y huv, wi no pueden ser fusionados basta con conocer
cualquier palabra de uv wL para evitar su fusi
on. Por tanto el n
umero mnimo
de palabras suficiente para garantizar la obtenci
on de un subaut
omata asociado
a x en L esta acotado por |x|2 .
Teorema 104 Para todo lenguaje regular L existe un subconjunto finito M tal
que L es la uni
on de los lenguajes reconocidos por los subaut
omatas asociados
a las palabras de M en L.
64

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)

Figura 34: Siendo L = (0 + 1) (00 + 11)(0 + 1) y M = {010001, 011101} se cumple


que L es la uni
on de los lenguajes reconocidos por los subaut
omatas asociados a las
palabras de M en L, ya que entre los asociados a 010001 est
a (A) y entre los asociados
a 011101 est
a (B).

Una familia de algoritmos para la inferencia de L3


mediante aut
omatas finitos.

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.

Sea S = hS+ , S i una muestra de un lenguaje, donde S+ = {x1 , ..., xn }.


El algoritmo WASRI1 obtiene un aut
omata finito A compatible con S de la
siguiente manera:
Sea A = hQ, , , I, F i con Q = = I = F =
Desde i = 1 hasta i = n
Si xi L(A)
Ai = h, , , , i
Si xi
/ L(A)
Sea Ai = Axi con Qi = {qi1 , ..., qim }
Desde j = 2 hasta j = m
Desde k = 1 hasta k = j 1
Si qik Qi
Si L(Ai /{qik ,qij } ) S =
Ai = Ai /{qik ,qij } )
A = A Ai
A = h, , , , i
Desde i = n hasta i = 1
Si (L(Ai ) S+ ) L(A) 6=
A = A Ai
66

Por A = A Ai queremos significar que siendo A = hQ, , , I, F i y Ai =


hQi , , i , Ii , Fi i el aut
omata A pasa a ser hQ Qi , , i , I Ii , F Fi i donde,
una vez m
as, las uniones se presuponen disjuntas.

6.3.

Dos ejemplos.

Presentamos en este apartado dos ejemplos de ejecuci


on encaminados a facilitar la comprensi
on de W ASRI1. El primero describe la mayora de situaciones
que pueden producirse, esto es, adem
as de la mezcla de estados refleja tambien
el hecho de que algunas palabras de la entrada pueden ser reconocidas por el
aut
omata hip
otesis actual y que algunos de los subaut
omatas obtenidos puede
ser eliminado posteriormente si el aut
omata resultante acepta todas las palabras
de la muestra positiva. El segundo ejemplo muestra que este algoritmo puede
tratar algunas situaciones de una forma mucho mas eficiente que el resto de
algoritmos con los que ha sido comparado.
6.3.1.

Ejemplo de ejecuci
on.

Supongamos que la entrada a W ASRI1 es S+ = {0, 000011, 001, 0101010}


y S = {01000010}.

(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

previas produciran un aut


omata que acepta la muestra negativa. El aut
omata
resultante es el de la figura 35(C). Por u
ltimo, la mezcla de los estados 5 y 8
produce el aut
omata de figura 35(D), irreducible en S .

0,1

0,1

(A)

1
0

(B)

(C)

Figura 36: Automata finito producido por WASRI1 para la entrada S+ =


{0101010, 0, 001, 000011} y S = {01000010} antes del borrado del subaut
omata superfluo (B).

Consideremos ahora la muestra completa S+ = {0, 000011, 001, 0101010}. El


aut
omata obtenido para la primera palabra, 0, se muestra en la figura 36(A).
A continuaci
on la palabra 000011 produce como salida el aut
omata de la figura
36(B). La palabra 001 no produce salida, pues es aceptada por la hip
otesis
actual, el aut
omata formado por los subaut
omatas de la figura 36(A)y(B). A
continuaci
on, la palabra 0101010 produce como salida el aut
omata de la figura
36(C).
Por u
ltimo, como el aut
omata resultante del borrado del subaut
omata correspondiente a la palabra 000011 todava reconoce todas las palabras de S + , el
algoritmo W ASRI1 produce como resultado final el aut
omata formado por los
subaut
omatas (A) y (C) de la figura 36.
6.3.2.

Un ejemplo bonito.

Supongamos que L = {x 0 : |x| es m


ultiplo de 2, 3 o 5} es el lenguaje
objetivo. El aut
omata finito determinista mnimo para L tiene el mismo n
umero
de estados que su RFSA can
onico (30 estados). Si la entrada para W ASRI1 es
S+ = {02 , 03 , 05 } y S = {0, 011 }, produce como salida el aut
omata descrito en
la figura 37, que reconoce L, mientras que algoritmos como RP N I o DeLeT e2
est
an lejos de la convergencia cuando procesan esa entrada.

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

En el captulo dedicado a la experimentaci


on compararemos el comportamiento de algunos algoritmos de la familia W ASRI con el de otros algoritmos cl
asicos entre los que se encuentran aquellos reconocidos como los que
mejores resultados ofrecen. Veremos que los resultados obtenidos por W ASRI
son en general mejores tanto en tasa de error como en el tama
no de la salida. Adem
as, el hecho de que W ASRI procese por separado cada palabra de
la muestra positiva disminuye en buena medida su complejidad temporal, lo
que le permite procesar en un tiempo razonable entradas que para los dem
as
algoritmos suponen ejecuciones excesivamente largas.

69

7.
7.1.

Experimentaci
on.
Las muestras.

El objetivo de esta secci


on no es proporcionar algoritmos de inferencia refinados para su comparaci
on con otros similares ni, mucho menos, algoritmos
dise
nados para su aplicaci
on a alg
un problema en particular. Se persigue u
nicamente mostrar a grandes rasgos que algoritmos basados en los esquemas descritos en los captulos anteriores se comportan en el caso general de forma
similar, algo mejor en algunos casos y algo peor en otros, que aquellos algoritmos basados en esquemas tradicionales. Utilizaremos como referencia para la
comparaci
on dos algoritmos cl
asicos, el RPNI y el DeLeTe2, que infieren respectivamente aut
omatas finitos deterministas y RFSAs. Este u
ltimo ha demostrado
comportarse mejor que los dem
as algoritmos cl
asicos de inferencia cuando los
lenguajes objetivo vienen dados por un proceso de generaci
on psudoaleatoria de
aut
omatas finitos o expresiones regulares, mientras que el RPNI y sus derivados le superan si la fuente de lenguajes objetivo es un proceso de generaci
on
pseudoaleatoria de aut
omatas finitos deterministas.
Las muestras de aprendizaje y test utilizadas en la primera fase de la experimentaci
on fueron extradas, y est
an todava disponibles, de la p
agina web
http : //www.grappa.univlille3.f r/ lemay/de Aurelien Lemay, uno de los
autores de DeLeTe2. Est
an divididas en dos bloques en funci
on de la fuente de
las muestras: Las denominadas er n provienen de expresiones regulares mientras que las denominadas nf a n provienen de aut
omatas finitos con un solo
estado inicial. En ambos casos el valor numerico de n (50, 100, 150, o 200) indica el n
umero de palabras en la muestra de aprendizaje. Cada uno de estos
ocho experimentos consiste en un total de 30 lenguajes diferentes a ser aprendidos y utiliza como test una muestra de mil palabras etiquetadas en funci
on
de su pertenencia o no al lenguaje objetivo. El exito del proceso de aprendizaje
en cada uno de los ocho experimentos se mide en funci
on de la tasa media de
reconocimiento, esto es la media para los 30 lenguajes de que consta cada experimento de los porcentajes de coincidencia en la clasificaci
on de las palabras
de la muestra de test realizada por el aut
omata obtenido como resultado del
mismo.
Sin embargo, estos experimentos presentan ciertas caractersticas que no
son del todo de nuestro gusto: Tanto las muestras de aprendizaje como las de
test contienen palabras repetidas, las muestras de aprendizaje y las de test no
son disjuntas entre si, los aut
omatas objetivo son diferentes para cada tama
no
de las muestras de aprendizaje, por lo que estas no son incrementales, lo cual
dificulta la observaci
on de la evoluci
on en el comportamiento del algoritmo de
aprendizaje respecto al n
umero de muestras, etc. Decidimos por ello utilizar
en una segunda etapa un sistema de experimentaci
on ligeramente diferente:
Para cada uno de los 240 lenguajes del experimento anterior (120 procedentes
de expresiones regulares y 120 de aut
omatas finitos) obtuvimos muestras de
aprendizaje de tama
nos 100, 200, 300, 400 y 500, cada una de las cuales contiene
a la anterior, y muestras de test de tama
no 1000 disjuntas de las de aprendizaje.

70

Denominamos a estas muestras ER n y N F A n donde una vez mas ER y N F A


indican la procedencia y n su tama
no.

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.

El segundo algoritmo, correspondiente al esquema general de fusi


on de estados, al que nos referiremos como LP EF (Lista de Pares de Estados Fusionables)
es mas complejo. Al igual que en el caso anterior se construye un subaut
omata
para cada palabra no aceptada por la hip
otesis actual. La construcci
on del subaut
omata se realiza de la siguiente manera: Para cada par de estados fusionables
se calcula el n
umero de pares de estados fusionables que contiene el aut
omata
resultante de su fusi
on y se efect
ua la fusi
on del par de estados para los que
ese valor es maximal. El proceso contin
ua mientras quedan pares de estados
fusionables. Una vez obtenido el subaut
omata el proceso contin
ua intentando
unir, en orden secuencial, cada estado del nuevo subaut
omata con cada estado
del aut
omata que constitua la hip
otesis anterior. Por u
ltimo se eliminan los
estados superfluos del aut
omata resultante obteniendose as la nueva hip
otesis.

7.4.

Resultados

Los resultados de los experimentos realizados se muestran en la siguiente


tabla:
71

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.

Comenzaremos este apartado enumerando los resultados de este trabajo que


consideramos mas relevantes y lo finalizaremos describiendo algunos de los problemas que quedan abiertos para futuros trabajos.
Entre los resultados obtenidos destacamos los siguientes:
Se ha introducido el concepto de irreducibilidad relativa, definida de manera
que un aut
omata finito A es irreducible en un lenguaje L si y solo si L(A) L
y la fusi
on de dos estados cualesquiera de A da lugar a un aut
omata A0 tal
0
que L(A ) * L. Se ha demostrado que, siendo U el aut
omata universal de L, el
aut
omata A es irreducible en L si y s
olo si existe alg
un homomorfismo de A en U
y, adem
as, todo homomorfismo de A en U es inyectivo. De aqu se desprende que
un aut
omata finito A es irreducible (en L(A)) si y solo todo homomorfismo de
A sobre el aut
omata universal para L(A) es inyectivo y que por tanto el tama
no
m
aximo para cualquier aut
omata finito irreducible est
a acotado por 2 n siendo
n el n
umero de estados del aut
omata finito determinista mnimo equivalente a
A.
Se ha definido muestra estructuralmente universal de un lenguaje regular L
como cualquier muestra positiva S de L tal que un aut
omata es un aut
omata
irreducible para L si y solo si es un aut
omata cociente irreducible en L del aceptor can
onico maximal de S. Se ha demostrado que para todo lenguaje regular
existe una muestra estructuralmente universal y que si S es una muestra estructuralmente universal para L y S S 0 L entonces tambien lo es S 0 . A partir
de este resultado se ha descrito un esquema de inferencia incremental mediante
datos positivos y un or
aculo para la inclusi
on que aprende en el lmite la clase
de los lenguajes regulares representados mediante aut
omatas finitos.
As mismo se ha definido muestra completa universal de un lenguaje regular
L como cualquier muestra hS1 , S2 i de L tal que BSM CA (S1 , S2 ) es el conjunto
formado exclusivamente por todos los aut
omatas irreducibles que reconocen L,
esto es, un aut
omata irreducible reconoce L si y solo si es un aut
omata cociente
del aceptor can
onico maximal de S1 irreducible en el complementario de S2 . De
este resultado se deduce que cualquier proceso de fusi
on de estados en el aceptor
maximal can
onico de una muestra positiva, compatible con una muestra negativa y que respete ciertos principios bastante debiles, es de hecho, un sistema
para la inferencia en el lmite de la clase de los lenguajes regulares mediante
representaci
on no determinista. Bas
andonos en este esquema hemos desarrollado algunos algortmos sencillos que compiten con exito con los algoritmos de
referencia en la actualidad.
Por u
ltimo, se ha definido subaut
omata asociado a una palabra x en el
lenguaje L como cualquier aut
omata finito irreducible en L obtenido como cociente del aceptor can
onico maximal de {x} y se ha demostrado que para todo
lenguaje regular L existe una muestra finita S tal que L es la uni
on de los
lenguajes reconocidos por los subaut
omatas asociados a las palabras de M en
L. A partir de este resultado se ha descrito un esquema para la inferencia en
el lmite mediante representaci
on no determinista de la clase de los lenguajes
regulares y se han implementado algoritmos que siguen este esquema con la
73

particularidad de que su complejidad depende solo linealmente del n


umero de
palabras de la muestra y cuadr
aticamente de la longitud de cada una de las
mismas, lo que permite utilizar estos algoritmos en tareas que por su tama
no
seran inabordables para otros algoritmos de mayor complejidad. Adem
as se ha
comparado satisfactoriamente el comportamiento de alguno de estos algoritmos
con el de otros algoritmos para la misma tarea, particularmente en el caso en
que el lenguaje objetivo viene representado por expresiones regulares generadas
pseudoaleatoriamente.
En cuanto a futuras lneas de ampliaci
on de este trabajo mencionaremos las
siguientes: Desarrollo de algortmos eficientes para la inferencia tanto de la clase
de los lenguajes regulares como de algunas de sus subclases mas significativas,
estudio de algunos de los eursticos ya existentes para estas tareas para, a la luz
de estos resultados, averiguar si son realmente algoritmos o si pueden llegar a
serlo mediante la introducci
on de peque
nas modificaciones, el estudio, similar al
efectuado para la irreducibilidad y la concisi
on, de otras propiedades deseables
en los aut
omatas finitos, como por ejemplo la primalidad, etc.

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

[17] M. A. Harrison. Introduction to formal language theory. Addison-Wesley,


1978.
[18] C. de la Higuera. Characteristic sets for polynomial grammatical inference.
Machine Learning 27, pp 125-137, 1997.
[19] J. E. Hopcroft and J. D. Ullman. Introduction to automata theory, languages and computation. Addison-Wesley, 1979.
[20] L. Ilie, G. Navarro and S. Yu. On NFA reductions. LNCS 3113, pp 112-124,
2004.
[21] L. Ilie and S. Yu. Algorithms for computing small NFAs. LNCS 2420, pp
328-340, 2002.
[22] L. Ilie and S. Yu. Reducing NFAs by invariant equivalences. Theoretical
computer science 306, pp 373-390, 2003.
[23] T. Kameda and P. Weiner. On the state minimalization of nondeterministic
finite automata. IEEE transactions on computers, vol C-19, numb 7, pp
617-627, 1970.
[24] K. J. Lang. Random DFAs can be aproximately learned from sparse uniform examples. Proc. of the fifth annual ACM workshop on computational
learning theory, pp 45-52, 1992.
[25] K. J. Lang, B. A. Pearlmutter and R. A. Price. Results of the Abbadingo
one DFA learning competition and a new evidence-driven state merging
algorithm. ICGI 98, LNAI 1433, pp 1-12, 1998.
[26] S. Lombardy and J. Sakarovitch. On the star height of rational languages.
A new presentation for two old results. Proc. of Words, languages and
combinatorics III. World scientific, pp 266-285, 2003.
[27] O. Matz and A. Potthoff. Computing small nondeterministic finite automata. BRICS notes series, May 95, pp 74-78, 1995.
[28] J. Oncina and P. Garca. Inferring regular languages in polynomial update
time. Pattern recognition and image analysis, pp 49-61, 1992.
[29] L. Pol
ak. Syntactic semiring and universal automaton. Proc. of Developments in language theory, LNCS 2710, pp 411-422, 2003.
[30] L. Pol
ak. Minimalizations of NFA using the universal automaton. LNCS
3317, pp 325-336, 2005.
[31] M. O. Rabin and D. Scott. Finite automata and their decision problems.
IBM journal of research and development 3, pp 114-125, 1959.
[32] B. Traktenbrot and Y. Barzdin. Finite automata: Behavior and synthesis,
1973.
76

[33] L. G. Valiant. A theory of the learnable. Comunications of the ACM, vol


27, numb 11, pp 1134-1142, 1984.
[34] R. M. Wharton. Aproximate language identification. Information and control 33, pp 253-255, 1974.
[35] S.Yu. Handbook of formal languages, Regular languages, vol 1, chap 2.
Springer Verlag, 1997.

77

S-ar putea să vă placă și