🤖 AI Summary
This work addresses the limitations of traditional inprocessing techniques in SAT solving, which are constrained by the global decision level and thus poorly suited for incremental solving. The paper introduces a novel backtrackable inprocessing (BI) framework that, for the first time, enables safe execution of preprocessing operations at arbitrary decision levels and at any point during search while guaranteeing correctness upon backtracking. The framework integrates three core techniques: clause implication, self-subsuming resolution, and bounded variable elimination (BVE), and is embedded within the Island SAT solver. Evaluated on BMC benchmarks from the 2017 Hardware Model Checking Competition, the approach significantly outperforms baseline methods, solving approximately 1.5 times as many hard bounded-model-checking instances.
📝 Abstract
We introduce Backtrackable Inprocessing (BI), a framework that enables applying inprocessing under the current trail at any decision level, at any point during incremental SAT solving. Our approach lifts the long-standing restriction that inprocessing must be performed only at the global decision level, thereby substantially increasing its potential effectiveness. We focus on three highly efficient core techniques: subsumption, self-subsuming resolution, and Bounded Variable Elimination (BVE). We show how to ensure sound backtracking in the presence of inprocessing, and demonstrate that applying BI for incremental preprocessing after propagating assumptions yields significant performance improvements on Bounded Model Checking (BMC) benchmarks from the Hardware Model Checking Competition 2017. Implemented in the Island SAT solver (IntelSAT's fork), BI enables solving $\sim$1.5$\times$ as many difficult bounds as the baseline global-level incremental preprocessor.