Advertisement

Improved Static Symmetry Breaking for SAT

  • Jo Devriendt
  • Bart Bogaerts
  • Maurice Bruynooghe
  • Marc Denecker
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9710)

Abstract

An effective SAT preprocessing technique is the construction of symmetry breaking formulas: auxiliary clauses that guide a SAT solver away from needless exploration of symmetric subproblems. However, during the past decade, state-of-the-art SAT solvers rarely incorporated symmetry breaking. This suggests that the reduction of the search space does not outweigh the overhead incurred by detecting symmetry and constructing symmetry breaking formulas. We investigate three methods to construct more effective symmetry breaking formulas. The first method simply improves the encoding of symmetry breaking formulas. The second detects special symmetry subgroups, for which complete symmetry breaking formulas exist. The third infers binary symmetry breaking clauses for a symmetry group as a whole rather than longer clauses for individual symmetries. We implement these methods in a symmetry breaking preprocessor, and verify their effectiveness on both hand-picked problems as well as the 2014 SAT competition benchmark set. Our experiments indicate that our symmetry breaking preprocessor improves the current state-of-the-art in static symmetry breaking for SAT and has a sufficiently low overhead to improve the performance of modern SAT solvers on hard combinatorial instances.

Notes

Acknowledgement

This research was supported by the project GOA 13/010 Research Fund KU Leuven and projects G.0489.10, G.0357.12 and G.0922.13 of FWO (Research Foundation - Flanders). Bart Bogaerts is supported by the Finnish Center of Excellence in Computational Inference Research (COIN) funded by the Academy of Finland (grant #251170).

References

  1. 1.
    Aloul, F., Ramani, A., Markov, I., Sakallah, K.: Solving difficult SAT instances in the presence of symmetry. In: Proceedings of the 39th Design Automation Conference, 2002, pp. 731–736 (2002)Google Scholar
  2. 2.
    Aloul, F.A., Markov, I.L., Sakallah, K.A.: Shatter: efficient symmetry-breaking for boolean satisfiability. In: Design Automation Conference, pp. 836–839 (2003)Google 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.
    Balint, A., Belov, A., Heule, M.J., Järvisalo, M.: The 2013 international SAT competition (2013). satcompetition.org/2013
  6. 6.
    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
  7. 7.
    Devriendt, J., Bogaerts, B.: BreakID, a symmetry breaking preprocessor for SAT solvers (2015). bitbucket.org/krr/breakid
  8. 8.
    Devriendt, J., Bogaerts, B., Bruynooghe, M.: BreakIDGlucose: On the importance of row symmetry. In: Proceedings of the Fourth International Workshop on the Cross-Fertilization Between CSP and SAT (CSPSAT) (2014). http://lirias.kuleuven.be/handle/123456789/456639
  9. 9.
    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)CrossRefGoogle Scholar
  10. 10.
    Flener, P., Frisch, A.M., Hnich, B., Kiziltan, Z., Miguel, I., Pearson, J., Walsh, T.: Breaking row and column symmetries in matrix models. In: Van Hentenryck, P. (ed.) CP 2002. LNCS, vol. 2470, pp. 462–477. Springer, Heidelberg (2002). http://dx.doi.org/10.1007/3-540-46135-3_31 CrossRefGoogle Scholar
  11. 11.
    The GAP Group: GAP - Groups, Algorithms, and Programming, Version 4.7.9 (2015). www.gap-system.org
  12. 12.
    Haken, A.: The intractability of resolution. Theor. Comput. Sci. 39, 297–308 (1985). http://www.sciencedirect.com/science/article/pii/0304397585901446. Third Conference on Foundations of Software Technology and Theoretical Computer Science
  13. 13.
    Jefferson, C., Petrie, K.E.: Automatic generation of constraints for partial symmetry breaking. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 729–743. Springer, Heidelberg (2011). http://dx.doi.org/10.1007/978-3-642-23786-7_55 CrossRefGoogle Scholar
  14. 14.
    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
  15. 15.
    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)CrossRefGoogle Scholar
  16. 16.
    Lee, J.H.M., Li, J.: Increasing symmetry breaking by preserving target symmetries. In: Milano, M. (ed.) CP 2012. LNCS, vol. 7514, pp. 422–438. Springer, Heidelberg (2012). http://dx.doi.org/10.1007/978-3-642-33558-7_32 CrossRefGoogle Scholar
  17. 17.
    Lynce, I., Marques-Silva, J.: Breaking symmetries in SAT matrix models. In: Marques-Silva, J., Sakallah, K.A. (eds.) SAT 2007. LNCS, vol. 4501, pp. 22–27. Springer, Heidelberg (2007). http://dx.doi.org/10.1007/978-3-540-72788-0_6 CrossRefGoogle Scholar
  18. 18.
    McDonald, I., Smith, B.: Partial symmetry breaking. In: Van Hentenryck, P. (ed.) CP 2002. LNCS, vol. 2470, pp. 431–445. Springer, Heidelberg (2002). http://dx.doi.org/10.1007/3-540-46135-3_29 CrossRefGoogle Scholar
  19. 19.
    McKay, B.D., Piperno, A.: Practical graph isomorphism. J. Symbolic Comput. 60, 94–112 (2014). http://www.sciencedirect.com/science/article/pii/S0747717113001193 MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Puget, J.F.: Breaking symmetries in all-different problems. In: Proceedings of the 19th International Joint Conference on Artificial Intelligence, IJCAI 2005, pp. 272–277 (2005)Google Scholar
  21. 21.
    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 MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Sakallah, K.A.: Symmetry and satisfiability. In: Biere, A., Heule, M.J.H., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability, vol. 185, pp. 289–338. IOS Press, Amsterdam (2009)Google Scholar
  23. 23.
    Schaafsma, B., Heule, M.J.H., van Maaren, H.: Dynamic symmetry breaking by simulating Zykov contraction. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 223–236. Springer, Heidelberg (2009).http://dx.doi.org/10.1007/978-3-642-02777-2_22
  24. 24.
    Seress, Á.: Permutation Group Algorithms. Cambridge University Press (2003). cambridgeBooksOnline. http://dx.doi.org/10.1017/CBO9780511546549
  25. 25.
    Shlyakhter, I.: Generating effective symmetry-breaking predicates for search problems. Discrete Appl. Math. 155(12), 1539–1548 (2007). http://dx.doi.org/10.1016/j.dam.2005.10.018 MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Urquhart, A.: Hard examples for resolution. J. ACM 34(1), 209–219. http://doi.acm.org/10.1145/7531.8928
  27. 27.
    Walsh, T.: Symmetry breaking constraints: Recent results. CoRR abs/1204.3348 (2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Jo Devriendt
    • 1
  • Bart Bogaerts
    • 1
    • 2
  • Maurice Bruynooghe
    • 1
  • Marc Denecker
    • 1
  1. 1.KU Leuven – University of LeuvenLeuvenBelgium
  2. 2.Helsinki Institute for Information Technology HIIT, Department of Computer ScienceAalto UniversityAaltoFinland

Personalised recommendations