ON OPTIMAL PROBABILISTIC ALGORITHMS FOR SAT 5
≥1− Pα∈Sn1−Pr[α=C(n)] ·Prr∈{0,1}ne[r∈Tn,α,e]
|Sn|!|Sn|
= 1 −1−Pα∈SnPr[α=C(n)] ·Prr∈{0,1}ne[r∈Tn,α,e]
|Sn||Sn|
≥1−1−1
3· |Sn||Sn|
≥1
5.
Theorem 3.1 immediately follows from the following lemma.
Lemma 4.1. Assume one-way functions exist. Then there is a randomized poly-
nomial time algorithm Hsatisfying the following conditions.
(H1) Given n∈Nin unary the algorithm Hcomputes with probability one a
satisfiable CNF αof size kαk=n.
(H2) For every probabilistic algorithm Adeciding Sat and every d, p ∈Nthere
exists an nA,d,p ∈Nsuch that for all n≥nA,d,p
Pr Aaccepts H(n)in time nd≤1
2+1
np,
where the probability is taken uniformly over all possible outcomes of the
internal coin tosses of the algorithms Aand H.
(H3) The cardinality of the range of (the random variable) H(n)is superpolynomial
in n.
Sketch of proof: We present the construction of the algorithm H. By the as-
sumption that one-way functions exist, we know that there is a pseudorandom
generator (e.g. see [2]), that is, there is an algorithm Gsuch that:
(G1) For every s∈ {0,1}∗the algorithm Gcomputes a string G(s) with
|G(s)|=|s|+ 1 in time polynomial in |s|.
(G2) For every probabilistic polynomial time algorithm D, every p∈N, and all
sufficiently large `∈Nwe have
Pr
s∈{0,1}`D(G(s)) = 1−Pr
r∈{0,1}`+1 D(r) = 1≤1
`p
(In the above terms, the probability is also taken over the internal coin
toss of D.)
Let the language Qbe the range of G,
Q:= G(s)s∈ {0,1}∗.
Qis in NP by (G1). Hence, there is a polynomial time reduction Sfrom Qto
Sat, which we can assume to be injective. We choose a constant c∈Nsuch
that kS(r)k ≤ |r|cfor every r∈ {0,1}∗. For every propositional formula βand