CMD + K

Kapittel 13Begreper & formler · Kompleksitetsklasser og NP-kompletthet
Referanseside · Kapittel 13

Begreper & referanser

Alle nøkkelbegrepene, formlene og referansene fra Kompleksitetsklasser og NP-kompletthet, samlet på én side. Bruk denne som oppslag når du leser, øver flashcards eller tar quiz.

Øv med flashcards13 kort fra dette kapittelet

Begreper

Sentrale begreper fra kapittelet med korte definisjoner.

01Klassen P

Beslutningsproblemene som kan løses i polynomiell tid. Regnes som de praktisk håndterbare.

02Klassen NP

Beslutningsproblemene der et ja-svar kan verifiseres i polynomiell tid gitt et sertifikat.

03Verifikator

En polynomiell algoritme som, gitt en instans og et sertifikat, bekrefter om svaret er ja.

04NP-hard

Et problem som er minst like hardt som alt i NP: alle NP-problemer reduseres polynomielt til det.

05NP-komplett

Et problem som både er i NP og er NP-hardt — de hardeste problemene i NP.

06P vs. NP

Det åpne spørsmålet om hvert problem som kan verifiseres raskt også kan løses raskt.

07Formelt språk

Mengden av strenger som koder ja-instanser av et beslutningsproblem. Lar oss behandle problemer som mengder.

08Koding

Måten en instans representeres som en streng. Kjøretid måles i lengden av denne kodingen.

Formler

Hver formel: hva den heter, hvordan den ser ut, og hva symbolene betyr.

def-p

Klassen P

Beslutningsproblemene som kan løses av en algoritme med polynomiell kjøretid. Regnes som «traktable».

TIME(n^k)problemene som løses i O(n^k) tid for en konstant k
nlengden av kodingen av instansen
def-np

Klassen NP

Et ja-svar kan bekreftes raskt gitt et passende sertifikat. Det er åpent om .

Ldet formelle språket (mengden av ja-instanser)
np-hardhet

NP-hardhet

er NP-hardt hvis ethvert problem i NP reduseres polynomielt til det. Da er minst like hardt som alt i NP.

\le_ppolynomiell (Karp-)reduksjon
Lproblemet som er NP-hardt
np-kompletthet

NP-kompletthet

De hardeste problemene i NP. Finner vi en polynomiell algoritme for bare ett av dem, følger .

NPCklassen av NP-komplette problemer
p-lukket-komplement

P er lukket under komplement

Kan vi avgjøre raskt, kan vi avgjøre komplementet like raskt ved å snu svaret. Det tilsvarende for NP er et åpent spørsmål (NP vs. co-NP).

\overline{L}komplementspråket — svaret snudd fra ja til nei

Læringsmål

Hva du skal kunne etter å ha lest kapittelet.

  1. 01Definere klassene P og NP, og forklare forskjellen på å løse et problem og å verifisere en løsning med et sertifikat
  2. 02Forklare hva en polynomiell reduksjon A ≤p B betyr, hvorfor den må være svar-bevarende og polynomiell, og hvorfor reduksjoner komponerer
  3. 03Skille NP-hardhet fra NP-kompletthet, og begrunne hvorfor en polynomiell algoritme for ett NP-komplett problem ville gi P = NP
  4. 04Beskrive oppskriften på et NP-kompletthetsbevis og forklare hvorfor Circuit-SAT (Cook-Levin) forankrer hele kjeden