1 / 12

Randomzied Unique k-SAT

Randomzied Unique k-SAT. R. Paturi, P. Pudlak, M.E. Saks and F. Zane An Improved Exponential-time Algorithm for k-SAT Journal of the ACM, Vol 52, No. 3, pp. 337-364, May 2005 Fenghui Zhang 2006, 11, 2. Introduction. Unique k-SAT

lars-sharp
Download Presentation

Randomzied Unique k-SAT

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Randomzied Unique k-SAT R. Paturi, P. Pudlak, M.E. Saks and F. Zane An Improved Exponential-time Algorithm for k-SAT Journal of the ACM, Vol 52, No. 3, pp. 337-364, May 2005 Fenghui Zhang 2006, 11, 2

  2. Introduction • Unique k-SAT • Given a CNF formula F with at most one satisfying assignment, decide if F is satisfiable or not • Main result to present: • For unique 3-SAT, the running time is O(1.307n), much better than the best known algorithm for general 3-SAT, which is O(1.324n)

  3. The algorithm • Resolve all s bounded pairs • Repeat T times • Let  be a random permutation of [1..n] • Let y be a random assignment to F • Let u be the result of applying y to F following the order in π – Modify (F,  , y); • If u satisfies F, return u • Return “no”

  4. Resolve s bounded pair • Two clause form a resolvable pair if they conflict on exactly one variable v, i.e., one of them contains v and the other contains v. • R(C1,C2)=D1  D2, where D1 and D2 are obtained by remove variable from C1 and C2 • If none of C1,C2 , R(C1,C2 )contains more than s literals, we add R(C1,C2) to F

  5. Modify (F, , y) • Take the next variable v from π • If the value of v can be decided, assign that value to v • When there is a unit clause only involves v • Else v takes the value assigned in y • Return the modified assignment

  6. What are s, T? • s is a large constant or a slowly increasing function of n • T is the number of time we run the algorithm, in our unique 3-SAT case, it is O(1.307n)

  7. Analysis • Suppose z is a satisfying assignment to F, for given y and , Modify (F, , y) returns z iff y and z agrees on all variables not forced by π, i.e., those not decidable • For fixed π, the number of y that Modify (F, , y) will return z is 2|Forced(G, , z)| • The probability that the algorithm finds z is then

  8. Analysis – cont. • It is bounded by 2-n+E[|Forced(F, , z)|] • We say that a clause C is critical for a variable v and a truth assignment z if v is the only true literal variable in C • v C is in Forced(F, , z) iff in , v is after all other variables of C • Hence E[|Forced(F, , z)|]=vP(v,F,z) where P(v,F,z) is the probability that a random  actually put v as the last variable among the variables of a critical clause for (v, z)

  9. Analysis – cont. • Why do s-bounded resolvent? • Increase the number of critical clauses for a variable • How does uniqueness help? • Suppose z=1n is the unique truth assignment • Consider C1=x1x2x3x4,001n-2 is not a truth assignment, there is a clause not satisfied by it that • Either resolvable with C1 • Or it is a second critical clause for x1

  10. Analysis – cont. P (v, F, z)>0.613 • This is because we assume that F has at most one truth assignment, thus for any integer d between 1 and n, flip any d variables will give us a false assignment, hence we will have many critical clauses for each variable, hence the probability of  actually put v as the last in one of its critical clause increases. • Detail skipped.

  11. Analysis – cont. • Hence the success probability of Modify (F,, y) is at least 2-n+0.613n=1.307-n • Hence if we let T=O(1.307n), i.e., repeat Modify for O(1.307n) many times, we will have a nontrivial chance of finding the truth assignment

  12. The End • Thank you very much • Questions?

More Related