Skip to main content
Log in

An Implementation of LF with Coercive Subtyping & Universes

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

We present ‘Plastic’, an implementation of LF with Coercive Subtyping, and focus on its implementation of Universes. LF is a variant of Martin-Löf's logical framework, with explicitly typed λ-abstractions. We outline the system of LF with its extensions of inductive types and coercions. Plastic is the first implementation of this extended system; we discuss motivations and basic architecture and give examples of its use. LF is used to specify type theories. The theory UTT includes a hierarchy of universes that is specified in Tarski style. We outline the theory of these universes and explain how they are implemented in Plastic. Of particular interest is the relationship between universes and inductive types, and the relationship between universes and coercive subtyping. We claim that the combination of Tarski-style universes together with coercive subtyping provides an ideal formulation of universes that is both semantically clear and practical to use.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aspinall, D.: Proof General WWWsite, http://www.proofgeneral.org.

  2. Bailey, A.: The machine-checked literate formalisation of algebra in type theory, Ph.D. Thesis, University of Manchester, 1998.

  3. Barthe, G. and Sorensen, M. H.: Domain-free pure type systems, J. Functional Programming (to appear).

  4. Callaghan, P.: Plastic: An implementation of typed LF with coercions, Talk given in the Annual Conf. of TYPES'99, 1999.

  5. Callaghan, P.: Coherence checking of coercions in Plastic, in Proc. Workshop on Subtyping & Dependent Types in Programming, 2000.

  6. Callaghan, P. and Luo, Z.: Mathematical vernacular in type theory based proof assistants, in User Interfaces for Theorem Provers (UITP'98), Eindhoven, 1998.

  7. Callaghan, P. and Luo, Z.: Implementation techniques for inductive types in Plastic, in Proc. TYPES'99, 2000.

  8. Coq. Coq WWWpage, http://pauillac.inria.fr/coq.

  9. Coquand, C. Adga WWWpage, http://www.cs.chalmers.se/~catarina/agda/.

  10. Coquand, C. and Coquand, T.: Structured type theory, in Proc. Workshop on Logical Frameworks and Meta-languages (LFM'99), 1999.

  11. Coquand, T.: An algorithm for testing conversion in type theory, in G. Huet and G. Plotkin (eds.), Logical Frameworks, 1991.

  12. Coquand, T. and Paulin-Mohring, C.: Inductively Defined Types, Lecture Notes in Comput. Sci. 417, 1990.

  13. Dybjer, P.: Inductive sets and families in Martin-Löf's type theory and their set-theoretic semantics, in G. Huet and G. Plotkin (eds.), Logical Frameworks, 1991.

  14. Dybjer, P.: A general formulation of simultaneous inductive-recursive definitions in type theory, J. Symbolic Logic 65(2) (2000).

  15. Goguen, H.: A typed operational semantics for type theory, Ph.D. Thesis, University of Edinburgh, 1994.

  16. Harper, R., Honsell, F. and Plotkin, G.: A framework for defining logics, in Proc. 2nd Ann. Symp. on Logic in Computer Science, IEEE, 1987.

  17. Harper, R. and Pollack, R.: Type checking with universes, Theoret. Comput. Sci. 89(1) (1991), 107–136.

    Google Scholar 

  18. Haskell: Haskell WWWSite, http://www.haskell.org.

  19. Huet, G.: The constructive engine, in R. Narasimhan (ed.), A Perspective in Theoretical Computer Science, Commemorative Volume for Gift Siromoney, World Scientific, 1989.

  20. Jones, A., Luo, Z. and Soloviev, S.: Some proof-theoretic and algorithmic aspects of coercive subtyping, in E. Gimenez and C. Paulin-Mohring (eds.), Types for Proofs and Programs, Proc. of the Inter. Conf. TYPES'96, Lecture Notes in Comput. Sci. 1512, 1998.

  21. Luo, Z.: Program specification and data refinement in type theory, in Proc. of the Fourth Inter. Joint Conf. on the Theory and Practice of Software Development (TAPSOFT), Lecture Notes in Comput. Sci. 493, 1991. Also as LFCS report ECS-LFCS–91–131, Dept. of Computer Science, Edinburgh University.

  22. Luo, Z.: A unifying theory of dependent types: The schematic approach, in Proc. of Symp. on Logical Foundations of Computer Science (Logic at Tver'92), Lecture Notes in Comput. Sci. 620, Also as LFCS Report ECS-LFCS–92–202, Dept. of Computer Science, University of Edinburgh.

  23. Luo, Z.: Program specification and data refinement in type theory, Math. Structures Comput. Sci. 3(3) (1993).

  24. Luo, Z.: Computation and Reasoning: A Type Theory for Computer Science, Oxford University Press, 1994.

  25. Luo, Z.: Coercive subtyping, J. Logic Comput. 9(1) (1991), 105–130.

    Google Scholar 

  26. Luo, Z. and Callaghan, P.: Coercive subtyping and lexical semantics (extended abstract), in LACL'98, 1998.

  27. Luo, Z. and Callaghan, P.: Mathematical vernacular and conceptual well-formedness in mathematical language, in Proceedings of the 2nd Inter. Conf. on Logical Aspects of Computational Linguistics, Lecture Notes in Comput. Sci./Lecture Notes in Artif. Intell. 1582, 1998.

  28. Luo, Z. and Soloviev, S.: Dependent coercions, in The 8th Inter. Conf. on Category Theory and Computer Science (CTCS'99), Edinburgh, Scotland, Electron. Notes Theor. Comput. Sci. 29, 1999.

  29. Magnusson, L. and Nordström, B.: The ALF proof editor and its proof engine, in Types for Proof and Programs, Lecture Notes in Comput. Sci., 1994.

  30. Martin-Löf, P.: Intuitionistic Type Theory, Bibliopolis, 1984.

  31. McBride, C.: Dependently typed functional programs and their proofs, Ph.D. Thesis, University of Edinburgh, 2000.

  32. Nordström, B., Petersson, K. and Smith, J.: Programming in Martin-Löf's Type Theory: An Introduction, Oxford University Press, 1990.

  33. Palmgren, E.: On universes in type theory, in G. Sambin and J. Smith (eds.), Twenty Five Years of Constructive Type Theory, Commemorative Volume for Gift Siromoney, Oxford University Press, 1998.

  34. Peyton Jones, S. L. et al.: GHC Haskell compilerWWWsite, http://www.haskell.org/ghc.

  35. Pollack, R. et al.: Lego WWWpage, http://www.dcs.ed.ac.uk/home/lego.

  36. Saïbi, A.: Outils génériques de modélisation et de démonstration pour la formalisation des mathématiques en théorie des types, Application à la théorie des catégories, Ph.D. Thesis, INRIA, Rocquencourt, 1999.

    Google Scholar 

  37. Smith, J.: The independence of Peano's fourth axiom from Martin-Löf's type theory without universes, J. Symbolic Logic 53(3) (1988).

  38. Soloviev, S. and Luo, Z.: Coercion completion and conservativity in coercive subtyping, Ann. Pure Appl. Logic (2000).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Callaghan, P., Luo, Z. An Implementation of LF with Coercive Subtyping & Universes. Journal of Automated Reasoning 27, 3–27 (2001). https://doi.org/10.1023/A:1010648911114

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1010648911114

Navigation