Efficient Verified (UN)SAT Certificate Checking

被引:0
作者
Peter Lammich
机构
[1] University of Manchester Oxford Road,School of Computer Science
来源
Journal of Automated Reasoning | 2020年 / 64卷
关键词
Unsat certificates; SAT solving; DRAT; Isabelle/HOL; Stepwise refinement; Formal verification; Verified software;
D O I
暂无
中图分类号
学科分类号
摘要
SAT solvers decide the satisfiability of Boolean formulas in conjunctive normal form. They are commonly used for software and hardware verification. Modern SAT solvers are highly complex and optimized programs. As a single bug in the solver may invalidate the verification of many systems, SAT solvers output certificates for their answer, which are then checked independently. However, even certificate checking requires highly optimized non-trivial programs. This paper presents the first SAT solver certificate checker that is formally verified down to the integer sequence representing the formula. Our tool supports the full DRAT standard, and is even faster than the unverified state-of-the-art tool drat-trim, on a realistic set of benchmarks drawn from the 2016 and 2017 SAT competitions. An optional multi-threaded mode further reduces the runtime, in particular for big certificates.
引用
收藏
页码:513 / 532
页数:19
相关论文
共 4 条
[1]  
Marić F(2010)Formal verification of a modern SAT solver by shallow embedding into Isabelle/HOL Theor. Comput. Sci. 411 4333-4356
[2]  
Myreen MO(2014)Proof-producing translation of higher-order logic into pure and stateful ML J. Funct. Program. 24 284-315
[3]  
Owens S(1971)Program development by stepwise refinement Commun. ACM 14 221-227
[4]  
Wirth N(undefined)undefined undefined undefined undefined-undefined