4739438
doi
10.5281/zenodo.4739438
oai:zenodo.org:4739438
Pierre-Marie Pédrot
Cyprien Mangin
Emilio Jesús Gallego Arias
Gaëtan Gilbert
Inria
Maxime Dénès
Robin Green
Hugo Herbelin
Enrico Tassi
@coq @math-comp @LPCIC
Guillaume Claret
Siddharth
IIIT Hyderabad
Anton Trunov
@Zilliqa
Joachim Breitner
@dfinity-lab
Antonio Nikishaev
Jim Fehrle
SimonBoulier
Søren Nørbæk
Théo Zimmermann
@Inria / Université de Paris
Vincent Laporte
Yves Bertot
Inria
mattam82/Coq-Equations: Equations 1.3beta1 for Coq 8.13
Matthieu Sozeau
Inria
url:https://github.com/mattam82/Coq-Equations/tree/v1.3-8.13beta
info:eu-repo/semantics/openAccess
Other (Open)
Equations 1.3
<p>This is a new major release of Equations, working with Coq 8.13, 8.12 and 8.11. This version adds an improved syntax (less <code>;</code>-separation), integration with the Coq-HoTT library (for Coq 8.13 only) and numerous bug fixes. It introduces minor breaking changes along with the following features:</p>
<ul>
<li><p>Improved syntax for "concise" clauses separated by <code>|</code>, at top-level or inside <code>with</code> subprograms.
We no longer require to separated them by <code>;</code>. For example, the following definition is now accepted:</p>
<pre><code class="lang-coq">Equations foo : nat -> nat :=
| 0 => 1
| S n => S (foo n).
</code></pre>
<p>The old syntax is however still supported for backwards compatibility.</p>
</li>
<li><p><code>Require Import Equations.Equations.</code> does not work anymore.
One has to use <code>Require Import Equations.Prop.Equations</code> to load the plugin's default instance where equality is in <code>Prop</code>. <code>From Equations Require Import Equations</code> is unaffected.</p>
</li>
<li>Use <code>Require Import Equations.HoTT.All</code> to use the HoTT variant of the library compatible with the <a href="https://github.com/HoTT/HoTT">Coq HoTT</a> library
The plugin then reuses the definition of <code>paths</code> from the HoTT library and all its constructions are universe polymorphic. As for the HoTT library alone, coq must be passed the arguments <code>-noinit -indices-matter</code> to use the library and plugin. The <code>coq-equations</code> opam package depends optionally on <code>coq-hott</code>, so if <code>coq-hott</code> is installed before it, <code>coq-equations</code> will automatically install the <code>HoTT</code> library variant in addition to the standard one.</li>
<li>New attribute <code>#[tactic=tac]</code> to set locally the default tactic to solve remaining holes.
The goals on which the tactic applies are now always of the form <code>Γ |- τ</code> where Γ is the context where the hole was introduced and τ the expected type, <em>even</em> when using the <code>Obligation</code> machinery to solve them, resulting in a possible incompatibility if the obligation tactic treated the context differently than the conclusion. By default, the <code>program_simpl</code> tactic performs a <code>simpl</code> call before introducing the hypotheses, so you might need to add a <code>simpl in *</code> to your tactics.</li>
<li>New attributes <code>#[derive(equations=yes,no, eliminator=yes|no)]</code> can be used in place of the <code>(noeqns, noind)</code> flags which are deprecated.</li>
</ul>
Fixed in this version:
<p>∗ #329: improved strengthening avoiding to abstract over recursive definitions which would not pass the guardness checker. This can simplify the produced terms, avoiding unnecessary "commutative cuts".
∗ #321: warn rather than error when using Equations? and no subgoals are left. This will leave a proof state with no subgoals, that must be closed using a <code>Qed</code> or <code>Defined</code> (similarly to Coq's <code>#[refine] Instance</code> command).
∗ #372, #194: <code>funelim</code> applied to a partial application failing
∗ #354: support for building values in <code>SProp</code>
∗ #353: name capture problem in presence of modules
∗ #335: provide an alias Equations Derive to not conflict with QuickChick's Derive
∗ #325: properly inline all Equations helper constants during Extraction</p>
Zenodo
2021-05-05
info:eu-repo/semantics/other
1117296
v1.3-8.13beta
1696340827.920896
1224232
md5:5949e94567e2583451fd93f1699c53ef
https://zenodo.org/records/4739438/files/mattam82/Coq-Equations-v1.3-8.13beta.zip
public
https://github.com/mattam82/Coq-Equations/tree/v1.3-8.13beta
Is supplement to
url
10.5281/zenodo.1117296
isVersionOf
doi