Abstract
We developed a formal framework for SAT solving
using the Isabelle/HOL proof assistant. Through a
chain of refinements, an abstract CDCL (conflictdriven clause learning) calculus is connected to a
SAT solver that always terminates with correct answers. The framework offers a convenient way to
prove theorems about the SAT solver and experiment with variants of the calculus. Compared with
earlier verifications, the main novelties are the inclusion of the CDCL rules for forget, restart, and
incremental solving and the use of refinement