DocumentCode
3604964
Title
Boolean Satisfiability Solvers and Their Applications in Model Checking
Author
Vizel, Yakir ; Weissenbacher, Georg ; Malik, Sharad
Author_Institution
Dept. of Electr. Eng., Princeton Univ., Princeton, NJ, USA
Volume
103
Issue
11
fYear
2015
Firstpage
2021
Lastpage
2035
Abstract
Boolean satisfiability (SAT)-the problem of determining whether there exists an assignment satisfying a given Boolean formula-is a fundamental intractable problem in computer science. SAT has many applications in electronic design automation (EDA), notably in synthesis and verification. Consequently, SAT has received much attention from the EDA community, who developed algorithms that have had a significant impact on the performance of SAT solvers. EDA researchers introduced techniques such as conflict-driven clause learning, novel branching heuristics, and efficient unit propagation. These techniques form the basis of all modern SAT solvers. Using these ideas, contemporary SAT solvers can often handle practical instances with millions of variables and constraints. The continuing advances of SAT solvers are the driving force of modern model checking tools, which are used to check the correctness of hardware designs. Contemporary automated verification techniques such as bounded model checking, proof-based abstraction, interpolation-based model checking, and IC3 have in common that they are all based on SAT solvers and their extensions. In this paper, we trace the most important contributions made to modern SAT solvers by the EDA community, and discuss applications of SAT in hardware model checking.
Keywords
Boolean functions; computability; formal verification; interpolation; Boolean formula; Boolean satisfiability solvers; EDA community; SAT solvers; automated verification techniques; bounded model checking; branching heuristics; computer science; electronic design automation; hardware designs; interpolation based model checking; proof based abstraction; Algorithm design and analysis; Automatic test pattern generation; Boolean functions; Computer science; Context modeling; Data structures; Model checking; IC3; interpolation; model checking; proofs; satisfiability solving;
fLanguage
English
Journal_Title
Proceedings of the IEEE
Publisher
ieee
ISSN
0018-9219
Type
jour
DOI
10.1109/JPROC.2015.2455034
Filename
7225110
Link To Document