Advanced Formal Verification

Preface. Contributing Authors. Introduction R. Drechsler. 1. Formal Verification. 2. Challenges. 3. Contributions to this Book. 1: What SAT-Solvers Can and Cannot Do E. Goldberg. 1. Introduction. 2. Hard Equivalence Checking CNF Formulas. 3. Stable Sets of Points. 2: Advancements in Mixed BDD and SAT Techniques G. Cabodi, S. Quer. 1. Introduction. 2. Background. 3. Comparing SAT and BDD Approaches: Are they Different? 4. Decision Diagrams as a Slave Engine in General SAT: Clause Compression by Means of ZBDDs. 5. Decision Diagram Preprocessing and Circuit-Based SAT. 6. Using SAT in Symbolic Reachability Analysis. 7. Conclusion, Remarks and Future Works. 3: Equivalence Checking of Arithmetic Circuits D. Stoffel, E. Karibaev, I. Kufareva, W. Kunz. 1. Introduction. 2. Verification Using Functional Properties. 3. Bit-Level Decision Diagrams. 4. Word-Level Decision Diagrams. 5. Arithmetic Bit-Level Verification. 6. Conclusion. 7. Future Perspectives. 4: Application of Property Checking R. Brinkmann, P. Johannsen, K. Winkelmann. 1. Circuit Verification Environment: User's View. 2. Circuit Verification Environment: Underlying Techniques. 3. Exploiting Symmetries. 4. Automated Data Path Scaling to Speed Up Property Checking. 5. Property Checking Use Cases. 6. Summary. 5: Assertion-Based Verification C.N. Coelho Jr, H.D. Foster. 1. Introduction. 2. Assertion Specification. 3. Assertion Libraries. 4. Assertion Simulation. 5. Assertions and Formal Verification. 6. Assertions and Synthesis. 7. PCI Property Specification Example. 8. Summary. 6: Formal Verification for Nonlinear Analog Systems W. Hartong, R. Klausen, L. Hedrich. 1. Introduction. 2. System Description. 3. Equivalence Checking. 4. Model Checking. 5. Summary. 6. Acknowledgement. Appendix: Mathematical Symbols. Index.

[1]  Rolf Drechsler,et al.  Formal Verification on the RT Level Computing One-To-One Design Abstractions by Signal Width Reduction , 2001 .

[2]  Kenneth L. McMillan,et al.  Applying SAT Methods in Unbounded Symbolic Model Checking , 2002, CAV.

[3]  Masahiro Fujita,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, DAC '99.

[4]  Igor L. Markov,et al.  Solving difficult SAT instances in the presence of symmetry , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[5]  Enrico Macii,et al.  Algorithms for approximate FSM traversal based on state space decomposition , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Parosh Aziz Abdulla,et al.  Symbolic Reachability Analysis Based on SAT-Solvers , 2000, TACAS.

[7]  Sharad Malik,et al.  The Quest for Efficient Boolean Satisfiability Solvers , 2002, CAV.

[8]  Kwang-Ting Cheng,et al.  Self-referential verification for gate-level implementations of arithmetic circuits , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Lars Hedrich,et al.  Model checking algorithms for analog verification , 2002, DAC '02.

[10]  Hector J. Levesque,et al.  Hard and Easy Distributions of SAT Problems , 1992, AAAI.

[11]  Henrik Reif Andersen,et al.  Equivalence checking of combinational circuits using Boolean expression diagrams , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  Kwang-Ting Cheng,et al.  A circuit SAT solver with signal correlation guided learning , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[13]  Rolf Drechsler,et al.  Polynomial Formal Verification of Multipliers , 2003, Formal Methods Syst. Des..

[14]  Igor L. Markov,et al.  Faster SAT and smaller BDDs via common function structure , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[15]  Jiunn-Chern Chen,et al.  Equivalence checking of integer multipliers , 2001, ASP-DAC '01.

[16]  Wolfgang Kunz,et al.  HANNIBAL: An efficient tool for logic verification based on recursive learning , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[17]  Rolf Drechsler,et al.  Binary decision diagrams in theory and practice , 2001, International Journal on Software Tools for Technology Transfer.

[18]  Rolf Drechsler,et al.  Gatecomp: Equivalence Checking of Digital Circuits in an Industrial Environment , 2002 .

[19]  Michael Kantrowitz,et al.  I'm done simulating; now what? Verification coverage analysis and correctness checking of the DEC chip 21164 Alpha microprocessor , 1996, DAC '96.

[20]  Yusuke Matsunaga An efficient equivalence checker for combinational circuits , 1996, DAC '96.

[21]  Dominik Stoffel,et al.  Cost-efficient Formal Block Verification for ASIC Design , 2003, MBMV.

[22]  Masahiro Fujita,et al.  Multi-Terminal Binary Decision Diagrams: An Efficient Data Structure for Matrix Representation , 1997, Formal Methods Syst. Des..

[23]  Fausto Giunchiglia,et al.  NUSMV: A New Symbolic Model Verifier , 1999, CAV.

[24]  Harald Ruess,et al.  Solving Bit-Vector Equations , 1998, FMCAD.

[25]  David L. Dill,et al.  A decision procedure for bit-vector arithmetic , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[26]  Jacob A. Abraham,et al.  Abstraction Techniques for Validation Coverage Analysis and Test Generation , 1998, IEEE Trans. Computers.

[27]  T. Henzinger,et al.  Algorithmic Analysis of Nonlinear Hybrid Systems , 1998, CAV.

[28]  Orna Grumberg,et al.  Model checking and modular verification , 1994, TOPL.

[29]  Karem A. Sakallah,et al.  GRASP—a new search algorithm for satisfiability , 1996, ICCAD 1996.

[30]  Harald Ruess,et al.  An Efficient Decision Procedure for the Theory of Fixed-Sized Bit-Vectors , 1997, CAV.

[31]  Henrik Reif Andersen,et al.  Satisfiability Checking Using Boolean Expression Diagrams , 2001, TACAS.

[32]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[33]  Melvin A. Breuer,et al.  Digital systems testing and testable design , 1990 .

[34]  R. I. Bahar,et al.  Algebraic decision diagrams and their applications , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[35]  Ran Raz,et al.  On Interpolation and Automatization for Frege Systems , 2000, SIAM J. Comput..

[36]  Masahiro Fujita,et al.  Advanced Verification Techniques Based on Learning , 1995, 32nd Design Automation Conference.

[37]  Edmund M. Clarke,et al.  Sequential circuit verification using symbolic model checking , 1991, DAC '90.

[38]  Timothy Kam,et al.  Coverage estimation for symbolic model checking , 1999, DAC '99.

[39]  Thomas A. Henzinger,et al.  HYTECH: A Model Checker for Hybrid Systems , 1997, CAV.

[40]  Malay K. Ganai,et al.  Circuit-based Boolean reasoning , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[41]  Rolf Drechsler Formal Verification of Circuits , 2000, Springer US.

[42]  Shinji Kimura Residue BDD and Its Application to the Verification of Arithmetic Circuits , 1995, 32nd Design Automation Conference.

[43]  Gila Kamhi,et al.  Efficient debugging in a formal verification environment , 2003, International Journal on Software Tools for Technology Transfer.

[44]  Rolf Drechsler,et al.  K*BMDs: a new data structure for verification , 1996, Proceedings ED&TC European Design and Test Conference.

[45]  Albert E. Ruehli,et al.  The modified nodal approach to network analysis , 1975 .

[46]  Janick Bergeron,et al.  Writing Testbenches: Functional Verification of HDL Models , 2000 .

[47]  Rolf Drechsler,et al.  Efficient Representation and Manipulation of Switching Functions Based on Ordered Kronecker Functional Decision Diagrams , 1994, 31st Design Automation Conference.

[48]  Robert P. Kurshan,et al.  Analysis of digital circuits through symbolic reduction , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[49]  Dominik Stoffel,et al.  Equivalence checking of arithmetic circuits on the arithmetic bit level , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[50]  Jochen Bern,et al.  Some heuristics for generating tree-like FBDD types , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[51]  George J. Pappas,et al.  Discrete abstractions of hybrid systems , 2000, Proceedings of the IEEE.

[52]  Oded Maler,et al.  Reachability Analysis via Face Lifting , 1998, HSCC.

[53]  David L. Dill,et al.  Validity Checking for Combinations of Theories with Equality , 1996, FMCAD.

[54]  Rolf Drechsler,et al.  Speeding Up Verification of RTL Designs by Computing One-to-one Abstractions with Reduced Signal Widths , 2001, VLSI-SOC.

[55]  L. Petzold Differential/Algebraic Equations are not ODE's , 1982 .

[56]  Prakash Rashinkar System-On-A-Chip verification , 2001 .

[57]  J. Kukula,et al.  Symbolic RTL simulation , 2001, DAC '01.

[58]  Rolf Drechsler Synthesizing checkers for on-line verification of System-on-Chip designs , 2003, Proceedings of the 2003 International Symposium on Circuits and Systems, 2003. ISCAS '03..

[59]  Dominik Stoffel,et al.  Reasoning in Boolean Networks - Logic Synthesis and Verification Using Testing Techniques , 1997, Frontiers in electronic testing.

[60]  C. W. Gear,et al.  Differential algebraic equations, indices, and integral algebraic equations , 1990 .

[61]  Armin Biere,et al.  Combining Decision Diagrams and SAT Procedures for Efficient Symbolic Model Checking , 2000, CAV.

[62]  M. Günther,et al.  The DAE-index in electric circuit simulation , 1995 .

[63]  Ray Jackendoff,et al.  THE UNANSWERED QUESTION , 2019, Classical Music.

[64]  Pravin Varaiya,et al.  Decidability of Hybrid Systems with Rectangular Differential Inclusion , 1994, CAV.

[65]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[66]  Armando Tacchella,et al.  Benefits of Bounded Model Checking at an Industrial Setting , 2001, CAV.

[67]  Gianpiero Cabodi,et al.  Improving SAT-based bounded model checking by means of BDD-based approximate traversals , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[68]  François Laroussinie,et al.  Specification in CTL+Past for Verification in CTL , 1999, Inf. Comput..

[69]  R. Bryant,et al.  PHDD: an efficient graph representation for floating point circuit verification , 1997, ICCAD 1997.

[70]  Peer Johannsen,et al.  Speeding up hardware verification by automated data path scaling , 2006 .

[71]  Luigi Fortuna,et al.  Model Order Reduction Techniques with Applications in Electrical Engineering , 1992 .

[72]  Endre Szemerédi,et al.  Many hard examples for resolution , 1988, JACM.

[73]  Edmund M. Clarke,et al.  Symbolic model checking for sequential circuit verification , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[74]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[75]  Jerry R. Burch,et al.  Using bdds to verify multipliers , 1991, 28th ACM/IEEE Design Automation Conference.

[76]  Per Bjesse,et al.  Finding Bugs in an Alpha Microprocessor Using Satisfiability Solvers , 2001, CAV.

[77]  Harry Foster,et al.  Assertions Targeting A Diverse Set of Verification Tools , 2002 .

[78]  Peer Johannsen Reducing bitvector satisfiability problems to scale down design sizes for RTL property checking , 2001, Sixth IEEE International High-Level Design Validation and Test Workshop.

[79]  Ilan Beer,et al.  FoCs: Automatic Generation of Simulation Checkers from Formal Specifications , 2000, CAV.

[80]  Rolf Drechsler,et al.  RTL-datapath verification using integer linear programming , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.

[81]  Jacob A. Abraham,et al.  Efficient algorithmic circuit verification using indexed BDDs , 1994, Proceedings of IEEE 24th International Symposium on Fault- Tolerant Computing.

[82]  S. Natarajan,et al.  A systematic method for obtaining state equations using MNA , 1991 .

[83]  O. Junge,et al.  The Algorithms Behind GAIO — Set Oriented Numerical Methods for Dynamical Systems , 2001 .

[84]  K. Sakallah,et al.  Backtrack Search Using ZBDDs , 2001 .

[85]  Karem A. Sakallah,et al.  ZBDD-Based Backtrack Search SAT Solver , 2002, IWLS.

[86]  Lars Hedrich,et al.  A formal approach to verification of linear analog circuits with parameter tolerances , 1998, Proceedings Design, Automation and Test in Europe.

[87]  C.H. Papadimitriou,et al.  On selecting a satisfying truth assignment , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[88]  Sérgio Vale Aguiar Campos,et al.  Symbolic Model Checking , 1993, CAV.

[89]  Masahiro Fujita,et al.  Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping , 1993, 30th ACM/IEEE Design Automation Conference.

[90]  Diana Estévez Schwarz,et al.  Consistent initialization for index-2 differential algebraic equations and its application to circuit simulation , 2000 .

[91]  Zhihong Zeng,et al.  LPSAT: a unified approach to RTL satisfiability , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[92]  Masahiro Fujita,et al.  Verification of Arithmetic Circuits by Comparing Two Similar Circuits , 1996, CAV.

[93]  Nikolaj Bjørner,et al.  Deiding Fixed and Non-fixed Size Bit-vectors , 1998, TACAS.

[94]  Wolfgang Rosenstiel,et al.  Multilevel logic synthesis based on functional decision diagrams , 1992, [1992] Proceedings The European Conference on Design Automation.

[95]  Andreas G. Veneris,et al.  Logic verification based on diagnosis techniques , 2003, ASP-DAC '03.

[96]  Sharad Malik,et al.  Partition-based decision heuristics for image computation using SAT and BDDs , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[97]  Jörg Bormann,et al.  Formale Verifikation für Nicht-Formalisten (Formal Verification for Non-Formalists) , 2001, Informationstechnik Tech. Inform..

[98]  Kurt Antreich,et al.  Circuit analysis and optimization driven by worst-case distances , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[99]  Jiang Long,et al.  Smart simulation using collaborative formal and simulation engines , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[100]  David L. Dill,et al.  Better verification through symmetry , 1996, Formal Methods Syst. Des..

[101]  Roswitha März,et al.  Numerical methods for differential algebraic equations , 1992, Acta Numerica.

[102]  Zijiang Yang,et al.  SAT-Based Image Computation with Application in Reachability Analysis , 2000, FMCAD.

[103]  Rolf Drechsler,et al.  On the relation between SAT and BDDs for equivalence checking , 2002, Proceedings International Symposium on Quality Electronic Design.

[104]  Robert B. Jones Symbolic Simulation Methods for Industrial Formal Verification , 2002 .

[105]  Olivier Bournez,et al.  Approximate Reachability Analysis of Piecewise-Linear Dynamical Systems , 2000, HSCC.

[106]  Christopher S. Wallace,et al.  A Suggestion for a Fast Multiplier , 1964, IEEE Trans. Electron. Comput..

[107]  F.H. Bursal,et al.  A New Method of Nonlinear System Identification using Interpolated Cell Mapping , 1992, 1992 American Control Conference.

[108]  Robert P. Kurshan,et al.  A Practical Approach to Coverage in Model Checking , 2001, CAV.

[109]  Wolfgang Mathis,et al.  Theorie nichtlinearer Netzwerke , 1987 .

[110]  Bart Selman,et al.  Noise Strategies for Improving Local Search , 1994, AAAI.

[111]  D. Brand Verification of large synthesized designs , 1993, ICCAD 1993.

[112]  Robert K. Brayton,et al.  Sequential circuit design using synthesis and optimization , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[113]  Kwang-Ting Cheng,et al.  Induction-based gate-level verification of multipliers , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[114]  Gianpiero Cabodi,et al.  Can BDDs compete with SAT solvers on bounded model checking? , 2002, DAC '02.

[115]  Eugene Goldberg Testing Satisfiability of CNF Formulas by Computing a Stable Set of Points , 2002, CADE.

[116]  Taewhan Kim,et al.  Arithmetic optimization using carry-save-adders , 1998, DAC.

[117]  Igor L. Markov,et al.  A Compressed Breadth-First Search for Satisfiability , 2002, ALENEX.

[118]  Hans Zantema,et al.  Resolution and binary decision diagrams cannot simulate each other polynomially , 2001, Discret. Appl. Math..

[119]  Lars Hedrich,et al.  Approaches to Formal Verification of Analog Circuits , 2001 .

[120]  Thomas Kropf,et al.  Introduction to Formal Hardware Verification , 1999, Springer Berlin Heidelberg.

[121]  Lars Hedrich,et al.  On Discrete Modeling and Model Checking for Nonlinear Analog Systems , 2002, CAV.

[122]  Shuzo Yajima,et al.  Efficient construction of binary moment diagrams for verifying arithmetic circuits , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[123]  Harry Foster,et al.  Principles of verifiable RTL design , 2000 .

[124]  Andreas Kuehlmann,et al.  Equivalence checking using cuts and heaps , 1997, DAC.

[125]  Lars Hedrich,et al.  A formal approach to nonlinear analog circuit verification , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[126]  Rolf Drechsler,et al.  Evolutionary Algorithms for Embedded System Design , 2002, Genetic Algorithms and Evolutionary Computation.

[127]  Linda R. Petzold,et al.  Consistent Initial Condition Calculation for Differential-Algebraic Systems , 1998, SIAM J. Sci. Comput..

[128]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[129]  Eugene Goldberg Proving Unsatisfiability of CNFs Locally , 2004, Journal of Automated Reasoning.

[130]  Zhihong Zeng,et al.  Functional Test Generation using Constraint Logic Programming , 2001, VLSI-SOC.

[131]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[132]  Kurt Keutzer,et al.  Why is ATPG easy? , 1999, DAC '99.

[133]  P. Dooren The Computation of Kronecker's Canonical Form of a Singular Pencil , 1979 .

[134]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[135]  Armin Haken,et al.  The Intractability of Resolution , 1985, Theor. Comput. Sci..

[136]  Yung-Te Lai,et al.  Edge-valued binary decision diagrams for multi-level hierarchical verification , 1992, DAC '92.

[137]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[138]  Sharad Malik,et al.  Limits of using signatures for permutation independent Boolean comparison , 1995, ASP-DAC '95.

[139]  Ted Stanion Implicit verification of structurally dissimilar arithmetic circuits , 1999, Proceedings 1999 IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.99CB37040).

[140]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[141]  Manindra Agrawal,et al.  The Boolean isomorphism problem , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[142]  Roland W. Freund,et al.  Efficient linear circuit analysis by Pade´ approximation via the Lanczos process , 1994, EURO-DAC '94.

[143]  Bob Bentley,et al.  Validating the Intel(R) Pentium(R) 4 microprocessor , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[144]  Andreas Kuehlmann,et al.  Equivalence checking combining a structural SAT-solver, BDDs, and simulation , 2000, Proceedings 2000 International Conference on Computer Design.

[145]  James M. Crawford,et al.  Symmetry-Breaking Predicates for Search Problems , 1996, KR.

[146]  Tomás E. Uribe,et al.  Ordered Binary Decision Diagrams and the Davis-Putnam Procedure , 1994, CCL.

[147]  Karem A. Sakallah,et al.  Generalized symmetries in Boolean functions , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[148]  Bassam Tabbara,et al.  Advanced techniques for RTL debugging , 2003, DAC '03.

[149]  Carl Ramey,et al.  Functional verification of a multiple-issue, out-of-order, superscalar Alpha processor-the DEC Alpha 21264 microprocessor , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[150]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[151]  Michael S. Hsiao,et al.  Efficient preimage computation using a novel success-driven ATPG , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[152]  Sung-Mo Kang,et al.  Worst-case analysis and optimization of VLSI circuit performances , 1995, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..