Un semplice caso di SAT che non è facile per la risoluzione degli alberi


10

Esiste una formula naturale di formule CNF - preferibilmente una che è stata precedentemente studiata in letteratura - con le seguenti proprietà:C

  • C F CC è un semplice caso di SAT, come ad esempio Horn o 2-CNF, vale a dire che l'appartenenza a può essere testata in tempo polinomiale e le formule possono essere testate per la soddisfacibilità in tempo polinomiale.CFC
  • Le formule insoddisfacenti non sono note per avere confutazioni di risoluzione brevi (dimensioni polinomiali) simili ad alberi. Ancora meglio sarebbe: ci sono formule insoddisfacenti in per le quali è noto un limite inferiore super polinomiale per la risoluzione simile ad un albero.FCC
  • D'altra parte, è noto che le formule insoddisfacenti in hanno prove brevi in ​​alcuni sistemi di prova più forti, ad esempio in una risoluzione simile a un dag o in un sistema ancora più forte.C

C non dovrebbe essere troppo scarso, cioè contenere molte formule con variabili, per ogni (o almeno per la maggior parte dei valori di) . Dovrebbe anche essere non banale, nel senso di contenere formule soddisfacenti e insoddisfacenti.nnN

Il seguente approccio per risolvere una formula arbitraria CNF dovrebbe essere significativo: trovare una cessione parziale st formula residua è in , e quindi applicare l'algoritmo di tempo polinomiale per le formule in a . Pertanto vorrei altre risposte oltre ai vincoli completamente diversi dalla risposta attualmente accettata, poiché penso che sia raro che una formula arbitraria diventerà un vincolo completamente diverso dopo aver applicato una restrizione.FαFαCCFα


1
Jan, penso che sia ancora possibile fornire esempi artificiali, ad esempio l'unione PHP Horn. Non sono sicuro di come escludere formalmente tali esempi. Vuoi un corso che ha un nome ed è stato studiato? (ps: se spieghi perché stai cercando una classe del genere che possa aiutare con quali requisiti aggiuntivi la classe dovrebbe soddisfare.)
Kaveh

non sono sicuro dell'ultima frase. i problemi di pigeonhole possono avere sia formule vere che false, giusto? di solito sono solo le vere formule, non sono sicure di dove siano le false formule in un documento, qualcun altro l'ha visto? una formula naturale di falso piccione sarebbe quella che tenta di assegnare piccioni a buchi. n+1n
vzn

@Kaveh, hai ragione, ma probabilmente non si possono mai escludere esempi artificiali. Ho cercato di chiarire un po 'la domanda.
Jan Johannsen,

La condizione desiderata nell'ultima modifica richiede essenzialmente una classe ereditaria. Si noti che la codifica diretta di tutti i diversi produce una classe ereditaria di istanze SAT. Forse potresti chiarire perché l'esempio principale che abbiamo (come suggerito da tre commenti / risposte) non è adatto?
András Salamon,

1
Penso che ciò che Jan vuole sia una classe naturale di formule, non una famiglia di formule. La difficoltà è sia "naturale" che "classe" sono concetti informali. Immagino che una condizione che si possa porre per essere una classe sia quella di richiedere un certo livello di espressività o di chiusura, quindi le famiglie di formule come PHP non contano come una classe. E per naturalezza penso che se la classe è stata studiata in precedenza o ha un nome, è probabile che sia naturale.
Kaveh,

Risposte:


10

Sembra che tu sia interessato a vincoli completamente diversi (e la tua ultima frase è sulla buona strada). Questi sono esempi non banali del principio del buco del piccione, in cui il numero di piccioni non è necessariamente maggiore del numero di buchi, e inoltre alcuni piccioni possono essere esclusi da alcuni dei buchi.

Vincoli diversi possono essere decisi abbinando in tempi polinomiali di basso ordine.

Quando vengono espressi vincoli completamente diversi (utilizzando una delle numerose codifiche) come istanze SAT, l'apprendimento delle clausole guidato da conflitti di solito trova rapidamente una soluzione se esiste. Tuttavia, la pura risoluzione per il PHP deve creare una serie di clausole superpolinomialmente ampia per dimostrare che l'istanza non è soddisfacente. Questo limite vale chiaramente per questo problema più generale. D'altra parte, ricorda che la codifica di PHP di Cook consente confutazioni di risoluzione estesa di dimensioni polinomiali .

  • SA Cook, una breve dimostrazione del principio del buco del piccione con risoluzione estesa , SIGACT News 8 28–32, 1976. doi: 10.1145 / 1008335.1008338

Un lavoro recente in tal senso è il capitolo 5 della tesi di Sergi Oliva , che ha costituito la base di un documento con Alberto Atserias al CCC 2013.

Mi aspetto che tu sia a conoscenza del classico risultato di Cook, quindi forse intendevi limitare la potenza del sistema di prova nella tua terza condizione?


Non sono sicuro che sia quello che Jan sta cercando mentre chiede specificamente per CNF.
Mikolas,

@Mikolas: potresti chiarire di cosa ti preoccupi?
András Salamon,

1
Volevo dire che se ho qualche risultato su vincoli completamente diversi, allora non è chiaro come questo risultato si traduca in CNF. Quando capisco le domande, Jan voleva che i CNF fossero difficili per la risoluzione degli alberi, ma facili per qualcos'altro (ad es. Dag-res). Non mi è chiaro anche perché PHP sia un esempio di questo perché PHP è esponenziale anche per le ricerche. (A proposito la tesi di riferimento sembra pulita!)
Mikolas,

@mikolas come capisco la domanda, se si possono riconoscere casi soddisfacenti / insoddisfacenti della famiglia in P time, ma è difficile per la risoluzione di alberi o DAG, questo è ciò che si cerca. ora non sono sicuro che questo sia indicato in nessun documento, ma afaik (qualcuno ne sa di più?), le istanze di sat / unsat di PHP possono essere riconosciute in P time.
vzn,

1

Non sono sicuro del motivo per cui si richiederebbero anche le formule sat ma ci sono alcuni articoli sulla separazione tra risoluzione generale e albero, ad esempio [1]. Mi sembra che sia questo ciò che vuoi.

[1] Ben-Sasson, Eli, Russell Impagliazzo e Avi Wigderson. "Separazione quasi ottimale della risoluzione simile ad un albero e generale." Combinatorica 24.4 (2004): 585-603.


1
Sono ben consapevole di queste separazioni tra risoluzione simile a quella di un albero e simile a un dag, ma ciò fornisce solo una famiglia di formule. Questo è precisamente il tipo di esempio artificiale che stavo cercando di evitare.
Jan Johannsen,

0

Potresti essere interessato a formule SAT con "larghezza di banda" piccola (logaritmica) o "larghezza dell'albero". Queste formule sono ricorsivamente partizionabili in modo tale che il confine di comunicazione tra le partizioni sia piccolo, e quindi un approccio di programmazione dinamica enumerativa può essere usato per risolverle. L'argomento era popolare negli anni novanta. Una volta ho contato esattamente il numero di cicli hamiltoniani in un piccolo grafico della larghezza degli alberi di 24.000 vertici, quindi anche i problemi #P con la larghezza degli alberi piccoli sono risolvibili. Bodlaender è un riferimento importante.


Penso che almeno le formule di larghezza dell'albero costante abbiano confutazioni di risoluzione brevi simili ad alberi. Quindi non penso che questa classe soddisfi i requisiti della domanda.
Jan Johannsen,

-1

questo documento che segue sembra vicino a ciò che è richiesto in qualche modo (se non si adatta forse JJ può chiarire il perché). la domanda vuole escludere le istanze di PHP (pigeonhole) basate sulla mancanza di entrambe le formule vero / falso, ma (come citato nelle altre risposte) PHP è uno dei casi più generati / generatori di istanze dal lato della teoria e ha è sempre stato un generatore di formule soddisfacenti / insoddisfacenti sebbene le formule soddisfacenti siano meno enfatizzate / studiate.

PHP dove ci sono "piccioni" e "buchi" è insoddisfacente (falso) se e soddisfacente se . non ho immediatamente familiarità con i documenti che studiano entrambi i casi, ma pensano che esistano (ne vorrei sapere). e alcuni risultati / analisi che studiano solo i casi insoddisfacenti sono naturalmente estesi per includere il caso soddisfacente. mnm>nmnnmmnm>nmn

un altro approccio sarebbe quello di andare in un angolo più empirico e generare semplicemente casi casuali (presumibilmente attorno al punto di transizione soddisfacente del 50% facile-difficile-facile) e filtrarli per adattarli ai criteri dichiarati. uno richiederebbe implementazioni di risoluzione ad albero / risoluzione DAG o "sistemi più forti".


1
Lo stesso commento di quello sulla risposta di @Mikolas si applica qui.
Jan Johannsen,

1
non capisco il tuo commento, hai bisogno di maggiori informazioni. sto seguendo il commento di Mikolas "Quando capisco le domande, Jan voleva CNF difficili per la risoluzione degli alberi ma facili per qualcos'altro (ad es. dag-res)." cosa intendi con "questo dà solo una famiglia di formule"? la tua domanda è chiedere una famiglia di formule.
vzn,

1
No, la mia domanda è chiedere una classe di formule. La differenza per me è che queste famiglie di formula hanno al massimo una formula per numero di variabili, mentre una classe corretta dovrebbe avere molte formule per ogni numero di variabili, tra quelle soddisfacenti e insoddisfacenti.
Jan Johannsen,

Ho già spiegato in diversi punti (vedi il commento qui e su altre risposte e sulla domanda) perché questo non è quello che sto cercando !! In particolare, leggi l'ultimo paragrafo della domanda!
Jan Johannsen,
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.