1,897 research outputs found
Category Theory in Coq 8.5
We report on our experience implementing category theory in Coq 8.5. The
repository of this development can be found at
https://bitbucket.org/amintimany/categories/. This implementation most notably
makes use of features, primitive projections for records and universe
polymorphism that are new to Coq 8.5.Comment: This is the abstract for a talk accepted for a presentation at the
7th Coq Workshop, Sophia Antipolis, France on June 26, 201
Experience Implementing a Performant Category-Theory Library in Coq
We describe our experience implementing a broad category-theory library in
Coq. Category theory and computational performance are not usually mentioned in
the same breath, but we have needed substantial engineering effort to teach Coq
to cope with large categorical constructions without slowing proof script
processing unacceptably. In this paper, we share the lessons we have learned
about how to represent very abstract mathematical objects and arguments in Coq
and how future proof assistants might be designed to better support such
reasoning. One particular encoding trick to which we draw attention allows
category-theoretic arguments involving duality to be internalized in Coq's
logic with definitional equality. Ours may be the largest Coq development to
date that uses the relatively new Coq version developed by homotopy type
theorists, and we reflect on which new features were especially helpful.Comment: The final publication will be available at link.springer.com. This
version includes a full bibliography which does not fit in the Springer
version; other than the more complete references, this is the version
submitted as a final copy to ITP 201
Computer theorem proving in math
We give an overview of issues surrounding computer-verified theorem proving
in the standard pure-mathematical context. This is based on my talk at the PQR
conference (Brussels, June 2003)
Automatic and Transparent Transfer of Theorems along Isomorphisms in the Coq Proof Assistant
In mathematics, it is common practice to have several constructions for the
same objects. Mathematicians will identify them modulo isomorphism and will not
worry later on which construction they use, as theorems proved for one
construction will be valid for all.
When working with proof assistants, it is also common to see several
data-types representing the same objects. This work aims at making the use of
several isomorphic constructions as simple and as transparent as it can be done
informally in mathematics. This requires inferring automatically the missing
proof-steps.
We are designing an algorithm which finds and fills these missing proof-steps
and we are implementing it as a plugin for Coq
- …