Pm Pm Pm Pm - Rutgers Computer Science

Lectures on 8 and 13 July 1998
April 26, 1998
Cherno Bound.
Let y 2 f0; 1gm. Pick m times independently with uniform probability,
xi 2 f0; 1g for i 2 f1 : : :mg.
(
yi
Dene the random variable zi = ,11 ifif xxi =
=
6
i yi
P
m
Let Zm be the random variable Zm = i=1 zi .
Pm z ) =
Z
is
a
sum
of
m
independent
random
variables,
then
E
(
Z
)
=
E
(
m
m
i=1 i
Pm E (z ) = Pm 0 = 0.
i=1
i
i=1
Theorem 1 Prob(j Zm j b)<
2
b2
e 2m
) for any b > 0. 2
Theorem 2 BPP NPNP
Proof.
We use NPNP = p2 and the following characterization of the Polynomial
Time Hierarchy by Alternating Turning Machines: pk = Apk (pk = Apk ).
The crux of the proof is an Ap2 algorithm which simulates a given
probabilistic polynomial time algorithm. The crux for the correctness of
the Ap2 algorithm is the existence of a k-pseudorandom generator g . And
the existence of a 2m -hard function (cf. homework) f (g is dened using
f ) is the crux for g being a k-pseudorandom generator. (i.e., if g is not a
k-pseudorandom generator f will not be 2m -hard)
Roughly speaking, picking up an element at random is choosing without
any help from the structure of the set of elements. And a hard function is
one \without structure", the best we can do, almost, is answer at random.
It is intuitive then to try to build a random sequence from a hard function.
Consider a behaviourist denition of structure and randomness if we are in
a resource bounded realm.
1
A pseudorandom generator is, intuitively, a way to expand a random
seed into a sequence \random enough" for a bounded time algorithm. To
our purpose, we do an ad hoc denition of a pseudorandom generator.
Denition 1 (r-Pseudorandom Generator) Let Dk be a probability distribution on k and let Rk the uniform probability distribution on k , i.e.,
Rk (x) = 2,k for all x 2 k .
Let G be a function G : f0; 1gc log n ! f0; 1gnk for any integer c; k; n 1.
Let DG the probability distribution on nk induced by G(x) when x is
chosen at random from Rc log n .
G is a r-pseudorandom generator i for any family of circuits fCng of
size bounded by n2r and any X 2 n ,
j ProbY (C (X; Y ) = 1) , ProbZ (C (X; G(Z )) = 1) j 1=2 , 1=nr
for all suciently large n. Y and Z are chosen from Rnk and Rc log n respectively. 2
Let A 2 BPP and let M be a probabilistic polynomial time algorithm
that decides A in BPP. Without loss of generality let nk be the running
time of M and 1=2n the error bound of M where n is the input size. Let M 0
be the \deterministic version" of M where the coin ips results are given as
a second input of length nk .
We give an Ap2 algorithm MAp2 for A:
input (x);
for some integer a > 0, integer b > a, real > 0;
comment: a will be xed at the end of the proof. b depends on a.
is such that there is a 2m -hard function.
dene constant n =j x j, m = a log n;
dene variable
f : f0; 1ga log n ! f0; 1g;
g : f0; 1gb log n ! f0; 1gnk ;
dene algorithm M 0 dened in the statement above;
begin
branch-9 and then guess(f );
branch-8 and then check that f is 2m-hard;
2
comment: Note that each branch will be associated with a possible circuit
and will compute that circuit for all values of length m to decide if
the circuit approximates the function.
comment: Note that from this point on the algorithm is in P .
Use f to build a k-pseudorandom generator g ;
Run M 0(x; g (y )) for all y 2 f0; 1gb log n ;
accept i at least half of the computations M 0(x; g(y)) accept.
comment: Note that the probability of M being right can dier from 1 by
no more than on exponentially small amount and a k-pseudorandom
generator varies this probability no more than 1=2 , 1=nk , thus, for
large enough n the rate of acceptance of M 0 can not go across 1/2.
i.e., if Prob(M accepts) is almost 1 (0) then Prob(M 0 accepts) will
be over (under) 1=2.
end.
Let C 0 be the circuit that simulate the Turing Machine M 0 . Remember
that DTIME(nk ) SIZE(n2k ).
Proof of correctness of the algorithm.
Since g is a k-pseudorandom generator, by denition, for all X 2 n the
following holds
j ProbY (C 0(X; Y ) = 1) , ProbZ (C 0(X; g(Z )) = 1) j 1=2 , 1=nk
for all suciently large n. Y and Z are chosen from Rnk and Rb log n respectively.
And since M decides A in BPP ,
X 2 A ) ProbY (C 0(X; Y ) = 1) 1 , 1=2n
X 62 A ) ProbY (C 0(X; Y ) = 1) 1=2n
Then, (assume that if X 2 A [X 62 A] then ProbY (C 0(X; Y ) = 1) >
ProbZ (C 0(X; g (Z )) = 1) [ProbY (C 0(X; Y ) = 1) < ProbZ (C 0(X; g (Z )]. Note
that is only necessary to prove this case)
X 2 A ) ProbZ (C 0(X; g(Z )) = 1) 1 , 1=2n , 1=2 + 1=nk = 1=2 , 1=2n + 1=nk
> 1=2 for suciently large n
X 62 A ) ProbZ (C 0(X; g (Z )) = 1) 1=2n + 1=2 , 1=nk = 1=2 + 1=2n , 1=nk
< 1=2 for suciently large n 2
3
Proof that g is a k-pseudorandom generator.
Fact 1 Let n; k; a and b denote the same values as in the algorithm MAp .
There exists a polynomial time algorithm with input 1n that outputs a
matrix N of nK rows and b log n columns. Furthermore, each row has a log n
1's and for any two rows i and j, if we let Ci = fcolumns with value 1 in row number ig,
then j Ci \ Cj j log n. 2
2
We will prove it in the next lecture.
Algorithm to compute g :
input (y);
dene n; k; a; b; matrix A dened in Fact 1;
fit holds: j y j= b log ng
dene set C1:::nk dened in Fact 1;
dene function f dened in algorithm MAp ;
2
begin
for i = 1 to nk ;
fgoal: compute the ith bit of g (y )g
end.
Get Ci;
Let projection(y; Ci) be the subsequence in y obtained picking
the bits of y corresponding to elements in Ci ;
fit holds: jprojection(y; Ci)j= a log ng
add to output f (projection(y; Ci));
We know that f is 2m -hard.
Claim 1 If f is 2m-hard then g is a k-pseudorandom generator.
Notice that m; k and g are the values dened in the algorithm MAp2 .
We prove it by contradiction. Suppose that g is not a k-pseudorandom
generator. Then it holds that exists a family of circuits fDn g, where SIZE(Dn )
n2k , and a X 2 n ,
j ProbY (D(X; Y ) = 1) , ProbZ (D(X; g(Z )) = 1) j > 1=2 , 1=nk (1)
for innitely many n. Y and Z are chosen from Rnk and Rb log n respectively.
4
We introduce some notation. If s is a string of length k, let si denote
the ith bit of s and let s[i:::j ] denote the bits from i through j of s, where
1 i j k.
Let pi denote ProbV;W (D(X; g (V )[1:::i] ; W ) = 1) where W and V are
chosen from Rnk ,i and Rb log n respectively.
Note that p0 = ProbY (D(X; Y ) = 1) and pnk = ProbZ (D(X; g (Z )) = 1).
We rewrite the equation (1) as j p0 , pnk j> 1=2 , 1=nk .
As we \go" from p0 to pnk in nk steps there exist one step i such that
j pi , pi+1 j> (1=2 , 1=nk )=nk > 1=nd
for some d0.
j pi , pi+1 j is the average over all possible choices of Z and Y . We
can x some election of any set of bits and then j pi , pi+1 j is the average
over all possible
ways of complete Z and Y . Therefore exists some string
Y 0 2 nk ,i,1 and some string Z 0 2 b log n,a log n such that j pi , pi+1 j>
1=2 , 1=nd where j pi , pi+1 j is the average over the probabilities obtained
by choosing at random the a log n bits, let's name that Z 00 , in Ci+1 (remind
that we dened Ci from the matrix A) that complete Z and one bit, Y 00, to
complete Y .
Let D0 be the circuit so that
D0(Z 00; Y 00) = D(X; g(Z )1; g(Z )2 : : :g (Z )i; Y 00; Y10 ; Y20 : : :Yn0k ,i,1 )
Note that Z is a mixture of Z 0 and Z 00 and Y the concatenation of Y 00 and
Y 0. Note also that X; Z 0 and Y 0 are xed.
Later we also x Y 00 but for now let it random.
So, rst our circuit has to compute the rst i components of g (Z ). It
means i circuits for the f function where the input size is at most log n
(remember that j Ci \ Cj j log n). Calculating its CNF entails a size
bounded by i2n log n. Then, we already have all the inputs available to
compute D0. We know that the size of D is bounded by n2k .
Therefore the circuit D0 has size bounded by i2n log n + n2k for inputs
of size a log n.
Take in account that we consider Y 00 taking values at random.
Let D00 the circuit which compute the following function:
( 00
0(Z 00 ; Y 00) = 1
00
00
00
D (Z ; Y ) = Ynot Y 00 ifif D
D0(Z 00 ; Y 00) = 0
0
0
5
D00 has size bounded by size(D0) + t, for some little constant t. That
equals i2n log n + n2k + t:
Let's see how well D00 computes f . Since Y 00 is chosen at random, it is
equally likely to be f (Z 00 ) as not to be. The probability that D00 computes
f is one-half the probability that a correct Y 00 is maintained plus one-half
the probability that a wrong Y 00 is changed.
Let
q = ProbZ ;Y (D(X; g(Z )1; g (Z )2 : : :g (Z )i; g (Z )i+1; Y10; Y20 : : :Yn0k ,i,1) = 1)
00
00
Notice that pi = (pi+1 + q )=2.
Let's say that D00 is correct for an input whenever D00 computes f for
that input. Then
Prob(D00 is correct) = 12 pi+1 + 12 (1 , q )
= 12 (pi+1 + (1 , (2pi , pi+1 ))
= 12 + pi+1 , pi
> 12 + n1d
0
Again for Y 00 xed we have a new probability and at least one of these
two probabilities has to be as high as the average. Therefore we x Y 00 to
this value.
Let D000 be the circuit D00 where the input Y 00 is xed to this value.
So far, under the assumption that g is not a pseudorandom generator
we have a circuit D000 with a log n inputs (we will x a later and n is one of
the innitely many n that make the equation (1) hold) such that
SIZE(D000) 2in log n + n2k + t
Prob(D000(x) = f (x)) > 21 + n1d
0
We show now that f is not 2m -hard to obtain the contradiction required.
We see that exists an input length, l, and a circuit T for that input length
such that
SIZE(T ) 2l
Prob(T (x) = f (x)) > 21 + 212l
6
We claim that l = a log n and T = D000 prove that f is not 2m -hard:
SIZE(D000) 2in log n + n2k + t
2m = 2a log n = na for all suciently large a
Prob(D000(x) = f (x)) > 12 + n1d
12 + 2 2a1 log n = 12 + 2n1a for all suciently large a
Fix then a as required and get the contradiction required. 2
0
7