category_theory.monoidal.Mod_
⟷
Mathlib.CategoryTheory.Monoidal.Mod_
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,7 +3,7 @@ Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-/
-import Mathbin.CategoryTheory.Monoidal.Mon_
+import CategoryTheory.Monoidal.Mon_
#align_import category_theory.monoidal.Mod_ from "leanprover-community/mathlib"@"fd4551cfe4b7484b81c2c9ba3405edae27659676"
mathlib commit https://github.com/leanprover-community/mathlib/commit/442a83d738cb208d3600056c489be16900ba701d
@@ -39,10 +39,6 @@ structure Mod_ (A : Mon_ C) where
#align Mod_ Mod_
-/
-restate_axiom Mod_.one_act'
-
-restate_axiom Mod_.assoc'
-
attribute [simp, reassoc] Mod_.one_act Mod_.assoc
namespace Mod_
@@ -67,8 +63,6 @@ structure Hom (M N : Mod_ A) where
#align Mod_.hom Mod_.Hom
-/
-restate_axiom hom.act_hom'
-
attribute [simp, reassoc] hom.act_hom
#print Mod_.id /-
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,14 +2,11 @@
Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-
-! This file was ported from Lean 3 source module category_theory.monoidal.Mod_
-! leanprover-community/mathlib commit fd4551cfe4b7484b81c2c9ba3405edae27659676
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.CategoryTheory.Monoidal.Mon_
+#align_import category_theory.monoidal.Mod_ from "leanprover-community/mathlib"@"fd4551cfe4b7484b81c2c9ba3405edae27659676"
+
/-!
# The category of module objects over a monoid object.
mathlib commit https://github.com/leanprover-community/mathlib/commit/c471da714c044131b90c133701e51b877c246677
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
! This file was ported from Lean 3 source module category_theory.monoidal.Mod_
-! leanprover-community/mathlib commit 33085c9739c41428651ac461a323fde9a2688d9b
+! leanprover-community/mathlib commit fd4551cfe4b7484b81c2c9ba3405edae27659676
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -12,6 +12,9 @@ import Mathbin.CategoryTheory.Monoidal.Mon_
/-!
# The category of module objects over a monoid object.
+
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/7e5137f579de09a059a5ce98f364a04e221aabf0
@@ -25,6 +25,7 @@ variable (C : Type u₁) [Category.{v₁} C] [MonoidalCategory.{v₁} C]
variable {C}
+#print Mod_ /-
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
@@ -36,6 +37,7 @@ structure Mod_ (A : Mon_ C) where
one_act' : (A.one ⊗ 𝟙 X) ≫ act = (λ_ X).Hom := by obviously
assoc' : (A.mul ⊗ 𝟙 X) ≫ act = (α_ A.pt A.pt X).Hom ≫ (𝟙 A.pt ⊗ act) ≫ act := by obviously
#align Mod_ Mod_
+-/
restate_axiom Mod_.one_act'
@@ -49,10 +51,13 @@ variable {A : Mon_ C} (M : Mod_ A)
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print Mod_.assoc_flip /-
theorem assoc_flip :
(𝟙 A.pt ⊗ M.act) ≫ M.act = (α_ A.pt A.pt M.pt).inv ≫ (A.mul ⊗ 𝟙 M.pt) ≫ M.act := by simp
#align Mod_.assoc_flip Mod_.assoc_flip
+-/
+#print Mod_.Hom /-
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- A morphism of module objects. -/
@[ext]
@@ -60,62 +65,78 @@ structure Hom (M N : Mod_ A) where
Hom : M.pt ⟶ N.pt
act_hom' : M.act ≫ hom = (𝟙 A.pt ⊗ hom) ≫ N.act := by obviously
#align Mod_.hom Mod_.Hom
+-/
restate_axiom hom.act_hom'
attribute [simp, reassoc] hom.act_hom
+#print Mod_.id /-
/-- The identity morphism on a module object. -/
@[simps]
def id (M : Mod_ A) : Hom M M where Hom := 𝟙 M.pt
#align Mod_.id Mod_.id
+-/
+#print Mod_.homInhabited /-
instance homInhabited (M : Mod_ A) : Inhabited (Hom M M) :=
⟨id M⟩
#align Mod_.hom_inhabited Mod_.homInhabited
+-/
+#print Mod_.comp /-
/-- Composition of module object morphisms. -/
@[simps]
def comp {M N O : Mod_ A} (f : Hom M N) (g : Hom N O) : Hom M O where Hom := f.Hom ≫ g.Hom
#align Mod_.comp Mod_.comp
+-/
instance : Category (Mod_ A) where
Hom M N := Hom M N
id := id
comp M N O f g := comp f g
+#print Mod_.id_hom' /-
@[simp]
theorem id_hom' (M : Mod_ A) : (𝟙 M : Hom M M).Hom = 𝟙 M.pt :=
rfl
#align Mod_.id_hom' Mod_.id_hom'
+-/
+#print Mod_.comp_hom' /-
@[simp]
theorem comp_hom' {M N K : Mod_ A} (f : M ⟶ N) (g : N ⟶ K) :
(f ≫ g : Hom M K).Hom = f.Hom ≫ g.Hom :=
rfl
#align Mod_.comp_hom' Mod_.comp_hom'
+-/
variable (A)
+#print Mod_.regular /-
/-- A monoid object as a module over itself. -/
@[simps]
def regular : Mod_ A where
pt := A.pt
act := A.mul
#align Mod_.regular Mod_.regular
+-/
instance : Inhabited (Mod_ A) :=
⟨regular A⟩
+#print Mod_.forget /-
/-- The forgetful functor from module objects to the ambient category. -/
def forget : Mod_ A ⥤ C where
obj A := A.pt
map A B f := f.Hom
#align Mod_.forget Mod_.forget
+-/
open CategoryTheory.MonoidalCategory
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
+#print Mod_.comap /-
/-- A morphism of monoid objects induces a "restriction" or "comap" functor
between the categories of module objects.
-/
@@ -148,6 +169,7 @@ def comap {A B : Mon_ C} (f : A ⟶ B) : Mod_ B ⥤ Mod_ A
slice_rhs 2 3 => rw [← g.act_hom]
rw [category.assoc] }
#align Mod_.comap Mod_.comap
+-/
-- Lots more could be said about `comap`, e.g. how it interacts with
-- identities, compositions, and equalities of monoid object morphisms.
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -41,7 +41,7 @@ restate_axiom Mod_.one_act'
restate_axiom Mod_.assoc'
-attribute [simp, reassoc.1] Mod_.one_act Mod_.assoc
+attribute [simp, reassoc] Mod_.one_act Mod_.assoc
namespace Mod_
@@ -63,7 +63,7 @@ structure Hom (M N : Mod_ A) where
restate_axiom hom.act_hom'
-attribute [simp, reassoc.1] hom.act_hom
+attribute [simp, reassoc] hom.act_hom
/-- The identity morphism on a module object. -/
@[simps]
mathlib commit https://github.com/leanprover-community/mathlib/commit/36b8aa61ea7c05727161f96a0532897bd72aedab
@@ -3,8 +3,8 @@ Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-! This file was ported from Lean 3 source module category_theory.monoidal.Mod
-! leanprover-community/mathlib commit 7013e5b7c9aba9a165023c1f20cd8d238d58f433
+! This file was ported from Lean 3 source module category_theory.monoidal.Mod_
+! leanprover-community/mathlib commit 33085c9739c41428651ac461a323fde9a2688d9b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -30,36 +30,36 @@ variable {C}
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- A module object for a monoid object, all internal to some monoidal category. -/
-structure ModCat (A : Mon_ C) where
+structure Mod_ (A : Mon_ C) where
pt : C
act : A.pt ⊗ X ⟶ X
one_act' : (A.one ⊗ 𝟙 X) ≫ act = (λ_ X).Hom := by obviously
assoc' : (A.mul ⊗ 𝟙 X) ≫ act = (α_ A.pt A.pt X).Hom ≫ (𝟙 A.pt ⊗ act) ≫ act := by obviously
-#align Mod ModCat
+#align Mod_ Mod_
-restate_axiom ModCat.one_act'
+restate_axiom Mod_.one_act'
-restate_axiom ModCat.assoc'
+restate_axiom Mod_.assoc'
-attribute [simp, reassoc.1] ModCat.one_act ModCat.assoc
+attribute [simp, reassoc.1] Mod_.one_act Mod_.assoc
-namespace ModCat
+namespace Mod_
-variable {A : Mon_ C} (M : ModCat A)
+variable {A : Mon_ C} (M : Mod_ A)
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
theorem assoc_flip :
(𝟙 A.pt ⊗ M.act) ≫ M.act = (α_ A.pt A.pt M.pt).inv ≫ (A.mul ⊗ 𝟙 M.pt) ≫ M.act := by simp
-#align Mod.assoc_flip ModCat.assoc_flip
+#align Mod_.assoc_flip Mod_.assoc_flip
/- ./././Mathport/Syntax/Translate/Expr.lean:177:8: unsupported: ambiguous notation -/
/-- A morphism of module objects. -/
@[ext]
-structure Hom (M N : ModCat A) where
+structure Hom (M N : Mod_ A) where
Hom : M.pt ⟶ N.pt
act_hom' : M.act ≫ hom = (𝟙 A.pt ⊗ hom) ≫ N.act := by obviously
-#align Mod.hom ModCat.Hom
+#align Mod_.hom Mod_.Hom
restate_axiom hom.act_hom'
@@ -67,51 +67,51 @@ attribute [simp, reassoc.1] hom.act_hom
/-- The identity morphism on a module object. -/
@[simps]
-def id (M : ModCat A) : Hom M M where Hom := 𝟙 M.pt
-#align Mod.id ModCat.id
+def id (M : Mod_ A) : Hom M M where Hom := 𝟙 M.pt
+#align Mod_.id Mod_.id
-instance homInhabited (M : ModCat A) : Inhabited (Hom M M) :=
+instance homInhabited (M : Mod_ A) : Inhabited (Hom M M) :=
⟨id M⟩
-#align Mod.hom_inhabited ModCat.homInhabited
+#align Mod_.hom_inhabited Mod_.homInhabited
/-- Composition of module object morphisms. -/
@[simps]
-def comp {M N O : ModCat A} (f : Hom M N) (g : Hom N O) : Hom M O where Hom := f.Hom ≫ g.Hom
-#align Mod.comp ModCat.comp
+def comp {M N O : Mod_ A} (f : Hom M N) (g : Hom N O) : Hom M O where Hom := f.Hom ≫ g.Hom
+#align Mod_.comp Mod_.comp
-instance : Category (ModCat A) where
+instance : Category (Mod_ A) where
Hom M N := Hom M N
id := id
comp M N O f g := comp f g
@[simp]
-theorem id_hom' (M : ModCat A) : (𝟙 M : Hom M M).Hom = 𝟙 M.pt :=
+theorem id_hom' (M : Mod_ A) : (𝟙 M : Hom M M).Hom = 𝟙 M.pt :=
rfl
-#align Mod.id_hom' ModCat.id_hom'
+#align Mod_.id_hom' Mod_.id_hom'
@[simp]
-theorem comp_hom' {M N K : ModCat A} (f : M ⟶ N) (g : N ⟶ K) :
+theorem comp_hom' {M N K : Mod_ A} (f : M ⟶ N) (g : N ⟶ K) :
(f ≫ g : Hom M K).Hom = f.Hom ≫ g.Hom :=
rfl
-#align Mod.comp_hom' ModCat.comp_hom'
+#align Mod_.comp_hom' Mod_.comp_hom'
variable (A)
/-- A monoid object as a module over itself. -/
@[simps]
-def regular : ModCat A where
+def regular : Mod_ A where
pt := A.pt
act := A.mul
-#align Mod.regular ModCat.regular
+#align Mod_.regular Mod_.regular
-instance : Inhabited (ModCat A) :=
+instance : Inhabited (Mod_ A) :=
⟨regular A⟩
/-- The forgetful functor from module objects to the ambient category. -/
-def forget : ModCat A ⥤ C where
+def forget : Mod_ A ⥤ C where
obj A := A.pt
map A B f := f.Hom
-#align Mod.forget ModCat.forget
+#align Mod_.forget Mod_.forget
open CategoryTheory.MonoidalCategory
@@ -120,7 +120,7 @@ open CategoryTheory.MonoidalCategory
between the categories of module objects.
-/
@[simps]
-def comap {A B : Mon_ C} (f : A ⟶ B) : ModCat B ⥤ ModCat A
+def comap {A B : Mon_ C} (f : A ⟶ B) : Mod_ B ⥤ Mod_ A
where
obj M :=
{ pt := M.pt
@@ -133,7 +133,7 @@ def comap {A B : Mon_ C} (f : A ⟶ B) : ModCat B ⥤ ModCat A
-- oh, for homotopy.io in a widget!
slice_rhs 2 3 => rw [id_tensor_comp_tensor_id, ← tensor_id_comp_id_tensor]
rw [id_tensor_comp]
- slice_rhs 4 5 => rw [ModCat.assoc_flip]
+ slice_rhs 4 5 => rw [Mod_.assoc_flip]
slice_rhs 3 4 => rw [associator_inv_naturality]
slice_rhs 2 3 => rw [← tensor_id, associator_inv_naturality]
slice_rhs 1 3 => rw [iso.hom_inv_id_assoc]
@@ -147,9 +147,9 @@ def comap {A B : Mon_ C} (f : A ⟶ B) : ModCat B ⥤ ModCat A
slice_rhs 1 2 => rw [id_tensor_comp_tensor_id, ← tensor_id_comp_id_tensor]
slice_rhs 2 3 => rw [← g.act_hom]
rw [category.assoc] }
-#align Mod.comap ModCat.comap
+#align Mod_.comap Mod_.comap
-- Lots more could be said about `comap`, e.g. how it interacts with
-- identities, compositions, and equalities of monoid object morphisms.
-end ModCat
+end Mod_
Empty lines were removed by executing the following Python script twice
import os
import re
# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
for filename in files:
if filename.endswith('.lean'):
file_path = os.path.join(dir_path, filename)
# Open the file and read its contents
with open(file_path, 'r') as file:
content = file.read()
# Use a regular expression to replace sequences of "variable" lines separated by empty lines
# with sequences without empty lines
modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)
# Write the modified content back to the file
with open(file_path, 'w') as file:
file.write(modified_content)
@@ -17,7 +17,6 @@ universe v₁ v₂ u₁ u₂
open CategoryTheory MonoidalCategory
variable (C : Type u₁) [Category.{v₁} C] [MonoidalCategory.{v₁} C]
-
variable {C}
/-- A module object for a monoid object, all internal to some monoidal category. -/
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -73,7 +73,7 @@ instance : Category (Mod_ A) where
id := id
comp f g := comp f g
--- porting note: added because `Hom.ext` is not triggered automatically
+-- Porting note: added because `Hom.ext` is not triggered automatically
-- See https://github.com/leanprover-community/mathlib4/issues/5229
@[ext]
lemma hom_ext {M N : Mod_ A} (f₁ f₂ : M ⟶ N) (h : f₁.hom = f₂.hom) : f₁ = f₂ :=
With multiple changes, it is a good time to check if existing set_option maxHeartbeats
and set_option synthInstance.maxHeartbeats
remain necessary. This brings the number of files with such down from 23 to 9. Most are straight deletions though I did change one proof.
@@ -114,7 +114,6 @@ set_option linter.uppercaseLean3 false in
open CategoryTheory.MonoidalCategory
-set_option maxHeartbeats 400000 in
/-- A morphism of monoid objects induces a "restriction" or "comap" functor
between the categories of module objects.
-/
@@ -24,8 +24,8 @@ variable {C}
structure Mod_ (A : Mon_ C) where
X : C
act : A.X ⊗ X ⟶ X
- one_act : (A.one ⊗ 𝟙 X) ≫ act = (λ_ X).hom := by aesop_cat
- assoc : (A.mul ⊗ 𝟙 X) ≫ act = (α_ A.X A.X X).hom ≫ (𝟙 A.X ⊗ act) ≫ act := by aesop_cat
+ one_act : (A.one ▷ X) ≫ act = (λ_ X).hom := by aesop_cat
+ assoc : (A.mul ▷ X) ≫ act = (α_ A.X A.X X).hom ≫ (A.X ◁ act) ≫ act := by aesop_cat
set_option linter.uppercaseLean3 false in
#align Mod_ Mod_
@@ -36,7 +36,7 @@ namespace Mod_
variable {A : Mon_ C} (M : Mod_ A)
theorem assoc_flip :
- (𝟙 A.X ⊗ M.act) ≫ M.act = (α_ A.X A.X M.X).inv ≫ (A.mul ⊗ 𝟙 M.X) ≫ M.act := by simp
+ (A.X ◁ M.act) ≫ M.act = (α_ A.X A.X M.X).inv ≫ (A.mul ▷ M.X) ≫ M.act := by simp
set_option linter.uppercaseLean3 false in
#align Mod_.assoc_flip Mod_.assoc_flip
@@ -45,7 +45,7 @@ set_option linter.uppercaseLean3 false in
@[ext]
structure Hom (M N : Mod_ A) where
hom : M.X ⟶ N.X
- act_hom : M.act ≫ hom = (𝟙 A.X ⊗ hom) ≫ N.act := by aesop_cat
+ act_hom : M.act ≫ hom = (A.X ◁ hom) ≫ N.act := by aesop_cat
set_option linter.uppercaseLean3 false in
#align Mod_.hom Mod_.Hom
@@ -122,26 +122,26 @@ between the categories of module objects.
def comap {A B : Mon_ C} (f : A ⟶ B) : Mod_ B ⥤ Mod_ A where
obj M :=
{ X := M.X
- act := (f.hom ⊗ 𝟙 M.X) ≫ M.act
+ act := (f.hom ▷ M.X) ≫ M.act
one_act := by
- slice_lhs 1 2 => rw [← comp_tensor_id]
+ slice_lhs 1 2 => rw [← comp_whiskerRight]
rw [f.one_hom, one_act]
assoc := by
-- oh, for homotopy.io in a widget!
- slice_rhs 2 3 => rw [id_tensor_comp_tensor_id, ← tensor_id_comp_id_tensor]
- rw [id_tensor_comp]
+ slice_rhs 2 3 => rw [whisker_exchange]
+ simp only [whiskerRight_tensor, MonoidalCategory.whiskerLeft_comp, Category.assoc,
+ Iso.hom_inv_id_assoc]
slice_rhs 4 5 => rw [Mod_.assoc_flip]
- slice_rhs 3 4 => rw [associator_inv_naturality]
- slice_rhs 2 3 => rw [← tensor_id, associator_inv_naturality]
- slice_rhs 1 3 => rw [Iso.hom_inv_id_assoc]
- slice_rhs 1 2 => rw [← comp_tensor_id, tensor_id_comp_id_tensor]
- slice_rhs 1 2 => rw [← comp_tensor_id, ← f.mul_hom]
- rw [comp_tensor_id, Category.assoc] }
+ slice_rhs 3 4 => rw [associator_inv_naturality_middle]
+ slice_rhs 2 4 => rw [Iso.hom_inv_id_assoc]
+ slice_rhs 1 2 => rw [← MonoidalCategory.comp_whiskerRight, ← whisker_exchange]
+ slice_rhs 1 2 => rw [← MonoidalCategory.comp_whiskerRight, ← tensorHom_def', ← f.mul_hom]
+ rw [comp_whiskerRight, Category.assoc] }
map g :=
{ hom := g.hom
act_hom := by
dsimp
- slice_rhs 1 2 => rw [id_tensor_comp_tensor_id, ← tensor_id_comp_id_tensor]
+ slice_rhs 1 2 => rw [whisker_exchange]
slice_rhs 2 3 => rw [← g.act_hom]
rw [Category.assoc] }
set_option linter.uppercaseLean3 false in
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Joachim Breitner <mail@joachim-breitner.de>
@@ -114,6 +114,7 @@ set_option linter.uppercaseLean3 false in
open CategoryTheory.MonoidalCategory
+set_option maxHeartbeats 400000 in
/-- A morphism of monoid objects induces a "restriction" or "comap" functor
between the categories of module objects.
-/
@@ -2,14 +2,11 @@
Copyright (c) 2020 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-
-! This file was ported from Lean 3 source module category_theory.monoidal.Mod_
-! leanprover-community/mathlib commit 33085c9739c41428651ac461a323fde9a2688d9b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.CategoryTheory.Monoidal.Mon_
+#align_import category_theory.monoidal.Mod_ from "leanprover-community/mathlib"@"33085c9739c41428651ac461a323fde9a2688d9b"
+
/-!
# The category of module objects over a monoid object.
-/
@@ -77,6 +77,7 @@ instance : Category (Mod_ A) where
comp f g := comp f g
-- porting note: added because `Hom.ext` is not triggered automatically
+-- See https://github.com/leanprover-community/mathlib4/issues/5229
@[ext]
lemma hom_ext {M N : Mod_ A} (f₁ f₂ : M ⟶ N) (h : f₁.hom = f₂.hom) : f₁ = f₂ :=
Hom.ext _ _ h
The unported dependencies are