ABSTRACT
We review progress in a recent line of research that provides a concurrent computational interpretation of (intuitionistic) linear logic. Propositions are interpreted as session types, sequent proofs as processes in the pi-calculus, cut reductions as process reductions, and vice versa. The strong proof-theoretic foundation of this type system provides immediate opportunities for uniform generalization, specifically, to embed terms from a functional type theory. The resulting system satisfies the properties of type preservation, progress, and termination, as expected from a language derived via a Curry-Howard isomorphism. While very expressive, the language is strictly stratified so that dependent types for functional terms can be enforced during communication, but neither processes nor channels can appear in functional terms. We briefly speculate on how this limitation might be overcome to arrive at a fully dependent concurrent type theory.
- M. Abadi and C. Fournet Mobile values, new names, and secure communication In 28th Symposium on Principles of Programming Languages POPL'01, pages 104--115, London, United Kingdom, 2001. ACM. Google ScholarDigital Library
- S. Abramsky Computational interpretations of linear logic Theoretical Computer Science, 111: 3--57, 1993. Google ScholarDigital Library
- J.-M. Andreoli. Logic programming with focusing proofs in linear logic. Journal of Logic and Computation, 2(3):197--347, 1992.Google ScholarCross Ref
- S. Awodey and A. Bauer. Propositions as {types}. Journal of Logic and Computation, 14(4):447--471, 2004. Google ScholarDigital Library
- A. G. Barber. Linear Type Theories, Semantics and Action Calculi. PhD thesis, University of Edinburgh, 1997. Available as Technical Report ECS-LFCS-97-371.Google Scholar
- L. Caires and F. Pfenning. Session types as intuitionistic linear propositions. In Proceedings of the 21st International Conference on Concurrency Theory (CONCUR 2010), pages 222--236, Paris, France, Aug. 2010. Springer LNCS 6269. Google ScholarDigital Library
- B.-Y. E. Chang, K. Chaudhuri, and F. Pfenning. A judgmental analysis of linear logic. Technical Report CMU-CS-03-131R, Carnegie Mellon University, Department of Computer Science, Dec. 2003.Google Scholar
- A. Church. A formulation of the simple theory of types. Journal of Symbolic Logic, 5:56--68, 1940.Google ScholarCross Ref
- A. Church and J. Rosser. Some properties of conversion. Transactions of the American Mathematical Society, 39(3):472--482, May 1936.Google ScholarCross Ref
- R. L. Constable et al. Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall, Englewood Cliffs, New Jersey, 1986. Google ScholarDigital Library
- H. B. Curry. Functionality in combinatory logic. Proceedings of the National Academy of Sciences, U.S.A., 20:584--590, 1934.Google ScholarCross Ref
- LinD. Garg, L. Bauer, K. Bowers, F. Pfenning, and M. Reiter. A linear logic of affirmation and knowledge. In D. Gollman, J. Meier, and A. Sabelfeld, editors, Proceedings of the 11th European Symposium on Research in Computer Security (ESORICS'06), pages 297--312, Hamburg, Germany, Sept. 2006. Springer LNCS 4189. Google ScholarDigital Library
- J.-Y. Girard. Linear logic. Theoretical Computer Science, 50:1--102, 1987. Google ScholarDigital Library
- J.-Y. Girard. Towards a geometry of interaction. In J. W. Gray and A. Scedrov, editors, Categories in Computer Science and Logic, pages 69--108. American Mathematical Society, 1989. Contemporary Mathematics, Volume 92.Google Scholar
- K. Honda. Types for dyadic interaction. In 4th International Conference on Concurrency Theory, CONCUR'93, pages 509--523. Springer LNCS 715, 1993. Google ScholarDigital Library
- K. Honda, V. T. Vasconcelos, and M. Kubo. Language primitives and type discipline for structured communication-based programming. In 7th European Symposium on Programming Languages and Systems, ESOP'98, pages 122--138. Springer LNCS 1381, 1998. Google ScholarDigital Library
- W. A. Howard. The formulae-as-types notion of construction. Unpublished note. An annotated version appeared in: To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, 479--490, Academic Press (1980), 1969.Google Scholar
- J. M. E. Hyland and C.-H. L. Ong. Pi-calculus, dialogue games and PCF. In 7th Conference on Functional Programming Languages and Computer Architecture, FPCA'95, pages 96--107, La Jolla, California, June 1995. ACM. Google ScholarDigital Library
- P. Martin-Löf. Constructive mathematics and computer programming. In Logic, Methodology and Philosophy of Science VI, pages 153--175. North-Holland, 1980.Google Scholar
- M. Merro and D. Sangiorgi. On asynchrony in name-passing calculi. Mathematical Structures in Computer Science, 14(5):715--767, 2004. Google ScholarDigital Library
- R. Milner. Functions as processes. Mathematical Structures in Computer Science, 2(2):119--141, 1992.Google ScholarCross Ref
- R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100(1):1--77, Sept. 1992. Parts I and II.Google ScholarDigital Library
- J. A. Pérez, L. Caires, F. Pfenning, and B. Toninho. Termination in sessionbased concurrency via linear logical relations. Submitted, Oct. 2011.Google Scholar
- F. Pfenning, L. Caires, and B. Toninho. Proof-carrying code in a sessiontyped process calculus. In 1st International Conference on Certified Programs and Proofs, CPP'11, Kenting, Taiwan, Dec. 2011. Springer LNCS. To appear. Google ScholarDigital Library
- D. Prawitz. Natural Deduction. Almquist & Wiksell, Stockholm, 1965.Google Scholar
- J. C. Reed. A Hybrid Logical Framework. PhD thesis, Carnegie Mellon University, Sept. 2009. Available as Technical Report CMU-CS-09-155. Google ScholarDigital Library
- D. Sangiorgi and D. Walker. The π-Calculus: A Theory of Mobile Processes. Cambridge University Press, 2001. Google ScholarDigital Library
- B. Toninho, L. Caires, and F. Pfenning. Dependent session types via intuitionistic linear type theory. In Proceedings of the 13th International Conference on Principles and Practice of Declarative Programming, PPDP'11, pages 161--172, Odense, Denmark, July 2011a. ACM. Google ScholarDigital Library
Index Terms
Towards concurrent type theory
Recommendations
Canonicity for 2-dimensional type theory
POPL '12Higher-dimensional dependent type theory enriches conventional one-dimensional dependent type theory with additional structure expressing equivalence of elements of a type. This structure may be employed in a variety of ways to capture rather coarse ...
Type-preserving CPS translation of Σ and Π types is not not possible
Dependently typed languages such as Coq are used to specify and prove functional correctness of source programs, but what we ultimately need are guarantees about correctness of compiled code. By preserving dependent types through each compiler pass, we ...
Decidability of conversion for type theory in type theory
Type theory should be able to handle its own meta-theory, both to justify its foundational claims and to obtain a verified implementation. At the core of a type checker for intensional type theory lies an algorithm to check equality of types, or in ...
Comments