HORN-SAT è in LIN, in caso affermativo perché non è un'indicazione che P = LIN?


11

Lo zoo di complessità definisce come la classe di problemi decisionali risolvibili da una macchina di Turing deterministica in tempo lineare.LIN

LINP

Poiché HORN-SAT è risolvibile in (come indicato negli algoritmi a tempo lineare per testare la soddisfacibilità delle formule di corno proposizionali (1984) )O(n)

Vengono presentati nuovi algoritmi per decidere se una formula di Horn (proposizionale) è soddisfacente. Se la formula Horn contiene lettere proposizionali distinte e se si presume che siano esattamente , i due algoritmi presentati in questo documento vengono eseguiti nel tempo , dove è il numero totale di occorrenze di valori letterali in .AKP1,,PKO(N)NA

Mi chiedo perché non possiamo concludere questo

LIN=P

dato che HORN-SAT ha anche dimostrato di essere completo con riduzione dello spazio del registro ? Mi manca qualcosa. O è un fatto ben noto?P

(Ho ancora esaminato a fondo il documento del 1984, quindi non capisco bene gli algoritmi per risolvere HORN-SAT in tempo lineare, e quindi potrei aver frainteso le implicazioni.)


3
Non è chiaro che HORN-SAT sia risolvibile nel tempo su una macchina di Turing; il solito algoritmo viene eseguito nel modello di macchina RAM. O(n)
Yuval Filmus,

Risposte:


10

Perché le riduzioni dello spazio del registro non si eseguono necessariamente in tempo lineare. Se si riscontra un problema in P e si tenta di ridurlo a HORN-SAT, si verificherà una riduzione dello spazio log, ma tale riduzione potrebbe richiedere più del tempo lineare. Pertanto, anche se HORN-SAT può essere risolto in tempo lineare, l'altro problema potrebbe non essere risolvibile in tempo lineare: è possibile convertirlo in un'istanza HORN-SAT e quindi risolvere l'istanza HORN-SAT, ma il processo di conversione potrebbe richiedere più del tempo lineare.

Una riduzione dello spazio del registro è quella in cui la quantità di spazio utilizzata è , dove è la dimensione di input. In particolare, potrebbe usare bit di spazio, per alcune costanti . Ora è noto che qualsiasi algoritmo deterministico che utilizza al massimo bit di spazio viene eseguito nel tempo al massimo [se è garantito che termini], poiché ci sono solo possibili stati diversi e se l'algoritmo visita qualsiasi stato più di una volta, si ripeterà per sempre. Di conseguenza, una riduzione che utilizza bit di spazio avrà un tempo di esecuzione al massimo . Tuttavia,n c lg n c b O ( 2 b ) 2 b c lg n O ( 2 c lg n ) 2 c lg n = ( 2 lg n ) c = n c O ( n c )O(lgn)nclgncbO(2b)2bclgnO(2clgn)2clgn=(2lgn)c=nc , quindi l'unica conclusione che possiamo trarre è che la riduzione corre nel tempo , cioè nel polinomio tempo.O(nc)

In altre parole: l'esecuzione di una riduzione dello spazio del log può richiedere più del tempo lineare. Il suo tempo di esecuzione può essere qualsiasi polinomio in .n


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.