You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The inspect pattern relies on the following definition and notation:
Definition inspect {A} (a : A) : {b | a = b} :=
exist _ a eq_refl.
Notation "x 'eqn:' p" := (exist _ x p) (only parsing, at level 20).
While inspect is available in the module Prop.Logic, it is not imported by From Equations Require Import Equations, and there is no installed module with the eqn notation or anything like it installed by the coq-equations package. This means that practically everyone who wants to use the inspect pattern effectively has to bundle (copy paste) a version of this definition and notation in their project.
A better solution would be to provide this definition and notation in some installed module that is exported by default. Reasonably, the notation should be inside a scope to avoid clashes with similar notations. For example, eqn clashes with destruct x eqn:H.
The text was updated successfully, but these errors were encountered:
palmskog
changed the title
Install module with inspect definition and eqn notation
Install/export module with inspect definition and notation like eqn
Jul 11, 2024
The inspect pattern relies on the following definition and notation:
While
inspect
is available in the moduleProp.Logic
, it is not imported byFrom Equations Require Import Equations
, and there is no installed module with theeqn
notation or anything like it installed by thecoq-equations
package. This means that practically everyone who wants to use the inspect pattern effectively has to bundle (copy paste) a version of this definition and notation in their project.A better solution would be to provide this definition and notation in some installed module that is exported by default. Reasonably, the notation should be inside a scope to avoid clashes with similar notations. For example,
eqn
clashes withdestruct x eqn:H
.The text was updated successfully, but these errors were encountered: