- Una nueva demostración presentada por el teórico de ciencias de la computación de MIT Ryan Williams muestra que la memoria puede ser un recurso computacional más poderoso que el tiempo
- Rompe un estancamiento de 50 años sobre la relación entre complejidad temporal y espacial y propone un método para transformar cualquier algoritmo para que use menos memoria
- La clave de la demostración es generalizar la simulación con ahorro de espacio para reducir el uso de espacio de un algoritmo hasta el nivel de la raíz cuadrada del tiempo
- Con ello, se logró avanzar en la demostración cuantitativa de la diferencia entre las clases PSPACE y P, y también se abre la posibilidad de probar separaciones aún mayores
- Expertos califican este logro como un avance sorprendente y el punto de partida de una nueva exploración, y creen que podría dar pistas para resolver otros problemas difíciles de la informática teórica
One Small Step for Space, One Giant Leap for Complexity
Resumen de la nueva demostración de Ryan Williams
- En el verano de 2024, Ryan Williams, de MIT, revisaba su demostración cuando se dio cuenta de que una idea que creía errónea en realidad sí funcionaba
- Propuso un procedimiento general para transformar cualquier algoritmo de modo que pueda ejecutarse con menos memoria
- Eso permitió demostrar que algunos problemas no pueden resolverse dentro de un tiempo limitado
Tiempo y espacio: dos recursos de la computación
- Todo algoritmo usa tiempo y memoria (espacio)
- Hasta ahora, se pensaba que al resolver ciertos problemas el espacio era proporcional al tiempo
- La demostración de Williams establece matemáticamente que el espacio puede ser más poderoso que el tiempo
Origen e historia de la informática teórica
- Juris Hartmanis y Richard Stearns establecieron en los años 60 la definición de complejidad temporal y espacial
- Sentaron las bases para clasificar los problemas en clases de complejidad según los recursos necesarios para resolverlos
- P corresponde a los problemas que pueden resolverse en un tiempo razonable, mientras que PSPACE abarca los que pueden resolverse con una cantidad adecuada de memoria
El primer avance: la técnica de simulación de 1975
- Hopcroft, Paul y Valiant desarrollaron un procedimiento universal de simulación para convertir cualquier algoritmo en otro que usara un poco menos de espacio
- Fue el primer paso para aclarar la relación entre tiempo y espacio, pero después se topó con límites
- Se creía que ya no era posible avanzar más debido a la premisa de que los datos no pueden ocupar el mismo espacio al mismo tiempo
El punto de inflexión: Squishy Pebbles
- En 2010, el pionero de la teoría de la complejidad Stephen Cook y sus colegas idearon el problema de evaluación de árboles - Pebbles and Branching Programs for Tree Evaluation y demostraron que esta tarea era imposible para algoritmos con un presupuesto de espacio inferior a cierto umbral
- Pero había una grieta en la prueba. Se basaba en la misma suposición de sentido común que Paul y sus colegas habían planteado décadas antes
- Es decir, que un algoritmo no puede guardar datos nuevos en un espacio que ya está lleno
- Durante más de 10 años, los teóricos de la complejidad intentaron cerrar esa grieta
- James Cook, hijo de Stephen Cook, e Ian Mertz publicaron en 2023 un algoritmo para el problema de evaluación de árboles que rompe esa premisa: Tree Evaluation Is in Space 𝑂 (log 𝑛 · log log 𝑛)
- Propusieron un nuevo modelo de representación en el que los datos en memoria pueden superponerse físicamente
- Ese enfoque se convirtió en la clave para superar los límites de las simulaciones existentes
El salto decisivo de Williams
- Tras conocer la técnica de Cook-Mertz a partir de una presentación de estudiantes, Williams tuvo la idea de aplicarla a la simulación universal
- La nueva simulación puede reducir los requisitos de espacio de un algoritmo hasta el nivel de la raíz cuadrada del tiempo
- En febrero de 2025 publicó el artículo final en arXiv, donde recibió grandes elogios de la comunidad académica
Qué significa este resultado
- La demostración no prueba directamente que PSPACE > P, pero sí constituye un avance decisivo que abre una ‘brecha’ en esa dirección
- Si en el futuro este procedimiento puede aplicarse repetidamente para crear una separación mayor, podría acercarnos a resolver el problema P vs PSPACE
- Esto podría convertirse en una pista para resolver uno de los problemas más antiguos de la informática
Un cierre con eco
- Williams recordó así el resultado:
“No logré demostrar exactamente lo que realmente quería demostrar, pero al final lo que demostré fue incluso mejor que lo que quería.”
2 comentarios
....¿eh?
Comentarios de Hacker News
tpuede simularse usando espacioO(sqrt(t log t))(normalmente tardando más quet) Simulating Time With Square-Root Spacense puede escribir durante tiempoO(n), pero si es una cinta binaria, existen2^nconfiguraciones posibles para una longitudn. Si se aprovecha bien el espacio, creo que se obtiene mucha más expresividad que con el tiempo.O(1), pero en la práctica, mientras más grande se vuelve una computadora, el costo de acceso crece hastaO(n^(1/3)). En un datacenter eso se siente clarísimo. Recuerdo que era otro modelo, no UMA.P ≠ PSPACE, es un terreno donde resulta más difícil demostrarlo matemáticamente que seguir la intuiciónPTIME=PSPACE) el espacio quizá no dé una ventaja tan grande. En el artículo el salto det/log tasqrt(t log t)es revolucionario, pero debe haber límites sustanciales que ni siquiera la paralelización infinita puede superar.Ny quiere escribirNveces el valor 1 a la derecha de la cinta, parecería necesitar espacioNen tiempoN. Entonces me pregunto cómo podría simularse con menos espacio queN. Dadas las características estructurales de una máquina de Turing, que no puede saltar a una posición arbitraria de la cinta, también me pregunto qué relación real tiene esto con una computadora de verdad.Nbits, en la práctica eso equivale a encadenarNproblemas de decisión.