schöning's random walk algorithm for k-sat -...

42
Schöning's Random Walk Algorithm for k-SAT time2016.12 groupLLWJJ

Upload: others

Post on 24-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

Schöning's Random Walk Algorithm for k-SAT

time:2016.12 group:LLWJJ

Page 2: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

OUTLINE

2

The Boolean Satisfiability K-SAT Probabilistic Algorithm Analysis

Page 3: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

OUTLINE

3

The Boolean Satisfiability K-SAT Probabilistic Algorithm Analysis

Page 4: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

4

PART ONE PART THREE

The Boolean Satisfiability

𝐴𝐴 OR 𝐵𝐵

A B 0 1

0

1

0 1

1 1

Page 5: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

5

PART ONE PART THREE

The Boolean Satisfiability

𝐴𝐴 OR 𝐵𝐵

A B 0 1

0

1

0 1

1 1 Satisfiable

Page 6: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

6

PART ONE PART THREE

The Boolean Satisfiability

¬𝐴𝐴 AND 𝐴𝐴

1

0

1

0

0

A

Page 7: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

7

PART ONE PART THREE

The Boolean Satisfiability

¬𝐴𝐴 AND 𝐴𝐴

1

0

1

0

0

A

Unsatisfiable

Page 8: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

8

PART ONE PART THREE

The Boolean Satisfiability

(𝑨𝑨𝟏𝟏 AND 𝑨𝑨𝟐𝟐) XOR (𝐴𝐴3 AND ¬𝐴𝐴4) … 𝐴𝐴50

1

Page 9: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

OUTLINE

9

The Boolean Satisfiability K-SAT Probabilistic Algorithm Analysis

Page 10: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

10

PART ONE PART THREE

K-SAT

Literal: (𝑥𝑥, ¬𝑥𝑥) Clause: (𝑥𝑥1 ∨¬𝑥𝑥2∨𝑥𝑥3) Conjunctive Normal Form:

• 𝑥𝑥1∨¬𝑥𝑥2 ∧ ¬𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧¬𝑥𝑥1 • …∨ … ∧ …∨ … ∧...∧ …∨ …

K ≥ 3

Page 11: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

11

PART ONE PART THREE

K-SAT

Example: 3-SAT • 𝑥𝑥1∨ 𝑥𝑥3 ∧ 𝑥𝑥2∨ 𝑥𝑥4 ∧ 𝑥𝑥1∨ 𝑥𝑥4∨ 𝑥𝑥2 ∧ 𝑥𝑥1∨ 𝑥𝑥2

2 2 3 2

1

Page 12: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

OUTLINE

12

The Boolean Satisfiability K-SAT Probabilistic Algorithm Analysis

Page 13: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

13

PART ONE

Probabilistic Algorithm

1 input: a formula in k-CNF with n variables Guess an initial assignment a∈{0,1}n,uniformly at

random Repeat 3n times: If the formula is satisfied by the actual assignment: stop and accept Let C be some clause not being satisfied by the actual assignment Pick one of the ≤k literals in the clause at random and flip its value in the current assignment

Page 14: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

14

Probabilistic Algorithm

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j)

1 for 1 (true) for 0 (false)

Page 15: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

15

Probabilistic Algorithm

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j)

1 for 1 (true) for 0 (false)

Page 16: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

16

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j)

Page 17: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

17

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) a(1) = 1000

Page 18: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

18

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) a(1) = 1000 a(2) = 1001

Page 19: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

19

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) a(1) = 1000 a(2) = 1001 a(3) = 1000

Page 20: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

20

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) a(1) = 1000 a(2) = 1001 a(3) = 1000

Page 21: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

21

Probabilistic Algorithm

1 for 1 (true) for 0 (false)

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) a(1) = 1000 a(2) = 1001 a(3) = 1000 a(4) = 1100, state 0, reached √

Page 22: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

OUTLINE

22

The Boolean Satisfiability K-SAT Probabilistic Algorithm Analysis

Page 23: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

23

NP-complete Problem all known algorithms require superpolynomial time search for an "almost" optimal solution Use randomness to get a faster average running

time, and allow the algorithm to fail with some small probability

Analysis

Page 24: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

24

Suppose: existing satisfying assignment α* Success probability p

Expected independent repetitions 1𝑝𝑝

The probability that we don’t get a satisfying assignment after t repetitions is (1 − 𝑝𝑝)𝑡𝑡≤ 𝑒𝑒−𝑝𝑝𝑡𝑡

Analysis

acceptable

Page 25: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

25

j := number of different bits between α and α * := Hamming distance between α and α *

Analysis

Page 26: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state j) Reach state 0 after 3j steps a(1) = 1000 a(2) = 1001 a(3) = 1000 a(4) = 1100, state 0, reached √

26

Analysis – Intuition in 3-SAT

1 for 1 (true) for 0 (false)

j =2

j =1 j =2 j =1 j =0

Page 27: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

27

the initial assignment α is ramdomly selected by j P 𝑋𝑋 = 𝑗𝑗 = 𝑛𝑛

𝑗𝑗 2−𝑛𝑛

Analysis – Intuition in 3-SAT

Page 28: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

28

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) Initial State: a = 0000 (state 2)

Analysis – Intuition in 3-SAT

2 3 1

𝑥𝑥1, 𝑥𝑥2

23

𝑥𝑥3

13

Page 29: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

29

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) a(1) = 1000 (state 1)

Analysis – Intuition in 3-SAT

1 2 0

𝑥𝑥2

13

𝑥𝑥3, 𝑥𝑥4

23

Page 30: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

30

Example: 𝑥𝑥1∨𝑥𝑥2∨𝑥𝑥3 ∧ 𝑥𝑥2∨𝑥𝑥3 ∨𝑥𝑥4 ∧ ¬𝑥𝑥1∨¬𝑥𝑥4∨𝑥𝑥2 a* = 1100 (state 0) a(2) = 1001 (state 2)

Analysis – Intuition in 3-SAT

2 3 1

𝑥𝑥2

13

𝑥𝑥1, 𝑥𝑥3

23

Page 31: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

31

A clause 𝑥𝑥a∨𝑥𝑥𝑏𝑏∨𝑥𝑥c not satisfied by the assignment α At least one literal needs to be flipped Pr 𝑖𝑖 → 𝑖𝑖 − 1 ≥ 1

3, Pr (𝑖𝑖 → 𝑖𝑖 + 1) ≤ 2

3

Analysis – Intuition in 3-SAT

i i+1 i-1

13

13

13

13

23

23

23

23

Page 32: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

32

𝑃𝑃𝑖𝑖 := possibility of reaching 0 from i, walking ∞ long 𝑃𝑃𝑖𝑖 = 1

3𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1 , 𝑃𝑃0 = 1

Analysis – Intuition in 3-SAT

i i+1 i-1

13

13

13

13

23

23

23

23

Page 33: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

33

𝑃𝑃𝑖𝑖 = 13𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1 (*)

𝑃𝑃𝑖𝑖 = 1 would be a solution to (*), but sadly it’s not true

Analysis – Intuition in 3-SAT

i i+1 i-1

13

13

13

13

23

23

23

23

Page 34: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

34

𝑃𝑃𝑖𝑖 = 13𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1 (*)

𝑃𝑃𝑖𝑖 = 2−𝑖𝑖 is also a solution to (*)

Analysis – Intuition in 3-SAT

i i+1 i-1

13

13

13

13

23

23

23

23

Page 35: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

35

𝑃𝑃𝑖𝑖 = 13𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1 (*)

𝑃𝑃𝑖𝑖 = 2−𝑖𝑖 is a solution to (*) Proof. By Mathematical Induction, when 𝑖𝑖 ≥ 3, 𝑃𝑃𝑖𝑖 = 2−𝑖𝑖, 𝑃𝑃𝑖𝑖−1 = 2−(𝑖𝑖−1), we can get 𝑃𝑃𝑖𝑖+1 = 2−(𝑖𝑖+1) from 𝑃𝑃𝑖𝑖 = 1

3𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1.

When 𝑖𝑖 = 1,2, 𝑃𝑃𝑖𝑖 = 2−𝑖𝑖 also exists. ∎

Analysis – Intuition in 3-SAT

Page 36: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

36

𝑃𝑃𝑖𝑖 = 13𝑃𝑃𝑖𝑖−1 + 2

3𝑃𝑃𝑖𝑖+1 (*)

𝑃𝑃𝑖𝑖 = 2−𝑖𝑖 is a solution to (*) ∎ In fact, that “usually” happens in 3i steps

Analysis – Intuition in 3-SAT

Page 37: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

37

PART ONE

Analysis – in k-SAT

To-do: calculate 𝑃𝑃𝑗𝑗 in k-SAT “Wrong” direction: i step “Right” direction: i+j step (i≤j)

j j+1 j-1 Right Right Right Right

Wrong Wrong Wrong Wrong

Page 38: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

38

PART ONE PART THREE

Analysis – in k-SAT

To-do: calculate 𝑃𝑃𝑗𝑗 in k-SAT At least one literal needs to be flipped in a clause Pr(go wrong direction) ≤ 𝑘𝑘−1

𝑘𝑘

Pr(go right direction) ≥ 1𝑘𝑘

j j+1 j-1 ≥

1𝑘𝑘 ≤

𝑘𝑘 − 1𝑘𝑘

Page 39: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

39

PART ONE PART THREE

Analysis – in k-SAT

To-do: calculate 𝑃𝑃𝑗𝑗 in k-SAT Using binominal coefficient

𝑃𝑃𝑗𝑗 ≥ ∑ 𝑗𝑗+2𝑖𝑖𝑖𝑖

𝑗𝑗𝑖𝑖=0 ∙ 𝑖𝑖

𝑗𝑗+2𝑖𝑖∙ 1

𝑘𝑘

𝑖𝑖+𝑗𝑗∙ 𝑘𝑘−1

𝑘𝑘

𝑖𝑖

~ 1𝑘𝑘−1

𝑗𝑗

Page 40: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

40

PART ONE PART THREE

Analysis – in k-SAT

To-do: calculate overall success possiblity 𝑝𝑝 in k-SAT

P 𝑋𝑋 = 𝑗𝑗 = 𝑛𝑛𝑗𝑗 2−𝑛𝑛

𝑝𝑝 = ∑ P 𝑋𝑋 = 𝑗𝑗 ∗ 𝑝𝑝𝑗𝑗𝑛𝑛𝑗𝑗=0

≥ 12

𝑛𝑛∑ 𝑛𝑛

𝑗𝑗𝑛𝑛𝑗𝑗=0

1𝑘𝑘−1

𝑗𝑗

= 12

1 + 1𝑘𝑘−1

𝑛𝑛

Page 41: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

41

PART ONE PART THREE

Analysis – in k-SAT

To-do: calculate overall success possiblity 𝑝𝑝 in k-SAT

𝑝𝑝 ≥ 12

1 + 1𝑘𝑘−1

𝑛𝑛 , especially 𝑝𝑝 ≥ 3

4

𝑛𝑛 in 3-SAT

Complexity of k-SAT is within a polynomial factor of

2 1 − 1𝑘𝑘

𝑛𝑛, especially (4

3)𝑛𝑛 in 3-SAT

Page 42: Schöning's Random Walk Algorithm for k-SAT - SJTUbasics.sjtu.edu.cn/~dominik/teaching/2016-cs214/... · 2018-09-10 · Schöning's Random Walk Algorithm for k-SAT ... random Repeat

THANKS Q & A