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?

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 )w∈L(A) podem ser escritas como w = w 1 # ⋯ # w lw=w1#⋯#wl que w i ∈ A s i , t iwi∈Asi,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) x∈P∗x∈P∗y∈Py∈Pz∈P∗z∈P∗xyz∈LP(Ai)xyz∈LP(Ai)LP(Ai)LP(Ai)LP(Ai)LP(Ai)(|P|−1)l(|P|−1)lllLP(Ai)LP(Ai)|P|l|P|lll|P|l≤N(|P|−1)l|P|l≤N(|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=Aix′∈P∗x′∈P∗x∈Mnx∈Mny∈Lny∈Lnzy∈Mnzy∈Mnx#y#zy∈L(Ai)x#y#zy∈L(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#ySAS≠Ta∈S∖Tx#yTy{1,…,n}−a#zyTy{1,…,n}−a∈L(A)x#ySy{1,…,n}−a#zyTy{1,…,n}−a∉MnA2n

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.