Symmetric Explanation Learning: Effective Dynamic Symmetry Handling for SAT

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10491)

Abstract

The presence of symmetry in Boolean satisfiability (SAT) problem instances often poses challenges to solvers. Currently, the most effective approach to handle symmetry is by static symmetry breaking, which generates asymmetric constraints to add to the instance. An alternative way is to handle symmetry dynamically during solving. As modern SAT solvers can be viewed as propositional proof generators, adding a symmetry rule in a solver’s proof system would be a straightforward technique to handle symmetry dynamically. However, none of these proposed symmetrical learning techniques are competitive to static symmetry breaking. In this paper, we present symmetric explanation learning, a form of symmetrical learning based on learning symmetric images of explanation clauses for unit propagations performed during search. A key idea is that these symmetric clauses are only learned when they would restrict the current search state, i.e., when they are unit or conflicting. We further provide a theoretical discussion on symmetric explanation learning and a working implementation in a state-of-the-art SAT solver. We also present extensive experimental results indicating that symmetric explanation learning is the first symmetrical learning scheme competitive with static symmetry breaking.

Keywords

Boolean satisfiability Symmetry Proof theory Symmetric learning Dynamic symmetry breaking 

References

  1. 1.
    Aloul, F., Ramani, A., Markov, I., Sakallah, K.: Solving difficult SAT instances in the presence of symmetry. In: 39th Design Automation Conference, 2002 Proceedings, pp. 731–736 (2002)Google Scholar
  2. 2.
    Aloul, F.A., Ramani, A., Markov, I.L., Sakallah, K.A.: Dynamic symmetry-breaking for boolean satisfiability. Ann. Math. Artif. Intell. 57(1), 59–73 (2009)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Aloul, F.A., Sakallah, K.A., Markov, I.L.: Efficient symmetry breaking for boolean satisfiability. IEEE Trans. Comput. 55(5), 549–558 (2006)CrossRefGoogle Scholar
  4. 4.
    Audemard, G., Simon, L.: Predicting learnt clauses quality in modern SAT solvers. In: Boutilier, C. (ed.) IJCAI, pp. 399–404 (2009)Google Scholar
  5. 5.
    Benhamou, B., Nabhani, T., Ostrowski, R., Saïdi, M.R.: Dynamic symmetry breaking in the satisfiability problem. In: Proceedings of the 16th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning, LPAR-16, Dakar, Senegal, 25 April –1 May 2010Google Scholar
  6. 6.
    Benhamou, B., Nabhani, T., Ostrowski, R., Saïdi, M.R.: Enhancing clause learning by symmetry in SAT solvers. In: Proceedings of the 2010 22nd IEEE International Conference on Tools with Artificial Intelligence, ICTAI 2010, vol. 01, pp. 329–335 (2010). http://dx.doi.org/10.1109/ICTAI.2010.55
  7. 7.
    Benhamou, B., Saïs, L.: Tractability through symmetries in propositional calculus. J. Autom. Reason. 12(1), 89–102 (1994). http://dx.doi.org/10.1007/BF00881844 MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Biere, A.: Preprocessing and inprocessing techniques in SAT. In: Eder, K., Lourenço, J., Shehory, O. (eds.) HVC 2011. LNCS, vol. 7261, p. 1. Springer, Heidelberg (2012). doi:10.1007/978-3-642-34188-5_1 CrossRefGoogle Scholar
  9. 9.
    Birnbaum, E., Lozinskii, E.L.: The good old Davis-Putnam procedure helps counting models. J. Artif. Intell. Res. 10, 457–477 (1999)MathSciNetMATHGoogle Scholar
  10. 10.
    Crawford, J.M., Ginsberg, M.L., Luks, E.M., Roy, A.: Symmetry-breaking predicates for search problems. In: Principles of Knowledge Representation and Reasoning, pp. 148–159. Morgan Kaufmann (1996)Google Scholar
  11. 11.
    Devriendt, J.: Binaries, experimental results and benchmark instances for “symmetric explanation learning: effective dynamic symmetry handling for SAT”. bitbucket.org/krr/sat_symmetry_experiments
  12. 12.
    Devriendt, J.: An implementation of symmetric explanation learning in Glucose on Bitbucket. bitbucket.org/krr/glucose-sel
  13. 13.
    Devriendt, J.: An implementation of symmetry propagation in MiniSat on Github. github.com/JoD/minisat-SPFS
  14. 14.
    Devriendt, J., Bogaerts, B., Bruynooghe, M., Denecker, M.: Improved static symmetry breaking for SAT. In: Creignou, N., Le Berre, D. (eds.) SAT 2016. LNCS, vol. 9710, pp. 104–122. Springer, Cham (2016). doi:10.1007/978-3-319-40970-2_8 Google Scholar
  15. 15.
    Devriendt, J., Bogaerts, B., De Cat, B., Denecker, M., Mears, C.: Symmetry propagation: improved dynamic symmetry breaking in SAT. In: IEEE 24th International Conference on Tools with Artificial Intelligence, ICTAI 2012, Athens, Greece, pp. 49–56. IEEE Computer Society, 7–9 November 2012. http://dx.doi.org/10.1109/ICTAI.2012.16
  16. 16.
    Eén, N., Biere, A.: Effective preprocessing in SAT through variable and clause elimination. In: Bacchus, F., Walsh, T. (eds.) SAT 2005. LNCS, vol. 3569, pp. 61–75. Springer, Heidelberg (2005). doi:10.1007/11499107_5 CrossRefGoogle Scholar
  17. 17.
    Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004). doi:10.1007/978-3-540-24605-3_37 CrossRefGoogle Scholar
  18. 18.
    Gent, I.P., Smith, B.M.: Symmetry breaking in constraint programming. In: Proceedings of ECAI-2000, pp. 599–603. IOS Press (2000)Google Scholar
  19. 19.
    Haken, A.: The intractability of resolution. Theor. Comput. Sci. 39, 297–308 (1985). Third Conference on Foundations of Software Technology and Theoretical Computer Science. http://www.sciencedirect.com/science/article/pii/0304397585901446 MathSciNetCrossRefMATHGoogle Scholar
  20. 20.
    Heule, M., Keur, A., Maaren, H.V., Stevens, C., Voortman, M.: CNF symmetry breaking options in conflict driven SAT solving (2005)Google Scholar
  21. 21.
    Junttila, T., Kaski, P.: Engineering an efficient canonical labeling tool for large and sparse graphs. In: Applegate, D., Brodal, G.S., Panario, D., Sedgewick, R. (eds.) Proceedings of the Ninth Workshop on Algorithm Engineering and Experiments and the Fourth Workshop on Analytic Algorithms and Combinatorics, pp. 135–149. SIAM (2007)Google Scholar
  22. 22.
    Katebi, H., Sakallah, K.A., Markov, I.L.: Symmetry and satisfiability: an update. In: Strichman, O., Szeider, S. (eds.) SAT 2010. LNCS, vol. 6175, pp. 113–127. Springer, Heidelberg (2010). doi:10.1007/978-3-642-14186-7_11 CrossRefGoogle Scholar
  23. 23.
    Krishnamurthy, B.: Short proofs for tricky formulas. Acta Inf. 22(3), 253–275 (1985). http://dl.acm.org/citation.cfm?id=4336.4338 MathSciNetCrossRefMATHGoogle Scholar
  24. 24.
    Marques-Silva, J.P., Sakallah, K.A.: GRASP: a search algorithm for propositional satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)MathSciNetCrossRefGoogle Scholar
  25. 25.
    McKay, B.D., Piperno, A.: Practical graph isomorphism, II. J. Symbolic Comput. 60, 94–112 (2014). http://www.sciencedirect.com/science/article/pii/S0747717113001193 MathSciNetCrossRefMATHGoogle Scholar
  26. 26.
    Mears, C., García de la Banda, M., Demoen, B., Wallace, M.: Lightweight dynamic symmetry breaking. Constraints 19(3), 195–242 (2014). http://dx.doi.org/10.1007/s10601-013-9154-2 MathSciNetCrossRefMATHGoogle Scholar
  27. 27.
    Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: DAC 2001, pp. 530–535. ACM (2001)Google Scholar
  28. 28.
    Pipatsrisawat, K., Darwiche, A.: On the power of clause-learning SAT solvers as resolution engines. Artif. Intell. 175(2), 512–525 (2011). http://dx.doi.org/10.1016/j.artint.2010.10.002 MathSciNetCrossRefMATHGoogle Scholar
  29. 29.
    Sabharwal, A.: SymChaff: exploiting symmetry in a structure-aware satisfiability solver. Constraints 14(4), 478–505 (2009). http://dx.doi.org/10.1007/s10601-008-9060-1 MathSciNetCrossRefMATHGoogle Scholar
  30. 30.
    Schaafsma, B., van Heule, M.J.H., Maaren, H.: Dynamic symmetry breaking by simulating zykov contraction. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 223–236. Springer, Heidelberg (2009). doi:10.1007/978-3-642-02777-2_22 CrossRefGoogle Scholar
  31. 31.
    Sörensson, N., Eén, N.: MiniSat v1.13 - a Sat solver with conflict-clause minimization. 2005. sat-2005 poster. Technical report (2005)Google Scholar
  32. 32.
    Trick, M.: Network resources for coloring a graph (1994). mat.gsia.cmu.edu/COLOR/color.html
  33. 33.
    Walsh, T.: Symmetry breaking constraints: Recent results. CoRR abs/1204.3348 (2012)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Department of Computer ScienceKU LeuvenHeverleeBelgium

Personalised recommendations