Bounded model checking of infinite state systems: exploiting the automata hierarchy

We present a new approach to bounded model checking that extends current methods in two ways: firstly, instead of a reduction to propositional logic, we choose a more powerful, yet decidable target logic, namely Presburger arithmetic. Secondly, instead of unwinding temporal logic formulas, we unwind corresponding /spl omega/-automata. To this end, we employ a special technique for translating safety and liveness properties to /spl omega/-automata with corresponding acceptance conditions. This combination allows us to utilize bounded model checking techniques for the efficient verification of infinite state systems.

[1]  Armin Biere,et al.  Bounded Model Checking Using Satisfiability Solving , 2001, Formal Methods Syst. Des..

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

[3]  Klaus Schneider,et al.  Verification of Reactive Systems: Formal Methods and Algorithms , 2003 .

[4]  Prof. Dr. Christoph Meinel,et al.  Algorithms and Data Structures in VLSI Design , 1998, Springer Berlin Heidelberg.

[5]  Klaus Schneider,et al.  A HOL Conversion for Translating Linear Time Temporal Logic to omega-Automata , 1999, TPHOLs.

[6]  Fabio Somenzi,et al.  Efficient manipulation of decision diagrams , 2001, International Journal on Software Tools for Technology Transfer.

[7]  David L. Dill,et al.  Deciding Presburger Arithmetic by Model Checking and Comparisons with Other Methods , 2002, FMCAD.

[8]  E. Clarke,et al.  Symbolic Model Checking : IO * ’ States and Beyond * , 1992 .

[9]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[10]  Klaus Schneider,et al.  The BDD space complexity of different forms of concurrency , 2001, Proceedings Second International Conference on Application of Concurrency to System Design.

[11]  Robert P. Kurshan,et al.  Experimental Analysis of Different Techniques for Bounded Model Checking , 2003, TACAS.

[12]  Joël Ouaknine,et al.  Completeness and Complexity of Bounded Model Checking , 2004, VMCAI.

[13]  Moshe Y. Vardi An Automata-Theoretic Approach to Linear Temporal Logic , 1996, Banff Higher Order Workshop.

[14]  Tobias Schüle,et al.  Exact runtime analysis using automata-based symbolic simulation , 2003, First ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2003. MEMOCODE '03. Proceedings..

[15]  Edmund M. Clarke,et al.  Another Look at LTL Model Checking , 1994, Formal Methods Syst. Des..

[16]  Thomas Kropf,et al.  Alternative Proof Procedures for Finite-State Machines in Higher-Order Logic , 1993, HUG.

[17]  Robert K. Brayton,et al.  Deterministic w Automata vis-a-vis Deterministic Buchi Automata , 1994, ISAAC.

[18]  Richard Gerber,et al.  Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic , 1997, CAV.

[19]  Derek C. Oppen,et al.  A 2^2^2^pn Upper Bound on the Complexity of Presburger Arithmetic , 1978, J. Comput. Syst. Sci..

[20]  M. Fischer,et al.  SUPER-EXPONENTIAL COMPLEXITY OF PRESBURGER ARITHMETIC , 1974 .

[21]  Marco Benedetti,et al.  Bounded Model Checking for Past LTL , 2003, TACAS.

[22]  Pierre Wolper,et al.  Simple on-the-fly automatic verification of linear temporal logic , 1995, PSTV.

[23]  Ofer Strichman,et al.  Bounded model checking , 2003, Adv. Comput..

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

[25]  Gregory R. Andrews,et al.  Concurrent programming - principles and practice , 1991 .

[26]  J. R. Büchi On a Decision Method in Restricted Second Order Arithmetic , 1990 .

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

[28]  Erich Grädel Subclasses of Presburger Arithmetic and the Polynomial-Time Hierarchy , 1988, Theor. Comput. Sci..

[29]  Olivier Coudert,et al.  New ideas on symbolic manipulations of finite state machines , 1990, Proceedings., 1990 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[30]  J. Gathen,et al.  A bound on solutions of linear integer equalities and inequalities , 1978 .

[31]  Herbert B. Enderton,et al.  A mathematical introduction to logic , 1972 .

[32]  Pierre Wolper,et al.  Constructing Automata from Temporal Logic Formulas: A Tutorial , 2002, European Educational Forum: School on Formal Methods and Performance Analysis.

[33]  J. P. Marques,et al.  GRASP : A Search Algorithm for Propositional Satisfiability , 1999 .

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

[35]  Klaus Schneider,et al.  Improving Automata Generation for Linear Temporal Logic by Considering the Automaton Hierarchy , 2001, LPAR.

[36]  E. Clarke,et al.  Symbolic model checking using SAT procedures instead of BDDs , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[37]  Klaus W. Wagner,et al.  On omega-Regular Sets , 1979, Inf. Control..

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

[39]  Amir Pnueli,et al.  Algorithmic Verification of Linear Temporal Logic Specifications , 1998, ICALP.

[40]  Amir Pnueli,et al.  Checking that finite state concurrent programs satisfy their linear specification , 1985, POPL.

[41]  Lawrence H. Landweber,et al.  Decision problems forω-automata , 1969, Mathematical systems theory.

[42]  Mary Sheeran,et al.  Checking Safety Properties Using Induction and a SAT-Solver , 2000, FMCAD.

[43]  Zohar Manna,et al.  The anchored version of the temporal framework , 1988, REX Workshop.

[44]  Pierre Wolper,et al.  Representing Arithmetic Constraints with Finite Automata: An Overview , 2002, ICLP.

[45]  Hubert Comon-Lundh,et al.  Diophantine Equations, Presburger Arithmetic and Finite Automata , 1996, CAAP.

[46]  Randal E. Bryant,et al.  On the Complexity of VLSI Implementations and Graph Representations of Boolean Functions with Application to Integer Multiplication , 1991, IEEE Trans. Computers.

[47]  Pierre Wolper,et al.  On the Construction of Automata from Linear Arithmetic Constraints , 2000, TACAS.

[48]  Harald Ruess,et al.  Lazy Theorem Proving for Bounded Model Checking over Infinite Domains , 2002, CADE.

[49]  Tobias Schüle,et al.  Symbolic Model Checking by Automata Based Set Representation , 2002, MBMV.

[50]  Faron Moller,et al.  Verification on Infinite Structures , 2001, Handbook of Process Algebra.

[51]  Richard Gerber,et al.  Model-checking concurrent systems with unbounded integer variables: symbolic representations, approximations, and experimental results , 1999, TOPL.

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

[53]  Niklaus Wirth,et al.  Algorithms and Data Structures , 1989, Lecture Notes in Computer Science.