Articulo de referencia

PSPACE-completo

En la teoría de la complejidad computacional , un problema de decisión es PSPACE-completo si puede resolverse utilizando una cantidad de memoria polinómica con respecto a la lon...

En la teoría de la complejidad computacional , un problema de decisión es PSPACE-completo si puede resolverse utilizando una cantidad de memoria polinómica con respecto a la longitud de entrada ( espacio polinómico ) y si cualquier otro problema que pueda resolverse en espacio polinómico puede transformarse en él en tiempo polinómico . Los problemas que son PSPACE-completos pueden considerarse los problemas más difíciles en PSPACE , la clase de problemas de decisión resolubles en espacio polinómico, porque la solución de cualquiera de estos problemas podría utilizarse fácilmente para resolver cualquier otro problema en PSPACE.

Entre los problemas que se sabe que son PSPACE-completos se incluyen la determinación de propiedades de expresiones regulares y gramáticas sensibles al contexto , la determinación de la veracidad de fórmulas booleanas cuantificadas , los cambios paso a paso entre soluciones de problemas de optimización combinatoria y muchos rompecabezas y juegos.

Teoría

Un problema se define como PSPACE-completo si puede resolverse utilizando una cantidad polinómica de memoria (pertenece a PSPACE) y cada problema en PSPACE puede transformarse en tiempo polinómico en una instancia equivalente del problema dado. [ 1 ]

Se sospecha ampliamente que los problemas PSPACE-completos están fuera de las clases de complejidad más famosas P (tiempo polinomial) y NP (tiempo polinomial no determinista), pero eso no se sabe. [ 2 ] Se sabe que están fuera de la clase NC , una clase de problemas con algoritmos paralelos altamente eficientes , porque los problemas en NC se pueden resolver en una cantidad de espacio polinomial en el logaritmo del tamaño de entrada, y la clase de problemas resolubles en una cantidad tan pequeña de espacio está estrictamente contenida en PSPACE por el teorema de jerarquía de espacio .

Las transformaciones que se suelen considerar para definir la completitud de PSPACE son las reducciones muchos a uno de tiempo polinomial , transformaciones que toman una única instancia de un problema de un tipo en una única instancia equivalente de un problema de un tipo diferente. Sin embargo, también es posible definir la completitud utilizando reducciones de Turing , en las que un problema puede resolverse en un número polinomial de llamadas a una subrutina para el otro problema. Se desconoce si estos dos tipos de reducciones dan lugar a diferentes clases de problemas completos de PSPACE. [ 3 ] También se han considerado otros tipos de reducciones, como las reducciones muchos a uno que siempre aumentan la longitud de la entrada transformada. [ 4 ]

Una versión de la conjetura de Berman-Hartmanis para conjuntos PSPACE-completos afirma que todos esos conjuntos se parecen, en el sentido de que todos pueden transformarse entre sí mediante biyecciones de tiempo polinomial . [ 5 ]

Ejemplos

Lenguajes formales

Dada una expresión regularR{\displaystyle R}, determinar si genera cada cadena sobre su alfabeto es PSPACE-completo. [ 6 ] La prueba se realiza tomando una máquina de TuringMETRO{\displaystyle M}y una cantidad de espacio codificada unarianorte{\displaystyle n}y construir una expresión regular que acepte una cadena si y solo si no logra codificar una secuencia válida de estados deMETRO{\displaystyle M}que comienza enMETRO{\displaystyle M}configuración inicial y finaliza enMETRO{\displaystyle M}aceptando su aporte, con como máximonorte{\displaystyle n}Las celdas de la cinta están siendo visitadas.

El primer problema conocido que cumple con el principio PSPACE fue el problema de la palabra para gramáticas deterministas sensibles al contexto . En este problema, se proporciona un conjunto de transformaciones gramaticales que pueden aumentar, pero no disminuir, la longitud de una oración, y se busca determinar si una oración dada puede generarse mediante estas transformaciones. La condición técnica de "determinismo" (que implica, aproximadamente, que cada transformación deja claro que se ha utilizado) garantiza que este proceso pueda resolverse en espacio polinomial, y Kuroda (1964) demostró que todo programa (posiblemente no determinista) computable en espacio lineal podría convertirse en el análisis sintáctico de una gramática sensible al contexto, de manera que se preserve el determinismo. [ 7 ] En 1970, el teorema de Savitch demostró que PSPACE es cerrado bajo el no determinismo, lo que implica que incluso las gramáticas sensibles al contexto no deterministas pertenecen a PSPACE. [ 1 ]

Lógica

Un problema estándar de PSPACE-completitud, utilizado en muchos otros resultados de PSPACE-completitud, es el problema de la fórmula booleana cuantificada , una generalización del problema de satisfacibilidad booleana . El problema de la fórmula booleana cuantificada toma como entrada una expresión booleana, con todas sus variables cuantificadas de forma universal o existencial, por ejemplo: incógnita1incógnita2incógnita3incógnita4:(incógnita1¬incógnita3incógnita4)(¬incógnita2incógnita3¬incógnita4).{\displaystyle \exists x_{1}\,\forall x_{2}\,\exists x_{3}\,\forall x_{4}:(x_{1}\lor \neg x_{3}\lor x_{4})\land (\neg x_{2}\lor x_{3}\lor \neg x_{4}).} El resultado del problema es el valor de la expresión cuantificada. Encontrar este valor es PSPACE-completo. [ 1 ]

Reconfiguración

Los problemas de reconfiguración se refieren a la conectividad de un espacio de estados de soluciones a un problema combinatorio. Por ejemplo, probar si dos coloraciones de cuatro colores de un grafo pueden conectarse entre sí mediante movimientos que cambian el color de un vértice a la vez, manteniendo en cada paso una coloración de cuatro colores válida, es PSPACE-completo, [ 8 ] aunque el mismo problema para coloraciones de tres colores puede resolverse en tiempo polinomial. [ 9 ] Otra familia de problemas de reconfiguración, utilizada de forma similar a las fórmulas booleanas cuantificadas como base para las pruebas de completitud PSPACE de muchos otros problemas en esta área, involucra lógica de restricciones no determinista , en la que los estados son orientaciones de un grafo de restricciones sujeto a ciertas restricciones sobre cuántas aristas deben estar orientadas hacia adentro en cada vértice, y en la que los movimientos de estado a estado invierten la orientación de una sola arista. [ 10 ]

Rompecabezas y juegos

El problema de la fórmula booleana cuantificada puede interpretarse como un juego entre dos jugadores, un verificador y un falsificador. Los jugadores realizan movimientos que completan los valores de las variables cuantificadas, en el orden en que están anidadas, con el verificador completando las variables cuantificadas existencialmente y el falsificador completando las variables cuantificadas universalmente; el juego lo gana el verificador si la fórmula completada se vuelve verdadera, y el falsificador en caso contrario. Una fórmula cuantificada es verdadera si y solo si el verificador tiene una estrategia ganadora. De manera similar, el problema de determinar el ganador o el perdedor de muchos otros juegos combinatorios resulta ser PSPACE-completo. Ejemplos de juegos que son PSPACE-completos (cuando se generalizan de manera que se puedan jugar en unnorte×norte{\displaystyle n\times n}Algunos juegos generalizados, como el ajedrez , las damas y el Go , son EXPTIME-completos porque una partida entre dos jugadores perfectos puede ser muy larga, por lo que es improbable que estén en PSPACE. Pero se volverán PSPACE-completos si se impone una cota polinómica al número de movimientos. [ 11 ]

También es posible que los rompecabezas jugados por un solo jugador sean PSPACE-completos. Estos a menudo pueden interpretarse como problemas de reconfiguración, [ 10 ] e incluyen los juegos de solitario Rush Hour , Mahjong , Atomix y Sokoban , y la computadora mecánica Turing Tumble . [ 11 ]

La completitud de PSPACE se basa en la complejidad en función del tamaño de entrada.norte{\displaystyle n}, en el límite comonorte{\displaystyle n}crece sin límites. Rompecabezas o juegos con un número limitado de posiciones, como el ajedrez en un tablero convencional.8×8{\displaystyle 8\times 8}El tablero no puede ser PSPACE-completo, porque podrían resolverse en tiempo y espacio constantes utilizando una tabla de búsqueda muy grande . Para formular versiones PSPACE-completas de estos juegos, deben modificarse de manera que su número de posiciones sea ilimitado, como por ejemplo jugándolos en unnorte×norte{\displaystyle n\times n}tablero en su lugar. En algunos casos, como en el ajedrez, estas extensiones son artificiales.

Referencias

  1. 1 2 3 Garey, Michael R. ; Johnson, David S. (1979), "Sección 7.4: Completitud del espacio polinomial", Computers and Intractability: A Guide to the Theory of NP-Completeness , WH Freeman, pp. 170–177 , ISBN  0-7167-1045-5
  2. Arora, Sanjeev; Barak, Boaz (2009), Computational Complexity: A Modern Approach , Cambridge University Press, p. 92, ISBN  978-1-139-47736-9
  3. Watanabe, Osamu; Tang, Shou Wen (1992), "Sobre la Turing en tiempo polinomial y la completitud muchos a uno en PSPACE", Theoretical Computer Science , 97 (2): 199–215 , doi : 10.1016/0304-3975(92)90074-P , MR 1163815 
  4. Hitchcock, John M.; Pavan, Aduri (2013), "Reducciones que aumentan la longitud para la completitud de PSPACE", en Chatterjee, Krishnendu; Sgall, Jirí (eds.), Fundamentos matemáticos de la informática 2013 - 38.º Simposio Internacional, MFCS 2013, Klosterneuburg, Austria, 26-30 de agosto de 2013, Actas , Lecture Notes in Computer Science, vol. 8087, Springer, pp. 540–550 , doi : 10.1007/978-3-642-40313-2_48 , MR 3126236   
  5. Berman, L.; Hartmanis, J. (1977), "Sobre isomorfismos y densidad de NP y otros conjuntos completos", SIAM Journal on Computing , 6 (2): 305–322 , doi : 10.1137/0206023 , hdl : 1813/7101 , MR 0455536 
  6. Hunt, Harry B. III (1973), "Sobre la complejidad temporal y de cinta de los lenguajes, I", en Aho, Alfred V.; Borodin, Allan; Constable, Robert L.; Floyd, Robert W.; Harrison, Michael A.; Karp, Richard M.; Strong, H. Raymond (eds.), Actas del 5.º Simposio Anual de la ACM sobre Teoría de la Computación, 30 de abril - 2 de mayo de 1973, Austin, Texas, EE. UU ., Association for Computing Machinery, pp. 10–19 , doi : 10.1145/800125.804030 , hdl : 1813/6007 , S2CID 15937339 , archivado del original el 17 de enero de 2024  
  7. Kuroda, S.-Y. (1964), "Clases de lenguajes y autómatas lineales acotados", Information and Computation , 7 (2): 207–223 , doi : 10.1016/s0019-9958(64)90120-2 , MR 0169724 
  8. Bonsma, Paul; Cereceda, Luis (2009), "Finding paths between graph colourings: PSPACE-completeness and superpolynomial distances", Theoretical Computer Science , 410 (50): 5215– 5226, doi : 10.1016/j.tcs.2009.08.023 , MR 2573973 
  9. ^ Johnson, Mateo; Kratsch, Dieter; Kratsch, Stefan; Patel, Viresh; Paulusma, Daniël (2016), "Encontrar caminos más cortos entre colores de gráficos" (PDF) , Algorithmica , 75 (2): 295– 321, doi : 10.1007/s00453-015-0009-7 , MR 3506195 , S2CID 6810123  
  10. 1 2 Hearn, Robert A. ; Demaine, Erik D. (2009), Juegos, rompecabezas y computación , AK Peters
  11. 1 2 Eppstein, David , Complejidad computacional de juegos y rompecabezas

Lecturas adicionales

  • Sipser, Michael (1997), "Sección 8.3: Completitud de PSPACE", Introducción a la teoría de la computación , PWS Publishing, pp. 283–294 , ISBN  0-534-94728-X