Skip to main content
Log in

Exact quantitative probabilistic model checking through rational search

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

A Preface to the special issue FMCAD 2017 to this article was published on 18 January 2021

Abstract

Model checking systems formalized using probabilistic models such as discrete time Markov chains (DTMCs) and Markov decision processes (MDPs) can be reduced to computing constrained reachability properties. Linear programming methods to compute reachability probabilities for DTMCs and MDPs do not scale to large models. Thus, model checking tools often employ iterative methods to approximate reachability probabilities. These approximations can be far from the actual probabilities, leading to inaccurate model checking results. On the other hand, specialized techniques employed in existing state-of-the-art exact quantitative model checkers, don’t scale as well as their iterative counterparts. In this work, we present a new model checking algorithm that improves the approximate results obtained by scalable iterative techniques to compute exact reachability probabilities. Our techniques are implemented as an extension of the PRISM model checker and are evaluated against other exact quantitative model checking engines.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Notes

  1. One can alternatively define a scheduler as a function from finite paths into probability distributions on actions. Both definitions are equivalent in the context of PCTL model checking.

  2. Using the Hybrid engine, the absolute convergence criterion and \(\epsilon =10^{-16}\).

  3. Information about the implementation of Algorithm 3 in STORM was obtained through private email conversations with the developers.

References

  1. (2017) Ensuring the reliability of your model checker: interval iteration for Markov decision processes. https://wwwtcs.inf.tu-dresden.de/ALGI/PUB/CAV17/

  2. (2017) PRISM benchmark suite,http://www.prismmodelchecker.org/benchmarks/. Accessed 5 May 2020

  3. (2017) PRISM case studies, http://www.prismmodelchecker.org/casestudies/. Accessed 5 May 2020

  4. (2019) Apfloat. http://www.apfloat.org/

  5. (2019) CUDD. http://vlsi.colorado.edu/~fabio/CUDD/html/

  6. (2019) GNU multiple precision arithmetic library. https://gmplib.org/

  7. (2019) JScience. http://jscience.org/

  8. (2019) RationalSearch. https://publish.illinois.edu/rationalmodelchecker/

  9. de Alfaro L (1997) Formal verification of probabilistic systems. Ph.D. thesis, Stanford University

  10. Baier C, Katoen JP (2008) Principles of model checking (representation and mind series). The MIT Press, Cambridge

    MATH  Google Scholar 

  11. Baier C, Klein J, Leuschner L, Parker D, Wunderlich S (2017) Ensuring the reliability of your model checker: interval iteration for Markov decision processes. In: Computer aided verification

  12. Banach S (1922) Sur les opérations dans les ensembles abstraits et leur application aux équations intégrales. Fundamenta Mathematicae 3(1):133–181

    Article  MathSciNet  Google Scholar 

  13. Bauer MS, Mathur U, Chadha R, Sistla AP, Viswanathan M (2017) Exact quantitative probabilistic model checking through rational search. In: Proceedings of the 17th conference on formal methods in computer-aided design, FMCAD Inc, Austin, TX, FMCAD ’17, pp 92–99. https://doi.org/10.23919/FMCAD.2017.8102246. http://dl.acm.org/citation.cfm?id=3168451.3168475

  14. Benini L, Bogliolo A, Paleologo GA, De Micheli G (1999) Policy optimization for dynamic power management. IEEE Trans Comput-Aided Des Integr Circuits Syst 13:813–833

    Article  Google Scholar 

  15. Bhaduri D, Shukla SK, Graham PS, Gokhale MB (2007) Reliability analysis of large circuits using scalable techniques and tools. IEEE Trans Circuits Syst I: Regul Pap 54:2447–2460

    Article  MathSciNet  Google Scholar 

  16. Bianco A, de Alfaro L (1995) Model checking of probabilistic and nondeterministic systems. In: 15th Conference foundations of software technology and theoretical computer science, lecture notes in computer science. Springer, Berlin, vol 1026, pp 499–513

  17. Brázdil T, Chatterjee K, Chmelík M, Forejt V, Křetínský J, Kwiatkowska M, Parker D, Ujma M (2014) Verification of markov decision processes using learning algorithms. In: Automated technology for verification and analysis. Springer, Cham, pp 98–114

  18. Bryant RE (1986) Graph-based algorithms for boolean function manipulation. EEE Trans Comput 100(8):677–691

    Article  Google Scholar 

  19. Chatterjee K, Henzinger TA (2008) Value iteration. Springer, Berlin, pp 107–138. https://doi.org/10.1007/978-3-540-69850-0_7

    Book  MATH  Google Scholar 

  20. Chaum D (1988) The dining cryptographers problem: Unconditional sender and recipient untraceability. J Cryptol 1(1):65–75

    Article  MathSciNet  Google Scholar 

  21. Daws C (2004) Symbolic and parametric model checking of discrete-time Markov chains. In: International Colloquium on theoretical aspects of computing. Springer, Berlin, pp 280–294

  22. Dehnert C, Junges S, Katoen JP, Volk M (2017) A storm is coming: A modern probabilistic model checker. In: 29th international conference computer aided verification CAV 2017

  23. Dehnert C, Junges S, Jansen N, Corzilius F, Volk M, Bruintjes H, Katoen JP, Abraham E (2015) Prophesy: a probabilistic parameter synthesis tool. In: International conference on computer aided verification, CAV

  24. van Dijk T, van de Pol J (2015) Sylvan: Multi-core decision diagrams. In: International conference on tools and algorithms for the construction and analysis of systems. Springer, Berlin, pp 677–691

  25. Dijkstra EW (1982) Self-stabilization in spite of distributed control. In: Selected writings on computing: a personal perspective. Springer, Berlin

  26. Duflot M, Kwiatkowska M, Norman G, Parker D (2006) A formal analysis of bluetooth device discovery. Int J Softw Tools Technol Transf (STTT) 8(6):621–632

    Article  Google Scholar 

  27. Forejt V, Kwiatkowska M, Norman G, Parker D (2011a) Automated verification techniques for probabilistic systems. In: International school on formal methods for the design of computer, communication and software systems. Springer, Berlin, pp 53–113

  28. Forejt V, Kwiatkowska MZ, Norman G, Parker D (2011b) Automated verification techniques for probabilistic systems. In: Formal methods for eternal networked software systems—11th international school on formal methods for the design of computer, communication and software systems, SFM, pp 53–113

  29. Fujita M, McGeer PC, Yang JY (1997) Multi-terminal binary decision diagrams: an efficient data structure for matrix representation. Formal Methods Syst Des 10(2–3):149–169

    Article  Google Scholar 

  30. Giro S (2012) Efficient computation of exact solutions for quantitative model checking. In: Proceedings of 10th workshop on quantitative aspects of programming languages (QAPL’12)

  31. Haddad S, Monmege B (2014) Reachability in MDPS: refining convergence of value iteration. In: International workshop on reachability problems. Springer, Berlin, pp 125–137

  32. Hahn EM, Hermanns H, Wachter B, Zhang L (2010) PARAM: a model checker for parametric Markov models. In: International conference on computer aided verification (CAV’10)

  33. Hahn EM, Han T, Zhang L (2011a) Synthesis for PCTL in parametric Markov decision processes. In: NASA formal methods symposium. Springer, Berlin, pp 146–161

  34. Hahn EM, Hermanns H, Zhang L (2011b) Probabilistic reachability for parametric Markov models. Int J Softw Tools Technol Transf 13(1):3–19

    Article  Google Scholar 

  35. Han J, Chen H, Boykin E, Fortes J (2011) Reliability evaluation of logic circuits using probabilistic gate models. Microelectron Reliab 51:468–476

    Article  Google Scholar 

  36. Hoey J, St-Aubin R, Hu A, Boutilier C (1999) Spudd: Stochastic planning using decision diagrams. In: Proceedings of the fifteenth conference on uncertainty in artificial intelligence

  37. Hopcroft JE (2008) Introduction to automata theory, languages, and computation. Pearson Education India, Delhi

    Google Scholar 

  38. Jeannet B, D’Argenio P, Larsen K (2002) Rapture: a tool for verifying Markov decision processes. In: Proceeding of tools day, affiliated to 13th international conference concurrency theory (CONCUR’02)

  39. Katoen JP, Khattri M, Zapreevt I (2005) A Markov reward model checker. In: Second international conference on the quantitative evaluation of systems (QEST’05), IEEE

  40. Kwek S, Mehlhorn K (2003) Optimal search for rationals. Inf Process Lett 86(1):23–26

    Article  MathSciNet  Google Scholar 

  41. Kwiatkowska M, Norman G, Sproston J (2002) Probabilistic model checking of the IEEE 802.11 wireless local area network protocol. In: Proceedings of 2nd joint international workshop on process algebra and probabilistic methods, performance modeling and verification (PAPM/PROBMIV’02)

  42. Kwiatkowska M, Norman G, Sproston J (2003) Probabilistic model checking of deadline properties in the IEEE 1394 FireWire root contention protocol. Formal Aspects Comput 14(3):295–318

    Article  Google Scholar 

  43. Kwiatkowska M, Norman G, Parker D (2004) Controller dependability analysis by probabilistic model checking. In: 11th IFAC symposium on information control problems in manufacturing (INCOM’04)

  44. Kwiatkowska M, Norman G, Parker D (2011) Prism 4.0: verification of probabilistic real-time systems. In: International conference on computer aided verification. Springer, Berlin, pp 585–591

  45. McMillan KL (1993) Symbolic model checking. Kluwer Academic Publishers, Norwell

    Book  Google Scholar 

  46. Mohyuddin N, Pakbaznia E, Pedram M (2011) Probabilistic error propagation in a logic circuit using the Boolean difference calculus. In: Advanced techniques in logic synthesis, optimizations and applications. Springer, Berlin, pp 359–381

  47. Norman G, Parker D, Kwiatkowska M, Shukla S (2005) Evaluating the reliability of NAND multiplexing with PRISM. IEEE Trans Comput-Aided Des Integr Circuits Syst 24:1629–1637

    Article  Google Scholar 

  48. Parker D (2002) Implementation of symbolic model checking for probabilistic systems. Ph.D. thesis, University of Birmingham

  49. Qiu Q, Qu Q, Pedram M (2001) Stochastic modeling of a power-managed system-construction and optimization. IEEE Trans Comput-Aided Des Integr Circuits Syst 20:1200–1217

    Article  Google Scholar 

  50. Rabin M (1983) Randomized Byzantine generals. In: Proceedings of symposium on foundations of computer science, pp 403–409

  51. Rutten J, Kwiatkowska M, Norman G, Parker D (2004a) Mathematical techniques for analyzing concurrent and probabilistic systems. In: Panangaden P, van Breugel F (eds) CRM monograph series, vol 23. American Mathematical Society, Providence

    Google Scholar 

  52. Rutten JJ, Kwiatkowska M, Norman G, Parker D (2004b) Mathematical techniques for analyzing concurrent and probabilistic systems. American Mathematical Society, Providence

    Book  Google Scholar 

  53. St-Aubin R, Hoey J, Boutilier C (2001) APRICODD: approximate policy construction using decision diagrams. In: Advances in neural information processing systems, pp 1089–1095

  54. Wimmer R, Kortus A, Herbstritt M, Becker B (2008) Probabilistic model checking and reliability of results. In: 11th IEEE workshop on design and diagnostics of electronic circuits and systems, 2008. DDECS, IEEE, pp 1–6

Download references

Acknowledgements

We thank the anonymous reviewers for their useful comments. In particular, we would like to thank the reviewer who pointed out that it is insufficient to check that a proposed solution was a solution to a system of linear equations when computing max reachability probabilities and min expected costs.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Umang Mathur.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

We gratefully acknowledge the support of the following Grants—Umang Mathur was partially supported by a Google PhD Fellowship; Rohit Chadha was partially supported by NSF CNS-1553548 and NSF CCF-1900924; A. Prasad Sistla was partially supported by NSF CNS-1314485, NSF CCF-1319754, NSF CCF-1564296 and NSF CCF-1901069; and Mahesh Viswanathan was partially supported by NSF CCF-1901069.

Proof of the claim in Theorem 2

Proof of the claim in Theorem 2

It can be shown easily that f is non-expanding, i.e, for any \({{{\bar{x}}}}_1,{{\bar{x}}_2}\in {\mathcal {U}}\),

$$ ||f({\bar{x}}_2) - f({\bar{x}}_1) || \le || {\bar{x}}_1 -{\bar{x}}_2||. $$

We will assume without loss of generality that \({\mathsf {Prob}}^{{\mathsf {min}}}_{1}[\xi ]\) consists of exactly one element \(z_0.\) Further, we assume that \({\mathsf {Prob}}^{{\mathsf {min}}}_{0}[\xi ]\) consists of at least 1 element as otherwise the claim is trivially true.

Let \(Z^?= Z{\setminus } ( {\mathsf {Prob}}^{{\mathsf {min}}}_{0}[\xi ] \,\cup \,{\mathsf {Prob}}^{{\mathsf {min}}}_{1}[\xi ]).\) For \({{\bar{x}}} \in {\mathcal {U}}, z\in Z^?\) and \(\alpha \in {\mathsf {enabled}}(z),\) we denote the sum \(\displaystyle \sum _{z'\in Z} {\varDelta }(z,\alpha ,z') \cdot {\bar{x}}(z')\) by \(h_{{{\bar{x}}},z,\alpha }.\) By definition

$$ f({\bar{x}})(z) = \displaystyle \min _{\alpha \in {\mathsf {enabled}}(z)} h_{{{\bar{x}}},z,\alpha }. $$

Fix \({\bar{x}},{\bar{y}}\in {\mathcal {U}}.\) The definition of \(Z^?\) implies that for any scheduler \({\mathfrak {S}},\) the probability of reaching \(z_0\) from a state \(z\in Z^?\) is not zero. From this, there it follows that there is an enumeration \(z_1,z_2,\ldots z_r\) of \(Z^?\) such that for any \(1\le i \le r\) and any action \(\alpha \in {\mathsf {enabled}}(z_i),\) \( {\varDelta }(z_i,\alpha ,z_j) >0 \) for some \(0\le j<i.\)

We will show by induction on \(0 \le i\le r,\)

$$ |f^{i+1}({\bar{x}}) (z_i)- f^{i+1}({\bar{y}}) (z_i)| \le (1-p^i_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}||. $$

Observe that this suffices to conclude the claim since this implies for any \(z_i\in Z^?,\)

$$ \begin{aligned} |f^n({{\bar{x}}}) (z_i) - f^n({\bar{y}}) (z_i)|&\le || f^{i+1 } ({\bar{x}}) (z_i) - f^{i+1 } ({\bar{y}}) (z_i)|| \\&\le (1-p^i_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}|| \le (1-p^n_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}||. \end{aligned} $$

Now we show, by induction, that for each \(0 \le i\le r,\) \(|f^{i+1}({{\bar{x}}}) (z_i)- f^{i+1}({\bar{y}}) (z_i)| \le (1-p^i_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}||. \)

Base case: The base case is trivial since \(f({\bar{x}}) (z_0) = 1 = f({\bar{y}}) (z_0).\)

Induction hypothesis: Let \(|f^{i+1}({\bar{x}}) (z_i)- f^{i+1}({\bar{y}}) (z_i)| \le (1-p^i_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}|| \) for each \(0\le i \le \ell .\) Fix \(\beta \in {\mathsf {enabled}}(z_{\ell +1}).\) Denote the set \(\{ z_0,z_1,\ldots ,z_\ell \}\) by \(Z_\ell .\) We have that

$$ \begin{aligned} h_{f^{\ell +2}({\bar{x}}),z_{\ell +1},\beta }&= \displaystyle \sum _{z'\in Z} {\varDelta }(z_{\ell +1},\beta ,z') \cdot f^{\ell +1}({\bar{x}}) (z') \\&= h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta } + \displaystyle \sum _{z'\in Z} {\varDelta }(z_{\ell +1},\beta ,z') \cdot (f^{\ell +1}(\bar{x})(z')-f^{\ell +1}({\bar{y}})(z'))\\&= h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta } + \displaystyle \sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot (f^{\ell +1}({\bar{x}})(z')-f^{\ell +1}({\bar{y}})(z')) \\&\quad + \displaystyle \sum _{z'\in Z{\setminus } Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot (f^{\ell +1}({\bar{x}})(z')-f^{\ell +1}({\bar{y}})(z')). \end{aligned} $$

Now, note that \((1-p^i_{\mathsf {min}})\le (1-p^\ell _{\mathsf {min}}) \) for each \(i\le \ell .\) Thus, we get by induction hypothesis,

$$ \begin{aligned} h_{f^{\ell +2}({{\bar{x}}}),z_{\ell +1},\beta }&\le h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta } + (1-p^\ell _{\mathsf {min}}) \displaystyle \sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot || {\bar{x}} -{\bar{y}}|| \\&\quad \displaystyle \sum _{z'\in Z{\setminus } Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot (f^{\ell +1}({\bar{x}})(z')-f^{\ell +1}({\bar{y}})(z')). \end{aligned} $$

As f is non-expanding, we get that

$$ \begin{aligned} h_{f^{\ell +2}({\bar{x}}),z_{\ell +1},\beta }&\le h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta } + (1-p^\ell _{\mathsf {min}}) \displaystyle \sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot || {\bar{x}} -{\bar{y}}|| \\&\quad + \displaystyle \sum _{z'\in Z{\setminus } Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z') \cdot || {\bar{x}} -{\bar{y}}|| \\&\le h_{f^{\ell +2}({{\bar{y}}}),z_{\ell +1},\beta } + || {\bar{x}} -{\bar{y}}|| \cdot \displaystyle \sum _{z'\in Z} {\varDelta }(z_{\ell +1},\beta ,z') \\&\quad - p^\ell _{\mathsf {min}}|| {\bar{x}} -{\bar{y}}|| \cdot \sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z')\\&\le h_{f^{\ell +2}({{\bar{y}}}),z_{\ell +1},\beta } + || {\bar{x}} -{\bar{y}}|| (1- p^\ell _{\mathsf {min}}\sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z')). \end{aligned} $$

By construction, \(\sum _{z'\in Z_\ell } {\varDelta }(z_{\ell +1},\beta ,z')) \ge p_{\mathsf {min}}\) and hence

$$ \begin{aligned} h_{f^{\ell +2}({{\bar{x}}}),z_{\ell +1},\beta }&\le h_{f^{\ell +2}({{\bar{y}}}),z_{\ell +1},\beta } + || {\bar{x}} -{\bar{y}}|| (1- p^{\ell +1}_{\mathsf {min}})||. \end{aligned} $$

Now, we have that

$$ f^{\ell +2}({\bar{x}})(z_{\ell +1}) \le h_{f^{\ell +2}({\bar{x}}),z_{\ell +1},\beta } \le h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta } + || {\bar{x}} -{\bar{y}}|| (1- p^{\ell +1}_{\mathsf {min}})||. $$

As \(\beta \) is arbitrary, the above inequality also holds for the \(\beta \) that minimizes \(h_{f^{\ell +2}({\bar{y}}),z_{\ell +1},\beta }.\) Hence,

$$ f^{\ell +2}({\bar{x}})(z_{\ell +1}) \le f^{\ell +2}({\bar{y}})(z_{\ell +1}) + || {\bar{x}} -{\bar{y}}|| (1- p^{\ell +1}_{\mathsf {min}})||. $$

Similarly, we can show that

$$ f^{\ell +2}({{\bar{y}}})(z_{\ell +1}) \le f^{\ell +2}({\bar{x}})(z_{\ell +1}) + || {\bar{x}} -{\bar{y}}|| (1- p^{\ell +1}_{\mathsf {min}})||. $$

Thus, we get

$$ |f^{\ell +2}({\bar{x}}) (z_{\ell +1})- f^{\ell +2}({\bar{y}}) (z_{\ell +1})| \le (1-p^{\ell +1}_{\mathsf {min}}) || {\bar{x}} -{\bar{y}}|| $$

as required.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mathur, U., Bauer, M.S., Chadha, R. et al. Exact quantitative probabilistic model checking through rational search. Form Methods Syst Des 56, 90–126 (2020). https://doi.org/10.1007/s10703-020-00348-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-020-00348-y

Keywords

Navigation