Reduction and NPC
Concepts
Clique - a subgraph in which there exists an edge between every pair of vertices
Independent set - a set of vertices in the graph in which none of two are adjacent
Vertex cover - a set of vertices in which every edge in the graph is incident to at least one vertex in the set
Polynomial time reducible
Consider problem and
- There exists a function that runs in polynomial time
- can map every instance of to an instance of to
is a "yes" iff is a "yes"
means that A is polynomial time reducible to
is a transitive relationship
- e.g. If , then
NP
- A problem is in NP if each of its "yes" instance has a concise proof that can be verified in polynomial time
NP-complete
- A problem is NP-complete if every problem in NP can be reduced to in polynomial time
- If two problems are both NP-complete then they can be reduced to each other
- If a problem is NP-complete, a polynomial algorithm would implie since every problem in NP can be reduced to the NPC problem
- Every problem in NP is also NPC by transitivity