Cryptography Reference
In-Depth Information
is obvious that
poly (in fact, strict containment can be proved by considering
non-recursive unary languages). Furthermore:
P P /
BPP P / poly .
Theorem 1.3.7:
Proof: Let M be a probabilistic polynomial-time Turing machine recognizing
L BPP
. Let χ L ( x ) def
= 1if x L , and χ L ( x ) def
= 0 otherwise. Then, for every
x ∈{ 0 , 1 } ,
2
3
Assume, without loss of generality, that on each input of length n , machine M
uses the same number, denoted m = poly( n ), of coin tosses. Let x ∈{ 0 , 1 }
Pr
[ M ( x )
= χ L ( x )]
n .
Clearly, we can find for each x ∈{
,
}
n
a sequence of coin tosses r ∈{
,
}
m
0
1
0
1
= χ L ( x ) (in fact, most sequences r have this property). But can
one sequence r ∈{
such that M r ( x )
0
,
1
}
m
fit all x ∈{
0
,
1
}
n ? Probably not. (Provide an example!)
2
Nevertheless, we can find a sequence r
3 of all the x 's of length
n . This is done by an averaging argument (which asserts that if
∈{
0
,
1
}
n that fits
2
3
of the r 's are
2
3
good for each x , then there is an r that is good for at least
of the x 's). However,
this does not give us an r that is good for all x
n . To get such an r ,wehave
to apply the preceding argument on a machine M with exponentially vanishing
error probability. Such a machine is guaranteed by Exercise 5. Namely, for every
x
∈{
0
,
1
}
} ,
∈{
0
,
1
[ M ( x )
2 −| x |
Pr
= χ L ( x )]
>
1
Applying the averaging argument, now we conclude that there exists an r
{ 0 , 1 }
m , denoted r n , that is good for more than a1 2 n
fraction of the x 's
n . It follows that r n is good for all the 2 n inputs of length n .
Machine M (viewed as a deterministic two-input machine), together with the
infinite sequence r 1 , r 2 ,... constructed as before, demonstrates that L is in
P / poly.
in { 0 , 1 }
Non-Uniform Circuit Families. A more convenient way of viewing non-uniform poly-
nomial time, which is actually the way used in this topic, is via (non-uniform) families
of polynomial-size Boolean circuits. A Boolean circuit is a directed acyclic graph with
internal nodes marked by elements of {∧ , , ¬} . Nodes with no in-going edges are
called input nodes , and nodes with no out-going edges are called output nodes . A node
marked ¬ can have only one child. Computation in the circuit begins with placing input
bits on the input nodes (one bit per node) and proceeds as follows. If the children of a
node (of in-degree d ) marked have values v 1 ,v 2 ,...,v d , then the node gets the value
d
i = 1
v i . Similarly for nodes marked
¬
. The output of the circuit is read from its
output nodes. The size of a circuit is the number of its edges. A polynomial-size circuit
family is an infinite sequence of Boolean circuits C 1 , C 2 ,...
and
such that for every n , the
circuit C n has n input nodes and size p ( n ), where p (
·
) is a polynomial (fixed for the
entire family).
Search WWH ::




Custom Search