MIN-2-XOR-SAT e MAX-2-XOR-SAT: sono NP-difficili?


13

Qual è la complessità di MIN-2-XOR-SAT e MAX-2-XOR-SAT ? Sono in P? Sono NP-difficili?

Per formalizzare questo più precisamente, let

Φ(X)=ionCio,

dove x=(x1,,xm) e ogni clausola Ci è della forma (xixj) o (xi¬xj) .

Il problema 2-XOR-SAT è trovare un'assegnazione a x che soddisfi Φ . Questo problema è in P , poiché corrisponde a un sistema di equazioni lineari mod 2 .

Il problema MAX-2-XOR-SAT è quello di trovare un'assegnazione a x che massimizzi il numero di clausole soddisfatte. Il problema MIN-2-XOR-SAT è trovare un'assegnazione a x che minimizzi il numero di clausole soddisfatte. Quali sono le complessità di questi problemi?

Ispirato da MIN o MAX-True-2-XOR-SAT NP-hard?

Risposte:


6

Ci scusiamo per aver risposto a un vecchio post

Il problema di determinare se un'istanza di MONOTONE-2-XOR-SAT (tutte le clausole sono del tipo ) è soddisfacente può essere ridotto al problema di determinare se un grafico è bipartito, vedere questo .(XioXj)

Per fare ciò creiamo un grafico con un nodo per ciascun valore letterale della formula e colleghiamo ciascun valore letterale con un altro se si trovano nella stessa clausola (i bordi sono clausole)sol

Per esempio:

Se abbiamo una formula insoddisfacente che è (X1X2)(X1X3)(X2X3)(X1X4)

Abbiamo un grafico come questo:

grafo no bipartito

quello non è bipartito

Ci sono tre clausole che sono soddisfacenti e quindi non ci resta che eliminare un vantaggio

Ora, possiamo ridurre il problema di determinare se possiamo trovare un sottografo bipartito massimo con vertice al problema di determinare se possiamo soddisfare le clausole k in una formula MONOTONE-MAX-2XOR-SAT, vedi questo . E il massimo problema del sottografo bipartito equivale al taglio massimoKK

Per fare la riduzione, creiamo semplicemente un nuovo valore letterale per ciascun vertice e creiamo una clausola per ogni bordo che collega due valori letterali

Per esempio:

Abbiamo questo grafico,

grafo no bipartito 2

(X1X2)(X1X4)(X2X4)(X2X3)(X4X5)(X3X5)

KK


1
Dovresti rendere esplicita l'implicazione: poiché MAX-CUT è NP-Hard, la riduzione a MAX-XORSAT significa che è anche NP-Hard.
Antimonio,

-1

(XioXj)XioXioXjXioXjXioXj è vero se ai corrispondenti vertici sono stati assegnati colori diversi nel grafico.

Se tutti i vertici del grafico possono essere colorati utilizzando 2 colori e nessuno dei due vertici con una condivisione dei bordi comune viene assegnato allo stesso colore, l'equazione è soddisfacente.

Ma un grafico è a 2 colori se è un grafico bipartito. E determinare se un grafico è bipartito può essere fatto in tempo polinomiale. Pertanto il problema è in P, perché se possiamo determinare in tempo polinomiale che il grafico è un grafico bipartito, allora è risolvibile, altrimenti non è risolvibile.


1
(XioXj)(XK¬Xl)K,l(XK¬Xl)

2
Questo mi porta a un problema più serio con la tua risposta. Il problema non è determinare se la formula è soddisfacente; il problema è identificare un incarico che soddisfi il numero massimo / minimo di clausole. Il tuo algoritmo verifica solo se la formula è soddisfacente. Pertanto, risolve 2-XOR-SAT, ma non risolve MIN-2-XOR-SAT o MAX-2-XOR-SAT - ma sapevo già che 2-XOR-SAT è in P, come spiegato in la domanda. Ho frainteso qualcosa?
DW

XioXK

1
Ma ancora non vedo come questo risolva il mio secondo commento. Hai risolto un caso speciale di un problema di cui non stavo chiedendo. In breve, questa risposta non risponde alla domanda che ho posto.
DW
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.