Me pregunto si hay un algoritmo polinómico para "2-SAT con relaciones XOR". Tanto 2-SAT como XOR-SAT están en P, pero ¿es su combinación?
Entrada de ejemplo:
Parte 2-SAT:
(a or !b) and (b or c) and (b or d)
Parte XOR:
(a xor b xor c xor 1) and (b xor c xor d)
En otras palabras, la entrada es la siguiente fórmula booleana:
Ejemplo de salida: Satisfacible: a = 1, b = 1, c = 0, d = 0.
Tanto el número de cláusulas 2-SAT como el número de cláusulas XOR en la entrada son , donde es el número de variables booleanas.n
np-complete
satisfiability
xor
2-sat
Albert Hendriks
fuente
fuente
Respuestas:
Las relaciones 2-SAT-con-XOR pueden probarse NP-completo mediante la reducción de 3-SAT. Cualquier cláusula 3-SAT se puede reescribir en la expresión de relaciones 2-SAT-with-XOR equisatisfiable con y como nuevas variables.
fuente
No ha especificado la aridad de sus relaciones XOR, pero como en la reducción habitual de SAT a 3SAT, siempre puede organizar que su aridad sea como máximo 3. Ahora está en una excelente posición para aplicar el teorema de dicotomía de Schaefer , que decirle si su problema está en P o NP-completo (estas son las dos únicas opciones). Si resulta que está en P, el siguiente paso podría ser mirar a Allender et al. , que le permitirá saber qué tan fácil es su problema.
fuente
Según el teorema de la dicotomía de Schaefer , esto es NP completo.
Considere el caso donde todas las cláusulas tienen 2 o 3 literales en ellas; entonces podemos considerar esto como un problema de satisfacción de restricciones sobre un conjunto de relaciones de aridad 3. En particular, las relaciones son las siguientes: , , , , .Γ R(x,y,z) x∨y x∨¬y ¬x∨¬y x⊕y⊕z x⊕y⊕¬z
Ahora aplique el teorema de dicotomía de Schaefer, en su forma moderna . Verifique cada una de las seis operaciones para ver si son un polimorfismo:
Se deduce que este problema es NP-completo, incluso si restringe todas las cláusulas XOR para que tengan una longitud máxima de 3.
Por otro lado, si todas las cláusulas XOR están restringidas a una longitud máxima de 2, entonces esto está en P. En particular es equivalente a , por lo que cualquier fórmula de este tipo es equivalente a una fórmula 2SAT, cuya satisfacción se puede determinar en tiempo polinómico.( x ∨ y ) ∧ ( ¬ x ∨ ¬ y )(x⊕y) (x∨y)∧(¬x∨¬y)
fuente