SAT-Based Synthesis Methods for Safety Specs

Automatic synthesis of hardware components from declarative specifications is an ambitious endeavor in computer aided design. Existing synthesis algorithms are often implemented with Binary Decision Diagrams BDDs, inheriting their scalability limitations. Instead of BDDs, we propose several new methods to synthesize finite-state systems from safety specifications using decision procedures for the satisfiability of quantified and unquantified Boolean formulas SAT-, QBF- and EPR-solvers. The presented approaches are based on computational learning, templates, or reduction to first-order logic. We also present an efficient parallelization, and optimizations to utilize reachability information and incremental solving. Finally, we compare all methods in an extensive case study. Our new methods outperform BDDs and other existing work on some classes of benchmarks, and our parallelization achieves a super-linear speedup.

[1]  Amir Pnueli,et al.  Specify, Compile, Run: Hardware from PSL , 2007, COCV@ETAPS.

[2]  Fabio Somenzi,et al.  Safety first: A two-stage algorithm for LTL games , 2009, 2009 Formal Methods in Computer-Aided Design.

[3]  Wolfgang Thomas,et al.  On the Synthesis of Strategies in Infinite Games , 1995, STACS.

[4]  Konstantin Korovin,et al.  iProver - An Instantiation-Based Theorem Prover for First-Order Logic (System Description) , 2008, IJCAR.

[5]  Klaus Schneider,et al.  Solving Games Using Incremental Induction , 2013, IFM.

[6]  Rüdiger Ehlers,et al.  Symbolically synthesizing small circuits , 2012, 2012 Formal Methods in Computer-Aided Design (FMCAD).

[7]  Aaron R. Bradley,et al.  SAT-Based Model Checking without Unrolling , 2011, VMCAI.

[8]  Roderick Bloem,et al.  Automated error localization and correction for imperative programs , 2011, 2011 Formal Methods in Computer-Aided Design (FMCAD).

[9]  Armin Biere,et al.  qbf2epr: A Tool for Generating EPR Formulas from QBF , 2013, PAAR@IJCAR.

[10]  Armando Solar-Lezama,et al.  The Sketching Approach to Program Synthesis , 2009, APLAS.

[11]  Mikolás Janota,et al.  Abstraction-Based Algorithm for 2QBF , 2011, SAT.

[12]  In-Ho Moon,et al.  Least fixpoint approximations for reachability analysis , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[13]  Bernd Becker,et al.  ALLQBF Solving by Computational Learning , 2012, ATVA.

[14]  Raymond Reiter,et al.  A Theory of Diagnosis from First Principles , 1986, Artif. Intell..

[15]  Jie-Hong Roland Jiang,et al.  Interpolating functions from large Boolean relations , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[16]  Armin Biere,et al.  A DPLL Algorithm for Solving DQBF , 2012 .

[17]  Stephen McCamant,et al.  The Daikon system for dynamic detection of likely invariants , 2007, Sci. Comput. Program..

[18]  Roderick Bloem,et al.  Fault Localization and Correction with QBF , 2007, SAT.

[19]  Martina Seidl,et al.  Partial witnesses from preprocessed quantified Boolean formulas , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[20]  Jean-François Raskin,et al.  An Antichain Algorithm for LTL Realizability , 2009, CAV.

[21]  Rüdiger Ehlers,et al.  Symbolic bounded synthesis , 2010, Formal Methods Syst. Des..

[22]  Armin Biere,et al.  Resolution-Based Certificate Extraction for QBF - (Tool Presentation) , 2012, SAT.

[23]  David A. Plaisted,et al.  A Structure-Preserving Clause Form Translation , 1986, J. Symb. Comput..

[24]  Grigory Yaroslavtsev,et al.  Finding Efficient Circuits Using SAT-Solvers , 2009, SAT.

[25]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[26]  Cesare Tinelli,et al.  Handbook of Satisfiability , 2021, Handbook of Satisfiability.

[27]  Armin Biere,et al.  DepQBF: A Dependency-Aware QBF Solver , 2010, J. Satisf. Boolean Model. Comput..

[28]  Harry R. Lewis,et al.  Complexity Results for Classes of Quantificational Formulas , 1980, J. Comput. Syst. Sci..

[29]  Robert K. Brayton,et al.  ABC: An Academic Industrial-Strength Verification Tool , 2010, CAV.