Skip to main content

Extensions to type systems can preserve operational equivalences

  • Conference paper
  • First Online:
Theoretical Aspects of Computer Software (TACS 1994)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 789))

Included in the following conference series:

Abstract

We consider call-by-name, call-by-value, and lazy versions of PCF, and prove, using both syntactic and semantic means, that the operational equivalences of the base language are preserved when the language is extended with sum and product types, with polymorphic types, and with recursive types. These theorems show that the type systems of the extended languages are orthogonal to the type systems of the original languages.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Abramsky. The lazy lambda calculus. In D. A. Turner, editor, Research Topics in Functional Programming, pages 65–117. Addison-Wesley, 1990.

    Google Scholar 

  2. R. Amadio. A fixed-point extension of the second-order lambda calculus. In Proceedings, Third Annual Symposium on Logic in Computer Science. IEEE, 1988.

    Google Scholar 

  3. R. Amadio. On the adequacy of PER models. Technical Report CRIN 91-R-177, Centre de Recherche en Informatique de Nancy, 1991.

    Google Scholar 

  4. R. Amadio. Recursion and Subtyping in Lambda Calculi. PhD thesis, Universita di Pisa, 1991.

    Google Scholar 

  5. H. P. Barendregt. The Lambda Calculus: Its Syntax and Semantics, volume 103 of Studies in Logic. North-Holland, 1981. Revised Edition, 1984.

    Google Scholar 

  6. B. Bloom and J. G. Riecke. LCF should be lifted. In T. Rus, editor, Proc. Conf. Algebraic Methodology and Software Technology, pages 133–136. Department of Computer Science, University of Iowa, 1989.

    Google Scholar 

  7. V. Breazu-Tannen. Conservative extensions of type theories. PhD thesis, Dept. Mathematics, Massachusetts Institute of Technology, 1987. Supervised by Albert R. Meyer.

    Google Scholar 

  8. V. Breazu-Tannen. Combining algebra and higher-order types. In Proceedings, Third Annual Symposium on Logic in Computer Science, pages 82–90. IEEE, 1988.

    Google Scholar 

  9. V. Breazu-Tannen and A. R. Meyer. Computable values can be classical. In Conference Record of the Fourteenth Annual ACM Symposium on Principles of Programming Languages, pages 238–245. ACM, 1987.

    Google Scholar 

  10. T. Coquand, C. A. Gunter, and G. Winskel. dI-domains as a model of polymorphism. In M. Main, A. Melton, M. Mislove, and D. Schmidt, editors, Mathematical Foundations of Programming Language Semantics: 3rd Workshop, volume 298 of Lect. Notes in Computer Sci., pages 344–363. Springer-Verlag, 1987.

    Google Scholar 

  11. T. Coquand, C. A. Gunter, and G. Winskel. Domain theoretic models of polymorphism. Information and Computation, 81:123–167, 1989.

    Google Scholar 

  12. S. S. Cosmadakis. Computing with recursive types. In Proceedings, Fourth Annual Symposium on Logic in Computer Science, pages 24–38. IEEE, 1989.

    Google Scholar 

  13. G. Ghelli. Recursive types are not conservative over F≤. In Typed Lambda Calculi and Applications, volume 664 of Lect. Notes in Computer Sci., pages 146–162. Springer-Verlag, 1993.

    Google Scholar 

  14. J.-Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types. Cambridge University Press, 1989.

    Google Scholar 

  15. C. A. Gunter. Semantics of Programming Languages: Structures and Techniques. MIT Press, 1992.

    Google Scholar 

  16. R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. MIT Press, 1990.

    Google Scholar 

  17. J. C. Mitchell. On abstraction and the expressive power of programming languages. In Theoretical Aspects of Computer Software, volume 526 of Lect. Notes in Computer Sci., pages 290–310, 1991.

    Google Scholar 

  18. K. Mulmuley. Full Abstraction and Semantic Equivalence. ACM Doctoral Dissertation Award 1986. MIT Press, 1987.

    Google Scholar 

  19. C.-H. L. Ong. Fully abstract models of the lazy lambda calculus. In 29th Annual Symposium on Foundations of Computer Science, pages 368–376. IEEE, 1988.

    Google Scholar 

  20. C.-H. L. Ong. The Lazy Lambda Calculus: An Investigation into the Foundations of Functional Programming. PhD thesis, Imperial College, University of London, 1988.

    Google Scholar 

  21. G. D. Plotkin. LCF considered as a programming language. Theoretical Computer Sci., 5:223–257, 1977.

    Google Scholar 

  22. J. C. Reynolds. On the relation between direct and continuation semantics. In Proceedings of the Second Colloquium on Automata, Languages, and Programming, Lecture Notes in Computer Science 14, pages 141–156. Springer-Verlag, 1974.

    Google Scholar 

  23. J. G. Riecke. Fully abstract translations between functional languages (preliminary report). In Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, pages 245–254. ACM, 1991.

    Google Scholar 

  24. J. G. Riecke. The Logic and Expressibility of Simply-Typed Call-by-Value and Lazy Languages. PhD thesis, Massachusetts Institute of Technology, 1991. Available as technical report MIT/LCS/TR-523 (MIT Laboratory for Computer Science).

    Google Scholar 

  25. J. G. Riecke. Delimiting the scope of effects. In Proceedings of the 1993 Conference on Functional Programming and Computer Architecture, pages 146–158. ACM, 1993.

    Google Scholar 

  26. D. Scott. A type theoretical alternative to CUCH, ISWIM, OWHY. Unpublished manuscript, Oxford University, 1969.

    Google Scholar 

  27. B. B. Sorensen and C. Clausen. Adequacy results for a lazy functional language with recursive and polymorphic types. Unpublished manuscript.

    Google Scholar 

  28. R. Subrahmanyam. A theory of language expressiveness. Unpublished manuscript, Wesleyan University, 1993.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Masami Hagiya John C. Mitchell

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Riecke, J.G., Subrahmanyam, R. (1994). Extensions to type systems can preserve operational equivalences. In: Hagiya, M., Mitchell, J.C. (eds) Theoretical Aspects of Computer Software. TACS 1994. Lecture Notes in Computer Science, vol 789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57887-0_91

Download citation

  • DOI: https://doi.org/10.1007/3-540-57887-0_91

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57887-1

  • Online ISBN: 978-3-540-48383-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics