Abstract
Finitary Idealized Concurrent Algol (\(\mathsf {FICA}\)) is a prototypical programming language combining functional, imperative, and concurrent computation. There exists a fully abstract game model of \(\mathsf {FICA}\), which in principle can be used to prove equivalence and safety of \(\mathsf {FICA}\) programs. Unfortunately, the problems are undecidable for the whole language, and only very rudimentary decidable sub-languages are known.
We propose leafy automata as a dedicated automata-theoretic formalism for representing the game semantics of \(\mathsf {FICA}\). The automata use an infinite alphabet with a tree structure. We show that the game semantics of any \(\mathsf {FICA}\) term can be represented by traces of a leafy automaton. Conversely, the traces of any leafy automaton can be represented by a \(\mathsf {FICA}\) term. Because of the close match with \(\mathsf {FICA}\), we view leafy automata as a promising starting point for finding decidable subclasses of the language and, more generally, to provide a new perspective on models of higher-order concurrent computation.
Moreover, we identify a fragment of \(\mathsf {FICA}\) that is amenable to verification by translation into a particular class of leafy automata. Using a locality property of the latter class, where communication between levels is restricted and every other level is bounded, we show that their emptiness problem is decidable by reduction to Petri net reachability.
Chapter PDF
Similar content being viewed by others
Keywords
References
Abramsky, S., Ghica, D.R., Murawski, A.S., Ong, C.H.L.: Applying game semantics to compositional software modelling and verification. In: Proceedings of TACAS, Lecture Notes in Computer Science, vol. 2988, pp. 421–435. Springer-Verlag (2004)
Abramsky, S., McCusker, G.: Call-by-value games. In: Proceedings of CSL. Lecture Notes in Computer Science, vol. 1414, pp. 1–17. Springer-Verlag (1997)
Abramsky, S., McCusker, G.: Game semantics. In: Schwichtenberg, H., Berger, U.(eds.) Logic and Computation. Springer-Verlag (1998), proceedings of the NATO Advanced Study Institute, Marktoberdorf
Aiswarya, C., Gastin, P., Kumar, K.N.: Verifying communicating multi-pushdown systems via split-width. In: Automated Technology for Verification and Analysis - 12th International Symposium, ATVA 2014. Lecture Notes in Computer Science, vol. 8837, pp. 1–17. Springer (2014)
Bakewell, A., Ghica, D.R.: On-the-fly techniques for games-based software model checking. In: Proceedings of TACAS, Lecture Notes in Computer Science, vol. 4963, pp. 78–92. Springer (2008)
Berger, M., Honda, K., Yoshida, N.: Sequentiality and the pi-calculus. In: Proceedings of TLCA, Lecture Notes in Computer Science, vol. 2044, pp. 29–45. Springer-Verlag (2001)
Björklund, H., Bojańczyk, M.: Shuffle expressions and words with nested data. In: Proceedings of MFCS. Lecture Notes in Computer Science, vol. 4708, pp. 750–761 (2007)
Björklund, H., Schwentick, T.: On notions of regularity for data languages. Theor. Comput. Sci. 411(4-5), 702–715 (2010)
Bojańczyk, M., David, C., Muscholl, A., Schwentick, T., Segoufin, L.: Two-variable logic on data words. ACM Trans. Comput. Log. 12(4), 27:1–27:26 (2011)
Cotton-Barratt, C., Hopkins, D., Murawski, A.S., Ong, C.L.: Fragments of ML decidable by nested data class memory automata. In: Proceedings of FOSSACS. Lecture Notes in Computer Science, vol. 9034, pp. 249–263. Springer (2015)
Cotton-Barratt, C., Murawski, A.S., Ong, C.L.: ML, visibly pushdown class memory automata, and extended branching vector addition systems with states. ACM Trans. Program. Lang. Syst. 41(2), 11:1–11:38 (2019)
Cotton-Barratt, C., Murawski, A.S., Ong, C.L.: Weak and nested class memory automata. In: Proceedings of LATA. LNCS, vol. 8977, pp. 188–199. Springer (2015)
Czerwiński, W., Lasota, S., Lazic, R., Leroux, J., Mazowiecki, F.: The reachability problem for Petri nets is not elementary. In: Proceedings of STOC. pp. 24–33. ACM (2019)
Decker, N., Habermehl, P., Leucker, M., Thoma, D.: Ordered navigation on multi-attributed data words. In: Proceedings of CONCUR. LNCS, vol. 8704, pp. 497–511. Springer (2014)
Dimovski, A., Ghica, D.R., Lazic, R.: A counterexample-guided refinement tool for open procedural programs. In: Proceedings of SPIN. Lecture Notes in Computer Science, vol. 3925, pp. 288–292. Springer-Verlag (2006)
Dimovski, A.S.: Symbolic game semantics for model checking program families. In: Proceedings of SPIN. Lecture Notes in Computer Science, vol. 9641, pp. 19–37. Springer (2016)
Dimovski, A.S.: Probabilistic analysis based on symbolic game semantics and model counting. In: Proceedings of GandALF. EPTCS, vol. 256, pp. 1–15 (2017)
Dixon, A., Lazic, R., Murawski, A.S., Walukiewicz, I.: Leafy automata for higher-order concurrency. CoRR abs/2101.08720 (2021), https://arxiv.org/abs/2101.08720
Fredriksson, O., Ghica, D.R.: Abstract machines for game semantics, revisited. In: Proceedings of LICS. pp. 560–569 (2013)
Ghica, D.R., McCusker, G.: Reasoning about Idealized Algol using regular expressions. In: Proceedings of ICALP, Lecture Notes in Computer Science, vol. 1853, pp. 103–115. Springer-Verlag (2000)
Ghica, D.R., Murawski, A.S.: Compositional model extraction for higher-order concurrent programs. In: Proceedings of TACAS, Lecture Notes in Computer Science, vol. 3920, pp. 303–317. Springer (2006)
Ghica, D.R., Murawski, A.S.: Angelic semantics of fine-grained concurrency. Annals of Pure and Applied Logic 151(2-3), 89–114 (2008)
Ghica, D.R., Murawski, A.S., Ong, C.H.L.: Syntactic control of concurrency. Theoretical Computer Science pp. 234–251 (2006)
Hague, M.: Saturation of concurrent collapsible pushdown systems. In: Proceedings of FSTTCS. LIPIcs, vol. 24, pp. 313–325. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2013)
Honda, K., Yoshida, N.: Game-theoretic analysis of call-by-value computation. Theoretical Computer Science 221(1–2), 393–456 (1999)
Hopkins, D., Murawski, A.S., Ong, C.H.L.: Hector: An Equivalence Checker for a Higher-Order Fragment of ML. In: Proceedings of CAV, Lecture Notes in Computer Science, vol. 7358, pp. 774–780. Springer (2012)
Hopkins, D., Ong, C.H.L.: Homer: A Higher-order Observational equivalence Model checkER. In: Proceedings of CAV, Lecture Notes in Computer Science, vol. 5643, pp. 654–660. Springer (2009)
Kiefer, S., Murawski, A.S., Ouaknine, J., Wachter, B., Worrell, J.: APEX: An Analyzer for Open Probabilistic Programs. In: Proceedings of CAV, Lecture Notes in Computer Science, vol. 7358, pp. 693–698. Springer (2012)
Kobayashi, N., Igarashi, A.: Model-checking higher-order programs with recursive types. In: Proceedings of ESOP. Lecture Notes in Computer Science, vol. 7792, pp. 431–450. Springer (2013)
La Torre, S., Madhusudan, P., Parlato, G.: Reducing context-bounded concurrent reachability to sequential reachability. In: Proceedings of CAV. Lecture Notes in Computer Science, vol. 5643, pp. 477–492. Springer (2009)
Lago, U.D., Tanaka, R., Yoshimizu, A.: The geometry of concurrent interaction: handling multiple ports by way of multiple tokens. In: Proceedings of LICS. pp. 1–12 (2017)
Leroux, J., Schmitz, S.: Reachability in vector addition systems is primitive-recursive in fixed dimension. In: Proceedings of LICS. pp. 1–13. IEEE (2019)
Murawski, A.S.: Games for complexity of second-order call-by-name programs. Theoretical Computer Science 343(1/2), 207–236 (2005)
Murawski, A.S., Ramsay, S.J., Tzevelekos, N.: Game semantic analysis of equivalence in IMJ. In: Proceedings of ATVA. Lecture Notes in Computer Science, vol. 9364, pp. 411–428. Springer (2015)
Murawski, A.S., Tzevelekos, N.: An invitation to game semantics. SIGLOG News 3(2), 56–67 (2016)
Murawski, A.S., Walukiewicz, I.: Third-order Idealized Algol with iteration is decidable. Theoretical Computer Science 390(2-3), 214–229 (2008)
Ong, C.H.L.: Observational equivalence of 3rd-order Idealized Algol is decidable. In: Proceedings of IEEE Symposium on Logic in Computer Science. pp. 245–256. Computer Society Press (2002)
Qadeer, S., Rehof, J.: Context-bounded model checking of concurrent software. In: Proceedings of TACAS. Lecture Notes in Computer Science, vol. 3440, pp. 93–107. Springer (2005)
Ramalingam, G.: Context-sensitive synchronization-sensitive analysis is undecidable. ACM Trans. Program. Lang. Syst. 22(2), 416–430 (2000)
Reynolds, J.C.: The essence of Algol. In: de Bakker, J.W., van Vliet, J.(eds.) Algorithmic Languages, pp. 345–372. North Holland (1978)
Schwentick, T.: Automata for XML - A survey. J. Comput. Syst. Sci. 73(3), 289–315 (2007)
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
© 2021 The Author(s)
About this paper
Cite this paper
Dixon, A., Lazić, R., Murawski, A.S., Walukiewicz, I. (2021). Leafy automata for higher-order concurrency. In: Kiefer, S., Tasson, C. (eds) Foundations of Software Science and Computation Structures. FOSSACS 2021. Lecture Notes in Computer Science(), vol 12650. Springer, Cham. https://doi.org/10.1007/978-3-030-71995-1_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-71995-1_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-71994-4
Online ISBN: 978-3-030-71995-1
eBook Packages: Computer ScienceComputer Science (R0)