Mir ist bewusst, dass dies eine sehr dumme (oder zu naheliegende) Frage ist. Irgendwann bin ich jedoch verwirrt.
Wir können zeigen, dass P NP genau dann ist, wenn wir einen Algorithmus entwerfen können, der ein gegebenes Problem in NP in polynomialer Zeit löst .
Ich verstehe jedoch nicht, wie um alles in der Welt wir beweisen können, dass P NP . Bitte entschuldigen Sie mich für das folgende Gleichnis, da es so irrelevant sein könnte, aber jemandem zu sagen, dass er beweisen soll, ob P nicht gleich NP ist, erscheint mir so, als würde er jemandem sagen, dass er beweisen soll, dass Gott nicht existiert.
Es gibt eine Reihe von Problemen, die mit nicht deterministischen endlichen Automaten (NFA) mit einer polynomiellen Anzahl von Zuständen unabhängig von der aktuellen Technologie nicht gelöst werden können (ich weiß, dass dies eine schlampige Definition ist). Darüber hinaus gibt es eine beträchtliche Anzahl von Algorithmen, die einige entscheidende Probleme (kürzester Pfad, minimaler Spannbaum und sogar die Summe der Ganzzahlen ) bei Problemen mit der Polynomzeit verursachen.
Meine Frage in Kürze: Wenn ich glaube, dass P NP , würden Sie sagen "dann zeigen Sie Ihren Algorithmus, der ein NP- Problem in Polynomialzeit löst !". Angenommen, ich glaube P NP . Was würden Sie dann genau fragen? Was soll ich zeigen?
Die Antwort lautet eindeutig "Ihr Beweis". Was für ein Beweis zeigt jedoch, dass ein Algorithmus nicht existieren kann? (in diesem Fall ein polynomieller Zeitalgorithmus für ein NP- Problem)
quelle
Antworten:
Mir sind drei Hauptgründe bekannt, die beweisen könnten, dass P≠ NP .
Zeigen, dass P und NP unterschiedliche Struktureigenschaften haben. Zum Beispiel wird P unter Komplementierung geschlossen. Wenn Sie diesen NP zeigen könnten≠ co-NP (dh, dass NP nicht durch Komplementierung geschlossen wird), dann muss P sein≠ NP . Dies treibt das Problem natürlich nur eine Ebene tiefer - wie würden Sie diesen NP beweisen ?≠ Co-NP ?
Beweisen Sie, dass ein Problem nicht NP- vollständig ist. Wenn P= ∅ Σ∗ ≠ NP .
quelle
Vergessen Sie nicht, dass Sie immer noch nachweisen müssen, dass Ihr Algorithmus das Problem löst und in polynomialer Zeit abläuft.
Versuchen Sie zunächst zu erklären, "warum" P ≠ NP und warum dieser Grund verwendet werden kann, um P ≠ NP in einem geeigneten logischen Rahmen zu beweisen . Skizzieren Sie dann einen Beweis und erklären Sie, wie seine zweifelhaftesten Teile verteidigt werden können. Teilen Sie diesen Beweis anschließend in einfachere Aussagen auf, die unabhängig überprüft werden können.
Sie können auch beobachten, dass es Versuche gab, die Ergebnisse im Laufe der Zeit zu verbessern. Die anfänglichen Ergebnisse für TSP betrafen nur die symmetrische lineare Programmierformulierung, während die neuesten Ergebnisse keine solche Einschränkung aufweisen und zusätzlich zu TSP auch für die Probleme mit maximalem Schnitt und maximalem stabilem Satz gelten. Die ersten Ergebnisse für die Auflösung betrachteten nur grundlegende Davis-Putnam-Auflösungsverfahren und eine einzelne Klasse künstlicher Gegenbeispiele, während die neuesten Ergebnisse große Klassen auflösungsbasierter Methoden abdecken und mehrere Klassen natürlich vorkommender Gegenbeispiele angeben.
Für TSP habe ich keine Ahnung, wie die Ergebnisse weiter gestärkt werden sollten, außer vielleicht, indem neben TSP, maximaler Schnitt und maximaler stabiler Satz weitere Probleme angesprochen werden. Zur Lösung hätte ich viele Ideen, wie ich die Ergebnisse weiter verbessern könnte, aber der Artikel, auf den ich verweise, stammt aus dem Jahr 2002. Stephen Cook und Phuong Nguyen haben 2010 eine Monografie Logical Foundations of Proof Complexity veröffentlicht, die ich nicht einmal durchgesehen habe Ich schätze, es wird bereits viele meiner Ideen abdecken. Es ist interessant festzustellen, wie wenig es für die meisten von uns tatsächlich von Bedeutung ist, wie sehr sich diese Ergebnisse im Laufe der Zeit trotz unseres Interesses am P ≠ NP verbessert habenFrage. Selbst wenn in der Zwischenzeit bewiesen worden wäre, dass Algorithmen, die auf logischen Systemen ohne ein Äquivalent der Cut-Regel beruhen, die Erfüllbarkeitsprobleme nicht effizient lösen können, würden wir dennoch glauben, dass es bei P ≠ NP im Wesentlichen keine Fortschritte gegeben hat , dass das Problem im Wesentlichen besteht immer noch so weit offen wie immer.
quelle