skip to main content
research-article

Propositions as sessions

Published:09 September 2012Publication History
Skip Abstract Section

Abstract

Continuing a line of work by Abramsky (1994), by Bellin and Scott (1994), and by Caires and Pfenning (2010), among others, this paper presents CP, a calculus in which propositions of classical linear logic correspond to session types. Continuing a line of work by Honda (1993), by Honda, Kubo, and Vasconcelos (1998), and by Gay and Vasconcelos (2010), among others, this paper presents GV, a linear functional language with session types, and presents a translation from GV into CP. The translation formalises for the first time a connection between a standard presentation of session types and linear logic, and shows how a modification to the standard presentation yield a language free from deadlock, where deadlock freedom follows from the correspondence to linear logic.

References

  1. Samson Abramsky. Computational interpretations of linear logic. Theoretical Computer Science, 111 (1&2): 3--57, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Samson Abramsky. Proofs as processes. Theoretical Computer Science, 135 (1): 5--9, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Samson Abramsky, Simon J. Gay, and Rajagopal Nagarajan. Interaction categories and the foundations of typed concurrent programming. In Deductive Program Design, Marktoberdorf, pages 35--113, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Gianluigi Bellin and Philip J. Scott. On the pi-calculus and linear logic. Theoretical Computer Science, 135 (1): 11--65, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Nick Benton and Philip Wadler. Linear logic, monads and the lambda calculus. In Logic in Computer Science (LICS), pages 420--431, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Martin Berger, Kohei Honda, and Nobuko Yoshida. Genericity and the pi-calculus. Acta Inf., 42 (2-3): 83--141, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Luís Caires and Frank Pfenning. Session types as intuitionistic linear propositions. In CONCUR, pages 222--236, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Luís Caires, Frank Pfenning, and Bernardo Toninho. Towards concurrent type theory. In Types in Language Design and Implementation (TLDI), January 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. LuísCaires, Frank Pfenning, and Bernardo Toninho. Linear logic propositions as session types. Mathematical Structures in Computer Science, 2012. Submitted.Google ScholarGoogle Scholar
  10. Marco Carbone and Søren Debois. A graphical approach to progress for structured communication in web services. In Interaction and Concurrency Experience (ICE), pages 13--27, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  11. Manuel Fähndrich, Mark Aiken, Chris Hawblitzel, Orion Hodson, Galen C. Hunt, James R. Larus, and Steven Levi. Language support for fast and reliable message-based communication in Singularity OS. In European Conference on Computer Systems (EuroSys), pages 177--190, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Jean H. Gallier. On Girard's "Candidats de Reducibilité", pages 123--204. Academic Press, 1990.Google ScholarGoogle Scholar
  13. Simon J. Gay and Malcolm Hole. Subtyping for session types in the pi calculus. Acta Informatica, 42 (2-3): 191--225, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Simon J. Gay and Vasco T. Vasconcelos. Linear type theory for asynchronous session types. Journal of Functional Programming, 20 (1): 19--50, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Jean-Yves Girard. Linear logic. Theoretical Computer Science, 50: 1--102, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Jean-Yves Girard. A new constructive logic: Classical logic. Mathematical Structures in Computer Science, 1 (3): 255--296, 1991.Google ScholarGoogle ScholarCross RefCross Ref
  17. Jean-Yves Girard, Yves Lafont, and Paul Taylor. Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Hugo Herbelin. On the degeneracy of sigma-types in presence of computational classical logic. In Typed Lambda Calculi and Applications (TLCA), pages 209--220, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Kohei Honda. Types for dyadic interaction. In CONCUR, pages 509--523, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Kohei Honda, Vasco T. Vasconcelos, and Makoto Kubo. Language primitives and type discipline for structured communication-based programming. In European Symposium on Programming (ESOP), pages 122--138, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Naoki Kobayashi. Type systems for concurrent programs. In 10th Anniversary Colloquium of UNU/IIST, LNCS 2757, pages 439--453, 2002.Google ScholarGoogle Scholar
  22. Naoki Kobayashi and Akinori Yonezawa. Acl - a concurrent linear logic programming paradigm. In International Logic Programming Symposium (ILPS), pages 279--294, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Naoki Kobayashi and Akinori Yonezawa. Higher-order concurrent linear logic programming. In Theory and Practice of Parallel Programming, LNCS 907, pages 137--166, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Naoki Kobayashi and Akinori Yonezawa. Asynchronous communication model based on linear logic. Formal Aspects of Computing, 7 (2): 113--149, 1995.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Naoki Kobayashi, Benjamin C. Pierce, and David N. Turner. Linearity and the pi-calculus. In POPL, pages 358--371, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Karl Mazurak and Steve Zdancewic. Lolliproc: to concurrency from classical linear logic via curry-howard and control. In International Conference on Functional Programming (ICFP), pages 39--50, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Massimo Merro and Davide Sangiorgi. On asynchrony in name-passing calculi. Mathematical Structures in Computer Science, 14 (5): 715--767, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Dale Miller. The pi-calculus as a theory in linear logic: Preliminary results. In Extensions to Logic Programming, LNCS 660, pages 242--264, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Robin Milner, Joachim Parrow, and David Walker. A calculus of mobile processes, i. Information and Computation, 100 (1): 1--40, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Jorge Pérez, Luís Caires, Frank Pfenning, and Bernardo Toninho. Termination in session-based concurrency via linear logical relations. In European Symposium on Programming (ESOP), 2012.Google ScholarGoogle Scholar
  31. Frank Pfenning, Luís Caires, and Bernardo Toninho. Proof-carrying code in a session-typed process calculus. In Certified Programs and Proofs (CPP), pages 21--36, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Benjamin C. Pierce and Davide Sangiorgi. Behavioral equivalence in the polymorphic pi-calculus. Journal of the ACM, 47 (3): 531--584, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Benjamin C. Pierce and David N. Turner. Pict: a programming language based on the pi-calculus. In Gordon D. Plotkin, Colin Stirling, and Mads Tofte, editors, Proof, Language, and Interaction, Essays in Honour of Robin Milner, pages 455--494. The MIT Press, 2000. ISBN 978-0-262-16188-6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Andrew M. Pitts. Structural recursion with locally scoped names. J. Funct. Program., 21 (3): 235--286, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Eijiro Sumii and Naoki Kobayashi. A generalized deadlock-free process calculus. In High-Level Concurrent Languages (HLCL), 1998. ENTCS 16(3):225--247, 1998.Google ScholarGoogle ScholarCross RefCross Ref
  36. Kaku Takeuchi, Kohei Honda, and Makoto Kubo. An interaction-based language and its typing system. In C. Halatsis, D. G. Maritsas, G. Philokyprou, and S. Theodoridis, editors, PARLE, LNCS 817, pages 398--413, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Bernardo Toninho, Luís Caires, and Frank Pfenning. Functions as session-typed processes. In Foundations of Software Science and Computation (FoSSaCS), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. David N. Turner. The Polymorphic Pi-calculus: Theory and Implementation. PhD thesis, University of Edinburgh, 1995.Google ScholarGoogle Scholar
  39. Vasco T. Vasconcelos. Sessions, from types to programming languages. Bulletin of the European Association for Theoretical Computer Science, 103: 53--73, 2011.Google ScholarGoogle Scholar
  40. Nobuko Yoshida and Vasco T. Vasconcelos. Language primitives and type discipline for structured communication-based programming revisited: Two systems for higher-order session communication. Electronic Notes in Theoretical Computer Science, 171 (4): 73--93, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Propositions as sessions

            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

            • Published in

              cover image ACM SIGPLAN Notices
              ACM SIGPLAN Notices  Volume 47, Issue 9
              ICFP '12
              September 2012
              368 pages
              ISSN:0362-1340
              EISSN:1558-1160
              DOI:10.1145/2398856
              Issue’s Table of Contents
              • cover image ACM Conferences
                ICFP '12: Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
                September 2012
                392 pages
                ISBN:9781450310543
                DOI:10.1145/2364527

              Copyright © 2012 ACM

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 9 September 2012

              Check for updates

              Qualifiers

              • research-article

            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!