Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.

Similar presentations


Presentation on theme: "Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity."— Presentation transcript:

1 Lecture 25 NP Class

2 P = ? NP = ? PSPACE They are central problems in computational complexity.

3 If P = NP, then NP-complete P

4 Ladner Theorem If NP ≠ P, then there exists a set A lying - between P and NP-complete class, i.e., A is in NP, but not in P and not being NP- compete.

5 How to prove a decision problem belonging to NP? How to design a polynomial-time nondeterministic algorithm?

6 Hamiltonian Cycle Given a graph G, does G contain a Hamiltonian cycle? Hamiltonian cycle is a cycle passing every vertex exactly once.

7 Nondeterministic Algorithm Guess a permutation of all vertices. Check whether this permutation gives a cycle. If yes, then algorithm halts. What is the running time?

8 Minimum Spanning Tree Given an edge-weighted graph G, find a spanning tree with minimum total weight. Decision Version: Given an edge-weighted graph G and a positive integer k, does G contains a spanning tree with total weight < k.

9 Nondeterministic Algorithm Guess a spanning tree T. Check whether the total weight of T < k. This is not clear!

10 How to guess a spanning tree? Guess n-1 edges where n is the number of vertices of G. Check whether those n-1 edges form a connected spanning subgraph, i.e., there is a path between every pair of vertices.

11 Co-decision version of MST Given an edge-weighted graph G and a positive integer k, does G contain no spanning tree with total weight < k?

12 Algorithm Computer a minimum spanning tree. Check whether its weight > k. If yes, the algorithm halts.

13 co-NP co-NP = {A | Σ* - A ε NP}

14 NP ∩ co-NP So far, no natural problem has been found in NP ∩ co-NP, but not in P.

15 Linear Programming Decision version: Given a system of linear inequality, does the system have a solution? It was first proved in NP ∩ co-NP and later found in P (1979).

16 Primality Test Given a natural number n, is n a prime? It was first proved in NP ∩ co-NP and later found in P (2004).

17 Therefore A natural problem belonging to NP ∩ co- NP is a big sign for the problem belonging to P.

18 Proving a problem in NP In many cases, it is not hard. In a few cases, it is not easy.

19 Integer Programming Decision version: Given A and b, does Ax > b contains an integer solution? The difficulty is that the domain of “guess” is too large.

20 Lecture 26 Polynomial-time many-one reduction

21 A < m B A set A in Σ* is said to be polynomial-time many-one reducible to B in Γ* if there exists a polynomial-time computable function f: Σ* → Γ* such that x ε A iff f(x) ε B. p

22 A = Hamiltonian cycle (HC) Given a graph G, does G contain a Hamiltonian cycle?

23 B = decision version of Traveling Salesman Problem (TSP) Given n cities and a distance table between these n cities, find a tour (starting from a city and come back to start point passing through each city exactly once) with minimum total length. Given n cities, a distance table and k > 0, does there exist a tour with total length < k?

24 HC < m TSP From a given graph G, we need to construct (n cities, a distance table, k). p

25 SAT < m 3-SAT SAT: Given a Boolean formula F, does F have a satisfied assignment? An assignment is satisfied if it makes F =1. 3-SAT: Given a 3-CNF F, does F have a satisfied assignment? p

26 Property of < m A < m B and B < m C imply A < m C A < m B and B ε P imply A ε P p p pp p

27 NP-complete A set A is NP-hard if for any B in NP, B < m A. A set A is NP-complete if it is in NP and NP-hard. A decision problem is NP-complete if its corresponding language is NP-complete. An optimization problem is NP-hard if its decision version is NP-hard. p

28 Cook Theorem SAT is NP-complete

29 3-SAT is NP-complete

30 HC is NP-complete

31 Vertex-Cover is NP-complete

32 Proof of Cook Theorem


Download ppt "Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity."

Similar presentations


Ads by Google