¿Por qué creemos que PSPACE ≠ EXPTIME?


31

Tengo problemas para entender intuitivamente por qué se cree que PSPACE es diferente de EXPTIME. Si PSPACE es el conjunto de problemas que se pueden resolver en el polinomio espacial en el tamaño de entrada f(n) , entonces, ¿cómo puede haber una clase de problemas que experimenten una explosión de tiempo exponencial mayor y no hagan uso del espacio exponencial?

La respuesta de Yuval Filmus ya es extremadamente útil. Sin embargo, ¿alguien podría esbozar mi argumento flojo por qué podría ser el caso de que PSPACE ≠ EXPTIME (es decir, que PSPACE no es un subconjunto adecuado de EXPTIME)? ¿No necesitaremos espacio exponencial para superar el límite superior para el número total de configuraciones de sistema que se pueden lograr con espacio que se escala polinomialmente con el tamaño de entrada? Solo para decir, puedo entender por qué EXPTIME ≠ EXPSPACE es un asunto abierto, pero no entiendo la relación entre PSPACE y EXPTIME.

Respuestas:


40

Actualicemos las definiciones.

  • PSPACE es la clase de problemas que se pueden resolver en una máquina de Turing determinista con límites de espacio polinomiales: es decir, para cada uno de estos problemas, hay una máquina que decide el problema utilizando como máximo celdas de cinta cuando su entrada tiene longitud  n , para algunos polinomios  p .p(n)np

  • EXP es la clase de problemas que se pueden resolver en una máquina de Turing determinista con límites de tiempo exponenciales: para cada uno de estos problemas, hay una máquina que decide el problema utilizando como máximo pasos cuando su entrada tiene una longitud  n , para algunos polinomios  p .2p(n)np

Primero, deberíamos decir que estas dos clases podrían ser iguales. Parece más probable que sean diferentes, pero las clases a veces resultan ser las mismas: por ejemplo, en 2004, Reingold demostró que el espacio de registro simétrico es el mismo que el espacio de registro ordinario; en 1987, Immerman y Szelepcsényi demostraron independientemente que NL=co-NL (y, de hecho, ese NSPACE [ ]f(n)=co-NSPACE [ ]f(n) para cualquier ).f(n)logn

Pero, por el momento, la mayoría de la gente cree que PSPACE y EXP son diferentes. ¿Por qué? Veamos qué podemos hacer en las dos clases de complejidad. Considere un problema en PSPACE . Se nos permite usar  celdas de cinta para resolver una entrada de longitud  n, pero es difícil comparar eso con EXP , que se especifica mediante un límite de tiempo.p(n)n

¿Cuánto tiempo podemos usar para un problema de PSPACE ? Si solo escribimos en  celdas de cinta, hay 2 p ( n ) cadenas diferentes que podrían aparecer en la cinta, suponiendo un alfabeto binario. El cabezal de la cinta podría estar en cualquiera de p ( n )  lugares diferentes y la máquina Turing podría estar en uno de los k  estados diferentes. Entonces, el número total de configuraciones es T ( n ) = kp(n)2p(n)p(n)kT(n)=kp(n)2p(n). Según el principio del casillero, si corremos para pasos, debemos visitar una configuración dos veces pero, dado que la máquina es determinista, eso significa que recorrerá y visitará esa misma configuración infinitamente a menudo, es decir, ganó ' t detener. Como parte de la definición de estar en PSPACE es que tienes que decidir el problema, cualquier máquina que no termine no resuelve un problema de PSPACE . En otras palabras, PSPACE es la clase de problemas que se pueden resolver utilizando como máximo el  espacio p ( n ) y como máximo kT(n)+1p(n) tiempo, que es como máximo 2 q ( n ) para algún polinomio  q . Así que hemos demostrado quePSPACEkp(n)2p(n)2q(n)qCAD .

¿Y cuánto espacio podemos usar para un problema de EXP ? Bueno, se nos permiten pasos y la cabeza de una máquina de Turing solo puede moverse una posición en cada paso. Como el cabezal no puede moverse más de 2 p ( n ) posiciones, solo podemos usar esa cantidad de celdas de cinta.2p(n)2p(n)

n, por otro lado, no solo puede mirar cada subconjunto sino que no necesita reutilizar su espacio de trabajo, por lo que puede recordar lo que aprendió sobre cada uno individualmente. Parece que debería ser más poderoso.

Otra intuición de por qué deberían ser diferentes es que los teoremas de la jerarquía del tiempo y el espacio nos dicen que permitir incluso un poquito más de espacio o tiempo aumenta estrictamente lo que puedes calcular. Los teoremas de jerarquía solo le permiten comparar like con like (por ejemplo, muestran que PSPACE


1
Si EXPTIME permite un espacio exponencial, supongo que la pregunta correcta es, ¿podemos decir que podría ser cierto que EXPTIME es un subconjunto adecuado de EXPSPACE porque EXPSPACE permite problemas que pueden resolverse en tiempo superexponencial?
user25876

Si eso es cierto, entonces creo que todo tiene sentido para mí. Por alguna razón, supuse que EXPTIME prohibía el uso del espacio exponencial, pero ese no es el caso. Aquí es de donde vino mi confusión.
user25876

1
Me gusta tu ejemplo de subconjunto. IIRC correctamente, conocemos problemas que no se pueden calcular en línea (así como con información completa), por lo que deberá mantener todos los elementos en la memoria. Hablando intuitivamente.
Raphael

@ user25876 Sí, el mismo argumento que dice que una máquina PSPACE puede usar tiempo exponencial dice que una máquina EXPSPACE puede usar tiempo doblemente exponencial (es decir, ). 22poly(n)
David Richerby

1
@DavidRicherby Estoy aceptando tu respuesta. ¿Conoce alguna referencia en papel, por cierto, que discuta las barreras técnicas para probar o refutar PSPACE como un subconjunto adecuado de EXPTIME? De hecho, tengo mucha curiosidad al respecto ahora.
user25876

9

Una máquina que funciona en tiempo exponencial podría usar espacio exponencial. Entonces, a priori, podría ser que las máquinas restringidas al espacio polinomial serían más débiles. Una situación similar ocurre para P y L. Una máquina que funciona en tiempo polinomial podría usar espacio polinomial, por lo que a priori podría ser que las máquinas restringidas al espacio logarítmico serían más débiles. Incluso se conjetura que P es diferente de NL, el análogo no determinista de L. (Para PSPACE las conjeturas correspondientes son equivalentes, ya que PSPACE = NPSPACE debido al teorema de Savitch). Desafortunadamente, no sabemos cómo probar estas conjeturas. actualmente. La conjetura EXPTIME PSPACE es más fuerte ya que implica P NL a través de un argumento de relleno.

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.