• Keine Ergebnisse gefunden

Theory of Computer Science E2. P, NP and Polynomial Reductions Gabriele R¨oger

N/A
N/A
Protected

Academic year: 2022

Aktie "Theory of Computer Science E2. P, NP and Polynomial Reductions Gabriele R¨oger"

Copied!
29
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Theory of Computer Science

E2. P, NP and Polynomial Reductions

Gabriele R¨oger

University of Basel

April 29, 2019

(2)

Theory of Computer Science

April 29, 2019 — E2. P, NP and Polynomial Reductions

E2.1 P and NP

E2.2 Polynomial Reductions

E2.3 NP-Hardness and NP-Completeness

E2.4 Summary

(3)

E2. P, NP and Polynomial Reductions P and NP

E2.1 P and NP

(4)

E2. P, NP and Polynomial Reductions P and NP

Course Overview

Theory

Background Logic Automata Theory Turing Computability

Complexity

Nondeterminism P, NP

Polynomial Reductions Cook-Levin Theorem NP-complete Problems More Computability

(5)

E2. P, NP and Polynomial Reductions P and NP

Accepting a Word in Time n

Definition (Accepting a Word in Timen)

LetM be a DTM or NTM with input alphabet Σ, w ∈Σ a word andn ∈N0.

M acceptsw in timen if there is a sequence of configurations c0, . . . ,ck with k ≤n, where:

I c0 is the start configuration for w,

I c0`c1 ` · · · `ck, and

I ck is an end configuration.

(6)

E2. P, NP and Polynomial Reductions P and NP

Accepting a Language in Time f

Definition (Accepting a Language in Timef) LetM be a DTM or NTM with input alphabet Σ, L⊆Σ a language andf :N0→N0 a function.

M acceptsL in timef if:

1 for all wordsw ∈L: M accepts w in time f(|w|)

2 for all wordsw ∈/L: M does not accept w German: M akzeptiert Lin Zeitf

(7)

E2. P, NP and Polynomial Reductions P and NP

P and NP

Definition (P and NP)

Pis the set of all languages Lfor which a DTM M

and apolynomialp exist such that M accepts Lin timep.

NPis the set of all languagesL for which anNTMM and apolynomialp exist such that M accepts Lin timep.

(8)

E2. P, NP and Polynomial Reductions P and NP

P and NP: Remarks

I Sets of languages like P and NP that are defined in terms of computation time of TMs

(or other computation models) are called complexity classes.

I We know that P⊆NP. (Why?)

I Whether the converse is also true is an open question:

this is the famousP-NP problem.

German: Komplexit¨atsklassen, P-NP-Problem

(9)

E2. P, NP and Polynomial Reductions P and NP

Example: DirHamiltonCycle ∈ NP

Example (DirHamiltonCycle∈NP)

The nondeterministic algorithm of Chapter E1 solves the problem and can be implemented on an NTM in polynomial time.

I Is DirHamiltonCycle∈P also true?

I The answer is unknown.

I So far, only exponential deterministic algorithms for the problem are known.

(10)

E2. P, NP and Polynomial Reductions P and NP

Simulation of NTMs with DTMs

I Unlike DTMs, NTMs are not arealistic computation model:

they cannot be directly implemented on computers.

I But NTMs can besimulated by systematically trying all computation paths, e. g., with a breadth-first search.

More specifically:

I Let M be an NTM that accepts language Lin timef, wheref(n)≥n for alln ∈N0.

I Then we can specify a DTMM0 that accepts Lin time f0, wheref0(n) = 2O(f(n)).

I without proof

(cf. “Introduction to the Theory of Computation”

by Michael Sipser (3rd edition), Theorem 7.11)

(11)

E2. P, NP and Polynomial Reductions Polynomial Reductions

E2.2 Polynomial Reductions

(12)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Course Overview

Theory

Background Logic Automata Theory Turing Computability

Complexity

Nondeterminism P, NP

Polynomial Reductions Cook-Levin Theorem NP-complete Problems More Computability

(13)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions: Idea

I Reductionsare a common and powerful concept in computer science. We know them from Part D.

I The basic idea is that we solve a new problem by reducingit to a known problem.

I In complexity theory we want to use reductions

that allow us to prove statements of the following kind:

Problem A can be solved efficiently if problem B can be solved efficiently.

I For this, we need a reduction fromA toB

(14)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions

Definition (Polynomial Reduction)

LetA⊆Σ andB ⊆Γ be decision problems.

We say thatAcan be polynomially reduced toB,

writtenA≤pB, if there is a functionf : Σ →Γ such that:

I f can be computed inpolynomial time by aDTM

I i. e., there is a polynomialp and a DTMM such thatM computesf(w) in at mostp(|w|) steps given inputw Σ

I f reducesA toB

I i. e., for allw Σ: w Aifff(w)B f is called apolynomial reductionfromAto B German: Apolynomiell aufB reduzierbar,

German:

polynomielle Reduktion vonAauf B

(15)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions: Remarks

I Polynomial reductions are also calledKarp reductions (after Richard Karp, who wrote a famous paper describing many such reductions in 1972).

I In practice, of course we do not have to specify a DTM for f: it just has to be clear that f can be computed

in polynomial time by adeterministic algorithm.

(16)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions: Example (1)

Definition (HamiltonCycle)

HamiltonCycleis the following decision problem:

I Given: undirected graph G =hV,Ei

I Question: DoesG contain a Hamilton cycle?

Reminder:

Definition (Hamilton Cycle)

AHamilton cycleof G is a sequence of vertices inV, π=hv0, . . . ,vni, with the following properties:

I π is a path: there is an edge fromvi to vi+1 for all 0≤i <n

I π is a cycle: v0 =vn

I π is simple: vi 6=vj for all i 6=j with i,j <n

I π is Hamiltonian: all nodes ofV are included in π

(17)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions: Example (2)

Definition (TSP)

TSP(traveling salesperson problem) is the following decision problem:

I Given: finite set S 6=∅ of cities, symmetric cost function cost:S×S →N0, cost boundK ∈N0

I Question: Is there a tour with total cost at mostK, i. e., a permutationhs1, . . . ,sni of the cities with

Pn−1

i=1 cost(si,si+1) +cost(sn,s1)≤K?

(18)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Polynomial Reductions: Example (3)

Theorem (HamiltonCycle≤pTSP) HamiltonCycle≤pTSP.

Proof.

blackboard

(19)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Properties of Polynomial Reductions (1)

Theorem (Properties of Polynomial Reductions) Let A, B and C decision problems.

1 If A≤pB and B ∈P, then A∈P.

2 If A≤pB and B ∈NP, then A ∈NP.

3 If A≤pB and A∈/P, then B ∈/P.

4 If A≤pB and A∈/NP, then B ∈/ NP.

5 If A≤pB and B ≤pC , then A≤pC .

(20)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Properties of Polynomial Reductions (2)

Proof.

for 1.:

We must show that there is a DTM acceptingA in polynomial time.

We know:

I There is a DTM MB that acceptsB in time p, wherep is a polynomial.

I There is a DTM Mf that computes a reduction from AtoB in time q, whereq is a polynomial.

. . .

(21)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Properties of Polynomial Reductions (3)

Proof (continued).

Consider the machineM that first behaves like Mf, and then (afterMf stops) behaves likeMB on the output of Mf. M acceptsA:

I M behaves on input w asMB does on input f(w), so it acceptsw if and only iff(w)∈B.

I Because f is a reduction,w ∈A iff f(w)∈B.

. . .

(22)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Properties of Polynomial Reductions (4)

Proof (continued).

Computation time ofM on input w:

I firstMf runs on input w: ≤q(|w|) steps

I then MB runs on inputf(w): ≤p(|f(w)|) steps

I |f(w)| ≤ |w|+q(|w|) because inq(|w|) steps,

Mf can write at mostq(|w|) additional symbols onto the tape total computation time ≤q(|w|) +p(|f(w)|)

≤q(|w|) +p(|w|+q(|w|)) this is polynomial in |w| A∈P.

. . .

(23)

E2. P, NP and Polynomial Reductions Polynomial Reductions

Properties of Polynomial Reductions (5)

Proof (continued).

for 2.:

analogous to 1., only thatMB andM are NTMs of 3.+4.:

equivalent formulations of 1.+2. (contraposition) of 5.:

LetA≤pB with reduction f andB ≤pC with reduction g. Theng ◦f is a reduction ofA toC.

The computation time of the two computations in sequence

(24)

E2. P, NP and Polynomial Reductions NP-Hardness and NP-Completeness

E2.3 NP-Hardness and

NP-Completeness

(25)

E2. P, NP and Polynomial Reductions NP-Hardness and NP-Completeness

Course Overview

Theory

Background Logic Automata Theory Turing Computability

Complexity

Nondeterminism P, NP

Polynomial Reductions Cook-Levin Theorem NP-complete Problems More Computability

(26)

E2. P, NP and Polynomial Reductions NP-Hardness and NP-Completeness

NP-Hardness and NP-Completeness

Definition (NP-Hard, NP-Complete) LetB be a decision problem.

B is called NP-hard ifA≤pB for allproblemsA∈NP.

B is called NP-completeif B∈NP and B is NP-hard.

German: NP-hart (selten: NP-schwer), NP-vollst¨andig

(27)

E2. P, NP and Polynomial Reductions NP-Hardness and NP-Completeness

NP-Complete Problems: Meaning

I NP-hard problems are “at least as difficult”

as all problems in NP.

I NP-complete problems are “the most difficult” problems in NP: allproblems in NP can be reduced to them.

I IfA∈P for anyNP-complete problem, then P = NP. (Why?)

I That means that either there are efficient algorithms for allNP-complete problems or for none of them.

I Do NP-complete problems actually exist?

(28)

E2. P, NP and Polynomial Reductions Summary

E2.4 Summary

(29)

E2. P, NP and Polynomial Reductions Summary

Summary

I P: languages accepted by DTMsin polynomial time

I NP: languages accepted by NTMs in polynomial time

I polynomial reductions: A≤pB if

there is a total functionf computable in polynomial time, such that for all words w: w ∈Aiff f(w)∈B

I A≤pB implies that Ais “at most as difficult”as B

I polynomial reductions are transitive

I NP-hard problemsB: A≤pB for allA∈NP

I NP-completeproblems B: B ∈NP and B is NP-hard

Referenzen

ÄHNLICHE DOKUMENTE

for 2.: identical to (1), only that M B only recognizes B and therefore the simulation does not necessarily terminate if y 6∈ B. Since y 6∈ B iff x 6∈ A, the procedure still

for 2.: identical to (1), only that M B only recognizes B and therefore the simulation does not necessarily terminate if y 6∈ B. Since y 6∈ B iff x 6∈ A, the procedure still

I Can they solve problems efficiently (in polynomial time) which deterministic algorithms cannot solve efficiently. I This is the

Gabriele R¨ oger (University of Basel) Theory of Computer Science May 5, 2021 2 /

We number the tape positions with natural numbers such that the TM head initially is on position 1. Observation: within p(n) computation steps the TM head can only reach positions

Clique , IndSet , VertexCover three classical routing problems:. DirHamiltonCycle , HamiltonCycle

Does this graph have a vertex cover of size 4?.. VertexCover is

By using one or both of the padding numbers for each clause digit, all clause digits can be brought to their target value of 4, solving the SubsetSum instance. I For