Um aluno meu fez recentemente a seguinte pergunta:
D T I M E ( f ( n ) ) ⊊ D T I M E ( g ( n ) ) .
Provavelmente, isso pode ser demonstrado verdadeiro ao construir um h ( n )
Um aluno meu fez recentemente a seguinte pergunta:
D T I M E ( f ( n ) ) ⊊ D T I M E ( g ( n ) ) .
Provavelmente, isso pode ser demonstrado verdadeiro ao construir um h ( n )
Respostas:
Se é definido como a classe de todos os idiomas decidíveis no tempo por uma máquina de Turing com duas fitas, suspeito que a resposta seja não. Em outras palavras, acho que nem sempre existe uma classe de complexidade de tempo estritamente intermediária.D T I M E ( f ( n ) ) O ( f ( n ) )
Nota: Essa resposta pode não ser exatamente o que você está procurando, porque estou considerando funções não computáveis e não incluo todos os detalhes do argumento. Mas senti que é um bom começo. Por favor, sinta-se livre para fazer qualquer pergunta. Talvez eu possa preencher esses detalhes ainda mais em algum momento ou talvez isso leve a uma resposta melhor de um leitor interessado.
Considere funções no formato . Nós nos referimos a essas funções como funções numéricas naturais.f:N→N
Reivindicação 1: afirmo que podemos construir uma função de número natural não decrescente de crescimento muito lento (não computável) modo que:ε(n)
ε(n) (1) não diminuiε(n)
ε(n) (2)ε(n)=ω(1)
ε(n)=ω(1) (3) Para todos os computáveis ilimitados , o conjunto é infinito.f:N→N
f:N→N {n|ε ( n ) ≤ f ( n ) }{n|ε(n)≤f(n)}
Construímos ε ( n ) como uma função de passo não decrescente de crescimento lento. Vamos enumerar todas as funções computáveis ilimitados { f i } i ∈ N . Queremos construir ε ( n ) de tal maneira que para todo i e todo j ≤ i , m i n { k
Nota: acabei de fornecer alguma intuição por trás da reivindicação 1, não forneci uma prova detalhada. Sinta-se livre para participar da discussão abaixo.
Como ε ( n ) é uma função de crescimento lento, temos o seguinte:
Acordo com a reivindicação 2: Para todas as funções calculáveis número natural de f ( n ) e h ( n ) , se H ( n ) = Ω ( f ( n )
f(n) h(n) ε ( n ) )eh(n)=O(f(n)), entãoh(n)=Θ(f(n)).h(n)=Ω(f(n)ε(n)) h(n)=O(f(n)) h(n)=Θ(f(n))
Para a reivindicação 2, se existir uma função computável h ( n ) entre f ( n )
Deixe-me explicar alguns detalhes relevantes. Suponha, por uma questão de contradição, que tal função h ( n ) exista. Então, ⌊ f ( n )
Nota: A função anterior é calculável porque f ( n ) e h ( n ) são calculáveis.
Como h ( n ) = Ω ( f ( n )ε ( n ) ), temos⌊f(n)
Reivindicação 3: Para uma função construtível no tempo f ( n ) , temos que D T I M E ( f ( n )
f(n) ε ( n ) )⊊DTIME(f(n)), aindanãoexisteh(n)tal quef(n)DTIME(f(n)ε(n))⊊DTIME(f(n)) h(n) ε ( n ) ≤h(n)≤f(n)eDTIME(f(n)f(n)ε(n)≤h(n)≤f(n) ε ( n ) )⊊DTIME(H(n))⊊DTIME(f(n)).DTIME(f(n)ε(n))⊊DTIME(h(n))⊊DTIME(f(n))
Para mostrar isso, D T I M E ( f ( n )ε ( n ) )⊊DTIME(f(n))é preciso utilizar uma hierarquia teorema vez mais forte e isto é onde usamos o pressuposto de que o número de fitas é fixo (que as referidas duas fitas acima). Veja "A estreita hierarquia determinística do tempo", de Martin Furer.
Como não há funções numéricas naturais computáveis entre f ( n )ε ( n ) ef(n)que não sejam os que estãoΘ(f(n)), tem-se que para cada funçãoh(n)de modo a quef(n)
If this result is true, it would strengthen the best-known deterministic time hierarchy theorem. [This is more of a comment than an answer, but too long for a comment. It leaves open the direct construction of a counterexample.] Recall that the best Deterministic Time Hierarchy Theorem we currently have is that if f(n),g(n)
Now suppose your desired result is true, and let g(n)
I think such a behaviour is true for 1-Tape-DTMs. On the one hand, we have DTIME1(O(n))=DTIME1(o(nlogn)). Unfortunately, the only reference I know is in German: R. Reischuk, Einführung in die Komplexitätstheorie, Teubner, 1990, Theorem 3.1.8.
On the other hand, it should be possible to separate DTIME1(O(n)) and DTIME1(O(nlogn)) by the language {x#2|x|x∣x∈{0,1}∗} using a standard crossing sequence argument.