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.
- 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 Scholar
Digital Library
- John C. Baez and Jade Master. 2020. Open Petri nets. Math. Struct. Comput. Sci., 30, 3 (2020), 314–341.
Google Scholar
Cross Ref
- 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 Scholar
- Simon Castellan and Pierre Clairambault. 2020. Disentangling Parallelism and Interference in Game Semantics. arxiv:2103.15453 Submitted
Google Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- 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 Scholar
- 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 Scholar
Cross Ref
- Vincent Danos and Laurent Regnier. 1996. Reversible, Irreversible and Optimal Lambda-machines. Electron. Notes Theor. Comput. Sci., 3 (1996), 40–60.
Google Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
- Jean-Yves Girard. 1995. Geometry of interaction III: accommodating the additives. London Mathematical Society Lecture Note Series, 329–389.
Google Scholar
- Georges Gonthier, Martín Abadi, and Jean-Jacques Lévy. 1992. The Geometry of Optimal Lambda Reduction. In POPL. ACM Press, 15–26.
Google Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
Cross Ref
- James Laird. 2007. A Fully Abstract Trace Semantics for General References. In ICALP (Lecture Notes in Computer Science, Vol. 4596). Springer, 667–679.
Google Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- Damiano Mazza. 2005. Multiport Interaction Nets and Concurrency. In CONCUR (Lecture Notes in Computer Science, Vol. 3653). Springer, 21–35.
Google Scholar
Digital Library
- Koko Muroya, Naohiko Hoshino, and Ichiro Hasuo. 2016. Memoryful geometry of interaction II: recursion and adequacy. In POPL. ACM, 748–760.
Google Scholar
- 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 Scholar
Cross Ref
- 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 Scholar
Cross Ref
- 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 Scholar
Digital Library
- Glynn Winskel. 1986. Event Structures. In Advances in Petri Nets (Lecture Notes in Computer Science, Vol. 255). Springer, 325–392.
Google Scholar
Index Terms
The Geometry of Causality: Multi-token Geometry of Interaction and Its Causal Unfolding
Recommendations
The Geometry of Interaction of Differential Interaction Nets
LICS '08: Proceedings of the 2008 23rd Annual IEEE Symposium on Logic in Computer ScienceThe Geometry of Interaction purpose is to give a semantic of proofs or programs accounting for their dynamics. The initial presentation, translated as an algebraic weighting of paths in proofnets, led to a better characterization of the \lambda-calculus ...
Memoryful geometry of Interaction II: recursion and adequacy
POPL '16: Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming LanguagesA general framework of Memoryful Geometry of Interaction (mGoI) is introduced recently by the authors. It provides a sound translation of lambda-terms (on the high-level) to their realizations by stream transducers (on the low-level), where the ...
Coloured Petri Nets and CPN Tools for modelling and validation of concurrent systems
Coloured Petri Nets (CPNs) is a language for the modelling and validation of systems in which concurrency, communication, and synchronisation play a major role. Coloured Petri Nets is a discrete-event modelling language combining Petri nets with the ...






Comments