y son dos de las clases básicas de complejidad probabilística.
es la clase de lenguajes decididos por algoritmos probabilísticos de tiempo de polinomio de Turing donde la probabilidad de que el algoritmo devuelva una respuesta incorrecta está limitada, es decir, la probabilidad de error es como máximo (para las instancias SÍ y NO).
Por otro lado, los algoritmos pueden verse como aquellos algoritmos probabilísticos que nunca devuelven una respuesta incorrecta, siempre que devuelven una respuesta es correcta. Sin embargo, su tiempo de ejecución no está limitado por un polinomio, sino que se ejecutan en el polinomio esperado.
Sea la clase de lenguaje decidida por algoritmos probabilísticos con probabilidad de error cero y tiempo de ejecución esperado . Estos también se conocen como algoritmos de Las Vegas y .
Mi pregunta es, ¿cuál es la mejor simulación de algoritmos utilizando los algoritmos de Las Vegas? ¿Podemos simularlos en tiempo esperado subexponencial? ¿Hay alguna mejora conocida sobre la simulación trivial de fuerza bruta que lleva tiempo exponencial?
Más formalmente, ¿sabemos si o para algún ?
Respuestas:
Primero, observe que si para alguna constante c , entonces B P P ≠ N E X P . (Prueba por jerarquía de tiempo no determinista.) Por lo tanto, probar tal inclusión sería significativo, no solo porque es una simulación mejorada sino que también produciría el primer progreso en límites inferiores de tiempo aleatorio en décadas.B P P ⊆ Z P T I M E [ 2norteC] C BPP≠NEXP
A continuación, considere la clasePromiseBPP , para la cual el siguiente problema es " -hard":PromiseBPP
Los resultados de Impagliazzo, Kabanets y Wigderson 2002 implican que un algoritmo de error cero de para CAPP (donde n es el tamaño de C ) implicaría N E X P ⊄ P / p o l y . En STOC'10, extendí esto para mostrar: suponiendo que por cada C con k bits de entrada yn tamaño, se pueda calcular CAPP de forma no determinista (por lo tanto, basta con cero errores) en 2 k - ω ( log k ) p o l y (2nε n C NEXP⊄P/poly C k n tiempo, entonces N E X P ⊄ P / p o l y . Es decir, ciertamente hay problemas computables con aleatoriedad de error de dos lados, para los cuales los algoritmos de error cero que incluso superan ligeramente la búsqueda exhaustiva implicarían límites inferiores del circuito. Creo que esto debería interpretarse como un posible método para probar los límites inferiores; Su experiencia puede ser diferente.2k−ω(logk)poly(n) NEXP⊄P/poly
Tenga en cuenta que incluso probar también está abierto, y probar que también implicaría límites inferiores: por Kabanets e Impagliazzo 2004, si la prueba de identidad polinómica (un problema de C o R P ) es en Z P T I M E [ 2 n ε ] para todos ε > 0 , entonces tenemos límites inferiores para el permanente o N E X PRP⊆ZPTIME[2nε] coRP ZPTIME[2nε] ε>0 NEXP . Recientemente (próximamente en STOC'13), probé incondicionalmente que o R T I M E [ 2 n ] tiene n c circuitos tamaño, basándose en el método de "testigo fácil" de Kabanets. Esto implica dos cosas:BPP⊆ioZPTIME[2nε]/nε RTIME[2n] nc
Hay una tal que para todo ε > 0 , R P está incondicionalmente en i o Z P T I M E [ 2 n ε ]c ε>0 RP : esta es la mejor desrandomización incondicional de R P / B P P en Z P P que sabemos hasta ahora.ioZPTIME[2nε]/nc RP/BPP ZPP
Para comenzar a obtener interesantes simulaciones subexponenciales de , "solo" debe asumir que R T I M E [ 2 n ] no tiene circuitos de tamaño polinómico fijo.BPP RTIME[2n]
fuente
Depende de las suposiciones que esté dispuesto a hacer.
Bajo ciertos supuestos de dureza, a saber, , se obtiene que P = B P P . Esto en particular implica que B P P = Z P P , y por lo tanto, cada lenguaje L ∈ B P P es aceptado por una máquina de Las Vegas (ver "P = BPP a menos que E tenga Circuitos Subexponenciales: Desrandomizando el Lema XOR", por Impagliazzo y Wigderson).E⊈SIZE(2εn) P=BPP BPP=ZPP L∈BPP
También puede hacer una suposición de dureza más leve, a saber, que , y obtener que B P P = Z P P (consulte el Lema 46 en "En busca de un testigo fácil: tiempo exponencial versus tiempo polinomial probabilístico "por Impagliazzo, Kabanets y Wigderson).ZPE⊈io−DTIME(2εn) BPP=ZPP
fuente
Salvo cualquier avance en la aleatorización, me parece que el requisito de que la máquina de Las Vegas no cometa errores es crucial, por lo que hay poco o ningún beneficio de tener aleatoriedad en este caso.
Para un lenguaje BPP decidido por un algoritmo A adecuado , que actúa sobre las entradas x ∈ { 0 , 1 } ny una cadena aleatoria r ∈ { 0 , 1 } N ( n ) que representa sus elecciones aleatorias, el criterio de error cero implica que la máquina de Las Vegas debe determinar con certeza cuál de los dos casos Pr r ( A acepta ( x , r ) ) ⩾ 2L UNA x ∈ { 0 , 1 }norte r ∈ { 0 , 1 }norte( n ) presas. Si no se nos da más información sobreA, entonces este es esencialmente un problema de promesa de oráculo: dado un oráculoA′computandoA′(r)=A(x,r), y dada la promesa de queA′produce una salidaa∈{0,1}para al menos el doble de entradas que la salida opuesta1-a, determine qué salida es más común.
Aunque la máquina de Las Vegas puede usar técnicas aleatorias, si de hecho nos vemos obligados a tratar a como un oráculo, podemos ver que la única estrategia disponible para una máquina de Las Vegas es realizar una encuesta relativamente exhaustiva (aunque no exhaustiva) de cadenas aleatorias r , para ver qué respuesta se da para cada una. Solo puede estar seguro si encuentra más de 2 N ( n )UNA′ r cadenas distintas r que dan lugar a la misma salida; de lo contrario, con una probabilidad pequeña (¡pero no nula!), puede ser desafortunado y obtener una muestra no representativa de los posibles resultados. Para obtener un error cero, debe muestrear al menos 2 N ( n )2norte( n )/ 3 r entradas r2norte( n )/ 3 r .
Debido a que la máquina de Las Vegas debe inspeccionar al menos una fracción constante de todas las cadenas aleatorias posibles , asintóticamente no estamos mejor que si probamos determinísticamente todas las cadenas aleatorias posibles. No obtenemos ninguna ventaja asintótica al simular BPPr aleatoria de algoritmos en un entorno de error cero, más allá de lo que podemos hacer determinísticamente por fuerza bruta.
Tenga en cuenta que este mismo argumento da lugar a una separación de oráculo entre BPP y ZPP , es decir , hay un oráculo tal que Z P P A ⫋ B P P A porque el algoritmo ZPP toma tiempo exponencial, mientras que un algoritmo BPP puede resolver la pregunta sobre El oráculo en una sola consulta y tener éxito con un error acotado. Sin embargo, no le dice más de lo que ya sospechaba (que la sobrecarga de la simulación puede ser peor que el polinomio) ni que las asintóticas son tan malas como una simulación determinista ingenua.UNA
fuente