Membresía de transición monoide para DFA

9

Dado un DFA completo , podemos definir una colección de funciones para cada y con , . Podemos generalizar esta noción a una palabra y donde denota la composición de la función. Además, denotamos y es monoide.f a a Γ f a : Q Q f a ( q ) = δ ( q , a ) w = a 1 , , a m f w = f a 1f a mG = { f wA=(Q,Γ,δ,F)faaΓfa:QQfa(q)=δ(q,a)w=a1,,amfw=fa1famG={fwwΓ}G

[ generalmente se llama monoide de transición en el libro de texto estándar, pero aquí reproduzco la definición para mayor claridad.]G

La pregunta es, dada una función , ¿podemos decidir (idealmente en tiempo polinómico), y si este es el caso (es decir, existe un tal que ), si es solo polinomialmente largo o puede ser exponencialmente largo? f:QQfGwf=fww

[Supongo que esa palabra podría ser exponencialmente larga, pero estoy buscando un ejemplo simple.]

maomao
fuente

Respuestas:

9

Decidability

Es decidible. Solo hay muchas funciones posibles , por lo que puede modelar esto como un problema de accesibilidad gráfica, con un vértice por función y un borde si existe tal que . Luego, probar si una función está en reduce a probar si es accesible en el gráfico desde . Puede encontrar la palabra más corta usando la amplitud por primera vez. Sin embargo, el tiempo de ejecución puede ser exponencial eng h a Γ h = f ag g G g f ϵ Qf:QQghaΓh=faggGgfϵQ

Longitud de la palabra

La palabra más corta puede ser exponencialmente larga. Aquí hay un ejemplo de tal DFA. Deje que sean los primeros primos. Entonces, un estado será de la forma donde y . Definir un DFA con el alfabeto unario y la función de transición La función. viene dada porp1,,pkk(i,x)i{1,,k}xi{0,1,,pi1}Γ={0}δ((i,x),0=(i,x+1modpi)f0:QQ

f0(i,x)=(i,x+1modpi).

Ahora considere la función dada porg:QQ

g(i,x)=(i,x1modpi).

Es posible utilizar el teorema del resto chino para mostrar que donde , y que es la palabra más corta. Por otra parte, , por lo que es exponencialmente grande en .g=f0nn=p1×p2××pk10n|Q|=p1++pknQ

En consecuencia, no hay esperanza de un algoritmo de tiempo polinómico que genere una palabra de este tipo. Este hojas todavía abierta la posibilidad de un algoritmo de tiempo polinómico para decidir si es en , sin embargo.gG

DW
fuente