Abstract
Probabilistic pushdown automata (pPDA) are a standard operational model for programming languages involving discrete random choices, procedures, and returns. Temporal properties are useful for gaining insight into the chronological order of events during program execution. Existing approaches in the literature have focused mostly on \(\omega \)-regular and LTL properties. In this paper, we study the model checking problem of pPDA against \(\omega \)-visibly pushdown languages that can be described by specification logics such as CaRet and are strictly more expressive than \(\omega \)-regular properties. With these logical formulae, it is possible to specify properties that explicitly take the structured computations arising from procedural programs into account. For example, CaRet is able to match procedure calls with their corresponding future returns, and thus allows to express fundamental program properties like total and partial correctness.
Keywords
- Probabilistic Recursive Programs
- Model Checking
- Probabilistic Pushdown Automata
- Visibly Pushdown Languages
- CaRet.
This work is supported by the DFG research training group 2236 UnRAVeL and the ERC advanced research grant 787914 FRAPPANT.
Download conference paper PDF
References
Alur, R., Arenas, M., Barceló, P., Etessami, K., Immerman, N., Libkin, L.: First-Order and Temporal Logics for Nested Words. In: 22nd IEEE Symposium on Logic in Computer Science (LICS 2007), 10-12 July 2007, Wroclaw, Poland, Proceedings. pp. 151–160. IEEE Computer Society (2007). https://doi.org/10.1109/LICS.2007.19
Alur, R., Bouajjani, A., Esparza, J.: Model Checking Procedural Programs. In: Clarke, E.M., Henzinger, T.A., Veith, H., Bloem, R. (eds.) Handbook of Model Checking, pp. 541–572. Springer (2018). https://doi.org/10.1007/978-3-319-10575-8_17
Alur, R., Etessami, K., Madhusudan, P.: A Temporal Logic of Nested Calls and Returns. In: Tools and Algorithms for the Construction and Analysis of Systems, 10th International Conference, TACAS 2004, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2004, Barcelona, Spain, March 29 - April 2, 2004, Proceedings. Lecture Notes in Computer Science, vol. 2988, pp. 467–481. Springer (2004). https://doi.org/10.1007/978-3-540-24730-2_35
Alur, R., Madhusudan, P.: Visibly Pushdown Languages. In: Proceedings of the 36th Annual ACM Symposium on Theory of Computing, Chicago, IL, USA, June 13-16, 2004. pp. 202–211. ACM (2004). https://doi.org/10.1145/1007352.1007390
Audebaud, P., Paulin-Mohring, C.: Proofs of randomized algorithms in Coq. Sci. Comput. Program. 74(8), 568–589 (2009). https://doi.org/10.1016/j.scico.2007.09.002
Baier, C., Katoen, J.P.: Principles of Model Checking. MIT Press (2008)
Barthe, G., Köpf, B., Olmedo, F., Béguelin, S.Z.: Probabilistic Relational Reasoning for Differential Privacy. ACM Trans. Program. Lang. Syst. 35(3), 9:1–9:49 (2013). https://doi.org/10.1145/2492061
Bozzelli, L., Sánchez, C.: Visibly Linear Temporal Logic. J. Autom. Reason. 60(2), 177–220 (2018). https://doi.org/10.1007/s10817-017-9410-z
Brázdil, T., Esparza, J., Kiefer, S., Kucera, A.: Analyzing probabilistic pushdown automata. Formal Methods Syst. Des. 43(2), 124–163 (2013). https://doi.org/10.1007/s10703-012-0166-0
Brázdil, T., Kucera, A., Strazovský, O.: On the Decidability of Temporal Properties of Probabilistic Pushdown Automata. In: STACS 2005, 22nd Annual Symposium on Theoretical Aspects of Computer Science, Stuttgart, Germany, February 24-26, 2005, Proceedings. Lecture Notes in Computer Science, vol. 3404, pp. 145–157. Springer (2005). https://doi.org/10.1007/978-3-540-31856-9_12
Casini, L., Illari, P.M., Russo, F., Williamson, J.: Recursive Bayesian Networks. Theoria. Revista de Teoria, Historia y Fundamentos de la Ciencia 26(1), 5–33 (2008)
Chiari, M., Mandrioli, D., Pradella, M.: Operator precedence temporal logic and model checking. Theor. Comput. Sci. 848, 47–81 (2020). https://doi.org/10.1016/j.tcs.2020.08.034
Dubslaff, C., Baier, C., Berg, M.: Model checking probabilistic systems against pushdown specifications. Inf. Process. Lett. 112(8-9), 320–328 (2012). https://doi.org/10.1016/j.ipl.2012.01.006
Esparza, J., Kucera, A., Mayr, R.: Model Checking Probabilistic Pushdown Automata. In: 19th IEEE Symposium on Logic in Computer Science (LICS 2004), 14-17 July 2004, Turku, Finland, Proceedings. pp. 12–21. IEEE Computer Society (2004). https://doi.org/10.1109/LICS.2004.1319596
Etessami, K., Yannakakis, M.: Algorithmic Verification of Recursive Probabilistic State Machines. In: Tools and Algorithms for the Construction and Analysis of Systems, 11th International Conference, TACAS 2005, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2005, Edinburgh, UK, April 4-8, 2005, Proceedings. Lecture Notes in Computer Science, vol. 3440, pp. 253–270. Springer (2005). https://doi.org/10.1007/978-3-540-31980-1_17
Etessami, K., Yannakakis, M.: Recursive markov chains, stochastic grammars, and monotone systems of nonlinear equations. J. ACM 56(1), 1:1–1:66 (2009). https://doi.org/10.1145/1462153.1462154
Gordon, A.D., Henzinger, T.A., Nori, A.V., Rajamani, S.K.: Probabilistic programming. In: Proceedings of the on Future of Software Engineering, FOSE 2014, Hyderabad, India, May 31 - June 7, 2014. pp. 167–181. ACM (2014). https://doi.org/10.1145/2593882.2593900
Gutsfeld, J.O., Müller-Olm, M., Nordhoff, B.: A Branching Time Variant of CaRet. In: Model Checking Software - 25th International Symposium, SPIN 2018, Malaga, Spain, June 20-22, 2018, Proceedings. Lecture Notes in Computer Science, vol. 10869, pp. 153–170. Springer (2018). https://doi.org/10.1007/978-3-319-94111-0_9
Jaeger, M.: Complex Probabilistic Modeling with Recursive Relational Bayesian Networks. Ann. Math. Artif. Intell. 32(1-4), 179–220 (2001). https://doi.org/10.1023/A:1016713501153
Jones, C.: Probabilistic non-determinism. Ph.D. thesis, University of Edinburgh, UK (1990), http://hdl.handle.net/1842/413
Kucera, A., Esparza, J., Mayr, R.: Model Checking Probabilistic Pushdown Automata. Log. Methods Comput. Sci. 2(1) (2006). https://doi.org/10.2168/LMCS-2(1:2)2006
Löding, C., Madhusudan, P., Serre, O.: Visibly Pushdown Games. In: FSTTCS 2004: Foundations of Software Technology and Theoretical Computer Science, 24th International Conference, Chennai, India, December 16-18, 2004, Proceedings. Lecture Notes in Computer Science, vol. 3328, pp. 408–420. Springer (2004). https://doi.org/10.1007/978-3-540-30538-5_34
McIver, A., Morgan, C.: Partial correctness for probabilistic demonic programs. Theor. Comput. Sci. 266(1-2), 513–541 (2001). https://doi.org/10.1016/S0304-3975(00)00208-5
van de Meent, J., Paige, B., Yang, H., Wood, F.: An Introduction to Probabilistic Programming. CoRR abs/1809.10756 (2018), http://arxiv.org/abs/1809.10756
Olmedo, F., Kaminski, B.L., Katoen, J., Matheja, C.: Reasoning about Recursive Probabilistic Programs. In: Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science, LICS ’16, New York, NY, USA, July 5-8, 2016. pp. 672–681. ACM (2016). https://doi.org/10.1145/2933575.2935317
Pfeffer, A., Koller, D.: Semantics and Inference for Recursive Probability Models. In: Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on on Innovative Applications of Artificial Intelligence, July 30 - August 3, 2000, Austin, Texas, USA. pp. 538–544. AAAI Press / The MIT Press (2000), http://www.aaai.org/Library/AAAI/2000/aaai00-082.php
Stuhlmüller, A., Goodman, N.D.: A Dynamic Programming Algorithm for Inference in Recursive Probabilistic Programs. CoRR abs/1206.3555 (2012), http://arxiv.org/abs/1206.3555
Winkler, T., Gehnen, C., Katoen, J.: Model Checking Temporal Properties of Recursive Probabilistic Programs. CoRR abs/2111.03501 (2021), https://arxiv.org/abs/2111.03501
Wojtczak, D., Etessami, K.: PReMo : An Analyzer for Probabilistic Recursive Models. In: Tools and Algorithms for the Construction and Analysis of Systems, 13th International Conference, TACAS 2007, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2007 Braga, Portugal, March 24 - April 1, 2007, Proceedings. Lecture Notes in Computer Science, vol. 4424, pp. 66–71. Springer (2007). https://doi.org/10.1007/978-3-540-71209-1_7
Yannakakis, M., Etessami, K.: Checking LTL Properties of Recursive Markov Chains. In: Second International Conference on the Quantitative Evaluaiton of Systems (QEST 2005), 19-22 September 2005, Torino, Italy. pp. 155–165. IEEE Computer Society (2005). https://doi.org/10.1109/QEST.2005.8
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2022 The Author(s)
About this paper
Cite this paper
Winkler, T., Gehnen, C., Katoen, JP. (2022). Model Checking Temporal Properties of Recursive Probabilistic Programs. In: Bouyer, P., Schröder, L. (eds) Foundations of Software Science and Computation Structures. FoSSaCS 2022. Lecture Notes in Computer Science, vol 13242. Springer, Cham. https://doi.org/10.1007/978-3-030-99253-8_23
Download citation
DOI: https://doi.org/10.1007/978-3-030-99253-8_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-99252-1
Online ISBN: 978-3-030-99253-8
eBook Packages: Computer ScienceComputer Science (R0)
-
Published in cooperation with
http://www.etaps.org/