stringtranslate.com

Jerarquía polinómica

En la teoría de la complejidad computacional , la jerarquía polinómica (a veces llamada jerarquía de tiempo polinómico ) es una jerarquía de clases de complejidad que generalizan las clases NP y co-NP . [1] Cada clase en la jerarquía está contenida dentro de PSPACE . La jerarquía se puede definir utilizando máquinas oráculo o máquinas de Turing alternas . Es una contraparte limitada por recursos de la jerarquía aritmética y la jerarquía analítica de la lógica matemática . La unión de las clases en la jerarquía se denota PH .

Las clases dentro de la jerarquía tienen problemas completos (con respecto a las reducciones de tiempo polinomial ) que preguntan si las fórmulas booleanas cuantificadas son válidas para fórmulas con restricciones en el orden de los cuantificadores. Se sabe que la igualdad entre clases del mismo nivel o de niveles consecutivos en la jerarquía implicaría un "colapso" de la jerarquía a ese nivel.

Definiciones

Existen múltiples definiciones equivalentes de las clases de la jerarquía polinomial.

Definición de Oracle

Para la definición de oráculo de la jerarquía polinomial, defina

donde P es el conjunto de problemas de decisión resolubles en tiempo polinomial . Entonces, para i ≥ 0, defina

donde es el conjunto de problemas de decisión resolubles en tiempo polinomial por una máquina de Turing aumentada por un oráculo para algún problema completo en la clase A; las clases y se definen de manera análoga. Por ejemplo, , y es la clase de problemas resolubles en tiempo polinomial por una máquina de Turing determinista con un oráculo para algún problema NP-completo. [2]

Definición de fórmulas booleanas cuantificadas

Para la definición existencial/universal de la jerarquía polinomial, sea L un lenguaje (es decir, un problema de decisión , un subconjunto de {0,1} * ), sea p un polinomio y defina

donde es una codificación estándar del par de cadenas binarias x y w como una única cadena binaria. El lenguaje L representa un conjunto de pares ordenados de cadenas, donde la primera cadena x es un miembro de , y la segunda cadena w es un testigo "corto" ( ) que testifica que x es un miembro de . En otras palabras, si y solo si existe un testigo corto w tal que . De manera similar, defina

Nótese que las leyes de De Morgan se cumplen: y , donde L c es el complemento de L .

Sea C una clase de lenguajes. Extienda estos operadores para que funcionen en clases enteras de lenguajes mediante la definición

Nuevamente, las leyes de De Morgan se cumplen: y , donde .

Las clases NP y co-NP se pueden definir como , y , donde P es la clase de todos los lenguajes factiblemente decidibles (en tiempo polinomial). La jerarquía polinomial se puede definir recursivamente como

Tenga en cuenta que , y .

Esta definición refleja la estrecha conexión entre la jerarquía polinómica y la jerarquía aritmética , donde R y RE desempeñan papeles análogos a P y NP , respectivamente. La jerarquía analítica también se define de manera similar para dar una jerarquía de subconjuntos de los números reales .

Definición de máquinas de Turing alternadas

Una máquina de Turing alternante es una máquina de Turing no determinista con estados no finales divididos en estados existenciales y universales. Es eventualmente aceptable desde su configuración actual si: está en un estado existencial y puede realizar la transición hacia alguna configuración eventualmente aceptable; o, está en un estado universal y cada transición es hacia alguna configuración eventualmente aceptable; o, está en un estado aceptable. [3]

Definimos como la clase de lenguajes aceptados por una máquina de Turing alternada en tiempo polinomial tal que el estado inicial es un estado existencial y cada camino que la máquina puede tomar cambia como máximo k – 1 veces entre estados existenciales y universales. Definimos de manera similar, excepto que el estado inicial es un estado universal. [4]

Si omitimos el requisito de como máximo k – 1 intercambios entre los estados existencial y universal, de modo que solo requerimos que nuestra máquina de Turing alternada funcione en tiempo polinomial, entonces tenemos la definición de la clase AP , que es igual a PSPACE . [5]

Relaciones entre clases en la jerarquía polinómica

Diagrama conmutativo equivalente a la jerarquía de tiempo polinomial. Las flechas indican inclusión.

La unión de todas las clases en la jerarquía polinomial es la clase de complejidad PH .

Las definiciones implican las relaciones:

A diferencia de las jerarquías aritméticas y analíticas, cuyas inclusiones se sabe que son propias, es una cuestión abierta si alguna de estas inclusiones es propia, aunque se cree ampliamente que todas lo son. Si alguna , o si alguna , entonces la jerarquía colapsa al nivel k : para todo , . [6] En particular, tenemos las siguientes implicaciones que involucran problemas no resueltos:

El caso en el que NP = PH también se denomina colapso de PH al segundo nivel . El caso P = NP corresponde a un colapso de PH a P.

Problema sin resolver en informática :
⁠ ⁠

En general, se considera que la cuestión del colapso al primer nivel es extremadamente difícil. La mayoría de los investigadores no creen en un colapso, ni siquiera al segundo nivel.

Relaciones con otras clases

Problema sin resolver en informática :
⁠ ⁠
Diagrama de Hasse de clases de complejidad que incluyen P , NP , co-NP , BPP , P/poly , PH y PSPACE

La jerarquía polinomial es un análogo (de mucha menor complejidad) de la jerarquía exponencial y de la jerarquía aritmética .

Se sabe que PH está contenido dentro de PSPACE , pero no se sabe si las dos clases son iguales. Una reformulación útil de este problema es que PH = PSPACE si y solo si la lógica de segundo orden sobre estructuras finitas no obtiene potencia adicional de la adición de un operador de clausura transitiva sobre relaciones de relaciones (es decir, sobre las variables de segundo orden). [8]

Si la jerarquía polinómica tiene algún problema completo , entonces tiene solo un número finito de niveles distintos. Dado que hay problemas PSPACE-completos , sabemos que si PSPACE = PH, entonces la jerarquía polinómica debe colapsar, ya que un problema PSPACE-completo sería un problema -completo para algún k . [9]

Cada clase en la jerarquía polinómica contiene problemas -completos (problemas completos bajo reducciones de muchos a uno en tiempo polinómico). Además, cada clase en la jerarquía polinómica está cerrada bajo reducciones -: lo que significa que para una clase C en la jerarquía y un lenguaje , si , entonces también. Estos dos hechos juntos implican que si es un problema completo para , entonces , y . Por ejemplo, . En otras palabras, si un lenguaje se define en base a algún oráculo en C , entonces podemos asumir que se define en base a un problema completo para C . Por lo tanto, los problemas completos actúan como "representantes" de la clase para la que son completos.

El teorema de Sipser-Lautemann establece que la clase BPP está contenida en el segundo nivel de la jerarquía polinomial.

El teorema de Kannan establece que para cualquier k , no está contenido en TAMAÑO (n k ).

El teorema de Toda establece que la jerarquía polinomial está contenida en P #P .

Problemas

Véase también

Referencias

Referencias generales

  1. Arora, Sanjeev; Barak, Boaz (2009). Teoría de la complejidad: un enfoque moderno. Cambridge University Press. ISBN 978-0-521-42426-4. sección 1.4, "Máquinas como cuerdas y la máquina universal de Turing" y 1.7, "Demostración del teorema 1.9"
  2. AR Meyer y LJ Stockmeyer . El problema de equivalencia para expresiones regulares con elevación al cuadrado requiere espacio exponencial. En Actas del 13.º Simposio IEEE sobre conmutación y teoría de autómatas , págs. 125-129, 1972. El artículo que introdujo la jerarquía polinómica.
  3. LJ Stockmeyer . La jerarquía de tiempo polinomial. Theoretical Computer Science , vol. 3, págs. 1–22, 1976.
  4. C. Papadimitriou . Computational Complexity. Addison-Wesley, 1994. Capítulo 17. Jerarquía polinomial , págs. 409–438.
  5. Michael R. Garey y David S. Johnson (1979). Computadoras e intratabilidad: una guía para la teoría de la NP-completitud . WH Freeman. ISBN 0-7167-1045-5.Sección 7.2: La jerarquía polinomial, págs. 161–167.

Citas

  1. ^ Arora y Barak, 2009, pág. 97
  2. ^ Completitud en la jerarquía de tiempo polinomial. Un compendio, M. Schaefer, C. Umans
  3. ^ Arora y Barak, págs. 99-100
  4. ^ Arora y Barak, pág. 100
  5. ^ Arora y Barak, pág. 100
  6. ^ Arora y Barak, 2009, Teorema 5.4
  7. ^ Hemaspaandra, Lane (2018). "17.5 Clases de complejidad". En Rosen, Kenneth H. (ed.). Manual de matemáticas discretas y combinatorias . Matemáticas discretas y sus aplicaciones (2.ª ed.). CRC Press. págs. 1308–1314. ISBN 9781351644051.
  8. ^ Ferrarotti, Flavio; Van den Bussche, enero; Virtema, Jonni (2018). "Expresividad dentro de la lógica de cierre transitivo de segundo orden". DROPS-IDN/V2/Document/10.4230/LIPIcs.CSL.2018.22 . Schloss-Dagstuhl - Leibniz Zentrum für Informatik. doi : 10.4230/LIPIcs.CSL.2018.22 . S2CID  4903744.
  9. ^ Arora y Barak, 2009, Reivindicación 5.5