Advertisement

Session Types as Intuitionistic Linear Propositions

  • Luís Caires
  • Frank Pfenning
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6269)

Abstract

Several type disciplines for π-calculi have been proposed in which linearity plays a key role, even if their precise relationship with pure linear logic is still not well understood. In this paper, we introduce a type system for the π-calculus that exactly corresponds to the standard sequent calculus proof system for dual intuitionistic linear logic. Our type system is based on a new interpretation of linear propositions as session types, and provides the first purely logical account of all (both shared and linear) features of session types. We show that our type discipline is useful from a programming perspective, and ensures session fidelity, absence of deadlocks, and a tight operational correspondence between π-calculus reductions and cut elimination steps.

Keywords

Type System Linear Logic Parallel Composition Label Transition System Sequent Calculus 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abramsky, S.: Computational Interpretations of Linear Logic. TCS 111(1&2) (1993)Google Scholar
  2. 2.
    Andreoli, J.-M.: Logic Programming with Focusing Proofs in Linear Logic. Journal of Logic and Computation 2(3), 197–347 (1992)CrossRefMathSciNetGoogle Scholar
  3. 3.
    Barber, A., Plotkin, G.: Dual Intuitionistic Linear Logic. Technical Report LFCS-96-347, Univ. of Edinburgh (1997)Google Scholar
  4. 4.
    Beffara, E.: A Concurrent Model for Linear Logic. ENTCS 155, 147–168 (2006)Google Scholar
  5. 5.
    Bellin, G., Scott, P.: On the π-Calculus and Linear Logic. TCS 135, 11–65 (1994)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Bonelli, E., Compagnoni, A., Gunter, E.L.: Correspondence Assertions for Process Synchronization in Concurrent Communications. J. of Func. Prog. 15(2), 219–247 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Boreale, M.: On the Expressiveness of Internal Mobility in Name-Passing Calculi. Theoretical Computer Science 195(2), 205–226 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Caires, L.: Logical semantics of types for concurrency. In: Mossakowski, T., Montanari, U., Haveraaen, M. (eds.) CALCO 2007. LNCS, vol. 4624, pp. 16–35. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  9. 9.
    Cervesato, I., Pfenning, F.: A Linear Logical Framework. Inf. & Comput. 179(1) (2002)Google Scholar
  10. 10.
    Chang, B.-Y.E., Chaudhuri, K., Pfenning, F.: A Judgmental Analysis of Linear Logic. Technical Report CMU-CS-03-131R, Carnegie Mellon University (2003)Google Scholar
  11. 11.
    Dezani-Ciancaglini, M., de’ Liguoro, U.: Sessions and Session Types: an Overview. In: 6th Intl. Workshop on Web Services and Formal Methods WS-FM 2009. LNCS. Springer, Heidelberg (2010)Google Scholar
  12. 12.
    Dezani-Ciancaglini, M., de’ Liguoro, U., Yoshida, N.: On Progress for Structured Communications. In: Barthe, G., Fournet, C. (eds.) TGC 2007 and FODO 2008. LNCS, vol. 4912, pp. 257–275. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Gay, S., Hole, M.: Subtyping for Session Types in the Pi Calculus. Acta Informatica 42(2-3), 191–225 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Girard, J.-Y., Lafont, Y.: Linear Logic and Lazy Computation. In: Ehrig, H., Kowalski, R.A., Levi, G., Montanari, U. (eds.) TAPSOFT 1987 and CFLP 1987. LNCS, vol. 250, pp. 52–66. Springer, Heidelberg (1987)Google Scholar
  15. 15.
    Giunti, M., Vasconcelos, V.T.: A Linear Account of Session Types in the Pi-Calculus. In: Gastin, P., Laroussinie, F. (eds.) 21st International Conference on Concurrency Theory, Concur 2010. Springer, Heidelberg (2010)Google Scholar
  16. 16.
    Honda, K.: Types for Dyadic Interaction. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 509–523. Springer, Heidelberg (1993)Google Scholar
  17. 17.
    Honda, K., Laurent, O.: An Exact Correspondence between a Typed pi-calculus and Polarised Proof-Nets. Theoretical Computer Science (to appear, 2010)Google Scholar
  18. 18.
    Honda, K., Vasconcelos, V.T., Kubo, M.: Language Primitives and Type Discipline for Structured Communication-Based Programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 122–138. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  19. 19.
    Hyland, J.M.E., Luke Ong, C.-H.: Pi-Calculus, Dialogue Games and PCF. In: WG2.8 Conference on Functional Programming Languages, pp. 96–107 (1995)Google Scholar
  20. 20.
    Kobayashi, N.: A Partially Deadlock-Free Typed Process Calculus. ACM Tr. Progr. Lang. Sys. 20(2), 436–482 (1998)CrossRefGoogle Scholar
  21. 21.
    Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the Pi-Calculus. In: 23rd Symp. on Principles of Programming Languages, POPL 1996, pp. 358–371. ACM, New York (1996)Google Scholar
  22. 22.
    Milner, R.: Functions as processes. Math. Struc. in Computer Sciences 2(2), 119–141 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Sangiorgi, D.: Pi-Calculus, Internal Mobility, and Agent Passing Calculi. Theoretical Computer Science 167(1&2), 235–274 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Sangiorgi, D., Walker, D.: The π-calculus: A Theory of Mobile Processes. CUP, Cambridge (2001)Google Scholar
  25. 25.
    Watkins, K., Cervesato, I., Pfenning, F., Walker, D.: Specifying properties of concurrent computations in CLF. In: Schürmann, C. (ed.) 4th Intl. Workshop on Logical Frameworks and Meta-Languages (LFM 2004), Cork, Ireland, July 2004. ENTCS, vol. 199 (2004)Google Scholar
  26. 26.
    Yoshida, N., Honda, K., Berger, M.: Linearity and Bisimulation. J. Logic and Algebraic Programming 72(2), 207–238 (2007)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Luís Caires
    • 1
  • Frank Pfenning
    • 2
  1. 1.CITI and Departamento de Informática, FCTUniversidade Nova de Lisboa 
  2. 2.Department of Computer ScienceCarnegie Mellon University 

Personalised recommendations