Solving very hard SAT problems: a form of partial KC Oliver Kullmann Computer Science Department Swansea University Recent Trends in Knowledge Compilation Dagstuhl Seminar 17381 Dagstuhl, September 22, 2017 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 1 / 32
Mathematics and SAT This talk Two topics: I A mathematical problem: the boolean Pythagorean Triples Problem. II Solving it via SAT: Symbiosis of Old and New Cube-and-Conquer. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 2 / 32
Mathematics and SAT Outline Mathematics and SAT 1 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
Mathematics and SAT Outline Mathematics and SAT 1 A fundamental problem of Ramsey theory 2 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
Mathematics and SAT Outline Mathematics and SAT 1 A fundamental problem of Ramsey theory 2 SAT 3 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
Mathematics and SAT Outline Mathematics and SAT 1 A fundamental problem of Ramsey theory 2 SAT 3 Cube-and-Conquer 4 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
Mathematics and SAT Outline Mathematics and SAT 1 A fundamental problem of Ramsey theory 2 SAT 3 Cube-and-Conquer 4 Attempts at explanations 5 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
Mathematics and SAT Outline Mathematics and SAT 1 A fundamental problem of Ramsey theory 2 SAT 3 Cube-and-Conquer 4 Attempts at explanations 5 Conclusion 6 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 3 / 32
A fundamental problem of Ramsey theory Ramsey theory Many problems of Ramsey theory can be understood easily, and they yield great problems for SAT. The fundamental theme is: For infinite sets X and certain simple “structures” on X : how resilient is this structure against finite partitioning? Remarks: inherent difficulty completely open see Heule and Kullmann [7] (“The science of brute force”, CACM) for an accessible introduction. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 4 / 32
A fundamental problem of Ramsey theory The science of Demolition https://cacm.acm.org/magazines/2017/8 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 5 / 32
A fundamental problem of Ramsey theory Killing Nullstellen Consider P ( x 1 , x 2 , . . . , x m ) ∈ Z [ x 1 , . . . , x m ] . Consider its zeros over N = { 1 , 2 , . . . } . P is m -regular ( m ≥ 1 ) : for every partition of N into m parts, one part contains a solution of P . In other words, for every m -colouring of N there exists a monochromatic solution of P . It is not possible to kill all zeros of P via m -partitioning. Regular: m -regular for all m ≥ 1. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 6 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : 1 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : 2 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : 3 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : NO 3 x + y − z : 4 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : NO 3 x + y − z : YES Schur [17] 4 x + y − 2 z : 5 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : NO 3 x + y − z : YES Schur [17] 4 x + y − 2 z : YES van der Waerden [18] 5 x + y − 3 z : 6 O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : NO 3 x + y − z : YES Schur [17] 4 x + y − 2 z : YES van der Waerden [18] 5 x + y − 3 z : NO (homework). 6 ( m -)regular: closed under boolean operations. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Examples P ( x , y , . . . ) is regular?: x : NO 1 x − y : YES 2 x − 2 y : NO 3 x + y − z : YES Schur [17] 4 x + y − 2 z : YES van der Waerden [18] 5 x + y − 3 z : NO (homework). 6 ( m -)regular: closed under boolean operations. Solving linear systems: Rado [16] In the case of one equation: YES iff a non-empty subset of coefficients sum up to zero. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 7 / 32
A fundamental problem of Ramsey theory Wide open A recent overview on “partition regularity” was given in Baglini [2]. The general case is wide open. By Hilbert’s Tenth Problem the case “1-regularity” is undecidable. But for all m ≥ 2 the complexity of “ m -regularity” is completely open (from linear-time to undecidable). And so is “regularity”. We considered the single equation x 2 + y 2 = z 2 . Zeros are ( 3 , 4 , 5 ) , ( 6 , 8 , 10 ) , ( 5 , 12 , 13 ) , . . . O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 8 / 32
A fundamental problem of Ramsey theory The Boolean Pythagorean Triples Problem I The question about the regularity of x 2 + y 2 − z 2 is a long-standing open problem. Only 1-regularity was known (since there exist Pythagorean triples, e.g., 3 2 + 4 2 = 5 2 ). Ron Graham asked in the 80s specifically whether 2-regularity holds (we call this the Boolean Pythagorean Triples Problem). There were some opinions (conjectures) that it is not 2-regular. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 9 / 32
A fundamental problem of Ramsey theory The Boolean Pythagorean Triples Problem II We (together with Marijn Heule and Victor Marek) showed via SAT the 2-regularity (Heule, Kullmann, and Marek [9], [11, 12]), and got $ 100 for it. Such a solution needs a proof , which can be automatically checked. We provided a proof of 200 TB and checked it. Meanwhile it has also been checked independently (Cruz-Filipe, Marques-Silva, and Schneider-Kamp [5]). O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 10 / 32
A fundamental problem of Ramsey theory SAT translation The SAT problem is thus for e.g. n = 15: ( v 3 ∧ v 4 ∧ v 5 ) ∨ ( ¬ v 3 ∧ ¬ v 4 ∧ ¬ v 5 ) ∨ ( v 6 ∧ v 8 ∧ v 10 ) ∨ ( ¬ v 6 ∧ ¬ v 8 ∧ ¬ v 10 ) ∨ ( v 5 ∧ v 12 ∧ v 13 ) ∨ ( ¬ v 5 ∧ ¬ v 12 ∧ ¬ v 13 ) ∨ ( v 9 ∧ v 12 ∧ v 15 ) ∨ ( ¬ v 9 ∧ ¬ v 12 ∧ ¬ v 15 ) . It is easy to see that this DNF is falsifiable. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 11 / 32
A fundamental problem of Ramsey theory The theorem I https://en.wikipedia.org/wiki/Boolean_Pythagorean_triples_problem We showed in our SAT 2016 paper ([9, 10]), that one can go up up to n = 7824, and then it stops. Theorem For all sets A 1 , A 2 with A 1 ∪ A 2 = N there is i ∈ { 1 , 2 } and a , b , c ∈ A i with a 2 + b 2 = c 2 . More precisely: For n = 7825 , in every partition of { 1 , . . . , n } , at least one part contains a Pythagorean triple. For n = 7824 there exist a partition with no part containing a Pythagorean triple. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 12 / 32
A fundamental problem of Ramsey theory The theorem II This solved a problem open for 30 years, with the longest proof yet. Different from all previous contributions to Ramsey theory via SAT solving, here also the existence problem for n was open. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 13 / 32
A fundamental problem of Ramsey theory A solution (white means unassigned) O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 14 / 32
A fundamental problem of Ramsey theory Actually proving it Just claiming to have solved it — that’s not much. O Kullmann (Swansea) Solving very hard SAT problems: a form of partial KC 8.9.2017 15 / 32
Recommend
More recommend