Warum ist die Zählvariante eines schwierigen Entscheidungsproblems nicht automatisch schwierig?

14

Es ist allgemein bekannt, dass 2-SAT in P enthalten ist. Es scheint jedoch sehr interessant zu sein, die Anzahl der Lösungen für eine gegebene 2-SAT-Formel zu zählen, dh # 2-SAT ist # P-hart. Das heißt, wir haben ein Beispiel für ein Problem, bei dem die Entscheidung einfach ist, aber das Zählen schwierig ist.

Betrachten Sie aber ein beliebiges NP-vollständiges Problem (sagen wir 3-COL). Können wir sofort etwas über die Härte der Zählvariante sagen?

Was ich wirklich frage, ist: Warum brauchen wir einen weiteren Beweis, um zu zeigen, dass eine Zählvariante eines schwierigen Entscheidungsproblems auch # P-schwer ist? (Manchmal sehen Sie sparsame Reduzierungen, bei denen die Anzahl der Lösungen erhalten bleibt usw.). Ich meine wirklich, wenn das Zählen Problem ist einfach, könnte man das Entscheidungsproblem als auch automatisch lösen! Wie könnte es also nicht schwer sein? (OK, vielleicht ist es schwer, aber ich bin mir nicht sicher, für welche Definition von schwer).

Gideon
quelle

Antworten:

15

Der Grund, warum es kein automatischer Satz ist, dass "Entscheidung schwer ist, bedeutet, dass Zählung schwer ist", ist, dass diese beiden Anweisungen unterschiedliche Definitionen von "schwer" verwenden.

  • Ein Entscheidungsproblem ist schwierig, wenn es unter Polynom-Time-Many-One-Reduktionen (aka Karp-Reduktionen, aka Polynom-Time-Mapping-Reduktionen) NP- vollständig ist.

  • Ein Zählproblem ist hart , wenn es #P -komplette unter Polynom-Zeitverkürzungen Turing (aka Cook - Reduktionen).

Als solcher, wenn ein Entscheidungsproblem ist NP - vollständig, wissen wir , dass die entsprechende Zählung Problem ist NP -hard aber das ist nicht die Definition ist von dem, was ein harter Zählproblem ist. Sein #P -komplette scheint eine viel stärkere Aussage zu sein , als nur sein NP -hard - Toda hat gezeigt , dass #P -komplette Probleme sind schwer für die gesamte Polynom Hierarchie unter randomisierten Reduzierungen so, als Komplexitätsklasse, #P fühlt sich viel näher zu PSPACE als zu  NP .

Wenn Sie in die entgegengesetzte Richtung gehen, ist es klar, dass, wenn das Zählproblem im Sinne von FP einfach ist  , das Entscheidungsproblem in  P liegt . Wenn Sie effizient zählen können, können Sie sicher feststellen, ob die Antwort ungleich Null ist. Allerdings nur , weil die Zählung Version „nicht schwer“ (dh nicht ist #P -komplette) bedeutet nicht , dass es die „easy“ (dh in  FP ). Ladners Theorem erstreckt sich auf  #P . Wenn also FP ** # P ** vorliegt, gibt es eine unendliche Hierarchie unterschiedlicher Komplexitätsklassen zwischen ihnen, sodass unser "nicht-hartes" Zählproblem für jede dieser Klassen vollständig sein könnte Klassen und daher nicht "einfach" sein 

Having said that, ich glaube nicht , dass wir keine Gegenbeispiele zu der Vermutung haben , dass ein Entscheidungsproblem ist NP - vollständig bedeutet , dass die Zählung Version ist #P -komplette. Es ist also kein Theorem, aber es ist empirisch wahr.

David Richerby
quelle
Tatsächlich. In den letzten Abschnitten finden Sie weitere Informationen zu diesem Punkt unter cstheory.stackexchange.com/q/16119/5038 .
DW
1. Das Zählproblem ist für ein NP-Problem nicht eindeutig definiert. Sie müssen den Prüfer für ein NP-Problem reparieren, bevor Sie über die Zählversion sprechen. 2. Die Härte in der Komplexität ist eine relative Schwierigkeit , keine absolute Schwierigkeit . Wenn wir also sagen, dass ein Problem schwierig ist, ist die offensichtliche Frage relativ zu was und unter welcher Art von Vergleich?
Kaveh