Skip to main content

Proof Reuse with Extended Inductive Types

  • Conference paper
Theorem Proving in Higher Order Logics (TPHOLs 2004)

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

Included in the following conference series:

Abstract

Proof assistants based on type theory such as Coq or Lego, put emphasis on inductive specifications and proofs by featuring expressive inductive types. It is frequent to modify an existing specification or proof by adding or modifying constructors in inductive types. In the context of language design, adding constructors is a common practice to make progress step-by-step. In this article, we propose a mechanism to extend and parameter inductive types, and a proof reuse mechanism founded on proof terms reuse.

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. Barras, B., et al.: The Coq Proof Assistant, Reference Manual (v7.4). INRIA Rocquencourt (2003)

    Google Scholar 

  2. Barthe, G., Courtieu, P.: Efficient reasoning about executable specifications in coq. In: Carreño, V.A., Muñoz, C.A., Tahar, S. (eds.) TPHOLs 2002. LNCS, vol. 2410, pp. 31–46. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  3. Boite, O., Dubois, C.: Proving Type Soundness of a Simply Typed ML-like Language with References. In: Boulton, R.J., Jackson, P.B. (eds.) TPHOLs 2001. LNCS, vol. 2152, pp. 69–84. Springer, Heidelberg (2001); Informatics Research Report EDI-INF-RR-0046 of University of Edinburgh

    Google Scholar 

  4. Barthe, G., Dufay, G., Huisman, M., de Sousa, S.M.: Jakarta: A toolset for reasoning about javaCard. In: Attali, S., Jensen, T. (eds.) E-smart 2001. LNCS, vol. 2140, pp. 2–18. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  5. Barthe, G., Pons, O.: Type Isomorphisms and Proof Reuse in Dependent Type Theory. In: Honsell, F., Miculan, M. (eds.) FOSSACS 2001. LNCS, vol. 2030, pp. 57–71. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  6. Barthe, G., van Raamsdonk, F.: Constructor Subtyping in the Calculus of Inductive Constructions. In: Tiuryn, J. (ed.) FOSSACS 2000. LNCS, vol. 1784, pp. 17–34. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  7. Constable, R.L., Allen, S.F., Bromley, H.M., Cleaveland, W.R., Cremer, J.F., Harper, R.W., Howe, D.J., Knoblock, T.B., Mendler, N.P., Panangaden, P., Sasaki, J.T., Smith, S.F.: Implementing Mathematics with the Nuprl Development System. Prentice-Hall, NJ (1986)

    Google Scholar 

  8. Callaghan, P.: Coherence checking of coercions in plastic. In: Workshop on Subtyping and Dependent Types in Programming, Ponte de Lima (July 2000)

    Google Scholar 

  9. Delahaye, D.: A Tactic Language for the System Coq. In: Parigot, M., Voronkov, A. (eds.) LPAR 2000. LNCS (LNAI), vol. 1955, pp. 85–95. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  10. Dubois, C.: Proving ML Type Soundness Within Coq. In: Aagaard, M.D., Harrison, J. (eds.) TPHOLs 2000. LNCS, vol. 1869, pp. 126–144. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  11. Gay, S.J.: A Framework for the Formalisation of Pi Calculus Type Systems. In: Boulton, R.J., Jackson, P.B. (eds.) TPHOLs 2001. LNCS, vol. 2152, pp. 217–232. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  12. Gordon, M.J.C., Melham, T.F. (eds.): Introduction to HOL A theorem proving environment for higher order logic. Cambridge University Press, Cambridge (1993)

    MATH  Google Scholar 

  13. Luo, Z., Pollack, R.: LEGO proof development system: User’s manual. Technical Report ECS-LFCS-92-211, LFCS, The King’s Buildings, Edinburgh, EH9 3JZ (1992)

    Google Scholar 

  14. Levin, M.Y., Pierce, B.C.: Tinkertype: A language for playing with formal systems. Technical Report MS-CIS-99-19, Dept. of CIS, University of Pennsylvania (July 1999)

    Google Scholar 

  15. Luo, Z.: Coercive subtyping in type theory. In: van Dalen, D., Bezem, M. (eds.) CSL 1996. LNCS, vol. 1258, pp. 276–296. Springer, Heidelberg (1997)

    Google Scholar 

  16. Magnusson, L.: The Implementation of ALF—a Proof Editor Based on Martin-Löf ’s Monomorphic Type Theory with Explicit Substitution. PhD thesis, Chalmers University of Technology - Göteborg University (1994)

    Google Scholar 

  17. Magaud, N.: Changing data representation within the coq system. In: Basin, D., Wolff, B. (eds.) TPHOLs 2003. LNCS, vol. 2758, pp. 87–102. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  18. Muñoz, C.: Proof representation in type theory: State of the art. In Proc. XXII Latinamerican Conference of Informatics CLEI Panel 96, Santafé de Bogotá, Colombia (June 1996)

    Google Scholar 

  19. Nipkow, T., von Oheimb, D., Pusch, C.: Java: Embedding a Programming Language in a Theorem Prover. In: Bauer, F.L., Steinbruggen, R. (eds.) Foundations of Secure Computation. IOS Press, Amsterdam (2000)

    Google Scholar 

  20. Pons, O., Bertot, Y., Rideau, L.: Notions of dependency in proof assistants. In: Electronic Proceedings of User Interfaces for Theorem Provers, Sophia-Antipolis, France (1998)

    Google Scholar 

  21. Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2000)

    Google Scholar 

  22. Paulin-Mohring, C.: Définitions Inductives en Théorie des Types d’Ordre Supérieur. Habilitation à diriger les recherches, Université Lyon I (December 1996)

    Google Scholar 

  23. Poll, E.: Subtyping and Inheritance for Inductive Types. In: Proceedings of TYPES 1997 Workshop on Subtyping, inheritance and modular development of proofs (September 1997)

    Google Scholar 

  24. Pons, O.: Conception et réalisation d’outils d’aide au développement de grosses théories dans les systèmes de preuves interactifs. PhD thesis, Conservatoire National des Arts et Métiers (1999)

    Google Scholar 

  25. Syme, D.: Proving Java Type Sound. In: Alves-Foss, J. (ed.) Formal Syntax and Semantics of Java. LNCS, vol. 1523, p. 83. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  26. VanInwegen, M.: Towards Type Preservation in Core SML. Technical report, Cambridge University (1997)

    Google Scholar 

  27. Werner, B.: Une théorie des constructions inductives. PhD thesis, Universit é Paris 7 (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Boite, O. (2004). Proof Reuse with Extended Inductive Types. In: Slind, K., Bunker, A., Gopalakrishnan, G. (eds) Theorem Proving in Higher Order Logics. TPHOLs 2004. Lecture Notes in Computer Science, vol 3223. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30142-4_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30142-4_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-23017-5

  • Online ISBN: 978-3-540-30142-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics