¿Se puede reemplazar la aleatoriedad verdadera (probablemente) con la aleatoriedad de Kolmogorov para RP?


10

¿Ha habido intentos de demostrar que la aleatoriedad de Kolmogorov sería suficiente para RP ? ¿La probabilidad utilizada en el enunciado "Si la respuesta correcta es SÍ, entonces (la máquina probabilística de Turing) devuelve SÍ con probabilidad ..." siempre estaría bien definida en ese caso? ¿O solo habría límites superior e inferior para esa probabilidad? ¿O solo habrá siempre una máquina de Turing probabilística, para la cual las probabilidades estarían bien definidas (o al menos el límite inferior que debería ser mayor que 1/2)?

La clase RP aquí es relativamente arbitraria, y uno también podría hacer esta pregunta para nociones más débiles de (pseudo-) aleatoriedad que la aleatoriedad de Kolmogorov. Pero la aleatoriedad de Kolmogorov parece ser un buen punto de partida.


Darle sentido a la palabra "probabilidad" sería parte de un intento de demostrar que la aleatoriedad de Kolmogorov funciona para RP. Sin embargo, permítanme tratar de describir un posible enfoque, para aclarar lo que podría significar y por qué hablé sobre los límites superior e inferior:

Vamos ser una cadena (Kolmogorov al azar). Sea la máquina de Turing probabilística dada correspondiente a un lenguaje de RP. Ejecute con como fuente de bits aleatorios veces, continuando consumiendo bits previamente no consumidos de uno tras otro.A A s n ssUNAUNAsnortes

Para , deje que y . Observe que y están bien definidos para una cadena dada , aunque no sería aleatorio. Pero uno puede preguntarse si en caso de que sea ​​aleatorio de Kolmogorov, o si para dos cadenas arbitrarias arbitrarias de Kolmogorov y . O si existe un tal que para cualquier cadena aleatoria de Kolmogorov p s + :=lim supnp s n p s - :=lim infnp s n p s + p s - sp s + =p s - sp s 1 - =p s 2 - s1s2p1/2ppagnortes: =#SÍ resultan en primer lugar norte carreras de UNA en snortepag+s: =lim supnortepagnortespag-s: =lim infnortepagnortespag+spag-sspag+s=pag-sspag-s1=pag-s2s1s2pag1/ /2 spagpag-ss .


2
No entiendo la pregunta. ¿Qué quiere decir con "<concepto de aleatoriedad> es suficiente para <clase de complejidad>"? RP puede ser aleatorizado en tiempo polinómico con un oráculo para una cadena aleatoria de Kolmogorov, si eso es lo que está preguntando.
Emil Jeřábek

2
No entiendo lo que quiere decir al decir que RP "funcionaría", y no entiendo su último comentario (las máquinas RP siempre se detienen después de muchos pasos polinomiales, ya sea por definición o sin pérdida de generalidad si se usa un inconveniente definición).
Emil Jeřábek

2
En la pregunta en sí, tampoco entiendo qué quieres decir con "probabilidad" cuando hablas de cadenas aleatorias de Kolomogorov. A diferencia de las "cadenas aleatorias" habituales, que se extraen de una distribución aleatoria, ser aleatorio de Kolmogorov es una propiedad real de sí-no que una cadena determinada tiene o no tiene. Entonces, si tal cadena hace que un algoritmo acepte no es una variable aleatoria, y como tal no tiene sentido preguntar sobre su probabilidad.
Emil Jeřábek

1
Un enfoque razonable para esto es tomar la perspectiva "constructiva de Martingales" de cadenas algorítmicamente aleatorias. En particular, uno podría esperar que si no engaña a A , esto se traduciría en un "predictor del siguiente bit" para s , y luego en una estrategia de apuestas que demuestre que s no es aleatorio. No sé si este enfoque, incluso si funciona, daría tasas de convergencia significativas para p + y p - ; sin embargo, aparentemente existe un enfoque más antiguo para estudiar clases de complejidad (palabras clave: "medida limitada por recursos") que utiliza esta idea, por lo que hay algo de esperanza. sAsspag+pag-
Andrew Morgan el

1
Enlaces relevantes de Wikipedia (que tienen más referencias) para mi comentario anterior: Martingales constructivos (ver tercera definición) y medida limitada por recursos
Andrew Morgan

Respuestas:


13

Creo que la pregunta que se hace aquí es más o menos " ¿hay algún sentido en el que podamos reemplazar la secuencia de bits aleatorios en un algoritmo con bits extraídos de manera determinista de una cadena aleatoria de Kolmogorov adecuadamente larga? " Esta es al menos la pregunta que intentaré ¡responder! (La respuesta corta es "Sí, pero solo si amplifica primero la probabilidad de error")


Si...

Ciertamente podemos decir algo aquí. Sea un lenguaje y sea A un algoritmo que tome como entrada xy una cadena aleatoria r U f ( | x | ) (la distribución uniforme sobre { 0 , 1 } f ( | x | ) ) st Pr [ A ( x , r ) = L ( x ) ] > 1 - ϵ ( x )LUNAXrUF(El |XEl |){0 0,1}F(El |XEl |)Pr[UNA(X,r)=L(X)]>1-ϵ(X). En otras palabras, es un algoritmo que erra con probabilidad como máximo ϵ ( ) .UNAϵ()

Observe ahora que si da la respuesta incorrecta en ( x , r ) , es decir, A ( x , r ) L ( x ) , esto nos da algunos medios para describir r , en particular, podemos describirlo como el i -ésimo cadena que hace que A erre en x . Para hacer esto, simplemente hacemos la máquina que tiene codificados x , A , i , y un bit b = 1UNA(X,r)UNA(X,r)L(X)ryoUNAX.XUNAyo , y simplemente enumera las opciones de r desde { 0 , 1 } f ( | x | ) hasta que encuentre la i -ésima opción de r tal que A ( x , r ) b .si=1XLr{0 0,1}F(El |XEl |)yorUNA(X,r)si

Entonces, ahora que sabemos que podemos aprovechar la mala elección de una cadena aleatoria en una descripción, observemos algunas condiciones que son suficientes para convertir nuestra descripción de en una compresión. Para describir r , requerimos suficientes bits para describir x , i , b , y luego el código para nuestro procedimiento (el código para A y la rutina que describimos), dando una descripción de la longitud | x | + | yo | + O ( 1 ) = | x | + log 2 ( 2 frrXyosiUNA

|x|+El |yoEl |+O(1)=El |XEl |+Iniciar sesión2(2F(El |XEl |)ϵ(X))+O(1)=El |XEl |+F(El |XEl |)-Iniciar sesión(1/ /ϵ(X))+O(1).

Recuerde que es longitud f ( | x | ) , por lo que esta es una compresión de r si log ( 1 / ϵ ( x ) ) = | x | + Ω ( 1 ) , por ejemplo, cuando ε ( x ) = 1 / 2 2 | x | .rF(El |XEl |)r

Iniciar sesión(1/ /ϵ(X))=El |XEl |+ω(1),
ϵ(X)=1/ /22El |XEl |

Finalmente, observe que si fuera una cadena aleatoria de Kolmogorov, entonces no podríamos tener tal compresión, por lo que mientras la probabilidad de error de A sea ​​suficientemente pequeña, una cadena aleatoria de Kolmogorov en lugar de la secuencia de bits aleatorios hará que A responda ¡correctamente!rUNAUNA

Tenga en cuenta que lo único que aprovechamos sobre es que su probabilidad de error es pequeña. No nos importa si A tiene un tiempo de ejecución extremadamente largo o si A tiene un error de uno o dos lados.UNAUNAUNA

Llevar esto a la cuestión de (o C O R P o B P P ), esto dice que mientras que amplifican la probabilidad de error de nuestros algoritmos, podemos utilizar cadenas aleatorias Kolmogorov en lugar de sus bits aleatorios.RPAGCoRPAGsiPAGPAG


... Pero solo si amplificamos primero.

Una pregunta de seguimiento puede ser "¿puedo hacer esto sin amplificar la probabilidad de error?" Considere el algoritmo siguiente que decide { 0 , 1 } * y tiene probabilidad de error de 1 / 2 n .UNA{0 0,1}1/ /2norte

En la entrada :X

  • r{0 0,1}norte
  • r=X
  • Aceptar.

rXUNAXr XUNA


Una nota sobre la fuente: no estoy seguro de si algo de esto es novedoso, pero incluí el primer argumento en mi escrito para mi examen de calificación que finalmente estará disponible en línea después de que termine de revisarlo.


METROMETRO(X)XL

1
Mike Sipser usó un tipo similar de argumento de compresión en su genial artículo sciencedirect.com/science/article/pii/0022000088900359 (tenga en cuenta que los gráficos expansores que necesita se han construido explícitamente dl.acm.org/citation.cfm?id=273915 )
Ryan Williams
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.