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

RB
fonte
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. :)

Michael Wehar
fonte
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