Skip to main content

Cheap CTL Compassion in NuSMV

  • 453 Accesses

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 11990)

Abstract

We discuss expansions of \(\mathsf {CTL}\) with connectives able to express Streett fairness objectives for single paths. We focus on \(\mathsf {(E)SFCTL}\): (Extended) Streett-Fair \(\mathsf {CTL}\) inspired by a seminal paper of Emerson and Lei. Unlike several other fair extensions of \(\mathsf {CTL}\), our entire formalism (not just a subclass of formulas in some canonical form) allows a succinct embedding into the \(\mu \)-calculus, while being able to express concisely all relevant types of path-based fairness objectives. We implement our syntax in the well-known symbolic model checker NuSMV, consequently also implementing \(\mathsf {CTL}\) model checking with “compassion” objectives. Since the \(\mu \)-calculus embedding requires only alternation depth two, the resulting specifications correspond to parity games with two priorities. This allows a comparison of the performance of our NuSMV\(^{\mathsf {sf}}\) with existing parity game solvers (both explicit and symbolic). The advantages of the symbolic approach seem to extend to fair model checking.

Keywords

  • Model checking
  • Fairness and compassion
  • CTL
  • \(\mu \)-calculus
  • NuSMV
  • Parity games

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-030-39322-9_12
  • Chapter length: 22 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   69.99
Price excludes VAT (USA)
  • ISBN: 978-3-030-39322-9
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   89.99
Price excludes VAT (USA)
Fig. 1.
Fig. 2.
Fig. 3.
Fig. 4.
Fig. 5.
Fig. 6.
Fig. 7.
Fig. 8.

Notes

  1. 1.

    The name “\(\mathsf {ECTL}^+\)” was used in the conference version [15].

  2. 2.

    Available online at https://git8.cs.fau.de/software/nusmvf.

  3. 3.

    An intuitive explanation: requiring that, e.g., \(\varphi _1\) and \(\varphi _2\) are witnessed infinitely often on a given path does not amount to requiring that \(\varphi _1 \wedge \varphi _2\) holds infinitely often, whereas \(\mathsf {EX}\) in front of either conjunct could deviate from the path in question.

References

  1. Baier, C., Katoen, J.-P.: Principles of Model Checking (Representation and Mind Series). The MIT Press (2008)

    Google Scholar 

  2. Benerecetti, M., Dell’Erba, D., Mogavero, F.: A delayed promotion policy for parity games. Inf. Comput. 262, 221–240 (2018). Special issue GandALF 2016

    MathSciNet  CrossRef  Google Scholar 

  3. Bruse, F., Falk, M., Lange, M.: The fixpoint-iteration algorithm for parity games. In: Proceedings of the Fifth International Symposium on Games, Automata, Logics and Formal Verification (GandALF 2014), pp. 116–130 (2014)

    MathSciNet  CrossRef  Google Scholar 

  4. Bunte, O., et al.: The mCRL2 toolset for analysing concurrent systems. In: Vojnar, T., Zhang, L. (eds.) TACAS 2019. LNCS, vol. 11428, pp. 21–39. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17465-1_2

    CrossRef  Google Scholar 

  5. Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L., Hwang, L.J.: Symbolic model checking: \(10^{20}\) states and beyond. Inf. Comput. 98(2), 142–170 (1992)

    MathSciNet  CrossRef  Google Scholar 

  6. Calude, C.S., Jain, S., Khoussainov, B., Li, W., Stephan, F.: Deciding parity games in quasipolynomial time. In: Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of Computing (STOC 2017), pp. 252–263 (2017)

    Google Scholar 

  7. Chatterjee, K., Dvorák, W., Henzinger, M., Loitzenbauer, V.: Improved set-based symbolic algorithms for parity games. In: Proceedings of the 26th EACSL Annual Conference on Computer Science Logic (CSL 2017), pp. 18:1–18:21 (2017)

    Google Scholar 

  8. Chatterjee, K., Dvorák, W., Henzinger, M., Svozil, A.: Quasipolynomial set-based symbolic algorithms for parity games. In: Proceedings of the 22nd International Conference on Logic for Programming, Artificial Intelligence and Reasoning (LPAR-22), pp. 233–253 (2018)

    Google Scholar 

  9. Chatterjee, K., Dvorák, W., Henzinger, M., Svozil, A.: Near-linear time algorithms for Streett objectives in graphs and MDPs. In: Proceedings of the 30th International Conference on Concurrency Theory (CONCUR 2019), pp. 7:1–7:16 (2019)

    Google Scholar 

  10. Cimatti, A., et al.: NuSMV 2: an opensource tool for symbolic model checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45657-0_29

    CrossRef  Google Scholar 

  11. Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986)

    CrossRef  Google Scholar 

  12. Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982). https://doi.org/10.1007/BFb0025774

    CrossRef  Google Scholar 

  13. Dawar, A., Grädel, E.: The descriptive complexity of parity games. In: Kaminski, M., Martini, S. (eds.) CSL 2008. LNCS, vol. 5213, pp. 354–368. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-87531-4_26

    CrossRef  Google Scholar 

  14. Emerson, E.A., Clarke, E.M.: Characterizing correctness properties of parallel programs using fixpoints. In: de Bakker, J., van Leeuwen, J. (eds.) ICALP 1980. LNCS, vol. 85, pp. 169–181. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10003-2_69

    CrossRef  Google Scholar 

  15. Emerson, E.A., Halpern, J.Y.: “Sometimes” and “Not Never” revisited: on branching versus linear time. In: Proceedings of the 10th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 1983), pp. 127–140 (1983)

    Google Scholar 

  16. Emerson, E.A., Halpern, J.Y.: “Sometimes” and “Not Never” revisited: on branching versus linear time temporal logic. J. ACM 33(1), 151–178 (1986)

    MathSciNet  CrossRef  Google Scholar 

  17. Emerson, E.A., Lei, C.-L.: Efficient model checking in fragments of the propositional mu-calculus (extended abstract). In: Proceedings of the Symposium on Logic in Computer Science (LICS 1986), pp. 267–278 (1986)

    Google Scholar 

  18. Emerson, E.A., Lei, C.-L.: Modalities for model checking: branching time logic strikes back. Sci. Comput. Prog. 8(3), 275–306 (1987)

    MathSciNet  CrossRef  Google Scholar 

  19. Francez, N.: Fairness. Springer, Heidelberg (1986)

    CrossRef  Google Scholar 

  20. Friedmann, O., Lange, M.: The PGSolver collection of parity game solvers (2010). https://github.com/tcsprojects/pgsolver/blob/master/doc/pgsolver.pdf

  21. Gabbay, D., Pnueli, A., Shelah, S., Stavi, J.: On the temporal analysis of fairness. In: Proceedings of the 7th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 1980), pp. 163–173 (1980)

    Google Scholar 

  22. Ghilardi, S., van Gool, S.: Monadic second order logic as the model companion of temporal logic. In: Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science (LICS 2016), pp. 417–426 (2016)

    Google Scholar 

  23. Mazala, R.: Infinite games. In: Grädel, E., Thomas, W., Wilke, T. (eds.) Automata Logics, and Infinite Games. LNCS, vol. 2500, pp. 23–38. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36387-4_2

    CrossRef  MATH  Google Scholar 

  24. Groote, J.F., Mousavi, M.R.: Modeling and Analysis of Communicating Systems. MIT Press (2014)

    Google Scholar 

  25. Huth, M., Ryan, M.D.: Logic in Computer Science – Modelling and Reasoning about Systems, 2 edn. Cambridge University Press (2004

    Google Scholar 

  26. Jurdziński, M.: Small progress measures for solving parity games. In: Reichel, H., Tison, S. (eds.) STACS 2000. LNCS, vol. 1770, pp. 290–301. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-46541-3_24

    CrossRef  Google Scholar 

  27. Keiren, J.J.A.: Benchmarks for parity games. In: Dastani, M., Sirjani, M. (eds.) FSEN 2015. LNCS, vol. 9392, pp. 127–142. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24644-4_9

    CrossRef  Google Scholar 

  28. Kozen, D.: Results on the propositional \(\mu \)-calculus. Theoret. Comput. Sci. 27, 333–354 (1983)

    MathSciNet  CrossRef  Google Scholar 

  29. Laroussinie, F., Markey, N., Schnoebelen, P.: Model checking CTL+ and FCTL is hard. In: Honsell, F., Miculan, M. (eds.) FoSSaCS 2001. LNCS, vol. 2030, pp. 318–331. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45315-6_21

    CrossRef  MATH  Google Scholar 

  30. Niwiński, D.: On fixed-point clones. In: Kott, L. (ed.) ICALP 1986. LNCS, vol. 226, pp. 464–473. Springer, Heidelberg (1986). https://doi.org/10.1007/3-540-16761-7_96

    CrossRef  Google Scholar 

  31. Rabinovich, A., Schnoebelen, P.: BTL\({}_{\text{2 }}\) and the expressive power of ECTL\({}^{\text{+ }}\). Inf. Comput. 204(7), 1023–1044 (2006)

    CrossRef  Google Scholar 

  32. Sanchez, L., Wesselink, W., Willemse, T.A.C.: A comparison of BDD-based parity game solvers. In: Proceedings of the 9th International Symposium on Games, Automata, Logics, and Formal Verification (GandALF 2018), pp. 103–117 (2018)

    MathSciNet  CrossRef  Google Scholar 

  33. Stevens, P., Stirling, C.: Practical model-checking using games. In: Proceedings of the 4th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 1998), pp. 85–101 (1998)

    CrossRef  Google Scholar 

  34. Stirling, C.: Games and modal mu-calculus. In: Proceedings of the 2nd International Workshop on Tools and Algorithms for Construction and Analysis of Systems (TACAS 1996), pp. 298–312 (1996)

    CrossRef  Google Scholar 

  35. Dijk, T.: Oink: an implementation and evaluation of modern parity game solvers. In: Beyer, D., Huisman, M. (eds.) TACAS 2018. LNCS, vol. 10805, pp. 291–308. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-89960-2_16

    CrossRef  Google Scholar 

  36. Vöge, J., Jurdziński, M.: A discrete strategy improvement algorithm for solving parity games. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 202–215. Springer, Heidelberg (2000). https://doi.org/10.1007/10722167_18

    CrossRef  Google Scholar 

  37. Walukiewicz, I.: Completeness of Kozen’s axiomatisation of the propositional mu-calculus. In: Proceedings of the 10th Annual IEEE Symposium on Logic in Computer Science (LICS 1995), pp. 14–24 (1995)

    Google Scholar 

  38. Zielonka, W.: Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theoret. Comput. Sci. 200(1–2), 135–183 (1998)

    MathSciNet  CrossRef  Google Scholar 

Download references

Acknowledgments

We would like to acknowledge discussions with Tim A.C. Willemse on symbolic parity game solving and with Marco Roveri on the NuSMV model checker. Furthermore, we would like to thank the referees for feedback.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Daniel Hausmann , Tadeusz Litak , Christoph Rauch or Matthias Zinner .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Verify currency and authenticity via CrossMark

Cite this paper

Hausmann, D., Litak, T., Rauch, C., Zinner, M. (2020). Cheap CTL Compassion in NuSMV. In: Beyer, D., Zufferey, D. (eds) Verification, Model Checking, and Abstract Interpretation. VMCAI 2020. Lecture Notes in Computer Science(), vol 11990. Springer, Cham. https://doi.org/10.1007/978-3-030-39322-9_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-39322-9_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-39321-2

  • Online ISBN: 978-3-030-39322-9

  • eBook Packages: Computer ScienceComputer Science (R0)