Perché la variante di conteggio di un problema di decisione difficile non è automaticamente difficile?


14

È noto che 2-SAT è in P. Tuttavia, sembra abbastanza interessante che contare il numero di soluzioni per una data formula 2-SAT, cioè # 2-SAT sia # P-difficile. Cioè, abbiamo un esempio di un problema per il quale la decisione è facile, ma il conteggio è difficile.

Ma considera un problema NP-completo arbitrario (diciamo 3-COL). Possiamo immediatamente dire qualcosa sulla durezza della sua variante di conteggio?

Davvero quello che sto chiedendo è: perché abbiamo bisogno di un'altra prova per mostrare una variante di conteggio di un problema di decisione difficile è anche # P-difficile? (A volte vedi riduzioni parsimoniose che preservano il numero di soluzioni e così via). Voglio dire davvero, se il problema del conteggio fosse facile, potresti risolvere automaticamente anche il problema decisionale! Quindi come potrebbe non essere difficile? (OK, forse è difficile, ma non sono sicuro di quale definizione di duro).

Risposte:


15

Il motivo non è un teorema automatico secondo cui "la decisione è difficile implica che il conteggio è difficile" è che queste due affermazioni usano definizioni diverse di "difficile".

  • Un problema decisionale è difficile se si tratta di NP completo con riduzioni plurinomali in tempo polinomiale (alias riduzioni Karp, alias riduzioni della mappatura del tempo polinomiale).

  • Un problema di conteggio è difficile se è # P-completo sotto le riduzioni di Turing in tempo polinomiale (aka riduzioni di Cook).

In quanto tale, se un problema di decisione è NP -Complete, sappiamo che il corrispondente problema di conteggio è NP -Hard ma non è la definizione di ciò che un problema di conteggio è difficile. Essendo #P -Complete sembra essere una dichiarazione molto più forte di essere solo NP -Hard - Toda ha dimostrato che #p problemi Completa sono difficili per l'intera gerarchia polinomiale sotto riduzioni randomizzati in modo, come una classe di complessità, #P si sente molto più vicino a PSPACE che a  NP .

Andando nella direzione opposta, è chiaramente vero che, se il problema di conteggio è facile, nel senso di essere in  FP , allora il problema decisione è in  P . Dopotutto, se riesci a contare in modo efficiente, puoi sicuramente dire se la risposta è diversa da zero. Tuttavia, solo perché la versione del conteggio è "non difficile" (cioè non completa #P ) non implica che sia "facile" (cioè in  FP ). Il teorema di Ladner si estende a  #P quindi, se FP** # P ** quindi esiste una gerarchia infinita di classi di complessità distinte tra loro in modo che il nostro problema di conteggio "non difficile" possa essere completo per una di quelle classi e, quindi, non essere "facile" (in  FP ).

Detto questo, non credo che abbiamo alcun controesempio alla congettura che un problema decisionale essendo NP- completo significhi che la versione di conteggio è # P-completa. Quindi, non è un teorema ma è empiricamente vero.


Infatti. A proposito dell'ultimo paragrafo, puoi trovare un po 'più di discussione su questo punto su cstheory.stackexchange.com/q/16119/5038 .
DW

1. Il problema di conteggio non è definito in modo univoco per un problema NP, è necessario correggere il verificatore per un problema NP prima di parlare della sua versione di conteggio. 2. la durezza nella complessità è una difficoltà relativa , non assoluta . Quindi, quando diciamo che un problema è difficile, la domanda ovvia è relativa a cosa e sotto quale tipo di confronto?
Kaveh,
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.