Límite inferior de complejidad: la brecha entre los árboles de decisión y las RAM

15

Recientemente descubrí un límite inferior cuadrático en la complejidad de un problema en el modelo de árbol de decisión, y me pregunto si este resultado podría generalizarse parcialmente al modelo de máquina de acceso aleatorio. Por parcial , me refiero a una generalización de los programas de RAM con una cierta compensación tiempo / espacio. Por ejemplo, me gustaría mostrar que mi problema no puede resolverse con un programa RAM de espacio lineal y tiempo lineal.

AM Ben-Amram y Z. Galil demostraron en este documento que un programa RAM que se ejecuta en el tiempo y el espacio se puede simular en el tiempo en una máquina de puntero. ¿Conocemos resultados similares que podrían aplicarse a los árboles de decisión?s O ( ttsO(tlogs)

Alternativamente, ¿es posible simular un programa RAM que se ejecute en el espacio con un árbol de decisión de grados ? (intuitivamente, el direccionamiento indirecto podría simularse utilizando nodos de grado )s ssss

Totoro
fuente
No sé demasiado sobre la complejidad de la consulta clásica (complejidad del árbol de decisión), pero cuando se trabaja en el modelo análogo en una configuración cuántica (complejidad de la consulta cuántica) a veces se obtienen límites inferiores bastante pobres para el modelo de circuito. Por ejemplo, para HSP puede mostrar que la complejidad de la consulta es polinómica, pero las unidades unitarias entre consultas toman un número exponencial de compuertas ... y hasta donde sospechamos que el HSP general no es factible en tiempo polinómico, entonces la complejidad de la consulta solo da límites inferiores muy flojos. ¿O estás bien con un límite inferior muy suelto?
Artem Kaznatcheev
En realidad, me gustaría obtener un límite inferior superlineal para (algunos) programas que se ejecutan en RAM. Es por eso que esperaba que restringir la complejidad del espacio podría ayudar.
Totoro
1
No entiendo tu pregunta. ¿Cómo puede tener un límite inferior cuadrático en la complejidad de la consulta? Además, las compensaciones espacio-temporales a menudo usan teoremas de productos directos, por lo que es posible que tenga que trabajar más para obtener tales resultados.
Hartmut Klauck
1
El límite inferior de complejidad en el modelo de árbol de decisión proviene de un límite inferior en el número de posibles resultados del problema (cuyo logaritmo proporciona un límite inferior en la altura del árbol).
Totoro

Respuestas:

10

El modelo natural relacionado con los árboles de decisión que pueden simular RAM es el programa de ramificación. Básicamente, es un árbol de decisión con subárboles comunes unidos que producen un DAG. El tiempo T y el espacio S en una RAM se pueden simular en altura T y tamaño 2 ^ S en un programa de ramificación. (Es posible que deba utilizar la ramificación multidireccional).

Para problemas de decisión, está claro que cualquier árbol de decisión solo necesita altura = # entradas y espacio = total # de bits en la entrada. Tenga en cuenta que con la ramificación multidireccional uno podría tener los # bits en la entrada más grandes que la medida habitual del # de entradas (por ejemplo, n punteros que toman cada uno log n bits). Para tales problemas con nlog n total de bits de entrada, se puede demostrar que ciertos problemas no se pueden resolver en tiempo O (n) y espacio = O (n) bits. ¿Es esa la forma de tu problema?

Parece sugerir que está utilizando el número de salidas para tratar de obtener un límite inferior más grande. Es habitual que los problemas de múltiples salidas permitan muchas salidas a lo largo de un solo borde en lugar de en nodos de hoja (véase, por ejemplo, el documento de 1982 de Borodin-Cook sobre la clasificación de los límites inferiores). Sin embargo, incluso sin esta suposición, uno también puede calcular cualquier función con altura = # entradas y espacio = # bits de entrada. (Lea y recuerde la entrada y la salida de todos los valores en cada nodo hoja).

Paul Beame
fuente
Gracias por su respuesta. La entrada del problema es una colección de un conjunto de enteros, por lo que se puede suponer que se dan como listas. De todos modos, gracias por señalar la técnica de Borodin y Cook (no lo sabía en absoluto). Espero que ese tipo de método se pueda aplicar a mi problema.
Totoro
1

El modelo natural relacionado con los árboles de decisión que simula RAM sin pérdida es el programa de ramificación. Básicamente, es un árbol de decisión con subárboles comunes unidos que producen un DAG. El tiempo T y el espacio S en una RAM se pueden simular en altura T y tamaño 2 ^ S en un programa de ramificación. (Es posible que deba utilizar la ramificación multidireccional).

Para problemas de decisión, está claro que cualquier árbol de decisión solo necesita altura = # entradas y espacio = total # de bits en la entrada. Tenga en cuenta que con la ramificación multidireccional uno podría tener los # bits en la entrada más grandes que la medida habitual del # de entradas (por ejemplo, n punteros que toman cada uno log n bits). Para tales problemas con nlog n total de bits de entrada, se puede demostrar que ciertos problemas no pueden resolverse en tiempo O (n) y espacio = O (n) bits en una RAM.) ¿Esa es la forma de su problema?

Parece sugerir que está utilizando el número de salidas para tratar de obtener un límite inferior más grande. Sin embargo, incluso con esto, también puede calcular cualquier función con height = # input y space = # input bits. (Lea y recuerde la entrada y haga salir todos los valores requeridos en cada nodo hoja. Es habitual permitir múltiples salidas en un solo nodo).

Paul Beame
fuente
Tal vez sea mejor para el autor fusionar esta respuesta con la anterior, ya que son casi idénticas.
Oleksandr Bondarenko