Symbolic Model Checking of Probabilistic Processes Using MTBDDs and the Kronecker Representation

This paper reports on experimental results with symbolic model checking of probabilistic processes based on Multi-Terminal Binary Decision Diagrams (MTBDDs). We consider concurrent probabilistic systems as models; these allow nondeterministic choice between probability distributions and are particularly well suited to modelling distributed systems with probabilistic behaviour, e.g. randomized consensus algorithms and probabilistic failures. As a specification formalism we use the probabilistic branching-time temporal logic PBTL which allows one to express properties such as "under any scheduling of nondeterministic choices, the probability of Φ holding until ψ is true is at least 0.78/at most 0.04". We adapt the Kronecker representation of (Plateau 1985), which yields a very compact MTBDD encoding of the system. We implement an experimental model checker using the CUDD package and demonstrate that model construction and reachability-based model checking is possible in a matter of seconds for certain classes of systems consisting of up to 1030 states.

[1]  Oded Maler,et al.  On the Representation of Probabilities over Structured Domains , 1999, CAV.

[2]  Wang Yi,et al.  New Generation of UPPAAL , 1998 .

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

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

[5]  Luca de Alfaro,et al.  How to Specify and Verify the Long-Run Average Behavior of Probabilistic Systems , 1998, LICS.

[6]  Vasiliki Hartonas-Garmhausen Probabilistic symbolic model checking with engineering models and applications , 1998 .

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

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

[9]  S. Hart,et al.  Termination of Probabilistic Concurrent Programs. , 1982 .

[10]  Nancy A. Lynch,et al.  Probabilistic Simulations for Probabilistic Processes , 1994, Nord. J. Comput..

[11]  Luca de Alfaro,et al.  Stochastic Transition Systems , 1998, CONCUR.

[12]  Enrico Macii,et al.  Algebric Decision Diagrams and Their Applications , 1997, ICCAD '93.

[13]  R. Segala,et al.  Symbolic Model Checking of Concurrent Probabilistic Systems Using MTBDDs and Simplex , 1999 .

[14]  E. Clarke,et al.  On the Semantic Foundations of Probabilistic VERUS , 1998 .

[15]  Hans A. Hansson Time and probability in formal design of distributed systems , 1991, DoCS.

[16]  Markus Siegle Compact representation of large performability models based on extended BDDs , 1998 .

[17]  G. Ciardo,et al.  ON THE USE OF KRONECKER OPERATORS FOR THE SOLUTION OF GENERALIZED STOCHASTIC PETRI NETS , 1996 .

[18]  Christel Baier,et al.  On the Verification of Qualitative Properties of Probabilistic Processes under Fairness Constraints , 1998, Inf. Process. Lett..

[19]  Luca de Alfaro,et al.  Computing Minimum and Maximum Reachability Times in Probabilistic Systems , 1999, CONCUR.

[20]  Mihalis Yannakakis,et al.  The complexity of probabilistic verification , 1995, JACM.

[21]  Peter Kemper Numerical Analysis of Superposed GSPNs , 1996, IEEE Trans. Software Eng..

[22]  Christel Baier,et al.  Approximate Symbolic Model Checking of Continuous-Time Markov Chains , 1999, CONCUR.

[23]  Luca de Alfaro,et al.  From Fairness to Chance , 1998, PROBMIV.

[24]  A. Prasad Sistla,et al.  Automatic verification of finite state concurrent system using temporal logic specifications: a practical approach , 1983, POPL '83.

[25]  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).

[26]  Markus Siegle,et al.  Technique and tool for symbolic representation and manipulation of stochastic transition systems , 1998, Proceedings. IEEE International Computer Performance and Dependability Symposium. IPDS'98 (Cat. No.98TB100248).

[27]  Roberto Segala,et al.  Modeling and verification of randomized distributed real-time systems , 1996 .

[28]  Enrico Macii,et al.  Algebraic decision diagrams and their applications , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

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

[30]  William J. Stewart,et al.  Introduction to the numerical solution of Markov Chains , 1994 .

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

[32]  Christel Baier,et al.  Symbolic Model Checking for Probabilistic Processes , 1997, ICALP.

[33]  Christel Baier,et al.  Model checking for a probabilistic branching time logic with fairness , 1998, Distributed Computing.

[34]  Mihalis Yannakakis,et al.  Markov Decision Processes and Regular Events (Extended Abstract) , 1990, ICALP.

[35]  Gianfranco Ciardo,et al.  SMART: simulation and Markovian analyzer for reliability and timing , 1996, Proceedings of IEEE International Computer Performance and Dependability Symposium.

[36]  Enrico Macii,et al.  Markovian analysis of large finite state machines , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[37]  M. Siegle,et al.  Multi Terminal Binary Decision Diagrams to Represent and Analyse Continuous Time Markov Chains , 1999 .

[38]  Stavros Tripakis,et al.  Kronos: A Model-Checking Tool for Real-Time Systems , 1998, CAV.

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

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

[41]  Massoud Pedram,et al.  Factored Edge-Valued Binary Decision Diagrams , 1997, Formal Methods Syst. Des..

[42]  Dimitri P. Bertsekas,et al.  Dynamic Programming and Optimal Control, Two Volume Set , 1995 .

[43]  Moshe Y. Vardi Automatic verification of probabilistic concurrent finite state programs , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[44]  Jean-Michel Fourneau,et al.  PEPS: A Package for Solving Complex Markov Models of Parallel Systems , 1989 .

[45]  Susanna Donatelli Superposed stochastic automata: a class of stochastic Petri nets amenable to parallel solution , 1991, Proceedings of the Fourth International Workshop on Petri Nets and Performance Models PNPM91.

[46]  Andrea Bianco,et al.  Model Checking of Probabalistic and Nondeterministic Systems , 1995, FSTTCS.

[47]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.