Meu livro diz: "Nós definimos a função da seguinte forma: f ( 1 ) = 2 e f ( i + 1 ) = 2 f ( i ) 1.2 . Nota que, dado n , podemos facilmente encontrar em O ( n 1,5 ) tempo o número i de tal modo que n é ensanduichada entre f ( i ) e f ( i + 1 . "
Como posso me convencer de que podemos de fato muito fácil verificar em O ( n 1,5 ) tempo? Como f é definido recursivamente, acho que temos que calcular f ( 1 ) , f ( 2 ) , f ( 3 ) ... f ( j ) até f ( j ) ≥ n . Para descobrir o tempo que esses cálculos levam, acho que precisamos encontrar um limite superior adequado para i dependente de ne temos que encontrar um limite superior no tempo de execução da função . No final, podemos mostrar a proposta citada. Infelizmente, não vejo uma coisa nem outra.
Esqueci de mencionar: Por favor, note que estamos em um contexto não determinístico. Portanto, é reivindicada como computável em O ( n 1,5 ) por uma máquina de Turing não determinística.
Como algumas pessoas já leram esta pergunta, com algumas achando útil e interessante também, mas ninguém respondeu até agora, desejo fornecer mais informações sobre o contexto: A alegação citada é parte integrante da prova de o teorema da hierarquia de tempo não determinístico. A prova (com a alegação) pode ser encontrada, por exemplo, no livro de Arora e Barak , mas também encontrei muitos outros recursos na Web que apresentam a mesma prova. Cada um deles chama a afirmação de fácil ou trivial e não especifica como encontrar no tempo O ( n 1,5 ) . Portanto, todos esses recursos copiados de Arora e Barak ou a alegação não são tão difíceis.