On the size of data structures used in symbolic model checking

Temporal Logic Model Checking is a verification method in which we describe a system, the model, and then we verify whether some properties, expressed in a temporal logic formula, hold in the system. It has many industrial applications. In order to improve performance, some tools allow preprocessing of the model, verifying on-line a set of properties reusing the same compiled model; we prove that the complexity of the Model Checking problem, without any preprocessing or preprocessing the model or the formula in a polynomial data structure, is the same. As a result preprocessing does not always exponentially improve performance. Symbolic Model Checking algorithms work by manipulating sets of states, and these sets are often represented by BDDs. It has been observed that the size of BDDs may grow exponentially as the model and formula increase in size. As a side result, we formally prove that a superpolynomial increase of the size of these BDDs is unavoidable in the worst case. While this exponential growth has been empirically observed, to the best of our knowledge it has never been proved so far in general terms. This result not only holds for all types of BDDs regardless of the variable ordering, but also for more powerful data structures, such as BEDs, RBCs, MTBDDs, and ADDs.

[1]  Ilan Beer,et al.  On-the-Fly Model Checking of RCTL Formulas , 1998, CAV.

[2]  Tiziano Villa,et al.  VIS: A System for Verification and Synthesis , 1996, CAV.

[3]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[4]  Philippe Schnoebelen,et al.  A Parametric Analysis of the State Explosion Problem in Model Checking , 2002, STACS.

[5]  Helmut Veith,et al.  Progress on the State Explosion Problem in Model Checking , 2001, Informatics.

[6]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

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

[8]  Paolo Liberatore Monotonic reductions, representative equivalence, and compilation of intractable problems , 2001, JACM.

[9]  Mahesh Viswanathan,et al.  The Complexity of Problems on Graphs Represented as OBDDs , 1998, Chic. J. Theor. Comput. Sci..

[10]  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.

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

[12]  Marco Schaerf,et al.  Model Checking and Preprocessing , 2007, AI*IA.

[13]  José L. Balcázar The Complexity of Searching Implicit Graphs , 1996, Artif. Intell..

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

[15]  Richard Fikes,et al.  STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving , 1971, IJCAI.

[16]  Avi Wigderson,et al.  Succinct Representations of Graphs , 1984, Inf. Control..

[17]  Pierre Marquis,et al.  A Knowledge Compilation Map , 2002, J. Artif. Intell. Res..

[18]  Paolo Liberatore,et al.  On the complexity of case-based planning , 2004, J. Exp. Theor. Artif. Intell..

[19]  Mihalis Yannakakis,et al.  A Note on Succinct Representations of Graphs , 1986, Inf. Control..

[20]  Georg Gottlob,et al.  Succinctness as a Source of Complexity in Logical Formalisms , 1999, Ann. Pure Appl. Log..

[21]  José L. Balcázar,et al.  The complexity of algorithmic problems on succinct instances , 1992 .

[22]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

[23]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

[24]  Jacobo Torán Succinct Representations of Counting Problems , 1988, AAECC.

[25]  Philippe Schnoebelen,et al.  A parametric analysis of the state-explosion problem in model checking , 2006, J. Comput. Syst. Sci..

[26]  Francesco M. Donini,et al.  The size of a revised knowledge base , 1995, PODS '95.

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

[28]  José L. Balcázar,et al.  The Complexity of Graph Problems fore Succinctly Represented Graphs , 1989, WG.

[29]  Michael Yoeli,et al.  Methodology and System for Practical Formal Verification of Reactive Hardware , 1994, CAV.

[30]  Ming Li,et al.  An Introduction to Kolmogorov Complexity and Its Applications , 1997, Texts in Computer Science.

[31]  Larry J. Stockmeyer,et al.  The Polynomial-Time Hierarchy , 1976, Theor. Comput. Sci..

[32]  Moshe Y. Vardi,et al.  Treewidth in Verification: Local vs. Global , 2005, LPAR.

[33]  Jérôme Lang,et al.  Expressive Power and Succinctness of Propositional Languages for Preference Representation , 2004, KR.

[34]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[35]  Randal E. Bryant,et al.  Verification of Arithmetic Circuits with Binary Moment Diagrams , 1995, 32nd Design Automation Conference.

[36]  Helmut Veith,et al.  Languages Represented by Boolean Formulas , 1997, Inf. Process. Lett..

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

[38]  Francesco M. Donini,et al.  Preprocessing of Intractable Problems , 2002, Inf. Comput..

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

[40]  Francesco M. Donini,et al.  Space Efficiency of Propositional Knowledge Representation Formalisms , 2000, J. Artif. Intell. Res..

[41]  Tom Bylander,et al.  Complexity Results for Planning , 1991, IJCAI.

[42]  A. Prasad Sistla,et al.  The complexity of propositional linear temporal logics , 1982, STOC '82.

[43]  Philippe Schnoebelen,et al.  The Complexity of Temporal Logic Model Checking , 2002, Advances in Modal Logic.

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

[45]  Helmut Veith Succinct Representation, Leaf Languages, and Projection Reductions , 1998, Inf. Comput..

[46]  Stephan Merz,et al.  Model Checking , 2000 .

[47]  Randal E. Bryant,et al.  Verification of arithmetic circuits using binary moment diagrams , 2001, International Journal on Software Tools for Technology Transfer.

[48]  Tiziano Villa,et al.  VIS user's manual , 1995 .

[49]  Pierre Wolper,et al.  An automata-theoretic approach to branching-time model checking , 2000, JACM.

[50]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[51]  Helmut Veith Succinct Representation and Leaf Languages , 1995, Electron. Colloquium Comput. Complex..

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