En la teoría de la complejidad computacional , la hipótesis del tiempo exponencial es un supuesto de dureza computacional no probado que fue formulado por Impagliazzo y Paturi (1999). Afirma que la satisfacibilidad de las fórmulas booleanas 3-CNF no se puede resolver en tiempo subexponencial . Más precisamente, la forma habitual de la hipótesis afirma la existencia de un número tal que todos los algoritmos que resuelven correctamente este problema requieren al menos tiempo . La hipótesis del tiempo exponencial, de ser cierta, implicaría que P ≠ NP , pero es una afirmación más contundente. Implica que muchos problemas computacionales son equivalentes en complejidad, en el sentido de que si uno de ellos tiene un algoritmo de tiempo subexponencial, entonces todos lo tienen, y que muchos algoritmos conocidos para estos problemas tienen una complejidad de tiempo óptima o casi óptima . [1]
El problema -SAT es una versión del problema booleano de satisfacibilidad en el que la entrada al problema es una expresión booleana en forma normal conjuntiva (es decir, un y de os de variables y sus negaciones) con como máximo variables por cláusula. El objetivo es determinar si se puede hacer que esta expresión sea verdadera mediante alguna asignación de valores booleanos a sus variables. 2-SAT tiene un algoritmo de tiempo lineal , pero todos los algoritmos conocidos para tamaños mayores toman tiempo exponencial , y la base de la función exponencial depende de . Por ejemplo, el algoritmo probabilístico WalkSAT puede resolver -SAT en un tiempo promedio
Algunas fuentes definen la hipótesis del tiempo exponencial como la afirmación ligeramente más débil de que 3-SAT no se puede resolver a tiempo . Si existiera un algoritmo para resolver 3-SAT en el tiempo , entonces sería igual a cero. Sin embargo, es coherente con el conocimiento actual que podría haber una secuencia de algoritmos 3-SAT, cada uno con un tiempo de ejecución para una secuencia de números que tiende a cero, pero donde las descripciones de estos algoritmos están creciendo tan rápidamente que un solo algoritmo no podría seleccionará y ejecutará automáticamente el más apropiado. Si este fuera el caso, entonces sería igual a cero aunque no habría ningún algoritmo ejecutándose en el tiempo . [3] Una variante relacionada de la hipótesis del tiempo exponencial es la hipótesis del tiempo exponencial no uniforme , que postula que no existe una familia de algoritmos (uno para cada longitud de la entrada, en el espíritu del consejo ) que pueda resolver 3-SAT. a tiempo . [4]
Debido a que los números forman una secuencia monótona que está acotada arriba por uno, deben converger a un límite
No es posible igualar a ningún finito : como demostraron Impagliazzo, Paturi y Zane (2001), existe una constante tal que . Por lo tanto, si la hipótesis del tiempo exponencial es cierta, debe haber infinitos valores de para que difieran de . [6]
Una herramienta importante en esta área es el lema de dispersión de Impagliazzo, Paturi y Zane (2001), que muestra que, para cada , cualquier fórmula -CNF puede reemplazarse por fórmulas -CNF más simples en las que cada variable aparece sólo un número constante de veces. , y por tanto en el que el número de cláusulas es lineal. El lema de dispersión se demuestra encontrando repetidamente grandes conjuntos de cláusulas que tienen una intersección común no vacía en una fórmula dada y reemplazando la fórmula por dos fórmulas más simples, una de las cuales tiene cada una de estas cláusulas reemplazadas por su intersección común y la otra tiene la intersección eliminada de cada cláusula. Al aplicar el lema de dispersión y luego usar nuevas variables para dividir las cláusulas, se puede obtener un conjunto de fórmulas 3-CNF, cada una con un número lineal de variables, de modo que la fórmula -CNF original sea satisfactoria si y solo si al menos una de estas fórmulas de 3-CNF es satisfactoria. Por lo tanto, si 3-SAT se pudiera resolver en tiempo subexponencial, se podría usar esta reducción para resolver -SAT también en tiempo subexponencial. De manera equivalente, si fuera por alguno , entonces también, y la hipótesis del tiempo exponencial sería cierta. [7] [6]
El valor límite de la secuencia de números es como máximo igual a , donde es el mínimo de los números tal que la satisfacibilidad de las fórmulas de forma normal conjuntiva sin límites de longitud de cláusulas se puede resolver en el tiempo . Por lo tanto, si la hipótesis del tiempo exponencial fuerte es cierta, entonces no habría ningún algoritmo para la satisfacibilidad general de CNF que sea significativamente más rápido que una búsqueda de fuerza bruta sobre todas las asignaciones de verdad posibles . Sin embargo, si la hipótesis del tiempo exponencial fuerte falla, aún sería posible igualar a uno. [8]
La hipótesis del tiempo exponencial implica que muchos otros problemas en la clase de complejidad SNP no tienen algoritmos cuyo tiempo de ejecución sea más rápido que el de alguna constante . Estos problemas incluyen k -colorabilidad del gráfico , búsqueda de ciclos hamiltonianos , camarillas máximas , conjuntos independientes máximos y cobertura de vértices en gráficos de vértices . Por el contrario, si alguno de estos problemas tiene un algoritmo subexponencial, entonces se podría demostrar que la hipótesis del tiempo exponencial es falsa. [7] [6]
Si se pudieran encontrar camarillas o conjuntos independientes de tamaño logarítmico en tiempo polinómico, la hipótesis del tiempo exponencial sería falsa. Por lo tanto, aunque es poco probable que encontrar camarillas o conjuntos independientes de tamaño tan pequeño sea NP completo, la hipótesis del tiempo exponencial implica que estos problemas no son polinomiales. [7] [9] De manera más general, la hipótesis del tiempo exponencial implica que no es posible encontrar camarillas o conjuntos independientes de tamaño en el tiempo . [10] La hipótesis del tiempo exponencial también implica que no es posible resolver el problema k -SUM (dados los números reales, encontrar aquellos que suman cero) en el tiempo . La hipótesis del tiempo exponencial fuerte implica que no es posible encontrar conjuntos dominantes de vértices más rápidamente que en el tiempo . [8]
La hipótesis del tiempo exponencial implica también que el problema del conjunto de arcos de retroalimentación ponderada en torneos no tiene un algoritmo parametrizado con el tiempo de ejecución . Sin embargo, tiene un algoritmo parametrizado con tiempo de ejecución . [11]
La fuerte hipótesis del tiempo exponencial conduce a límites estrictos en la complejidad parametrizada de varios problemas de gráficos en gráficos de ancho de árbol acotado . En particular, si la hipótesis del tiempo exponencial fuerte es verdadera, entonces el límite de tiempo óptimo para encontrar conjuntos independientes en gráficas de ancho de árbol es , el tiempo óptimo para el problema del conjunto dominante es , el tiempo óptimo para el corte máximo es y el tiempo óptimo para -colorear es . [12] De manera equivalente, cualquier mejora en estos tiempos de ejecución falsearía la hipótesis del tiempo exponencial fuerte. [13] La hipótesis del tiempo exponencial también implica que cualquier algoritmo manejable de parámetros fijos para la cobertura de camarillas de bordes debe tener una dependencia exponencial doble del parámetro. [14]
En el problema de desunión de conjuntos tripartitos en la complejidad de la comunicación , se especifican tres subconjuntos de números enteros en algún rango , y tres partes comunicantes conocen cada una dos de los tres subconjuntos. El objetivo es que las partes se transmitan la menor cantidad de bits entre sí en un canal de comunicaciones compartido para que una de las partes pueda determinar si la intersección de los tres conjuntos está vacía o no. Un protocolo de comunicaciones trivial de bits sería que una de las tres partes transmitiera un vector de bits que describiera la intersección de los dos conjuntos conocidos por esa parte, después de lo cual cualquiera de las dos partes restantes puede determinar el vacío de la intersección. Sin embargo, si existe un protocolo que resuelva el problema de comunicación y computación, podría transformarse en un algoritmo para resolver -SAT en el tiempo para cualquier constante fija , violando la hipótesis del tiempo exponencial fuerte. Por lo tanto, la hipótesis del tiempo exponencial fuerte implica que el protocolo trivial para la disjunción de conjuntos tripartitos es óptimo o que cualquier protocolo mejor requiere una cantidad exponencial de cálculo. [8]
Si la hipótesis del tiempo exponencial es cierta, entonces 3-SAT no tendría un algoritmo de tiempo polinómico y, por lo tanto, se deduciría que P ≠ NP . Más claramente, en este caso, 3-SAT ni siquiera podría tener un algoritmo de tiempo cuasipolinomial , por lo que NP no podría ser un subconjunto de QP. Sin embargo, si la hipótesis del tiempo exponencial falla, no tendría implicaciones para el problema P versus NP. Un argumento de relleno demuestra la existencia de problemas NP-completos para los cuales los tiempos de ejecución más conocidos tienen la forma para , y si el mejor tiempo de ejecución posible para 3-SAT fuera de esta forma, entonces P sería desigual a NP (porque 3- SAT es NP-completo y este límite de tiempo no es polinómico), pero la hipótesis del tiempo exponencial sería falsa.
En la teoría de la complejidad parametrizada, debido a que la hipótesis del tiempo exponencial implica que no existe un algoritmo manejable con parámetros fijos para la camarilla máxima, también implica que W[1] ≠ FPT . [10] Es un importante problema abierto en esta área si esta implicación puede revertirse: ¿ W[1] ≠ FPT implica la hipótesis del tiempo exponencial? Existe una jerarquía de clases de complejidad parametrizadas llamada jerarquía M que entrelaza la jerarquía W en el sentido de que, para todos , ; por ejemplo, el problema de encontrar una cobertura de vértice de tamaño en un gráfico de vértice con parámetro está completo para M[1]. La hipótesis del tiempo exponencial es equivalente a la afirmación de que M[1] ≠ FPT , y la cuestión de si for también está abierta. [3]
También es posible demostrar implicaciones en la otra dirección, desde el fracaso de una variación de la hipótesis del tiempo exponencial fuerte hasta separaciones de clases de complejidad. Como muestra Williams (2010), si existe un algoritmo que resuelve la satisfacibilidad del circuito booleano en el tiempo para alguna función que crece superpolinomialmente , entonces NEXPTIME no es un subconjunto de P/poly . Williams muestra que, si existe un algoritmo y también existe una familia de circuitos que simulan NEXPTIME en P/poly, entonces el algoritmo podría componerse con los circuitos para simular problemas de NEXPTIME de forma no determinista en una cantidad de tiempo menor, violando el teorema de la jerarquía del tiempo . Por tanto, la existencia del algoritmo prueba la inexistencia de la familia de circuitos y la separación de estas dos clases de complejidad. [15]