aboutsummaryrefslogtreecommitdiffhomepage
path: root/plugins/Derive/g_derive.ml4
Commit message (Collapse)AuthorAge
* Derive plugin: a more general interface.Gravatar Arnaud Spiwack2014-07-23
| | | | Instead of forcing the specifying property to be of the form (r spec def), allow any lemma depending on def.
* poly: remove unused attribute to STM nodes and vernac classificaitonGravatar Enrico Tassi2014-05-15
|
* Initial work on reintroducing old-style polymorphism for compatibility (the ↵Gravatar Matthieu Sozeau2014-05-06
| | | | stdlib does not compile entirely).
* Fix g_derive.ml4.Gravatar Arnaud Spiwack2013-12-04
| | | My bad, I forgot to fix the classification before comitting.
* Derive plugin.Gravatar Arnaud Spiwack2013-12-04
A small plugin to support program deriving (à la Richard Bird) in Coq. It's fairly simple: Require Coq.Derive.Derive. Derive f From g Upto eq As h. Produces a goal (actually two, but the first one is automatically shelved): |- eq g ?42 And closing the proof produces two definitions: f is instantiated with the value of ?42 (it's always transparent). And h is instantiated with the content of the proof (it is transparent or opaque depending on whether the proof was closed with Defined or Qed).