advanced algorithms
play

Advanced Algorithms k -SAT n Boolean variables: x 1 , x 2 ,..., - PowerPoint PPT Presentation

Advanced Algorithms k -SAT n Boolean variables: x 1 , x 2 ,..., x n {true,false} conjunctive normal form: k -CNF = C 1 C 2 C m Is satisfiable? m clauses: C 1 , C 2 ,..., C m


  1. Advanced Algorithms ���� ���

  2. k -SAT • n Boolean variables: x 1 , x 2 ,..., x n ∈ {true,false} • conjunctive normal form: k -CNF φ = C 1 ∧ C 2 ∧ ··· ∧ C m “Is φ satisfiable?” • m clauses: C 1 , C 2 ,..., C m • each clause C i = ` i 1 ∨ ` i 2 ∨ ··· ∨ ` i k is a disjunction of exact k literals • each literal: for some r ` j ∈ { x r , ¬ x r } • degree d : each clause shares variables with at most d other clauses

  3. φ : k -CNF of max degree d Theorem φ is always satisfiable d ≤ 2 k − 2 uniform random assignment X 1 , X 2 , . . . , X n for clause C i , bad event A i : C i is not satisfied � ⇥ n ⇤ A i Pr > 0 d ≤ 2 k − 2 i = 1

  4. Lovász Sieve • Bad events: A 1 , A 2 ,..., A n • None of the bad events occurs: � ⇥ n ⇤ A i Pr i = 1 • The probabilistic method: being good is possible � ⇥ n ⇤ A i Pr > 0 i = 1

  5. events: A 1 , A 2 , ... , A n dependency graph: D ( V , E ) V = { 1, 2, ..., n } A i and A j are dependent ij ∈ E d : max degree of dependency graph A 2 A 1 ( X 1 , X 4 ) A 4 ( X 4 ) A 1 A 2 ( X 1 , X 2 ) A 3 A 5 ( X 3 ) A 3 ( X 2 , X 3 ) A 5 A 4 X 1 ,..., X 4 mutually independent

  6. events: A 1 , A 2 , ... , A n d : max degree of dependency graph Lovász Local Lemma � ⇥ n • ∀ i , Pr[ A i ] ≤ p ⇤ A i Pr > 0 • e p ( d + 1) ≤ 1 i = 1 General Lovász Local Lemma ∃ x 1 , . . . , x n ∈ [0 , 1) " n # n ^ Y Pr (1 − x i ) A i ≥ Y ∀ i, Pr[ A i ] ≤ x i (1 − x j ) i =1 i =1 j ∼ i

  7. LLL for k -SAT φ : k -CNF of max degree d Theorem ∃ satisfying assignment for φ d ≤ 2 k − 2 uniform random assignment X 1 , X 2 , . . . , X n for clause C i , bad event A i : C i is not satisfied � ⇥ n LLL: ⇤ e ( d + 1) ≤ 2 k A i Pr > 0 i = 1

  8. Algorithmic LLL φ : k -CNF of max degree d with m clauses on n variables Theorem ∃ satisfying assignment for φ d ≤ 2 k − 2 Theorem ( Moser, 2009 ) satisfying assignment can be d < 2 k − 3 found in O( n + km log m ) w.h.p.

  9. φ : k -CNF of max degree d with m clauses on n variables Solve ( φ ) pick a random assignment x 1 , x 2 , ... , x n ; while ∃ unsatisfied clause C Fix ( C ) ; Fix ( C ) replace variables in C with random values; while ∃ unsatisfied clause D overlapping with C Fix ( D ) ;

  10. φ : k -CNF of max degree d with m clauses on n variables Solve ( φ ) Fix ( C ) Pick a random assignment replace variables in C with random values; x 1 , x 2 , ... , x n ; while ∃ unsatisfied clause D overlapping with C while ∃ unsatisfied clause C Fix ( D ) ; Fix ( C ) ; at top-level: Observation : A clause C is satisfied and will keep satisfied once it has been fixed. # of top-level calls to Fix( C ) : ≤ m (# of clauses) total # of calls to Fix( C ) (including recursive calls): t

  11. φ : k -CNF of max degree d with m clauses on n variables Solve ( φ ) Fix ( C ) Pick a random assignment replace variables in C with random values; x 1 , x 2 , ... , x n ; while ∃ unsatisfied clause D overlapping with C while ∃ unsatisfied clause C Fix ( D ) ; Fix ( C ) ; ≤ m recursion trees total # nodes : t total # of random bits: (assigned bits) n+tk Observation : Fix( C ) is called assignment of C is uniquely determined

  12. ≤ m recursion trees total # nodes : t total # of random bits: (assigned bits) n+tk the sequence of random bits can be recovered from : final assignment: n bits + recursion trees: bits  m d log 2 m e + t (log 2 d + O (1)) for each recursion tree: d log 2 m e bits root: each internal node: ≤ log 2 d + O (1) bits

  13. ≤ m recursion trees total # nodes : t total # of random bits: (assigned bits) n+tk the sequence of random bits is encoded to :  n + m d log 2 m e + t (log 2 d + 3) bits Incompressibility Theorem ( Kolmogorov ) N uniform random bits cannot be encoded to substantially less than N bits.

  14. ≤ m recursion trees total # nodes : t total # of random bits: (assigned bits) n+tk the sequence of random bits is encoded to :  n + m d log 2 m e + t (log 2 d + 3) bits Incompressibility Theorem ( Kolmogorov ) N uniform random bits cannot be encoded to less than N - l bits with probability 1-O(2 - l ) .

  15. ≤ m recursion trees total # nodes : t total # of random bits: (assigned bits) n+tk the sequence of random bits is encoded to : bits  n + m d log 2 m e + t (log 2 d + c ) whp t ( k � c � log 2 d )  m d log 2 m e + log n t  m d log 2 m e + log n when d < 2 k − c k � c � log 2 d total running time: n+tk = O( n + km log m )

  16. Algorithmic LLL φ : k -CNF of max degree d with m clauses on n variables φ = C 1 ∧ C 2 ∧ ··· ∧ C m Theorem ( Moser, 2009 ) satisfying assignment can be d < 2 k − c found in O( n + km log m ) whp Solve ( φ ) Fix ( C ) Pick a random assignment replace variables in C with random values; x 1 , x 2 , ... , x n ; while ∃ unsatisfied clause D overlapping with C while ∃ unsatisfied clause C Fix ( D ) ; Fix ( C ) ;

  17. events: A 1 , A 2 , ... , A n d : max degree of dependency graph Lovász Local Lemma � ⇥ n • ∀ i , Pr[ A i ] ≤ p ⇤ A i Pr > 0 • e p ( d + 1) ≤ 1 i = 1 General Lovász Local Lemma ∃ x 1 , . . . , x n ∈ [0 , 1) " n # n ^ Y Pr (1 − x i ) A i ≥ Y ∀ i, Pr[ A i ] ≤ x i (1 − x j ) i =1 i =1 j ∼ i

  18. Constraint Satisfaction Problem • variables: x 1 , x 2 , ..., x n ∈ D (domain) • constraints: C 1 , C 2 , ..., C m • where C i ( x i 1 , x i 2 , . . . ) ∈ { true , false } • CSP solution: an assignment of variables satisfying all constraints • examples: SAT, graph colorability, ... • existence : When does a solution exist? • search : How to find a solution?

  19. The Probabilistic Method CSP C 1 , C 2 , ..., C m defined on x 1 , x 2 , ..., x n • sampling random values of x 1 , x 2 , ..., x n • Bad event A i : constraint C i is violated " # m • None of the bad events occurs with prob: ^ A i Pr i • The probabilistic method: being good is possible " # m ^ Pr A i > 0 i = 1

  20. events: A 1 , A 2 , ... , A n d : max degree of dependency graph Lovász Local Lemma � ⇥ n • ∀ i , Pr[ A i ] ≤ p ⇤ A i Pr > 0 • e p ( d + 1) ≤ 1 i = 1 General Lovász Local Lemma ∃ x 1 , . . . , x n ∈ [0 , 1) " n # n ^ Y Pr (1 − x i ) A i ≥ Y ∀ i, Pr[ A i ] ≤ x i (1 − x j ) i =1 i =1 j ∼ i

  21. mutually independent random variables: X ∈ X bad events: A ∈ A defined on variables in X vbl ( A ) ⊆ X : set of variables on which A is defined neighborhood: Γ ( A ) = { B ∈ A | B ≠ A and vbl ( A ) ∩ vbl ( B ) ≠ ∅ } inclusive neighborhood: Γ + ( A ) = Γ ( A ) ∪ { A } “events that are dependent with A , excluding/including A itself” Lovász Local Lemma (general) ∃ α : A → [0 , 1) " ^ # Y ∀ A ∈ A : Pr (1 − α A ) A ≥ Y Pr[ A ] ≤ α A (1 − α B ) A ∈ A A ∈ A > 0 B ∈ Γ ( A )

  22. mutually independent random variables: X ∈ X bad events: A ∈ A defined on variables in X vbl ( A ) ⊆ X : set of variables on which A is defined neighborhood: Γ ( A ) = { B ∈ A | B ≠ A and vbl ( A ) ∩ vbl ( B ) ≠ ∅ } inclusive neighborhood: Γ + ( A ) = Γ ( A ) ∪ { A } “events that are dependent with A , excluding/including A itself” Lovász Local Lemma (general) ∃ α : A → [0 , 1) ∃ values of variables in X ∀ A ∈ A : avoiding all bad events Y Pr[ A ] ≤ α A (1 − α B ) A ∈ A simultaneously. B ∈ Γ ( A )

  23. Algorithmic LLL bad events A ∈ A defined on mutually independent random variables X ∈ X vbl ( A ) : set of variables on which A is defined neighborhood Γ ( A ) and inclusive neighborhood Γ + ( A ) Assumption: I. We can efficiently sample an independent evaluation of every random variable X ∈ X . II. We can efficiently check the violation of every event A ∈ A . RandomSolver : sample all X ∈ X ; while ∃ a non-violated bad event A ∈ A : resample all X ∈ vbl( A );

  24. bad events A ∈ A defined on mutually independent random variables X ∈ X vbl ( A ) : set of variables on which A is defined neighborhood Γ ( A ) and inclusive neighborhood Γ + ( A ) RandomSolver : sample all X ∈ X ; while ∃ a non-violated bad event A ∈ A : resample all X ∈ vbl( A ); Moser - Tardos 2010: RandomSolver finds values of ∃ α : A → [0 , 1) all X ∈ X avoiding all A ∈ A ∀ A ∈ A : within expected α A X Y Pr[ A ] ≤ α A (1 − α B ) 1 − α A resamples. A ∈ A B ∈ Γ ( A )

  25. bad events A ∈ A defined on mutually independent random variables X ∈ X vbl ( A ) : set of variables on which A is defined neighborhood Γ ( A ) and inclusive neighborhood Γ + ( A ) RandomSolver : sample all X ∈ X ; while ∃ a non-violated bad event A ∈ A : resample all X ∈ vbl( A ); Moser - Tardos 2010: • ∀ A ∈ A , Pr[ A ] ≤ p RandomSolver finds values of all X ∈ X violating all A ∈ A • e p ( d + 1) ≤ 1 within expected | A | / d resamples. where d =max A | Γ ( A )|

  26. k -SAT φ : k -CNF of max degree d with m clauses on n variables RandomSolver : pick a random assignment x 1 , x 2 , ... , x n ; while ∃ an unsatisfied clause C : replace variables in C with random values; RandomSolver returns a satisfying assignment within d ≤ 2 k − 2 expected O( n + km / d ) time ( e( d +1) ≤ 2 k )

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend