Academia.eduAcademia.edu

Outline

Applying Modern SAT-solvers to Solving Hard Problems

Fundamenta Informaticae

https://doi.org/10.3233/FI-2019-1788

Abstract

We present nine SAT-solvers and compare their efficiency for several decision and combinatorial problems: three classical NP-complete problems of the graph theory, bounded Post correspondence problem (BPCP), extended string correction problem (ESCP), two popular chess problems, PSPACE-complete verification of UML systems, and the Towers of Hanoi (ToH) of exponential solutions. In addition to several known reductions to SAT for the problems of graph k-colouring, vertex k-cover, Hamiltonian path, and verification of UML systems, we also define new original reductions for the N-queens problem, the knight's tour problem, and ToH, SCP, and BPCP. Our extensive experimental results allow for drawing quite interesting conclusions on efficiency and applicability of SAT-solvers to different problems: they behave quite efficiently for NP-complete and harder problems but they are by far inferior to tailored algorithms for specific problems of lower complexity.

References (42)

  1. P. A. Abdulla, P. Bjesse, and N. Eén. Symbolic reachability analysis based on SAT-solvers. In Proc. of the 6th Int. Conf. on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'00), volume 1785 of LNCS, pages 411-425. Springer-Verlag, 2000.
  2. A. Armando and L. Compagna. An optimized intruder model for SAT-based model-checking of security protocols. In Electronic Notes in Theoretical Computer Science, volume 125, pages 91-108. Elsevier Science Publishers, March 2005.
  3. G. Audemard and L. Simon. Glucose and syrup in the SAT race 2015. SAT Race, 2015.
  4. J. Bell and B. Stevens. A survey of known results and research areas for n-queens. Discrete Mathematics, 309(1):1 -31, 2009.
  5. A. Biere. Lingeling and friends entering the SAT challenge 2012. Proceedings of SAT Challenge, pages 33-34, 2012.
  6. A. Biere et al. Symbolic model checking using SAT procedures instead of BDDs. In In Proc. of the ACM/IEEE Design Automation Conference (DAC), pages 317-320, 1999.
  7. E. Clarke, A. Biere, R. Raimi, and Y. Zhu. Bounded model checking using satisfiability solving. Formal Methods in System Design, 19(1):7-34, 2001.
  8. F. J. Damerau. A technique for computer detection and correction of spelling errors. Commun. ACM, 7(3):171--176, 1964.
  9. M. Davis, G. Logemann, and D. Loveland. A machine program for theorem-proving. Commun. ACM, 5(7):394-397, July 1962.
  10. M. Davis and H. Putnam. A computing procedure for quantification theory. J. ACM, 7(3):201-215, July 1960.
  11. L. de Moura and N. Bjørner. Bugs, Moles and Skeletons: Symbolic Reasoning for Software Development, pages 400-411. Springer Berlin Heidelberg, Berlin, Heidelberg, 2010.
  12. L. M. de Moura and N. Bjørner. Z3: An efficient SMT solver. In Proc. of TACAS'08, volume 4963 of LNCS, pages 337-340. Springer-Verlag, 2008.
  13. G. De Smet et al. Optaplanner user guide. http://www. optaplanner. org., 2017.
  14. M. R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP- Completeness. W. H. Freeman, 1979.
  15. M. Gebser et al. clasp : A conflict-driven answer set solver. In LPNMR, 2007.
  16. I. P. Gent, Ch. Jefferson, and P. Nightingale. Complexity of n-queens completion. J. Artif. Int. Res., 59(1):815-848, May 2017.
  17. Y. Hamadi, S. Jabbour, and L. Sais. ManySAT: a Parallel SAT Solver. JSAT, 6(4):245-262, 2009.
  18. M. Kacprzak and W. Penczek. Unbounded model checking for alternating-time temporal logic. In 3rd International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2004), 19-23 August 2004, New York, NY, USA, pages 646-653, 2004.
  19. R. Kaivola et al. Replacing Testing with Formal Verification in Intel Core I7 Processor Execution Engine Validation. In Proceedings of the 21st International Conference on Computer Aided Verification, CAV '09, pages 414-429, Berlin, Heidelberg, 2009. Springer-Verlag.
  20. Lila Kari, Greg Gloor, and Sheng Yu. Using DNA to solve the bounded post correspondence problem. Theor. Comput. Sci., 231(2):193-203, 2000.
  21. R. Karp. Reducibility among combinatorial problems. In Complexity of Computer Computations, pages 85-103. Plenum Press, 1972.
  22. H. Kautz and B. Selman. Planning as satisfiability. In In ECAI 92: Proceedings of the 10th European conference on Artificial intelligence, pages 359-363, 1992.
  23. M. Knapik and W. Penczek. Bounded model checking for parametric timed automata. Trans. Petri Nets and Other Models of Concurrency, 5:141-159, 2012.
  24. D. Le Berre and P. Rapicault. Dependency management for the eclipse ecosystem: Eclipse p2, metadata and resolution. In Proceedings of the 1st International Workshop on Open Component Ecosystems, IWOCE '09, pages 21-30, New York, NY, USA, 2009. ACM.
  25. V. I. Levenshtein. Binary codes capable of correcting deletions, insertions, and reversals. Soviet Physics Doklady, 10(8):707--710, 1966.
  26. Shun-Shii Lin and Chung-Liang Wei. Optimal algorithms for constructing knight's tours on arbitrary n x m chessboards. Discrete Applied Mathematics, 146(3):219 -232, 2005.
  27. Y. Mahajan, Z. Fu, and S. Malik. Zchaff2004: An efficient sat solver. In Int. Conf. on Theory and Applications of Satisfiability Testing, pages 360-375. Springer, 2004.
  28. R. Martins and I. Lynce. Effective cnf encodings for the towers of hanoi. In International Conference on Logic for Programming Artificial Intelligence and Reasoning, 2008.
  29. A. Męski, W. Penczek, M. Szreter, B. Woźna-Szcześniak, and A. Zbrzezny. BDD-versus SAT-based bounded model checking for the existential fragment of linear temporal logic with knowledge: algorithms and their performance. Autonomous Agents and Multi-Agent Systems, 28(4):558-604, 2014.
  30. A. Niewiadomski. Automatyczna weryfikacja systemow specyfikowanych w UML (in Polish). PhD thesis, Polish Academy of Science, ICS, January 2011.
  31. A. Niewiadomski et al. Towards automatic composition of web services: SAT-based concretisation of abstract scenarios. Fundam. Inform., 120(2):181-203, 2012.
  32. A. Niewiadomski, W. Penczek, and M. Szreter. A new approach to model checking of UML state machines. Fundamenta Informaticae, 93(1-3):289-303, 2009.
  33. I. Parberry. An efficient algorithm for the knight's tour problem. Discrete Appl. Math., 73(3):251-260, 1997.
  34. Emil L Post. A variant of a recursively unsolvable problem. Bulletin of the American Mathematical Society, 52(4):264-268, 1946.
  35. B. Selman, H. Kautz, and B. Cohen. Local search strategies for satisfiability testing. In Dimacs Series in Discrete Mathematics and Theoretical Computer Science, pages 521-532, 1995.
  36. B. Selman, H. Levesque, and D. Mitchell. A new method for solving hard satisfiability problems. In Pro- ceedings of the Tenth National Conference on Artificial Intelligence, AAAI'92, pages 440-446. AAAI Press, 1992.
  37. N. Sorensson and N. Een. Minisat v1. 13 -a SAT solver with conflict-clause minimization. SAT, 2005(53):1- 2, 2005.
  38. H. Stamm-Wilbrandt. Programming in propositional logic or reductions: Back to the roots (satisfiability), 1993.
  39. OMG UML. Unified modeling language. Infrastructure Specification,, 2(1), 2007.
  40. R. A. Wagner and M. J. Fischer. The string-to-string correction problem. Journal of the ACM, 21(1):168- -173, 1974.
  41. B. Woźna, A. Zbrzezny, and W. Penczek. Checking reachability properties for Timed Automata via SAT. Fundamenta Informaticae, 55(2):223-241, 2003.
  42. B. Woźna-Szcześniak. SAT-based bounded model checking for weighted deontic interpreted systems. Fun- dam. Inform., 143(1-2):173-205, 2016.