Skip to main content

Conflation Confers Concurrency

  • Chapter
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9600))

Abstract

Session types provide a static guarantee that concurrent programs respect communication protocols. Recent work has explored a correspondence between proof rules and cut reduction in linear logic and typing and evaluation of process calculi. This paper considers two approaches to extend logically-founded process calculi. First, we consider extensions of the process calculus to more closely resemble \(\pi \)-calculus. Second, inspired by denotational models of process calculi, we consider conflating dual types. Most interestingly, we observe that these approaches coincide: conflating the multiplicatives (\(\otimes \) and \(\invamp \)) allows processes to share multiple channels; conflating the additives (\(\oplus \) and \( {\, \& \,}\)) provides nondeterminism; and conflating the exponentials (\({!}\) and \({?}\)) yields access points, a rendezvous mechanism for initiating session typed communication. Access points are particularly expressive: for example, they are sufficient to encode concurrent state and general recursion.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  • Abramsky, S.: Proofs as processes. Theor. Comput. Sci. 135(1), 5–9 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  • Abramsky, S., Gay, S.J., Nagarajan, R.: Interaction categories and the foundations of typed concurrent programming. In: Proceedings of the NATO Advanced Study Institute on Deductive Program Design, Marktoberdorf, Germany, pp. 35–113 (1996)

    Google Scholar 

  • Bellin, G., Scott, P.J.: On the \(\pi \)-Calculus and linear logic. Theoret. Comput. Sci. 135(1), 11–65 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  • Bird, R., Wadler, P.: An Introduction to Functional Programming. Prentice Hall International (UK) Ltd., Hertfordshire (1988)

    Google Scholar 

  • 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)

    Chapter  Google Scholar 

  • Curry, H.B.: Functionality in combinatory logic. Proc. Nat. Acad. Sci. 20, 584–590 (1934)

    Article  MATH  Google Scholar 

  • Dardha, O., Pérez, J.A.: Comparing deadlock-free session typed processes. In: EXPRESS/SOS, 2015, Madrid, Spain, 31 August 2015, pp. 1–15 (2015)

    Google Scholar 

  • Ehrhard, T., Laurent, O.: Interpreting a finitary pi-calculus in differential interaction nets. Inf. Comput. 208(6), 606–633 (2010). http://dx.org/10.1016/j.ic.2009.06.005

    Article  MathSciNet  MATH  Google Scholar 

  • Fiore, M.P.: Differential structure in models of multiplicative biadditive intuitionistic linear logic. In: Della Rocca, S.R. (ed.) TLCA 2007. LNCS, vol. 4583, pp. 163–177. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  • Giachino, E., Kobayashi, N., Laneve, C.: Deadlock analysis of unbounded process networks. In: Baldan, P., Gorla, D. (eds.) CONCUR 2014. LNCS, vol. 8704, pp. 63–77. Springer, Heidelberg (2014)

    Google Scholar 

  • Girard, J.Y.: Linear logic. Theoret. Comput. Sci. 50(1), 1–101 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  • Honda, K.: Types for dyadic interaction. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715. Springer, Heidelberg (1993)

    Google Scholar 

  • Honda, K., Laurent, O.: An exact correspondence between a typed pi-calculus and polarised proof-nets. Theor. Comput. Sci. 411(22–24), 2223–2238 (2010). http://dx.doi.org/10.1016/j.tcs.2010.01.028

    Article  MathSciNet  MATH  Google Scholar 

  • 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)

    Chapter  Google Scholar 

  • Honda, K., Yoshida, N., Berger, M.: Control in the \(\pi \)-calculus. In: Fourth ACM-SIGPLAN Continuation Workshop, CW04, 2004. Online proceedings (2004)

    Google Scholar 

  • Houston, R.: Finite products are biproducts in a compact closed category. J. Pure Appl. Algebra 212(2), 394–400 (2008). http://www.sciencedirect.com/science/article/pii/S0022404907001454

    Article  MathSciNet  MATH  Google Scholar 

  • Howard, W.A.: The formulae-as-types notion of construction. In: Seldin, J.P., Hindley, J.R. (eds.) To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism. Academic Press, Boston (1980)

    Google Scholar 

  • Kobayashi, N.: A new type system for deadlock-free processes. In: Baier, C., Hermanns, H. (eds.) CONCUR 2006. LNCS, vol. 4137, pp. 233–247. Springer, Heidelberg (2006). http://dx.doi.org/10.1007/11817949_16

    Chapter  Google Scholar 

  • Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the \(\pi \)-calculus. In: POPL. ACM (1996)

    Google Scholar 

  • Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the Pi-calculus. ACM Trans. Program. Lang. Syst. 21(5), 914–947 (1999)

    Article  Google Scholar 

  • Landin, P.J.: The mechanical evaluation of expressions. Comput. J. 6(4), 308–320 (1964)

    Article  MATH  Google Scholar 

  • Lindley, S., Morris, J.G.: A semantics for propositions as sessions. In: Vitek, J. (ed.) ESOP 2015. LNCS, vol. 9032, pp. 560–584. Springer, Heidelberg (2015)

    Chapter  Google Scholar 

  • Mazza, D.: The true concurrency of differential interaction nets. Mathematical Structures in Computer Science (2015, to appear)

    Google Scholar 

  • Naftalin, M., Wadler, P.: Java Generics and Collections. O’Reilly Media, Inc., Sebastopol (2006)

    Google Scholar 

  • Padovani, L.: Deadlock and lock freedom in the linear \(\pi \)-calculus. In: LICS. ACM (2014). http://doi.acm.org/10.1145/2603088.2603116

  • Tait, W.W.: Infinitely long terms of transfinite type. In: Crossley, J.N., Dummett, M.A.E. (eds.) Formal Systems and Recursive Functions. North-Holland, Amsterdam (1965)

    Google Scholar 

  • Takeuchi, K., Honda, K., Kubo, M.: An interaction-based language and its typing system. In: Halatsis, C., Philokyprou, G., Maritsas, D., Theodoridis, S. (eds.) PARLE 1994. LNCS, vol. 817. Springer, Heidelberg (1994)

    Google Scholar 

  • Wadler, P.: Propositions as sessions. J. Funct. Program. 24(2–3), 384–418 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  • Wadler, P.: Propositions as types. Commun. ACM 58(12), 75–84 (2015). http://doi.acm.org/10.1145/2699407

    Article  Google Scholar 

Download references

Acknowledgements

This work was supported by the EPSRC grant: From Data Types to Session Types—A Basis for Concurrency and Distribution (EP/K034413/1).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert Atkey .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Atkey, R., Lindley, S., Morris, J.G. (2016). Conflation Confers Concurrency. In: Lindley, S., McBride, C., Trinder, P., Sannella, D. (eds) A List of Successes That Can Change the World. Lecture Notes in Computer Science(), vol 9600. Springer, Cham. https://doi.org/10.1007/978-3-319-30936-1_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-30936-1_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-30935-4

  • Online ISBN: 978-3-319-30936-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics