Multiparty Session Types Within a Canonical Binary Theory, and Beyond

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9688)


A widespread approach to software service analysis uses session types. Very different type theories for binary and multiparty protocols have been developed; establishing precise connections between them remains an open problem. We present the first formal relation between two existing theories of binary and multiparty session types: a binary system rooted in linear logic, and a multiparty system based on automata theory. Our results enable the analysis of multiparty protocols using a (much simpler) type theory for binary protocols, ensuring protocol fidelity and deadlock-freedom. As an application, we offer the first theory of multiparty session types with behavioral genericity. This theory is natural and powerful; its analysis techniques reuse results for binary session types.


Local Type Linear Logic Parallel Composition Label Transition System Medium Process 
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.



Thanks to Bernardo Toninho for useful discussions. We are also grateful to the anonymous reviewers for their improvement suggestions. This work was partially supported by NOVA LINCS (Ref. UID/CEC/04516/2013) and COST Action IC1201 (Behavioural Types for Reliable Large-Scale Software Systems).


  1. 1.
    Bocchi, L., Honda, K., Tuosto, E., Yoshida, N.: A theory of design-by-contract for distributed multiparty interactions. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 162–176. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  2. 2.
    Bonelli, E., Compagnoni, A., Gunter, E.: Correspondence assertions for process synchronization in concurrent communications. J. Funct. Program. 15, 219–247 (2005)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Caires, L., Pérez, J.A.: A typeful characterization of multiparty structured conversations based on binary sessions. CoRR, abs/1407.4242 (2014)Google Scholar
  4. 4.
    Caires, L., Pérez, J.A., Pfenning, F., Toninho, B.: Behavioral polymorphism and parametricity in session-based communication. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 330–349. Springer, Heidelberg (2013). See also Technical Report CMU-CS-12-108, April 2012CrossRefGoogle Scholar
  5. 5.
    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)CrossRefGoogle Scholar
  6. 6.
    Carbone, M., Montesi, F.: Deadlock-freedom-by-design: multiparty asynchronous global programming. In: POPL, pp. 263–274. ACM (2013)Google Scholar
  7. 7.
    Carbone, M., Montesi, F., Schürmann, C., Yoshida, N.: Multiparty session types as coherence proofs. In: CONCUR 2015. LIPIcs, vol. 42, pp. 412–426. Dagstuhl (2015)Google Scholar
  8. 8.
    Castagna, G., Gesbert, N., Padovani, L.: A theory of contracts for web services. In: POPL, ACM SIGPLAN Notices 43, pp. 261–272. ACM (2008)Google Scholar
  9. 9.
    Chen, T.: Lightening global types. J. Logic Algebraic Meth. Program. 84(5), 708–729 (2015)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Coppo, M., Dezani-Ciancaglini, M., Yoshida, N., Padovani, L.: Global progress for dynamically interleaved multiparty sessions. Math. Struct. Comput. Sci. 26(2), 238–302 (2016)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Demangeon, R., Yoshida, N.: On the expressiveness of multiparty session types. In: FSTTCS 2015. LIPIcs. Dagstuhl (2015)Google Scholar
  12. 12.
    Deniélou, P.-M., Yoshida, N.: Multiparty compatibility in communicating automata: characterisation and synthesis of global session types. In: Fomin, F.V., Freivalds, R., Kwiatkowska, M., Peleg, D. (eds.) ICALP 2013, Part II. LNCS, vol. 7966, pp. 174–186. Springer, Heidelberg (2013)Google Scholar
  13. 13.
    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
  14. 14.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL, pp. 273–284. ACM (2008)Google Scholar
  15. 15.
    Huttel, H., et al.: Foundations of session types and behavioural contracts. ACM Comput. Surv. 49(1), 3:1–3:36 (2016). doi: 10.1145/2873052 CrossRefGoogle Scholar
  16. 16.
    Lange, J., Tuosto, E., Yoshida, N.: From communicating machines to graphical choreographies. In: Proceedings of POPL 2015, pp. 221–232. ACM (2015)Google Scholar
  17. 17.
    McIlvenna, S., Dumas, M., Wynn, M.T.: Synthesis of orchestrators from service choreographies. In: APCCM. CRPIT, vol. 96. Australian Computer Society (2009)Google Scholar
  18. 18.
    Padovani, L.: Deadlock and lock freedom in the linear \(\pi \)-calculus. In: Proceedings of CSL-LICS 2014, pp. 72:1–72:10. ACM (2014).
  19. 19.
    Pérez, J.A., Caires, L., Pfenning, F., Toninho, B.: Linear logical relations and observational equivalences for session-based concurrency. Inf. Comput. 239, 254–302 (2014)MathSciNetCrossRefMATHGoogle Scholar
  20. 20.
    Sangiorgi, D., Walker, D.: The \(\pi \)-calculus: A Theory of Mobile Processes. CUP, Cambridge (2001)MATHGoogle Scholar
  21. 21.
    Toninho, B., Caires, L., Pfenning, F.: Corecursion and non-divergence in session-typed processes. In: Maffei, M., Tuosto, E. (eds.) TGC 2014. LNCS, vol. 8902, pp. 159–175. Springer, Heidelberg (2014)Google Scholar
  22. 22.
    Wadler, P.: Propositions as sessions. J. Funct. Program. 24(2–3), 384–418 (2014)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2016

Authors and Affiliations

  1. 1.NOVA LINCSUniversidade NOVA de LisboaLisbonPortugal
  2. 2.University of GroningenGroningenThe Netherlands

Personalised recommendations