Definir um "problema" para ser um algoritmo aceitar um número natural e retornando 0 ou 1, o qual devolve uma em pelo menos uma n ∈ N . Qualquer um desses n é chamado de "solução" para A
Definir um "solucionador de problemas universal" para ser um algoritmo aceitar um problema e retornar uma das suas soluções. Por exemplo, U pode funcionar repetindo todos os números naturais e executando sua entrada neles até 1 resultado (ele só precisa interromper a entrada válida)
Estou interessado em explorar os limites de desempenho em solucionadores de problemas universais
Dado um solucionador universal problema e A um problema, denotam t ( U , A ) o tempo que leva U para a saída de produtos em cima de entrada aceitar A
Um solucionador de problemas universal é chamado de "eficiente" quando, para qualquer solucionador de problemas universal V , temos
Aqui depende de V , mas não depende de A
Existem solucionadores de problemas universais eficientes?
Edição: Eu percebi que é possível alterar as definições de "problema" e "solucionador de problemas universal" em algo um pouco mais elegante e essencialmente equivalente. Um "problema" é um algoritmo sem entrada retornando 0 ou 1 (que para). Um "solucionador de problemas universal" é um algoritmo que aceita um problema e retorna seu resultado. É mais ou menos uma máquina universal de Turing
A definição antiga pode ser reduzida a uma nova definição, já que, dado que um problema no sentido antigo, podemos construir B um problema no novo sentido que apenas aplica o solucionador de problemas universal trivial do sentido antigo a A (o solucionador descrito no texto acima )
A nova definição pode ser reduzida à antiga, já que, dado a um problema no novo sentido, podemos construir A um problema no sentido antigo que apenas calcula B e compara a entrada com o resultado
O exemplo trivial de um solucionador de problemas universal de novo sentido é um algoritmo que simplesmente executa sua entrada