skip to main content
research-article
Open Access
Artifacts Evaluated & Functional / v1.1

The Geometry of Causality: Multi-token Geometry of Interaction and Its Causal Unfolding

Published:11 January 2023Publication History
Skip Abstract Section

Abstract

We introduce a multi-token machine for Idealized Parallel Algol (IPA), a higher-order concurrent programming language with shared state and semaphores. Our machine takes the shape of a compositional interpretation of terms as Petri structures, certain coloured Petri nets. For the purely functional fragment of IPA, our machine is conceptually close to Geometry of Interaction token machines, originating from Linear Logic and presenting higher-order computation as the low-level process of a token walking through a graph (a proof net) representing the term. We combine here these ideas with folklore ideas on the representation of first-order imperative concurrent programs as coloured Petri nets.

To prove our machine computationally adequate with respect to the reference operational semantics, we follow game semantics and represent types as certain games specifying dependencies and conflict between computational events. Petri strategies are those Petri structures obeying the rules of the game extracted from the type. We show how Petri strategies unfold to concurrent strategies in the sense of concurrent games on event structures. This link with concurrent strategies not only allows us to prove adequacy of our machine, but also lets us generate operationally a causal description of the behaviour of programs at higher-order types, which is shown to coincide with that given denotationally by the interpretation in concurrent games.

References

  1. Samson Abramsky, Radha Jagadeesan, and Pasquale Malacaria. 2000. Full Abstraction for PCF. Inf. Comput., 163, 2 (2000), 409–470. https://doi.org/10.1006/inco.2000.2930 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. John C. Baez and Jade Master. 2020. Open Petri nets. Math. Struct. Comput. Sci., 30, 3 (2020), 314–341. Google ScholarGoogle ScholarCross RefCross Ref
  3. Patrick Baillot. 1999. Approches dynamiques en sémantique de la logique linéaire: jeux et géométrie de l’interaction. Ph. D. Dissertation. Aix-Marseille 2. Google ScholarGoogle Scholar
  4. Simon Castellan and Pierre Clairambault. 2020. Disentangling Parallelism and Interference in Game Semantics. arxiv:2103.15453 Submitted Google ScholarGoogle Scholar
  5. Simon Castellan, Pierre Clairambault, Hugo Paquet, and Glynn Winskel. 2018. The concurrent game semantics of Probabilistic PCF. In Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2018, Oxford, UK, July 09-12, 2018, Anuj Dawar and Erich Grädel (Eds.). ACM, 215–224. https://doi.org/10.1145/3209108.3209187 Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Simon Castellan, Pierre Clairambault, Silvain Rideau, and Glynn Winskel. 2017. Games and Strategies as Event Structures. Logical Methods in Computer Science, 13, 3 (2017), https://doi.org/10.23638/LMCS-13(3:35)2017 Google ScholarGoogle ScholarCross RefCross Ref
  7. Simon Castellan, Jonathan Hayman, Marc Lasson, and Glynn Winskel. 2014. Strategies as Concurrent Processes. In Proceedings of the 30th Conference on the Mathematical Foundations of Programming Semantics, MFPS 2014, Ithaca, NY, USA, June 12-15, 2014, Bart Jacobs, Alexandra Silva, and Sam Staton (Eds.) (Electronic Notes in Theoretical Computer Science, Vol. 308). Elsevier, 87–107. https://doi.org/10.1016/j.entcs.2014.10.006 Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Thomas Chatain and Eric Fabre. 2010. Factorization Properties of Symbolic Unfoldings of Colored Petri Nets. In Applications and Theory of Petri Nets, 31st International Conference, PETRI NETS 2010, Braga, Portugal, June 21-25, 2010. Proceedings, Johan Lilius and Wojciech Penczek (Eds.) (Lecture Notes in Computer Science, Vol. 6128). Springer, 165–184. https://doi.org/10.1007/978-3-642-13675-7_11 Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Pierre Clairambault and Marc de Visme. 2020. Full abstraction for the quantum lambda-calculus. Proc. ACM Program. Lang., 4, POPL (2020), 63:1–63:28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ugo Dal Lago, Claudia Faggian, Ichiro Hasuo, and Akira Yoshimizu. 2014. The geometry of synchronization. In Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), CSL-LICS ’14, Vienna, Austria, July 14 - 18, 2014, Thomas A. Henzinger and Dale Miller (Eds.). ACM, 35:1–35:10. https://doi.org/10.1145/2603088.2603154 Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Ugo Dal Lago, Claudia Faggian, Benoît Valiron, and Akira Yoshimizu. 2015. Parallelism and Synchronization in an Infinitary Context. In 30th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2015, Kyoto, Japan, July 6-10, 2015. IEEE Computer Society, 559–572. https://doi.org/10.1109/LICS.2015.58 Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Ugo Dal Lago, Claudia Faggian, Benoît Valiron, and Akira Yoshimizu. 2017. The geometry of parallelism: classical, probabilistic, and quantum effects. In Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, POPL 2017, Paris, France, January 18-20, 2017, Giuseppe Castagna and Andrew D. Gordon (Eds.). ACM, 833–845. http://dl.acm.org/citation.cfm?id=3009859 Google ScholarGoogle Scholar
  13. Ugo Dal Lago, Ryo Tanaka, and Akira Yoshimizu. 2017. The geometry of concurrent interaction: Handling multiple ports by way of multiple tokens. In LICS. IEEE Computer Society, 1–12. Google ScholarGoogle Scholar
  14. Vincent Danos, Hugo Herbelin, and Laurent Regnier. 1996. Game Semantics & Abstract Machines. In Proceedings, 11th Annual IEEE Symposium on Logic in Computer Science, New Brunswick, New Jersey, USA, July 27-30, 1996. IEEE Computer Society, 394–405. https://doi.org/10.1109/LICS.1996.561456 Google ScholarGoogle ScholarCross RefCross Ref
  15. Vincent Danos and Laurent Regnier. 1996. Reversible, Irreversible and Optimal Lambda-machines. Electron. Notes Theor. Comput. Sci., 3 (1996), 40–60. Google ScholarGoogle ScholarCross RefCross Ref
  16. Thomas Ehrhard. 2012. The Scott model of linear logic is the extensional collapse of its relational model. Theor. Comput. Sci., 424 (2012), 20–45. https://doi.org/10.1016/j.tcs.2011.11.027 Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dan R. Ghica and Andrzej S. Murawski. 2008. Angelic semantics of fine-grained concurrency. Ann. Pure Appl. Logic, 151, 2-3 (2008), 89–114. Google ScholarGoogle ScholarCross RefCross Ref
  18. Dan R. Ghica and Nikos Tzevelekos. 2012. A System-Level Game Semantics. In Proceedings of the 28th Conference on the Mathematical Foundations of Programming Semantics, MFPS 2012, Bath, UK, June 6-9, 2012, Ulrich Berger and Michael W. Mislove (Eds.) (Electronic Notes in Theoretical Computer Science, Vol. 286). Elsevier, 191–211. https://doi.org/10.1016/j.entcs.2012.08.013 Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Jean-Yves Girard. 1989. Geometry of interaction 1: Interpretation of System F. In Studies in Logic and the Foundations of Mathematics. 127, Elsevier, 221–260. Google ScholarGoogle Scholar
  20. Jean-Yves Girard. 1995. Geometry of interaction III: accommodating the additives. London Mathematical Society Lecture Note Series, 329–389. Google ScholarGoogle Scholar
  21. Georges Gonthier, Martín Abadi, and Jean-Jacques Lévy. 1992. The Geometry of Optimal Lambda Reduction. In POPL. ACM Press, 15–26. Google ScholarGoogle Scholar
  22. Ichiro Hasuo and Naohiko Hoshino. 2017. Semantics of higher-order quantum computation via geometry of interaction. Ann. Pure Appl. Log., 168, 2 (2017), 404–469. https://doi.org/10.1016/j.apal.2016.10.010 Google ScholarGoogle ScholarCross RefCross Ref
  23. Jonathan Hayman and Glynn Winskel. 2008. The unfolding of general Petri nets. In IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science, FSTTCS 2008, December 9-11, 2008, Bangalore, India, Ramesh Hariharan, Madhavan Mukund, and V. Vinay (Eds.) (LIPIcs, Vol. 2). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 223–234. https://doi.org/10.4230/LIPIcs.FSTTCS.2008.1755 Google ScholarGoogle ScholarCross RefCross Ref
  24. Naohiko Hoshino, Koko Muroya, and Ichiro Hasuo. 2014. Memoryful geometry of interaction: from coalgebraic components to algebraic effects. In Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), CSL-LICS ’14, Vienna, Austria, July 14 - 18, 2014, Thomas A. Henzinger and Dale Miller (Eds.). ACM, 52:1–52:10. https://doi.org/10.1145/2603088.2603124 Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. M. E. Hyland and C.-H. Luke Ong. 2000. On Full Abstraction for PCF: I, II, and III. Inf. Comput., 163, 2 (2000), 285–408. https://doi.org/10.1006/inco.2000.2917 Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Guilhem Jaber. 2015. Operational Nominal Game Semantics. In Foundations of Software Science and Computation Structures - 18th International Conference, FoSSaCS 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015. Proceedings, Andrew M. Pitts (Ed.) (Lecture Notes in Computer Science, Vol. 9034). Springer, 264–278. https://doi.org/10.1007/978-3-662-46678-0_17 Google ScholarGoogle ScholarCross RefCross Ref
  27. James Laird. 2007. A Fully Abstract Trace Semantics for General References. In ICALP (Lecture Notes in Computer Science, Vol. 4596). Springer, 667–679. Google ScholarGoogle ScholarCross RefCross Ref
  28. Olivier Laurent. 2001. A Token Machine for Full Geometry of Interaction. In Typed Lambda Calculi and Applications, 5th International Conference, TLCA 2001, Krakow, Poland, May 2-5, 2001, Proceedings, Samson Abramsky (Ed.) (Lecture Notes in Computer Science, Vol. 2044). Springer, 283–297. https://doi.org/10.1007/3-540-45413-6_23 Google ScholarGoogle ScholarCross RefCross Ref
  29. Paul Blain Levy and Sam Staton. 2014. Transition systems over games. In Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), CSL-LICS ’14, Vienna, Austria, July 14 - 18, 2014, Thomas A. Henzinger and Dale Miller (Eds.). ACM, 64:1–64:10. https://doi.org/10.1145/2603088.2603150 Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Ian Mackie. 1995. The Geometry of Interaction Machine. In Conference Record of POPL’95: 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, California, USA, January 23-25, 1995, Ron K. Cytron and Peter Lee (Eds.). ACM Press, 198–208. https://doi.org/10.1145/199448.199483 Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Damiano Mazza. 2005. Multiport Interaction Nets and Concurrency. In CONCUR (Lecture Notes in Computer Science, Vol. 3653). Springer, 21–35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Koko Muroya, Naohiko Hoshino, and Ichiro Hasuo. 2016. Memoryful geometry of interaction II: recursion and adequacy. In POPL. ACM, 748–760. Google ScholarGoogle Scholar
  33. Mogens Nielsen, Gordon D. Plotkin, and Glynn Winskel. 1981. Petri Nets, Event Structures and Domains, Part I. Theor. Comput. Sci., 13 (1981), 85–108. https://doi.org/10.1016/0304-3975(81)90112-2 Google ScholarGoogle ScholarCross RefCross Ref
  34. Mogens Nielsen and P. S. Thiagarajan. 2002. Regular Event Structures and Finite Petri Nets: The Conflict-Free Case. In Applications and Theory of Petri Nets 2002, 23rd International Conference, ICATPN 2002, Adelaide, Australia, June 24-30, 2002, Proceedings, Javier Esparza and Charles Lakos (Eds.) (Lecture Notes in Computer Science, Vol. 2360). Springer, 335–351. https://doi.org/10.1007/3-540-48068-4_20 Google ScholarGoogle ScholarCross RefCross Ref
  35. Gordon Stewart, Lennart Beringer, Santiago Cuellar, and Andrew W. Appel. 2015. Compositional CompCert. In Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2015, Mumbai, India, January 15-17, 2015, Sriram K. Rajamani and David Walker (Eds.). ACM, 275–287. https://doi.org/10.1145/2676726.2676985 Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Glynn Winskel. 1986. Event Structures. In Advances in Petri Nets (Lecture Notes in Computer Science, Vol. 255). Springer, 325–392. Google ScholarGoogle Scholar

Index Terms

  1. The Geometry of Causality: Multi-token Geometry of Interaction and Its Causal Unfolding

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Article Metrics

        • Downloads (Last 12 months)122
        • Downloads (Last 6 weeks)12

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!