Membresía no trivial en NP

27

¿Hay un ejemplo de un idioma que está en , pero donde no podemos probar este hecho directamente al mostrar que existe un testigo polinómico para la membresía en este idioma?NP

En cambio, el hecho de que el idioma está en se probaría reduciéndolo a otro idioma en , donde el vínculo entre los dos no es trivial y necesita un análisis cuidadoso.NPNP

En términos más generales, ¿hay algunos ejemplos interesantes de problemas en para que sea difícil ver que están en ?NPNP

Una semi-respuesta sería el problema de decidir el ganador en los juegos de paridad: para demostrar que está en (incluso ), necesitamos el teorema de determinación de posición que es profundo y no trivial. Sin embargo, esta respuesta no es ideal, porque todavía se reduce a la existencia de un testigo polinómico para este problema exacto (la estrategia posicional), y no se reduce a otro diferente .NPNPcoNPNP

Otro sería el algoritmo de primalidad AKS: decidir si un número es primo es polinómico, mientras que a priori no hay un pequeño testigo de este hecho. Digamos que descartamos los "algoritmos polinomiales sorprendentes", ya que muchos de ellos encajarían en la descripción anterior. Estoy más interesado en algoritmos sorprendentes que no son deterministas.NP

Denis
fuente
12
Sabíamos que los primos estaban en NP antes de AKS porque es primo si hay un tal que r ^ {n − 1} = 1 \ mod n y para todos los divisores primos q de n − 1 , r ^ \ frac {n-1} {q} \ neq 1 \ mod n . n>21<r<nrn1=1modnn1rn1q1modn
Artem Kaznatcheev
ah interesante, no pensé en los certificados de primalidad.
Denis
66
Un buen grupo de ejemplos de membresía no trivial en NP puede provenir de problemas para los que ha estado abierto durante algún tiempo, incluso si eran decidibles. Dos problemas desde la punta de mi sombrero: reconocimiento de gráficos de cuerdas y reconocimiento de nudos (y el género de nudos más general). Sin embargo, en ambos casos, existe un testigo polinomial (es decir, curvas / superficies normales), simplemente han sido difíciles de encontrar. La anudación también está en NP, y tampoco es trivial: existe un certificado pero se necesita la Hipótesis de Riemann Generalizada para tener un polinomio unido a su tamaño.
Arnaud
El "problema de la órbita" tampoco se sabía que era decidible durante mucho tiempo. Finalmente se demostró que estaba en P. El profesor Lipton tiene un excelente artículo en su blog sobre la historia de este problema: rjlipton.wordpress.com/2009/09/02/the-orbit-problem
Jagadish
3
Un ejemplo más: dado un gráfico, decida si es perfecto. El problema se puede resolver en tiempo polinomial, pero tardó un tiempo en demostrar que está en NP.
Jagadish

Respuestas:

20

Programación de enteros .

Demostrar que si hay una solución entera entonces hay una solución entera de tamaño polinómico está bastante involucrada. Ver

Kaveh
fuente
44
Ver Christos Papadimitriou, Sobre la complejidad de la programación de enteros , JACM 28 765–768. dx.doi.org/10.1145/322276.322287 (vale la pena leerlo, y solo tiene cuatro páginas).
András Salamon
1
Si no tiene acceso a ACM DL, puede obtener el documento de Papadimitriou desde aquí .
Kaveh
17

Mientras que el problema "es el número de cruce de un gráfico como máximo ?" es trivial en NP, la membresía de NP de los problemas relacionados para el número de cruce rectilíneo y el número de cruce de pares no es muy obvio; cf. Bienstock, Algunos problemas de números probablemente cruzados, Computo discreto. Geometry 6 (1991) 443-459, y Schaefer et al., Reconociendo gráficos de cuerdas en NP, J. Comput. System Sci. 67 (2003) 365-380.k

usuario13136
fuente
13

Mi ejemplo favorito es un clásico resultado de 1977 de Ashok Chandra y Philip Merlin. Mostraron que el problema de contención de consultas era decidible para consultas conjuntivas. El problema de contención de consultas conjuntas resulta ser equivalente a decidir si existe un homomorfismo entre las dos consultas de entrada. Esto reformula un problema de semántica, que implica la cuantificación sobre un conjunto infinito, en uno sintáctico, que solo requiere verificar un número finito de posibles homomorfismos. El certificado de homomorfismo es solo de tamaño lineal y, por lo tanto, el problema está en NP.


Este teorema proporciona uno de los fundamentos de la teoría de optimización de consultas de bases de datos. La idea es transformar una consulta en otra más rápida. Sin embargo, uno quiere asegurarse de que el proceso de optimización no cree una nueva consulta que no proporcione respuestas en algunas bases de datos donde la consulta original sí produjo resultados.

Formalmente, una consulta de base de datos es una expresión de la forma , donde x es una lista de variables libres, y es una lista de variables enlazadas, y Q ( x , y ) es una fórmula de primer orden con variables x e y de un lenguaje con símbolos de relación. La consulta Q puede contener cuantificadores existenciales y universales, la fórmula puede contener conjunción y disyunción de átomos relacionales, y también puede aparecer negación. Se aplica una consulta a una instancia de base de datos Ix.Q(x,y)xyQ(x,y)xyQI, que es un conjunto de relaciones. El resultado es un conjunto de tuplas; cuando la tupla en el resultado se sustituye por x, entonces se puede satisfacer la fórmula Q ( t , y ) . Uno puede entonces comparar dos consultas: Q 1 está contenida en Q 2 si siempre que Q 1 aplicado a un ejemplo de base de datos arbitraria I produce algunos resultados, entonces Q 2 aplicada a la misma instancia que también produce algunos resultados. (Está bien si Q 1 no produce resultados pero Q 2txQ(t,y)Q1Q2Q1IQ2IQ1Q2no, pero para la contención de la implicación debe mantener durante todos los casos posibles) El. problema de contención consulta se pregunta: Dadas dos bases de datos consulta y Q 2 , se Q 1 contenida en Q 2 ?Q1Q2Q1Q2

Antes de Chandra-Merlin no estaba del todo claro que el problema fuera decidible. Usando solo la definición, uno tiene que cuantificar sobre el conjunto infinito de todas las bases de datos posibles. Si las consultas no están restringidas, el problema es, de hecho, indecidible: dejar que sea ​​una fórmula que siempre es verdadera, entonces Q 1 está contenido en Q 2 si Q 2 es válido. (Este es el problema Entscheidungs de Hilbert , que Church and Turing demostró indecidible en 1936).Q1Q1Q2Q2

Para evitar la indecidibilidad, una consulta conjuntiva tiene una forma bastante limitada: solo contiene cuantificadores existenciales, y la negación y la disyunción no están permitidas. Entonces Q es una fórmula existencial positiva con solo conjunción de átomos relacionales. Este es un pequeño fragmento de lógica, pero es suficiente para expresar una gran proporción de consultas útiles en la base de datos. La declaración clásica en SQL expresa consultas conjuntivas; La mayoría de las consultas de motores de búsqueda son consultas conjuntas.QQSELECT ... FROM

Se pueden definir homomorfismos entre consultas de una manera directa (similar al homomorfismo gráfico, con un poco de contabilidad adicional). El teorema de Chandra-Merlin dice: dadas dos consultas conjuntas y Q 2 , Q 1 está contenido en Q 2 si hay una consulta homomorfismo de Q 2 a Q 1 . Esto establece la membresía en NP, y es sencillo demostrar que esto también es NP-hard.Q1Q2Q1Q2Q2Q1

  • Ashok K. Chandra y Philip M. Merlin, Implementación óptima de consultas conjuntas en bases de datos relacionales , STOC '77 77–90. doi: 10.1145 / 800105.803397

La capacidad de decisión de la contención de consultas se extendió más tarde a las uniones de consultas conjuntivas (consultas positivas existenciales donde se permite la disyunción), aunque permitir la disyunción aumenta la complejidad a -completo. Los resultados de decidibilidad e indecidibilidad también se han establecido para una forma más general de contención de consultas , que implican valoraciones de semiring que se producen al contar el número de respuestas, al combinar anotaciones en la procedencia o al combinar resultados de consultas en bases de datos probabilísticas.Π2P

András Salamon
fuente
4

Encontré un buen candidato mientras leía algunos documentos sobre ecuaciones de diofantina cuadráticas:

JC Lagarias, certificados sucintos para soluciones a ecuaciones binarias cuadráticas de diofantina (2006)

Del resumen: ... Sea la longitud de la codificación binaria de la ecuación binaria cuadrática de diofantina F dada por a x 2 1 + b x 1 x 2 + c x 2 2 + d x 1 + e x 2 + f = 0 . Suponga que F es una ecuación que tiene una solución entera no negativa. Este documento muestra que hay una prueba (es decir, "certificado") de que F tiene una solución que se puede verificar enL(F)Fax12+bx1x2+cx22+dx1+ex2+f=0FF operaciones de bit. Un corolario de este resultado es que el conjunto Σ = { F : F  tiene una solución entera no negativa } está en la clase de complejidad NP ...O(L(F)5logL(F)loglogL(F))Σ={F:F has a nonnegative integer solution}

... pero, para ser sincero, la única evidencia que tengo de que no es trivial es el número de páginas del documento ... 62! :-)

Marzio De Biasi
fuente
3

Decidir la accesibilidad para varios tipos de sistemas de estado infinito a veces es decidible, a menudo no. Para algunos casos especiales interesantes, siempre existe un certificado suficientemente pequeño y eficientemente comprobable, que pone tales problemas en NP. Aquí hay un tratamiento ordenado para autómatas paramétricos de un contador:

András Salamon
fuente
3

Aquí hay un ejemplo (aunque ciertamente artificial) cuando es muy difícil decidir si un problema está en o no. Let L 1 , L 2 haber dos idiomas, con L 1N P , y L 2N P . Ahora defina el lenguaje L , como sigue:NPL1,L2L1NPL2NPL

L=L1if the twin prime conjecture is true, and L=L2otherwise

LNPLNPNP

Andras Farago
fuente
55
L={x:xL2¬m|x|}L2
Joshua Grochow