Decidir o vazio da interseção de idiomas regulares em tempo subquadrático


23

Seja dois idiomas regulares fornecidos pelos NFAs M_1 como entrada.M 1 , M 2L1,L2M1,M2

Suponha que gostaríamos de verificar se . Isso pode ser feito claramente por um algoritmo quadrático que calcula o autômato do produto , , mas eu queria saber se algo mais eficiente é conhecido.M 1 , M 2L1L2M1,M2

Existe um algoritmo para decidir se ? Qual é o algoritmo mais rápido conhecido?L 1L 2o(n2)L1L2


5
Se alguém tiver boas idéias, entre em contato, mas atualmente é um problema em aberto. Se você pudesse resolver esse problema em um tempo linear, basicamente qualquer problema solucionável por uma máquina não determinística usando apenas n bits de memória poderia ser resolvido deterministicamente em tempo. 2n2
Michael Wehar

6
Eu acho que ainda está aberto para qualquer sub-quadrático. Um pouco mais de informação: rjlipton.wordpress.com/2009/08/17/…
Michael Wehar

4
Assim, por exemplo (com base no comentário de Michael), a forte hipótese tempo exponencial implica que o expoente deve ser 2. Eu acho que isso também poderia provou a seguir a partir da hipótese tempo exponencial ...
Ryan Williams

4
RB: Suponha que você possa testar o vazio de dois DFAs de tamanho no tempo n 1 + ε com ε < 1 . Agora, se você tiver k DFAs de tamanho n , poderá criar o produto dos primeiros k / 2 DFAs e dos k / 2 DFAs restantes . Em seguida, teste o vazio no tempo ( n k / 2 ) 1 + ε = n 1nn1+εε<1knk/2k/2melhor do quenk. vzn: Este artigo premiado foi escrito por @MichaelWehar, que comentou neste tópico. Michael, talvez você possa enviar uma resposta, se tiver tempo! (nk/2)1+ε=n12k+ε2knk
quer

4
@RyanWilliams Oi Ryan, o que o leva a pensar que a hipótese de tempo exponencial mais fraco implica que não podemos resolver o não-vazio de interseção por dois DFAs mais rapidamente? Outra pessoa sugeriu isso para mim uma vez também. :)
Michael Wehar

Respostas:


22

Resposta simples : Se existe um algoritmo mais eficiente que é executado no tempo por alguns δ < 2 , a hipótese do tempo exponencial forte seria refutada.O(nδ)δ<2


Vamos provar um teorema mais forte e, em seguida, a resposta simples seguirá.

Teorema : Se pudermos resolver o problema de não-vazio de interseção por dois DFAs em tempo de , qualquer problema que seja solucionável de forma não determinística usando apenas n bits de memória será solucionável de forma determinística em p o l y ( n ) 2 ( δ n / 2 ) tempo.O(nδ)poly(n)2(δn/2)

Justificativa : suponha que possamos resolver o não vazio de interseção por dois DFAs em . Deixe uma máquina de Turing M não determinística com uma fita de entrada somente leitura e uma fita de trabalho binária de leitura / gravação. Seja dada uma string de entrada x de comprimento n. Suponha que M não acesse mais de n bits de memória na fita de trabalho binária.O(nδ)

Um cálculo de M na entrada x pode ser representado por uma lista finita de configurações. Cada configuração consiste em um estado, uma posição na fita de entrada, uma posição na fita de trabalho e até n bits de memória que representam a fita de trabalho.

Agora, considere que a fita de trabalho foi dividida ao meio. Em outras palavras, temos uma seção esquerda de células e uma seção direita denn2n2n2n2

D1D2

D1D2D1D2D1D2

poly(n)2n/2poly(n)

poly(n)2(δn/2)

Você pode achar útil: https://rjlipton.wordpress.com/2009/08/17/on-the-intersection-of-finite-automata/


k+O(log(n))O(nδ)poly(n)2(δk/2)

Comentários, correções, sugestões e perguntas são bem-vindas. :)


1
Ω(n2)

1
kk

1
(2k2)k

1
NSpace(2log(n))DTime(n)NSpace(2log(n))2log(n)espaço para máquinas de Turing não determinísticas com uma fita de entrada somente leitura bidirecional e uma fita de trabalho binária bidirecional de leitura / gravação.
Michael Wehar
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.