lecture24 - Notes on Complexity Theory Last updated:...

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

View Full Document Right Arrow Icon

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

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Notes on Complexity Theory Last updated: November, 2011 Lecture 24 Jonathan Katz 1 The Complexity of Counting We explore three results related to hardness of counting. Interestingly, at their core each of these results relies on a simple yet powerful technique due to Valiant and Vazirani. 1.1 Hardness of Unique- SAT Does SAT become any easier if we are guaranteed that the formula we are given has at most one solution? Alternately, if we are guaranteed that a given boolean formula has a unique solution does it become any easier to find it? We show here that this is not likely to be the case. Define the following promise problem: USAT def = { : has exactly one satisfying assignment } USAT def = { : is unsatisfiable } . Clearly, this problem is in promise- NP . We show that if it is in promise- P , then NP = RP . We begin with a lemma about pairwise-independent hashing. Lemma 1 Let S { , 1 } n be an arbitrary set with 2 m | S | 2 m +1 , and let H n,m +2 be a family of pairwise-independent hash functions mapping { , 1 } n to { , 1 } m +2 . Then Pr h H n,m +2 [ there is a unique x S with h ( x ) = 0 m +2 ] 1 / 8 . Proof Let def = 0 m +2 , and let p def = 2- ( m +2) . Let N be the random variable (over choice of random h H n,m +2 ) denoting the number of x S for which h ( x ) = . Using the inclusion/exclusion principle, we have Pr[ N 1] X x S Pr[ h ( x ) = ]- 1 2 X x 6 = x S Pr[ h ( x ) = h ( x ) = ] = | S | p- | S | 2 p 2 , while Pr[ N 2] x 6 = x S Pr[ h ( x ) = h ( x ) = ] = ( | S | 2 ) p 2 . So Pr[ N = 1] = Pr[ N 1]- Pr[ N 2] | S | p- 2 | S | 2 p 2 | S | p- | S | 2 p 2 1 / 8 , using the fact that | S | p [ 1 4 , 1 2 ]. 24-1 Theorem 2 (Valiant-Vazirani) If ( USAT , USAT ) is in promise- RP , then NP = RP . Proof If ( USAT , USAT ) is in promise- RP , then there is a probabilistic polynomial-time algorithm A such that USAT Pr[ A ( ) = 1] 1 / 2 USAT Pr[ A ( ) = 1] = 0 . We design a probabilistic polynomial-time algorithm B for SAT as follows: on input an n-variable boolean formula , first choose uniform m { ,...,n- 1 } . Then choose random h H n,m +2 . Us- ing the Cook-Levin reduction, rewrite the expression ( x ) def = ( ( x ) ( h ( x ) = 0 m +2 )) as a boolean formula ( x,z ), using additional variables z if necessary. (Since h is efficiently computable, the size of will be polynomial in the size of . Furthermore, the number of satisfying assignments to ( x,z ) will be the same as the number of satisfying assignments of .) Output A ( ). If is not satisfiable then is not satisfiable, so A (and hence B ) always outputs 0. If is satisfiable, with S denoting the set of satisfying assignments, then with probability 1 /n the value of m chosen by B is such that 2 m | S | 2 m +1 . In that case, Lemma 1 shows that with probability at least 1/8 the formula...
View Full Document

Page1 / 8

lecture24 - Notes on Complexity Theory Last updated:...

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

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