VL-14: Der Satz von Cook & Levin
(Berechenbarkeit und Komplexit¨ at, WS 2019) Gerhard Woeginger
WS 2019, RWTH
Organisatorisches
Heute: Vorlesungs-Evaluierung (gegen Ende der Stunde) N¨achste Vorlesungen:
Mittwoch, Dezember 18, 10:30–12:00, Aula: Fragestunde Freitag, Januar 10, 12:30–14:00 Uhr, Audimax
Mittwoch, Januar 15, 10:30–12:00, Aula
Webseite:
https://algo.rwth-aachen.de/Lehre/WS1920/BuK/BuK.py
Wiederholung
Wdh.: Komplexit¨ atsklasse EXPTIME
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: 2√n, 2n, 3n, n·2n, n!, nn Aber nicht:22n undnnn
Satz
P ⊆ NP ⊆ EXPTIME
Wdh.: L¨ osung finden vs L¨ osbarkeit entscheiden
Ein beliebiges Entscheidungsproblem in NP Eingabe:Ein diskretes ObjektX.
Frage:Existiert f¨ur dieses ObjektX ein L¨osungsobjektY? Dilemma:
Das Entscheidungsproblem besch¨aftigt sich nur mit der Frage, ob ein derartiges L¨osungsobjektY existiert.
Aber eigentlich will man das L¨osungsobjektY auch genau bestimmen, und dann damit weiter arbeiten.
Ausweg:
Ein schneller Algorithmus f¨ur das Entscheidungsproblem liefert (durch wiederholte Anwendung) oft auch einen schnellen Algorithmus zum Berechnen eines expliziten L¨osungsobjekts
Wdh.: Optimieren vs Entscheiden
F¨ur ein Optimierungsproblem mit einer MengeLvon zul¨assigen L¨osungen und einer Kostenfunktionf :L →Ndefinieren wir das entsprechende Entscheidungsproblem:
Eingabe:Wie im Optimierungsproblem; plus Schrankeγ∈N Frage:Existiert eine zul¨assige L¨osungx ∈ L
mit f(x)≥γ (f¨ur Maximierungsprobleme) respektive mit f(x)≤γ (f¨ur Minimierungsprobleme)?
Mit Hilfe eines Algorithmus, der das Optimierungsproblem l¨ost, kann man immer das entsprechende Entscheidungsproblem l¨osen.
Mit Hilfe eines Algorithmus, der das Entscheidungsproblem l¨ost, kann man den optimalen Zielfunktionswert bestimmen
(und oft auch die dazugeh¨orende optimale L¨osung finden).
Wdh.: Polynomielle Reduktionen
Definition
Es seienL1 undL2 Sprachen ¨uberΣ1 bzw.Σ2.
Dann istL1 polynomiellreduzierbar aufL2(mit der NotationL1≤pL2), wenn eine polynomiellberechenbare Funktionf: Σ∗1→Σ∗2existiert, so dass f¨ur allex∈Σ∗1 gilt: x∈L1 ⇔ f(x)∈L2.
L1≤pL2undL2≤pL3impliziertL1≤pL3 (Transitivit¨at) L1≤pL2undL2∈P impliziertL1∈P
COLORING≤p SAT VC≤pSAT
Ex-Cover ≤p SAT (¨Ubung)
Vorlesung VL-14
Der Satz von Cook & Levin
Satz von Cook & Levin NP-Vollst¨andigkeit
Kochrezept f¨ur NP-Vollst¨andigkeitsbeweise NP-Vollst¨andigkeit von 3-SAT
Karp’s Liste mit 21 Problemen
Polynomielle Reduktionen auf SAT
Problem: Satisfiability (SAT)
Eingabe:Boole’sche Formelϕin CNF ¨uber der VariablenmengeX Frage:Existiert eine Wahrheitsbelegung vonX, dieϕerf¨ullt?
Wir wissen bereits:
COLORING kann in polynomieller Zeit auf SAT reduziert werden VC kann in polynomieller Zeit auf SAT reduziert werden
EX-COVER kann in polynomieller Zeit auf SAT reduziert werden
Nat¨urliche Frage: Welche anderen Probleme k¨onnen denn noch in polynomieller Zeit auf SAT reduziert werden?
Die Komplexit¨ atslandschaft
NP
P
Graph- zusammenhang Primzahl
SAT
Clique Ind-Set VC
Ex-Cover
Ham-Cycle TSP Partition
Subset-Sum Knapsack
BPP Coloring
Der Satz von Cook & Levin
Satz (Cook & Levin)
F¨ur alleL∈NPgilt: L≤pSAT
In anderen Worten:
Jedes Problem in der KlasseNP kann in polynomieller Zeit als Spezialfall von SATformuliert werden.
Das Erf¨ullbarkeitsproblemSATist ein universelles Modellierungstool f¨ur die gesamte KlasseNP.
Stephen Cook OC (1939)
Wikipedia:Stephen Arthur Cookis an American-Canadian computer scientist and mathematician who has made major contributions to the fields of complexity theory and proof complexity.
His seminal paper“The complexity of theorem proving procedures”(presented at the 1971 Symposium on the Theory of Computing) laid the foundations for the theory of NP-Completeness.
The ensuing exploration of the boundaries and nature of the class of NP-complete problems has become one of the most active and important research areas in computer science.
Leonid Levin (1948)
Wikipedia:Leonid Anatolievich Levinis a Soviet-American computer scientist. He obtained his master’s degree at Moscow University in 1970 where he studied under Andrej Kolmogorov. He completed the Candidate Degree academic requirements in 1972.
Levin is known for his work in randomness in computing,
average-case complexity, foundations of mathematics and computer science, algorithmic probability, theory of computation, and information theory.
Leonid Levin and Stephen Cook independently discovered the existence of NP-complete problems.
Levin was awarded the Knuth Prize in 2012 for his discovery of NP-completeness and the development of average-case complexity.
Beweis des Satzes
von Cook & Levin
Grundideen des Beweises (1)
Es seiL⊆Σ∗ ein beliebiges Problem inNP.
Es seiM eine NTM, dieL in polynomieller Zeit erkennt.
Wir m¨ussen/werden zeigen, dassL≤p SATgilt.
Dazu konstruieren wir eine polynomiell berechenbare Funktionf, die jedesx∈Σ∗ auf eine Formelϕ=:f(x)abbildet, sodass gilt:
x ∈L ⇔ M akzeptiertx ⇔ ϕ∈SAT
Wir nehmen folgende Eigenschaften der NTMM an:
M besucht keine Bandzelle links von der Startzelle.
Eine akzeptierende Rechnung vonM geht in den Zustandqaccept
¨
uber, und bleibt dann dort in einer Endlosschleife.
Es gibt ein Polynomp(·), sodass M eine Eingabex genau dann akzeptiert, wenn es einen Rechenweg gibt, der nachp(|x|)Schritten im Zustand qaccept gelandet ist.
Grundideen des Beweises (2)
Beobachtung
Es seiK0=q0x die Startkonfiguration vonM. Die NTMM akzeptiert ein Wortx mit|x|=ngenau dann, wenn es eine Konfigurationsfolge
K0 ` K1 ` K2 ` · · · ` Kp(n) gibt, bei derKp(n) im Zustandqaccept ist.
Unsere Formelϕwird derart konstruiert, dassϕgenau dann erf¨ullbar ist,
wenn solch eine akzeptierende Konfigurationsfolge existiert.
Die Boole’schen Variablen (1)
Die Variablen in der Formelϕ
Q(t,q) f¨urt∈ {0, . . . ,p(n)} undq∈Q H(t,j) f¨urt,j∈ {0, . . . ,p(n)}
B(t,j,a) f¨urt,j ∈ {0, . . . ,p(n)} unda∈Γ
Interpretation der Variablen:
Die BelegungQ(t,q) =1besagt, dass sich die Berechnung zum Zeitpunktt im Zustandqbefindet.
Die BelegungH(t,j) =1steht daf¨ur, dass sich der Kopf zum Zeitpunktt an Bandpositionj befindet.
Die BelegungB(t,j,a) =1bedeutet, dass zum Zeitpunktt an Bandpositionj das Zeichen ageschrieben steht.
Die Boole’schen Variablen (2): Illustration
0 1 1 0 0 1
0 1 1 0 0 1
0 1 1 0 1 1
B(0,0,0)=1 B(0,0,1)=0 B(0,1,0)=0 B(0,1,1)=1 B(0,2,0)=0 B(0,2,1)=1 B(0,3,0)=1 B(0,3,1)=0 B(0,4,0)=1 B(0,4,1)=0 B(0,5,0)=0 B(0,5,1)=1
B(1,0,0)=1 B(1,0,1)=0 B(1,1,0)=0 B(1,1,1)=1 B(1,2,0)=0 B(1,2,1)=1 B(1,3,0)=1 B(1,3,1)=0 B(1,4,0)=1 B(1,4,1)=0 B(1,5,0)=0 B(1,5,1)=1
(2,0,0)=1 (2,0,1)=0 (2,1,0)=0 (2,1,1)=1 (2,2,0)=0 (2,2,1)=1 (2,3,0)=1 (2,3,1)=0 (2,4,0)=0 (2,4,1)=1 (2,5,0)=0 (2,5,1)=1
q
q0
q00 Q(0,q) =1
H(0,0) =0 H(0,1) =0 H(0,2) =0 H(0,3) =1 H(0,4) =0 H(0,5) =0
t=0
t=1
t=2
Q(1,q0) =1
H(1,0) =0 H(1,1) =0 H(1,2) =0 H(1,3) =0 H(1,4) =1 H(1,5) =0
Q(2,q00) =1
H(2,0) =0 H(2,1) =0 H(2,2) =0 H(2,3) =0 H(2,4) =1 H(2,5) =0
Unser Arbeitsplan
Wir werden die akzeptierende Konfigurationsfolge in drei Phasen in die Formelϕ¨ubersetzen.
Arbeitsphase A:F¨ur jeden Zeitpunktt beschreiben die Variablen Q(t,q),H(t,j)und B(t,j,a)eine legale Konfiguration.
Arbeitsphase B:Die Konfiguration zum Zeitpunkt t+1entsteht legal aus der Konfiguration zum Zeitpunktt.
Arbeitsphase C:Startkonfiguration und Endkonfiguration sind legal.
Arbeitsphase A (1)
F¨ur jeden Zeitpunktt konstruieren wir
eine Teilformelϕt von Formelϕ, die nur dann erf¨ullt ist, wenn die VariablenQ(t,q), H(t,j)undB(t,j,a)eine legale KonfigurationKt beschreiben.
A1. Es gibtgenau einenZustandq∈Q mitQ(t,q) =1.
A2. Es gibtgenau eineBandpositionj∈ {0, . . . ,p(n)}mit H(t,j) =1.
A3. Es gibt f¨ur jedesj ∈ {0, . . . ,p(n)} jeweilsgenau einZeichena∈Γ mitB(t,j,a) =1.
Arbeitsphase A (2)
Boole’sches Werkzeug
F¨ur eine beliebige Variablenmenge{y1, . . . ,yk} besagt die folgende Formel in CNF, dassgenau eineder Variablenyi den Wert 1 annimmt:
(y1∨y2∨ . . . ∨yk) ∧ ^
i6=j
( ¯yi∨y¯j)
Die Anzahl der Literale in dieser Formel istO(k2)und quadratisch in der Anzahl der Variablen.
Die drei erw¨unschten EigenschaftenA1/A2/A3zum Zeitpunkt t(f¨ur legale Konfigurationen) k¨onnen daher jeweils durch eine Formelϕt mit polynomiell beschr¨ankter L¨ange kodiert werden.
Phase A ist damit abgeschlossen.
Arbeitsphase B (1)
Wir konstruieren f¨ur jeden Zeitpunktt
eine Teilformelϕ0t von Formelϕ, die erzwingt, dass Kt
eine direkte Nachfolgekonfiguration von KonfigurationKt−1 ist.
B1. Der Bandinhalt der Konfiguration Kt stimmt an allen Positionen mit dem Bandinhalt der KonfigurationKt−1 ¨uberein, mit der m¨oglichen Ausnahme von jener Position, an der der Kopf zum vorherigen Zeitpunktt−1war.
B2. Zustand, Kopfposition und Bandinhalt an Kopfposition ver¨andern sich im Einklang mit der ¨Ubergangsrelationδ.
Arbeitsphase B (2)
EigenschaftB1(Bandinhalt vonKt stimmt mit Bandinhalt vonKt−1
¨uberein, ausgenommen an Kopfposition) wird wie folgt kodiert:
p(n)
^
i=0
^
a∈Γ
B(t−1,i,a)∧ ¬H(t−1,i) ⇒ B(t,i,a)
Boole’sches Werkzeug
x1⇒x2 ¨aquivalent zu ¬x1∨x2
¬(x1∧x2) ¨aquivalent zu ¬x1∨ ¬x2 (De Morgan) y1∧ ¬y2⇒y3 ¨aquivalent zu ¬(y1∧ ¬y2)∨y3
¨
aquivalent zu ¬y1∨y2∨y3
p(n)
^
i=0
^
a∈Γ
(¬B(t−1,i,a) ∨ H(t−1,i) ∨ B(t,i,a))
Arbeitsphase B (3)
EigenschaftB2(Zustand, Kopfposition und Bandinhalt an Kopfposition ver¨andern sich gem¨ass ¨Ubergangsrelationδ) wird wie folgt kodiert.
F¨ur alleq∈Q, f¨ur allej∈ {0, . . . ,p(n)−1}und f¨ur allea∈Γ verwenden wir die Teilformel
Q(t−1,q)∧H(t−1,j)∧B(t−1,j,a) ⇒ _
(q,a,q0,a0,κ)∈δ
(Q(t,q0)∧H(t,j+κ)∧B(t,j,a0))
wobeiκdie WerteL=−1,N=0und R=1annehmen kann.
Arbeitsphase B (4)
· · ·
· · · B 0 0 1 1
δ 0 1 B
q1 {(q1,B,R),(q2,1,L)} {(q3,B,R)} {(q2,B,N)}
q3 {(q1,1,R)} {(q2,0,R)} {(q1,B,L)}
Start Ende Blank q2
q1 B
Σ ={0,1}
Γ ={0,1,B}
Q={q1,q2,q3}
Q(t−1,q1)∧H(t−1,j)∧B(t−1,j,0) ⇒
Q(t,q1)∧H(t,j+1)∧B(t,j,B)
∨ Q(t,q2)∧H(t,j−1)∧B(t,j,1)
Arbeitsphase B (5)
F¨ur alleq∈Q, f¨ur allej∈ {0, . . . ,p(n)−1}und f¨ur allea∈Γ verwenden wir die Teilformel
Q(t−1,q)∧H(t−1,j)∧B(t−1,j,a) ⇒ _
(q,a,q0,a0,κ)∈δ
(Q(t,q0)∧H(t,j+κ)∧B(t,j,a0))
wobeiκdie WerteL=−1,N=0und R=1annehmen kann.
Die Formel in Rotist nicht in CNF
Die Formel in Rotbesteht aus h¨ochstens3∆ +3Literalen (wobei∆der maximale Verzweigungsgrad der NTMM ist) Die Formel in Rotkann in eine ¨aquivalente Formel in CNF mit h¨ochstens≤33∆+3(3∆ +3)Literalen umgeformt werden
Arbeitsphase C
Zum Schluss sorgen wir noch daf¨ur,
dass Startkonfiguration mit Eingabex=x0x1· · ·xn−1
und Endkonfiguration korrekt beschrieben werden:
C1. Startkonfiguration:
Q(0,q0) ∧ H(0,0) ∧
n−1
^
i=0
B(0,i,xi) ∧
p(n)
^
i=n
B(0,i,B)
C2. Endkonfiguration:
Q(p(n),qaccept)
Phase C ist damit abgeschlossen.
Zusammenfassung
Die Gesamtformelϕsetzt sich aus allen Teilformeln zusammen, die wir unterA1/A2/A3undB1/B2undC1/C2konstruiert haben.
Insgesamt sind das polynomiell viele Klauseln, die jeweils aus polynomiell vielen Literalen bestehen.
Die L¨ange vonϕ ist polynomiell beschr¨ankt inn,
und ϕkann ausx in polynomieller Zeit berechnet werden.
Die Formelϕist genau dann erf¨ullbar, wenn es eine akzeptierende Konfigurationsfolge der L¨angep(n)f¨urM aufx gibt.
Satz (Cook & Levin)
F¨ur alleL∈NPgilt: L≤pSAT
NP-Vollst¨ andigkeit
Wie schwierig ist SAT?
Satz (Cook & Levin)
F¨ur alleL∈NPgilt: L≤pSAT
Einfache Folgerung aus Cook & Levin
WennP6=NPgilt, so besitzt SATkeinen polynomiellen Algorithmus.
Beweis:
Angenommen, SATbesitzt einen polynomiellen Algorithmus.
Es seiLeine beliebige Sprache in NP.
Die Reduktion L≤pSATund der polynomielle Algorithmus f¨urSAT liefern uns zusammen einen polynomiellen Algorithmus f¨urL.
Damit ist jede Sprache L∈NP polynomiell l¨osbar. Widerspruch.
Die Komplexit¨ atslandschaft
NP
P
Graph- zusammenhang Primzahl
SAT
Warnung: Dieser Abbildung liegt die AnnahmeP6=NP zu Grunde.
NP-schwere Probleme
Definition: NP-schwer
Ein ProblemL∗ heisstNP-schwer(engl.:NP-hard), falls gilt:
∀L∈NP : L≤pL∗
Anmerkung:SATist NP-schwer.
Beobachtung
Es seiL∗ein NP-schweres Problem.
WennP6=NPgilt, so besitzt L∗keinen polynomiellen Algorithmus.
Beweis: Analog zum Argument f¨urSATin unserer letzten Folgerung.
NP-vollst¨ andige Probleme
Definition: NP-vollst¨andig
Ein ProblemL∗ heisstNP-vollst¨andig(engl.:NP-complete), falls gilt:
L∗∈NP, und L∗istNP-schwer.
Die Klasse derNP-vollst¨andigen Probleme wird mitNPCbezeichnet.
Anmerkung:SATist NP-vollst¨andig.
Beobachtung
Es seiL∗ein NP-vollst¨andiges Problem.
WennP6=NPgilt, so besitzt L∗keinen polynomiellen Algorithmus.
Noch einmal: Der Satz von Cook & Levin
Hier ist nun die klassische Formulierung des Satzes von Cook & Levin:
Satz (Cook & Levin) SATistNP-vollst¨andig.
Wir werden zeigen, dass CLIQUE, Ham-Cycle, PARTITION, Knapsack und viele weitere Probleme ebenfalls NP-vollst¨andig sind.
Unter der AnnahmeP6=NP(Standardannahme) besitzt also keines dieser Probleme einen polynomiellen Algorithmus.
Kochrezept f¨ ur
NP-Vollst¨ andigkeitsbeweise
Kochrezept f¨ ur NP-Vollst¨ andigkeitsbeweise (1)
Die NP-Vollst¨andigkeit vonSAT haben wir durch eine lange
“Master-Reduktion” von allen Problemen inNP aufSATbewiesen.
Um die NP-Vollst¨andigkeit von anderen Problemen zu zeigen, k¨onnten wir nat¨urlich f¨ur jedes neue Problem eine ¨ahnlich m¨uhsame und ¨ahnlich langwierige Master-Reduktion erstellen.
Ein viel einfacherer Ansatz weist die NP-Vollst¨andigkeit von neuen Problemen mit Hilfe der NP-Vollst¨andigkeit vonSATnach.
Satz
WennL∗NP-schwer ist, so gilt: L∗≤pL ⇒ List NP-schwer Beweis:
F¨ur alleL0∈NP gilt (L0≤pL∗) und (L∗≤pL).
Die Transitivit¨at von≤p impliziertL0≤pL f¨ur alleL0∈NP.
Kochrezept f¨ ur NP-Vollst¨ andigkeitsbeweise (2)
Hier ist das Kochrezept:
1. Man zeigeL∈NP.
2. Man w¨ahle eine NP-vollst¨andige SpracheL∗.
3. (Reduktionsabbildung): Man konstruiere eine Funktion f, die Instanzen von L∗auf Instanzen vonL abbildet.
4. (Polynomielle Zeit):Man zeige, dass f in polynomieller Zeit berechnet werden kann.
5. (Korrektheit): Man beweise, dassf tats¨achlich eine Reduktion ist.
F¨ur jedes x∈ {0,1}∗giltx∈L∗genau dann, wennf(x)∈L.
NP-Vollst¨ andigkeit von 3-SAT
3-SAT: Definition
Einek-Klauselist eine Klausel, die aus exaktk Literalen besteht Eine CNF-Formelϕ ist ink-CNF, wenn sie ausk-Klauseln besteht Beispiel einer Formel in 3-CNF:
ϕ = (¯x1∨x¯2∨x3)
| {z }
3 Literale
∧(¯x1∨x2∨x¯3)
| {z }
3 Literale
∧(x1∨x2∨x¯3)
| {z }
3 Literale
Problem: 3-SAT
Eingabe:Eine Boole’sche Formelϕin 3-CNF Frage:Besitztϕeine erf¨ullende Belegung?
3-SATist ein Spezialfall vonSAT und liegt deshalb wieSAT in NP
3-SAT: NP-Vollst¨ andigkeit (Beginn)
Satz
SAT ≤p 3-SAT
Beweis:
Gegeben sei eine beliebige Formel ϕin CNF (Instanz von SAT) Wir werden eine zur Formel ϕ¨aquivalente Formelϕ0in 3-CNF konstruieren: ϕist erf¨ullbar ⇔ ϕ0 ist erf¨ullbar
Aus einer 1-Klausel oder 2-Klausel machen wir eine ¨aquivalente 3-Klausel, indem wir ein oder zwei Literale duplizieren
3-Klauseln bleiben 3-Klauseln
Aufk-Klauseln mitk ≥4wenden wir wiederholt die folgende Klauseltransformation(mit neu eingef¨uhrter Hilfsvariable h) an:
Die Klauselc = (`1+`2+`3+· · ·+`k)wird ersetzt durch zwei
Klauseltransformation: Beispiel
Klauseltransformation f¨ur eine 5-Klausel
Wir beginnen mit der 5-Klausel (x1+ ¯x2+x3+x4+ ¯x5)
Im ersten Transformationsschritt wird daraus eine 4-Klausel und eine 3-Klausel gemacht: (x1+ ¯x2+x3+h1) (¯h1+x4+ ¯x5)
Auf die 4-Klausel wird die Transformation dann erneut angewendet.
Dadurch entsteht nun (x1+ ¯x2+h2) (¯h2+x3+h1) ( ¯h1+x4+ ¯x5), und es sind nur noch 3-Klauseln vorhanden.
Klauseltransformation: Korrektheit
Alte Klausel: c= (`1+`2+`3+· · ·+`k)
Neue Klauseln: c0= (`1+· · ·+`k−2+h)undc00= (¯h+`k−1+`k) (1) Wenn eine Wahrheitsbelegung beide neuen Klauselnc0 undc00erf¨ullt, so erf¨ullt sie automatisch auch die alte Klausel c:
Wenn h=0, dann ist`1+· · ·+`k−2 wahr Wenn h=1, dann ist`k−1+`k wahr
(2) Wenn eine Wahrheitsbelegungc erf¨ullt, so kann sie aufherweitert werden, sodass die beiden neuen Klauselnc0undc00erf¨ullt sind:
Die Wahrheitsbelegung macht mindestens ein Literal ausc wahr Falls`1+· · ·+`k−2wahr ist, setzen wir h=0
Falls`k−1+`k wahr ist, so setzen wirh=1
3-SAT: NP-Vollst¨ andigkeit (Ende)
Durch Anwendung der Klauseltransformation entstehen aus einer k-Klausel eine(k−1)-Klausel und eine 3-Klausel.
Nach k−3Iterationen sind dann aus einer einzelnen altenk-Klausel genau k−2neue 3-Klauseln entstanden.
Ausk ≥4alten Literalen entstehen also3k−6neue Literale.
Diese Transformation wird solange auf die Formelϕangewandt, bis die Formel nur noch 3-Klauseln enth¨alt.
Wenn ϕauspLiteralen besteht, so bestehtϕ0 aus h¨ochstens3p Literalen.
Die Laufzeit der Reduktion ist daher polynomiell beschr¨ankt.
Satz
3-SAT ist NP-vollst¨andig.
Die Komplexit¨ atslandschaft
NP
P
Graph- zusammenhang Primzahl
SAT
Clique Ind-Set VC
Ex-Cover
Ham-Cycle TSP Partition
Subset-Sum Knapsack
BPP Coloring 3-SAT
Karp’s Liste mit 21 Problemen
Dick Karp (1935)
Wikipedia:Richard Manning Karpis an American computer scientist, who has made many important discoveries in computer science, operations research, and in the area of combinatorial algorithms.
Karp introduced the now standard methodology for proving problems to be NP-complete which has led to the identification of many practical problems as being computationally difficult.
Edmonds-Karp algorithm for max-flow Hopcroft-Karp algorithm for matching Rabin-Karp string search algorithm Karp-Lipton theorem
Karp’s Liste mit 21 NP-vollst¨ andigen Problemen
Im Jahr 1972 bewiesRichard Karpdie NP-Vollst¨andigkeit von 21 kombinatorischen und graphen-theoretischen Problemen, die sich hartn¨ackig einer effizienten algorithmischen L¨osung entzogen hatten.
SAT 3-SAT
INTEGER PROGRAMMING COLORING
CLIQUE CLIQUE COVER
INDEP-SET EXACT COVER
VERTEX COVER 3-DIM MATCHING
SET COVER STEINER TREE
FEEDBACK ARC SET HITTING SET
FEEDBACK VERTEX SET SUBSET-SUM
DIR HAM-CYCLE JOB SEQUENCING
UNDIR HAM-CYCLE PARTITION
MAX-CUT
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