On the Structure of Uniquely Satisfiable Formulas Richard Cha*?g* Jim Kadin TR 90-1124 May1990 Department of Computer Science Cornell University Ithaca, NY 14853-7501 *Department of Computer Science, Cornell University, Ithaca, NY 14853. Supported in part by an IBM Graduate Fellowship and by NSF Research Grant CCR-88-23053. **Department of Computer Science, University of Maine, Orono, ME 04469. On the Structure of Uniquely Satisfiable Formulas Richard Changt May 7, 1990 Jim Kadin? Abstract. This paper presents some new results on the computational complexity of the set of uniquely satisfiable Boolean formulas (USAT). Valiant and Vazirani showed that USAT is complete for the class D? under randomized reductions. In spite of the fact that the probability bound of this reduction is low, we show that USAT captures many properties possessed by D? many-one complete sets. We show that the structure of USAT can affect the structure of D? and the entire Polynomial Hierarchy (PH) as well. That is, 1. if USAT=? USAT, then D? co-D? and PH collapses. 2. if USAT E co-D?, then PH collapses. 3. if USAT is closed under disjunctive reductions, then PH collapses. The third result implies that the probability bound in the Valiant-Vazirani reduction cannot be amplified by repeated trials unless the Polynomial Hierarchy collapses. These results show that even sets complete under "weak" randomized reductions can capture properties of many-one complete sets. 1 Introduction USAT is the set of Boolean formulas with exactly one satisfying assignment. The investi- gation on the computational complexity of USAT in relation to D? began when Papadim- itriou and Yannakakis showed that USAT was in D? [PY82]. The class D?, co-D?and the canonical ?m? -complete languages for these two classes are defined below. Definition D? --H(L1nT2IL1,L2?NP1 SATASAT = ?(F?,F?) IF1 e SAT and F2 ? SAT 1 co-D? = (T1UL2 L1,L2 ? NPJ SATVSAT = f(F1,F2) P1 c SAT or F2 ? SAT 1 tDepartment of Computer Science, Cornell University, Ithaca, NY 14853. Supported in part by an IBM Graduate Fellowship and by NSF Research Grant CCR 88-23053. ?Dep&tment of Computer Science, University of Maine, Orono, ME 04469. psAT[1] P Figure 1: USAT and related complexity classes. `Apparently USAT was once conjectured to be l/p(IxI) x ? A ? Prob[f(x) ? = 1. Definition [LLS75] A is disjunctive reducible to B, written A ? 1/2. However, the definition they use is strong enough to give the corollary USAT E RP ? --H NP = RP. Furthermore, if A 1 --H In any case, the following theorem shows that USAT is <`Pm -complete for D? Fact 1 (Valiant, Vazirani [VV86]) There is a polynomial time function f such that x ? SATASAT Pwby[ f(x,y) ? USAT] > 1/(41x1) x?SATASAT ? Prob?[f(x,y)?USAT]=1. From this result, one would be tempted to say that USAT is "almost" many-one com- plete for DF. However the <`P-reduction does not reduce strings in SATASAT to USAT with high probability. In fact, the probability tends toward zero as the length of the for- mula increases. At first glance, it is not clear how closely this completeness result relates the structure of USAT to the structure of D?. For example, it is not clear whether USAT can be in co-D?, or even psAT[1]?2 Thus, the "precise complexity" of USAT is still open. In this, paper we make another step towards resolving this open question and show that USAT does indeed behave like D? 1 --H x ? A ? Prob?[ f'(x,z) ? = 1' 4 where n = Ixi and z is chosen uniformly over fO, 11q'(n) Proof: Let f be the 1/p(n) x ?A Prob?[ f(x,z) ? = 1, where n = Ixi and z is chosen uniformly over f0, 1J?(n) Consider the set D=t(Xi,...,xm) Ia?, 1 1/p(n), where z is chosen uniformly over ??, 1?q(n) So, the probability that for some i 1 1 --H (1 --H i/p(n))r(n) > 1 --H ((1 --H Since (1 --H 1/p(n)?(?) converges to e?', we have x E A ? Prob?[ f'(x,z) ? B ] >1 --H g?P'(fl) >1 --H2--H?1??? where z is chosen uniformly over ?0, 1?q'(n) Before we go on, we need to define some probabilistic and nonuMform classes. Definition For any dass C, A ? BP?C if there exists B E C and a const?nt; E such that Vx, Prob?[ x ? A ? (x,y) ? > 1/2+?. E] Definition Let C be any class of languages and let f a polynomially bounded function (i.e., there exists k such that If(?)I ? 1y1k + k). A E C/f if there exists B ? C such that Vx, x E A (x,f(11x)) E B. 5 f is called the advice function and f(1IZI) the advice string. Note that the advice string depends only on the length of x. Also, we write C/poly for the union of C/f over all possible polynomially bounded advice functions. The "hard/easy formulas" proof, which showed that D? = co-D? implies PH collapses, used the following line of reasoning. Suppose D? --H co?D?, then there is a many-one reduction from SATASAT to SATVSAT. With the help of an advice function f, this reduction can be converted into a reduction from SAT to SAT. Thus, SAT E NP/f. Then, by a theorem due to Yap [Yap83], PH collapses_to ?3?. In the next theorem, we will show that the 1 --H (F1,F2) ? SATVSAT ? Prob?[ h(F1,F2,z) ? SATASAT] = 1 where n = j(F1, F2)I and z is chosen uniformly over fo, 1?q(n) To prove the theorem, we will construct an advice function f computable in ?3? such that SAT ? BP.(NP/f). Then, by Fact 2 ?P/f --H 11P2/f which implies that ?P3/f c ?2P/f However, f is computable in A3?, so a ?3? machine can compute the advice for itself. Thus, ?c??/f--H?/f c??3 So,PH???. ___ Now, we construct the advice function f. We call F easy if F ? SAT and ?x,y such that Ixi = IF, y ? fo,1)?(n), r2(h(x,F,y)) E SAT, where 7r? is the jth projection function (i.e., 7rj(X1,. . . ,Xm) = xi). F is called easy in this case because there is "existential evidence" that F is unsatisfiable. If F ? SAT and F is not easy, then we call F a hard string. On input 1?, the advice function simply outputs the lexically smallest hard string of length n if it exists. Otherwise, it outputs the empty 6 string, ?. From the definition of easy, it is clear that checking whether a string is hard is a co-NP question. So, using binary search and an NPNP oracle, the advice function f can be computed in A3?. Now, consider the following NP program. On input (F, H, z), N treats F as a Boolean formula of length n, takes H as an advice string of length 0 or n, and parses z into a q(n) bit long guess string. (If the input does not conform to this syntax, N rejects outright.) Then, N does the following. 1. If the advice string H is the empty string, then accept if and only if ?x,y such that Ixi = n, yE f0,11q(n), r2(h(x,F,y)) E SAT. 2. If IHI = n, then accept if and only if 7r1(h(F, H, z)) E SAT. CLAIM: The NP program above shows that SAT E BP.(NP/f). That is, Prob?[ F e SAT ? N(F, f(1?), z) accepts ] > 1 --H Note that whether there is a hard string of length n does not depend on the guess string z. So, we can analyze the program in two cases. CASE1: Consider the case where all the strings in SAT of length n are easy i.e., = e. If the input F E SAT, then F must also be easy which means the appropriate x and y would be found in step 1. So, FE SAT ? Prob2[ N(F,&,z) accepts] = 1. If F E SAT, then for all x, (x, F) E SATVSAT. So, by the description of the reduction h, Prob?[ h(x,F,z) E SATASAT] = 1. But, h(x,F,z) E SATASAT implies that_?(h(x,F,z)) E SAT. So, N must reject in step 1. Thus, in the easy case Pwbz[ FE SAT N(F,?,z) accepts] = 1. CASE2: Suppose the advice string H is a hard string of length n. If F E SAT, then (F, H) E SATvSAT. By the description of the reduction h, Prob?[ h(F,H,z) E SATASAT] = 1. So, for all z, ir1(h(F, ii, z)) E SAT. Therefore, for all z, N will accept in step 2 and F E SAT .` Prob?[ N(F, H, z) accepts] = 1. If F E SAT, then (F,H) E SATASAT because H is hard implies th?t.Th E SAT. Also, since H is hard, Vx, Ixi --H n Vz z E fo, 1??(n), ?2(h(x, H, z)) E SAT. So, for all choices of z, h(F,H,z) E SATASAT ? iri(h(F,H,z)) E SAT. Moreover, by the description of h and the fact that (F, H) E SATvSAT, Pwbz[ h(F,H,z) E SATASAT] < 2-?. 7 So, Prob?[ 7ri(h(F,H,z)) ? SAT] < 2-? Thus, F ? SAT ? Pwbz[ N(F, H, z) accepts] ? Since USAT plays no special role in this proof, this theorem holds for all D? 1 2?n2 xCSAT Pwby[f(x,y)?USAT]=1 where n = Ixi and y is chosen uniformly over (0, 11q(n) a Also, USAT_being closed under disjunctive reductions implies that there is an rn-reduction from SATV SAT to SATA SAT. Combined with the observation on amplifying the Valiant- Vazirani reduction, this implies that there exist a polynomial time function h and a poly- nomial q such that 8 (F1,F2) e SATVSAT Prob?[ h(F1,F2,z) e SATASAT] > 1 --H 2?n2 (F1,F2) E SATASAT ? Prob?[ h(F1,F2,z) E SATVSAT] = 1 where n = I(F1,F2)I and z is chosen uniformly over ?O, 11q(n) As in the proof of Theorem 2, we define hard and easy_strings and construct an advice function f. In this proof, we call a string F easy if F E SAT and ?x,Ixi = PI, Pwbz[ r2(h(x,F,z)) E SAT] > 2/3, where 7rj is the jth projection function. As before, if F E SAT and not easy, we call F a hardstring. We construct an advice function f which on input 1?_outputs the lexically smallest hard string of length n, if it exists. Then, we show that SAT ? BP.(NP/f). In this case, however, we do not know thatfcan be computed in ?3?. However, Fact 3 implies that BP.(NP/f) C NP/poly. Thus, SAT ? NP/poly and by Yap [Yap83] PH c ?3?. Consider the NP program N. On input (F, H, z?), N treats F as a Boolean formula of length n, H as an advice string, and parses z = (zi, Z2, Z?? into three q(n) bit long guess stnngs. Then, N does the following. 1. If the advice string H is empty, then accept if and only if ?x, such that lxi = n,ir2(h(x,F,z1)) ? SAT. 2. If HI --H n then accept if and only if for each i 1,2,3, 7ri(h(F,H,zi)) ? SAT. Note that step 1 in this program is different from the one in Theorem 2. The string z1 is not guessed existentially in step 1, but taken from z CLAIM: The NP program above demonstrates that SAT ? BP.(NP/f). That is, Prob?[ FE SAT ? N(P,f(1n),j) accepts] >2/3. CASE1: Consider the case where all the strings in SAT of length n are easy (f(1?) = If the input F E SAT, then F must also be easy. Let x be the witness that F is easy. Then, by the definition of easy, Prob?1[ r2(h(x,F,z1) E SAT] > 2/3. So, Prob?1 [ 3x, IxI = n, r2(h(x,F,zi) E SAT] > 2/3. So the pwbability that the existential search in step 1 will be successful is greater than 2/3. Thus, FE SAT ? P?ob?[ N(F, e, z) accepts] >2/3. On the other hand, if FE SAT, then for all x, (x,F) E SATVSAT. Thus, Prob?1 [ h(x,F,zi) E SATASAT] > 1 --H 2?n2. So, Prob??[ r2(h(x,F,z1)) E SAT ] ? 2?fl2. However, 2--Hfl2 is so small, we can move an existential quantifier inside the probability 9 Prob?1[ ?x, Ixi = Fl, r2(h(x,F,z1)) ? SAT] <1 --H (1 --H 2?n2)2n Then, the following calculations give us 1 --H (1 2?n2)2 = 2?n2 --H 2?n2)i?1 < 2??2 2" = 2n?n2 s=1 Thus, F ? SAT ? Prob?[ N(F,e,z) accepts] <2n?n2. Case2: Suppose there is a hard string H = f(1"). If F E SAT, then (F, H) ? SATVSAT. So, by the description of h Pwbz[ h(F,H,z) ? SATASAT] > 1 2?n2. This means PWbz[ ?i(h(F?H,z)) ? SAT] >1 --H 2?n2. So, Prob??,22,?[ for each i = 1,2,3, 7r1(h(F, H, zi)) ? SAT ] > (1 --H 2--H"2? > 1 --H 3. 2?n2 So, the probability that all three trials checking if 7r1(h(F, H, zi)) E SAT in step 2 are successful is greater than 1 --H 3 2?fl2. Thus, F ? SAT? Prob?-[ N(F,H,i) accepts] >1 --H 3 2?" On the other hand, if F ? SAT, then (F, H) ? SATASAT. From the description of h, this means Pwbz[ h(F, H, z) e SATVSAT] = 1. However, H is hard, so Pwbz[ ir2(h(F, H, z)) E SAT] > 1/3. Note that (G1,G2) ? SATVSAT and G2 ? SAT implies that G1 ? SAT. So, Prob?[ 7r1(h(F, H, z)) ? SAT] > 1/3. This yields the relation Prob?1?2?3[ for each i = 1,2,3, 7ri(h(F,H,zi)) ? SAT] ? (2/3)? < 1/3. Thus, F ? SAT Prob?[ N(F, H, z) accepts] ? 1/3. As in Theorem 2, USAT plays no special role in the proof. With minor modifications, the preceding proof will also show the following corollary. Corollary 2 Let A be 1 2?n2 x?SAT ? Pwby[f(x,y)?A]=1 x ? SAT ? Prob?[g(x,y) ? A] >1 ?2?n2 x?SAT Pwb?[g(x,y)?A]=1 where n = Ixi and y is chosen uniformly over to, 1)q(n) Consider the set D = ((i??,F?? F1 E A or F2 ? Since D 1 2?n2 (F1,F2) E SATASAT Prob?[ t(f(F1,y),g(F2,y)? ? A] = 1 The rest of the proof would proceed in the same way as the proof 0 Theorem 3. E] 4 A Technical Discussion One way to remember Theorem 2 is: SATASAT ??P USAT