1 / 15

Solving Difficult SAT Instances Using Greedy Clique Decomposition

Solving Difficult SAT Instances Using Greedy Clique Decomposition. Pavel Surynek pavel.surynek@mff.cuni.cz http://ktiml.mff.cuni.cz/~surynek Faculty of Mathematics and Physics Charles University , Prague Czech Republic. What is it about ? (outline). Solving difficult SAT instances

nadinee
Download Presentation

Solving Difficult SAT Instances Using Greedy Clique Decomposition

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. SolvingDifficult SAT Instances Using Greedy Clique Decomposition Pavel Surynek pavel.surynek@mff.cuni.cz http://ktiml.mff.cuni.cz/~surynek Faculty of Mathematicsand PhysicsCharles University, PragueCzech Republic

  2. What is it about ? (outline) • Solving difficult SAT instances • difficult for today’s SAT solvers • Consistency technique • formula interpreted as a graph • searching for structures in the graph - complete sub-graphs (cliques) • simplificationordecisionof the input formula • Comparison with state-of-the-art SAT solving systems Pavel Surynek, SARA 2007

  3. Difficult SAT instances • Difficult instances for today’s SAT solving systems • impossible to (heuristically) guess the solution • heuristics do not succeed ►► search • Typical example: unsatisfiable SAT instances encoding Dirichlet’s box principle (Pigeon-hole principle) • Valuations of variables = certificate(small witness for satisfiability) • Unsatisfiability - no (small) witness Pavel Surynek, SARA 2007

  4. Ourapproach • Input - Boolean formula in CNF • Interpret as a graph of conflicts • vertices = literals • edges = conflicts between literals • example:x and ¬x are in conflict (cannot be satisfied both) • Apply consistency • Singleton arc-consistency ►► new conflicts • Consistency based on conflict graph • Output - equivalent (simpler) formula or the answer “unsatisfiable“ Pavel Surynek, SARA 2007

  5. Details of the consistency • Make the graph of conflicts denser • apply singleton arc consistency • discover hidden conflicts between literals • denser conflict graph = better for the subsequent step • (Greedily) find cliques in conflict graph • at most one literal from a clique can be satisfied • contribution of literalx...c(x) = number of clauses containing x • contribution of cliqueC...c(C) = maxxC c(x) • ∑Ccliquesc(C)<number of clauses All the cliques together do not contribute enough to satisfy the input formula ►► the input formula is unsatisfiable Pavel Surynek, SARA 2007

  6. Clique consistency • Generalization of “∑Ccliquesc(C)<#clauses” • Choose asub-formula B = subset of clauses • contribution of literalx tosub-formulaB ... ...c(x,B)=numberof clauses ofBcontaining x • contributionof cliqueCtosub-formula B ... ...c(C,B) = maxxCc(x,B) • when∑Ccliquesc(C,B)<number of clauses in B ►► B is unsatisfiable ⇒ input formula is unsatisfiable • Singleton approach...literal x inconsistent • ∑Ccliques∌xc(C,B)<(#clauses of B)-c(x,B) Pavel Surynek, SARA 2007

  7. Clique consistency (example) • Inconsistency (basic case - not singleton):“∑Ccliquesc(C,B)<#clauses in B” • example: clique C1={a,b,c} clique C2={p,q,r} • ( {a,b,c} are pair-wise conflicting {p,q,r} are pair-wise conflicting)sub-formulaB = (a v p) & (b v q) & (c v r) c(C1,B)=1; c(C2,B)=1 • ∑Ccliquesc(C,B) = 2; #clauses in B = 3 • The original formula has no satisfying valuation. Pavel Surynek, SARA 2007

  8. How does it look like (1) • „Insert 7 pigeonsinto 6 holes“ Pavel Surynek, SARA 2007

  9. How does it look like (2) • After inferringnew conflicts - SAC Pavel Surynek, SARA 2007

  10. How does it look like (3) • After enforcing clique consistency:UNSAT Pavel Surynek, SARA 2007

  11. Complexity • Construction of graph of conflicts • polynomial • Singleton arc-consistency • polynomial (however, too time consuming for large real-life problems) • Clique consistency with respect to a single sub-formula • polynomial • Problem: clique consistency with respect to multiple sub-formulas (we cannot try all the sub-formulas) Pavel Surynek, SARA 2007

  12. winnersinSAT Competition2005andSAT Race 2006 Competitivecomparison • Tested SAT solving systems • MiniSAT • zChaff • HaifaSAT • selection criterion: source code available • Testing instances (by Fadi Aloul) • Pigeon Hole Principle • Urquhart (resists resolution) • Field Programmable Gate Array Pavel Surynek, SARA 2007

  13. Experimental results Opteron 1600 MHz, Mandriva Linux 10.1 Pavel Surynek, SARA 2007

  14. Future improvements • Examine “∑Ccliquesc(C,B)<#clauses in B” • much information may be lost in the expression ∑Ccliquesc(C,B) • example: clique C1={a,b} clique C2={p,q} clique C3={x,y}sub-formulaB = (a v p) & (a v q) & (b v p) & x & yc(C1,B)=2; c(C2,B)=2; c(C3,B)=1 • ∑Ccliquesc(C,B) = 5; #clauses in B = 5 • c(C1,B)+c(C2,B) ≤ 3 • (c(C1,B)+c(C2,B))+c(C3,B)=3+1=4 Pavel Surynek, SARA 2007

  15. Summary andconclusion • Processing of SAT instance using clique consistency • formula interpreted as agraph of conflicts • greedy detection of cliques • inference of new conflicts • output: equivalent formula or decision • Experiments • speed-upin order of magnitudes compared to state-of-the-art SAT solvers (on difficult problems) Pavel Surynek, SARA 2007

More Related