Una reducción polinómica de cualquier problema NP-completo a PCP acotada


18

Los libros de texto en todas partes suponen que el problema de la correspondencia posterior a los límites está completo para NP (no se permiten más de índices con repeticiones). Sin embargo, en ninguna parte se muestra una reducción de tiempo polinomial simple (como en algo que un estudiante universitario pueda entender) de otro problema NP-completo.N

Sin embargo, cada reducción que se me ocurre es exponencial (por o por el tamaño de la serie) en tiempo de ejecución. ¿Quizás se pueda demostrar que es reducible a SAT?N

Respuestas:


10

Como suele ser el caso con las reducciones de NP, tiene sentido buscar problemas similares . En particular, es difícil codificar condiciones globales tales como "ha visto algunos nodos" en PCP (con polinomios muchos mosaicos) que contraindican problemas de gráficos, los problemas de empaquetamiento requerirían que codifiquemos números unarios en PCP (creando una instancia exponencialmente grande), y pronto. Por lo tanto, se puede esperar que un problema de cadena con solo restricciones locales funcione mejor.

Considere la versión de decisión del problema de supersecuencia común más corto :

Dadas dos secuencias a,bΣ+ con |a|=n y |b|=m y knorte , debe decidir si hay una cadena CΣ+ con El |CEl |k tal que un y si son subsecuencias de C .

La idea es dejar que PCP cree supersecuencias de un y si de izquierda a derecha, codificando en las superposiciones de los mosaicos en qué posición estamos en un y si , respectivamente. Utilizará un mosaico por símbolo en C , por lo que k corresponde al límite del BPCP: si podemos resolver este PCP con k mosaicos, puede leer la supersecuencia común de igual longitud, y viceversa.

La construcción de las baldosas es un poco tediosa, pero bastante clara. Tenga en cuenta que no vamos a crear baldosas que no reenviar o ; tales nunca pueden ser parte de una supersecuencia común más corta , por lo que son superfluas. Se pueden agregar fácilmente sin romper las propiedades de la reducción.bunsi

Los números en las superposiciones están codificados en binario, pero usando símbolos fuera de y rellenándolos con una longitud común . Por lo tanto, nos aseguramos de que los mosaicos se usen como sugieren los gráficos (tetris), es decir, los caracteres y las superposiciones de codificación de índice no se mezclan (PCP no evita esto per se). Nosotros necesitamos:log max ( m , n )ΣIniciar sesiónmax(metro,norte)

  • Azulejos iniciales : puede comenzar con , o ambos si son iguales.a 1 b 1Cun1si1
  • Mosaicos intermedios: puede continuar con el siguiente símbolo en , en o en ambos si son iguales.a bCunsi
  • Terminando los mosaicos: termina con el último símbolo de (si ya se ha visto el último de ), similar para , o con el último símbolo de ambos.a b bCunsisi

Estos son los esquemas de mosaico. Tenga en cuenta que las fichas intermedias tienen que ser instanciadas para todos los pares . Como se mencionó anteriormente, crear las baldosas sin sólo si los caracteres respectivos en y partido.a b(yo,j)[norte]×[metro]unsi

ingrese la descripción de la imagen aquí
[ fuente ]

Los son simbólicos para "no me importa"; en los mosaicos reales, el otro símbolo tendrá que copiarse allí. Tenga en cuenta que el número de mosaicos está en y cada mosaico tiene una longitud , por lo que la instancia de BPCP construida (sobre alfabeto más símbolos de separación) tiene un tamaño polinómico. Además, la construcción de cada mosaico es claramente posible en tiempo polinómico. Por lo tanto, la reducción propuesta es de hecho una transformación polinómica válida que reduce el problema de supersecuencia común más corto NP-completo a BPCP.Θ ( m n ) 4 log max ( m , n ) + 1 Σ { 0 , 1 }Θ(metronorte)4 4Iniciar sesiónmax(metro,norte)+1Σ{0 0,1}


Buena respuesta. Supongo que la reducción más simple conocida.
Mohammad Al-Turkistany

8

Creo que puede probar que BPCP es NP-completo mediante el uso de una reducción similar a la utilizada para demostrar su indecidibilidad. Demostraremos directamente que BPCP es NP completo al mostrar cómo reducir cualquier problema en NP a tiempo polinómico.

La reducción estándar utilizada para demostrar que PCP es indecidible ( esbozada aquí ) funciona mediante la construcción de una serie de mosaicos de modo que haya una solución PCP si hay un cálculo aceptable de un TM dado en una cadena . El número de mosaicos creados en esta reducción es polinomialmente grande, específicamente, el número de fichas de dominó construidas es una función del tamaño del alfabeto de cinta y el número de estados en la TM. El único dominó cuyo tamaño puede ser grande es el dominó inicial, que tienewMETROwwescrito en ella. Si generalizamos esta reducción de trabajar en TM deterministas a trabajar en TM no deterministas, esto introduce como máximo un número constante de fichas de dominó, ya que el número de transiciones es finito. En consecuencia, podemos construir el conjunto estándar de fichas de dominó para la reducción de la indecidibilidad normal en el tiempo polinómico.

Dado esto, podemos reducir cualquier problema de NP a BPCP de la siguiente manera: dado cualquier problema de NP, tiene algo de tiempo polinomial NTM que se ejecuta en el tiempo . Entonces podemos reducir este problema a BPCP en tiempo polinómico de la siguiente manera: construya el conjunto estándar de dominó a partir de , luego pregunte si hay una solución que use dominó , donde es alguna función polinómica que expresa el cantidad de fichas de dominó necesarias para que exista la solución (probablemente sea algo así como , y ciertamente no es exponencial). Luego, usando la misma prueba que usa para mostrar que PCP es indecidible, puede probar que hay una solución para esta instancia de BPCP que usa como máximop ( n ) M f ( p ( n ) ) f n 2 f ( p ( n ) ) M m p ( n )METROpag(norte)METROF(pag(norte))Fnorte2F(pag(norte))Mosaicos si el NTM original acepta dentro de pasos. En consecuencia, tenemos una reducción del tiempo polinómico de cada problema en NP a BPCP, por lo que BPCP es NP-hard.METROmetropag(norte)

(También deberíamos mostrar que BPCP está en NP, pero eso es fácil; solo adivina de manera no determinante qué dominó poner en orden, luego verifícalo determinísticamente).

¡Espero que esto ayude!


Ayuda de alguna manera, aunque todavía preferiría una reducción directamente de otro problema.
juan

@ john- ¿Hay alguna razón particular por la que quiera reducir un problema NP-completo conocido a BPCP? La prueba anterior muestra que el problema es NP-complete y destaca la conexión entre la indecidibilidad de PCP y la NP-completeness de BPCP.
templatetypedef

Razón puramente educativa, ya que normalmente la mayoría de los libros de texto utilizan el método de reducción directa para probar la integridad de NP, y para comprender que este problema no es diferente al resto en ese sentido.
juan

1
@john: Por supuesto, puede usar la reducción de templatetypedef en cualquier problema de NP completo (que es directo), pero eso no hará que explote la estructura del problema elegido. Para fines educativos, esto es brillante, porque generalmente solo se ve una prueba sin reducción de que un problema es NP completo.
Raphael
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.