Contracts for Mobile Processes

  • Giuseppe Castagna
  • Luca Padovani
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5710)


Theories identifying well-formed systems of processes—those that are free of communication errors and enjoy strong properties such as deadlock freedom—are based either on session types, which are inhabited by channels, or on contracts, which are inhabited by processes. Current session type theories impose overly restrictive disciplines while contract theories only work for networks with fixed topology. Here we fill the gap between the two approaches by defining a theory of contracts for so-called mobile processes, those whose communications may include delegations and channel references.


Operational Semantic Parallel Composition Public Channel Mobile Process Session Type 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aceto, L., Hennessy, M.: Termination, deadlock, and divergence. J. ACM 39(1) (1992)Google Scholar
  2. 2.
    Ateniese, G., Steiner, M., Tsudik, G.: Authenticated group key agreement and friends. In: CCS 1998: 5th ACM conference on Computer and Communications Security (1998)Google Scholar
  3. 3.
    Bettini, L., Capecchi, S., Dezani-Ciancaglini, M., Giachino, E., Venneri, B.: Session and Union Types for Object Oriented Programming. In: Degano, P., De Nicola, R., Meseguer, J. (eds.) Concurrency, Graphs and Models. LNCS, vol. 5065, pp. 659–680. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  4. 4.
    Bettini, L., Coppo, M., D’Antoni, L., De Luca, M., Dezani-Ciancaglini, M., Yoshida, N.: Global Progress in Dynamically Interleaved Multiparty Sessions. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 418–433. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  5. 5.
    Boreale, M., De Nicola, R.: Testing equivalence for mobile processes. Inf. Comput. 120(2), 279–303 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Bravetti, M., Zavattaro, G.: Contract based multi-party service composition. In: Arbab, F., Sirjani, M. (eds.) FSEN 2007. LNCS, vol. 4767, pp. 207–222. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Bravetti, M., Zavattaro, G.: Towards a unifying theory for choreography conformance and contract compliance. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 34–50. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Bugliesi, M., Castagna, G., Crafa, S.: Access control for mobile agents: The Calculus of Boxed Ambients. ACM TOPLAS 26(1), 57–124 (2004)CrossRefGoogle Scholar
  9. 9.
    Buscemi, M.G., Melgratti, H.: Abstract processes in orchestration languages. In: Castagna, G. (ed.) ESOP 2009. LNCS, vol. 5502, pp. 301–315. Springer, Heidelberg (2009)Google Scholar
  10. 10.
    Caires, L.: Spatial-behavioral types for concurrency and resource control in distributed systems. TCS 402(2-3), 120–141 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Caires, L., Vieira, H.: Conversation types. In: Castagna, G. (ed.) ESOP 2009. LNCS, vol. 5502, pp. 285–300. Springer, Heidelberg (2009)Google Scholar
  12. 12.
    Carpineti, S., Castagna, G., Laneve, C., Padovani, L.: A Formal Account of Contracts for Web Services. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 148–162. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Castagna, G., Dezani-Ciancaglini, M., Giachino, E., Padovani, L.: Foundation of session types (unpublished manuscript) (available on line) (January 2009)Google Scholar
  14. 14.
    Castagna, G., Gesbert, N., Padovani, L.: A theory of contracts for Web Services. ACM TOPLAS 31(5) (2009)Google Scholar
  15. 15.
    Coppo, M., Dezani-Ciancaglini, M., Yoshida, N.: Asynchronous Session Types and Progress for Object-Oriented Languages. In: Bonsangue, M.M., Johnsen, E.B. (eds.) FMOODS 2007. LNCS, vol. 4468, Springer, Heidelberg (2007)CrossRefGoogle Scholar
  16. 16.
    Courcelle, B.: Fundamental properties of infinite trees. Theor. Comput. Sci. 25, 95–169 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    De Nicola, R., Hennessy, M.: ccs without τ’s. In: Ehrig, H., Levi, G., Montanari, U. (eds.) CAAP 1987 and TAPSOFT 1987. LNCS, vol. 249, pp. 138–152. Springer, Heidelberg (1987)Google Scholar
  18. 18.
    Dezani-Ciancaglini, M., de’ Liguoro, U., Yoshida, N.: On progress for structured communications. In: Barthe, G., Fournet, C. (eds.) TGC 2007. LNCS, vol. 4912, pp. 257–275. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Gay, S., Hole, M.: Subtyping for session types in the π-calculus. Acta Inf. 42(2-3) (2005)Google Scholar
  20. 20.
    Hennessy, M.: Algebraic Theory of Processes. Foundation of Computing. MIT Press, Cambridge (1988)zbMATHGoogle Scholar
  21. 21.
    Honda, K., Vasconcelos, V., Kubo, M.: Language primitives and type discipline for structured communication-based programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, p. 122. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  22. 22.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL 2008: the 35th annual ACM Symp. on Principles of Programming Languages (2008)Google Scholar
  23. 23.
    Kobayashi, N.: A type system for lock-free processes. Inf. Comput. 177(2), 122–159 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  24. 24.
    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)CrossRefGoogle Scholar
  25. 25.
    Laneve, C., Padovani, L.: The must preorder revisited – An algebraic theory for web services contracts. In: Caires, L., Vasconcelos, V.T. (eds.) CONCUR 2007. LNCS, vol. 4703, pp. 212–225. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  26. 26.
    Hennessy, M.: A fully abstract denotational semantics for the pi-calculus. Theor. Comput. Sci. 278(37), 53–89 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Mostrous, D., Yoshida, N., Honda, K.: Global principal typing in partially commutative asynchronous sessions. In: Castagna, G. (ed.) ESOP 2009. LNCS, vol. 5502, pp. 316–332. Springer, Heidelberg (2009)Google Scholar
  28. 28.
    Padovani, L.: Contract-directed synthesis of simple orchestrators. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 131–146. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  29. 29.
    Pierce, B.C., Sangiorgi, D.: Typing and subtyping for mobile processes. Mathematical Structures in Computer Science 6(5), 409–453 (1996)MathSciNetzbMATHGoogle Scholar
  30. 30.
    Vasconcelos, V.T., Ravara, A., Gay, S.J.: Session types for functional multithreading. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 497–511. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Giuseppe Castagna
    • 1
  • Luca Padovani
    • 2
  1. 1.CNRS, Laboratoire Preuves, Programmes et SystèmesUniversité Paris DiderotParis 7
  2. 2.Istituto di Scienze e Tecnologie dell’InformazioneUniversità di UrbinoItaly

Personalised recommendations