- 61 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' Algorithms for SAT Based on Search in Hamming Balls' - hedley-ellison

**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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Algorithms for SAT Based on Search in Hamming Balls

Author : Evgeny Dantsin, Edward A. Hirsch,

and Alexander Wolpert

Speaker : 張經略, 吳冠賢, 羅正偉

Outline

- Introduction
- Definitions and notation
- Randomized Algorithm
- Derandomization

Introduction

- In this paper a randomized algorithm for SAT is given, and its derandomized version is the first non-trivial bound for a deterministic SAT algorithm with no restriction on clause length.
- For k-SAT, Schuler’s algorithm is better than this one.

Fact about H

- The graph of H is

Observations

- The recursion depth is at most R
- Any literal is altered at most once during execution of Ball-Checking, and at any time, those remaining variables are assigned as in the original assignment

Lemma 1

- There is a satisfying assignment in B(A,R) iff Ball-Checking(F,A,R) returns a satisfying assignment in B(A,R)
- Proof. The lemma is correct for R=0. For the induction step, assume that Ball-Checking(Fi,Ai,R-1) finds a satisfying assignment in B(Ai,R-1), if any. Furthermore, the assignment found can be different from Ai only at those variables that appear in Fi.

Lemma2

- The running time of Ball-Checking(F,A,R) is at most , where k is the maximum length of clauses occurring at step 3 in all recursive calls.
- Proof. The recursion depth is at most R and the maximum degree of branching is at most k.

Full Ball Checking

- Procedure Full-Ball-Checking(F,A,R)Input: formula F over variables

assignment A, number ROutput: satisfying assignment or “no”

- 1.Try each assignment A’ in B(A,R), if it satisfies F, return it.
- 2.Return “no”

Observation

- Full-Ball-Checking runs in time poly(n)mV(n,R)

Correctness

- Lemma 3. For any R,l,(a)If F is unsatisfiable, then Random-Balls returns “no”, (b)else Random-Balls finds a satisfying assignment with probabability 1/2

Amplifying prob. of correctness

- Choosing N to be n time larger will reduce the probability of error to less than .Note this doesn’t ruin the time complexity we need.

Lemma 4

- Consider the execution of Random-Balls(F,R,l) that invokes Ball-Checking. For any input R,l, the maximum length of clauses chosen at step 3 of Procedure Ball-Checking is less than l.

Lemma 5

- For any R,l, let p be the probability (taken over random assignment A) that Random-Balls invokes Full-Ball-Checking. Then

Proof of Theorem 1 (conti.)

- Assign R=a ,l=b ,where a < b constants. We use the fact ln(1+x)=x+o(x).

Proof of Theorem 1 (conti.)

- Taking a=0.339, b=1.87, we have Φ ,ψ>0.712 , proving the theorem.

Derandomization

- From “A deterministic Algorithm for k-SAT based on local search”Lemma.
- Let R < n/2,β=β(n,R)= ,存在nβ 個R ball cover

Approximation for Ball covering

- We give a greedy algorithm for choosing a near optimal number of covering R-balls.At each step, choose the R-ball that covers the most yet-uncovered elements.

Approximation ratio

- Let OPT be the optimal number of covering R-balls. At each iteration, the yet-uncovered elements can be covered by OPT R-balls. Thus some R-ball covers at least 1/OPT fraction of the yet-uncovered elements. So the # of yet-uncovered elements becomes less than (1-1/OPT) times the original value.

Correctness

- The correctness follows since C is a covering of .

Proof of theorem 2(conti.)

We now estimate S2 as follows:

Download Presentation

Connecting to Server..