Model Checking Hierarchical Probabilistic Systems

  • Jun Sun
  • Songzheng Song
  • Yang Liu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6447)

Abstract

Probabilistic modeling is important for random distributed algorithms, bio-systems or decision processes. Probabilistic model checking is a systematic way of analyzing finite-state probabilistic models. Existing probabilistic model checkers have been designed for simple systems without hierarchy. In this paper, we extend the PAT toolkit to support probabilistic model checking of hierarchical complex systems. We propose to use PCSP#, a combination of Hoare’s CSP with data and probability, to model such systems. In addition to temporal logic, we allow complex safety properties to be specified by non-probabilistic PCSP# model. Validity of the properties (with probability) is established by refinement checking. Furthermore, we show that refinement checking can be applied to verify probabilistic systems against safety/co-safety temporal logic properties efficiently. We demonstrate the usability and scalability of the extended PAT checker via automated verification of benchmark systems and comparison with state-of-art probabilistic model checkers.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alpern, B., Schneider, F.B.: Recognizing Safety and Liveness. Distributed Computing 2(3), 117–126 (1987)CrossRefMATHGoogle Scholar
  2. 2.
    Alur, R., Henzinger, T.A.: Reactive Modules. Formal Methods in System Design 15(1), 7–48 (1999)CrossRefGoogle Scholar
  3. 3.
    Aspnes, J., Herlihy, M.: Fast Randomized Consensus Using Shared Memory. Journal of Algorithms 15(1), 441–460 (1990)MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    Baier, C., Katoen, J.: Principles of Model Checking. The MIT Press, Cambridge (2008)MATHGoogle Scholar
  5. 5.
    Barold, S.S., Stroopbandt, R.X., Sinnaeve, A.F.: Cardiac Pacemakers Step by Step: an Illustrated Guide. Blackwell Publishing, Malden (2004)CrossRefGoogle Scholar
  6. 6.
    Bellman, R.: A Markovian Decision Process. Journal of Mathematics of Mechanics 6 (1957)Google Scholar
  7. 7.
    Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic Model Checking: 1020 States and Beyond. Inf. Comput. 98(2), 142–170 (1992)CrossRefMATHGoogle Scholar
  8. 8.
    Chaki, S., Clarke, E.M., Ouaknine, J., Sharygina, N., Sinha, N.: State/Event-Based Software Model Checking. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 128–147. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  9. 9.
    Chen, Y., Sanders, J.W.: Unifying Probability with Nondeterminism. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 467–482. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Ciesinski, F., Baier, C.: LiQuor: A Tool for Qualitative and Quantitative Linear Time Analysis of Reactive Systems. In: QEST, pp. 131–132. IEEE Computer Society, Los Alamitos (2006)Google Scholar
  11. 11.
    Gastin, P., Oddoux, D.: Fast LTL to Büchi Automata Translation. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 53–65. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  12. 12.
    Geilen, M.: On the Construction of Monitors for Temporal Logic Properties. Electr. Notes Theor. Comput. Sci. 55(2) (2001)Google Scholar
  13. 13.
    Havelund, K., Rosu, G.: Synthesizing Monitors for Safety Properties. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 342–356. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  14. 14.
    Hinton, A., Kwiatkowska, M.Z., Norman, G., Parker, D.: PRISM: A Tool for Automatic Verification of Probabilistic Systems. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006. LNCS, vol. 3920, pp. 441–444. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Hoare, C.: Communicating Sequential Processes. International Series in Computer Science. Prentice-Hall, Englewood Cliffs (1985)MATHGoogle Scholar
  16. 16.
    Katoen, J., Zapreev, I.S., Hahn, E.M., Hermanns, H., Jansen, D.N.: The Ins and Outs of the Probabilistic Model Checker MRMC. In: QEST, pp. 167–176. IEEE Computer Society, Los Alamitos (2009)Google Scholar
  17. 17.
    Kupferman, O., Vardi, M.Y.: Model Checking of Safety Properties. Formal Methods in System Design 19(3), 291–314 (2001)CrossRefMATHGoogle Scholar
  18. 18.
    Latvala, T.: Efficient Model Checking of Safety Properties. In: Ball, T., Rajamani, S.K. (eds.) SPIN 2003. LNCS, vol. 2648, pp. 74–88. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  19. 19.
    Lehmann, D., Rabin, M.: On the Advantage of Free Choice: A Symmetric and Fully Distributed Solution to the Dining Philosophers Problem (Extended Abstract). In: POPL, pp. 133–138. ACM, New York (1981)Google Scholar
  20. 20.
    Maisel, W.H., Moynahan, M., Zuckerman, B.D., Gross, T.P., Tovar, O.H., Tillman, D., Schultz, D.B.: Pacemaker and ICD Generator Malfunctions. The Journal of American Medical Association 295(16), 1901–1906 (2006)CrossRefGoogle Scholar
  21. 21.
    Morgan, C., Hoang, T.S., Abrial, J.: The Challenge of Probabilistic Event B - Extended Abstract. In: Treharne, H., King, S., Henson, M.C., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 162–171. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  22. 22.
    Morgan, C., McIver, A., Seidel, K., Sanders, J.W.: Refinement-Oriented Probability for CSP. Formal Asp. Comput. 8(6), 617–647 (1996)CrossRefMATHGoogle Scholar
  23. 23.
    Nicollin, X., Sifakis, J., Yovine, S.: Compiling Real-time Specifications into Extended Automata. IEEE Transactions on Software Engineering 18(9), 794–804 (1992)CrossRefGoogle Scholar
  24. 24.
    Pnueli, A.: The Temporal Logic of Programs. In: FOCS, pp. 46–57. IEEE, Los Alamitos (1977)Google Scholar
  25. 25.
    Pnueli, A., Zuck, L.: Verification of Multiprocess Probabilistic Protocols. Distributed Computing 1(1), 53–72 (1986)CrossRefMATHGoogle Scholar
  26. 26.
    Roscoe, A.W.: Model-checking CSP, pp. 353–378 (1994)Google Scholar
  27. 27.
    Roscoe, A.W., Gardiner, P.H.B., Goldsmith, M., Hulance, J.R., Jackson, D.M., Scattergood, J.B.: Hierarchical Compression for Model-Checking CSP or How to Check 1020 Dining Philosophers for Deadlock. In: Brinksma, E., Steffen, B., Cleaveland, W.R., Larsen, K.G., Margaria, T. (eds.) TACAS 1995. LNCS, vol. 1019, pp. 133–152. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  28. 28.
    Sistla, A.P.: Safety, Liveness and Fairness in Temporal Logic. Formal Asp. Comput. 6(5), 495–512 (1994)CrossRefMATHGoogle Scholar
  29. 29.
    Somenzi, F., Bloem, R.: Efficient Büchi Automata from LTL Formulae. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 248–263. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  30. 30.
    Sun, J., Liu, Y., Dong, J.S., Chen, C.Q.: Integrating Specification and Programs for System Modeling and Verification. In: TASE, pp. 127–135. IEEE Computer Society, Los Alamitos (2009)Google Scholar
  31. 31.
    Sun, J., Liu, Y., Dong, J.S., Pang, J.: PAT: Towards Flexible Verification under Fairness. In: Bouajjani, A., Maler, O. (eds.) Computer Aided Verification. LNCS, vol. 5643, pp. 709–714. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  32. 32.
    Vardi, M.Y., Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. In: LICS, pp. 332–344. IEEE Computer Society, Los Alamitos (1986)Google Scholar
  33. 33.
    Zhu, H., Qin, S., He, J., Bowen, J.: PTSC: Probability, Time and Shared-Variable Concurrency. International Journal on Innovations in Systems and Software Engineering 5(4), 271–294 (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Jun Sun
    • 1
  • Songzheng Song
    • 3
  • Yang Liu
    • 2
  1. 1.Singapore University of Technology and DesignSingapore
  2. 2.National University of SingaporeSingapore
  3. 3.NUS Graduate School for Integrative Sciences and EngineeringSingapore

Personalised recommendations