¿Las funciones no computables crecen asintóticamente más grandes?


13

Leí sobre los números de castores ocupados y cómo crecen asintóticamente más grandes que cualquier función computable. ¿Por qué esto es tan? ¿Se debe a la no computabilidad de la función de castor ocupado? Si es así, ¿todas las funciones no computables crecen asintóticamente más grandes que las computables?

Editar:

Grandes respuestas a continuación, pero me gustaría explicar en inglés simple lo que entiendo de ellas.

Si hubo una función computable f que creció más rápido que la función de castor ocupado, entonces esto significa que la función de castor ocupado está limitada por f. En otras palabras, una máquina de turing simplemente necesitaría ejecutar f (n) muchos pasos para decidir el problema de detención. Como sabemos que el problema de detención es indecidible, nuestra presuposición inicial es incorrecta. Por lo tanto, la función de castor ocupado crece más rápido que todas las funciones computables.


En cuanto a tu parte de "inglés simple", ¿de dónde obtuviste las respuestas? ¿Cómo se pasa de un límite en la función de castor ocupado a decidir el problema de detención en general? Tenga en cuenta que decidir detenerse para cualquier máquina de Turing no es indiscutible.
Raphael

@Raphael su simple resumen en inglés me parece correcto, pero no del todo completo. El detalle que falta es que uno puede reducir decidir si TM detiene en x a decidir si un TM M 'se detiene en la cinta vacía (cable duro x en M ' ). Entonces si f ( n )MxMxMf(n) fuera un límite computable en BB, el algoritmo descrito por OP resolvería el problema de detención en cualquier y x . Mx
Sasho Nikolov

Respuestas:


14

Si toma cualquier conjunto no computable de números naturales, la función característica del conjunto toma solo los valores y no es computable. Por lo tanto, no es el caso de que todas las funciones no computables crezcan muy rápidamente, incluso pueden limitarse.{0 0,1}

La función Busy Beaver crece más rápidamente que todas las funciones computables porque está diseñada para hacerlo. La prueba de que no es computable procede al probar primero que crece más rápido que cualquier función computable.

En términos más generales, digamos que un conjunto tiene un "grado libre de hiperinmunidad" si cada función computable desde A está limitada por una función computable. Ciertamente, cada conjunto computable tiene un grado libre de hiperinmunidad. Se sabe que también hay muchos conjuntos no computables que tienen un grado libre de hiperinmunidad. Por lo tanto, no es el caso de que todo lo no computable tenga que computar alguna función de rápido crecimiento. UNnorteUN

Sin embargo, también es el caso de que un restablecimiento que no sea computable no tendrá un grado libre de hiperinmunidad. Si es re, y se enumera por índice e , la función f tal que f ( n ) = k si e enumera n en k pasos, y f ( n ) = 0 si e no enumera n , es computable desde B pero esto la función está limitada por una función computable si y solo si B es computable.simiFF(norte)=kminortekF(norte)=0 0minortesisi


4

Si una función crece más rápido (o más lento) que cualquier función en un conjunto F de funciones, es decir f ω ( g ) (u o ( g ) ) para todas las funciones g FFFFω(sol)o(sol)solF , entonces claramente . Esto es lo que se usa para mostrar que la función de castor ocupado no es computable. Otro ejemplo es la prueba de que la función de Ackermann , computable y total, no es primitiva recursiva.FF

Lo contrario no necesariamente se cumple. La función de problema de detención toma valores en por lo que está en O ( 1 ) ¹; claramente hay funciones computables que crecen cada vez más rápido.{0 0,1}O(1)

Ciertamente, hay conjuntos de funciones para las cuales el tiempo de ejecución es un criterio de membresía necesario y suficiente, a saber, aquellas que se caracterizan por el tiempo de ejecución, como

.PAGoly={F:nortenortek.FO(nortek)}


  1. Eso solo tiene una cantidad limitada de sentido. El parámetro de la función HP es una codificación de máquina de Turing y un número natural; su tamaño no mide qué tan complicado es decidir detenerse.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.