ACM Home Page
Please provide us with feedback. Feedback
Type isomorphisms in a type-assignment framework
Full text PdfPdf (1.08 MB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Albuquerque, New Mexico, United States
Pages: 200 - 210  
Year of Publication: 1992
ISBN:0-89791-453-8
Author
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 16,   Citation Count: 6
Additional Information:

abstract   references   cited by   index terms  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/143165.143208
What is a DOI?

ABSTRACT

This paper contains a full treatment of isomorphic types for languages equipped with an ML style polymorphic type inference mechanism. Surprisingly enough the results obtained contradict the common-place feeling that (the core of) ML is a subset of second order &lgr;-calculus: we can provide an isomorphism of types that holds in the core ML language, but not in second order &lgr;-calculus. This new isomorphism not only allows to provide a complete (and decidable) axiomatisation of all the type isomorphic in ML style languages, a relevant issue for the type as specifications paradigm in library searches, but also suggest a natural extension that in a sense completes the type-inference mechanism in ML. This extension is easy to implement and allows to get a further insight in the nature of the let polymorphic construct.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
Bar84
Henk Barendlregt. The Lambda Calculus; Its syntax and Semantics (revised edition). North Holland, 1984.
 
Bas90
 
BDCL90
Kim Bruce, Roberto Di Cosmo, and Giuseppe Longo. Provable isomorphisms of types. Technical Report 90-14, LIENS - Ecole Normale Sup~rieure, 1990. To appear in Proc. of Symposium on Symbolic Computation, ETH, Zurich, March 1990: MSCS.
BL85
 
CDC91
 
CH88
Guy Cousineau and Gerard Huet. The CAML primer. Technical Report, LIENS - Ecole Normale Sup~rieure, 1988.
 
DC91
Roberto Di Cosmo. Invertibility of terms and valid isomorphi~ms. A proof theoretic study on second order )~-calculus with surjective pairing and terminal object. Technical Report 91-10, LIENS - Ecole Normale Sup~rieure, 1991.
 
DC92
Roberto Di Cosmo. Deciding Type isomorphisms in a type assignment framework. Technical Report, LIENS - Ecole Normale Sup~rieure, 1992. To appear.
 
DCL89
Roberto Di Cosmo and Giuseppe Longo. Constuctively equivalent propositions and isomorphisms of objects (or terms as natural transformations). Workshop on Logic for Computer Science- MSRI, Berkeley, November 1989.
 
Dez76
Mariangiola Dezani-Ciancaglini. Characterization of normal forms possessing an inverse in he Aflr/ calculus. Theoretical Computer Science, 2:323-337, 1976.
 
Hin69
R. Hindley. The principal type-scheme of a an object in combinatory logic. Transactions of the American Mathematical Society, 146, 1969.
 
HS80
 
Jay91
C. Barry Jay. Strong normalisation for simply-typed lambda-calculus as in lambekscott. February 1991. LFCS, University of Edimburgh.
 
Kir85
Claude Kirchner. Methodes et utiles de conception systematique d 'algoritmes d 'unification dans le~ theories equationnelles. PhD thesis, Universit~ de Nancy, 1985.
 
Mar72
C.F. Martin. Axiomatic bases for equational theories of natural numbers. Notices of the Am. Math. Soc., 19(7):778, 1972.
 
Mil78
Robin Milner. A theory of type polymorphism in programming. Journal of Computer and System Science, 17(3):348-375, 1978.
 
NPS89
Paliath Narendran, Frank Pfenning, and Rick Statman. On the unification problem for cartesian closed categories. Hardware Verification Workshop, September 1989.
 
Rit89
Mikael Rittri. Using types as search keys in function libraries. Journal of Functional Programming, 1(1), 1989.
 
Rit90a
 
Rit90b
Mikael Rittri. Searching program libraries by type and proving compiler correctness by bisimulation. PhD thesis, Chalmers University of Technology, GSteborg, Sweden, 1990.
RT89
 
Sol83
Serjey V. Soloviev. The category of finite sets and cartesian closed categories. Journal of Soviet Mathematics, 22(3):1387-1400, 1983.