350 likes | 483 Views
Improved Derandomization of BPP using a hitting set generator Oded Goldreich Avi Wigderson. D91922010( 狄彥吾 ),R91922045( 游家牧 ),R91922046( 林宜禎 ) National Taiwan University Department of Computer Science and Information Engineering 05/14/2004. Outline. Introduction to Hitting-set generator.
E N D
Improved Derandomization of BPP using a hitting set generatorOded GoldreichAvi Wigderson D91922010(狄彥吾),R91922045(游家牧),R91922046(林宜禎) National Taiwan University Department of Computer Science and Information Engineering 05/14/2004
Outline • Introduction to Hitting-set generator. • Derandomization procedure. • Patch.
Our Goal • Theorem : If there exists a hitting-set generator G running in time tG then BPP is belong to DTime(poly(tG(poly(n))). • If G runs in polynomial time then BPP=P. • This paper gives a simplified proof.
The road to P=BPP • Andreev ever gave another derandomization procedure having running time DTime(poly(tG(tG(poly(n))))) • It seems that it the same as the theorem in this paper. • On the one hand, if tG(s)=poly(s), it’s good. • On the other hand, if tG(tG(s))=2s, it’s bad.
Hitting-Set Generator(HSG) • An algorithm G is called a hitting-set generator for circuits if for every n, s are belong to N generates as output a set of n-bit strings G(n,s) with the following property : every circuit of size s on n input bits, which accepts at least half its inputs, accepts at least one element from the set G(n,s). • Let s=s(n), tG(s) denote the running time of G, NG(s) denote the size of output set of G. • s=s(n) is the essental complexity parameter (n ≤ s)
Hitting-set generator (n,s) G(n,s)={ s1, s2, … ,sNG(s) } Circuit with size at most s n-bit input Accept at least half its Inputs and at least one element from the set G(n,s)
One-Side Error and Two-Side Error • RP : One-Side Error • BPP : Two-Side Error • If polynomial time hitting-set generator exist then P=RP. • It is sufficient to run the algorithm on each random sequence generated by the HSG and accept the input if and only if one of these sequences makes the algorithm accept.
Hitting-set generator (n,s) G(n,s)={ s1, s2, … ,sNG(s) } RP algorithm x accept / reject s1 If any algorithm above accept x then we say that x is belong to L RP algorithm x accept / reject s2 . . . RP algorithm x accept / reject sNG(s)
Difference • The output of HSG is a set of string, s1,s2, … ,sN. • The procedure which we prove P=RP use these strings one by one. • In the procedure which we prove P=BPP, we see the random bit as matrix Q, Q(i,j)=sisj.
Before Derandomization • Given L is belong to BPP, we have a probabilistic polynomial-time algorithm A which on inputs of length n use 2l=poly(n) many ramdom bits and error with probability at most 2-(l+1). • A(x,r) denote the output of algorithm A on input x {0,1}n and random-tape contents r {0,1}2l . • p is some fixed polynomial so that the computation of A on inputs of length n can be implemented by circuits of size p(l)/l.
Derandomization procedure • On input ,letting A and l be as above. Invoking the hitting-set generator G obtain , where each is in . • Construct an N by N matrix, , so that .
Using a procedure to determine if (1) for every l
Prove Idea • We first show that if then Eq. (1) holds, and analogously if then • To the end we use a general technical lemma which implies that it cannot be the case that both Eq.(1) and Eq.(2) hold.
Proposition 5 If (resp., ) then EQ.(1) (resp., Eq.(2)) holds.
Proof • Let be the characteristic function of L. • Fixing the inputto algorithm A, we consider the circuit which takes an 2l-bit input r and outputs A(x,r). • By the above hypothesis ,we have
Thus, at most values of satisfy • And at least half the values of satisfy
Hence for any fixed sequence then • Consider the circuit . • Then by the above • On the other hand, the size of is
Thus, if there exists a hitting-set generator G. The set H=G(l, p(l)) must contain a string z so that • It follows that holds for every • The above holds for every Hence we have proved that for every l rows in M there exists a column on which the value of the matrix is . We proved that if then Eq. (1) holds.
A similar argument applies to sets of lcolumns in M. • Specifically, for every • Again, we conclude that for every there existsso that for every • Thus, for every l columns in M there exists a row on which the value of the matrix is
Equations • (1) (2).
Proposition 5 • Shows for x L(respectively,x L) ,Eq.(1) (res. Eq.(2) ) holds. • But It is not clear whether Eq.(1) and Eq.(2) can hold simultaneously.
Corollary 6 • For n-by-n Boolean matrix,with ,it is impossible for the following 2 conditions to hold simultaneously.
2 conditions • 1.for arbitrary k rows there exists a column so that all the k rows have a 0-entry in this column.
2 conditions 2.for arbitrary k columns there exists a row so that all the k columns have a 1-entry in this row
Furthermore • Assuming one of both conditions holds,we can decide which holds in (deterministic) polynomial time.
Proof of Corollary 6 • Suppose Eq. (1) holds. • Then,arbitrary k rows contain a 0-entry,and so cannot be the all 1`s row.
Proof of Corollary 6 Suppose Eq. (2) holds. • Then,arbitrary k columns contain a 1-entry,and so cannot be the all 0`s column.
Proof of Corollary 6 • Both the 2 equations hold will cause contradiction.
Proof of Corollary 6 • Let S0=[n],R=ø,and report for i=0,1,2,… • Take a row j not in R which at least | Si |/2 1`s in Si .
Proof of Corollary 6 • Add j to R, and let Si+1 be the part of Si that had 0`s in row j.
Proof of Corollary 6 • We get stuck if for any i,no row in current [n]-R has at least | Si |/2 1`s in Si • otherwise,we terminate when Si= ø
Proof of Corollary 6 • If we never get stuck,then we generated at most log2n k rows(and the last Si is empty) • On the other hand,if we got stuck at iteration i,let S= Si • Note that every row has at least /2 0`s in the column S.
Proof of Corollary 6 • Now picking greedily columns from S in sequence so as to contain the largest number of 0`s in the remaining rows . • a set T of at most k columns from S were chosen (these columns have 0`s more than 1`s,and these rows with 0-entries are taken to T)
Proof of Corollary 6 • Note that the above procedure for constructing R,S,and T is implementable in polynomial-time • We may output the set of rows R,and otherwise the set T of columns.
Proof of Theorem 2 • Proposition 5 shows that for x L either Eq.(1) or Eq.(2) holds. • Furthermore,the former holds whenever x L • By applying Corollary 6 as indicated above it follows that only one of these equation may hold. • Using the decision procedure guaranteed by this corollary, we implement these steps in our derandomized procedure,and Theorem 2 follows.