Advertisement

Denotational and Operational Preciseness of Subtyping: A Roadmap

Dedicated to Frank de Boer on the Occasion of His 60th Birthday
  • Mariangiola Dezani-Ciancaglini
  • Silvia Ghilezan
  • Svetlana Jakšić
  • Jovanka Pantović
  • Nobuko Yoshida
Chapter
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9660)

Abstract

The notion of subtyping has gained an important role both in theoretical and applicative domains: in lambda and concurrent calculi as well as in object-oriented programming languages. The soundness and the completeness, together referred to as the preciseness of subtyping, can be considered from two different points of view: denotational and operational. The former preciseness is based on the denotation of a type, which is a mathematical object describing the meaning of the type in accordance with the denotations of other expressions from the language. The latter preciseness has been recently developed with respect to type safety, i.e. the safe replacement of a term of a smaller type when a term of a bigger type is expected.

The present paper shows that standard proofs of operational preciseness imply denotational preciseness and gives an overview on this subject.

Keywords

Operational Soundness Characteristic Context Union Type Reduction Rule Characteristic Term 
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.

References

  1. 1.
    Abadi, M., Cardelli, L.: A Theory of Objects. Monographs in Computer Science. Springer, New York (1996)CrossRefzbMATHGoogle Scholar
  2. 2.
    van Bakel, S., Dezani-Ciancaglini, M., de’ Liguoro, U., Motohama, Y.: The minimal relevant logic and the call-by-value lambda calculus. Technical Report TR-ARP-05-2000, The Australian National University (2000)Google Scholar
  3. 3.
    Barbanera, F., de Liguoro, U.: Two notions of sub-behaviour for session-based client/server systems. In: Kutsia, T., Schreiner, W., Fernández, M. (eds.) PPDP, pp. 155–164. ACM (2010)Google Scholar
  4. 4.
    Barendregt, H., Coppo, M., Dezani-Ciancaglini, M.: A filter lambda model and the completeness of type assignment. J. Symbolic Logic 48(4), 931–940 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Bernardi, G., Dardha, O., Gay, S.J., Kouzapas, D.: On duality relations for session types. In: Maffei, M., Tuosto, E. (eds.) TGC 2014. LNCS, vol. 8902, pp. 51–66. Springer, Heidelberg (2014)Google Scholar
  6. 6.
    Bonsangue, M.M., Rot, J., Ancona, D., de Boer, F.S., Rutten, J.J.M.M.: A coalgebraic foundation for coinductive union types. In: Esparza, J., Fraigniaud, P., Husfeldt, T., Koutsoupias, E. (eds.) ICALP 2014, Part II. LNCS, vol. 8573, pp. 62–73. Springer, Heidelberg (2014)Google Scholar
  7. 7.
    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)CrossRefGoogle Scholar
  8. 8.
    Castagna, G., De Nicola, R., Varacca, D.: Semantic subtyping for the pi-calculus. Theoret. Comput. Sci. 398(1–3), 217–242 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Castagna, G., Dezani-Ciancaglini, M., Giachino, E., Padovani, L.: Foundations of session types. In: PPDP, pp. 219–230. ACM (2009)Google Scholar
  10. 10.
    Castagna, G., Frisch, A.: A gentle introduction to semantic subtyping. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds.) ICALP 2005. LNCS, vol. 3580, pp. 30–34. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Chen, T.-C., Dezani-Ciancaglini, M., Yoshida, N.: On the preciseness of subtyping in session types. In: Chitil, O., King, A., Danvy, O. (eds.) PPDP, pp. 135–146. ACM Press (2014)Google Scholar
  12. 12.
    Coppo, M., Dezani-Ciancaglini, M., Padovani, L., Yoshida, N.: A gentle introduction to multiparty asynchronous session types. In: Bernardo, M., Johnsen, E.B. (eds.) SFM 2015. LNCS, vol. 9104, pp. 146–178. Springer, Switzerland (2015)Google Scholar
  13. 13.
    Demangeon, R., Honda, K.: Full abstraction in a subtyped pi-calculus with linear types. In: Katoen, J.-P., König, B. (eds.) CONCUR 2011. LNCS, vol. 6901, pp. 280–296. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  14. 14.
    Dezani-Ciancaglini, M., de ’Liguoro, U., Piperno, A.: A filter model for concurrent lambda-calculus. SIAM J. Comput. 27(5), 1376–1419 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Dezani-Ciancaglini, M., Ghilezan, S.: Preciseness of subtyping on intersection and union types. In: Dowek, G. (ed.) RTA-TLCA 2014. LNCS, vol. 8560, pp. 194–207. Springer, Heidelberg (2014)Google Scholar
  16. 16.
    Dezani-Ciancaglini, M., Ghilezan, S., Jaksic, S., Pantovic, J., Yoshida, N.: Precise subtyping for synchronous multiparty sessions. In: PLACES, EPTCS 203, pp. 29–44 (2016)Google Scholar
  17. 17.
    Frisch, A., Castagna, G., Benzaken, V.: Semantic subtyping: dealing set-theoretically with function, union, intersection, and negation types. J. ACM 55(4), 1–64 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Gay, S.J.: Bounded polymorphism in session types. Math. Struct. Comput. Sci. 18(5), 895–930 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Goto, M., Jagadeesan, R., Jeffrey, A., Pitcher, C., Riely, J.: An extensible approach to session polymorphism. Math. Struct. Comput. Sci. 26(3), 465–509 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Harper, R.: Practical Foundations for Programming Languages. Cambridge University Press, Cambridge (2013)zbMATHGoogle Scholar
  21. 21.
    Hindley, J.R.: The completeness theorem for typing lambda-terms. Theoret. Comput. Sci. 22, 1–17 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    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
  23. 23.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In POPL, pp. 273–284. ACM (2008). A full version will appear in Journal of the Association for Computing MachineryGoogle Scholar
  24. 24.
    Igarashi, A., Kobayashi, N.: A generic type system for the pi-calculus. Theoret. Comput. Sci. 311(1–3), 121–163 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  25. 25.
    Ishihara, H., Kurata, T.: Completeness of intersection and union type assignment systems for call-by-value lambda-models. Theoret. Comput. Sci. 272(1–2), 197–221 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Kouzapas, D., Yoshida, N.: Globally governed session semantics. In: D’Argenio, P.R., Melgratti, H. (eds.) CONCUR 2013. LNCS, vol. 8052, pp. 395–409. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  27. 27.
    Ligatti, J., Blackburn, J., Nachtigal, M.: On subtyping-relation completeness, with an application to iso-recursive types. Technical report, University of South Florida (2014)Google Scholar
  28. 28.
    Mitchell, J.C.: Polymorphic type inference and containment. Inf. Comput. 76(2/3), 211–249 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Mostrous, D.: Session Types in Concurrent Calculi: Higher-Order Processes and Objects. PhD thesis, Imperial College London (2009)Google Scholar
  30. 30.
    Mostrous, D., Yoshida, N.: Session-based communication optimisation for higher-order mobile processes. In: Curien, P.-L. (ed.) TLCA 2009. LNCS, vol. 5608, pp. 203–218. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  31. 31.
    Mostrous, D., Yoshida, N.: Session typing and asynchronous subtyping for the higher-order \(\pi \)-calculus. Inf. Comput. 241, 227–263 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  32. 32.
    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)CrossRefGoogle Scholar
  33. 33.
    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
  34. 34.
    Padovani, L.: Fair subtyping for open session types. In: Fomin, F.V., Freivalds, R., Kwiatkowska, M., Peleg, D. (eds.) ICALP 2013, Part II. LNCS, vol. 7966, pp. 373–384. Springer, Heidelberg (2013)Google Scholar
  35. 35.
    Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002)Google Scholar
  36. 36.
    Tiuryn, J., Urzyczyn, P.: The subtyping problem for second-order types is undecidable. Inf. Comput. 179(1), 1–18 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  37. 37.
    Urzyczyn, P.: The emptiness problem for intersection types. J. Symbolic Logic 64(3), 1195–1215 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  38. 38.
    Vouillon, J.: Subtyping union types. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 415–429. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Mariangiola Dezani-Ciancaglini
    • 1
  • Silvia Ghilezan
    • 2
  • Svetlana Jakšić
    • 2
  • Jovanka Pantović
    • 2
  • Nobuko Yoshida
    • 3
  1. 1.Università di TorinoTurinItaly
  2. 2.Univerzitet u Novom SaduNovi SadSerbia
  3. 3.Imperial College LondonLondonUK

Personalised recommendations