# l11 - Lecture 11 NP-complete Problems David Dill Department...

This preview shows pages 1–7. Sign up to view the full content.

Lecture 11: NP-complete Problems David Dill Department of Computer Science 1

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Outline NP-completeness SAT CSAT 3SAT 2
NP-complete problems This is about decision problems (problems with yes/no answers). “Problem” is just another name for “language”. A “problem instance” is a string. Solving an instance x of problem L is answering whether x L . The class P – problems that are solvable in polynomial time on an DTM. (P-time, polynomial time). The class NP – problems that are solvable in polynomial time on an NTM. Obviously P NP . No one knows whether NP P (the famous P = NP problem). Definition A problem L is NP-complete if it has two properties: 1. L is in NP. 2. There is a polynomial-time reduction from each problem L in NP to L . 3

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Significance of NP-completeness NP-complete problems are the “hardest” problems in NP. If there are any problems in NP - P , the NP-complete problems are all there. Every NP-complete problem can be translated in deterministic polynomial time to every other NP-complete problem. So, if there is a P-time to one NP-complete problem, there is a P-time solution to every P-time problem. 4
Basic Proof Strategy NP-completeness is a good news/bad news situation. If it’s NP-hard, that means that it’s pretty hard. But, it could be worse! So, a typical NP-completeness proof consists of two parts: Prove that the problem is in NP (i.e., it can be solved by an NTM in polynomial time). Prove that the problem is at least as hard as other problems in NP. 5

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Guess and verify Prove the that problem is in NP: The usual strategy is to show that a solution can be verified in polynomial time with a deterministic Turing machine. An NTM can pre-select all its choices at the begining, write them on its tape, and then look them up later. So, computations can be regarded as a purely nondeterministic “guessing” phase followed by a deterministic “verification” phase. The guess finds a certificate if the answer is “yes” that can be verified for correctness in polynomial time. A certificate is an example that shows that the “yes” answer is “true”. Hence, an NTM can guess the solution nondeterministically, then accept if it
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

### Page1 / 16

l11 - Lecture 11 NP-complete Problems David Dill Department...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document
Ask a homework question - tutors are online