Probabilistic symbolic model checking with PRISM: a hybrid approach

In this paper we present efficient symbolic techniques for probabilistic model checking. These have been implemented in PRISM, a tool for the analysis of probabilistic models such as discrete-time Markov chains, continuous-time Markov chains and Markov decision processes using specifications in the probabilistic temporal logics PCTL and CSL. Motivated by the success of model checkers such as SMV, which use BDDs (binary decision diagrams), we have developed an implementation of PCTL and CSL model checking based on MTBDDs (multi-terminal BDDs) and BDDs. Existing work in this direction has been hindered by the generally poor performance of MTBDD-based numerical computation, which is often substantially slower than explicit methods using sparse matrices. The focus of this paper is a novel hybrid technique which combines aspects of symbolic and explicit approaches to overcome these performance problems. For typical examples, we achieve a dramatic improvement over the purely symbolic approach. In addition, thanks to the compact model representation using MTBDDs, we can verify systems an order of magnitude larger than with sparse matrices, whilst almost matching or even beating them for speed.

[1]  Peter Buchholz,et al.  A Toolbox for Functional and Quantitative Analysis of DEDS , 1998, Computer Performance Evaluation.

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

[3]  Marta Z. Kwiatkowska,et al.  A Symbolic Out-of-Core Solution Method for Markov Models , 2002, Electron. Notes Theor. Comput. Sci..

[4]  Marta Z. Kwiatkowska,et al.  PRISM: Probabilistic Symbolic Model Checker , 2002, Computer Performance Evaluation / TOOLS.

[5]  Luca de Alfaro,et al.  Symbolic Model Checking of Probabilistic Processes Using MTBDDs and the Kronecker Representation , 2000, TACAS.

[6]  Enrico Macii,et al.  Probabilistic Analysis of Large Finite State Machines , 1994, 31st Design Automation Conference.

[7]  Robert K. Brayton,et al.  Verifying Continuous Time Markov Chains , 1996, CAV.

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

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

[10]  William H. Sanders,et al.  Möbius: An Extensible Tool for Performance and Dependability Modeling , 2000, Computer Performance Evaluation / TOOLS.

[11]  Marta Z. Kwiatkowska,et al.  Probabilistic symbolic model checking with PRISM: a hybrid approach , 2004, International Journal on Software Tools for Technology Transfer.

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

[13]  Beate Bollig,et al.  Improving the Variable Ordering of OBDDs Is NP-Complete , 1996, IEEE Trans. Computers.

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

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

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

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

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

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

[20]  Henrik Ejersbo Jensen,et al.  Reachability Analysis of Probabilistic Systems by Successive Refinements , 2001, PAPM-PROBMIV.

[21]  P. Buchholz,et al.  Complexity of Kronecker Operations on Sparse Matrices with Applications to the Solution of Markov Models , 1997 .

[22]  Gianfranco Ciardo,et al.  Data structures for the analysis of large structured markov models , 2000 .

[23]  Alon Itai,et al.  Symmetry breaking in distributed networks , 1990, Inf. Comput..

[24]  Stephen Gilmore,et al.  The PEPA Workbench: A Tool to Support a Process Algebra-based Approach to Performance Modelling , 1994, Computer Performance Evaluation.

[25]  Shuzo Yajima,et al.  The Complexity of the Optimal Variable Ordering Problems of Shared Binary Decision Diagrams , 1993, ISAAC.

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

[27]  Marta Z. Kwiatkowska,et al.  Probabilistic Model Checking of Deadline Properties in the IEEE 1394 FireWire Root Contention Protocol , 2003, Formal Aspects of Computing.

[28]  Holger Hermanns,et al.  On the use of MTBDDs for performability analysis and verification of stochastic systems , 2003, J. Log. Algebraic Methods Program..

[29]  Peter Buchholz,et al.  Compact representations of probability distributions in the analysis of Superposed GSPNs , 2001, Proceedings 9th International Workshop on Petri Nets and Performance Models.

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

[31]  Thomas A. Henzinger,et al.  Reactive Modules , 1999, Formal Methods Syst. Des..

[32]  M.A. Qureshi,et al.  The UltraSAN Modeling Environment , 1995, Perform. Evaluation.

[33]  Matthias Kuntz,et al.  Deriving Symbolic Representations from Stochastic Process Algebras , 2002, PAPM-PROBMIV.

[34]  Luca de Alfaro,et al.  Temporal Logics for the Specification of Performance and Reliability , 1997, STACS.

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

[36]  William H. Sanders,et al.  An Efficient Disk-Based Tool for Solving Very Large Markov Models , 1997, Computer Performance Evaluation.

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

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

[39]  Joost-Pieter Katoen,et al.  Faster and Symbolic CTMC Model Checking , 2001, PAPM-PROBMIV.

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

[41]  L. D. Alfaro The Verification of Probabilistic Systems Under Memoryless Partial-Information Policies is Hard , 1999 .

[42]  Ted Herman,et al.  Probabilistic Self-Stabilization , 1990, Information Processing Letters.

[43]  Holger Hermanns,et al.  A Markov Chain Model Checker , 2000, TACAS.

[44]  David Anthony Parker,et al.  Implementation of symbolic model checking for probabilistic systems , 2003 .

[45]  Marta Z. Kwiatkowska,et al.  Automated Verification of a Randomized Distributed Consensus Protocol Using Cadence SMV and PRISM , 2001, CAV.

[46]  Christel Baier,et al.  Model Checking Continuous-Time Markov Chains by Transient Analysis , 2000, CAV.

[47]  Marta Z. Kwiatkowska,et al.  Out-of-Core Solution of Large Linear Systems of Equations Arising from Stochastic Modelling , 2002, PAPM-PROBMIV.

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

[49]  Maurice Herlihy,et al.  Fast Randomized Consensus Using Shared Memory , 1990, J. Algorithms.

[50]  Holger Hermanns,et al.  Compositional performance modelling with the TIPPtool , 2000, Perform. Evaluation.

[51]  Masahiro Fujita,et al.  Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping , 1997, Formal Methods Syst. Des..

[52]  Sérgio Vale Aguiar Campos,et al.  ProbVerus: Probabilistic Symbolic Model Checking , 1999, ARTS.

[53]  William H. Sanders,et al.  "On-the-Fly'' Solution Techniques for Stochastic Petri Nets and Extensions , 1998, IEEE Trans. Software Eng..

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

[55]  Peter A. Beerel,et al.  Symbolic techniques for performance analysis of timed systems based on average time separation of events , 1997, Proceedings Third International Symposium on Advanced Research in Asynchronous Circuits and Systems.

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

[57]  Kishor S. Trivedi,et al.  Stochastic Petri Net Models of Polling Systems , 1990, IEEE J. Sel. Areas Commun..