Questa è probabilmente una domanda stupida, ma non capisco. In un'altra domanda trovarono il teorema della dicotomia di Schaefer . A me sembra che dimostri che ogni problema CSP è in P o in NP completo, ma non nel mezzo. Poiché ogni problema NP può essere trasformato in tempo polinomiale in CSP (poiché CSP è NP-completo), perché ciò non dimostra che non c'è spazio tra P e NP-Complete e che P = NP?
Ad esempio, i miei pensieri vanno come: la fattorizzazione a numeri interi può essere riscritta come un problema di soddisfacibilità, quindi usando il teorema di Schaefer dovrebbe essere in P o NP completo ma non in mezzo (anche se non riusciamo a scoprire quale sia).
Un modo diverso di esaminare l'intera domanda: perché non possiamo usare il teorema di Schaefer per decidere se la fattorizzazione dei numeri interi è in P o in NP-complete?
EDIT: in risposta alla risposta di David Richerby (è troppo lungo per un commento):
Interessante, ma non capisco ancora del tutto. Quando si definisce l'insieme delle relazioni gamma durante l'utilizzo del teorema di Schaefer, possiamo imporre restrizioni su di esso. Ad esempio, potremmo limitare la gamma per usare solo le relazioni di arity 2 (quindi il problema è in P). Che tipo di restrizioni possiamo imporre alla gamma?
Perché non possiamo imporre tali restrizioni che tutte le istanze di CSP (gamma) sono esattamente le stesse di (isomorfa a?) L? Ad esempio, durante il trasferimento della fattorizzazione Integer per numeri dispari, uno dei due divisori è binario rappresentato come xn .. x3 x2 1. Ora, voglio che questo numero sia maggiore di 1. Quindi, ho la relazione (xn o .. o x3 o x2). Quindi dico che gamma può avere una relazione or di arity n-1. Ma non voglio che quella relazione or venga usata per includere altri casi oltre a L nella lingua, quindi impongo inoltre che x2..xn nella relazione or non possa avere una negazione. Naturalmente, ho anche bisogno di imporre la limitazione che lì vengono utilizzate solo variabili specifiche.
Non è possibile in questo modo lasciare che la CSP (gamma) sia isomorfa alla fattorizzazione a numeri interi? La domanda principale è: che tipo di restrizioni possiamo imporre alla gamma?
EDIT 2: in risposta alla risposta di Yuval Filmus.
Capisco la tua risposta e sembra corretta, anche se la stessa della risposta di David. Ad esempio, potremmo ridurre la fattorizzazione a 3-sat e quindi concludere che la fattorizzazione è NP completa, il che è sbagliato perché 3-sat ha altri casi che probabilmente non sono fattorizzazione.
La parte che non capisco è quando un'istanza è (non) arbitraria. Ad esempio, anche 2-SAT mi sembra non arbitrario, perché sono consentite solo clausole di arity 2 (anche se devo ammettere che la dimostrazione vale ancora perché è un limite superiore e in questo caso il limite superiore è P).
Forse un esempio migliore è quello della completezza NP: la domanda collegata sopra. Un rispondente fornisce una prova completa di Schaefer. Ma impongo restrizioni non banali sull'input (sono consentite clausole 2-SAT e clausole xor, ma nient'altro). Naturalmente, la dimostrazione è ancora valida perché i problemi CSP considerati nella dimostrazione sono esattamente gli stessi di quello originale.
La parte che non capisco è perché non possiamo fare simili per la fattorizzazione? Ovviamente non serve a ridurlo a 3-SAT, ma mi consente di fornire l'istanza CSP che fattorizza un numero e fattorizza solo un numero (di 4 bit). (saltare a END-OF-SKIP se ritieni che sia possibile).
Istanza di fattorizzazione.
INGRESSO:
(N =) (i 4 bit del numero da fattorizzare)
(M =) (i 4 bit del valore minimo del primo divisore)
Ora trasformiamo questo in un'istanza CSP
INPUT:
domini unari per e per (che rappresentano gli N e M indicati)
variabili con dominio {0,1}:
(D =) (il primo divisore)
(E =) (il secondo divisore)
relazioni:
(che rappresenta E> 1)
(che rappresenta D> M)
( d 1 ∧ e 2 ) ⊕ ( d 2 ∧ e 1 ) = n 2 n 3 = . . . ; n 4 = . . . (che rappresenta la moltiplicazione dei bit meno significativa) (che rappresenta la moltiplicazione del bit successivo)
FINE SALTA
Il punto cruciale è che, quando si applica il teorema di Schaefer, dobbiamo considerare solo tali CSP . (Proprio come per 2-SAT consideriamo solo CSP con arity 2). Nel fare ciò, uno dei sei polimorfismi è valido o no (salvo alcune stranezze nella teoria degli insiemi). In entrambi i casi, la fattorizzazione non è NP-intermedia.
Questo può essere fatto anche per 3-SAT. Quindi, dovremmo considerare (utilizzando la riduzione) solo istanze 3-SAT che rappresentano istanze di fattorizzazione (che non è più 3-SAT).
Dove sbaglio?