Skip to main content

General Decidability Results for Asynchronous Shared-Memory Programs: Higher-Order and Beyond

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


The model of asynchronous programming arises in many contexts, from low-level systems software to high-level web programming. We take a language-theoretic perspective and show general decidability and undecidability results for asynchronous programs that capture all known results as well as show decidability of new and important classes. As a main consequence, we show decidability of safety, termination and boundedness verification for higher-order asynchronous programs—such as OCaml programs using Lwt—and undecidability of liveness verification already for order-2 asynchronous programs. We show that under mild assumptions, surprisingly, safety and termination verification of asynchronous programs with handlers from a language class are decidable iff emptiness is decidable for the underlying language class. Moreover, we show that configuration reachability and liveness (fair termination) verification are equivalent, and decidability of these problems implies decidability of the well-known “equal-letters” problem on languages. Our results close the decidability frontier for asynchronous programs.


  • Higher-order asynchronous programs
  • Decidability

This research was sponsored in part by the Deutsche Forschungsgemeinschaft project 389792660 TRR 248–CPEC and by the European Research Council under the Grant Agreement 610150 (ERC Synergy Grant ImPACT).


  1. Abdulla, P.A., Bouajjani, A., Jonsson, B.: On-the-fly analysis of systems with unbounded, lossy FIFO channels. In: Proceedings of the 10th International Conference on Computer Aided Verification (CAV 1998). pp. 305–318 (1998).

  2. Aho, A.V.: Indexed grammars - an extension of context-free grammars. J. ACM 15(4), 647–671 (1968).

  3. Atig, M.F., Bouajjani, A., Qadeer, S.: Context-bounded analysis for concurrent programs with dynamic creation of threads. In: Proceedings of TACAS 2009. pp. 107–123 (2009)

    Google Scholar 

  4. Bachmeier, G., Luttenberger, M., Schlund, M.: Finite automata for the sub- and superword closure of CFLs: Descriptional and computational complexity. In: Proceedings of LATA 2015. pp. 473–485 (2015)

    Google Scholar 

  5. Berstel, J.: Transductions and context-free languages. Teubner-Verlag (1979)

    Google Scholar 

  6. Chadha, R., Viswanathan, M.: Decidability results for well-structured transition systems with auxiliary storage. In: CONCUR ’07: Proc. 18th Int. Conf. on Concurrency Theory. LNCS, vol. 4703, pp. 136–150. Springer (2007)

    Google Scholar 

  7. Clemente, L., Parys, P., Salvati, S., Walukiewicz, I.: The diagonal problem for higher-order recursion schemes is decidable. 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. 96–105. ACM (2016).

  8. Courcelle, B.: On constructing obstruction sets of words. Bulletin of the EATCS 44, 178–186 (1991)

    Google Scholar 

  9. Damm, W.: The IO-and OI-hierarchies. Theoretical Computer Science 20(2), 95–207 (1982)

    Google Scholar 

  10. Damm, W., Goerdt, A.: An automata-theoretical characterization of the OI-hierarchy. Information and Control 71(1), 1–32 (1986)

    Google Scholar 

  11. Dufourd, C., Finkel, A., Schnoebelen, P.: Reset nets between decidability and undecidability. In: Proceedings of ICALP 1998. pp. 103–115 (1998)

    Google Scholar 

  12. Ganty, P., Majumdar, R.: Algorithmic verification of asynchronous programs. ACM Transactions on Programming Languages and Systems (TOPLAS) 34(1), 6 (2012)

    Google Scholar 

  13. Geeraerts, G., Raskin, J., Begin, L.V.: Well-structured languages. Acta Inf. 44(3–4), 249–288 (2007).

  14. Greibach, S.A.: Remarks on blind and partially blind one-way multicounter machines. Theoretical Computer Science 7(3), 311 – 324 (1978).

  15. Hague, M., Kochems, J., Ong, C.L.: Unboundedness and downward closures of higher-order pushdown automata. In: POPL 2016: Principles of Programming Languages. pp. 151–163. ACM (2016)

    Google Scholar 

  16. Hague, M., Murawski, A.S., Ong, C.L., Serre, O.: Collapsible pushdown automata and recursion schemes. In: Proceedings of the Twenty-Third Annual IEEE Symposium on Logic in Computer Science, LICS 2008, 24–27 June 2008, Pittsburgh, PA, USA. pp. 452–461 (2008).

  17. Haines, L.H.: On free monoids partially ordered by embedding. Journal of Combinatorial Theory 6(1), 94–98 (1969)

    Google Scholar 

  18. Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to automata theory, languages, and computation, 3rd Edition. Pearson international edition, Addison-Wesley (2007)

    Google Scholar 

  19. Jantzen, M.: On the hierarchy of Petri net languages. RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications 13(1), 19–30 (1979),

  20. Jhala, R., Majumdar, R.: Interprocedural analysis of asynchronous programs. In: POPL ’07: Proc. 34th ACM SIGACT-SIGPLAN Symp. on Principles of Programming Languages. pp. 339–350. ACM Press (2007)

    Google Scholar 

  21. Kobayashi, N.: Types and higher-order recursion schemes for verification of higher-order programs. In: Proceedings of the 36th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2009, Savannah, GA, USA, January 21–23, 2009. pp. 416–428 (2009).

  22. Kobayashi, N.: Inclusion between the frontier language of a non-deterministic recursive program scheme and the Dyck language is undecidable. Theoretical Computer Science 777, 409–416 (2019).

    Google Scholar 

  23. Kobayashi, N., Ong, C.L.: Complexity of model checking recursion schemes for fragments of the modal mu-calculus. Logical Methods in Computer Science 7(4) (2011)

    Google Scholar 

  24. van Leeuwen, J.: Effective constructions in well-partially-ordered free monoids. Discrete Mathematics 21(3), 237–252 (1978).

  25. Majumdar, R., Thinniyam, R.S., Zetzsche, G.: General decidability results for asynchronous shared-memory programs: Higher-order and beyond (2021),

  26. Maslov, A.: The hierarchy of indexed languages of an arbitrary level. Doklady Akademii Nauk 217(5), 1013–1016 (1974)

    Google Scholar 

  27. Mayr, R.: Undecidable problems in unreliable computations. Theoretical Computer Science 297(1–3), 337–354 (2003)

    Google Scholar 

  28. Ong, L.: Higher-order model checking: An overview. In: 30th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2015, Kyoto, Japan, July 6–10, 2015. pp. 1–15 (2015).

  29. Parys, P.: The complexity of the diagonal problem for recursion schemes. In: Proceedings of FSTTCS 2017. Leibniz International Proceedings in Informatics (LIPIcs), vol. 93, pp. 45:1–45:14 (2018)

    Google Scholar 

  30. Sen, K., Viswanathan, M.: Model checking multithreaded programs with asynchronous atomic methods. In: CAV ’06: Proc. 18th Int. Conf. on Computer Aided Verification. LNCS, vol. 4144, pp. 300–314. Springer (2006)

    Google Scholar 

  31. Sipser, M.: Introduction to the theory of computation. PWS Publishing Company (1997)

    Google Scholar 

  32. Thinniyam, R.S., Zetzsche, G.: Regular separability and intersection emptiness are independent problems. In: Proceedings of FSTTCS 2019. Leibniz International Proceedings in Informatics (LIPIcs), vol. 150, pp. 51:1–51:15. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2019).

  33. Zetzsche, G.: An approach to computing downward closures. In: ICALP 2015. vol. 9135, pp. 440–451. Springer (2015), the undecidability of \(Z\) intersection is shown in the full version:

Download references

Author information



Corresponding author

Correspondence to Ramanathan S. Thinniyam .

Rights and permissions

Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (, 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.

Reprints and Permissions

Copyright information

© 2021 The Author(s)

About this paper

Verify currency and authenticity via CrossMark

Cite this paper

Majumdar, R., Thinniyam, R.S., Zetzsche, G. (2021). General Decidability Results for Asynchronous Shared-Memory Programs: Higher-Order and Beyond. In: Groote, J.F., Larsen, K.G. (eds) Tools and Algorithms for the Construction and Analysis of Systems. TACAS 2021. Lecture Notes in Computer Science(), vol 12651. Springer, Cham.

Download citation

  • DOI:

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-72015-5

  • Online ISBN: 978-3-030-72016-2

  • eBook Packages: Computer ScienceComputer Science (R0)