np complete examples
Download
Skip this Video
Download Presentation
NP-complete examples

Loading in 2 Seconds...

play fullscreen
1 / 18

NP-complete examples - PowerPoint PPT Presentation


  • 641 Views
  • Uploaded on

Fall 2009. NP-complete examples. Xiao Linfu. CSC3130 Tutorial 11. [email protected] Department of Computer Science & Engineering. Outline. Review of P, NP, NP-C 2 problem s Double-SAT Dominating set http://en.wikipedia.org/wiki/Dominating\_set\_problem. Relations. hard. NP-C.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'NP-complete examples' - hien


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
np complete examples
Fall 2009

NP-complete examples

Xiao Linfu

CSC3130 Tutorial 11

[email protected]

Department of Computer Science & Engineering

outline
Outline
  • Review of P, NP, NP-C
  • 2 problems
    • Double-SAT
    • Dominating sethttp://en.wikipedia.org/wiki/Dominating_set_problem
relations
Relations

hard

NP-C

Is there any problem even harder than NP-C?

NP

Yes! e.g. I-go

P

easy

slide7
Polynomial Time Reduction

How to show that a problem R is not easier than a problem Q?

Informally, if R can be solved efficiently, we can solve Q efficiently.

  • Formally, we say Q polynomially reduces to R if:
    • Given an instance q of problem Q
    • There is a polynomial time transformation to an instance f(q) of R
    • q is a “yes” instance if and only iff(q) is a “yes” instance

Then, if R is polynomial time solvable, then Q is polynomial time solvable.

If Q is not polynomial time solvable, then R is not polynomial time solvable.

methodology
Methodology
  • To show L is in NP, you can either (i) show that solutions for L can be verified in polynomial-time, or (ii) describe a nondeterministic polynomial-time TM for L.
  • To show L is NP-complete, you have to design a polynomial-time reduction from some problem we know to be NP-complete
slide9
The direction of the reduction is very important
    • Saying “A is easier than B” and “B is easier than A” mean different things
  • What we have? We know SAT, Vertex Cover problems are NP-Complete!
double sat
Double-SAT
  • Definition:
    • Double-SAT = {<φ> |φ is a Boolean formula with at least two satisfying assignments}
  • Show that Double-SAT is NP-Complete.
    • (1) First, it is easy to see that Double-SAT ∈ NP.
      • non-deterministically guess 2 assignments for φand verify whetherboth satisfy φ.
    • (2) Then we show Double-SAT is not easier than SAT.
      • Reduction from SAT to Double-SAT
double sat11
Double-SAT
  • Reduction:
    • On input φ(x1, . . . , xn):
    • 1. Introduce a new variable y.
    • 2. Output formula

φ’(x1, . . . , xn, y) = φ(x1, . . . , xn) ∧(y∨ y ).

dominating set
Dominating set
  • Definition: input G=(V,E), K
  • Let G=(V,E) be an undirected graph. A dominating set D is a set of vertices in G such that every vertex of G is either in D or is adjacent to at least one vertex from D. The problem is to determine whether there is a dominating set of size K for G.
dominating set example
Dominating set - example
  • {yellow vertices} is an example of a dominating set of size 2.

e

dominating set14
Dominating set
  • Show that Dominating set is NP-Complete.
    • (1) First, it is easy to see that Dominating set ∈ NP.
      • Given a vertex set D of size K, we check whether (V-D) are adjacent to D.
    • (2) Then we show Dominating set is not easier than Vertex cover.
      • Reduction from Vertex cover to Dominating set
dominating set15
Dominating set
  • Reduction
    • (1) Graph transformation - Construct a new graph G' by adding new vertices and edges to the graph G as follows: For each edge (v, w) of G, add a vertex vw and the edges (v, vw) and (w, vw) to G' . Furthermore, remove all vertices with no incident edges; such vertices would always have to go in a dominating set but are not needed in a vertex cover of G.
dominating set17
Dominating set
  • Reduction
    • (1) Graph transformation
    • (2) a dominating set of size K in G’  a vertex cover of size K in G
ad