Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
A verified SAT solver framework with learn, forget, restart, and incrementality
Blanchette J., Fleury M., Lammich P., Weidenbach C. Journal of Automated Reasoning61 (1-4):333-365,2018.Type:Article
Date Reviewed: Dec 10 2018

SAT solvers are automatic decision procedures for the propositional satisfiability problem; they play an important role in planning, scheduling, optimization, and especially the formal verification of hardware and software systems. Thus, verifying the correctness of SAT solvers and deriving provably correct solvers has become of major interest.

This paper contributes a formal framework for the theory of conflict-driven clause learning (CDCL) underlying modern SAT solvers. The theory is elaborated with the Isabelle/HOL proof assistant, and an abstract algorithm in the form of a state transition system is formulated and verified. By a sequence of refinements, the algorithm is concretized and various optimizations are incorporated; the Isabelle code generator translates the resulting functional algorithm into actually executable code. Finally, an imperative implementation is derived that makes use of efficient mutable data structures, yielding a reasonably efficient and provably correct SAT solver.

The present work was performed within a period of ten months and has yielded about 28000 lines of Isabelle text; it is part of an effort to formalize the content of a forthcoming textbook on automated reasoning (Blanchette et al. actually identify a major mistake in the draft of the book). Apart from the details of the presented methodology, it is most interesting to read about the insights the authors gained during their formalization work. These insights are also relevant to researchers in other application domains who are interested in a thorough understanding of their theories and the correctness of their algorithms.

Reviewer:  Wolfgang Schreiner Review #: CR146340 (1904-0138)
Bookmark and Share
  Featured Reviewer  
 
Learning (I.2.6 )
 
 
Knowledge Acquisition (I.2.6 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Learning": Date
Learning in parallel networks: simulating learning in a probabilistic system
Hinton G. (ed) BYTE 10(4): 265-273, 1985. Type: Article
Nov 1 1985
Macro-operators: a weak method for learning
Korf R. Artificial Intelligence 26(1): 35-77, 1985. Type: Article
Feb 1 1986
Inferring (mal) rules from pupils’ protocols
Sleeman D.  Progress in artificial intelligence (, Orsay, France,391985. Type: Proceedings
Dec 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy