Skip to main content

A Tutorial on Type-Based Termination

  • Chapter

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5520))

Abstract

Type-based termination is a method to enforce termination of recursive definitions through a non-standard type system that introduces a notion of size for inhabitants of inductively defined types. The purpose of this tutorial is to provide a gentle introduction to a polymorphically typed λ-calculus with type-based termination, and to the size inference algorithm which is used to guarantee automatically termination of recursive definitions.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abel, A.: Termination Checking with Types. RAIRO – Theoretical Informatics and Applications 38(4), 277–319 (2004); Special Issue (FICS 2003)

    Article  MathSciNet  MATH  Google Scholar 

  2. Abel, A.: Type-Based Termination. A Polymorphic Lambda-Calculus with Sized Higher-Order Types. PhD thesis, LMU University, Munich (2006)

    Google Scholar 

  3. Abel, A.: Semi-Continuous Sized Types and Termination. LMCS 4(2-3) (2008)

    Google Scholar 

  4. Aczel, P.: An Introduction to Inductive Definitions. In: Barwise, J. (ed.) Handbook of mathematical logic. Studies in Logic and the Foundations of Mathematics, vol. 90, pp. 739–782. North-Holland, Amsterdam (1977)

    Chapter  Google Scholar 

  5. Barthe, G., Frade, M.J., Giménez, E., Pinto, L., Uustalu, T.: Type-Based Termination of Recursive Definitions. Mathematical Structures in Computer Science 14(1), 97–141 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  6. Barthe, G., Grégoire, B., Pastawski, F.: Practical Inference for Type-Based Termination in a Polymorphic Setting. In: Urzyczyn, P. (ed.) TLCA 2005. LNCS, vol. 3461, pp. 71–85. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  7. Chin, W.-N., Khoo, S.-C.: Calculating Sized Types. Higher-Order and Symbolic Computation 14(2-3), 261–300 (2001)

    Article  MATH  Google Scholar 

  8. Coquand, T., Dybjer, P.: Inductive Definitions and Type Theory: an Introduction (Preliminary Version). In: Thiagarajan, P.S. (ed.) FSTTCS 1994. LNCS, vol. 880, pp. 60–76. Springer, Heidelberg (1994)

    Google Scholar 

  9. Gallier, J.H.: What’s So Special About Kruskal’s Theorem and the Ordinal Γ0? A Survey of Some Results in Proof Theory. Annals of Pure and Applied Logic 53(3), 199–260 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  10. Giménez, E.: Structural Recursive Definitions in Type Theory. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 397–408. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  11. Girard, J.-Y.: Interprétation Fonctionnelle et Élimination des Coupures de l’Arithmétique d’Ordre Supérieur. PhD thesis, Université Paris 7 (1972)

    Google Scholar 

  12. Girard, J.-Y., Lafont, Y., Taylor, P.: Proofs and Types. Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, Cambridge (1989)

    MATH  Google Scholar 

  13. Hughes, J., Pareto, L., Sabry, A.: Proving the Correctness of Reactive Systems Using Sized Types. In: Proceedings of POPL 1996, pp. 410–423. ACM, New York (1996)

    Google Scholar 

  14. Mendler, N.P.: Recursive Types and Type Constraints in Second Order Lambda-Calculus. In: Proceedings of LiCS 1987, pp. 30–36. IEEE Computer Society, Los Alamitos (1987)

    Google Scholar 

  15. Parigot, M.: On the Representation of Data in Lambda-Calculus. In: Börger, E., Kleine Büning, H., Richter, M.M. (eds.) CSL 1989. LNCS, vol. 440, pp. 309–321. Springer, Heidelberg (1990)

    Chapter  Google Scholar 

  16. Spławski, Z., Urzyczyn, P.: Type Fixpoints: Iteration vs. Recursion. In: Proceedings of ICFP 1999, pp. 102–113. ACM, New York (1999)

    Google Scholar 

  17. Steffen, M.: Polarized Higher-order Subtyping. PhD thesis, Department of Computer Science, University of Erlangen (1997)

    Google Scholar 

  18. Tait, W.W.: A Realizability Interpretation of the Theory of Species. In: Parikh, R. (ed.) Logic Colloquium. LNCS, vol. 453, pp. 240–251. Springer, Heidelberg (1975)

    Chapter  Google Scholar 

  19. Xi, H.: Dependent Types for Program Termination Verification. Higher-Order and Symbolic Computation 15(1), 91–131 (2002)

    Article  MATH  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 chapter

Cite this chapter

Barthe, G., Grégoire, B., Riba, C. (2009). A Tutorial on Type-Based Termination. In: Bove, A., Barbosa, L.S., Pardo, A., Pinto, J.S. (eds) Language Engineering and Rigorous Software Development. LerNet 2008. Lecture Notes in Computer Science, vol 5520. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03153-3_3

Download citation

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

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-03152-6

  • Online ISBN: 978-3-642-03153-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics