Skip to main content

Generic Emptiness Check for Fun and Profit

  • Conference paper
  • First Online:
Automated Technology for Verification and Analysis (ATVA 2019)

Abstract

We present a new algorithm for checking the emptiness of \(\omega \)-automata with an Emerson-Lei acceptance condition (i.e., a positive Boolean formula over sets of states or transitions that must be visited infinitely or finitely often). The algorithm can also solve the model checking problem of probabilistic positiveness of MDP under a property given as a deterministic Emerson-Lei automaton. Although both these problems are known to be NP-complete and our algorithm is exponential in general, it runs in polynomial time for simpler acceptance conditions like generalized Rabin, Streett, or parity. In fact, the algorithm provides a unifying view on emptiness checks for these simpler automata classes. We have implemented the algorithm in Spot and PRISM and our experiments show improved performance over previous solutions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    As this problem can be understood by the average Sudoku player, more instances can be found at https://adl.github.io/genem-exp/examples/ either to practice the algorithm by hand, or as an entertaining prophylaxis of Alzheimer’s disease.

  2. 2.

    The original definition was state-based, which means that marks were on states and not transitions. As \(\omega \)-automata with state-based acceptance can be easily converted to transition-based acceptance without changing the transition structure, we focus on transition-based \(\omega \)-automata only.

  3. 3.

    In fact, Fig. 1 comes from a product of a Rabin and a Streett automaton.

  4. 4.

    See https://adl.github.io/genem-exp/bench-app1/ to reproduce.

  5. 5.

    See https://adl.github.io/genem-exp/bench-app2/ to reproduce.

References

  1. Babiak, T., Blahoudek, F., Křetínský, M., Strejček, J.: Effective translation of LTL to deterministic Rabin automata: beyond the (F,G)-fragment. In: Van Hung, D., Ogawa, M. (eds.) ATVA 2013. LNCS, vol. 8172, pp. 24–39. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-02444-8_4

    Chapter  Google Scholar 

  2. Babiak, T., et al.: The Hanoi Omega-Automata Format. In: Kroening, D., Păsăreanu, C.S. (eds.) CAV 2015. LNCS, vol. 9206, pp. 479–486. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21690-4_31. http://adl.github.io/hoaf/

    Chapter  Google Scholar 

  3. Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press, Cambridge (2008)

    MATH  Google Scholar 

  4. Bloemen, V., Duret-Lutz, A., van de Pol, J.: Model checking with generalized Rabin and Fin-less automata. Int. J. Softw. Tools Technol. Transf. 21(3), 307–324 (2019)

    Article  Google Scholar 

  5. Boker, U.: Why these automata types? In: LPAR 2018 of EPiC Series in Computing, vol. 57, pp. 143–163. EasyChair (2018)

    Google Scholar 

  6. Chatterjee, K., Henzinger, M.: Faster and dynamic algorithms for maximal end-component decomposition and related graph problems in probabilistic verification. In: SODA 2011, pp. 1318–1336. SIAM (2011)

    Google Scholar 

  7. Chatterjee, K., Henzinger, M.: Efficient and dynamic algorithms for alternating Büchi games and maximal end-component decomposition. J. ACM 61(3), 15 (2014)

    Article  Google Scholar 

  8. Chatterjee, K., Gaiser, A., Křetínský, J.: Automata with generalized Rabin pairs for probabilistic model checking and LTL synthesis. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 559–575. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39799-8_37

    Chapter  Google Scholar 

  9. Chatterjee, K., Henzinger, M., Loitzenbauer, V.: Improved algorithms for parity and Streett objectives. Log. Methods Comput. Sci. 13(3) (2017)

    Google Scholar 

  10. Chatterjee, K., Henzinger, M., Loitzenbauer, V., Oraee, S., Toman, V.: Symbolic algorithms for graphs and Markov decision processes with fairness objectives. In: Chockler, H., Weissenbacher, G. (eds.) CAV 2018. LNCS, vol. 10982, pp. 178–197. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96142-2_13

    Chapter  Google Scholar 

  11. Couvreur, J.-M.: On-the-fly verification of linear temporal logic. In: Wing, J.M., Woodcock, J., Davies, J. (eds.) FM 1999. LNCS, vol. 1708, pp. 253–271. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48119-2_16

    Chapter  Google Scholar 

  12. Couvreur, J.-M., Duret-Lutz, A., Poitrenaud, D.: On-the-fly emptiness checks for generalized Büchi automata. In: Godefroid, P. (ed.) SPIN 2005. LNCS, vol. 3639, pp. 169–184. Springer, Heidelberg (2005). https://doi.org/10.1007/11537328_15

    Chapter  Google Scholar 

  13. Dax, C., Eisinger, J., Klaedtke, F.: Mechanizing the powerset construction for restricted classes of \(\omega \)-automata. In: Namjoshi, K.S., Yoneda, T., Higashino, T., Okamura, Y. (eds.) ATVA 2007. LNCS, vol. 4762, pp. 223–236. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-75596-8_17

    Chapter  MATH  Google Scholar 

  14. Dijkstra, E.W.: Finding the maximal strong components in a directed graph. In: A Discipline of Programming, chapter 25, pp. 192–200. Prentice-Hall (1976)

    Google Scholar 

  15. Duret-Lutz, A.: Manipulating LTL formulas using spot 1.0. In: Van Hung, D., Ogawa, M. (eds.) ATVA 2013. LNCS, vol. 8172, pp. 442–445. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-02444-8_31

    Chapter  Google Scholar 

  16. Duret-Lutz, A.: Contributions to LTL and \(\omega \)-Automata for Model Checking. Habilitation thesis, Université Pierre et Marie Curie (Paris 6), (February 2017)

    Google Scholar 

  17. Duret-Lutz, A., Poitrenaud, D., Couvreur, J.-M.: On-the-fly emptiness check of transition-based Streett automata. In: Liu, Z., Ravn, A.P. (eds.) ATVA 2009. LNCS, vol. 5799, pp. 213–227. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04761-9_17

    Chapter  Google Scholar 

  18. Duret-Lutz, A., Kordon, F., Poitrenaud, D., Renault, E.: Heuristics for checking liveness properties with partial order reductions. In: Artho, C., Legay, A., Peled, D. (eds.) ATVA 2016. LNCS, vol. 9938, pp. 340–356. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46520-3_22

    Chapter  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  20. Esparza, J., Křetínský, J., Raskin, J., Sickert, S.: From LTL and limit-deterministic Büchi automata to deterministic parity automata. In: TACAS’17, LNCS 10205, pp. 426–442 (2017)

    Chapter  Google Scholar 

  21. J. Esparza, J. Křetínský, and S. Sickert. One theorem to rule them all: A unified translation of LTL into \(\omega \)-automata. In LICS’18, pp. 384–393. ACM, 2018

    Google Scholar 

  22. Geldenhuys, J., Valmari, A.: Tarjan’s algorithm makes on-the-fly LTL verification more efficient. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 205–219. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24730-2_18

    Chapter  MATH  Google Scholar 

  23. Hahn, E.M., Li, G., Schewe, S., Turrini, A., Zhang, L.: Lazy probabilistic model checking without determinisation. In CONCUR 2015, vol. 42 of LIPIcs, pp. 354–367. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2015)

    Google Scholar 

  24. Klein, J., Baier, C.: Experiments with deterministic \(\omega \)-automata for formulas of linear temporal logic. Theor. Comput. Sci. 363(2), 182–195 (2006)

    Article  MathSciNet  Google Scholar 

  25. Klein, J., Baier, C.: On-the-fly stuttering in the construction of deterministic \(\omega \)-Automata. In: Holub, J., Ždárek, J. (eds.) CIAA 2007. LNCS, vol. 4783, pp. 51–61. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-76336-9_7

    Chapter  MATH  Google Scholar 

  26. Komárková, Z., Křetínský, J.: Rabinizer 3: Safraless translation of LTL to small deterministic automata. In: Cassez, F., Raskin, J.-F. (eds.) ATVA 2014. LNCS, vol. 8837, pp. 235–241. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11936-6_17

    Chapter  Google Scholar 

  27. Křetínský, J., Esparza, J.: Deterministic automata for the (F,G)-fragment of LTL. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 7–22. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-31424-7_7

    Chapter  Google Scholar 

  28. Krishnan, S.C., Puri, A., Brayton, R.K.: Deterministic \(\omega \) automata vis-a-vis deterministic Buchi automata. In: Du, D.-Z., Zhang, X.-S. (eds.) ISAAC 1994. LNCS, vol. 834, pp. 378–386. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58325-4_202

    Chapter  Google Scholar 

  29. Křetínský, J., Garza, R.L.: Rabinizer 2: small deterministic automata for LTL\(\setminus \)GU. In: Van Hung, D., Ogawa, M. (eds.) ATVA 2013. LNCS, vol. 8172, pp. 446–450. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-02444-8_32

    Chapter  Google Scholar 

  30. Křetínský, J., Meggendorfer, T., Sickert, S., Ziegler, C.: Rabinizer 4: from LTL to your favourite deterministic automaton. In: Chockler, H., Weissenbacher, G. (eds.) CAV 2018. LNCS, vol. 10981, pp. 567–577. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-96145-3_30

    Chapter  Google Scholar 

  31. Kwiatkowska, M.Z., Norman, G., Parker, D.: The PRISM benchmark suite. In: QEST 2012, pp. 203–204. IEEE Computer Society (2012)

    Google Scholar 

  32. Liu, Y., Sun, J., Dong, J.S.: Scalable multi-core model checking fairness enhanced systems. In: Breitman, K., Cavalcanti, A. (eds.) ICFEM 2009. LNCS, vol. 5885, pp. 426–445. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-10373-5_22

    Chapter  Google Scholar 

  33. Michaud, T., Duret-Lutz, A.: Practical stutter-invariance checks for \(\omega \)-regular languages. In: Fischer, B., Geldenhuys, J. (eds.) SPIN 2015. LNCS, vol. 9232, pp. 84–101. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23404-5_7

    Chapter  Google Scholar 

  34. Minato, S.: Fast generation of irredundant sum-of-products forms from binary decision diagrams. In: SASIMI 1992, pp. 64–73 (1992)

    Google Scholar 

  35. Müller, D., Sickert, S.: LTL to deterministic Emerson-Lei automata. In: GandALF 2017, vol. 256 of EPTCS, pp. 180–194 (2017)

    Article  MathSciNet  Google Scholar 

  36. Pnueli, A., Zuck, L.D.: Verification of multiprocess probabilistic protocols. Distrib. Comput. 1(1), 53–72 (1986)

    Article  Google Scholar 

  37. Renault, E., Duret-Lutz, A., Kordon, F., Poitrenaud, D.: Three SCC-Based emptiness checks for generalized Büchi automata. In: McMillan, K., Middeldorp, A., Voronkov, A. (eds.) LPAR 2013. LNCS, vol. 8312, pp. 668–682. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-45221-5_44

    Chapter  MATH  Google Scholar 

  38. Vardi, M.Y.: Automatic verification of probabilistic concurrent finite-state programs. In: FOCS 1985, pp. 327–338. IEEE Computer Society (1985)

    Google Scholar 

Download references

Acknowledgement

This research was partially supported by the DFG through the DFG-project BA-1679/11-1, the DFG-project BA-1679/12-1, the Collaborative Research Centers CRC 912 (HAEC) and CRC 248 (DFG grant 389792660 as part of TRR 248), the Cluster of Excellence EXC 2050/1 (CeTI, project ID 390696704, as part of Germany’s Excellence Strategy), the Research Training Groups QuantLA (GRK 1763), by F.R.S.-FNRS through the grant F.4520.18 (ManySynth), and by the Czech Science Foundation through the grant GA19-24397S.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alexandre Duret-Lutz .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Baier, C., Blahoudek, F., Duret-Lutz, A., Klein, J., Müller, D., Strejček, J. (2019). Generic Emptiness Check for Fun and Profit. In: Chen, YF., Cheng, CH., Esparza, J. (eds) Automated Technology for Verification and Analysis. ATVA 2019. Lecture Notes in Computer Science(), vol 11781. Springer, Cham. https://doi.org/10.1007/978-3-030-31784-3_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-31784-3_26

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-31783-6

  • Online ISBN: 978-3-030-31784-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics