Saturation-Based Symbolic Reachability Analysis Using Conjunctive and Disjunctive Partitioning

We propose a new saturation-based symbolic state-space generation algorithm for finite discrete-state systems. Based on the structure of the high-level model specification, we first disjunctively partition the transition relation of the system, then conjunctively partition each disjunct. Our new encoding recognizes identity transformations of state variables and exploits event locality, enabling us to apply a recursive fixed-point image computation strategy completely different from the standard breadth-first approach employing a global fix-point image computation. Compared to breadth-first symbolic methods, saturation has already been empirically shown to be several orders more efficient in terms of runtime and peak memory requirements for asynchronous concurrent systems. With the new partitioning, the saturation algorithm can now be applied to completely general asynchronous systems, while requiring similar or better run-times and peak memory than previous saturation algorithms.

[1]  Gianfranco Ciardo,et al.  Logical and Stochastic Modeling with SMART , 2003, Computer Performance Evaluation / TOOLS.

[2]  George J. Milne,et al.  Correct Hardware Design and Verification Methods , 2003, Lecture Notes in Computer Science.

[3]  Gianfranco Ciardo,et al.  Saturation Unbound , 2003, TACAS.

[4]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[5]  William H. Sanders,et al.  Symbolic state-space exploration and numerical analysis of state-sharing composed models , 2004 .

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

[7]  Robert K. Brayton,et al.  Reachability analysis using partitioned-ROBDDs , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[8]  Jordi Cortadella,et al.  Petri Net Analysis Using Boolean Manipulation , 1994, Application and Theory of Petri Nets.

[9]  Danny Dolev,et al.  An O(n log n) Unidirectional Distributed Algorithm for Extrema Finding in a Circle , 1982, J. Algorithms.

[10]  Edmund M. Clarke,et al.  Symbolic Model Checking with Partitioned Transistion Relations , 1991, VLSI.

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

[12]  Fabio Somenzi,et al.  Fine-Grain Conjunction Scheduling for Symbolic Reachability Analysis , 2002, TACAS.

[13]  Brigitte Plateau,et al.  On the stochastic structure of parallelism and synchronization models for distributed algorithms , 1985, SIGMETRICS '85.

[14]  Edmund M. Clarke,et al.  A parallel algorithm for constructing binary decision diagrams , 1990, Proceedings., 1990 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

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

[16]  Gianfranco Ciardo,et al.  Saturation: An Efficient Iteration Strategy for Symbolic State-Space Generation , 2001, TACAS.

[17]  Andrew S. Miner,et al.  Saturation for a General Class of Models , 2004, IEEE Transactions on Software Engineering.

[18]  Bernhard Steffen,et al.  Compositional minimisation of finite state systems using interface specifications , 1996, Formal Aspects of Computing.

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

[20]  Tiziano Villa,et al.  Multi-valued decision diagrams: theory and applications , 1998 .

[21]  Kavita Ravi,et al.  Symbolic guided search for CTL model checking , 2000, Proceedings 37th Design Automation Conference.

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

[23]  Gianfranco Ciardo,et al.  A data structure for the efficient Kronecker solution of GSPNs , 1999, Proceedings 8th International Workshop on Petri Nets and Performance Models (Cat. No.PR00331).

[24]  In-Ho Moon,et al.  Border-Block Triangular Form and Conjunction Schedule in Image Computation , 2000, FMCAD.

[25]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[26]  Brigitte Plateau On the stochastic structure of parallelism and synchronization models for distributed algorithms , 1985, SIGMETRICS 1985.

[27]  Enric Pastor,et al.  Traversal Techniques for Concurrent Systems , 2002, FMCAD.

[28]  In-Ho Moon,et al.  To split or to conjoin: the question in image computation , 2000, DAC.

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

[30]  Sharon Barner,et al.  Effcient Symbolic Model Checking of Software Using Partial Disjunctive Partitioning , 2003, CHARME.

[31]  Robert Valette,et al.  Application and Theory of Petri Nets 1997 , 1997, Lecture Notes in Computer Science.