Lec2 - CS151 Complexity Theory Lecture 2 Reductions reductions are the main tool for relating problems to each other given two languages L1 and L2

Info iconThis preview shows pages 1–13. Sign up to view the full content.

View Full Document Right Arrow Icon
CS151 Complexity Theory Lecture 2 March 31, 2011
Background image of page 1

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

View Full DocumentRight Arrow Icon
March 31, 2011 2 Reductions reductions are the main tool for relating problems to each other • given two languages L 1 and L 2 we say “ L 1 reduces to L 2 ” and we write “ L 1 ≤ L 2 ” to mean: there exists an efficient (for now, poly-time) algorithm that computes a function f s.t. • x L 1 implies f(x) L 2 • x L 1 implies f(x) L 2
Background image of page 2
March 31, 2011 3 Reductions positive use: given new problem L 1 reduce it to L 2 that we know to be in P . Conclude L 1 in P (how?) e.g. bipartite matching max flow – formalizes “ L 1 as easy as L 2 yes no yes no L 1 L 2 f f
Background image of page 3

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

View Full DocumentRight Arrow Icon
March 31, 2011 4 Reductions negative use : given new problem L 2 reduce L 1 (that we believe not to be in P ) to it. Conclude L 2 not in P if L 1 not in P (how?) e.g. satisfiability graph 3-coloring – formalizes “ L 2 as hard as L 1 yes no yes no L 1 L 2 f f
Background image of page 4
March 31, 2011 5 Reductions Example reduction: 3SAT = { φ : φ is a 3-CNF Boolean formula that has a satisfying assignment } (3-CNF = AND of OR of 3 literals) IS = { (G, k) | G is a graph with an independent set V’ µ V of size ≥ k } (ind. set = set of vertices no two of which are connected by an edge)
Background image of page 5

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

View Full DocumentRight Arrow Icon
March 31, 2011 6 Ind. Set is NP-complete The reduction f: given φ = (x y ¬ z) ( ¬ x w z) (…) we produce graph G φ : x y ¬ z ¬ x w z one triangle for each of m clauses edge between every pair of contradictory literals set k = m
Background image of page 6
March 31, 2011 7 Reductions φ = (x y ¬ z) ( ¬ x w z) (…) Claim: φ has a satisfying assignment if and only if G has an independent set of size at least k proof? Conclude that 3SAT ≤ IS. x y ¬ z ¬ x w z
Background image of page 7

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

View Full DocumentRight Arrow Icon
March 31, 2011 8 Completeness complexity class C language L is C-complete if L is in C every language in C reduces to L very important concept formalizes “L is hardest problem in complexity class C
Background image of page 8
March 31, 2011 9 Completeness Completeness allows us to reason about the entire class by thinking about a single concrete problem related concept: language L is C-hard if every language in C reduces to L
Background image of page 9

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

View Full DocumentRight Arrow Icon
March 31, 2011 10 Completeness May ask: how to show every language in C reduces to L? in practice, shown by reducing known C - complete problem to L often not hard to find “1 st ” C-complete language, but it might not be “natural”
Background image of page 10
March 31, 2011 11 Completeness Example: NP = the set of languages L where L = { x : 9 y, |y| |x| k , (x, y) R } and R is a language in P. one NP -complete language “bounded halting”: BH = { (M, x, 1 m ) : 9 y, |y| |x| k s.t. M accepts (x, y) in at most m steps } challenge is to find natural complete problem Cook 71 : SAT NP -complete
Background image of page 11

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

View Full DocumentRight Arrow Icon
March 31, 2011 12 Summary problems function, decision language = set of strings complexity class = set of languages
Background image of page 12
Image of page 13
This is the end of the preview. Sign up to access the rest of the document.

This document was uploaded on 01/05/2012.

Page1 / 61

Lec2 - CS151 Complexity Theory Lecture 2 Reductions reductions are the main tool for relating problems to each other given two languages L1 and L2

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

View Full Document Right Arrow Icon
Ask a homework question - tutors are online