skip to main content
research-article
Open Access

Categorical combinatorics of scheduling and synchronization in game semantics

Published:02 January 2019Publication History
Skip Abstract Section

Abstract

Game semantics is the art of interpreting types as games and programs as strategies interacting in space and time with their environment. In order to reflect the interactive behavior of programs, strategies are required to follow specific scheduling policies. Typically, in the case of a purely sequential programming language, the program (Player) and its environment (Opponent) will play one after the other, in a strictly alternating way. On the other hand, in the case of a concurrent language, Player and Opponent will be allowed to play several moves in a row, in a non-alternating way. In both cases, the scheduling policy is designed very carefully in order to ensure that the strategies synchronize properly and compose well when plugged together. A longstanding conceptual problem has been to understand when and why a given scheduling policy works and is compositional in that sense. In this paper, we exhibit a number of simple and fundamental combinatorial structures which ensure that a given scheduling policy encoded as synchronization template defines a symmetric monoidal closed (and in fact star-autonomous) bicategory of games, strategies and simulations. To that purpose, we choose to work at a very general level, and illustrate our method by constructing two template game models of linear logic with different flavors (alternating and non-alternating) using the same categorical combinatorics, performed in the category of small categories. As a whole, the paper may be seen as a hymn in praise of synchronization, building on the notion of synchronization algebra in process calculi and adapting it smoothly to programming language semantics, using a combination of ideas at the converging point of game semantics and of categorical algebra.

Skip Supplemental Material Section

Supplemental Material

a23-mellies.webm

References

  1. Samson Abramsky, Radha Jagadeesan, and Pasquale Malacaria. 2000. Full Abstraction for PCF. Information and Computation 163, 2 (2000), 409–470. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Jean Bénabou. 1967. Introduction to bicategories. Number 40 in Lecture Notes in Mathematics. Springer Verlag, 1–77.Google ScholarGoogle Scholar
  3. Jean Bénabou. 1985. Fibered Categories and the Foundations of Naive Category Theory. Journal of Symbolic Logic 50, 1 (1985), 10–37.Google ScholarGoogle ScholarCross RefCross Ref
  4. Simon Castellan and Nobuko Yoshida. 2019. The two sides of the same coin: Session Types and Game Semantics. In Accepted for publication at POPL’19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Marcelo Fiore, Nicola Gambino, Martin Hyland, and Glynn Winskel. 2008. The cartesian closed bicategory of generalised species of structures. Journal of the London Mathematical Society 77 (2008), 203–220.Google ScholarGoogle ScholarCross RefCross Ref
  6. Richard Garner. 2006. Polycategories. Ph.D. Dissertation. University of Cambridge.Google ScholarGoogle Scholar
  7. Dan R. Ghica and Mohamed N. Menaa. 2011. Synchronous Game Semantics via Round Abstraction. In Foundations of Software Science and Computational Structures, Martin Hofmann (Ed.). Springer Verlag, 350–364. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Jean-Yves Girard. 1987. Linear Logic. Theoretical Computer Science 50 (1987), 1–101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Russell Harmer. 1999. Games and Full Abstraction for Nondeterministic Languages. Ph.D. Dissertation. Imperial College of Science, London.Google ScholarGoogle Scholar
  10. Russell Harmer, Martin Hyland, and Paul-André Melliès. 2007. Categorical Combinatorics for Innocent Strategies. In Proceedings of the 22nd IEEE Symposium on Logic in Computer Science (LICS). IEEE Computer Society, 379–388. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. André Hirschowitz, Michel Hirschowitz, and Tom Hirschowitz. 2007. A Theory for Game Theories. In Proceedings of the 27th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS) (LNCS), Vol. 4855. Springer Verlag, 192–203. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Martin Hyland and Luke Ong. 2000. On Full Abstraction for PCF. Information and Computation 163, 2 (2000), 285–408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Martin Hyland and Andrea Schalk. 1999. Abstract Games for Linear Logic. In Proceedings of Category Theory in Computer Science (CTCS) (Electronic Notes in Theoretical Computer Science), Vol. 29.Google ScholarGoogle Scholar
  14. Martin Hyland and Andrea Schalk. 2003. Glueing and Orthogonality for Models of Linear Logic. Theoretical Computer Science 294, 1-2 (2003), 183–231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Paul-André Melliès. 2006. Asynchronous games 2: the true concurrency of innocence. Theoretical Computer Science 358, 2-3 (2006), 200–228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Paul-André Melliès and Samuel Mimram. 2007. Asynchronous Games: Innocence Without Alternation. In 18th International Conference on Concurrency Theory (CONCUR 2007). 395–411. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Paul-André Melliès and Samuel Mimram. 2008. From Asynchronous Games to Concurrent Games. (2008). Unpublished manuscript. Available on the author’s webpage.Google ScholarGoogle Scholar
  18. Paul-André Melliès and Léo Stefanesco. 2018. An Asynchronous Soundness Theorem for Concurrent Separation Logic. In Proceedings of LICS 2018. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Sylvain Rideau and Glynn Winskel. 2011. Asynchronous Strategies. In Proceedings of the 26th Annual Symposium on Logic in Computer Science (LICS). IEEE, 409–418.Google ScholarGoogle Scholar
  20. Peter Selinger. 1999. Categorical Structure of Asynchrony. In Proceedings of Mathematical Foundations of Programming Semantics (MFPS 15) (Electronic Notes in Theoretical Computer Science), Vol. 20. Elsevier, 158–181.Google ScholarGoogle ScholarCross RefCross Ref
  21. Glynn Winskel. 1986. Event Structures. In Petri Nets: Applications and Relationships to Other Models of Concurrency (Lecture Notes in Computer Science), Vol. 255. Springer Verlag, 325–392. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Categorical combinatorics of scheduling and synchronization in game semantics

        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

        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!