Coq'Art Home page for Coq-8.5




Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.


All the examples and exercises on this site are copyright Yves Bertot and Pierre Castéran, unless explicitely mentionned. The tutorial on [co-]inductive type has been written by Edurdo Gimenez and Pierre Castéran. The tutorial on type classes and user-defined relation has been written by Pierre Castéran and Matthieu Sozeau. Coq'Art is the familiar name for the first book on the Coq proof assistant and its underlying theory the Calculus of Inductive Constructions , written by Yves Bertot and Pierre Castéran.
Interactive Theorem Proving and Program Development
Coq'Art: The Calculus of Inductive Constructions
Series: Texts in Theoretical Computer Science. An EATCS Series
Bertot, Yves, Castéran, Pierre
2004, XXV, 469 p., Hardcover 
ISBN: 3-540-20854-2
Look at Springer site .


Drawing "Oiseau de feu" by courtesy of Michel Mendès France

Contents

This directory contains a bunch of files tested with Coq-8.5beta2. It is structured as follows:

16 directories, each one associated with a chapter of the book:

Each directory contains a list of exercises, and an adaptation to CoqV8.5 of the scripts presented in the corresponding chapter of the book. Each index file contains also corrections of the errors that were kindly signalled to us by the readers.
  1. A Brief Presentation of Coq
  2. Gallina: Coq as a Programming Language
  3. Propositions and Proofs
  4. Dependent Product
  5. Everyday logic
  6. Inductive Data Structures
  7. Tactics and automation
  8. Inductive Predicates
  9. Functions and their specification
  10. Extraction and imperative programming
  11. A Case Study : binary search trees
  12. The Module System
  13. Infinite Objects and Proofs
  14. Foundations of Inductive Types
  15. General Recursion
  16. Proof by reflection

Additional material

  1. Some exercises about the latest features of Coq
  2. Variations on Sorting
  3. Coq sources associated with the tutorial written with Matthieu Sozeau on type classes and user-defined relations
  4. Coq sources associated with the tutorial written with Eduardo Gimenez on inductive and co-inductive types

New Exercises !

These exercises were written after the release of the book (May 2004). The solution of some of them (e.g. mergesort ) illustrates new features of Coq. For instance, command Function and tactic functional induction.

Examples from the Tutorial on [Co]-Inductive Types in Coq

Contributed by Eduardo Gimenez and Pierre Castéran.

Examples from the tutorial on Type Classes Relations in Coq

Contributed by Pierre Castéran and Matthieu Sozeau

Sources and exercises from the book

This site contains the source of all examples and the solution of 170 over 200 exercises from the book. Some new exercises are still added to this repository.
For each exercise, we give a solution as a Coq file, together with some comments if the exercise is difficult, or if the solution presents some methodological interest. Comments are welcome.
table of contents .

Errata

Some typos where found after the printing of the book. They are reported chapter by chapter, after the sources and exercises. Many thanks to Stefan Karrmann for all the remarks he sent to us.



Comments are welcome

Thank you in advance for any comment, alternate solution, or any way to improve this site. All the examples and exercises on this site are copyright Yves Bertot and Pierre Castéran, except from the aforementionned tutorials.

To download Coq

Coq site here
Mail : first name.name@labri.fr