Reliable Contracts for Unreliable Half-Duplex Communications

  • Étienne Lozes
  • Jules Villard
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7176)


Recent trends in formal models of web services description languages and session types focus on the asynchronicity of communications. In this paper, we study a core of these models that arose from our modelling of the Sing# programming language, and demonstrate correspondences between Sing# contracts, asynchronous session behaviors, and the subclass of communicating automata with two participants that satisfy the half-duplex property. This correspondence better explains the criteria proposed by Stengel and Bultan for Sing# contracts to be reliable, and possibly indicate useful criteria for the design of WSDL. We moreover establish a polynomial-time complexity for the analysis of communication contracts under arbitrary models of asynchronicity, and we investigate the model-checking problems against LTL formulas.


Interference Model Dialogue System Session Type Message Sequence Chart Channel Contract 
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.
    Abdulla, P.A., Jonsson, B.: Verifying programs with unreliable channels. Inf. Comput. (1996)Google Scholar
  2. 2.
    Alur, R., Etessami, K., Yannakakis, M.: Inference of message sequence charts. In: Software Concepts and Tools (2003)Google Scholar
  3. 3.
    Barbanera, F., de’Liguoro, U.: Two notions of sub-behaviour for session-based client/server systems. In: PPDP (2010)Google Scholar
  4. 4.
    Basu, S., Bultan, T.: Choreography conformance via synchronizability. In: WWW (2011)Google Scholar
  5. 5.
    Bono, V., Messa, C., Padovani, L.: Typing Copyless Message Passing. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 57–76. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  6. 6.
    Bouajjani, A., Jonsson, B., Nilsson, M., Touili, T.: Regular Model Checking. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 403–418. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  7. 7.
    Brand, D., Zafiropulo, P.: On communicating finite-state machines. J. ACM (1983)Google Scholar
  8. 8.
    Bravetti, M., Zavattaro, G.: Contract Compliance and Choreography Conformance in the Presence of Message Queues. In: Bruni, R., Wolf, K. (eds.) WS-FM 2008. LNCS, vol. 5387, pp. 37–54. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  9. 9.
    Cécé, G., Finkel, A.: Verification of programs with half-duplex communication. Inf. Comput. (2005)Google Scholar
  10. 10.
    Cécé, G., Finkel, A., Purushothaman Iyer, S.: Unreliable channels are easier to verify than perfect channels. Inf. Comput (January 1996)Google Scholar
  11. 11.
    Esparza, J.: Decidability and complexity of Petri net problems - an introduction. In: Petri Nets (1996)Google Scholar
  12. 12.
    Fähndrich, M., Aiken, M., Hawblitzel, C., Hodson, O., Hunt, G.C., Larus, J.R., Levi, S.: Language support for fast and reliable message-based communication in Singularity OS. In: EuroSys (2006)Google Scholar
  13. 13.
    Finkel, A., Schnoebelen, P.: Well-structured transition systems everywhere! Theor. Comput. Sci. (April 2001)Google Scholar
  14. 14.
    Gay, S.J., Vasconcelos, V.T.: Linear type theory for asynchronous session types. J. Funct. Program (2010)Google Scholar
  15. 15.
    Gouda, M.G., Manning, E.G., Yu, Y.-T.: On the progress of communications between two finite state machines. Information and Control (1984)Google Scholar
  16. 16.
    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
  17. 17.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL (2008)Google Scholar
  18. 18.
    Mayr, R.: Undecidable problems in unreliable computations. Theor. Comput. Sci. (2003)Google Scholar
  19. 19.
    Padovani, L.: Fair Subtyping for Multi-party Session Types. In: De Meuter, W., Roman, G.-C. (eds.) COORDINATION 2011. LNCS, vol. 6721, pp. 127–141. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  20. 20.
    Schnoebelen, P.: Lossy Counter Machines Decidability Cheat Sheet. In: Kučera, A., Potapov, I. (eds.) RP 2010. LNCS, vol. 6227, pp. 51–75. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  21. 21.
    Stengel, Z., Bultan, T.: Analyzing singularity channel contracts. In: ISSTA (2009)Google Scholar
  22. 22.
    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, pp. 398–413. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  23. 23.
    Villard, J.: Heaps and Hops. PhD Thesis, LSV, ENS Cachan (February 2011)Google Scholar
  24. 24.
    Villard, J., Lozes, É., Calcagno, C.: Proving Copyless Message Passing. In: Hu, Z. (ed.) APLAS 2009. LNCS, vol. 5904, pp. 194–209. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  25. 25.
    Wolper, P., Boigelot, B.: Verifying Systems with Infinite but Regular State Spaces. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 88–97. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Étienne Lozes
    • 1
  • Jules Villard
    • 2
  1. 1.University of KasselGermany
  2. 2.Queen Mary, University of LondonUK

Personalised recommendations