Fair Termination for Parameterized Probabilistic Concurrent Systems

  • Ondřej Lengál
  • Anthony W. LinEmail author
  • Rupak Majumdar
  • Philipp Rümmer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10205)


We consider the problem of automatically verifying that a parameterized family of probabilistic concurrent systems terminates with probability one for all instances against adversarial schedulers. A parameterized family defines an infinite-state system: for each number n, the family consists of an instance with n finite-state processes. In contrast to safety, the parameterized verification of liveness is currently still considered extremely challenging especially in the presence of probabilities in the model. One major challenge is to provide a sufficiently powerful symbolic framework. One well-known symbolic framework for the parameterized verification of non-probabilistic concurrent systems is regular model checking. Although the framework was recently extended to probabilistic systems, incorporating fairness in the framework—often crucial for verifying termination—has been especially difficult due to the presence of an infinite number of fairness constraints (one for each process). Our main contribution is a systematic, regularity-preserving, encoding of finitary fairness (a realistic notion of fairness proposed by Alur and Henzinger) in the framework of regular model checking for probabilistic parameterized systems. Our encoding reduces termination with finitary fairness to verifying parameterized termination without fairness over probabilistic systems in regular model checking (for which a verification framework already exists). We show that our algorithm could verify termination for many interesting examples from distributed algorithms (Herman’s protocol) and evolutionary biology (Moran process, cell cycle switch), which do not hold under the standard notion of fairness. To the best of our knowledge, our algorithm is the first fully-automatic method that can prove termination for these examples.


Markov Decision Process Regular Language Atomic Proposition Fairness Condition Fairness Constraint 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.



We thank anonymous reviewers and Dave Parker for their helpful feedback. This work was supported by the Czech Science Foundation (project 16-24707Y), the BUT FIT project FIT-S-17-4014, the IT4IXS: IT4Innovations Excellence in Science project (LQ1602), Yale-NUS Starting Grant, the European Research Council under ERC Grant Agreement No. 610150, and Swedish Research Council (2014-5484).


  1. 1.
    PRISM website (referred in July 2015).
  2. 2.
    Abdulla, P.A., Chen, Y.-F., Holík, L., Mayr, R., Vojnar, T.: When simulation meets antichains. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 158–174. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-12002-2_14 CrossRefGoogle Scholar
  3. 3.
    Abdulla, P.A.: Regular model checking. STTT 14(2), 109–118 (2012)CrossRefGoogle Scholar
  4. 4.
    Abdulla, P.A., Jonsson, B., Nilsson, M., d’Orso, J., Saksena, M.: Regular model checking for LTL (MSO). STTT 14(2), 223–241 (2012)CrossRefzbMATHGoogle Scholar
  5. 5.
    Alur, R., Henzinger, T.A.: Finitary fairness. ACM Trans. Program. Lang. Syst. 20(6), 1171–1194 (1998)CrossRefGoogle Scholar
  6. 6.
    Apt, K.R., Kozen, D.: Limits for automatic verification of finite-state concurrent systems. Inf. Process. Lett. 22(6), 307–309 (1986)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press, Cambridge (2008)zbMATHGoogle Scholar
  8. 8.
    Baier, C., Kwiatkowska, M.Z.: On the verification of qualitative properties of probabilistic processes under fairness constraints. Inf. Process. Lett. 66(2), 71–79 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Bardin, S., Finkel, A., Leroux, J., Petrucci, L.: FAST: acceleration from theory to practice. STTT 10(5), 401–424 (2008)CrossRefGoogle Scholar
  10. 10.
    Bardin, S., Finkel, A., Leroux, J., Schnoebelen, P.: Flat acceleration in symbolic model checking. In: Peled, D.A., Tsay, Y.-K. (eds.) ATVA 2005. LNCS, vol. 3707, pp. 474–488. Springer, Heidelberg (2005). doi: 10.1007/11562948_35 CrossRefGoogle Scholar
  11. 11.
    Bertrand, N., Fournier, P.: Parameterized verification of many identical probabilistic timed processes. In: FSTTCS 2013, LIPIcs, vol. 24, pp. 501–513. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2013)Google Scholar
  12. 12.
    Boigelot, B., Herbreteau, F.: The power of hybrid acceleration. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, pp. 438–451. Springer, Heidelberg (2006). doi: 10.1007/11817963_40 CrossRefGoogle Scholar
  13. 13.
    Boigelot, B., Legay, A., Wolper, P.: Iterating transducers in the large. In: Hunt, W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 223–235. Springer, Heidelberg (2003). doi: 10.1007/978-3-540-45069-6_24 CrossRefGoogle Scholar
  14. 14.
    Bonchi, F., Pous, D.: Checking NFA equivalence with bisimulations up to congruence. In: POPL 2013, pp. 457–468. ACM (2013)Google Scholar
  15. 15.
    Bonnet, R., Kiefer, S., Lin, A.W.: Analysis of probabilistic basic parallel processes. In: Muscholl, A. (ed.) FoSSaCS 2014. LNCS, vol. 8412, pp. 43–57. Springer, Heidelberg (2014). doi: 10.1007/978-3-642-54830-7_3 CrossRefGoogle Scholar
  16. 16.
    Bouajjani, A., Habermehl, P., Rogalewicz, A., Vojnar, T.: Abstract regular (tree) model checking. STTT 14(2), 167–191 (2012)CrossRefzbMATHGoogle Scholar
  17. 17.
    Cardelli, L., Csikász-Nagy, A.: The cell cycle switch computes approximate majority. Sci. Rep. 2(656) (2012)Google Scholar
  18. 18.
    Chakarov, A., Sankaranarayanan, S.: Probabilistic program analysis with martingales. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 511–526. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-39799-8_34 CrossRefGoogle Scholar
  19. 19.
    Chakarov, A., Voronin, Y.-L., Sankaranarayanan, S.: Deductive proofs of almost sure persistence and recurrence properties. In: Chechik, M., Raskin, J.-F. (eds.) TACAS 2016. LNCS, vol. 9636, pp. 260–279. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49674-9_15 CrossRefGoogle Scholar
  20. 20.
    Courcoubetis, C., Yannakakis, M.: Minimum and maximum delay problems in real-time systems. Form. Methods Syst. Des. 1(4), 385–415 (1992)CrossRefzbMATHGoogle Scholar
  21. 21.
    Alfaro, L.: Temporal logics for the specification of performance and reliability. In: Reischuk, R., Morvan, M. (eds.) STACS 1997. LNCS, vol. 1200, pp. 165–176. Springer, Heidelberg (1997). doi: 10.1007/BFb0023457 CrossRefGoogle Scholar
  22. 22.
    Esparza, J.: Parameterized verification of crowds of anonymous processes. Dependable Softw. Syst. Eng. 45, 59–71 (2016)Google Scholar
  23. 23.
    Esparza, J., Gaiser, A., Kiefer, S.: Proving termination of probabilistic programs using patterns. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 123–138. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-31424-7_14 CrossRefGoogle Scholar
  24. 24.
    Ferrer Fioriti, L.M., Hermanns, H.: Probabilistic termination: soundness, completeness, and compositionality. In: POPL 2015, pp. 489–501. ACM (2015)Google Scholar
  25. 25.
    Fokkink, W.: Distributed Algorithms. MIT Press, Cambridge (2013)zbMATHGoogle Scholar
  26. 26.
    Francez, N.: Fairness. Springer, New York (1986)CrossRefzbMATHGoogle Scholar
  27. 27.
    Grädel, E., Thomas, W., Wilke, T. (eds.): Automata, Logics, and Infinite Games: A Guide to Current Research. Lecture Notes in Computer Science, vol. 2500. Springer, Heidelberg (2002). [Outcome of a Dagstuhl seminar, February 2001]zbMATHGoogle Scholar
  28. 28.
    Hart, S., Sharir, M., Pnueli, A.: Termination of probabilistic concurrent program. ACM Trans. Program. Lang. Syst. 5(3), 356–380 (1983)CrossRefzbMATHGoogle Scholar
  29. 29.
    Herman, T.: Probabilistic self-stabilization. Inf. Process. Lett. 35(2), 63–67 (1990)MathSciNetCrossRefzbMATHGoogle Scholar
  30. 30.
    Hoenicke, J., Olderog, E.-R., Podelski, A.: Fairness for dynamic control. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 251–265. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-12002-2_20 CrossRefGoogle Scholar
  31. 31.
    Israeli, A., Jalfon, M.: Token management schemes and random walks yield self-stabilizing mutual exclusion. In: PODC, pp. 119–131 (1990)Google Scholar
  32. 32.
    Kaminski, B.L., Katoen, J.-P., Matheja, C., Olmedo, F.: Weakest precondition reasoning for expected run-times of probabilistic programs. In: Thiemann, P. (ed.) ESOP 2016. LNCS, vol. 9632, pp. 364–389. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49498-1_15 CrossRefGoogle Scholar
  33. 33.
    Kwiatkowska, M.Z.: Model checking for probability and time: from theory to practice. In: LICS, p. 351 (2003)Google Scholar
  34. 34.
    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 (1981)Google Scholar
  35. 35.
    Lieberman, E., Hauert, C., Nowak, M.A.: Evolutionary dynamics on graphs. Nature 433(7023), 312–316 (2005)CrossRefGoogle Scholar
  36. 36.
    Lin, A.W., Rümmer, P.: Liveness of randomised parameterised systems under arbitrary schedulers. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9780, pp. 112–133. Springer, Heidelberg (2016). doi: 10.1007/978-3-319-41540-6_7 Google Scholar
  37. 37.
    Lin, A.W.: Accelerating tree-automatic relations. In: FSTTCS, pp. 313–324 (2012)Google Scholar
  38. 38.
    Lynch, N.A., Saias, I., Segala, R.: Proving time bounds for randomized distributed algorithms. In: PODC, pp. 314–323 (1994)Google Scholar
  39. 39.
    Monniaux, D.: An abstract analysis of the probabilistic termination of programs. In: Cousot, P. (ed.) SAS 2001. LNCS, vol. 2126, pp. 111–126. Springer, Heidelberg (2001). doi: 10.1007/3-540-47764-0_7 CrossRefGoogle Scholar
  40. 40.
    Moran, P.A.P.: Random processes in genetics. Math. Proc. Camb. Philos. Soc. 54(1), 60–71 (1958)MathSciNetCrossRefzbMATHGoogle Scholar
  41. 41.
    Neider, D., Jansen, N.: Regular model checking using solver technologies and automata learning. In: Brat, G., Rungta, N., Venet, A. (eds.) NFM 2013. LNCS, vol. 7871, pp. 16–31. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38088-4_2 CrossRefGoogle Scholar
  42. 42.
    Nilsson, M.: Regular model checking. Ph.D. thesis, Uppsala Universitet (2005)Google Scholar
  43. 43.
    Olderog, E.-R., Apt, K.R.: Fairness in parallel programs: the transformational approach. ACM Trans. Program. Lang. Syst. 10(3), 420–455 (1988)CrossRefGoogle Scholar
  44. 44.
    Olderog, E.-R., Podelski, A.: Explicit fair scheduling for dynamic control. In: Dams, D., Hannemann, U., Steffen, M. (eds.) Concurrency, Compositionality, and Correctness. LNCS, vol. 5930, pp. 96–117. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-11512-7_7 CrossRefGoogle Scholar
  45. 45.
    Pnueli, A., Zuck, L.D.: Verification of multiprocess probabilistic protocols. Distrib. Comput. 1(1), 53–72 (1986)CrossRefzbMATHGoogle Scholar
  46. 46.
    To, A.W.: Model checking infinite-state systems: generic and specific approaches. Ph.D. thesis, LFCS, School of Informatics, University of Edinburgh (2010)Google Scholar
  47. 47.
    To, A.W., Libkin, L.: Algorithmic metatheorems for decidable LTL model checking over infinite systems. In: Ong, L. (ed.) FoSSaCS 2010. LNCS, vol. 6014, pp. 221–236. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-12032-9_16 CrossRefGoogle Scholar
  48. 48.
    Vardi, M.Y.: Automatic verification of probabilistic concurrent finite-state programs. In: FOCS, pp. 327–338 (1985)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  • Ondřej Lengál
    • 1
  • Anthony W. Lin
    • 2
    Email author
  • Rupak Majumdar
    • 3
  • Philipp Rümmer
    • 4
  1. 1.FITBrno University of TechnologyBrnoCzech Republic
  2. 2.Department of Computer ScienceUniversity of OxfordOxfordUK
  3. 3.MPI-SWS KaiserslauternKaiserslauternGermany
  4. 4.Uppsala UniversityUppsalaSweden

Personalised recommendations