FORMALE SYSTEME. Kompexitätsklassen. Die Grenzen unseres Wissens. Deterministisch vs. nichtdeterministisch. 25. Vorlesung: NP-Vollständigkeit

Ähnliche Dokumente
abgeschlossen unter,,,, R,

Nichtdeterministische Platzklassen

Die Komplexitätsklassen P und NP

11.1 Kontextsensitive und allgemeine Grammatiken

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Komplexität und Komplexitätsklassen

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Komplexita tstheorie eine erste Ubersicht. KTV bedeutet: Details erfahren Sie in der Komplexitätstheorie-Vorlesung.

Speicherplatz-Komplexität 1 / 30

Das P versus N P - Problem

Berechenbarkeit und Komplexität

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

LogSpace. Isomorphie von Bäumen (gerichtet und ungerichtet) Entscheiden, ob ein Graph zusammenhängend ist (gerichtet und ungerichtet)

Rekursiv aufzählbare Sprachen

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

Komplexitätstheorie Einführung und Überblick (Wiederholung)

8. Turingmaschinen und kontextsensitive Sprachen

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.

Probeklausur zur Vorlesung Berechenbarkeit und Komplexität

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

Einführung in die Weihnachtliche Informatik

Formale Grundlagen der Informatik 1 Kapitel 12 Zusammenfassung

Lösungsvorschläge Blatt Z1

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Theoretische Informatik 2

Vorlesung Berechenbarkeit und Komplexität. Motivation, Übersicht und Organisatorisches

Theoretische Informatik 1

1 Varianten von Turingmaschinen

IP=PSPACE. t Joachim Kneis t IP = PSPACE t 16. Dezember 2003 t

Ausgewählte unentscheidbare Sprachen

Theoretische Grundlagen der Informatik

2.4 Kontextsensitive und Typ 0-Sprachen

Primzahlzertifikat von Pratt

Spiele in der Informatik

Theoretische Informatik

Algorithmen II Vorlesung am

Formale Sprachen und Automaten

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Wie viel Mathematik kann ein Computer?

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Übung zur Vorlesung Berechenbarkeit und Komplexität

Primzahlen, Faktorisierung und Komplexitätstheorie

Graphentheorie 1. Diskrete Strukturen. Sommersemester Uta Priss ZeLL, Ostfalia. Hausaufgaben Graph-Äquivalenz SetlX

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen

Komplexität des Äquivalenzproblems für reguläre Ausdrücke

6.3 Erfüllbarkeit von Wünschen

Weitere Beweistechniken und aussagenlogische Modellierung

Theoretische Informatik

Komplexitätstheorie. Arfst Nickelsen Universität zu Lübeck Institut für Theoretische Informatik Wintersemester 2006/07. Stand 8.

23.1 Constraint-Netze

Mächtigkeit von WHILE-Programmen

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

Pratts Primzahlzertifikate

2. Repräsentationen von Graphen in Computern

Formale Sprachen und Automaten

GTI. Hannes Diener. 6. Juni Juni. ENC B-0123, diener@math.uni-siegen.de

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

Grundlagen der Künstlichen Intelligenz

Zentrale Prüfungen 2009

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Reguläre Sprachen Endliche Automaten

1. Einleitung wichtige Begriffe

Automaten, Spiele, und Logik

Formale Sprachen. Spezialgebiet für Komplexe Systeme. Yimin Ge. 5ahdvn. 1 Grundlagen 1. 2 Formale Grammatiken 4. 3 Endliche Automaten 5.

Einführung in die Informatik

Grundlagen der Künstlichen Intelligenz. 9.1 Einführung und Beispiele. 9.2 Constraint-Netze. 9.3 Belegungen und Konsistenz. 9.

Logik für Informatiker

Prüfungsprotokoll Kurs 1825 Logik für Informatiker. Studiengang: MSc. Informatik Prüfer: Prof. Dr. Heinemann Termin: Januar 2015

Theoretische Grundlagen der Informatik

Grammatiken. Einführung

Wortproblem für kontextfreie Grammatiken

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.)

Algorithmen und Datenstrukturen Kapitel 10

Lösungen zur 3. Projektaufgabe TheGI1

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Teil V. Weiterführende Themen, Teil 1: Kontextsensitive Sprachen und die Chomsky-Hierarchie

Induktive Definitionen

Hilbert-Kalkül (Einführung)

Endliche Sprachen. Folgerung: Alle endlichen Sprachen sind regulär. Beweis: Sei L={w 1,,w n } Σ*. Dann ist w 1 +L+w n ein regulärer Ausdruck für

Komplexitätstheorie Slide 1. Komplexitätstheorie

Automaten, Spiele und Logik

Übersicht Datenstrukturen und Algorithmen. Literatur. Algorithmus: Wikipedia Definition. Vorlesung 1: Einführung. Prof. Dr.

Theoretische Informatik 2

Rechnerische Komplexität

Einführung in die Theoretische Informatik

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

THEORETISCHE INFORMATIK

Berechenbarkeitstheorie 17. Vorlesung

Lineare Algebra 1. Detlev W. Hoffmann. WS 2013/14, TU Dortmund

1 Einführung Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT) Notationen und Definitionen Übungsaufgaben...

Satz von Kleene. (Stephen C. Kleene, ) Wiebke Petersen Einführung CL 2

Sprachen/Grammatiken eine Wiederholung

Die Harmonische Reihe

Berechenbarkeits- und Komplexitätstheorie

Transkript:

Kompexitätsklassen FORMALE SYSTEME 25 Vorlesung: NP-Vollständigkeit Markus Krötzsch Professur für Wissensbasierte Systeme Komplexitätsklassen sind Mengen von Sprachen, die man (grob) einteilt entsprechend der Ressourcen, die eine TM zur Entscheidung ihres Wortproblems benötigt deterministisch nichtdeterministisch P = PTime polynomielle Zeit NP = NPTime Exp = ExpTime exponentielle Zeit NExp = NExpTime L = LogSpace logarithmischer Speicher NL = NLogSpace PSpace polynomieller Speicher NPSpace TU Dresden, 22 Januar 2018 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 3 von 32 Deterministisch vs nichtdeterministisch Die Grenzen unseres Wissens Welche Beziehungen haben diese Klassen zu anderen? Die Beziehungen zwischen nichtdeterministischen Klassen sind analog zu denen im deterministischen Fall: NL NP NPSpace NExp Wir wissen: L NL P NP PSpace = NPSpace Exp NExp Eine DTM kann als NTM aufgefasst werden, dh die nichtdeterministischen Klassen sind immer stärker: L NL P NP PSpace NPSpace Exp NExp Man kann NTMs mit DTMs simulieren, aber das ist oft mit exponentiellen Mehrkosten verbunden (Vorlesung 19) Der berühmte Satz von Savitch besagt, dass speicherbeschränkte NTMs durch DTMs mit nur quadratischen Mehrkosten simuliert werden können Insbesondere gilt damit PSpace = NPSpace Zusammenfassung der wichtigsten bekannten Beziehungen: L NL P NP PSpace = NPSpace Exp NExp Wir wissen nicht, ob irgendeines dieser sogar ist Insbesondere wissen wir nicht, ob P NP oder P = NP Wir wissen nicht einmal, ob L NP oder L = NP Es wird aber vermutet, dass alle eigentlich sind Bekannt ist das aber nur bei exponentiell großen Ressourcenunterschieden: Es gilt: NL PSpace P Exp NP NExp Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 4 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 5 von 32

NP-Probleme effizient lösen? Wir haben gesehen: SAT NP PSpace ExpTime NP Dennoch haben alle unsere Algorithmen für SAT bisher exponentielle Laufzeit SAT NP führt nicht direkt zu einer besseren Lösung, da real existierende Computer nicht wie NTMs arbeiten Andererseits spricht auch nichts dagegen, dass es einen schnelleren Algorithmus gibt Kann man SAT auch effizienter lösen? Dazu sollten wir erst einmal NP etwas besser verstehen Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 6 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 7 von 32 Lösungen prüfen TMs die Lösungen überprüfen Eine interessante Eigenschaft von SAT: Es scheint schwer, die Erfüllbarkeit einer Formel zu ermitteln (zb können wir exponentiell viele Wertzuweisungen durchsuchen) Es ist einfach, Erfüllbarkeit einer Formel zu überprüfen, wenn ein Modell gegeben ist (dazu muss nur der Wahrheitswert der Formel berechnet werden) Ähnlich ist es bei Sudoku: Es ist schwer, ein Sudoku korrekt auszufüllen Es ist einfach, zu prüfen, ob ein Sudoku korrekt ausgefüllt wurde Gibt es noch mehr Probleme, die sich so verhalten? Es ist schwer, eine Lösung zu finden Es ist einfach, eine gegebene Lösung zu prüfen Wir wollen diese Idee formalisieren: Ein polynomieller Verifikator für eine Sprache L Σ ist eine polynomiellzeitbeschränkte, deterministische TM M, für die gilt: M akzeptiert nur Wörter der Form w#z mit: w L z Σ ist ein Zertifikat polynomieller Länge (dh für M gibt es ein Polynom p mit z p( w )) Für jedes Wort w L gibt es ein solches Wort w#z L(M) Intuition: Das Zertifikat z kodiert die Lösung des Problems w, die der Verifikator lediglich nachprüft Zertifikate sollten kurz sein, damit die Prüfung selbst nicht länger dauert als die Lösung des Problems Zertifikate werden auch Nachweis, Beweis oder Zeuge genannt Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 8 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 9 von 32

Nachweis-polynomielle Sprachen Beispiel: Drei-Farben-Problem Eine Sprache L ist nachweis-polynomiell wenn es für sie einen polynomiellen Verifikator gibt Das Drei-Farben-Problem besteht darin, die Knoten eines ungerichteten Graphen so mit den drei Farben rot, grün und blau zu färben, dass keine zwei benachbarten Knoten die gleiche Farbe haben Beispiel: SAT ist nachweis-polynomiell Ein möglicher polynomiellen Verifikator für SAT akzeptiert Wörter F#w, wobei F die Kodierung einer erfüllbaren Formel ist und w eine Kodierung einer Wertzuweisung, die F erfüllt Beispiel: Jede Sprache L P ist nachweis-polynomiell Als Verifikator verwenden wir einfach einen polynomiell-zeitbeschränkten Entscheider für L Das Zertifikat kann leer sein Das Problem kann als Wortproblem aufgefasst werden, wenn man Graphen als Wörter kodiert (zb als Adjazenzliste oder als zeilenweise kodierte Adjazenzmatrix) Das Drei-Farben-Problem ist nachweis-polynomiell (Zertifikat: Farbzuweisung) Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 10 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 11 von 32 Beispiel: Faktorisierung Die Faktorisierung einer natürlichen Zahl n ist die Darstellung der Zahl als Produkt von natürlichen Zahlen f 1 f 2 = n Folgende Sprache ist nachweis-polynomiell: COMPOSITE = {bin(n) es gibt f 1, f 2 > 1 mit n = f 1 f 2 } (Zertifikat: Kodierung von f 1 und f 2 ) Überraschender Weise ist auch folgende Sprache nachweis-polynomiell: PRIMES = {bin(n) es gibt keine f 1, f 2 > 1 mit n = f 1 f 2 } (Zertifikat: Primality certificate, bekannt seit 1975) NP steht für nachweis-polynomiell (1) Satz: Eine Sprache L ist genau dann nachweis-polynomiell wenn L NP Beweis: ( ) Sei L nachweis-polynomiell mit Verifikator V Wir erhalten eine polynomiell-zeitbeschränkte NTM M für L wie folgt: für eine Eingabe w rät M nichtdeterministisch ein polynomielles Zertifikat z (dabei muss M die Länge von z selbst beschränken) anschließend führt M die Berechnungen wie V aus um das geratene Zertifikat in polynomieller Zeit zu prüfen (Seit 2002 wissen wir: PRIMES P Primzahlentest nach Agrawal, Kayal und Saxena) Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 12 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 13 von 32

NP steht für nachweis-polynomiell (2) Satz: Eine Sprache L ist genau dann nachweis-polynomiell wenn L NP Beweis: ( ) Sei M eine polynomiell-zeitbeschränkte NTM für L Wir erhalten einen polynomiellen Verifikator V für L wie folgt Für jedes Wort w L gibt es einen akzeptierenden Lauf von M In jedem Schritt dieses Laufs wählt M nichtdeterministisch einen Übergang aus Der Lauf ist von polynomieller Länge, da M polynomiell-zeitbeschränkt ist Die Liste der Übergänge eines akzeptierenden Laufs kann als Zertifikat dienen V prüft, ob die durch z gegebenen Entscheidungen für die Eingabe w zu einem akzeptierenden Lauf von M führen NP ist nicht symmetrisch Es ist leicht zu sehen: Satz: Die Klasse P ist unter Komplement abgeschlossen Beweis: Wenn es für L eine polynomiell-zeitbeschränkte TM M gibt, dann erhält man eine TM für L indem man akzeptierende und nicht-akzeptierende Zustände von M vertauscht Für NP ist das nicht so einfach möglich Wir haben das schon für NFAs beobachtet (eine spezielle Art von NTMs) Beispiele: Es scheint kein einfaches Zertifikat dafür zu geben, dass eine Formel nicht erfüllbar ist oder dass ein Graph keine Dreifärbung zulässt Die Klasse aller Sprachen L, für die L NP gilt, heißt conp Grund: für ein akzeptiertes Wort kann es bei einer NTM akzeptierende und verwerfende Läufe geben Nach dem Austausch der Endzustände gäbe es dann aber immer noch akzeptierende Läufe Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 14 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 15 von 32 Reduktionen Manche Probleme lassen sich auf andere zurückführen Beispiel: Drei-Farben-Problem ist auf SAT reduzierbar NP-Vollständigkeit Darstellung von Farben mit Atomen: r i bedeutet Knoten i ist rot g i bedeutet Knoten i ist grün b i bedeutet Knoten i ist blau Färbe-Bedingungen für Knoten: (r 1 g 1 b 1 ) ( r 1 g 1 b 1 ) ( r 1 g 1 b 1 ) (usw für alle Knoten) Färbe-Bedingungen für Kanten: (r 1 r 2 ) (g 1 g 2 ) (b 1 b 2 ) (usw für alle Kanten) Erfüllende Wertzuweisung zulässige Färbung Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 16 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 17 von 32

Polynomielle Reduktionen Die Struktur von NP Eine Funktion f : Σ Σ ist polynomiell berechenbar wenn es eine polynomiellzeitbeschränkte TM gibt, die bei einer Eingabe w die Ausgabe f (w) auf das Band schreibt und anschließend anhält Idee: polynomielle Reduzierbarikeit definiert eine Art Ordnung auf Problemen Eine polynomiell berechenbare Funktion f : Σ Σ ist eine polynomielle Reduktion von einer Sprache L auf eine Sprache G, wenn für alle Wörter w Σ gilt: w L genau dann wenn f (w) G Beispiel: Die soeben skizzierte Funktion von Graphen auf logische Formeln ist eine polynomielle Reduktion des Drei-Farben-Problems auf SAT Beispiel: Wir haben das Äquivalenzproblem endlicher Automaten in Vorlesung 10 polynomiell auf das Inklusionsproblem reduziert Formale Systeme Markus Krötzsch, 22 Januar 2018 Folie 18 von 32 Das schwerste Problem in NP? Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 19 von 32 NP-Härte und NP-Vollständigkeit Eine Sprache ist Stephen Cook Leonid Levin NP-hart, wenn jede Sprache in NP polynomiell darauf reduzierbar ist Richard Karp NP-vollständig, wenn sie NP-hart ist und in NP liegt Satz von Cook [1971] & Levin [1973]: Alle Probleme in NP können polynomiell auf SAT reduziert werden Beispiel: SAT ist NP-vollständig (Cook & Levin) Beispiel: PRIMES ist in NP, aber vermutlich nicht NP-hart Gleiches gilt für viele Probleme in P (bei einigen ist dagegen sicher, dass sie nicht NP-hart sind) Wer SAT polynomiell löst, der hat alle Probleme in NP polynomiell gelöst Es gibt in NP eine maximale Klasse, die ein praktisch interessantes Problem enthält Karp findet kurz darauf 21 weitere solcher Probleme (1972) Beispiel: Das Halteproblem ist NP-hart aber sicher nicht in NP Gleiches gilt für jedes unentscheidbare Problem Seitdem wurden tausende weitere entdeckt Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 20 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 21 von 32

Beispiele Wie findet man NP-harte Probleme? Beispiel: Das Drei-Farben-Problem ist NP-vollständig Beispiel: Verallgemeinertes Sudoku (n Zahlen in einem n 2 n 2 -Feld mit n n- Unterfeldern) ist NP-vollständig Das Entscheidungsproblem dabei ist, ob das gegebene, teilweise gefüllte Feld eine Lösung zulässt Gleiches gilt für Verallgemeinerungen vieler anderer Solitärspiele (zb Minesweeper) Beispiel: Das Wortproblem für Typ-1-Sprachen (gegeben als Grammatik) ist NP-hart aber vermutlich nicht in NP Gleiches gilt für das Halteproblem von LBAs Beispiel: Das Problem des Handelsreisenden ist NP-vollständig Es besteht darin, in einem Graph mit bewerteten Kanten einen Pfad durch alle Knoten zu finden, so dass die Summe der Kantenwerte unter einem gegebenen Maximum liegt Schwer ist, worauf sich schwere Dinge leicht zurückführen lassen: Satz: Wenn L NP-hart ist und polynomiell auf G reduziert werden kann, dann ist G auch NP-hart Beweis: Folgt direkt aus der Definition, da die Komposition von zwei polynomiellen Reduktionen ebenfalls eine polynomielle Reduktion ist Technik zum Beweis von NP-Härte: Suche ein bekanntes NP-hartes Problem, welches dem untersuchten Problem möglichst ähnlich ist Gib eine polynomielle Reduktion an und zeige, dass sie korrekt ist Oft nicht schwer, wenn man bereits viele NP-harte Probleme kennt aber wo fängt man an? Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 22 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 23 von 32 Das erste NP-vollständige Problem Cook/Levin: Beweisskizze (1) Wie stellen wir TM-Berechnungen in aussagenlogisch dar? Ein Problem ist per Definition NP-vollständig: Das Wortpoblem für polynomiell-zeitbeschränkte nichtdeterministische Turingmaschinen besteht darin zu entscheiden, ob ein gegebenes Wort w von einer gegebenen polynomiell-zeitbeschränkten NTM akzeptiert wird Offenbar kann jedes Problem in NP darauf reduziert werden Für den Satz von Cook & Levin zeigt man die NP-Vollständigkeit von SAT durch Reduktion auf dieses Urproblem Idee: Eine Instanz des Wortproblems ist eine polynomiell-zeitbeschränkte NTM M und ein Eingabewort Die Zeitbeschränkung für M kann durch ein konkretes Polynom p angegeben werden Wir kennen also die maximale Zahl an Schritten p( w ) für diese Berechnung Ein Lauf ist eine Folge von maximal p( w ) Konfigurationen, die jeweils maximal p( w ) Speicherstellen verwenden Ansatz: Kodiere M und w so in Logik, dass die möglichen Läufe genau den erfüllenden Wertzuweisungen entsprechen Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 24 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 25 von 32

Cook/Levin: Beweisskizze (2) p( w ) Berechnungsschritte p( w ) Speicherstellen a a a b b c d c c d q 0 A a a b b c d c c d q 1 A A B a a C b C C b A B q f Wir können diesen Lauf mit aussagenlogischen Atomen kodieren: Q q,s: TM ist in Schritt s in Zustand q P i,s: TM-Kopf ist in Schritt s an Position i S a,i,s: Das Band enthält in Schritt s Zeichen a an Position i Cook/Levin: Beweisskizze (3) Wir können diesen Lauf mit aussagenlogischen Atomen kodieren: Q q,s: TM ist in Schritt s in Zustand q P i,s: TM-Kopf ist in Schritt s an Position i S a,i,s: Das Band enthält in Schritt s Zeichen a an Position i Nur polynomiell viele Atome nötig Mithilfe von Formeln kann man alle Bedingungen ausdrücken, die für einen korrekten Lauf der NTM gelten müssen Die Übergangsrelation wird zb mit Formel der folgenden Form kodiert: (Q q,s P i,s S a,i,s) (S b,i,s+1 Q q,s+1 P i,s+1) q,b,d δ(q,a) i =D(i) (für alle s {1,, p( w )} und Positionen i {1,, p( w )}) Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 26 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 27 von 32 Deterministisch vs Nichtdeterministisch Status von P vs NP Wir haben bereits bemerkt, dass P NP gilt, da DTMs spezielle NTMs sind Bis heute ist nicht bekannt, ob die Umkehrung dieser Inklusion gilt oder nicht Intuitiv gefragt: Wenn es einfach ist, eine mögliche Lösung für ein Problem zu prüfen, ist es dann auch einfach, eine zu finden? Übertrieben: Can creativity be automated? (Wigderson, 2006) Seit über 40 Jahren ungelöst Eines der größten offenen Probleme der Informatik und Mathematik unserer Zeit 1000000 USD Preisgeld für die Lösung ( Millenium Problem ) Viele Menschen glauben P NP Hauptargument: Wenn NP = P wäre, dann müsste jemand inzwischen einen polynomiellen Algorithmus für ein NP-vollständiges Problem gefunden haben This is, in my opinion, a very weak argument The space of algorithms is very large and we are only at the beginning of its exploration (Moshe Vardi, 2002) Ein weiterer Grund für die verbreitete Meinung: Menschen finden es schwer, NP-Probleme zu lösen und können sich schwer vorstellen, wie man sie vereinfachen sollte eventuell human chauvinistic bravado (Zeilenberger, 2006) Es gibt noch bessere Argumente, aber keines mehr als eine Intuition Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 28 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 29 von 32

Status von P vs NP (2) P-Härte Verschiedene Ergebnisse sind denkbar: P = NP könnte durch einen nicht-konstruktiven Beweis gezeigt werden Die Antwort könnte unabhängig von den Standardaxiomen der Mathematik (ZFC) sein Selbst wenn P NP gilt, ist weiterhin unklar, ob NP-harte Probleme wirklich exponentielle Zeit benötigen es gibt viele andere super-polynomielle Funktionen Das Problem könnte für immer ungelöst bleiben Über 100 Beweise zeigen, dass P = NP wahr/falsch/beides/keines der beiden ist: https://wwwwintuenl/~gwoegi/p-versus-nphtm Man kann Härte und Vollständigkeit auch für andere Klassen definieren Bei schwächeren Klassen muss man allerdings sicherstellen, dass die Reduktion selbst nicht schon so viele Ressourcen benötigt wie die Lösung des Problems! Eine Sprache ist P-hart wenn jede Sprache in P mit logarithmischem Speicherbedarf darauf reduzierbar ist Sie ist P-vollständig, wenn sie zudem in P liegt P-vollständige Probleme sind die schwersten polynomiell lösbaren Probleme Sie gelten als inhärent seriell, dh als nicht gut parallelisierbar (bisher nicht bewiesen) Beispiel: Die Erfüllbarkeit von aussagenlogischen Horn-Formeln (HornSAT) ist ein P- vollständiges Problem Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 30 von 32 Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 31 von 32 Zusammenfassung und Ausblick NP ist die Klasse der nachweis-polynomiellen Probleme NP-vollständige Probleme sind die schwersten Probleme in NP: Wenn man eines davon effizient löst, dann kann alle Probleme in NP effizient lösen SAT ist NP-vollständig und HornSAT ist P-vollständig Offene Fragen: Wie genau stehen die Komplexitätsklassen in Beziehung? Insbesondere: P NP? Haben Sie noch inhaltliche Fragen? ( Lernräume nutzen!) Haben Sie sich ausreichend auf die Prüfung vorbereitet? Markus Krötzsch, 22 Januar 2018 Formale Systeme Folie 32 von 32