Abstract
We introduce a symbolic model checking procedure for Probabilistic Computation Tree Logic PCTL over labelled Markov chains as models. Model checking for probabilistic logics typically involves solving linear equation systems in order to ascertain the probability of a given formula holding in a state. Our algorithm is based on the idea of representing the matrices used in the linear equation systems by Multi-Terminal Binary Decision Diagrams (MTBDDs) introduced in Clarke et al [14]. Our procedure, based on the algorithm used by Hansson and Jonsson [24], uses BDDs to represent formulas and MTBDDs to represent Markov chains, and is efficient because it avoids explicit state space construction. A PCTL model checker is being implemented in Verus [9].
This research was sponsored in part by the National Science Foundation under grant no. CCR-8722633, by the Semiconductor Research Corporation under contract 92-DJ-294, and by the Wright Laboratory, Aeronautical Systems Center, Air Force Materiel Command, USAF, the Advanced Research Projects Agency (ARPA) under grant F33615-93-1-1330.
This research was sponsored in part by the European Union ESPRIT projects ASPIRE and FIREworks, British Telecom, and the Nuffield Foundation.
Preview
Unable to display preview. Download preview PDF.
References
R. Alur, C. Courcoubetis, D. Dill. Verifying Automata Specifications of Probabilistic Real-Time Systems. In Proc. Real-Time: Theory and Practice, LNCS 600, pp 27–44, Springer, 1991.
L. de Alfaro. Formal Verification of Performance and Reliability of Real-Time Systems. Techn. Report, Stanford University, 1996.
C. Baier. Polynomial Time Algorithms for Testing Probabilistic Bisimulation and Simulation. In Proc. CAV'96, LNCS 1102, pp 38–49, Springer, 1996.
C. Baier, S. Campos, E. Clarke, V. Hartonas-Garmhausen, M. Kwiatkowska, M. Minea, and M. Ryan. Probabilistic model checking using multi terminal binary decision diagrams. In preparation.
C. Baier, M. Kwiatkowska. Model Checking for a Probabilistic Branching Time Logic with Fairness. Techn. Report CSR-96-12, University of Birmingham, 1996.
A. Bianco, L. de Alfaro. Model Checking of Probabilistic and Nondeterministic Systems. In Proc. Foundations of Software Technology and Theoretical Computer Science, LNCS 1026, pp 499–513, Springer, 1995.
R. Bryant. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers, C-35(8), pp 677–691, 1986.
J. Burch, E. Clarke, K. McMillan, D. Dill, L. Hwang, Symbolic Model Checking: 1020 States and Beyond. Information and Computation, 98(2), pp 142–170, 1992.
S. V. Campos, E. M. Clarke, W. Marrero, and M. Minea. Verus: a tool for quantitative analysis of finite-state real-time systems. In Proc. Workshop on Languages, Compilers and Tools for Real-Time Systems, 1995.
E. M. Clarke and E. A. Emerson. Synthesis of synchronization skeletons for branching time temporal logic. In D. Kozen, eds, Proc. Logic of Programs, LNCS 131, Springer, 1981.
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications: A practical approach. In Proc. 10th Annual Symp. of Programming Languages, 1983.
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Programming Lnaguages and Systems, 1(2), 1986.
E. Clarke, M. Fujita, P. McGeer, J. Yang, and X. Zhao. Multi-terminal binary decision diagrams: An efficient data structure for matrix representation. In IWLS '93: International Workshop on Logic Synthesis, Tahoe City, May 1993.
E. Clarke, M. Fujita, X. Zhao. Multi-Terminal Binary Decision Diagrams and Hybrid Decision Diagrams. In T. Sasao and M. Fujita, eds, Representations of Discrete Functions, pp 93–108, Kluwer Academic Publishers, 1996.
E. Clarke, O. Grumberg, D. Long. Verfication Tools for Finite-State Concurrent Programs. In Proc. A Decade of Concurrency, LNCS 803, pp 124–175, Springer, 1993.
E. M. Clarke, K. L. McMillan, X. Zhao, M. Fujita, and J. Yang. Spectral transforms for large boolean functions with applications to technology mapping. In Proc. 30th ACM/IEEE Design Automation Conference, pp 54–60, IEEE, 1993.
C. Courcoubetis, M. Yannakakis. Verifying Temporal Properties of Finite-State Probabilistic Programs. In Proc. FOCS'88, pp 338–345, IEEE, 1988.
C. Courcoubetis, M. Yannakakis. The Complexity of Probabilistic Verification. J ACM, 42(4), pp 857–907, 1995.
R. Enders, T. Filkorn, D. Taubner. Generating BDDs for Symbolic Model Checking in CCS. Distributed Computing, 6, 1993.
P. Halmos. Measure Theory, Springer, 1950.
S. Hart, M. Sharir. Probabilistic Temporal Logic for Finite and Bounded Models. In Proc. 16th ACM Symposium on Theory of Computing, pp 1–13, 1984.
S. Hart, M. Sharir, A. Pnueli. Termination of Probabilistic Concurrent Programs. ACM Trans. Programming Languages and Systems, 5, pp 356–380, 1983.
H. Hansson. Time and Probability in Formal Design of Distributed Systems, Elsevier, 1994.
H. Hansson, B. Jonsson. A Logic for Reasoning about Time and Probability. Formal Aspects of Computing, 6, pp 512–535, 1994.
M. Huth, M. Kwiatkowska. Quantitative Analysis and Model Checking, In Proc. LICS'97, IEEE Computer Society Press, 1997.
D. Kozen. A Probabilistic PDL, JCSS, 30(2), pp 162–178, 1985.
K. Larsen, A. Skou. Bisimulation through Probabilistic Testing. Information and Computation, 94, pp 1–28, 1991.
K. McMillan. Symbolic Model Checking: An Approach to the State Explosion Problem, Kluwer Academic Publishers, 1993.
A. Pnueli, L. Zuck. Verification of Multiprocess Probabilistic Protocols. Distributed Computing, 1(1), pp 53–72, 1986.
A. Pnueli, L. Zuck. Probabilistic Verification. Information and Computation, 103, pp 1–29, 1993.
R. Segala, N. Lynch. Probabilistic Simulations for Probabilistic Processes. In Proc. CON-CUR, LNCS 836, pp 481–496, Springer, 1994.
K. Seidel C. Morgan, A. McIver and J.W. Sanders. Probabilistic Predicate Transformers. Techn. Report PRG-TR-4-95, Oxford University Computing Laboratory, 1995.
W. Thomas. Automata on Infinite Objects. In Handbook of Theoretical Computer Science, Vol. B, pp 135–191, North-Holland, 1990.
M. Vardi. Automatic Verification of Probabilistic Concurrent Finite-State Programs. In Proc. FOCS'85, pp 327–338, IEEE, 1985.
M. Vardi, P. Wolper. An Automata-Theoretic Approach to Automatic Program Verification. In Proc. LICS'86, pp 332–344, IEEE Computer Society Press, 1986.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Baier, C., Clarke, E.M., Hartonas-Garmhausen, V., Kwiatkowska, M., Ryan, M. (1997). Symbolic model checking for probabilistic processes. In: Degano, P., Gorrieri, R., Marchetti-Spaccamela, A. (eds) Automata, Languages and Programming. ICALP 1997. Lecture Notes in Computer Science, vol 1256. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63165-8_199
Download citation
DOI: https://doi.org/10.1007/3-540-63165-8_199
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63165-1
Online ISBN: 978-3-540-69194-5
eBook Packages: Springer Book Archive