Este es un resumen del documento sobre el número de idiomas distintos aceptados por autómatas finitos con n estados . El documento proporciona límites relativamente fáciles, aunque lejos de ser estrictos, inferiores y superiores en cuanto al número de idiomas distintos aceptados por los NFA. Su discusión sobre el número de DFA distintos es muy perspicaz, por lo que también incluiré esa parte.
El artículo comienza con un asintótico bastante riguroso para la cantidad de idiomas distintos aceptados por un DFA con estados sobre un alfabeto unario. Esto se realiza observando en qué condiciones un DFA unario n dado es mínimo. En tales casos, la descripción del autómata puede asignarse (biyectamente) a una palabra primitiva , y la enumeración de tales palabras es bien conocida y se realiza con la ayuda de la función de Möbius . Usando ese resultado, se prueban los límites para alfabetos no unarios, tanto en el caso de DFA como en el de NFA.nortenorte
Vamos a entrar en más detalles. Para un alfabeto -letter, defina
f k ( n )k
Tenga en cuenta quegk(n)=∑ n i = 1 fk(i). Comenzamos conf1(k)yg1(k).
Fk( n )solk( n )solk( n )= el número de DFA mínimos no isomórficos por pares con n estados= el número de idiomas distintos aceptados por DFA con n estados= el número de idiomas distintos aceptados por NFA con n estados
gk(n)=∑ni=1fk(i)f1(k)g1(k)
Enumeración de Dary unarios
Un DFA unario con estados q 0 , ... , q n - 1 es mínimo iffM=(Q,{a},δ,q0,F)q0 0, ... , qn - 1
- Esta conectado. Por lo tanto, después de cambiar el nombre, el diagrama de transición consiste en un bucle y una cola, es decir, y δ ( q n - 1 , a ) = q j para algunos j ≤ n - 1 .δ( qyo, a ) = qi + 1δ( qn - 1, a ) = qjj ≤ n - 1
- El bucle es mínimo.
- Si , entonces o bien q j - 1 ∈ F y q n - 1 ∉ F o q j - 1 ∉ F y q n - 1 ∈ F .j ≠ 0qj - 1∈ Fqn - 1∉ Fqj - 1∉ Fqn - 1∈ F
El ciclo es mínimo si la palabra a j ⋯ a n - 1 definida por
a i = { 1qj, ... , qn - 1unj⋯ an - 1
esprimitivo, lo que significa que no se puede escribir en la formaxk
para alguna palabraxyalgún enterok≥2.
Seconoce elnúmeroψk(n)de palabras primitivas de longitudnsobrek-alfabetos de letras, véase, por ejemplo, Lothaire,Combinatorics on Words. Tenemos
ψk(n)=∑d | nμ(d)kn/
unyo= { 1si q∈ F,0 0si q∉ F
XkXk ≥ 2ψk( n )nortek
donde
μ(n)es la
función de Möbius. Con la ayuda de
ψ k (n),el documento prueba fórmulas exactas para
f 1 (n)y
g 1 (n)y muestra que asintóticamente (Teorema 5 y Corolario 6),
g 1 ( n )ψk( n ) = ∑reEl | norteμ ( d) kn / d
μ ( n )ψk( n )F1( n )sol1( n )g1(n)f1(n)=2n(n−α+O(n2−n/2))=2n−1(n+1−α+O(n2−n/2)).
Enumeración de DFA
El siguiente paso es un límite inferior para . El teorema 7 establece que
f k ( n ) ≥ f 1 ( n ) n ( k - 1 ) n ∼ n 2 n - 1 n ( k - 1 ) n .
Para un conjunto Δ ⊂ Σ de un autómata M , defina M Δ como la restricción de M a Δ .fk(n)
fk(n)≥f1(n)n(k−1)n∼n2n−1n(k−1)n.
Δ⊂ΣMMΔMΔ
La prueba funciona considerando el conjunto
de
M de DFA sobre el alfabeto
k -letter
{ 0 , 1 , ... , k - 1 } definido por
Sk,nMk{0,1,…,k−1}
- Dejar que sea uno de los f 1 ( n ) diferentes DFA unarios en n estados, yM{0}f1(n)n
- La elección de cualquier funciones h i : Q → Q para 1 ≤ i < k y que define δ ( q , i ) = h i ( q ) para 1 ≤ i < k y q ∈ Q .k−1hi:Q→Q1≤i<kδ(q,i)=hi(q)1≤i<kq∈Q
La observación es entonces que contiene f 1 ( n ) n ( k - 1 ) n idiomas diferentes y mínimos.Sn,kf1(n)n(k−1)n
Enumeración de los NFA
G1(n)2nϵ,a,…,an−1n
G1(n)≤(c1nlogn)n
k≥2
n2(k−1)n2≤Gk(n)≤(2n−1)2kn2+1.
(q,a)Qδ(q,a)2kn2{1,…,k}k∈[0..n−1]M=(Q,Σ,δ,q0,F)Σ={0,1,…,k−1}Q = { q0 0, ... , qn - 1}δδ( qyo, 0 )δ( qyo, J )= q( i + 1 )modificaciónnortepara 0 ≤ i < n= hj( i )para 0 ≤ i < n ,1 ≤ j < k
hj: { 1 , ... , n - 1 } → 2QF= { qyo}i ∈ [ 0 .. n - 1 ]2( k - 1 ) n2norteformas de elegir el conjunto de estados finales. Entonces se puede demostrar que no hay dos NFA que acepten el mismo idioma.