Lecture 15: Reductions

October 28th, 2008

We practised reductions for a number of problems. First of all, I showed how to prove that Independent Set is NP-Complete, assuming that 3SAT is. The proof has a number of steps:

  1. Show that Independent Set is in NP, by demonstrating that a guessed solution can be verified in polynomial time
  2. Construct a transformation f that takes an arbitrary instance x of 3SAT and maps it to an instance f(x) of Independent Set, and does this in polynomial time.
  3. Show that if x is satisfiable, then f(x) has an independent set of size k
  4. Show that if f(x) has an independent set of size k, then x is satisfiable.

After that, we broke out into groups and looked at a number of NP-Completeness proofs. The problems we considered were:

  • SAT (via CIRCUIT SAT)
  • 3SAT (via SAT)
  • SET PACKING (via INDEPENDENT SET)
  • Not-All-Equal SAT (via SAT)
  • TSP (via Hamiltonian Path)
  • HITTING SET (via SET COVER via VERTEX COVER)

Not-All-Equal SAT is SAT, but where a clause must be satisfied without setting all literals to 1. All the other problems are defined in the textbook.

All of you worked on at least one of these problems, but I encourage you to try your hand at the others. You can be fairly sure that I’ll be asking some NP-Completeness questions either in an assignment or in the final.

Leave a Reply