Skip to main content

Subtyping with singleton types

  • Conference paper
  • First Online:
Computer Science Logic (CSL 1994)

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

Included in the following conference series:

Abstract

We give syntax and a PER-model semantics for a typed λ-calculus with subtypes and singleton types. The calculus may be seen as a minimal calculus of subtyping with a simple form of dependent types. The aim is to study singleton types and to take a canny step towards more complex dependent subtyping systems. Singleton types have applications in the use of type systems for specification and program extraction: given a program P we can form the very tight specification {P} which is met uniquely by P. Singletons integrate abbreviational definitions into a type system: the hypothesis x: {M} asserts x=M. The addition of singleton types is a non-conservative extension of familiar subtyping theories. In our system, more terms are typable and previously typable terms have more (non-dependent) types.

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. David R. Aspinall. Algebraic specification in a type-theoretic setting. Forthcoming PhD thesis, Department of Computer Science, University of Edinburgh, 1995.

    Google Scholar 

  2. Kim B. Bruce and Giuseppe Longo. A modest model of records, inheritance and bounded quantification. Information and Computation, 87:196–240, 1990.

    Article  MathSciNet  Google Scholar 

  3. Val Breazu-Tannen, Thierry Coquand, Carl A. Gunter, and Andre Scedrov. Inheritance as implicit coercion. Information and Computation, 93:172–221, 1991.

    Article  Google Scholar 

  4. Luca Cardelli. A semantics of multiple inheritance. Information and Computation, 76:138–164, 1988.

    Article  Google Scholar 

  5. Luca Cardelli. Structural subtyping and the notion of power type. In Fifteenth Annual ACM Symposium on Principles of Programming Languages, 1988.

    Google Scholar 

  6. Pierre-Louis Curien and Giorgio Ghelli. Coherence of subsumption, minimum typing and type-checking in F≤. Mathematical Structures in Computer Science, 2:55–91, 1992.

    Google Scholar 

  7. Luca Cardelli and Giuseppe Longo. A semantic basis for Quest. Journal of Functional Programming, 1(4):417–458, 1991.

    Google Scholar 

  8. Susumu Hayashi. Singleton, union and intersection types for program extraction. Information and Computation, 109, 1994.

    Google Scholar 

  9. R. Hindley and G. Longo. Lambda calculus models and extensionality. Z. Math. Logik Grundlag. Math., 26:289–310, 1980.

    Google Scholar 

  10. Robert Harper and Robert Pollack. Type checking with universes. Theoretical Computer Science, 89:107–136, 1991.

    Article  Google Scholar 

  11. Stefan Kahrs, Donald Sannella, and Andrzej Tarlecki. The definition of Extended ML. Technical Report ECS-LFCS-94-300, LFCS, Department of Computer Science, University of Edinburgh, 1994.

    Google Scholar 

  12. Paula Severi and Erik Poll. Pure Type Systems with Definitions. In Logical Foundations of Computer Science, LFCS'94, Lecture Notes in Computer Science 813, pages 316–328. Springer-Verlag, 1994.

    Google Scholar 

  13. Donald T. Sannella, Stefan Sokolowski, and Andrzej Tarlecki. Toward formal development of programs from algebraic specifications: Parameterisation revisited. Acta Informatica, 29:689–736, 1992.

    Article  Google Scholar 

  14. Donald Sannella and Martin Wirsing. A kernel language for algebraic specification and implementation. In Proceedings of International Conference on Foundations of Computation Theory, Borgholm, Sweden, Lecture Notes in Computer Science 158. Springer-Verlag, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Leszek Pacholski Jerzy Tiuryn

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Aspinall, D. (1995). Subtyping with singleton types. In: Pacholski, L., Tiuryn, J. (eds) Computer Science Logic. CSL 1994. Lecture Notes in Computer Science, vol 933. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0022243

Download citation

  • DOI: https://doi.org/10.1007/BFb0022243

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60017-6

  • Online ISBN: 978-3-540-49404-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics