Effective Problem Solving Using SAT Solvers
Conference paper
First Online:
- 318 Downloads
Abstract
In this article we demonstrate how to solve a variety of problems and puzzles using the built-in SAT solver of the computer algebra system Maple. Once the problems have been encoded into Boolean logic, solutions can be found (or shown to not exist) automatically, without the need to implement any search algorithm. In particular, we describe how to solve the n-queens problem, how to generate and solve Sudoku puzzles, how to solve logic puzzles like the Einstein riddle, how to solve the 15-puzzle, how to solve the maximum clique problem, and finding Graeco-Latin squares.
Keywords
SAT solving Maple n-queens problem Sudoku Logic puzzles 15-puzzle Maximum clique problem Graeco-Latin squaresReferences
- 1.Archer, A.F.: A modern treatment of the 15 puzzle. Am. Math. Mon. 106(9), 793–799 (1999)MathSciNetCrossRefGoogle Scholar
- 2.Bell, J., Stevens, B.: A survey of known results and research areas for \(n\)-queens. Discret. Math. 309(1), 1–31 (2009)MathSciNetCrossRefGoogle Scholar
- 3.Biere, A., Heule, M.J.H., van Maaren, H., Walsh, T.: Handbook of Satisfiability, Frontiers in Artificial Intelligence and Applications, vol. 185. IOS Press, Amsterdam (2009)zbMATHGoogle Scholar
- 4.Bose, R.C., Shrikhande, S.S., Parker, E.T.: Further results on the construction of mutually orthogonal Latin squares and the falsity of Euler’s conjecture. Can. J. Math. 12, 189–203 (1960)MathSciNetCrossRefGoogle Scholar
- 5.Bose, R.C., Shrikhande, S.S.: On the falsity of Euler’s conjecture about the non-existence of two orthogonal Latin squares of order \(4t+2\). Proc. Natl. Acad. Sci. U.S.A. 45(5), 734–737 (1959)MathSciNetCrossRefGoogle Scholar
- 6.Bright, C.: Maple applications by Curtis Bright. https://www.maplesoft.com/applications/Author.aspx?mid=345070
- 7.Bright, C., Kotsireas, I., Ganesh, V.: A SAT+CAS method for enumerating Williamson matrices of even order. In: McIlraith, S., Weinberger, K. (eds.) Thirty-Second AAAI Conference on Artificial Intelligence, pp. 6573–6580. AAAI Press (2018)Google Scholar
- 8.Brüngger, A., Marzetta, A., Fukuda, K., Nievergelt, J.: The parallel search bench ZRAM and its applications. Ann. Oper. Res. 90, 45–63 (1999)MathSciNetCrossRefGoogle Scholar
- 9.Collins, N.: World’s hardest sudoku: can you crack it? (2012). https://www.telegraph.co.uk/news/science/science-news/9359579/Worlds-hardest-sudoku-can-you-crack-it.html
- 10.Cook, S.A.: The complexity of theorem-proving procedures. In: Proceedings of the Third Annual ACM Symposium on Theory of Computing, pp. 151–158. ACM (1971)Google Scholar
- 11.Euler, L.: Recherches sur un nouvelle espéce de quarrés magiques. Verhandelingen uitgegeven door het zeeuwsch Genootschap der Wetenschappen te Vlissingen, pp. 85–239 (1782)Google Scholar
- 12.Heule, M.J.H., Kullmann, O., Marek, V.W.: Solving very hard problems: cube-and-conquer, a hybrid SAT solving method. In: Sierra, C. (ed.) Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, IJCAI-17, pp. 4864–4868. IJCAI (2017)Google Scholar
- 13.Johnson, D.S., Trick, M.A.: Cliques, coloring, and satisfiability: second DIMACS implementation challenge, 11–13 October 1993, vol. 26. American Mathematical Society (1996)Google Scholar
- 14.Kreher, D., Stinson, D.: Combinatorial Algorithms: Generation, Enumeration, and Search. Discrete Mathematics and Its Applications. Taylor & Francis, Routledge (1998)Google Scholar
- 15.Liang, J.H., Govind V.K., H., Poupart, P., Czarnecki, K., Ganesh, V.: An empirical study of branching heuristics through the lens of global learning rate. In: Gaspers, S., Walsh, T. (eds.) SAT 2017. LNCS, vol. 10491, pp. 119–135. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66263-3_8. https://ece.uwaterloo.ca/maplesat/CrossRefGoogle Scholar
- 16.Lynce, I., Ouaknine, J.: Sudoku as a SAT problem. In: 9th International Symposium on Artificial Intelligence and Mathematics (2006)Google Scholar
- 17.MacNeish, H.F.: Euler squares. Ann. Math. 23(2), 221–227 (1922)MathSciNetCrossRefGoogle Scholar
- 18.Nadel, B.A.: Representation selection for constraint satisfaction: a case study using \(n\)-queens. IEEE Intell. Syst. 5(3), 16–23 (1990)Google Scholar
- 19.Peterson, J.: Les 36 officieurs. Annuaire des Mathématiciens, pp. 413–427 (1902)Google Scholar
- 20.Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach. Pearson Education, London (2010)zbMATHGoogle Scholar
- 21.Slocum, J., Sonneveld, D.: The 15 Puzzle: How It Drove the World Crazy. Slocum Puzzle Foundation, Beverly Hills (2006)Google Scholar
- 22.Tarry, G.: Le problème des 36 officiers. Association Française pour l’Avancement des Sciences: Compte Rendu de la 29\({\text{me}}\) session en Paris 1900, pp. 170–203 (1901)Google Scholar
- 23.Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Slisenko, A.O. (ed.) Studies in Constructive Mathematics and Mathematical Logic, pp. 115–125 (1970)CrossRefGoogle Scholar
- 24.Wernicke, P.: Das Problem der 36 Offiziere. Jahresbericht der Deutschen Mathematiker-Vereinigung 19, 264–267 (1910)zbMATHGoogle Scholar
- 25.Zaikin, O., Kochemazov, S.: The search for systems of diagonal Latin squares using the SAT@home project. Int. J. Open Inf. Technol. 3(11), 4–9 (2015)Google Scholar
Copyright information
© Springer Nature Switzerland AG 2020