the lov sz local lemma and satisfiability
play

The Lovsz Local Lemma and Satisfiability Algorithmic Aspects Robin - PowerPoint PPT Presentation

Introduction Proof Further work The Lovsz Local Lemma and Satisfiability Algorithmic Aspects Robin Moser ETH Zurich China Theory Week - September 2010 Robin Moser The Lovsz Local Lemma and Satisfiability Introduction Proof Problem


  1. Introduction Proof Further work The Lovász Local Lemma and Satisfiability Algorithmic Aspects Robin Moser ETH Zurich China Theory Week - September 2010 Robin Moser The Lovász Local Lemma and Satisfiability

  2. Introduction Proof Problem overview Further work 1 Introduction Problem overview 2 Proof Algorithm The proof 3 Further work Robin Moser The Lovász Local Lemma and Satisfiability

  3. Introduction Proof Problem overview Further work Setting: the k -SAT problem a k -CNF formula: F = ( x 1 ∨ ¯ x 2 ∨ . . . ∨ ¯ ∧ (¯ x 3 ∨ x 7 ∨ . . . ∨ x 19 ) ∧ . . . x 19 ) � �� � � �� � k k A conjunction of disjunctions ( clauses ), each composed of k literals . Robin Moser The Lovász Local Lemma and Satisfiability

  4. Introduction Proof Problem overview Further work Setting: the k -SAT problem a k -CNF formula: F = ( x 1 ∨ ¯ x 2 ∨ . . . ∨ ¯ ∧ (¯ x 3 ∨ x 7 ∨ . . . ∨ x 19 ) ∧ . . . x 19 ) � �� � � �� � k k A conjunction of disjunctions ( clauses ), each composed of k literals . Is there a satisfying assignment of truth values? Which one? Robin Moser The Lovász Local Lemma and Satisfiability

  5. Introduction Proof Problem overview Further work Setting: the k -SAT problem a k -CNF formula: F = ( x 1 ∨ ¯ x 2 ∨ . . . ∨ ¯ ∧ (¯ x 3 ∨ x 7 ∨ . . . ∨ x 19 ) ∧ . . . x 19 ) � �� � � �� � k k A conjunction of disjunctions ( clauses ), each composed of k literals . Is there a satisfying assignment of truth values? Which one? Notation: n : number of variables Robin Moser The Lovász Local Lemma and Satisfiability

  6. Introduction Proof Problem overview Further work Setting: the k -SAT problem a k -CNF formula: F = ( x 1 ∨ ¯ x 2 ∨ . . . ∨ ¯ ∧ (¯ x 3 ∨ x 7 ∨ . . . ∨ x 19 ) ∧ . . . x 19 ) � �� � � �� � k k A conjunction of disjunctions ( clauses ), each composed of k literals . Is there a satisfying assignment of truth values? Which one? Notation: n : number of variables m : number of clauses Robin Moser The Lovász Local Lemma and Satisfiability

  7. Introduction Proof Problem overview Further work Setting: the k -SAT problem a k -CNF formula: F = ( x 1 ∨ ¯ x 2 ∨ . . . ∨ ¯ ∧ (¯ x 3 ∨ x 7 ∨ . . . ∨ x 19 ) ∧ . . . x 19 ) � �� � � �� � k k A conjunction of disjunctions ( clauses ), each composed of k literals . Is there a satisfying assignment of truth values? Which one? Notation: n : number of variables m : number of clauses vbl ( C ) : the set of variables occurring in clause C Robin Moser The Lovász Local Lemma and Satisfiability

  8. Introduction Proof Problem overview Further work A simple subclass Neighbourhood of a clause C ∈ F : Γ( C ) := { D ∈ F | D � = C , vbl ( C ) ∩ vbl ( D ) � = ∅ } Robin Moser The Lovász Local Lemma and Satisfiability

  9. Introduction Proof Problem overview Further work A simple subclass Neighbourhood of a clause C ∈ F : Γ( C ) := { D ∈ F | D � = C , vbl ( C ) ∩ vbl ( D ) � = ∅ } Inclusive neighbourhood : Γ + ( C ) := Γ( C ) ∪ { C } Robin Moser The Lovász Local Lemma and Satisfiability

  10. Introduction Proof Problem overview Further work A simple subclass Neighbourhood of a clause C ∈ F : Γ( C ) := { D ∈ F | D � = C , vbl ( C ) ∩ vbl ( D ) � = ∅ } Inclusive neighbourhood : Γ + ( C ) := Γ( C ) ∪ { C } Theorem (Erdös, Lovász ’75) Let F be any k-CNF formula. If each C ∈ F has | Γ + ( C ) | ≤ 2 k / e, then F admits a satisfying assignment. Robin Moser The Lovász Local Lemma and Satisfiability

  11. Introduction Proof Problem overview Further work A simple subclass Neighbourhood of a clause C ∈ F : Γ( C ) := { D ∈ F | D � = C , vbl ( C ) ∩ vbl ( D ) � = ∅ } Inclusive neighbourhood : Γ + ( C ) := Γ( C ) ∪ { C } Theorem (Erdös, Lovász ’75) Let F be any k-CNF formula. If each C ∈ F has | Γ + ( C ) | ≤ 2 k / e, then F admits a satisfying assignment. classical proof is non-constructive Robin Moser The Lovász Local Lemma and Satisfiability

  12. Introduction Proof Problem overview Further work A simple subclass Neighbourhood of a clause C ∈ F : Γ( C ) := { D ∈ F | D � = C , vbl ( C ) ∩ vbl ( D ) � = ∅ } Inclusive neighbourhood : Γ + ( C ) := Γ( C ) ∪ { C } Theorem (Erdös, Lovász ’75) Let F be any k-CNF formula. If each C ∈ F has | Γ + ( C ) | ≤ 2 k / e, then F admits a satisfying assignment. classical proof is non-constructive Q: can we find a satisfying assignment? Robin Moser The Lovász Local Lemma and Satisfiability

  13. Introduction Proof Problem overview Further work History Previous approaches to the problem: Beck, 1991: for neighbourhoods up to 2 k / 48 Robin Moser The Lovász Local Lemma and Satisfiability

  14. Introduction Proof Problem overview Further work History Previous approaches to the problem: Beck, 1991: for neighbourhoods up to 2 k / 48 Alon, 1991: for neighbourhoods up to 2 k / 8 Robin Moser The Lovász Local Lemma and Satisfiability

  15. Introduction Proof Problem overview Further work History Previous approaches to the problem: Beck, 1991: for neighbourhoods up to 2 k / 48 Alon, 1991: for neighbourhoods up to 2 k / 8 Srinivasan, 2008: for neighbourhoods up to 2 k / 4 Robin Moser The Lovász Local Lemma and Satisfiability

  16. Introduction Proof Problem overview Further work History Previous approaches to the problem: Beck, 1991: for neighbourhoods up to 2 k / 48 Alon, 1991: for neighbourhoods up to 2 k / 8 Srinivasan, 2008: for neighbourhoods up to 2 k / 4 M, 2008: for neighbourhoods up to 2 k / 2 Robin Moser The Lovász Local Lemma and Satisfiability

  17. Introduction Proof Problem overview Further work History Previous approaches to the problem: Beck, 1991: for neighbourhoods up to 2 k / 48 Alon, 1991: for neighbourhoods up to 2 k / 8 Srinivasan, 2008: for neighbourhoods up to 2 k / 4 M, 2008: for neighbourhoods up to 2 k / 2 Theorem There exists a randomized algorithm which, given a k-CNF formula F with ∀ C ∈ F : | Γ + ( C ) | ≤ 2 k − 3 , finds a satisfying assignment for F in expected polynomial time. Robin Moser The Lovász Local Lemma and Satisfiability

  18. Introduction Algorithm Proof The proof Further work Algorithm solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C locally_correct( C ) Robin Moser The Lovász Local Lemma and Satisfiability

  19. Introduction Algorithm Proof The proof Further work Algorithm solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) Robin Moser The Lovász Local Lemma and Satisfiability

  20. Introduction Algorithm Proof The proof Further work Algorithm solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) // post-condition: strictly fewer violated clauses Robin Moser The Lovász Local Lemma and Satisfiability

  21. Introduction Algorithm Proof The proof Further work Algorithm solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) while( ∃ D ∈ Γ + ( C ) : D violated) pick lexicographically first such D locally_correct( D ) // post-condition: strictly fewer violated clauses Robin Moser The Lovász Local Lemma and Satisfiability

  22. Introduction Algorithm Proof The proof Further work Algorithm solve(F): start with a random assignment while( ∃ C ∈ F : C violated) // repeats <= m times pick lexicographically first such C locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) while( ∃ D ∈ Γ + ( C ) : D violated) pick lexicographically first such D locally_correct( D ) // post-condition: strictly fewer violated clauses Robin Moser The Lovász Local Lemma and Satisfiability

  23. Introduction Algorithm Proof The proof Further work Logging the Program Execution solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) while( ∃ D ∈ Γ + ( C ) : D violated) pick lexicographically first such D locally_correct( D ) Robin Moser The Lovász Local Lemma and Satisfiability

  24. Introduction Algorithm Proof The proof Further work Logging the Program Execution solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C log(“new recursion for“ + index(C)) locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) while( ∃ D ∈ Γ + ( C ) : D violated) pick lexicographically first such D locally_correct( D ) Robin Moser The Lovász Local Lemma and Satisfiability

  25. Introduction Algorithm Proof The proof Further work Logging the Program Execution solve(F): start with a random assignment while( ∃ C ∈ F : C violated) pick lexicographically first such C log(“new recursion for“ + index(C)) locally_correct( C ) locally_correct(C): resample new values for vbl ( C ) while( ∃ D ∈ Γ + ( C ) : D violated) pick lexicographically first such D log(–>“next clause“ + relative_index(D,C)) locally_correct( D ) Robin Moser The Lovász Local Lemma and Satisfiability

Recommend


More recommend