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
Copy file name to clipboardexpand all lines: theories/WildCat/Induced.v
+37-53
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Require Import WildCat.Equiv.
6
6
7
7
(** * Induced wild categories *)
8
8
9
-
(** A map A -> B of types where B is some type of category induces the same level of structure on A, via taking everything to be defined on the image.
9
+
(** A map [A -> B] of types, where [B] is some type of wild category, induces the same level of structure on [A], via taking everything to be defined on the image.
10
10
11
11
This needs to be separate from Core because of HasEquivs usage. We don't make these definitions Global Instances because we only want to apply them manually, but we make them Local Instances so that subsequent ones can pick up the previous ones automatically. *)
12
12
@@ -15,98 +15,82 @@ Section Induced_category.
15
15
16
16
LocalInstance isgraph_induced `{IsGraph B} : IsGraph A.
17
17
Proof.
18
-
srapply Build_IsGraph.
18
+
nrapply Build_IsGraph.
19
19
intros a1 a2.
20
20
exact (f a1 $-> f a2).
21
21
Defined.
22
22
23
23
LocalInstance is01cat_induced `{Is01Cat B} : Is01Cat A.
24
24
Proof.
25
-
srapply Build_Is01Cat.
26
-
+ intro a. cbn in *.
25
+
nrapply Build_Is01Cat.
26
+
+ intro a; cbn.
27
27
exact (Id (f a)).
28
-
+ intros a b c; cbn in *; intros g1 g2.
29
-
exact ( g1 $o g2).
28
+
+ intros a b c; cbn. apply cat_comp.
30
29
Defined.
31
30
32
31
LocalInstance is0gpd_induced `{Is0Gpd B} : Is0Gpd A.
33
32
Proof.
34
-
rapply Build_Is0Gpd.
35
-
intros a b g; cbn in *; exact (g^$).
33
+
nrapply Build_Is0Gpd.
34
+
intros a b; cbn. apply gpd_rev.
36
35
Defined.
37
36
38
-
(** The structure map along which we induce the category structure becomes a functor with respect to the induced structure *)
37
+
(** The structure map along which we induce the category structure becomes a functor with respect to the induced structure.*)
39
38
LocalInstance is0functor_induced `{IsGraph B} : Is0Functor f.
40
39
Proof.
41
-
srapply Build_Is0Functor.
42
-
intros a b. cbn in *. exact idmap.
40
+
nrapply Build_Is0Functor.
41
+
intros a b; cbn. exact idmap.
43
42
Defined.
44
43
45
44
LocalInstance is2graph_induced `{Is2Graph B} : Is2Graph A.
46
45
Proof.
47
-
intros a b.
48
-
srapply Build_IsGraph.
49
-
intros a1 a2.
50
-
exact (fmap f a1 $-> fmap f a2).
46
+
intros a b; cbn. apply isgraph_hom.
51
47
Defined.
52
48
53
49
LocalInstance is1cat_induced `{Is1Cat B} : Is1Cat A.
54
50
Proof.
55
-
snrapply Build_Is1Cat;
56
-
unfold isgraph_induced, is2graph_induced,
57
-
is01cat_induced, is0functor_induced in *;
58
-
cbn in *.
51
+
snrapply Build_Is1Cat; cbn.
59
52
+ intros a b.
60
53
rapply is01cat_hom.
61
54
+ intros a b.
62
-
rapply is0gpd_hom.
55
+
nrapply is0gpd_hom.
63
56
+ intros a b c.
64
57
rapply is0functor_postcomp.
65
-
+ intros a b c h.
58
+
+ intros a b c.
66
59
rapply is0functor_precomp.
67
-
+ intros a b c d u v w.
68
-
rapply cat_assoc.
69
-
+ intros a b u.
70
-
rapply cat_idl.
71
-
+ intros a b u.
72
-
apply cat_idr.
60
+
+ intros a b c d.
61
+
nrapply cat_assoc.
62
+
+ intros a b.
63
+
nrapply cat_idl.
64
+
+ intros a b.
65
+
nrapply cat_idr.
73
66
Defined.
74
67
75
68
LocalInstance is1functor_induced `{Is1Cat B} : Is1Functor f.
76
69
Proof.
77
-
srapply Build_Is1Functor.
78
-
+ intros a b g h. cbn in *. exact idmap.
79
-
+ intros a. cbn in *. exact (Id _).
80
-
+ intros a b c g h. cbn in *. exact (Id _).
70
+
srapply Build_Is1Functor; cbn.
71
+
+ intros a b g h. exact idmap.
72
+
+ intros a. exact (Id _).
73
+
+ intros a b c g h. exact (Id _).
81
74
Defined.
82
75
83
-
Instance hasmorext_induced `{X : HasMorExt B} : HasMorExt A.
76
+
Instance hasmorext_induced `{HasMorExt B} : HasMorExt A.
84
77
Proof.
85
-
constructor. intros. apply X.
78
+
constructor. intros a b; cbn. rapply isequiv_Htpy_path.
86
79
Defined.
87
80
88
81
Definition hasequivs_induced `{HasEquivs B} : HasEquivs A.
0 commit comments