Skip to main content

A Modular Type-Checking Algorithm for Type Theory with Singleton Types and Proof Irrelevance

  • Conference paper
Typed Lambda Calculi and Applications (TLCA 2009)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5608))

Included in the following conference series:

Abstract

We define a logical framework with singleton types and one universe of small types. We give the semantics using a PER model; it is used for constructing a normalisation-by-evaluation algorithm. We prove completeness and soundness of the algorithm; and get as a corollary the injectivity of type constructors. Then we give the definition of a correct and complete type-checking algorithm for terms in normal form. We extend the results to proof-irrelevant propositions.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abel, A., Aehlig, K., Dybjer, P.: Normalization by evaluation for Martin-Löf type theory with one universe. In: Fiore, M. (ed.) Proc. of the 23rd Conf. on the Mathematical Foundations of Programming Semantics (MFPS XXIII). Electr. Notes in Theor. Comp. Sci, vol. 173, pp. 17–39. Elsevier, Amsterdam (2007)

    Google Scholar 

  2. Abel, A., Coquand, T., Dybjer, P.: Normalization by evaluation for Martin-Löf Type Theory with typed equality judgements. In: Proc. of the 22nd IEEE Symp. on Logic in Computer Science (LICS 2007), pp. 3–12. IEEE Computer Soc. Press, Los Alamitos (2007)

    Google Scholar 

  3. Abel, A., Coquand, T., Dybjer, P.: On the algebraic foundation of proof assistants for intuitionistic type theory. In: Garrigue, J., Hermenegildo, M.V. (eds.) FLOPS 2008. LNCS, vol. 4989, pp. 3–13. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. Abel, A., Coquand, T., Dybjer, P.: Verifying a semantic βη-conversion test for Martin-Löf type theory. In: Audebaud, P., Paulin-Mohring, C. (eds.) MPC 2008. LNCS, vol. 5133, pp. 29–56. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  5. Abel, A., Coquand, T., Pagano, M.: A modular type-checking algorithm for type theory with singleton types and proof irrelevance (full version) (2009), http://www.tcs.ifi.lmu.de/~abel/singleton.pdf

  6. Abramsky, S., Jung, A.: Domain Theory. In: Handbook of Logic in Computer Science, pp. 1–168. Oxford University Press, Oxford (1994)

    Google Scholar 

  7. Aehlig, K., Joachimski, F.: Operational aspects of untyped normalization by evaluation. Math. Struct. in Comput. Sci. 14, 587–611 (2004)

    Article  MATH  Google Scholar 

  8. Aspinall, D.: Subtyping with singleton types. In: Pacholski, L., Tiuryn, J. (eds.) CSL 1994. LNCS, vol. 933, pp. 1–15. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  9. Awodey, S., Bauer, A.: Propositions as [Types]. J. Log. Comput. 14, 447–471 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  10. Berger, U., Schwichtenberg, H.: An inverse to the evaluation functional for typed λ-calculus. In: Proc. of the 6th IEEE Symp. on Logic in Computer Science (LICS 1991), pp. 203–211. IEEE Computer Soc. Press, Los Alamitos (1991)

    Google Scholar 

  11. Bruijn, N.G.d.: Some extensions of Automath: the AUT-4 family (1994)

    Google Scholar 

  12. Cartmell, J.: Generalised algebraic theories and contextual categories. Annals of Pure and Applied Logic, 32–209 (1986)

    Google Scholar 

  13. Coquand, T.: An algorithm for type-checking dependent types. Science of Computer Programming 26, 167–177 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  14. Coquand, T., Pollack, R., Takeyama, M.: A logical framework with dependently typed records. Fundam. Inform. 65, 113–134 (2005)

    MathSciNet  MATH  Google Scholar 

  15. Dybjer, P.: A general formulation of simultaneous inductive-recursive definitions in type theory. The Journal of Symbolic Logic 65, 525–549 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  16. Grégoire, B., Leroy, X.: A compiled implementation of strong reduction. In: Proc. of the 7th ACM SIGPLAN Int. Conf. on Functional Programming (ICFP 2002). SIGPLAN Notices, vol. 37, pp. 235–246. ACM Press, New York (2002)

    Google Scholar 

  17. Harper, R., Honsell, F., Plotkin, G.: A Framework for Defining Logics. Journal of the Association of Computing Machinery 40, 143–184 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  18. INRIA: The Coq Proof Assistant, Version 8.1. INRIA (2007), http://coq.inria.fr

  19. Lee, D.K., Crary, K., Harper, R.: Towards a mechanized metatheory of Standard ML. In: Hofmann, M., Felleisen, M. (eds.) Proc. of the 34th ACM Symp. on Principles of Programming Languages, POPL 2007, pp. 173–184. ACM Press, New York (2007)

    Google Scholar 

  20. Maillard, O.-A.: Proof-irrelevance, strong-normalisation in Type-Theory and PER. Technical report, Chalmers Institute of Technology (2006)

    Google Scholar 

  21. Martin-Löf, P.: Intuitionistic Type Theory. Bibliopolis (1984)

    Google Scholar 

  22. Martin-Löf, P.: Normalization by evaluation and by the method of computability, Talk at JAIST. Japan Advanced Institute of Science and Technology, Kanazawa (2004)

    Google Scholar 

  23. McBride, C.: Epigram: Practical programming with dependent types. In: Vene, V., Uustalu, T. (eds.) AFP 2004. LNCS, vol. 3622, pp. 130–170. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  24. Mitchell, J.C., Moggi, E.: Kripke-Style models for typed lambda calculus. In: LICS, pp. 303–314 (1987)

    Google Scholar 

  25. Nordström, B., Petersson, K., Smith, J.M.: Programming in Martin Löf’s Type Theory: An Introduction. Clarendon Press, Oxford (1990)

    MATH  Google Scholar 

  26. Norell, U.: Towards a practical programming language based on dependent type theory. Ph.D. thesis, Department of Computer Science and Engineering, Chalmers University of Technology, Göteborg, Sweden (2007)

    Google Scholar 

  27. Shankar, N., Owre, S.: Principles and Pragmatics of Subtyping in PVS. In: Bert, D., Choppy, C., Mosses, P.D. (eds.) WADT 1999. LNCS, vol. 1827, pp. 37–52. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  28. Sozeau, M.: Subset coercions in Coq. In: Altenkirch, T., McBride, C. (eds.) TYPES 2006. LNCS, vol. 4502, pp. 237–252. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  29. Stone, C.A., Harper, R.: Extensional equivalence and singleton types. ACM Trans. Comput. Logic 7, 676–722 (2006)

    Article  MathSciNet  Google Scholar 

  30. Werner, B.: On the strength of proof-irrelevant type theories. Logical Meth. in Comput. Sci. 4 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Abel, A., Coquand, T., Pagano, M. (2009). A Modular Type-Checking Algorithm for Type Theory with Singleton Types and Proof Irrelevance. In: Curien, PL. (eds) Typed Lambda Calculi and Applications. TLCA 2009. Lecture Notes in Computer Science, vol 5608. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02273-9_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02273-9_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02272-2

  • Online ISBN: 978-3-642-02273-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics