Propiedades definibles de reales computables

Respuestas:

8

Sí, el teorema de Rice para los reales se mantiene en todas las versiones razonables de los reales computables.

Primero probaré un cierto teorema y un corolario, y luego explicaré qué tiene que ver con la computabilidad.

Teorema: Suponga que es un mapa y a , b R dos reales tales que p ( a ) = 0 y p ( b ) = 1 . Entonces existe una secuencia de Cauchy ( x i ) i tal que p ( lim i x i ) p ( x j ) para todo jp:R{0,1}a,bRp(a)=0p(b)=1(xi)ip(limixi)p(xj) .jN

Prueba. Construimos una secuencia de pares de reales siguiente manera: ( y 0 , z 0 )(yi,zi)i

(y0,z0)=(a,b)(yi+1,zi+1)={(yi,(yi+zi)/2)if p((yi+zi)/2)=1((yi+zi)/2,zi)if p((yi+zi)/2)=0
Observe que para todos los :iN
  • y p ( z i ) = 1p(yi)=0p(zi)=1
  • |ziyi|=|ba|2i
  • |yi+1yi||ba|2i
  • |zi+1zi||ba|2i

Por lo tanto, las secuencias y ( z i ) i son Cauchy y convergen en un punto común c = lim i y i = lim i z i . Si p ( c ) = 0 entonces tomamos ( x i ) i = ( z i ) i , y si p ( c ) = 1 tomamos ( x(yi)i(zi)ic=limiyi=limizip(c)=0(xi)i=(zi)ip(c)=1 . (xi)i=(yi)i

Corolario: Suponga que y a , b R dos reales tales que p ( a ) = 0 y p ( b ) = 1 . Entonces, cada máquina de Turing funciona para siempre o no funciona para siempre.p:R{0,1}a,bRp(a)=0p(b)=1

Prueba. Por el teorema, hay una secuencia de Cauchy tal que p ( x j ) p ( lim i x i ) para todos j B . Sin pérdida de generalidad, podemos suponer que p ( x j ) = 1 y p ( lim i x i ) = 0 .(xi)ip(xj)p(limixi)jBp(xj)=1p(limixi)=0

Deje que sea ​​una máquina de Turing. Defina una secuencia y i por y i = { x j si  T se  detiene en el paso  j  y  j i x i si  T  no se detiene dentro de  i  pasos La secuencia está bien definida porque podemos simular T hasta i pasos y decidir si se ha detenido o no dentro de tantos pasos. Luego, observe que ( y i ) i es una secuencia de Cauchy porque ( x i )Tyi

yi={xjif T halts in step j and jixiif T does not halt within i steps
Ti(yi)i es una secuencia de Cauchy (dejamos esto como un ejercicio). Deje z = lim i y i . O p ( z ) = 0 o p ( z ) = 1 :(xi)iz=limiyip(z)=0p(z)=1
  • si entonces T se ejecuta para siempre. De hecho, si se detuvo después de j pasos, entonces tendríamos z = x j , y entonces p ( z ) = p ( x j ) = 1 contradeciría p ( z ) = 0 .p(z)=0Tjz=xjp(z)=p(xj)=1p(z)=0

  • si entonces T no se ejecuta para siempre. De hecho, si lo hiciera, entonces tendríamos z = lim i x i , y entonces p ( z ) = p ( lim i x i ) = 0 , contradiciendo p ( z ) = 0 . p(z)=1Tz=limixip(z)=p(limixi)=0p(z)=0

Ahora podemos explicar por qué esto nos da el teorema de Rice para números reales. Las pruebas son constructivas, por lo tanto, producen procedimientos computables. Esto es cierto para cualquier modelo de computabilidad y cualquier estructura de cómputo de reales que merezcan ser llamados así. De hecho, puede regresar y leer la prueba como instrucciones para construir un programa: todos los pasos son computables.

Por lo tanto, si tuviéramos un mapa computable y computable a , b R tal que p ( a ) = 0 y p ( 1 ) = 1 , entonces podríamos aplicar los procedimientos computables que surgen de pruebas constructivas del teorema y el corolario para crear el oráculo de detención. Pero el oráculo de detención no existe, por lo tanto, cada mapa computable p : R{ 0 , 1 }p:R{0,1}a,bRp(a)=0p(1)=1p:R{0,1} es constante

Suplementario: también hubo una pregunta sobre si el teorema de Rice está relacionado con la conexión de los reales. Sí, es esencialmente la afirmación de que los reales están conectados.

Primero observemos que un mapa continuo (tomamos la topología discreta en { 0 , 1 } ) corresponde a un par de clopen disjuntos (cerrados y abiertos) establece U , V X tal que U V = X . De hecho, tome U = p - 1 ( { 0 } ) y V = p - 1 ( { 1 }p:X{0,1}{0,1}U,VXUV=XU=p1({0}) . Debido a que p es continua y { 0 } y { 1 } están abiertos, U y V estarán abiertas, disjuntos, y obviamente cubren todos X . Por el contrario, cualquier par ( U , V ) de clopens disjuntos que cubran X determina un mapa continuo p : X { 0 , 1 } que asigna elementos de U a 0 y elementos de V a 1 .V=p1({1})p{0}{1}UVX(U,V)Xp:X{0,1}U0V1

De esto aprendemos que un espacio se desconecta si, y solo si, existe un mapa continuo p : X { 0 , 1 } y a , b X tal que p ( a ) = 0 y p ( 1 ) = b (necesitamos una y b para que podamos obtener una descomposición no trivial de X ). Hay otra forma de decir lo mismo: un espacio X está conectado si, y solo si, todos los mapas continuosXp:X{0,1}a,bXp(a)=0p(1)=babXX son constantes.X{0,1}

En matemática computable tenemos un teorema básico: cada mapa computable es continuo . Entonces, siempre y cuando estemos dentro del ámbito de los objetos computables, el teorema de Rice afirma que cierto espacio está conectado. En el caso del teorema clásico del arroz del espacio en cuestión es el espacio de las funciones computables parciales .NN

Andrej Bauer
fuente
¡Gracias! Esto es lo que estaba buscando. ¿Alguna idea sobre la otra pregunta: si esto está directamente relacionado con la conexión de los reales?
Shachaf
Agregué una explicación sobre el hecho de que el teorema de Rice es de hecho una forma de teorema de conectividad.
Andrej Bauer
Suponga que y defina y i = x si T no se detiene dentro de i pasos e y i = x ′ de lo contrario. Si T no detiene a continuación y que converge a x , si no converge a x ' . Si x , x ' son computables, entonces dado T , se puede generar una máquina que calcule el límite dep(x)=1,p(x)=0yi=xTiyi=xyixxx,xT . ¿Por qué esto no es suficiente para mostrar que p no puede ser computable, o incluso semidecidable (ya que T no se detiene si f p es 1 en el límite)? Obviamente me falta algo, ya que hay propiedades no triviales que son semidecidibles. yipTp1
Ariel el
1
Su definición de está bien, pero también necesita una tasa computable de convergencia de la sucesión y que con el fin de afirmar que su límite es computable. Puesto que no podemos calcular en el que el índice i de la secuencia y i podría saltar de x a x ' (o de lo que podríamos calcular en qué etapa T se detendrá), una velocidad tal computable de convergencia no puede ser tenía. TyiiyixxT
Andrej Bauer el
-1

No. O, al menos, la prueba no es trivial, ya que puede elegir entre las (generalmente muchas) formas posibles de calcular un real, y puede elegir una con una estructura que sea total wrt la propiedad elegida para que no reduce la prueba de la propiedad al problema de detención.

Además, creo que necesito una mejor comprensión de lo que "no trivial" significa wrt las propiedades de los números. Para el teorema de Rice, "no trivial" es básicamente no sintáctico y no está implícito en la sintaxis. Sin embargo, cada número real computable no es un solo programa, sino una clase de equivalencia llena de programas.

Boyd Stephen Smith Jr.
fuente
1
I'm not sure what you mean, here. Are you trying to distinguish between computable real numbers (e.g., 2, 22/7, π, etc.) and the programs that compute them? Sure, there are infinitely many programs that compute each computable real but there are also infinitely many Turing machines that decide any decidable language, and the ordinary Rice's theorem doesn't have any problem with that.
David Richerby
¿Las diferentes representaciones de reales computables tienen propiedades de computabilidad significativamente diferentes? Digamos que estoy usando una de las definiciones en en.wikipedia.org/wiki/Computable_number , por ejemplo, un programa real que se representa mediante un programa que toma un límite de error racional y produce una aproximación dentro de ese límite. Me refiero a "trivial" en el mismo sentido que el teorema de Rice: una propiedad que se aplica a todos los reales computables o a ninguno de ellos. Es cierto que cada número puede ser representado por múltiples programas, pero eso también es cierto para las funciones parciales.
Shachaf
@ Shachaf Eso es más "trivial" de lo que requiere el Teorema de Rice. Las propiedades "sintácticas" también son triviales, por ejemplo, "tiene al menos 4 estados accesibles desde el estado inicial", "tiene un gráfico de estado conectado", "no tiene transición que escriba X en la cinta", etc., y necesitan No se aplica a todas las máquinas.
Boyd Stephen Smith Jr.
@DavidRicherby Yes, I think the distinction is necessary. If you are able to work exclusively with total or productive representations, you have more power.
Boyd Stephen Smith Jr.
El teorema de Rice se trata de propiedades de funciones parciales, no de algoritmos que las computan. De manera similar, estoy preguntando sobre las propiedades de los reales computables, no sobre los programas que las computan.
Shachaf