Title :
Propelling SAT and SAT-based BMC using careset
Author_Institution :
NEC Labs. America, Princeton, NJ, USA
Abstract :
We introduce the notion of careset, a subset of variables in a Boolean formula that must be assigned in any satisfying assignment. We propose a restricted branching technique in a CDCL solver (i.e., DPLL-based SAT solver with clause learning) such that every decision path is prefixed with decisions on such a careset. Although finding a non-trivial careset may not be tractable in general, we demonstrate that for a SAT-based bounded model checking (BMC) application we can derive it automatically from the sequential behaviors of programs. Our proposed branching technique significantly reduces the search effort of a CDCL solver, and leads to a performance improvement of 1-2 orders of magnitude over well-known heuristics, and over top-ranked solvers of SAT2009 competition, that do not exploit system-level information. We also discuss the proof complexity of such a restricted CDCL solver.
Keywords :
Boolean algebra; computability; formal verification; Boolean formula; CDCL solver; DPLL-based SAT solver; SAT-based BMC; SAT-based bounded model checking; careset; clause learning; proof complexity; restricted branching technique; sequential behaviors; Complexity theory; Encoding; Engines; Input variables; Logic gates; Observability; Software;
Conference_Titel :
Formal Methods in Computer-Aided Design (FMCAD), 2010
Conference_Location :
Lugano
Print_ISBN :
978-1-4577-0734-6
Electronic_ISBN :
978-0-9835678-0-6