Abstract
In prior work we proposed an interpretation of intuitionistic linear logic propositions as session types for concurrent processes. The type system obtained from the interpretation ensures fundamental properties of session-based typed disciplines—most notably, type preservation, session fidelity, and global progress. In this paper, we complement and strengthen these results by developing a theory of logical relations. Our development is based on, and is remarkably similar to, that for functional languages, extended to an (intuitionistic) linear type structure. A main result is that well-typed processes always terminate (strong normalization). We also introduce a notion of observational equivalence for session-typed processes. As applications, we prove that all proof conversions induced by the logic interpretation actually express observational equivalences, and explain how type isomorphisms resulting from linear logic equivalences are realized by coercions between interface types of session-based concurrent systems.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
Abramsky, S.: Computational interpretations of linear logic. Theor. Comput. Sci. 111, 3–57 (1993)
Barber, A.: Dual intuitionistic linear logic. Technical report, LFCS-96-347, Univ. of Edinburgh (1996)
Boreale, M.: On the expressiveness of internal mobility in name-passing calculi. Theor. Comput. Sci. 195, 205–226 (1998)
Caires, L., Pfenning, F.: Session Types as Intuitionistic Linear Propositions. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 222–236. Springer, Heidelberg (2010)
Caires, L., Pfenning, F., Toninho, B.: Towards concurrent type theory. In: Proc. of 7th Workshop on Types in Language Design and Implementation – TLDI 2012 (2012)
Chang, B.-Y.E., Chaudhuri, K., Pfenning, F.: A judgmental analysis of linear logic. Technical report, CMU-CS-03-131R, Carnegie Mellon University (2003)
Dal Lago, U., Di Giamberardino, P.: Soft session types. In: Proc. of 18th Workshop on Expressiveness in Concurrency – EXPRESS 2011. EPTCS, vol. 64, pp. 59–73 (2011)
Demangeon, R., Hirschkoff, D., Sangiorgi, D.: Mobile Processes and Termination. In: Palsberg, J. (ed.) Mosses Festschrift. LNCS, vol. 5700, pp. 250–273. Springer, Heidelberg (2009)
Di Cosmo, R.: A short survey of isomorphisms of types. Mathematical Structures in Computer Science 15(5), 825–838 (2005)
Girard, J.-Y., Lafont, Y.: Linear Logic and Lazy Computation. In: Ehrig, H., Levi, G., Montanari, U. (eds.) TAPSOFT 1987. LNCS, vol. 250, pp. 52–66. Springer, Heidelberg (1987)
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)
Hu, R., Yoshida, N., Honda, K.: Session-Based Distributed Programming in Java. In: Ryan, M. (ed.) ECOOP 2008. LNCS, vol. 5142, pp. 516–541. Springer, Heidelberg (2008)
Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the pi-calculus. In: POPL, pp. 358–371 (1996)
Kouzapas, D., Yoshida, N., Honda, K.: On Asynchronous Session Semantics. In: Bruni, R., Dingel, J. (eds.) FORTE 2011 and FMOODS 2011. LNCS, vol. 6722, pp. 228–243. Springer, Heidelberg (2011)
Lafont, Y.: Soft linear logic and polynomial time. Theor. Comput. Sci. 318(1-2), 163–180 (2004)
Milner, R., Parrow, J., Walker, D.: A Calculus of Mobile Processes, part I/II. Inf. Comput. 100(1), 1–77 (1992)
Ng, N., Yoshida, N., Pernet, O., Hu, R., Kryftis, Y.: Safe Parallel Programming with Session Java. In: De Meuter, W., Roman, G.-C. (eds.) COORDINATION 2011. LNCS, vol. 6721, pp. 110–126. Springer, Heidelberg (2011)
Pérez, J.A., Caires, L., Pfenning, F., Toninho, B.: Linear Logical Relations for Session-Based Concurrency, Extended Version (2012), http://goo.gl/iQVZu
Pfenning, F., Caires, L., Toninho, B.: Proof-Carrying Code in a Session-Typed Process Calculus. In: Jouannaud, J.-P., Shao, Z. (eds.) CPP 2011. LNCS, vol. 7086, pp. 21–36. Springer, Heidelberg (2011)
Pucella, R., Tov, J.A.: Haskell session types with (almost) no class. In: Proc. of ACM SIGPLAN Symposium on Haskell, pp. 25–36. ACM (2008)
Sangiorgi, D.: Termination of processes. Mathematical Structures in Computer Science 16(1), 1–39 (2006)
Sangiorgi, D., Walker, D.: The π-calculus: A Theory of Mobile Processes. Cambridge University Press, New York (2001)
Statman, R.: Logical relations and the typed lambda-calculus. Information and Control 65(2/3), 85–97 (1985)
Tait, W.W.: Intensional Interpretations of Functionals of Finite Type I. J. Symbolic Logic 32, 198–212 (1967)
Toninho, B., Caires, L., Pfenning, F.: Dependent session types via intuitionistic linear type theory. In: Proc. of PPDP 2011, pp. 161–172. ACM Press, New York (2011)
Yoshida, N., Berger, M., Honda, K.: Strong normalisation in the pi -calculus. Inf. Comput. 191(2), 145–202 (2004)
Yoshida, N., Honda, K., Berger, M.: Linearity and bisimulation. J. Log. Algebr. Program. 72(2), 207–238 (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pérez, J.A., Caires, L., Pfenning, F., Toninho, B. (2012). Linear Logical Relations for Session-Based Concurrency. In: Seidl, H. (eds) Programming Languages and Systems. ESOP 2012. Lecture Notes in Computer Science, vol 7211. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-28869-2_27
Download citation
DOI: https://doi.org/10.1007/978-3-642-28869-2_27
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-28868-5
Online ISBN: 978-3-642-28869-2
eBook Packages: Computer ScienceComputer Science (R0)