SAT Solvers and Computer Algebra Systems: A Powerful Combination for - - PowerPoint PPT Presentation

sat solvers and computer algebra systems a powerful
SMART_READER_LITE
LIVE PREVIEW

SAT Solvers and Computer Algebra Systems: A Powerful Combination for - - PowerPoint PPT Presentation

SAT Solvers and Computer Algebra Systems: A Powerful Combination for Mathematics Curtis Bright 1 Ilias Kotsireas 2 Vijay Ganesh 1 1 University of Waterloo 2 Wilfrid Laurier University The 29th International Conference on Computer Science and


slide-1
SLIDE 1

SAT Solvers and Computer Algebra Systems: A Powerful Combination for Mathematics

Curtis Bright1 Ilias Kotsireas2 Vijay Ganesh1

1University of Waterloo 2Wilfrid Laurier University

The 29th International Conference on Computer Science and Software Engineering November 4, 2019

1/21

slide-2
SLIDE 2

SAT:

Boolean satisfiability problem

2/21

slide-3
SLIDE 3

SAT:

Boolean satisfiability problem

SAT solvers: Clever brute force

2/21

slide-4
SLIDE 4

Effectiveness of SAT solvers

Many problems that have nothing to do with logic can be effectively solved by reducing them to Boolean logic and using a SAT solver.

3/21

slide-5
SLIDE 5

Effectiveness of SAT solvers

Many problems that have nothing to do with logic can be effectively solved by reducing them to Boolean logic and using a SAT solver.

Limitations of SAT solvers

SAT solvers lack mathematical understanding beyond the most basic logical inferences and will fail on some trivial tiny problems.

3/21

slide-6
SLIDE 6

CAS:

Computer algebra system

4/21

slide-7
SLIDE 7

CAS:

Computer algebra system

Symbolic mathematical computing

4/21

slide-8
SLIDE 8

Effectiveness of CAS

Computer algebra systems can perform calculations and manipulate expressions from many branches of mathematics.

5/21

slide-9
SLIDE 9

Effectiveness of CAS

Computer algebra systems can perform calculations and manipulate expressions from many branches of mathematics.

Limitations of CAS

CASs are not optimized to do large (i.e., exponential) searches.

5/21

slide-10
SLIDE 10

SAT + CAS

Search + Knowledge

6/21

slide-11
SLIDE 11

MathCheck

Our SAT+CAS system MathCheck has constructed over 100,000 various combinatorial objects. For example, this {±1}-matrix with pairwise orthogonal rows: uwaterloo.ca/mathcheck

7/21

slide-12
SLIDE 12

Results of MathCheck

Verified the even Williamson conjecture up to order 70. Found the smallest counterexample of the Williamson conjecture. Found three new counterexamples to the good matrix conjecture. Verified the best matrix conjecture up to order 57. Verified conjectures about complex Golay sequences up to length 28. Verified the Ruskey–Savage conjecture up to order five. Verified the Norine conjecture up to order six. Verified the nonexistence of weight 15 and 16 codewords in a projective plane of order ten.

8/21

slide-13
SLIDE 13

Williamson matrices

Williamson matrices are symmetric and circulant (each row a cyclic shift of the previous row) {±1}-matrices A, B, C, D such that A2 + B2 + C 2 + D2 is a scalar matrix.

9/21

slide-14
SLIDE 14

The Williamson conjecture

It does, however, seem quite likely that [ . . . ] matrices of the Williamsom type, “always exist,”. . . Solomon Golomb and Leonard Baumert, 1963

10/21

slide-15
SLIDE 15

Counterexample

Williamson matrices do not exist in order 35 and this is the smallest odd counterexample (Ðoković 1993).

11/21

slide-16
SLIDE 16

Even orders

In 2006, Kotsireas and Koukouvinos found Williamson matrices in all even orders n ≤ 22 using a CAS. In 2016, Bright et al. found Williamson matrices in all even orders n ≤ 30 using a SAT solver.

12/21

slide-17
SLIDE 17

Even orders

In 2006, Kotsireas and Koukouvinos found Williamson matrices in all even orders n ≤ 22 using a CAS. In 2016, Bright et al. found Williamson matrices in all even orders n ≤ 30 using a SAT solver. In 2018, Bright, Kotsireas, and Ganesh enumerated all Williamson matrices in all even orders n ≤ 70 using a SAT+CAS method.

12/21

slide-18
SLIDE 18

SAT encoding

Let the Boolean variables a0, . . . , an−1 represent the entries of the first row of the matrix A with true representing 1 and false representing −1. a0

true

a1

true

a2

false

a3

false

a4

true 13/21

slide-19
SLIDE 19

Naive setup

Encoding that Williamson matrices of order n exist SAT solver Williamson matrices

  • r counterexample

14/21

slide-20
SLIDE 20

Naive setup

Encoding that Williamson matrices of order n exist SAT solver Williamson matrices

  • r counterexample

This is suboptimal as SAT solvers alone will not exploit mathematical facts about Williamson matrices.

14/21

slide-21
SLIDE 21

System overview

The SAT solver is augmented with a CAS learning method:

SAT solver CAS

partial satisfying assignment conflict clause

15/21

slide-22
SLIDE 22

System overview

The SAT solver is augmented with a CAS learning method:

SAT solver CAS

partial satisfying assignment conflict clause expression of the form x1 ∨ x2 ∨ · · · ∨ xn where each xi is a variable

  • r negated variable

15/21

slide-23
SLIDE 23

Power spectral density (PSD) filtering

If A is a Williamson matrix then PSDA ≤ 4n where PSDA is the maximum squared magnitude of the Fourier transform of A.

16/21

slide-24
SLIDE 24

Search with PSD filtering

To exploit PSD filtering we need (1) an efficient method of computing the PSD values; and (2) an efficient method of searching while avoiding matrices that fail the filtering criteria.

17/21

slide-25
SLIDE 25

Search with PSD filtering

To exploit PSD filtering we need (1) an efficient method of computing the PSD values; and (2) an efficient method of searching while avoiding matrices that fail the filtering criteria.

CASs excel at (1) and SAT solvers excel at (2).

17/21

slide-26
SLIDE 26

Learning method

SAT solver CAS assignment to a0, . . . , an−1

18/21

slide-27
SLIDE 27

Learning method

SAT solver CAS assignment to a0, . . . , an−1

The CAS computes the PSD of A. If it is too large. . .

18/21

slide-28
SLIDE 28

Learning method

SAT solver CAS assignment to a0, . . . , an−1

  • ai true

in assign

¬ai

The CAS computes the PSD of A. If it is too large. . . . . . a conflict clause is learned.

18/21

slide-29
SLIDE 29

Results

Over 100,000 sets of Williamson matrices were found in all even

  • rders up to order 70.

35 is in fact the smallest counterexample of the Williamson conjecture.

Applying Computer Algebra Systems with SAT Solvers to the Williamson

  • Conjecture. Journal of Symbolic Computation, 2019.

19/21

slide-30
SLIDE 30

Recent SAT+CAS Results

Heule, Kauers, and Seidl found many new algorithms for 3 × 3 matrix multiplication.

A family of schemes for multiplying 3 × 3 matrices with 23 coefficient

  • multiplications. ACM Communications in Computer Algebra, 2019.

Kaufmann, Biere, and Kauers verified Boolean arithmetic circuits.

Verifying Large Multipliers by Combining SAT and Computer Algebra. Conference on Formal Methods in Computer Aided Design, 2019.

20/21

slide-31
SLIDE 31

Conclusion

The SAT+CAS paradigm is currently the fastest way of performing searches for certain combinatorial objects.

21/21

slide-32
SLIDE 32

Conclusion

The SAT+CAS paradigm is currently the fastest way of performing searches for certain combinatorial objects. Moreover, the code tends to be simpler: no need to write and

  • ptimize a special-purpose search algorithm.

21/21

slide-33
SLIDE 33

Conclusion

The SAT+CAS paradigm is currently the fastest way of performing searches for certain combinatorial objects. Moreover, the code tends to be simpler: no need to write and

  • ptimize a special-purpose search algorithm.

The main difficulty lies in setting up and tuning the learning method, requiring expertise in both SAT solvers and the problem domain.

21/21