Skip to main content

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

Abstract

Equational reasoning in Coq is not straightforward. For a few years now there has been an ongoing research process towards adding rewriting to Coq. However, there are many research problems on this way. In this paper we give a coherent view of rewriting in Coq, we describe what is already done and what remains to be done.

We discuss such issues as strong normalization, confluence, logical consistency, completeness, modularity and extraction.

This work was partly supported by the Polish government grant 3 T11C 002 27 and the EU FP6 project IST-15905 Mobius.

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. Barbanera, F.: Adding algebraic rewriting to the calculus of constructions: Strong normalization preserved. In: Proceedings of the Second International Workshop on Conditional and Typed Rewriting (1990)

    Google Scholar 

  2. Barbanera, F., Fernández, M., Geuvers, H.: Modularity of strong normalization and confluence in the λ-algebraic-cube. In: Proceedings of the Ninth Annual IEEE Symposium on Logic in Computer Science, Paris, France, pp. 406–415. IEEE Comp. Soc. Press, Washington, DC, USA (1994)

    Google Scholar 

  3. Barbanera, F., Fernández, M., Geuvers, H.: Modularity of strong normalization in the algebraic-λ-cube. Journal of Functional Programming 7(6), 613–660 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  4. Barras, B., Grégoire, B.: On the role of type decorations in the calculus of inductive constructions. In: Ong, L. (ed.) CSL 2005. LNCS, vol. 3634, pp. 151–166. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  5. Barthe, G., Grégoire, B., Pastawski, F.: CIC^: Type-based termination of recursive definitions in the Calculus of Inductive Constructions. In: Hermann, M., Voronkov, A. (eds.) LPAR 2006. LNCS (LNAI), vol. 4246, pp. 257–271. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. Blanqui, F.: Théorie des Types et Récriture. PhD thesis, Université Paris-Sud (2001)

    Google Scholar 

  7. Blanqui, F.: Inductive types in the Calculus of Algebraic Constructions. In: Hofmann, M. (ed.) TLCA 2003. LNCS, vol. 2701, Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  8. Blanqui, F.: Rewriting modulo in Deduction modulo. In: Nieuwenhuis, R. (ed.) RTA 2003. LNCS, vol. 2706, Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  9. Blanqui, F.: A Type-Based Termination Criterion for Dependently-Typed Higher-Order Rewrite Systems. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 24–39. Springer, Heidelberg (2004)

    Google Scholar 

  10. Blanqui, F.: Definitions by rewriting in the Calculus of Constructions. Mathematical Structures in Computer Science 15(1), 37–92 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  11. Blanqui, F., Jouannaud, J.-P., Okada, M.: The Calculus of Algebraic Constructions. In: Narendran, P., Rusinowitch, M. (eds.) RTA 1999. LNCS, vol. 1631, Springer, Heidelberg (1999)

    Google Scholar 

  12. Blanqui, F., Jouannaud, J.-P., Okada, M.: Inductive data type systems. Theoretical Computer Science 272(1–2), 41–68 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  13. Brady, E., McBride, C., McKinna, J.: Inductive families need not store their indices. In: Berardi, S., Coppo, M., Damiani, F. (eds.) TYPES 2003. LNCS, vol. 3085, pp. 115–129. Springer, Heidelberg (2004)

    Google Scholar 

  14. Chrząszcz, J.: Implementation of modules in the Coq system. In: Basin, D., Wolff, B. (eds.) TPHOLs 2003. LNCS, vol. 2758, pp. 270–286. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  15. Chrząszcz, J.: Modules in Type Theory with Generative Definitions. PhD thesis, Warsaw Univerity and University of Paris-Sud (January 2004)

    Google Scholar 

  16. Contejean, E., Marché, C., Monate, B., Urbain, X.: CiME version 2 (2000). Available at http://cime.lri.fr/

  17. The Coq proof assistant http://coq.inria.fr/

  18. Coquand, T.: Pattern matching with dependent types. In: Proceedings of the Workshop on Types for Proofs and Programs, pp. 71–83, Båstad, Sweden (1992)

    Google Scholar 

  19. Coquand, T., Paulin-Mohring, C.: Inductively defined types. In: Martin-Löf, P., Mints, G. (eds.) COLOG-88. LNCS, vol. 417, Springer, Heidelberg (1990)

    Google Scholar 

  20. Cornes, C.: Conception d’un langage de haut niveau de répresentation de preuves. PhD thesis, Université Paris VII (1997)

    Google Scholar 

  21. Courant, J.: A Module Calculus for Pure Type Systems. In: de Groote, P., Hindley, J.R. (eds.) TLCA 1997. LNCS, vol. 1210, pp. 112–128. Springer, Heidelberg (1997)

    Google Scholar 

  22. Courant, J.: Un calcul de modules pour les systèmes de types purs. Thèse de doctorat, Ecole Normale Supérieure de Lyon (1998)

    Google Scholar 

  23. Dowek, G., Hardin, T., Kirchner, C.: Theorem proving modulo. Journal of Automated Reasoning 31(1), 33–72 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  24. Jouannaud, J.-P., Blanqui, F., Strub, P.-Y.: Building decision procedures in the calculus of inductive constructions (submitted)

    Google Scholar 

  25. Giménez, E.: Un Calcul de Constructions Infinies et son Application à la Vérification des Systèmes Communicants. PhD thesis, Ecole Normale Supérieure de Lyon (1996)

    Google Scholar 

  26. 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 

  27. Girard, J.-Y.: Une extension de l’interprétation de Gödel à l’analyse, et son application à l’élimination des coupures dans l’analyse et la téorie des types. In: Proceedings of the 2nd Scandinavian Logic Symposium, pp. 63–92. North-Holland (1971)

    Google Scholar 

  28. Jouannaud, J.-P., Okada, M.: Executable higher-order algebraic specification languages. In: Proceedings of the Sixth Annual IEEE Symposium on Logic in Computer Science, pp. 350–361. IEEE Comp. Soc. Press, Washington (1991)

    Chapter  Google Scholar 

  29. Jouannaud, J.-P., Rubio, A.: The higher-order recursive path ordering. In: Longo, G. (ed.) Fourteenth Annual IEEE Symposium on Logic in Computer Science, Trento, Italy, July 1999, IEEE Comp. Soc. Press, Washington, DC, USA (1999)

    Google Scholar 

  30. Leroy, X.: Manifest types, modules, and separate compilation. In: Conference Record of the 21st Symposium on Principles of Programming Languages, Portland, Oregon, pp. 109–122. ACM Press, Portland (1994)

    Google Scholar 

  31. Letouzey, P.: A New Extraction for Coq. In: Geuvers, H., Wiedijk, F. (eds.) TYPES 2002. LNCS, vol. 2646, Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  32. Letouzey, P.: Programmation fonctionnelle certifiée – L’extraction de programmes dans l’assistant Coq. PhD thesis, Université Paris-Sud (2004)

    Google Scholar 

  33. Müller, F.: Confluence of the lambda calculus with left-linear algebraic rewriting. Information Processing Letters 41(6), 293–299 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  34. Oury, N.: Égalité et filtrage avec types dépendants dans le Calcul des Constructions Inductives. PhD thesis, Université Paris-Sud (2006)

    Google Scholar 

  35. Parent, C.: Developing certified programs in the system Coq - the Program tactic. In: Barendregt, H., Nipkow, T. (eds.) TYPES 1993. LNCS, vol. 806, pp. 291–312. Springer, Heidelberg (1994)

    Google Scholar 

  36. Paulin-Mohring, C.: Définitions inductives en théorie des types d’ordre supérieur. Thèse d’habilitation, Ecole Normale Supérieure de Lyon (1996)

    Google Scholar 

  37. Paulin-Mohring, C., Werner, B.: Synthesis of ML programs in the system Coq. Journal of Symbolic Computation 15, 607–640 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  38. Pollack, R.: Dependently typed records in type theory. Formal Aspects of Computing 13, 386–402 (2002)

    Article  MATH  Google Scholar 

  39. Sozeau, M.: Subset coercions in coq. In: Types for Proofs and Programs, TYPES 2006. LNCS, Springer, Heidelberg (to appear, 2007)

    Google Scholar 

  40. Terese,: Term Rewriting Systems. Cambridge Tracts in Theoretical Computer Science, vol. 55. Cambridge University Press, New York (2003)

    Google Scholar 

  41. Walukiewicz-Chrząszcz, D.: Termination of rewriting in the calculus of constructions. In: Despeyroux, J. (ed.) Termination of rewriting in the calculus of constructions. Proceedings of the 2nd Workshop on Logical Frameworks and Meta-Languages, Santa Barbara, California (2000)

    Google Scholar 

  42. Walukiewicz-Chrząszcz, D.: Termination of Rewriting in the Calculus of Constructions. PhD thesis, Warsaw University and University Paris XI (2003)

    Google Scholar 

  43. Walukiewicz-Chrząszcz, D.: Termination of rewriting in the calculus of constructions. Journal of Functional Programming 13(2), 339–414 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  44. Walukiewicz-Chrząszcz, D., Chrząszcz, J.: Inductive consequences in the calculus of constructions. Draft available at http://www.mimuw.edu.pl/~chrzaszcz/papers/

  45. Walukiewicz-Chrząszcz, D., Chrząszcz, J.: Consistency and completeness of rewriting in the calculus of constructions. In: Furbach, U., Shankar, N. (eds.) IJCAR 2006. LNCS (LNAI), vol. 4130, pp. 619–631. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  46. Werner, B.: Méta-théorie du Calcul des Constructions Inductives. PhD thesis, Université Paris VII (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hubert Comon-Lundh Claude Kirchner Hélène Kirchner

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Chrząszcz, J., Walukiewicz-Chrząszcz, D. (2007). Towards Rewriting in Coq. In: Comon-Lundh, H., Kirchner, C., Kirchner, H. (eds) Rewriting, Computation and Proof. Lecture Notes in Computer Science, vol 4600. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73147-4_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73147-4_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73146-7

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics