π€ AI Summary
Boolean satisfiability (SAT) solvers often redundantly explore equivalent regions of the search space due to symmetries. This work proposes a static symmetry-breaking method based on orbitopal fixing, adapted for the first time to proof-logging SAT solvers that support formal verification. By introducing only unit clauses, the approach efficiently handles symmetries without interfering with the solverβs native heuristics. It integrates orbitopal fixing techniques from mixed-integer programming with the substitution redundancy proof system. Implemented in the solver satsuma, the method yields significant speedups on benchmarks rich in symmetries while incurring negligible performance overhead on other instances, all while producing concise, formally verifiable proof certificates.
π Abstract
Despite their sophisticated heuristics, boolean satisfiability (SAT) solvers are still vulnerable to symmetry, causing them to visit search regions that are symmetric to ones already explored. While symmetry handling is routine in other solving paradigms, integrating it into state-of-the-art proof-producing SAT solvers is difficult: added reasoning must be fast, non-interfering with solver heuristics, and compatible with formal proof logging. To address these issues, we present a practical static symmetry breaking approach based on orbitopal fixing, a technique adapted from mixed-integer programming. Our approach adds only unit clauses, which minimizes downstream slowdowns, and it emits succinct proof certificates in the substitution redundancy proof system. Implemented in the satsuma tool, our methods deliver consistent speedups on symmetry-rich benchmarks with negligible regressions elsewhere.