Problemas que provavelmente requerem tempo quadrático


19

Estou procurando exemplos de problemas que tenham um limite inferior de ) para a entrada x .Ω(|x|2x

O problema precisa ter as seguintes propriedades:

  1. prova de tempo de execução para qualquer algoritmo - primeira prioridade é ter o mais simples possível argumento limite inferior.Ω(n2)
  2. Algoritmo O ( n 2 ) , se possível, também simples.O(n2)
  3. Tamanho de saída de (ou menor). Obviamente, qualquer problema que exija Ω ( n 2 ) de saída prolongada requer pelo menos tempo de execução semelhante, mas não é isso que estou procurando. Observe que qualquer problema de decisão se encaixa aqui.O(n)Ω(n2)
  4. (se possível) um problema "natural". Sem uma definição formal, é preferível um problema que qualquer graduado em CS reconheça.

Recentemente, fui perguntado sobre esse problema, mas não consegui encontrar um problema simples. O primeiro problema que veio à mente foi o , que foi conjurado para ser um problema de tempo de execução Ω ( n 2 ) . Isso não foi suficientemente simples e, além disso, a estrutura foi recentemente provada falsa : o.3SUMΩ(n2)

Indo para um problema extremamente antinatural, eu acredito que o problema que recebe como entrada uma TM determinista e entrada , e envia a posição da cabeça da fita depois ( | M | + | x | ) 2 etapas quando é rodar em x provavelmente responde à pergunta.M,x(|M|+|x|)2x


Se for absolutamente necessário, vamos concordar que estamos usando o modelo TM de fita única, embora eu prefira problemas cujo tempo de execução seja independente do modelo exato (desde que seja razoável).


Então, podemos encontrar um problema simples (para provar), natural (bem conhecido), cujo tempo de execução é ?Θ(n2)


Eu acho que "Dados os números naturais , y , calcular x + y " se qualifica. Além disso, observe esta pergunta . xyx+y
Raphael

2
A única maneira de saber como provar limites inferiores superlineares em máquinas Turing multitape é através da diagonalização. Para máquinas Turing de fita única, você pode melhorar um pouco usando seqüências de cruzamento, mas não até menos que talvez você restrinja o espaço. n2
Yuval Filmus

2
Veja aqui para outra pergunta relacionada; a inversão de entrada parece ser um bom candidato.
Raphael

Eu não acho que você pode fazer isso com um problema de decisão, porque o limite inferior mais encontrado para NP é O (n).
Albert Hendriks

Obrigado pelo seu comentário @AlbertHendriks. Você pode compartilhar uma referência a uma fonte / pesquisa alegando que o limite inferior mais conhecido para qualquer problema em NP é ? Ω(n)
RB

Respostas:


7

Encontrar um corte de bolo sem inveja requer consultas. No entanto, isso não responde diretamente à sua pergunta, pois o modelo computacional é diferente de uma máquina de Turing.Ω(n2)

A propósito, atualmente o algoritmo conhecido mais rápido para esse problema requer consultas, portanto há uma enorme lacuna no limite inferior - provavelmente uma das maiores lacunas na ciência da computação.nnnnnn


1

Θ(n2)

L={x0|x|xx{0,1}}
Θ(n2)EQnΘ(n)LL={xxx{0,1}}

A propósito, vale ressaltar que o "método da sequência de cruzamento" mencionado por Yuval é (pelo meu conhecimento) matematicamente equivalente (ou, talvez, inforior) à complexidade da comunicação.


SATO(n2cos(π/7)) no(1)2cos(π/7)1.8

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.