Was sind die Konsequenzen von vollständigen Problemen in ?
Was sind die Konsequenzen von vollständigen Problemen in ?
Antworten:
Dies ist ein (weit) offenes Problem; Wir wissen so gut wie nichts. Insbesondere wegen der Tücken in beweisen -komplette Probleme, müssen wir sehr unterschiedliche Beweistechniken , als derzeit vorhanden sind . Als solches sollte eine Diskussion der Konsequenzen vernünftigerweise eine Tangente beinhalten: "Was würde es bedeuten, solch mächtige, neue Beweisverfahren zu haben?"
Für eine relativ aktuelle Diskussion des Themas gibt es die 26. NP-Completeness-Kolumne von David Johnson in der ACM Transactions on Algorithms from 2007 ( PDF ). Erlauben Sie mir , einige zu paraphrasieren , was David sagt in Bezug auf die Frage des Nachweises -komplette Probleme Existenz und fügen Sie meine Gedanken:
Derzeit haben wir nur "schwache" natürliche Kandidaten für eine Mitgliedschaft in in dem Sinne, dass der stärkste Beweis für ihre Mitgliedschaft darin besteht, dass wir noch keinen polynomiellen Zeitalgorithmus für sie gefunden haben. Er listet einige Kandidaten auf: SMALL FACTOR, SIMPLE STOCHASTIC GAME und MEAN PAYOFF GAME. Einige der extra „Seltsamkeit“ diese Probleme kommen aus den besten Heuristik Laufzeiten für die Lösung von ihnen, zum Beispiel kleiner Faktor, auch bekannt als ganzzahliger Faktors , hat eine randomisierte Zeitkomplexität von . (Wenn invollständige Probleme existieren, ist danneine solche subexponentielle(weder rein exponentielle noch ganz polynomielle)Laufzeit der Klasse endemisch?)
So gesagt, wollten wir etwas beweisen , wie: Problem A nur in ist genau dann , wenn , dh ein Vollständigkeits Ergebnis wie Cooks Satz für 3SAT und . Für solche Beweise allgemein eine Polynomzeitverkürzung (und legen Ihre bevorzugten zusätzlichen Beschränkungen fest, z. B. Kochverkürzungen, Karp-Verkürzungen). Infolgedessen muss es unter Techniken zur Verringerung der Polynomzeit eine polynomzeiterkennbare Darstellung der Klasse geben. Für können wir nichtdeterministische Turing-Maschinen verwenden, die innerhalb eines Polynoms p anhalten , Anzahl der Schritte. Wie David weist darauf hin, haben wir ähnliche Darstellungen für andere Klassen wie (wo der Status mehr klar ist) und# .
Die Schwierigkeit jedoch mit einer ähnlichen Darstellung für die Bereitstellung von ist , dass die „natürliche“ Analog ermöglicht uns einzubetten das Halteproblem in der Darstellung und ist somit unentscheidbar . Betrachten wir also den folgenden Versuch, mit zwei nicht deterministischen Turing-Maschinen darzustellen , die angeblich komplementäre Sprachen erkennen:
Frage: Gibt es eine Turing - Maschine halt auf Eingabe ?
Konstruieren Sie zwei Linearzeit-Turingmaschinen und wie folgt. Bei der Eingabe , liest die Eingabe und immer akzeptiert. lehnt immer ab, es sei denn und akzeptiert in Schritten .
Daher akzeptieren und komplementäre Sprachen, wenn bei Eingabe nicht anhält . Daher ist es widersprüchlich, zu entscheiden, ob zwei Polynom-Zeit-Turing-Maschinen komplementäre Sprachen akzeptieren.
Die "natürliche" Darstellung von Problemen ist also nicht polynomialzeitlich erkennbar. Es bleibt die Frage: Wie stellen Sie Probleme , so dass sie Polynom-Zeit erkennbar sind?
Es wurden keine wesentlichen Arbeiten zu diesem Thema durchgeführt, aber die erfolgreiche Lösung ist erforderlich, um die Vollständigkeit in zu beweisen . Daher behaupte ich, dass die Existenz einer Beweismethode, die die Vollständigkeit von auflösen kann, die größere Geschichte sein wird - nicht die "automatischen" Ergebnisse von vollständigen Problemen ( zB Komplexitätsklassen, vielleicht, kollabiert) , dass wir bereits kennen (oder besser gesagt, wird sich bewusst sein , hypothetisch in der Zukunft).