File tree 3 files changed +613
-3
lines changed
3 files changed +613
-3
lines changed Original file line number Diff line number Diff line change @@ -43,6 +43,7 @@ HB.structure Definition ICMon := { T of isICMon T }.
43
43
44
44
(***** wrapping *************************************************** *)
45
45
46
+
46
47
#[wrapper]
47
48
HB.mixin Record hom_isMagma T of Quiver T :=
48
49
{ hom_isMagma_private : forall A B, isMagma (@hom T A B) }.
@@ -54,6 +55,10 @@ HB.structure
54
55
#[wrapper]
55
56
HB.mixin Record hom_isMon T of Quiver T :=
56
57
{ hom_isMon_private : forall A B, Mon (@hom T A B) }.
58
+ #[verbose]
59
+ HB.structure
60
+ Definition Mon_enriched_quiver :=
61
+ { Obj of isQuiver Obj & hom_isMon Obj }.
57
62
*)
58
63
(* need to add explicitly Magma_enriched_quiver, otherwise switch
59
64
from mixin to structure *)
@@ -168,10 +173,15 @@ Obligation 3.
168
173
destruct (x a); auto.
169
174
Qed .
170
175
176
+ Fail Check Type : Mon_enriched_quiver.type.
177
+ Fail Check hom (nat:Type) nat: Mon.type.
178
+
171
179
HB.instance Definition funQ_Monoid (A B: Type ) :
172
180
isMon (hom A B) := funQ_isMon A B.
173
181
174
182
Check Type : Mon_enriched_quiver.type.
183
+ Check hom (nat:Type) nat: Mon.type.
184
+
175
185
176
186
(** INSTANCE 2 **********************************************
177
187
Original file line number Diff line number Diff line change @@ -144,13 +144,13 @@ HB.factory Record isMICAlg T of Mon T := {
144
144
amidem : idempotent amop;
145
145
}.
146
146
147
- HB.builders Context T (f : isMICAlg T).
147
+ HB.builders Context T (_ : isMICAlg T).
148
148
149
149
Lemma amop_mop_eq : amop = mop.
150
- destruct f; simpl.
150
+ (* destruct f; simpl. *)
151
151
eapply functional_extensionality; intro.
152
152
eapply functional_extensionality; intro.
153
- auto .
153
+ apply ameq .
154
154
Qed .
155
155
156
156
Definition dum_comm :=
You can’t perform that action at this time.
0 commit comments