• Keine Ergebnisse gefunden

VL-17: Jenseits von P und NP (Berechenbarkeit und Komplexit¨at, WS 2018) Gerhard Woeginger

N/A
N/A
Protected

Academic year: 2022

Aktie "VL-17: Jenseits von P und NP (Berechenbarkeit und Komplexit¨at, WS 2018) Gerhard Woeginger"

Copied!
62
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

VL-17: Jenseits von P und NP

(Berechenbarkeit und Komplexit¨ at, WS 2018) Gerhard Woeginger

WS 2018, RWTH

BuK/WS 2018 VL-17: Jenseits von P und NP 1/46

(2)

Organisatorisches

N¨achste (letzte) Vorlesung:

Donnerstag, Januar 24, 12:30–14:00 Uhr, Aula

Webseite:

http://algo.rwth-aachen.de/Lehre/WS1819/BuK.php (−→ Arbeitsheft zur Berechenbarkeit)

(−→ Arbeitsheft zur NP-Vollst¨andigkeit)

(3)

Wdh.: Landkarte mit Karp’s 20 Reduktionen

SAT INTEGER

PROG 3-SAT

COLORING

CLIQUE COVER

EXACT COVER 3-DIM

MATCHING

STEINER TREE

HITTING SET

SUBSET-SUM

JOB SEQUENCING PARTITION

MAX-CUT SET COVER FEEDBACK

ARC SET

FEEDBACK VERTEX

SET DIRECTED

HAM-CYCLE

HAM CYCLE

VERTEX COVER INDEP

SET

CLIQUE

BuK/WS 2018 VL-17: Jenseits von P und NP 3/46

(4)

Wdh.: SUBSET-SUM

Problem: SUBSET-SUM

Eingabe:Positive ganze Zahlena1, . . . ,an; eine ganze Zahlb Frage:Existiert eine IndexmengeI ⊆ {1, . . . ,n} mitP

i∈Iai =b?

Satz

SUBSET-SUM ist NP-vollst¨andig.

(5)

Wdh.: PARTITION, Rucksack, Bin Packing

Problem: PARTITION

Eingabe:Positive ganze Zahlena01, . . . ,a0n; mitPn

i=1a0i=2A0 Frage:Existiert eine IndexmengeI ⊆ {1, . . . ,n} mitP

i∈Iai0=A0?

Satz

PARTITION ist NP-vollst¨andig.

Satz

Rucksack ist NP-vollst¨andig.

Bin Packing ist NP-vollst¨andig.

BuK/WS 2018 VL-17: Jenseits von P und NP 5/46

(6)

Wdh.: Pseudo-polynomiell versus Stark NP-schwer (1)

Definition: Pseudo-polynomielle Zeit

Ein AlgorithmusAl¨ost ein ProblemX inpseudo-polynomiellerZeit, falls die Laufzeit von Aauf InstanzenI von X

polynomiell in|I|undNumber(I)beschr¨ankt ist.

Satz

Die Probleme SUBSET-SUM, PARTITION und Rucksack sind pseudo-polynomiell l¨osbar.

(7)

Wdh.: Pseudo-polynomiell versus Stark NP-schwer (2)

Definition: Stark NP-schwer (engl.: NP-hard in the strong sense) Ein EntscheidungsproblemX iststark NP-schwer,

wenn es ein Polynom q:N→Ngibt, sodass die Restriktion von X auf InstanzenI mitNumber(I)≤q(|I|)NP-schwer ist.

Also: Das ProblemX ist sogar dann NP-schwer, wenn alle Zahlenwerte in der InstanzI nur polynomiell gross (gemessen in |I|) sind.

Satz

Es seiX ein stark NP-schweres Entscheidungsproblem.

FallsX pseudo-polynomiell l¨osbar ist, so gilt P=NP.

Also: Pseudo-polynomiell und stark NP-schwer schliessen einander aus (unter unserer Standardannahme P6=NP)

BuK/WS 2018 VL-17: Jenseits von P und NP 7/46

(8)

Vorlesung VL-18 Jenseits von P und NP

Was tun mit NP-schweren Problemen?

Die Komplexit¨atsklasse coNP

Zwischen P und NPC: NP-intermediate

Die Komplexit¨atsklassen EXPTIME und PSPACE

(9)

Was tun mit NP-schweren Problemen?

BuK/WS 2018 VL-17: Jenseits von P und NP 9/46

(10)

Was tun mit NP-schweren Problemen?

Viele Optimierungsprobleme aus der Praxis sind NP-schwer.

Beispiel: Bin Packing (BPP),Set Cover,Rucksack,Travelling Salesman Problem (TSP).

In der Praxis m¨ussen diese Probleme dennoch behandelt werden.

(11)

Aus dem Buch von Garey und Johnson (1)

“I can’t find an efficient algorithm, I guess I’m just too dumb.”

BuK/WS 2018 VL-17: Jenseits von P und NP 11/46

(12)

Aus dem Buch von Garey und Johnson (2)

“I can’t find an efficient algorithm, because no such algorithm is possible!”

(13)

Aus dem Buch von Garey und Johnson (3)

“I can’t find an efficient algorithm, but neither can all these famous people.”

BuK/WS 2018 VL-17: Jenseits von P und NP 13/46

(14)

Was tun mit NP-schweren Problemen? (1)

Viele Optimierungsprobleme aus der Praxis sind NP-schwer.

In der Praxis m¨ussen diese Probleme dennoch behandelt werden.

Wichtige Strategien sind:

Ausnutzen der Eingabestruktur durch spezielle Algorithmen Parametrisierte Algorithmen

Approximationsalgorithmen

Heuristiken (ohne irgendwelche Garantien) Zerteilen in geeignete Unterprobleme

(15)

Was tun mit NP-schweren Problemen? (2)

Beispiel: Ausnutzen der Eingabestruktur

Strassennetze lassen sich durch planareGraphen modellieren Es gibt effiziente Graphalgorithmen, die planare Strukturen ausn¨utzen

Beispiel: Approximationsalgorithmen

Instanzen des TSP erf¨ullen in der Praxis h¨aufig die Dreiecksungleichung (∆-TSP)

F¨ur das∆-TSP gibt es gute Approximationsalgorithmen: In polynomieller Zeit kann man eine Rundreise berechnen, deren L¨ange h¨ochstens3/2-mal die optimale L¨ange betr¨agt.

BuK/WS 2018 VL-17: Jenseits von P und NP 15/46

(16)

Was tun mit NP-schweren Problemen? (2)

Beispiel: Ausnutzen der Eingabestruktur

Strassennetze lassen sich durch planareGraphen modellieren Es gibt effiziente Graphalgorithmen, die planare Strukturen ausn¨utzen

Beispiel: Approximationsalgorithmen

Instanzen des TSP erf¨ullen in der Praxis h¨aufig die Dreiecksungleichung (∆-TSP)

F¨ur das∆-TSP gibt es gute Approximationsalgorithmen:

In polynomieller Zeit kann man eine Rundreise berechnen, deren L¨ange h¨ochstens3/2-mal die optimale L¨ange betr¨agt.

(17)

Was tun mit NP-schweren Problemen? (3)

In der Praxis h¨angt die Effizienz eines Algorithmus oft nicht allein von der Eingabegr¨osse ab.

Eine verfeinerte Analyse, die andereEingabeparameterber¨ucksichtigt, kann zu besseren Resultaten f¨uhren.

Beispiel: Parametrisierte Algorithmen

Wir wollen eine Anfrage in einer DatenbankDauswerten. Es sei`die Gr¨osse der Anfrage und es seimdie Gr¨osse der DatenbankD. Die Eingabegr¨osse ist dannn=`+m.

H¨aufig istmsehr gross, w¨ahrend`relativ klein ist. Ein Algorithmus mit Laufzeit2`mkann deswegen durchaus gut sein, ein Algorithmus mit Laufzeiten wie m` oder gar2m`hingegen kaum.

Analysieren wir die Algorithmen nur nach der Eingabegr¨ossen, so wird dieser wichtige Unterschied nicht sichtbar.

BuK/WS 2018 VL-17: Jenseits von P und NP 16/46

(18)

Was tun mit NP-schweren Problemen? (3)

In der Praxis h¨angt die Effizienz eines Algorithmus oft nicht allein von der Eingabegr¨osse ab.

Eine verfeinerte Analyse, die andereEingabeparameterber¨ucksichtigt, kann zu besseren Resultaten f¨uhren.

Beispiel: Parametrisierte Algorithmen

Wir wollen eine Anfrage in einer DatenbankDauswerten.

Es sei`die Gr¨osse der Anfrage und es seimdie Gr¨osse der DatenbankD. Die Eingabegr¨osse ist dannn=`+m.

H¨aufig istmsehr gross, w¨ahrend`relativ klein ist. Ein Algorithmus mit Laufzeit2`mkann deswegen durchaus gut sein, ein Algorithmus mit Laufzeiten wie m` oder gar 2m`hingegen kaum.

Analysieren wir die Algorithmen nur nach der Eingabegr¨ossen, so wird dieser wichtige Unterschied nicht sichtbar.

(19)

Die Komplexit¨ atsklasse coNP

BuK/WS 2018 VL-17: Jenseits von P und NP 17/46

(20)

Die Klasse coNP

Definition: Klasse NP (zur Erinnerung)

Ein EntscheidungsproblemX ⊆Σliegt inNP,

wenn f¨ur jedes Wortx∈X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Definition: Klasse coNP

Ein EntscheidungsproblemX ⊆Σliegt incoNP,

wenn f¨ur jedes Wortx∈/X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann. Intuition:

Wenn X in NP, dann gibt es f¨urJA-Instanzenx ∈X kurze und einfach zu ¨uberpr¨ufendeBeweise.

WennX in coNP, dann gibt es f¨urNEIN-Instanzenx∈/X kurze und einfach zu ¨uberpr¨ufendeWiderlegungen.

(21)

Die Klasse coNP

Definition: Klasse NP (zur Erinnerung)

Ein EntscheidungsproblemX ⊆Σliegt inNP,

wenn f¨ur jedes Wortx∈X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Definition: Klasse coNP

Ein EntscheidungsproblemX ⊆Σliegt incoNP,

wenn f¨ur jedes Wortx∈/X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Intuition:

Wenn X in NP, dann gibt es f¨urJA-Instanzenx ∈X kurze und einfach zu ¨uberpr¨ufendeBeweise.

WennX in coNP, dann gibt es f¨urNEIN-Instanzenx∈/X kurze und einfach zu ¨uberpr¨ufendeWiderlegungen.

BuK/WS 2018 VL-17: Jenseits von P und NP 18/46

(22)

Die Klasse coNP

Definition: Klasse NP (zur Erinnerung)

Ein EntscheidungsproblemX ⊆Σliegt inNP,

wenn f¨ur jedes Wortx∈X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Definition: Klasse coNP

Ein EntscheidungsproblemX ⊆Σliegt incoNP,

wenn f¨ur jedes Wortx∈/X ein polynomiell langes Zertifikaty existiert, das (zusammen mitx) in polynomieller Zeit verifiziert werden kann.

Intuition:

Wenn X in NP, dann gibt es f¨urJA-Instanzenx ∈X kurze und einfach zu ¨uberpr¨ufendeBeweise.

WennX in coNP, dann gibt es f¨urNEIN-Instanzenx∈/X kurze und einfach zu ¨uberpr¨ufendeWiderlegungen.

(23)

Beispiel (1)

Problem: Non-Hamiltonkreis (Non-Ham-Cycle) Eingabe:Ein ungerichteter GraphG = (V,E) Frage:BesitztG keinenHamiltonkreis?

Frage: Wie sieht das coNP-Zertifikat f¨ur Non-Ham-Cycle aus?

BuK/WS 2018 VL-17: Jenseits von P und NP 19/46

(24)

Beispiel (2)

Problem: Unsatisfiability (UNSAT)

Eingabe:Eine Boole’sche Formelϕin CNF ¨uber der Boole’schen VariablenmengeX ={x1, . . . ,xn}

Frage:Gibt eskeineWahrheitsbelegung f¨urX, dieϕ erf¨ullt?

Problem: TAUTOLOGY

Eingabe:Eine Boole’sche FormelϕinDNF¨uber der Boole’schen VariablenmengeX ={x1, . . . ,xn}

Frage:Wirdϕvon allenWahrheitsbelegungen vonX erf¨ullt?

Frage: Wie sehen coNP-Zertifikate f¨ur UNSAT und TAUTOLOGY aus?

(25)

Beispiel (3a): Lineare Programmierung

Ein primales Lineares Programm (P):

max Pn j=1cjxj

s.t. Pn

j=1aijxj ≤ bi f¨uri =1, . . . ,m xj ≥ 0

Das entsprechende duale Lineare Programm (D):

min Pm i=1biyi

s.t. Pm

i=1aijyi ≥ cj f¨urj=1, . . . ,n yi ≥ 0

Satz (Starker Dualit¨atssatz)

Wenn beide LPs zul¨assige L¨osungen haben,

so haben beide den selben optimalen Zielfunktionswert.

BuK/WS 2018 VL-17: Jenseits von P und NP 21/46

(26)

Beispiel (3b): Lineare Programmierung

Primal= “maxcx s.t.Ax ≤b” Dual= “minby s.t.yA≥c”

Problem: Lineare Programmierung (LP)

Eingabe:Eine reellem×nMatrixA; Vektorenb∈Rm undc∈Rn; eine Schranke γ∈R

Frage:Existiert ein Vektorx ∈Rn, derAx ≤bundx≥0erf¨ullt, und dessen Zielfunktionswertcx≥γ ist?

Beobachtung LP liegt in NP.

NP-Zertifikat = Vektorx f¨urs primale LP mitcx≥γ Beobachtung

LP liegt in coNP.

coNP-Zertifikat = Vektory f¨urs duale LP mitby < γ

(27)

Beispiel (3b): Lineare Programmierung

Primal= “maxcx s.t.Ax ≤b” Dual= “minby s.t.yA≥c”

Problem: Lineare Programmierung (LP)

Eingabe:Eine reellem×nMatrixA; Vektorenb∈Rm undc∈Rn; eine Schranke γ∈R

Frage:Existiert ein Vektorx ∈Rn, derAx ≤bundx≥0erf¨ullt, und dessen Zielfunktionswertcx≥γ ist?

Beobachtung LP liegt in NP.

NP-Zertifikat = Vektorx f¨urs primale LP mitcx≥γ

Beobachtung LP liegt in coNP.

coNP-Zertifikat = Vektory f¨urs duale LP mitby < γ

BuK/WS 2018 VL-17: Jenseits von P und NP 22/46

(28)

Beispiel (3b): Lineare Programmierung

Primal= “maxcx s.t.Ax ≤b” Dual= “minby s.t.yA≥c”

Problem: Lineare Programmierung (LP)

Eingabe:Eine reellem×nMatrixA; Vektorenb∈Rm undc∈Rn; eine Schranke γ∈R

Frage:Existiert ein Vektorx ∈Rn, derAx ≤bundx≥0erf¨ullt, und dessen Zielfunktionswertcx≥γ ist?

Beobachtung LP liegt in NP.

NP-Zertifikat = Vektorx f¨urs primale LP mitcx≥γ Beobachtung

LP liegt in coNP.

coNP-Zertifikat = Vektory f¨urs duale LP mitby < γ

(29)

Beispiel (3c): Lineare Programmierung

Zusammenfassung LP liegt inNP∩coNP.

Anmerkung: Das war bereits in den 1950er Jahren bekannt.

Satz (Leonid Genrikhovich Khachiyan, 1979) LP liegt inP.

Anmerkung: Khachiyan entwickelte dieEllipsoid-Methode f¨ur LP.

BuK/WS 2018 VL-17: Jenseits von P und NP 23/46

(30)

coNP-Vollst¨ andigkeit (1)

Definition: NP-vollst¨andig (zur Erinnerung) Ein EntscheidungsproblemX istNP-vollst¨andig,

wenn X ∈NPund alleY ∈NP polynomiell aufX reduzierbar sind.

Definition: coNP-vollst¨andig

Ein EntscheidungsproblemX istcoNP-vollst¨andig,

wennX ∈coNPund alleY ∈coNPpolynomiell auf X reduzierbar sind.

Intuition:

X ist NP-vollst¨andig,

wenn es zu den schwierigsten Problemen in NP geh¨ort.

X ist coNP-vollst¨andig,

wenn es zu den schwierigsten Problemen in coNP geh¨ort.

(31)

coNP-Vollst¨ andigkeit (2)

Satz

Non-Ham-Cycle, UNSAT und TAUTOLOGY sind coNP-vollst¨andig.

Beweis: ¨Ubung.

Satz

Wenn das EntscheidungsproblemX NP-vollst¨andig ist, so ist das komplement¨are Problem X coNP-vollst¨andig. Komplement¨ares Problem:

Ja-Instanzen vonX werden zu Nein-Instanzen vonX, und Nein-Instanzen vonX werden zu Ja-Instanzen vonX

BuK/WS 2018 VL-17: Jenseits von P und NP 25/46

(32)

coNP-Vollst¨ andigkeit (2)

Satz

Non-Ham-Cycle, UNSAT und TAUTOLOGY sind coNP-vollst¨andig.

Beweis: ¨Ubung.

Satz

Wenn das EntscheidungsproblemX NP-vollst¨andig ist, so ist das komplement¨are Problem X coNP-vollst¨andig.

Komplement¨ares Problem:

Ja-Instanzen vonX werden zu Nein-Instanzen vonX, und Nein-Instanzen vonX werden zu Ja-Instanzen vonX

(33)

coNP versus NP und P (1)

Satz

P⊆NP∩coNP Beweis:P=coP

BuK/WS 2018 VL-17: Jenseits von P und NP 26/46

(34)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar. Ergo: Alle K∈coNPliegen in NP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

(35)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar. Ergo: Alle K∈coNPliegen in NP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

BuK/WS 2018 VL-17: Jenseits von P und NP 27/46

(36)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP

X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar. Ergo: Alle K∈coNPliegen in NP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

(37)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP

Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar. Ergo: Alle K∈coNPliegen in NP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

BuK/WS 2018 VL-17: Jenseits von P und NP 27/46

(38)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar.

Ergo: Alle K∈coNPliegen in NP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

(39)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar.

Ergo: Alle K∈coNPliegen inNP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

BuK/WS 2018 VL-17: Jenseits von P und NP 27/46

(40)

coNP versus NP und P (2)

Viele Informatiker denken, dassNP6=coNPgilt.

Satz

WenncoNPein NP-vollst¨andiges ProblemX enth¨alt, dannNP=coNP.

Beweis:

X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: L≤pX f¨ur alleL∈NP X ∈NPCimpliziert: K ≤pX f¨ur alleK∈coNP Ergo: Alle K∈coNPsind aufX ∈NP reduzierbar.

Ergo: Alle K∈coNPliegen inNP.

Daraus erhalten wir das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

(41)

coNP versus NP und P (3)

Wir erhalten das folgende Werkzeug:

“X NP-vollst¨andig” ist Evidenz f¨ur “X ∈/coNP”

“X coNP-vollst¨andig” ist Evidenz f¨ur “X ∈/NP”

Ham-Cycle ist NP-vollst¨andig.

Ham-Cycle hat gute Zertifikate f¨ur Ja-Instanzen.

Ergo: Ham-Cycle hat (h¨ochstwahrscheinlich) keine guten Zertifikate f¨ur Nein-Instanzen.

SAT ist NP-vollst¨andig.

SAT hat gute Zertifikate f¨ur Ja-Instanzen.

Ergo: SAT hat (h¨ochstwahrscheinlich) keine guten Zertifikate f¨ur Nein-Instanzen.

BuK/WS 2018 VL-17: Jenseits von P und NP 28/46

(42)

P

NPC coNPC

NP coNP

(43)

coNP versus NP und P (4)

Viele Mathematiker denken, dassNP∩coNP=Pgilt.

Beispiel

LP inNP∩coNPwar seit den 1950er Jahren bekannt.

Erst 1979 wurde ein polynomieller Algorithmus f¨ur LP gefunden.

Beispiel

PRIMES inNP∩coNPwar seit den 1970er Jahren bekannt.

Erst 2002 wurde ein polynomieller Algorithmus f¨ur PRIMES gefunden.

Beispiel

PARITY-GAME inNP∩coNP ist seit den 1990er Jahren bekannt.

Ob allerdings PARITY-GAME inPliegt, ist ein offenes Problem.

BuK/WS 2018 VL-17: Jenseits von P und NP 30/46

(44)

Zwischen P und NPC:

NP-intermediate

(45)

Das Graphisomorphieproblem (1)

Definition

Zwei GraphenG1= (V1,E1)undG2= (V2,E2)sindisomorph, wenn es eine Bijektionf :V1→V2 gibt,

die Adjazenz und Nicht-Adjazenz erh¨alt.

Eine solche Bijektion heisstIsomorphismus.

BuK/WS 2018 VL-17: Jenseits von P und NP 32/46

(46)

Das Graphisomorphieproblem (2)

Problem: GRAPH-ISOMORPHUS

Eingabe:Zwei ungerichtete GraphenG1 undG2

Frage:Gibt es einen Isomorphismus vonG1 nachG2?

Satz

GRAPH-ISOMORPHUS liegt in NP.

Beweis: Verwende Isomorphismus als Zertifikat.

(47)

Das Graphisomorphieproblem (3)

Folgende Fragen sind derzeit noch ungel¨ost:

Liegt GRAPH-ISOMORPHUS in P?

Ist GRAPH-ISOMORPHUS NP-vollst¨andig?

Liegt GRAPH-ISOMORPHUS in coNP?

BuK/WS 2018 VL-17: Jenseits von P und NP 34/46

(48)

Das Graphisomorphieproblem (4)

Satz (L´aszl´o Babai, 2016)

GRAPH-ISOMORPHUS auf Graphen mitnKnoten

kann in2p(logn) Zeit gel¨ost werden (wobeipein Polynom ist).

Algorithmus verwendet algorithmische und strukturelle Theorie der Permutationsgruppen.

Exponential Time Hypothesis (ETH) Es existiert eine reelle Zahlδ >0,

sodass kein Algorithmus 3-SAT in ZeitO(2δn)l¨ost.

ETH wurde in den letzten 20 Jahren popul¨ar (ist aber unbewiesen!) ETH impliziertP 6=NP

Wenn GRAPH-ISOMORPHUS NP-vollst¨andig ist, dann ist ETH falsch

(49)

Das Graphisomorphieproblem (4)

Satz (L´aszl´o Babai, 2016)

GRAPH-ISOMORPHUS auf Graphen mitnKnoten

kann in2p(logn) Zeit gel¨ost werden (wobeipein Polynom ist).

Algorithmus verwendet algorithmische und strukturelle Theorie der Permutationsgruppen.

Exponential Time Hypothesis (ETH) Es existiert eine reelle Zahlδ >0,

sodass kein Algorithmus 3-SAT in ZeitO(2δn)l¨ost.

ETH wurde in den letzten 20 Jahren popul¨ar (ist aber unbewiesen!) ETH impliziertP 6=NP

Wenn GRAPH-ISOMORPHUS NP-vollst¨andig ist, dann ist ETH falsch

BuK/WS 2018 VL-17: Jenseits von P und NP 35/46

(50)

NP-intermediate (1)

Definition

Ein EntscheidungsproblemX ⊆ΣheisstNP-intermediate, wenn L∈NP und wenn sowohlL∈/P als auch L∈/NPC gilt.

Satz von Ladner (ohne Beweis) WennP6=NP gilt,

dann existieren Probleme, die NP-intermediate sind.

Viele Informatiker denken,

dass das GRAPH-ISOMORPHUS Problem NP-intermediate ist.

(51)

NP-intermediate (1)

Definition

Ein EntscheidungsproblemX ⊆ΣheisstNP-intermediate, wenn L∈NP und wenn sowohlL∈/P als auch L∈/NPC gilt.

Satz von Ladner (ohne Beweis) WennP6=NP gilt,

dann existieren Probleme, die NP-intermediate sind.

Viele Informatiker denken,

dass das GRAPH-ISOMORPHUS Problem NP-intermediate ist.

BuK/WS 2018 VL-17: Jenseits von P und NP 36/46

(52)

NP-intermediate (2)

NP

P

Graph- zusammenhang Primes

SAT

Clique Ind-Set VC

Ham-Cycle

TSP Partition Subset-Sum

Rucksack

BPP Coloring 3-SAT

??? Graph ???

??? Isomorphismus ???

(53)

Die Komplexit¨ atsklassen PSPACE und EXPTIME

BuK/WS 2018 VL-17: Jenseits von P und NP 38/46

(54)

Die Klasse PSPACE (1)

Definition: Komplexit¨atsklasse PSPACE

PSPACEist die Klasse aller Entscheidungsprobleme,

die durch eine DTM M entschieden werden, deren Worst Case Speicherplatzbedarf durchq(n)mit einem Polynom qbeschr¨ankt ist.

Definition: Komplexit¨atsklasse NPSPACE

NPSPACEist die Klasse aller Entscheidungsprobleme,

die durch eine NTMM entschieden werden, deren Worst Case Speicherplatzbedarf durchq(n)mit einem Polynom qbeschr¨ankt ist.

(55)

Die Klasse PSPACE (2)

Satz von Savitch (ohne Beweis) PSPACE=NPSPACE

Wie verh¨alt sich PSPACE zu NP?

Da sich der Kopf einer Turingmaschine in einem Schritt nur um eine Position bewegen kann gilt: NP⊆NPSPACE=PSPACE

BuK/WS 2018 VL-17: Jenseits von P und NP 40/46

(56)

Die Klasse PSPACE (2)

Satz von Savitch (ohne Beweis) PSPACE=NPSPACE

Wie verh¨alt sich PSPACE zu NP?

Da sich der Kopf einer Turingmaschine in einem Schritt nur um eine Position bewegen kann gilt: NP⊆NPSPACE=PSPACE

(57)

Die Klasse PSPACE (3)

Problem: QUANTIFIED-SAT (Q-SAT)

Eingabe:Eine Boole’sche Formelϕin CNF ¨uber der Boole’schen Variablenmenge{x1, . . . ,xn,y1, . . . ,yn} Frage:∃x1∀y1∃x2∀y2∃x3∀y3 · · · ∃xn∀yn ϕ

Satz

Q-SAT liegt in PSPACE.

Anmerkung: Q-SAT ist PSPACE-vollst¨andig.

BuK/WS 2018 VL-17: Jenseits von P und NP 41/46

(58)

Die Klasse EXPTIME (1)

Definition: Komplexit¨atsklasse EXPTIME

EXPTIMEist die Klasse aller Entscheidungsprobleme,

die durch eine DTM M entschieden werden, deren Worst Case Laufzeit durch 2q(n) mit einem Polynomq beschr¨ankt ist.

Laufzeit-Beispiele:2n, 2n, 3n, n!, nn. Aber nicht:22n

(59)

Die Klasse EXPTIME (2)

Wie verh¨alt sich EXPTIME zu PSPACE?

Bei einer Speicherplatzbeschr¨ankungs(n)gibt es nur2O(s(n))viele verschiedenen Konfigurationen f¨ur eine Turingmaschine.

Daher ist die Rechenzeit durch2O(s(n)) beschr¨ankt.

Die Probleme in PSPACE k¨onnen deshalb in Zeit 2p(n) gel¨ost werden: PSPACE⊆EXPTIME

BuK/WS 2018 VL-17: Jenseits von P und NP 43/46

(60)

Die Klasse EXPTIME (3)

Problem:k-Schritt-HALTEPROBLEM

Eingabe:Eine deterministische TuringmachineM; eine ganze Zahlk Frage:WennM mit leerem Band gestartet wird, h¨alt M dann nach h¨ochstensk Schritten an?

Die Zahlk ist bin¨ar (oder dezimal) kodiert.

Satz

Dask-Schritt-HALTEPROBLEM liegt in EXPTIME.

Anmerkung: Dask-Schritt-HALTEPROBLEM ist EXPTIME-vollst¨andig.

(61)

PSPACE und EXPTIME

Wir haben gezeigt:

P⊆NP⊆PSPACE⊆EXPTIME

Es ist nicht bekannt, welche dieser Inklusionen strikt sind.

M¨oglicherweise gilt P=PSPACE oder NP=EXPTIME.

Wir wissen allerdings, dass P6=EXPTIME gilt.

(Das folgt aus dem so-genanntenZeithierarchiesatz.)

BuK/WS 2018 VL-17: Jenseits von P und NP 45/46

(62)

EXPTIME

PSPACE

NP

NPC

P

Referenzen

ÄHNLICHE DOKUMENTE

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0.. F¨ ur jede Dezimalstelle i ∈ {n

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0. F¨ ur jede Dezimalstelle i ∈ {n

Da sich der Kopf einer Turingmaschine in einem Schritt nur um eine Position bewegen kann gilt: NP ⊆ NPSPACE = PSPACE.. Die Klasse

Die Klasse P enth¨ alt alle Entscheidungsprobleme, die effizient auf dem Computer gel¨ ost werden k¨ onnen. Intuitiv: P enth¨ alt die Probleme, die wir gut verstehen k¨ onnen und

Die Klasse P enth¨ alt alle Entscheidungsprobleme, die effizient auf dem Computer gel¨ ost werden k¨ onnen. Intuitiv: P enth¨ alt die Probleme, die wir gut verstehen k¨ onnen und

U enth¨ alt somit genau ein Literal pro Klausel Kein Literal tritt sowohl positiv als auch negiert auf Ergo: Alle diese Literale k¨ onnen gleichzeitig erf¨ ullt werden Also ist ϕ

, n} gilt: Nur zwei der Var-Zahlen und Dummy-Zahlen haben an dieser Stelle die Ziffer 1; alle anderen Zahlen haben an dieser Stelle die Ziffer 0. F¨ ur jede Dezimalstelle i ∈ {n

Also: Das Problem X ist sogar dann NP-schwer, wenn alle Zahlenwerte in der Instanz I nur polynomiell gross (gemessen in |I |)