Hostname: page-component-586b7cd67f-t7czq Total loading time: 0 Render date: 2024-11-21T20:21:59.477Z Has data issue: false hasContentIssue false

Isomorphism of intersection and union types

Published online by Cambridge University Press:  07 August 2015

MARIO COPPO
Affiliation:
Dipartimento di Informatica, via Pessinetto 12, 10131 Torino, Italy Email: coppo@di.unito.it, dezani@di.unito.it, ines@di.unito.it, zacchi@di.unito.it
MARIANGIOLA DEZANI-CIANCAGLINI
Affiliation:
Dipartimento di Informatica, via Pessinetto 12, 10131 Torino, Italy Email: coppo@di.unito.it, dezani@di.unito.it, ines@di.unito.it, zacchi@di.unito.it
INES MARGARIA
Affiliation:
Dipartimento di Informatica, via Pessinetto 12, 10131 Torino, Italy Email: coppo@di.unito.it, dezani@di.unito.it, ines@di.unito.it, zacchi@di.unito.it
MADDALENA ZACCHI
Affiliation:
Dipartimento di Informatica, via Pessinetto 12, 10131 Torino, Italy Email: coppo@di.unito.it, dezani@di.unito.it, ines@di.unito.it, zacchi@di.unito.it

Abstract

This paper gives a complete characterisation of type isomorphism definable by terms of a λ-calculus with intersection and union types. Unfortunately, when union is considered the Subject Reduction property does not hold in general. However, it is well known that in the λ-calculus, independently of the considered type system, the isomorphism between two types can be realised only by invertible terms. Notably, all invertible terms are linear terms. In this paper, the isomorphism of intersection and union types is investigated using a relevant type system for linear terms enjoying the Subject Reduction property. To characterise type isomorphism, a similarity between types and a type reduction are introduced. Types have a unique normal form with respect to the reduction rules and two types are isomorphic if and only if their normal forms are similar.

Type
Paper
Copyright
Copyright © Cambridge University Press 2015 

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Footnotes

Dedicated to Corrado Böhm on the occasion of his 90th Birthday.

References

Barbanera, F., Dezani-Ciancaglini, M. and de'Liguoro, U. (1995). Intersection and union types: Syntax and semantics. Information and Computation 119 202230.CrossRefGoogle Scholar
Bruce, K., Di Cosmo, R. and Longo, G. (1992). Provable isomorphisms of types. Mathematical Structures in Computer Science 2 (2) 231247.CrossRefGoogle Scholar
Bruce, K. and Longo, G. (1985). Provable isomorphisms and domain equations in models of typed languages. In: Sedgewick, R. (eds.) STOC'85, ACM Press 263272.CrossRefGoogle Scholar
Coppo, M., Dezani-Ciancaglini, M., Margaria, I. and Zacchi, M. (2013). Towards isomorphism of intersection and union types. In: Graham-Lengrand, S. and Paolini, L. (eds.) ITRS'12. Electronic Proceedings in Theoretical Computer Science 121 5880.CrossRefGoogle Scholar
Coppo, M., Dezani-Ciancaglini, M., Margaria, I. and Zacchi, M. (2014a). Isomorphism of ‘functional’ intersection types. In: Matthes, R. and Schubert, A. (eds.) Types'13. LIPIcs 26 129149.Google Scholar
Coppo, M., Dezani-Ciancaglini, M., Margaria, I. and Zacchi, M. (2014b). Isomorphism of ‘functional’ intersection and union types. In: Reholf, J. (ed.) ITRS'14. Electronic Proceedings in Theoretical Computer Science. 177 5364.CrossRefGoogle Scholar
Dezani-Ciancaglini, M. (1976). Characterization of normal forms possessing an inverse in the λβη-calculus. Theoretical Computer Science 2 (3) 323337.CrossRefGoogle Scholar
Dezani-Ciancaglini, M., Cosmo, R. D., Giovannetti, E. and Tatsuta, M. (2010). On isomorphisms of intersection types. ACM Transactions on Computational Logic 11 (4) 122.CrossRefGoogle Scholar
Di Cosmo, R. (1995). Second order isomorphic types. A proof theoretic study on second order λ-calculus with surjective pairing and terminal object. Information and Computation 119 (2) 176201.CrossRefGoogle Scholar
Di Cosmo, R. (2005). A short survey of isomorphisms of types. Mathematical Structures in Computer Science 15 825838.CrossRefGoogle Scholar
Díaz-Caro, A. and Dowek, G. (2015). Simply typed lambda-calculus modulo type isomorphisms. Theoretical Computer Science. To appear.Google Scholar
Dunfield, J. (2014). Elaborating intersection and union types. Journal of Functional Programming 24 (2–3) 133165.CrossRefGoogle Scholar
Fiore, M., Di Cosmo, R. and Balat, V. (2006). Remarks on isomorphisms in typed lambda calculi with empty and sum types. Annals of Pure and Applied Logic 141 (1–2) 3550.CrossRefGoogle Scholar
MacQueen, D., Plotkin, G. and Sethi, R. (1986). An ideal model for recursive polymorphic types. Information and Control 71 (1–2) 95130.CrossRefGoogle Scholar
Mitchell, N. (2008). Hoogle overview. The Monad.Reader 12 2735.Google Scholar
Mitchell, N. (2011). Hoogle: Finding functions from types. Invited Presentation from TFP 2011.Google Scholar
Prawitz, D. (1965). Natural Deduction, Almqvist & Wiksell.Google Scholar
Ronchi Della Rocca, S. (1988). Principal type scheme and unification for intersection type discipline. Theoretical Computer Science 59 (1–2) 129.CrossRefGoogle Scholar
Routley, R. and Meyer, R. K. (1972). The semantics of entailment III. Journal of Philosophical Logic 1 192208.CrossRefGoogle Scholar
Soloviev, S. (1983). The category of finite sets and cartesian closed categories. Journal of Soviet Mathematics 22 (3) 13871400. (English translation of the original paper in russian published in Zapiski Nauchyn Seminarov LOMI, v.105, 1981.)CrossRefGoogle Scholar
Soloviev, S. (1993). A complete axiom system for isomorphism of types in closed categories. In: Voronkov, A. (ed.) LPAR'93. Springer-Verlag Lecture Notes in Computer Science 698 360371.CrossRefGoogle Scholar