O 2-SAT com relações XOR NP está completo?


11

Gostaria de saber se existe um algoritmo polinomial para "2-SAT com relações XOR". O 2-SAT e o XOR-SAT estão em P, mas é sua combinação?

Exemplo de entrada:

  • 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)

Em outras palavras, a entrada é a seguinte fórmula booleana:

(a∨¬b)∧(b∨c)∧(b∨d)∧(a⊕b⊕¬c)∧(b⊕c⊕d).

Saída de exemplo: Satisfazível: a = 1, b = 1, c = 0, d = 0.

O número de cláusulas 2-SAT e o número de cláusulas XOR na entrada são , onde n é o número de variáveis ​​booleanas.O(n)n


1
este problema é bastante próximo, XOR bit a bit de vetores para igualar um vector alvo , cstheory.se
— vzn

Respostas:


11

As relações 2-SAT com XOR podem ser comprovadas como NP-completas através da redução de 3-SAT. Qualquer cláusula 3-SAT pode ser reescrita para o equisatisfiable 2-SAT-com-XOR-relações expressão ( x 1 ∨ ¯ y ) ∧ ( y ⊕ x 2 ⊕ z ) ∧ ( ¯ z ∨ x 3 ) com y e z como novas variáveis.

(x1∨x2∨x3)
(x1∨y¯)∧(y⊕x2⊕z)∧(z¯∨x3)
yz

Todas as respostas parecem estar corretas ou ajudando, mas achei a mais elegante (imho).
— Albert Hendriks

1
Boa resposta. Vale ressaltar que a mera equisatisfação não seria suficiente aqui (uma vez que as atribuições satisfatórias das expressões correspondentes a todas as cláusulas de uma CNF satisfatória podem não corresponder), mas sua expressão reescrita realmente possui uma atribuição satisfatória correspondente para cada atribuição satisfatória de a cláusula original.
— Klaus Draeger

7

Você não especificou a aridade de suas relações XOR, mas, como na redução usual de SAT para 3SAT, sempre é possível organizar a aridade deles no máximo 3. Agora você está em ótima posição para aplicar o teorema da dicotomia de Schaefer , que informe se o seu problema está em P ou NP-complete (estas são as duas únicas opções). Se estiver em P, o próximo passo pode ser observar Allender et al. , que permitirá que você saiba como é fácil o seu problema.


O(n)

5

Pelo teorema da dicotomia de Schaefer , isso é NP-completo.

ΓR(x,y,z)x∨yx∨¬y¬x∨¬yx⊕y⊕zx⊕y⊕¬z

Agora aplique o teorema da dicotomia de Schaefer, em sua forma moderna . Verifique cada uma das seis operações para ver se elas são um polimorfismo:

  • x∨y
  • ¬x∨¬y
  • x∨y(0,1,0)(1,0,0)(0,0,0)
  • ¬x∨¬y(0,1,0)(1,0,0)(1,1,0)
  • x⊕y⊕z(0,0,1)(0,1,0)(1,0,0)(0,0,0)
  • x∨y(0,1,0)(1,0,0)(1,1,0)(0,0,0)

Daqui resulta que esse problema é NP-completo, mesmo que você restrinja todas as cláusulas XOR a um comprimento máximo de 3.


(x⊕y)(x∨y)∧(¬x∨¬y)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.