Formula CNF equivalente più corta


18

Sia una formula CNF soddisfacente con n variabili e clausole . Lasciate essere lo spazio delle soluzioni di .F1nmSF1F1

Considera il problema di determinare, dato , un'altra formula CNF con lo stesso insieme di variabili di , conF 2 F 1 S F 2 = S F 1F1F2F1SF2=SF1 (stesso spazio di soluzione di ), ma con il minor numero di clausole possibile (il l'unico scopo è ridurre al minimo il numero di clausole, quindi quanti letterali ogni clausola può avere non è rilevante).F1

Domanda

Qualcuno ha già studiato questo problema? Ci sono risultati nella letteratura che lo riguardano?

Ad esempio, considera la seguente Formula CNF (ogni riga è una clausola): F1

x 2x 3x 4 ¬ x 1x 2x 4 ¬ x 1x 2¬ x 3 ¬ x 1x 3x 5 ¬ x 1x 2¬ x 5x1x2x3
x2x3x4
¬x1x2x4
¬x1x2¬x3
¬x1x3x5
¬x1x2¬x5

e la seguente formula : F2

x 2x 3x 4 ¬ x 1x 3x 5 ¬ x 1x 2x1x2x3
x2x3x4
¬x1x3x5
¬x1x2

entrambi hanno lo stesso spazio di soluzione, ma mentre ha 6 clausole, F 2 ne ha solo 4 . F16F24

Infine, considera la seguente formula : F3

¬ x 1x 3x 5 ¬ x 1x 2x2x3
¬x1x3x5
¬x1x2

Lo spazio della soluzione è di nuovo lo stesso, ma con solo clausole.3


2
@tsuyoshi Penso che voglia ottenere una formula CNF composta da un numero minimo di clausole con lo stesso spazio di soluzione
Tayfun Pay

1
@TsuyoshiIto: Sì, voglio ridurre al minimo il numero di clausole. Non pongo alcuna restrizione sul numero di letterali che ciascuna clausola può avere.
Giorgio Camerani,

1
Per ogni definizione ragionevole di "piccolo", il problema è NP-difficile. Un CNF formula è soddisfacibile se e solo se è non è equivalente alla formula di "False", che ha zero clausole.
Jeffε

1
La sezione 6 di citeseerx.ist.psu.edu/viewdoc/… menziona che il problema di determinare se esiste una formula CNF equivalente con al massimo un determinato numero di letterali è completo. Non sono sicuro di capire perché la tua versione che minimizza il numero di clausole sia interessante, poiché questo rientra in un fattore n della dimensione della formula, dove n è il numero di variabili. Π2pnn
András Salamon,

1
Inoltre, un altro risultato recente è rilevante: dx.doi.org/10.1016/j.dam.2011.05.013
András Salamon,

Risposte:


10

Il problema di determinare se esiste una formula CNF equivalente con al massimo un determinato numero di letterali è completo. La versione che minimizza il numero di clausole rientra in un fattore n della dimensione della formula, dove n è il numero di variabili. Vedi la sezione 6 di:Π2pnn

Un risultato recente mostra che calcolare un limite inferiore particolare per la dimensione della formula CNF equivalente più breve (misurata dal numero di clausole, come specificato) è NP-completo. Questo documento afferma anche che il tuo problema di ridurre al minimo il numero di clausole è anche , citando il documento Umans sopra, anche se il motivo per cui questo non è immediatamente ovvio per me.Π2p

  • Ondřej Čepek, Petr Kučera e Petr Savický, Funzioni booleane con un semplice certificato per complessità CNF , DAM 160 (4–5), 365–382, 2012. doi: 10.1016 / j.dam.2011.05.013

8

Il problema di minimizzazione del circuito è intrattabile (vedere i commenti di seguito). Inoltre, penso che potresti essere interessato alla tecnica che alcuni solutori SAT applicano (almeno in una certa misura) che si chiama preprocessing SAT. Ad esempio, il noto solutore MiniSAT utilizza un minimizzatore CNF SatELite per preelaborare un'istanza. Google Scholar offre molti risultati anche per la "pre-elaborazione sat".


2
Π2p

1
Σ2P

6

la principale soluzione standard / nota alla minimizzazione del CNF in EE è l' algoritmo Quine-McCluskey che ci sono molte implementazioni, alcune di dominio pubblico. tuttavia la mia comprensione è che (non menzionato nell'attuale articolo di Wikipedia) la maggior parte si rivolge a euristica e algoritmi avidi per trovare soluzioni esp per formule di grandi dimensioni, cioè non nec. trova la soluzione ottimale esp. per istanze di input di grandi dimensioni.

Quine-MCluskey è una generalizzazione del lavoro con le mappe di Karnough quali diagrammi possono avere successo per piccole istanze.

e nota che possono esserci più soluzioni ottimali in termini di formule equivalenti con le stesse dimensioni (minime) della clausola, questo sarà sottolineato in un buon riferimento sul soggetto. trovare il minimo apparentemente riduce a elencare tutti i primi implicati che possono comportare un enorme esponenziale esplode nella memoria / "spazio" rispetto alla dimensione della formula originale.

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.