Speculative SAT Modulo SAT
Open Access
- 4 April 2024
- book chapter
- Published by Springer Nature
- p. 43-60
Abstract
State-of-the-art model-checking algorithms like IC3/PDR are based on uni-directional modular SAT solving for finding and/or blocking counterexamples. Modular SAT-solvers divide a SAT-query into multiple sub-queries, each solved by a separate SAT-solver (called a module), and propagate information (lemmas, proof obligations, blocked clauses, etc.) between modules. While modular solving is key to IC3/PDR, it is obviously not as effective as monolithic solving, especially when individual sub-queries are harder to solve than the combined query. This is partially addressed in SAT modulo SAT (SMS) by propagating unit literals back and forth between the modules and using information from one module to simplify the sub-query in another module as soon as possible (i.e., before the satisfiability of any sub-query is established). However, bi-directionality of SMS is limited because of the strict order between decisions and propagation – only one module is allowed to make decisions, until its sub-query is SAT. In this paper, we propose a generalization of SMS, called specSMS, that speculates decisions between modules. This makes it bi-directional – decisions are made in multiple modules, and learned clauses are exchanged in both directions. We further extend DRUP proofs and interpolation, these are useful in model checking, to specSMS. We have implemented specSMS in Z3 and empirically validate it on a series of benchmarks that are provably hard for SMS.Keywords
This publication has 9 references indexed in Scilit:
- Program Verification with Constrained Horn Clauses (Invited Paper)2022
- DRUPing for interpolates2014
- Efficient modular SAT solving for IC32013
- Trimming while checking clausal proofs2013
- SAT-Based Model Checking without Unrolling2011
- Z3: An Efficient SMT Solver2008
- DPLL(T): Fast Decision Procedures2004
- Verification of proofs of unsatisfiability for CNF formulas2003
- Three uses of the Herbrand-Gentzen theorem in relating model theory and proof theoryThe Journal of Symbolic Logic, 1957