Ich habe kürzlich einen Beweis gelesen, der zeigen soll, dass ein Problem stark NP-hart ist, indem ich es einfach (in Polynomialzeit) auf ein stark NP-hartes Problem reduziere. Das ergab für mich keinen Sinn. Ich hätte gedacht, dass Sie zeigen müssten, dass alle in der Reduktion verwendeten Zahlen und die Instanzen des Problems, auf das Sie reduzieren, in der Problemgröße polynomiell begrenzt sind.
Ich sah dann, dass Wikipedia die gleichen allgemeinen Anweisungen für diese Art von Beweis gab, aber ich war nicht wirklich überzeugt, bis ich sah, dass Garey & Johnson im Grunde dasselbe sagten. Konkret heißt es: "Wenn im starken Sinne NP-hart ist und es eine pseudo-polynomielle Transformation von zu , dann ist im starken Sinne NP-hart." "Beachten Sie, dass ein polynomieller Zeitalgorithmus per Definition auch ein pseudopolynomieller Zeitalgorithmus ist."
Natürlich nehme ich das Wort von Garey & Johnson an - ich verstehe nur nicht, wie es richtig sein kann, und ich hätte gerne Hilfe dabei. Hier ist meine (vermutlich fehlerhafte) Begründung…
Es gibt stark NP-vollständige Probleme, und alle diese sind (per Definition) stark NP-hart sowie NP-vollständig. Jedes NP-vollständige Problem kann (per Definition) in polynomialer (und damit pseudopolynomialer) Zeit auf jedes andere reduziert werden. Angesichts der Aussagen von Garey & Johnson scheint es mir daher, dass jedes NP-vollständige Problem stark NP-vollständig ist und daher jedes NP-harte Problem stark NP-hart ist. Dies macht natürlich das Konzept der starken NP-Härte bedeutungslos. Was vermisse ich also?
Bearbeiten / Aktualisieren (basierend auf der Antwort von Tsuyoshi Ito):
Die Anforderung (d) aus Garey & Johnsons Definition einer (Pseudo-) Polynomtransformation (die Art der Reduktion, die erforderlich ist, um NP-Härte im starken Sinne zu verleihen) ist, dass die größte numerische Größe in dem resultierenden Fall als Funktion polynomial begrenzt ist der Problemgröße und der maximalen numerischen Größe des Originals. Dies bedeutet natürlich, dass, wenn das ursprüngliche Problem im engeren Sinne NP-hart ist (dh auch wenn seine numerischen Größen in der Problemgröße polynomiell begrenzt sind), dies auch für das Problem gilt, auf das Sie reduzieren. Dies wäre nicht unbedingt der Fall für eine gewöhnliche Polyzeitverkürzung (dh eine ohne diese zusätzliche Anforderung).
quelle
Antworten:
Nach der Terminologie in der Arbeit von Garey und Johnson sind Polynom-Zeit-Transformationen nicht unbedingt Pseudo-Polynom-Transformationen, da sie möglicherweise Punkt (d) in Definition 4 verletzen.
quelle
So erweitern Sie die Antwort von Tsuyoshi:
Betrachten Sie im Kontext von Garey und Johnson eine Umwandlung von PARTITION (S. 47, Abschnitt 3.1) in MULTIPROCESSOR-ZEITPLANUNG (S. 65, Abschnitt 3.2.1, Punkt (7)).
Vielleicht möchten Sie Wikipedia zu einem verwandten Thema lesen . Zum Beispiel haben wir für das NP-vollständige KNAPSACK-Problem einen auf dynamischer Programmierung basierenden Polynom-Zeit-Algorithmus - zumindest solange die Zahlen klein genug sind. Wenn die Zahlen zu groß werden, zeigt dieser "Polynomial-Time" -Algorithmus "exponentielles Verhalten" an. (G & J, S. 91, Abschnitt 4.2)
quelle