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 El | a | = n y El | b | = m y k ∈ N , debe decidir si hay una cadena c ∈ Σ+ con El | c | ≤ 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 ( m , n )
- 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( i , j ) ∈ [ n ] × [ m ]∗unsi
[ 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 }∗Θ ( m n )4 logmax ( m , n ) + 1Σ ∪ { 0 , 1 }