Formal verification of a modern SAT solver by shallow embedding into Isabelle/HOL
Formal verification of a modern SAT solver by shallow embedding into Isabelle/HOL
复制标题
DOI:
10.1016/j.tcs.2010.09.014
复制
发表时间:
2010-11-12
影响因子:
1.1
通讯作者:
Maric, Filip
中科院分区:
文献类型:
--
作者:
Maric, Filip
We present a formalization and a formal total correctness proof of a MiniSAT-like SAT solver within the system Isabelle/HOL. The solver is based on the DPLL procedure and employs most state-of-the-art SAT solving techniques, including the conflict-guided backjumping, clause learning, and the two-watched unit propagation scheme. A shallow embedding into Isabelle/HOL is used and the solver is expressed as a set of recursive HOL functions. Based on this specification, the Isabelle's built-in code generator can be used to generate executable code in several supported functional languages (Haskell, SML, and OCaml). The SAT solver implemented in this way is, to our knowledge, the first fully formally and mechanically verified modern SAT solver. (C) 2010 Elsevier B.V. All rights reserved.