Skip to main content

Extraction in Coq: An Overview

  • Conference paper
Logic and Theory of Algorithms (CiE 2008)

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

Included in the following conference series:

Abstract

The extraction mechanism of Coq allows one to transform Coq proofs and functions into functional programs. We illustrate the behavior of this tool by reviewing several variants of Coq definitions for Euclidean division, as well as some more advanced examples. We then continue with a more general description of this tool: key features, main examples, strengths, limitations and perspectives.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Berger, U., Berghofer, S., Letouzey, P., Schwichtenberg, H.: Program extraction from normalization proofs. Studia Logica 82 (2005); Special issue

    Google Scholar 

  2. Cruz-Filipe, L., Letouzey, P.: A Large-Scale Experiment in Executing Extracted Programs. In: 12th Symposium on the Integration of Symbolic Computation and Mechanized Reasoning, Calculemus 2005 (2005)

    Google Scholar 

  3. Filliâtre, J.-C., Letouzey, P.: Functors for Proofs and Programs. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986. Springer, Heidelberg (2004)

    Google Scholar 

  4. Pichardie, D., Barthe, G., Forest, J., Rusu, V.: Defining and reasoning about recursive functions: a practical tool for the coq proof assistant. In: Hagiya, M., Wadler, P. (eds.) FLOPS 2006. LNCS, vol. 3945. Springer, Heidelberg (2006)

    Google Scholar 

  5. Lee, O., Yi, K.: Proofs about a folklore let-polymorphic type inference algorithm. ACM Transactions on Programming Languages and Systems 20(4), 707–723 (1998)

    Article  Google Scholar 

  6. Leroy, X.: Formal certification of a compiler back-end, or: programming a compiler with a proof assistant. In: 33rd symposium Principles of Programming Languages, pp. 42–54. ACM Press, New York (2006)

    Google Scholar 

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

    Chapter  Google Scholar 

  8. Letouzey, P.: Programmation fonctionnelle certifiée – L’extraction de programmes dans l’assistant Coq. PhD thesis, Université Paris-Sud (July 2004), http://www.pps.jussieu.fr/~letouzey/download/these_letouzey_English.ps.gz

  9. Parent, C.: Synthèse de preuves de programmes dans le Calcul des Constructions Inductives. thèse d’université, École Normale Supérieure de Lyon (January 1995)

    Google Scholar 

  10. Sozeau, M.: Program-ing Finger Trees in Coq. In: ICFP 2007, pp. 13–24. ACM Press (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Arnold Beckmann Costas Dimitracopoulos Benedikt Löwe

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Letouzey, P. (2008). Extraction in Coq: An Overview. In: Beckmann, A., Dimitracopoulos, C., Löwe, B. (eds) Logic and Theory of Algorithms. CiE 2008. Lecture Notes in Computer Science, vol 5028. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69407-6_39

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-69407-6_39

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-69405-2

  • Online ISBN: 978-3-540-69407-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics