Separação exponencial entre NFAs e DFAs na presença de sindicatos

15

Recentemente, uma pergunta interessante foi feita e, posteriormente, excluída.

Para um idioma comum , sua complexidade do DFA é o tamanho do DFA mínimo que o aceita e sua complexidade de NFA é o tamanho do NFA mínimo que o aceita. É sabido que existe uma separação exponencial entre as duas complexidades, pelo menos quando o tamanho do alfabeto é ilimitado. De fato, considere o idioma sobre o alfabeto consiste em todas as palavras que não contêm todos os símbolos. Usando o teorema de Myhill-Nerode, é fácil calcular a complexidade do DFA . Por outro lado, a complexidade da NFA é apenas (se vários estados iniciais são permitidos; caso contrário, é ).euLL n { 1 , , n }Ln{1,,n}2 n n n + 12nnn+1

A questão suprimido em causa o DFA cobrindo complexidade de uma linguagem, que é o mínimo tal que pode ser escrita como a união (não necessariamente disjuntos) de idiomas de complexidade DFA no máximo . O DFA que cobre a complexidade de é apenas .C G C G N 2CLCLn2

Existe uma separação exponencial entre a complexidade do NFA e o DFA que cobre a complexidade?

Yuval Filmus
fonte

Respostas:

8

Considere o idioma , onde é um novo símbolo. A complexidade NFA de é n . Mostraremos que sua complexidade de cobertura do DFA é 2 ^ n .M n = ϵ + ( L n # ) L n # M n n 2 nMn=ϵ+(Ln#)Ln#Mnn2n

Seja UMAA um DFA que aceite algum idioma L ( A ) M nL(A)Mn , com a função de transição q AqA . Chame um estado ss viável se houver alguma palavra Ww tal que q A ( s , w )qA(s,w) é um estado de aceitação. Para quaisquer dois estados de não falha s , ts,t , deixe A s , t = { w ( 1 + + n ) : q A ( s , w ) = t } .

As,t={w(1++n):qA(s,w)=t}.
Não é difícil verificar se todas as palavras w L ( A )wL(A) podem ser escritas como w = w 1 # # w lw=w1##wl que w iA s i , t iwiAsi,ti para algumas opções viáveis s_i, t_is i , t isi,ti .

Suponha que , onde cada é um DFA. Seja a estrutura gerada por todos os idiomas . Podemos ver como uma linguagem sobre , o espaço entre quaisquer dois símbolos correspondentes a . Sob esse ponto de vista, corresponde a .M n = N i = 1 L ( A i ) A i P A i s , t L ( A i ) L P ( A i ) P # M n P Mn=Ni=1L(Ai)AiPAis,tL(Ai)LP(Ai)P#MnP

Chame universal se, para alguns , for o caso de todo existir modo que . Afirmamos que alguns são universais. Caso contrário, cada contém no máximo palavras de comprimento . No total, o deve conter todas as palavras de comprimento , portanto , que é violado por suficientemente grande .L P ( A i )LP(Ai) xPxPyPyPzPzPxyzLP(Ai)xyzLP(Ai)LP(Ai)LP(Ai)LP(Ai)LP(Ai)(|P|1)l(|P|1)lllLP(Ai)LP(Ai)|P|l|P|lll|P|lN(|P|1)l|P|lN(|P|1)lll

Suponha que seja universal e escreva por questões de brevidade. Seja o prefixo correspondente e seja uma palavra correspondente a ele. Assim, para cada existe algum tal que .LP(Ai)LP(Ai)A=AiA=AixPxPxMnxMnyLnyLnzyMnzyMnx#y#zyL(Ai)x#y#zyL(Ai)

Para um subconjunto , deixe consistir nas letras em escritas em ordem. Afirmamos que as palavras são inequivalent para a relação Myhill-Nerode de . De fato, suponha e encontre algum (sem perda de generalidade). Então enquanto . Portanto, deve ter pelo menos estados.S{1,,n}S{1,,n}ySySSx#ySASTaSTx#yTy{1,,n}a#zyTy{1,,n}aL(A)x#ySy{1,,n}a#zyTy{1,,n}aMnA2n

Yuval Filmus
fonte