Abstract
In this paper, we provide an overview of the SAT+CAS method that combines satisfiability checkers (SAT solvers) and computer algebra systems (CAS) to resolve combinatorial conjectures, and present new results vis-à-vis best matrices. The SAT+CAS method is a variant of the Davis–Putnam–Logemann–Loveland DPLL(T) architecture, where the T solver is replaced by a CAS. We describe how the SAT+CAS method has been previously used to resolve many open problems from graph theory, combinatorial design theory, and number theory, showing that the method has broad applications across a variety of fields. Additionally, we apply the method to construct the largest best matrices yet known and present new skew Hadamard matrices constructed from best matrices. We show the best matrix conjecture (that best matrices exist in all orders of the form r2 + r + 1) which was previously known to hold for r ≤ 6 also holds for r = 7. We also confirmed the results of the exhaustive searches that have been previously completed for r ≤ 6.
Similar content being viewed by others
References
Ábrahám, E.: Building bridges between symbolic computation and satisfiability checking. In: Linton, S. (ed.) Proceedings of the 2015 ACM on International Symposium on Symbolic and Algebraic Computation, pp 1–6. ACM (2015)
Ábrahám, E., Abbott, J., Becker, B., Bigatti, A.M., Brain, M., Buchberger, B., Cimatti, A., Davenport, J.H., England, M., Fontaine, P., Forrest, S., Griggio, A., Kroening, D., Seiler, W.M., Sturm, T.: SC2: satisfiability checking meets symbolic computation. Intelligent Computer Mathematics: Proceedings CICM, 28–43 (2016)
Ahmed, T., Kullmann, O., Snevily, H.: On the van der Waerden numbers w(2; 3,t). Discret. Appl. Math. 174, 27–51 (2014)
Barrett, C., Sebastiani, R., Seshia, S.A., Tinelli, C.: Satisfiability modulo theories. In: Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability, chap. 26, pp. 825–885. IOS Press (2009)
Bernardin, L., Chin, P., DeMarco, P., Geddes, K.O., Hare, D.E.G., Heal, K.M., Labahn, G., May, J.P., McCarron, J., Monagan, M.B., Ohashi, D., Vorkoetter, S.M.: Maple programming guide (2018)
Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.): Handbook of Satisfiability, Frontiers in Artificial Intelligence and Applications, vol. 185. IOS Press, Amsterdam (2009)
Borwein, P.: Barker polynomials and Golay pairs. In: Computational Excursions in Analysis and Number Theory, CMS Books in Mathematics, pp 109–119. Springer, New York (2002)
Botinčan, M., Parkinson, M., Schulte, W.: Separation logic verification of C programs with an SMT solver. Electron. Notes Theor. Comput. Sci. 254, 5–23 (2009)
Bright, C., ĐokoviĆ, D.Ž., Kotsireas, I., Ganesh, V.: A SAT+CAS approach to finding good matrices: new examples and counterexamples. In: Hentenryck, P.V., Zhou, Z.H. (eds.) Thirty-third AAAI Conference on Artificial Intelligence. AAAI Press (2019)
Bright, C., Ganesh, V., Heinle, A., Kotsireas, I., Nejati, S., Czarnecki, K.: Mathcheck2: a SAT+CAS verifier for combinatorial conjectures. In: Gerdt, V.P., Koepf, W., Seiler, W.M., Vorozhtsov, E.V. (eds.) International Workshop on Computer Algebra in Scientific Computing, pp 117–133. Springer (2016)
Bright, C., Kotsireas, I., Ganesh, V.: A SAT+CAS method for enumerating Williamson matrices of even order. In: Mcilraith, S.A., Weinberger, K.Q. (eds.) Thirty-second AAAI Conference on Artificial Intelligence, pp. 6573–6580. AAAI Press (2018)
Bright, C., Kotsireas, I., Ganesh, V.: The SAT+CAS paradigm and the Williamson conjecture. ACM Commun. Comput. Algebra 52(3), 82–84 (2018)
Bright, C., Kotsireas, I., Ganesh, V.: Applying computer algebra systems with SAT solvers to the Williamson conjecture. J. Symbolic Comput. (to appear)
Bright, C., Kotsireas, I., Heinle, A., Ganesh, V.: Enumeration of complex Golay pairs via programmatic SAT. In: Arreche, C. (ed.) Proceedings of the 2018 ACM on International Symposium on Symbolic and Algebraic Computation, ISSAC 2018, New York, NY, USA, July 16–19, 2018, pp. 111–118 (2018)
Bright, C., Kotsireas, I., Heinle, A., Ganesh, V.: Complex Golay pairs up to length 28: a search via computer algebra and programmatic SAT. J. Symbolic Comput. (to appear)
Cadar, C., Ganesh, V., Pawlowski, P.M., Dill, D.L., Engler, D.R.: EXE: automatically generating inputs of death. ACM Trans. Inform. Sys. Secur. (TISSEC) 12(2), 1–38 (2008)
Cimatti, A., Griggio, A., Irfan, A., Roveri, M., Sebastiani, R.: Incremental linearization for satisfiability and verification modulo nonlinear arithmetic and transcendental functions. ACM Trans. Comput. Logic (TOCL) 19(3), 19:1–19:52 (2018)
Cimatti, A., Sebastiani, R.: Building efficient decision procedures on top of SAT solvers. In: Bernardo, M., Cimatti, A. (eds.) International School on Formal Methods for the Design of Computer, Communication and Software Systems, pp. 144–175. Springer (2006)
Craigen, R., Holzmann, W., Kharaghani, H.: Complex Golay sequences: structure and applications. Discrete Mathematics 252(1-3), 73–89 (2002)
Craigen, R., Kharaghani, H.: Hadamard matrices and Hadamard designs. In: Colbourn, C.J., Dinitz, J.H. (eds.) Handbook of Combinatorial Designs, pp 273–280. Chapman & Hall/CRC, Boca Raton (2007)
de Moura, L., Bjørner, N.: The Z3 theorem prover. https://github.com/Z3Prover(2008)
Đoković, D.Ž.: Skew-Hadamard matrices of orders 188 and 388 exist. Int. Math. Forum 3(22), 1063–1068 (2008)
Đoković, D.Ž.: Supplementary difference sets with symmetry for Hadamard matrices. Operators and Matrices 3(4), 557–569 (2009)
Đoković, D.Ž., Kotsireas, I.S.: Compression of periodic complementary sequences and applications. Des. Codes Crypt. 74(2), 365–377 (2015)
Đoković, D.Ž., Kotsireas, I.S.: Goethals–Seidel difference families with symmetric or skew base blocks. Math. Comput. Sci. 12(4), 373–388 (2018)
Dransfield, M.R., Marek, V.W., Truszczyński, M.: Satisfiability and Computing Van Der Waerden Numbers. In: Giunchiglia, E., Tacchella, A. (eds.) Theory and Applications of Satisfiability Testing. SAT 2003, pp 1–13. Springer, Berlin (2003)
Dutertre, B., de Moura, L.: The Yices SMT solver. http://yices.csl.sri.com/(2006)
Fiedler, F.: Small Golay sequences. Adv. Math. Commun. 7(4) (2013)
Fink, J.: Perfect matchings extend to Hamilton cycles in hypercubes. Journal of Combinatorial Theory, Series B 97(6), 1074–1076 (2007)
Frigo, M., Johnson, S.G.: The design and implementation of FFTW3. Proc. IEEE 93(2), 216–231 (2005)
Ganesh, V., Dill, D.L.: A decision procedure for bit-vectors and arrays. In: Damm, W., Hermanns, H. (eds.) Computer Aided Verification, 19th International Conference, CAV 2007, Berlin, Germany, July 3-7, 2007, Proceedings, pp. 519–531 (2007)
Ganesh, V., O’Donnell, C.W., Soos, M., Devadas, S., Rinard, M.C., Solar-Lezama, A.: Lynx: a Programmatic SAT Solver for the RNA-folding problem. In: Cimatti, A., Sebastiani, R. (eds.) Theory and Applications of Satisfiability Testing – SAT 2012, pp 143–156. Springer, Berlin (2012)
Ganzinger, H., Hagen, G., Nieuwenhuis, R., Oliveras, A., Tinelli, C.: DPLL(T): fast decision procedures. In: Alur, R., Peled, D.A. (eds.) International Conference on Computer Aided Verification, pp. 175–188. Springer (2004)
Georgiou, S., Koukouvinos, C., Seberry, J.: On circulant best matrices and their applications. Linear and Multilinear Algebra 48(3), 263–274 (2001)
Goethals, J.M., Seidel, J.J.: A skew Hadamard matrix of order 36. J. Aust. Math. Soc. 11(3), 343–344 (1970)
Golay, M.J.E.: Multi-slit spectrometry. JOSA 39(6), 437–444 (1949)
Golomb, S.W., Baumert, L.D.: The search for Hadamard matrices. Am. Math. Mon. 70(1), 12–17 (1963)
Hedayat, A., Wallis, W.D., et al.: Hadamard matrices and their applications. Ann. Stat. 6(6), 1184–1238 (1978)
Heule, M.J.H.: Schur number five. In: Mcilraith, S.A., Weinberger, K.Q. (eds.) Thirty-Second AAAI Conference on Artificial Intelligence, pp. 6598–6606. AAAI Press (2018)
Heule, M.J.H., Kullmann, O.: The science of brute force. Commun. ACM 60 (8), 70–79 (2017)
Heule, M.J.H., Kullmann, O., Marek, V.W.: Solving and verifying the boolean pythagorean triples problem via cube-and-conquer. In: Creignou, N., Le Berre, D. (eds.) Theory and Applications of Satisfiability Testing – SAT 2016, pp 228–245. Springer, Cham (2016)
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 (2017)
Heule, M.J.H., Kullmann, O., Wieringa, S., Biere, A.: Cube and Conquer: guiding CDCL SAT solvers by lookaheads. In: Eder, K., Lourenço, J.S, Shehory, O. (eds.) Haifa Verification Conference, pp 50–65. Springer (2011)
Heule, M.J.H., van Maaren, H.: Look-ahead based SAT Solvers. In: Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability, chap. 5, pp. 155–184. IOS Press (2009)
Holzmann, W.H., Kharaghani, H., Tayfeh-Rezaie, B.: Williamson matrices up to order 59. Des. Codes Crypt. 46(3), 343–352 (2008)
Horadam, K.J.: Hadamard matrices and their applications. Princeton University Press (2012)
Kharaghani, H., Tayfeh-Rezaie, B.: A Hadamard matrix of order 428. J. Comb. Des. 13(6), 435–440 (2005)
Kim, J., Solé, P.: Skew Hadamard designs and their codes. Des. Codes Crypt. 49(1-3), 135–145 (2008)
Konev, B., Lisitsa, A.: A SAT attack on the Erdős discrepancy conjecture. In: Sinz, C., Egly, U. (eds.) Theory and Applications of Satisfiability Testing – SAT 2014, pp 219–226. Springer, Cham (2014)
Kotsireas, I.S., Koukouvinos, C.: Constructions for Hadamard matrices of Williamson type. J. Comb. Math. Comb. Comput. 59, 17–32 (2006)
Kotsireas, I.S., Koukouvinos, C.: Hadamard matrices of Williamson type: a challenge for computer algebra. J. Symb. Comput. 44(3), 271–279 (2009)
Kotsireas, I.S., Koukouvinos, C., Seberry, J.: Weighing matrices and string sorting. Ann. Comb. 13(3), 305–313 (2009)
Koukouvinos, C., Stylianou, S.: On skew-Hadamard matrices. Discret. Math. 308(13), 2723–2731 (2008)
Kouril, M., Franco, J.: Resolution tunnels for improved SAT solver performance. In: Bacchus, F., Walsh, T. (eds.) Theory and Applications of Satisfiability Testing. SAT 2005, pp 143–157. Springer, Berlin (2005)
Kouril, M., Paul, J.L.: The van der Waerden number W(2, 6) is 1132. Exp. Math. 17(1), 53–61 (2008)
Kullmann, O.: Green-Tao numbers and SAT. In: Strichman, O., Szeider, S. (eds.) Theory and Applications of Satisfiability Testing – SAT 2010, pp 352–362. Springer, Berlin (2010)
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.) Theory and Applications of Satisfiability Testing – SAT 2017, pp 119–135. Springer, Cham (2017)
Lynce, I., Ouaknine, J.: Sudoku as a SAT problem. In: 9th International Symposium on Artificial Intelligence and Mathematics (2006)
MacWilliams, F.J., Sloane, N.J.A.: The theory of error-correcting codes, vol. 16 Elsevier (1977)
Marques-Silva, J., Lynce, I., Malik, S.: Conflict-driven clause learning SAT solvers. In: Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.) Handbook of satisfiability, chap. 4, pp. 131–153. IOS Press (2009)
McCune, W.: A Davis–Putnam Program and Its Application to Finite First-Order Model Search: Quasigroup Existence Problems. Tech. rep., Argonne National Laboratory (1994)
Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Solving SAT and SAT modulo theories: from an abstract Davis–Putnam–Logemann–Loveland procedure to DPLL(T). Journal of the ACM 53(6), 937–977 (2006)
Pratt, W.K., Kane, J., Andrews, H.C.: Hadamard transform image coding. Proc. IEEE 57(1), 58–68 (1969)
Rao, J.N.K., Shao, J.: On balanced half-sample variance estimation in stratified random sampling. J. Am. Stat. Assoc. 91(433), 343–348 (1996)
Ruskey, F., Savage, C.: Hamilton cycles that extend transposition matchings in Cayley graphs of s n. SIAM J. Discret. Math. 6(1), 152–166 (1993)
Seberry, J.: On skew Hadamard matrices. Ars Combinatoria 6, 255–275 (1978)
Seberry, J., Yamada, M.: Hadamard matrices, sequences, and block designs. Contemporary design theory: a collection of surveys, pp. 431–560 (1992)
Stickel, M.E., Zhang, H.: First results of studying quasigroup identities by rewriting techniques. In: Proceedings of Workshop on Automated Theorem Proving in conjunction with FGCS, pp. 16–23 (1994)
Sylvester, J.J.: Thoughts on inverse orthogonal matrices, simultaneous signsuccessions, and tessellated pavements in two or more colours, with applications to Newton’s rule, ornamental tile-work, and the theory of numbers. The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science 34(232), 461–475 (1867)
Taghavi, M., Zahraei, M.: On the autocorrelations of ± 1 polynomials. Journal of Mathematical Extension 1(2), 139–147 (2007)
The Sage Development Team: Sage tutorial, release 8.6. https://www.sagemath.org(2019)
van der Waerden, B.L.B.L.: Beweis einer Baudetschen vermutung. Nieuw Archief voor Wiskunde 15, 212–216 (1927)
Vardi, M.Y.: Symbolic Techniques in Propositional Satisfiability Solving. In: Kullmann, O. (ed.) Theory and Applications of Satisfiability Testing - SAT 2009, pp 2–3. Springer, Berlin (2009)
Vizel, Y., Weissenbacher, G., Malik, S.: Boolean satisfiability solvers and their applications in model checking. Proc. IEEE 103(11), 2021–2035 (2015)
Williamson, J.: Hadamard’s determinant theorem and the sum of four squares. Duke Mathematical Journal 11(1), 65–81 (1944)
Wolfram, S.: The Mathematica Book, fifth edition (2003)
Zhang, H.: Specifying latin square problems in propositional logic. In: Veroff, R. (ed.) Automated Reasoning and Its Applications: Essays in Honor of Larry Wos, pp. 115–146. MIT Press (1997)
Zhang, H.: Combinatorial designs by SAT solvers. In: Biere, A., Heule, M., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability, chap. 17, pp. 533–568. IOS Press (2009)
Zulkoski, E., Bright, C., Heinle, A., Kotsireas, I., Czarnecki, K., Ganesh, V.: Combining SAT solvers with computer algebra systems to verify combinatorial conjectures. J. Autom. Reason. 58(3), 313–339 (2017)
Zulkoski, E., Ganesh, V., Czarnecki, K.: MathCheck: a math assistant via a combination of computer algebra systems and SAT solvers. In: Felty, A.P., Middeldorp, A. (eds.) International Conference on Automated Deduction, pp 607–622. Springer, Cham (2015)
Acknowledgments
We thank the reviewers for their detailed comments that improved the clarity of this article.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
Let A, B, C, D be a set of circulant best matrices of order n = r2 + r + 1 (note that all numbers of this form are odd). As described in Section ?? the rowsums of the first rows of A, B, C are 1 and the rowsum of the first row of D is ± (2r + 1) where the sign of sum(D) is positive when r ≡ 0, 1 (mod 4) and negative otherwise.
Proof
Since the matrix A is skew we have ai + an−i = 0 for i≠ 0. Thus
and similarly for B and C. Taking the relationship AAT + BBT + CCT + DDT = 4nI and multiplying by the row vector of ones (on the left) and the column vector of ones (on the right) we obtain
and therefore sum(D)2 = 4n − 3 = (2r + 1)2 and sum(D) = s(2r + 1) where s = ± 1.
Since D is symmetric and 2di ≡ 2 (mod 4)
Therefore r2 + r + 1 ≡ s(2r + 1) (mod 4). Since
we have s = 1 when r ≡ 0, 1 (mod 4) and s = − 1 otherwise. □
As described in Section 5.4 we have that the entries of these matrices satisfy the relationship
for k≠ 0 with indices reduced mod n.
Proof
We can equivalently consider circulant best matrices to be polynomials given by the generating function of the entries of their first rows. In this formulation A, B, C, D are polynomials with ± 1 coefficients and of degree n − 1 that satisfy
modulo the ideal generated by xn − 1 (all computations will take place modulo this ideal).
Let A+ denote the polynomial containing the terms of A with positive coefficients and let \(\lvert {A_{+}}\rvert \) denote the number of terms in A+. Then A = 2A+ − T where \(T(x):={\sum }_{i=0}^{n-1}x^{i}\). Since xiT = T we have \(A_{+}T=\lvert {A_{+}}\rvert T\) and T2 = nT.
Since A is anti-symmetric (i.e., A(x) + A(x− 1) = 2) we have A(1) = 1 and \(\lvert {A_{+}}\rvert =(T(1)+A(1))/2=(n+1)/2\). Furthermore,
and similarly for B and C.
Since D is symmetric (i.e., D(x) = D(x− 1)) we have
By the symmetry of D we have \(D(x)=1+D^{\prime }(x)+D^{\prime }(x^{-1})\) where \(D^{\prime }(x):={\sum }_{i=1}^{(n-1)/2}d_{i}x^{i}\). Then \(\lvert {D_{+}}\rvert =1+2\lvert {{D}_{+}^{\prime }}\rvert \) and thus \(\lvert {D_{+}}\rvert \) is odd.
Equating (1)–(3) and dividing by four we have
Since \(A_{+}={\sum }_{a_{i}=1}x^{i}\) we have \(A_{+}^{2}\equiv {\sum }_{a_{i}=1}x^{2i}\pmod {2}\) and (4) reduces to
since both n and \(\lvert {D_{+}}\rvert \) are odd.
Since n is odd the congruence i ≡ 2y (mod n) has exactly one solution 0 ≤ y < n for each 0 ≤ i < n. Denoting this solution by i/2 we have
In other words, we have that the number of entries in {ai/2,ai,bi/2,bi,ci/2,ci,di/2} that are positive is 1 (mod 2) for i = 0 and 0 (mod 2) for i≠ 0. Letting k = i/2 for i≠ 0 this means aka2kbkb2kckc2kdk = − 1 as required. □
One new skew Hadamard matrix that we constructed was given in Fig. 3 and the other two new skew Hadamard matrices are given in Fig. 4. The first rows of the best matrices used to construct these skew Hadamard matrices are given here:
+--++------+-++++-+-+--+--++-+--++-++-+-+----+-++++++--++ +-+-++++-++--++-+--+---+-+-+-+-+-+-+++-++-+--++--+----+-+ ++-++-+--+---++--+++----+---+-+++-++++---++--+++-++-+--+- +---+------++-----+++----++++++++----+++-----++------+--- +--++------+-++++-+-+--+--++-+--++-++-+-+----+-++++++--++ +-+-++++-++--++-+--+---+-+-+-+-+-+-+++-++-+--++--+----+-+ ++-++-+--+---++--+++----+---+-+++-++++---++--+++-++-+--+- +---+------++-----+++----++++++++----+++-----++------+--- ++----+------++--++-+--+---+-+-+++-++-+--++--++++++-++++- +--+-+-+--+-++----++--++++++-+------++--++++--+-++-+-+-++ ++-+--++++++---++-++----+-+-+-+-+-++++--+--+++------++-+- +---++++--+-+---+--++------+--+------++--+---+-+--++++---
Rights and permissions
About this article
Cite this article
Bright, C., Đoković, D.Ž., Kotsireas, I. et al. The SAT+CAS method for combinatorial search with applications to best matrices. Ann Math Artif Intell 87, 321–342 (2019). https://doi.org/10.1007/s10472-019-09681-3
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10472-019-09681-3