@@ -186,43 +186,35 @@ by { rw [←tensor_comp], simp }
186
186
(g ⊗ (𝟙 W)) ≫ ((𝟙 Z) ⊗ f) = g ⊗ f :=
187
187
by { rw [←tensor_comp], simp }
188
188
189
+ @[simp]
190
+ lemma right_unitor_conjugation {X Y : C} (f : X ⟶ Y) :
191
+ (f ⊗ (𝟙 (𝟙_ C))) = (ρ_ X).hom ≫ f ≫ (ρ_ Y).inv :=
192
+ by rw [←right_unitor_naturality_assoc, iso.hom_inv_id, category.comp_id]
193
+
194
+ @[simp]
195
+ lemma left_unitor_conjugation {X Y : C} (f : X ⟶ Y) :
196
+ ((𝟙 (𝟙_ C)) ⊗ f) = (λ_ X).hom ≫ f ≫ (λ_ Y).inv :=
197
+ by rw [←left_unitor_naturality_assoc, iso.hom_inv_id, category.comp_id]
198
+
189
199
@[reassoc]
190
200
lemma left_unitor_inv_naturality {X X' : C} (f : X ⟶ X') :
191
201
f ≫ (λ_ X').inv = (λ_ X).inv ≫ (𝟙 _ ⊗ f) :=
192
- begin
193
- apply (cancel_mono (λ_ X').hom).1 ,
194
- simp only [assoc, comp_id, iso.inv_hom_id],
195
- rw [left_unitor_naturality, ←category.assoc, iso.inv_hom_id, category.id_comp]
196
- end
202
+ by simp
197
203
198
204
@[reassoc]
199
205
lemma right_unitor_inv_naturality {X X' : C} (f : X ⟶ X') :
200
206
f ≫ (ρ_ X').inv = (ρ_ X).inv ≫ (f ⊗ 𝟙 _) :=
201
- begin
202
- apply (cancel_mono (ρ_ X').hom).1 ,
203
- simp only [assoc, comp_id, iso.inv_hom_id],
204
- rw [right_unitor_naturality, ←category.assoc, iso.inv_hom_id, category.id_comp]
205
- end
207
+ by simp
206
208
207
- @[simp]
208
- lemma right_unitor_conjugation {X Y : C} (f : X ⟶ Y) :
209
- (ρ_ X).inv ≫ (f ⊗ (𝟙 (𝟙_ C))) ≫ (ρ_ Y).hom = f :=
210
- by rw [right_unitor_naturality, ←category.assoc, iso.inv_hom_id, category.id_comp]
211
-
212
- @[simp]
213
- lemma left_unitor_conjugation {X Y : C} (f : X ⟶ Y) :
214
- (λ_ X).inv ≫ ((𝟙 (𝟙_ C)) ⊗ f) ≫ (λ_ Y).hom = f :=
215
- by rw [left_unitor_naturality, ←category.assoc, iso.inv_hom_id, category.id_comp]
216
-
217
- @[simp] lemma tensor_left_iff
209
+ lemma tensor_left_iff
218
210
{X Y : C} (f g : X ⟶ Y) :
219
211
((𝟙 (𝟙_ C)) ⊗ f = (𝟙 (𝟙_ C)) ⊗ g) ↔ (f = g) :=
220
- by { rw [←cancel_mono (λ_ Y).hom, left_unitor_naturality, left_unitor_naturality], simp }
212
+ by simp
221
213
222
- @[simp] lemma tensor_right_iff
214
+ lemma tensor_right_iff
223
215
{X Y : C} (f g : X ⟶ Y) :
224
216
(f ⊗ (𝟙 (𝟙_ C)) = g ⊗ (𝟙 (𝟙_ C))) ↔ (f = g) :=
225
- by { rw [←cancel_mono (ρ_ Y).hom, right_unitor_naturality, right_unitor_naturality], simp }
217
+ by simp
226
218
227
219
/-! The lemmas in the next section are true by coherence,
228
220
but we prove them directly as they are used in proving the coherence theorem. -/
@@ -247,13 +239,9 @@ lemma right_unitor_tensor_inv (X Y : C) :
247
239
((ρ_ (X ⊗ Y)).inv) = ((𝟙 X) ⊗ (ρ_ Y).inv) ≫ (α_ X Y (𝟙_ C)).inv :=
248
240
eq_of_inv_eq_inv (by simp)
249
241
250
- lemma triangle_assoc_comp_left (X Y : C) :
251
- (α_ X (𝟙_ C) Y).hom ≫ ((𝟙 X) ⊗ (λ_ Y).hom) = (ρ_ X).hom ⊗ 𝟙 Y :=
252
- monoidal_category.triangle X Y
253
-
254
242
@[simp, reassoc] lemma triangle_assoc_comp_right (X Y : C) :
255
243
(α_ X (𝟙_ C) Y).inv ≫ ((ρ_ X).hom ⊗ 𝟙 Y) = ((𝟙 X) ⊗ (λ_ Y).hom) :=
256
- by rw [←triangle_assoc_comp_left , iso.inv_hom_id_assoc]
244
+ by rw [←triangle , iso.inv_hom_id_assoc]
257
245
258
246
@[simp, reassoc] lemma triangle_assoc_comp_left_inv (X Y : C) :
259
247
((𝟙 X) ⊗ (λ_ Y).inv) ≫ (α_ X (𝟙_ C) Y).inv = ((ρ_ X).inv ⊗ 𝟙 Y) :=
@@ -270,55 +258,47 @@ lemma associator_inv_naturality {X Y Z X' Y' Z' : C} (f : X ⟶ X') (g : Y ⟶ Y
270
258
(f ⊗ (g ⊗ h)) ≫ (α_ X' Y' Z').inv = (α_ X Y Z).inv ≫ ((f ⊗ g) ⊗ h) :=
271
259
by { rw [comp_inv_eq, assoc, associator_naturality], simp }
272
260
273
- @[reassoc]
274
- lemma id_tensor_associator_naturality {X Y Z Z' : C} (h : Z ⟶ Z') :
275
- (𝟙 (X ⊗ Y) ⊗ h) ≫ (α_ X Y Z').hom = (α_ X Y Z).hom ≫ (𝟙 X ⊗ (𝟙 Y ⊗ h)) :=
276
- by { rw [←tensor_id, associator_naturality], }
277
-
278
- @[reassoc]
279
- lemma id_tensor_associator_inv_naturality {X Y Z X' : C} (f : X ⟶ X') :
280
- (f ⊗ 𝟙 (Y ⊗ Z)) ≫ (α_ X' Y Z).inv = (α_ X Y Z).inv ≫ ((f ⊗ 𝟙 Y) ⊗ 𝟙 Z) :=
281
- by { rw [←tensor_id, associator_inv_naturality] }
282
-
283
- @[reassoc]
261
+ @[reassoc, simp]
284
262
lemma associator_conjugation {X X' Y Y' Z Z' : C} (f : X ⟶ X') (g : Y ⟶ Y') (h : Z ⟶ Z') :
285
- (α_ X Y Z).hom ≫ (f ⊗ (g ⊗ h)) ≫ (α_ X' Y' Z').inv = (f ⊗ g) ⊗ h :=
263
+ (f ⊗ g) ⊗ h = ( α_ X Y Z).hom ≫ (f ⊗ (g ⊗ h)) ≫ (α_ X' Y' Z').inv :=
286
264
by rw [associator_inv_naturality, hom_inv_id_assoc]
287
265
288
266
@[reassoc]
289
267
lemma associator_inv_conjugation {X X' Y Y' Z Z' : C} (f : X ⟶ X') (g : Y ⟶ Y') (h : Z ⟶ Z') :
290
- (α_ X Y Z).inv ≫ ((f ⊗ g) ⊗ h) ≫ (α_ X' Y' Z').hom = f ⊗ g ⊗ h :=
268
+ f ⊗ g ⊗ h = (α_ X Y Z).inv ≫ ((f ⊗ g) ⊗ h) ≫ (α_ X' Y' Z').hom :=
291
269
by rw [associator_naturality, inv_hom_id_assoc]
292
270
271
+ -- TODO these next two lemmas aren't so fundamental, and perhaps could be removed
272
+ -- (replacing their usages by their proofs).
293
273
@[reassoc]
294
- lemma right_unitor_inv_comp_tensor (f : W ⟶ X) (g : 𝟙_ C ⟶ Z) :
295
- (ρ_ _).inv ≫ (f ⊗ g) = f ≫ (ρ_ _).inv ≫ (𝟙 _ ⊗ g ) :=
296
- by { slice_rhs 1 2 { rw right_unitor_inv_naturality }, simp }
274
+ lemma id_tensor_associator_naturality {X Y Z Z' : C} (h : Z ⟶ Z' ) :
275
+ (𝟙 (X ⊗ Y) ⊗ h) ≫ (α_ X Y Z').hom = (α_ X Y Z).hom ≫ (𝟙 X ⊗ (𝟙 Y ⊗ h) ) :=
276
+ by { rw [←tensor_id, associator_naturality], }
297
277
298
278
@[reassoc]
299
- lemma left_unitor_inv_comp_tensor (f : W ⟶ X) (g : 𝟙_ C ⟶ Z) :
300
- (λ_ _).inv ≫ (g ⊗ f) = f ≫ (λ_ _ ).inv ≫ (g ⊗ 𝟙 _ ) :=
301
- by { slice_rhs 1 2 { rw left_unitor_inv_naturality }, simp }
279
+ lemma id_tensor_associator_inv_naturality {X Y Z X' : C} (f : X ⟶ X') :
280
+ (f ⊗ 𝟙 (Y ⊗ Z)) ≫ (α_ X' Y Z).inv = (α_ X Y Z ).inv ≫ ((f ⊗ 𝟙 Y) ⊗ 𝟙 Z ) :=
281
+ by { rw [←tensor_id, associator_inv_naturality] }
302
282
303
283
@[simp, reassoc]
304
284
lemma hom_inv_id_tensor {V W X Y Z : C} (f : V ≅ W) (g : X ⟶ Y) (h : Y ⟶ Z) :
305
- (f.hom ⊗ g) ≫ (f.inv ⊗ h) = 𝟙 V ⊗ (g ≫ h) :=
306
- by rw [←tensor_comp, f.hom_inv_id]
285
+ (f.hom ⊗ g) ≫ (f.inv ⊗ h) = ( 𝟙 V ⊗ g) ≫ (𝟙 V ⊗ h) :=
286
+ by rw [←tensor_comp, f.hom_inv_id, id_tensor_comp ]
307
287
308
288
@[simp, reassoc]
309
289
lemma inv_hom_id_tensor {V W X Y Z : C} (f : V ≅ W) (g : X ⟶ Y) (h : Y ⟶ Z) :
310
- (f.inv ⊗ g) ≫ (f.hom ⊗ h) = 𝟙 W ⊗ (g ≫ h) :=
311
- by rw [←tensor_comp, f.inv_hom_id]
290
+ (f.inv ⊗ g) ≫ (f.hom ⊗ h) = ( 𝟙 W ⊗ g) ≫ (𝟙 W ⊗ h) :=
291
+ by rw [←tensor_comp, f.inv_hom_id, id_tensor_comp ]
312
292
313
293
@[simp, reassoc]
314
294
lemma tensor_hom_inv_id {V W X Y Z : C} (f : V ≅ W) (g : X ⟶ Y) (h : Y ⟶ Z) :
315
- (g ⊗ f.hom) ≫ (h ⊗ f.inv) = (g ≫ h) ⊗ 𝟙 V :=
316
- by rw [←tensor_comp, f.hom_inv_id]
295
+ (g ⊗ f.hom) ≫ (h ⊗ f.inv) = (g ⊗ 𝟙 V) ≫ (h ⊗ 𝟙 V) :=
296
+ by rw [←tensor_comp, f.hom_inv_id, comp_tensor_id ]
317
297
318
298
@[simp, reassoc]
319
299
lemma tensor_inv_hom_id {V W X Y Z : C} (f : V ≅ W) (g : X ⟶ Y) (h : Y ⟶ Z) :
320
- (g ⊗ f.inv) ≫ (h ⊗ f.hom) = (g ≫ h) ⊗ 𝟙 W :=
321
- by rw [←tensor_comp, f.inv_hom_id]
300
+ (g ⊗ f.inv) ≫ (h ⊗ f.hom) = (g ⊗ 𝟙 W) ≫ (h ⊗ 𝟙 W) :=
301
+ by rw [←tensor_comp, f.inv_hom_id, comp_tensor_id ]
322
302
323
303
end
324
304
0 commit comments