Probabilistic Model Checking Modulo Theories

Probabilistic models are widely used to analyze embedded, networked, and more recently biological systems. Existing numerical analysis techniques are limited to finite- state models and suffer from the state explosion problem. As a consequence, the user often has to manually abstract the intended model to get a tractable one. To this end, we propose the predicate abstraction model checker PASS which automates this process. We leverage recent advances in automatic theorem proving to compute tractable finite-state models. Experiments show the feasibility of our approach. To the best of our knowledge, this is the first time that properties of probabilistic infinite-state models have been verified at this level of automation.

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

[2]  Krishnendu Chatterjee,et al.  Counterexample-guided Planning , 2005, UAI.

[3]  Martin L. Puterman,et al.  Markov Decision Processes: Discrete Stochastic Dynamic Programming , 1994 .

[4]  Parosh Aziz Abdulla,et al.  Eager Markov Chains , 2006, ATVA.

[5]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[6]  Andrew Hinton,et al.  PRISM: A Tool for Automatic Verification of Probabilistic Systems , 2006, TACAS.

[7]  Andreas Podelski,et al.  Boolean and Cartesian abstraction for model checking C programs , 2001, International Journal on Software Tools for Technology Transfer.

[8]  Albert Oliveras,et al.  SMT Techniques for Fast Predicate Abstraction , 2006, CAV.

[9]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[10]  R. Segala,et al.  Automatic Verification of Real-Time Systems with Discrete Probability Distributions , 1999, ARTS.

[11]  Michael Huth,et al.  An Abstraction Framework for Mixed Non-deterministic and Probabilistic Systems , 2004, Validation of Stochastic Systems.

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

[13]  J. Esparza,et al.  Model checking probabilistic pushdown automata , 2004, LICS 2004.

[14]  Boudewijn R. Haverkort,et al.  Model Checking Infinite-State Markov Chains , 2005, TACAS.

[15]  Christel Baier,et al.  Comparative branching-time semantics for Markov chains , 2005, Inf. Comput..

[16]  Kenneth L. McMillan,et al.  Lazy Abstraction with Interpolants , 2006, CAV.

[17]  Joost-Pieter Katoen,et al.  Bisimulation Minimisation Mostly Speeds Up Probabilistic Model Checking , 2007, TACAS.

[18]  David Monniaux,et al.  Analyse de programmes probabilistes par interprétation abstraite , 2001 .

[19]  Yassine Lakhnech,et al.  Abstraction as the Key for Invariant Verification , 2003, Verification: Theory and Practice.

[20]  Joost-Pieter Katoen,et al.  Counterexamples in Probabilistic Model Checking , 2007, TACAS.

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

[22]  Cesare Tinelli,et al.  DPLL( T): Fast Decision Procedures , 2004, CAV.

[23]  Thomas A. Henzinger,et al.  Lazy abstraction , 2002, POPL '02.

[24]  Kim G. Larsen,et al.  Reduction and Refinement Strategies for Probabilistic Analysis , 2002, PAPM-PROBMIV.

[25]  Jan Friso Groote,et al.  A Bounded Retransmission Protocol for Large Data Packets , 1993, AMAST.

[26]  Kousha Etessami,et al.  Algorithmic Verification of Recursive Probabilistic State Machines , 2005, TACAS.

[27]  Greg Nelson,et al.  Simplification by Cooperating Decision Procedures , 1979, TOPL.

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

[29]  Daniel Kroening,et al.  Word level predicate abstraction and refinement for verifying RTL Verilog , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[30]  Pedro R. D'Argenio,et al.  Partial order reduction on concurrent probabilistic programs , 2004, First International Conference on the Quantitative Evaluation of Systems, 2004. QEST 2004. Proceedings..

[31]  Christel Baier,et al.  Partial order reduction for probabilistic systems , 2004, First International Conference on the Quantitative Evaluation of Systems, 2004. QEST 2004. Proceedings..

[32]  Bruno Dutertre,et al.  A Fast Linear-Arithmetic Solver for DPLL(T) , 2006, CAV.

[33]  Kim G. Larsen,et al.  Bisimulation through Probabilistic Testing , 1991, Inf. Comput..

[34]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[35]  Bengt Jonsson,et al.  A logic for reasoning about time and reliability , 1990, Formal Aspects of Computing.

[36]  Salem Derisavi A Symbolic Algorithm for Optimal Markov Chain Lumping , 2007, TACAS.

[37]  Theo C. Ruys,et al.  The Bounded Retransmission Protocol Must Be on Time! , 1997, TACAS.

[38]  Sharad Malik,et al.  The Quest for Efficient Boolean Satisfiability Solvers , 2002, CAV.

[39]  Roberto Segala,et al.  Logical Characterizations of Bisimulations for Discrete Probabilistic Systems , 2007, FoSSaCS.

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

[41]  Christel Baier,et al.  Partial Order Reduction for Probabilistic Branching Time , 2006, QAPL.

[42]  Marta Z. Kwiatkowska,et al.  Game-based Abstraction for Markov Decision Processes , 2006, Third International Conference on the Quantitative Evaluation of Systems - (QEST'06).

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

[44]  Marta Z. Kwiatkowska,et al.  Symmetry Reduction for Probabilistic Model Checking , 2006, CAV.

[45]  Hassen Saïdi,et al.  Construction of Abstract State Graphs with PVS , 1997, CAV.