November 6, 2017, KTH, Stockholm
Bart Bogaerts, KU Leuven
(joint work with Jo Devriendt, Maurice Bruynooghe, Marc Denecker)
Or: the story of BreakID
Let's try Shatter on the pigeonhole problem...
Only 2 more instances solved?
Let's try Shatter on the pigeonhole problem...
Only 2 more instances solved?
In general, Σ lacks information on structure of the group < Σ>
BreakID: symmetry breaking preprocessor similar to Shatter
Occupies(p1,h1) | Occupies(p1,h2) | Occupies(p1,h3) |
Occupies(p2,h1) | Occupies(p2,h2) | Occupies(p2,h3) |
Occupies(p3,h1) | Occupies(p3,h2) | Occupies(p3,h3) |
Occupies(p4,h1) | Occupies(p4,h2) | Occupies(p4,h3) |
Variable rows for 4 pigeons, 3 holes:
Symmetry due to interchangeable pigeons completely broken by
sbf(swap(p1 ,p2 )) ∧ sbf(swap(p2 ,p3 )) ∧ sbf(swap(p3 ,p4 ))
Let's try BreakID on the pigeonhole problem...
Occupies(p1,h1) | Occupies(p1,h2) | Occupies(p1,h3) |
Occupies(p2,h1) | Occupies(p2,h2) | Occupies(p2,h3) |
Occupies(p3,h1) | Occupies(p3,h2) | Occupies(p3,h3) |
Occupies(p4,h1) | Occupies(p4,h2) | Occupies(p4,h3) |
Occupies(p1 ,h1 ) < Occupies(p2 ,h1 ) < Occupies(p3 ,h1 ) < Occupies(p4 ,h1 ) < ...
Stabilizer chain for pigeon symmetry consists of 4 subgroups
G0 permutes rows 1-2-3-4,
G1 permutes rows 2-3-4,
G2 swaps rows 3-4,
G3 =1
Binary symmetry breaking clauses:
¬Occupies(p1 ,h1 ) v Occupies(p2 ,h1 )
...
¬Occupies(p3 ,h1 ) v Occupies(p4 ,h1 )
BreakID combines row interchangeability detection with stabilizer chain symmetry breaking (approximative)
[1] Symmetry and Satisfiability: An Update - 2010 - Katebi e.a.
[2] Efficient Symmetry-Breaking for Boolean Satisfiability - 2006 - Aloul e.a.
[3] On the importance of row symmetry - 2014 - Devriendt e.a.
[4] Automatic generation of constraints for partial symmetry breaking - 2011 - Jefferson & Petrie
[5] Symmetry and satisfiability - 2009 - Sakallah
[6] On Local Domain Symmetry for Model Expansion - 2016 - Devriendt e.a. (accepted for ICLP)
Two classes of techniques
Static symmetry breaking:
Dynamic symmetry exploitation (SEL):
[1] Symmetry and Satisfiability: An Update - 2010 - Katebi e.a.
[2] Efficient Symmetry-Breaking for Boolean Satisfiability - 2006 - Aloul e.a.
[3] On the importance of row symmetry - 2014 - Devriendt e.a.
[4] Automatic generation of constraints for partial symmetry breaking - 2011 - Jefferson & Petrie
[5] Symmetry and satisfiability - 2009 - Sakallah
[6] On Local Domain Symmetry for Model Expansion - 2016 - Devriendt e.a.
[7] Improved Static Symmetry Breaking for SAT
- 2016 - Devriendt e.a.