category_theory.monoidal.internal.Module
⟷
Mathlib.CategoryTheory.Monoidal.Internal.Module
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)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
-/
-import Algebra.Category.Module.Monoidal.Basic
-import Algebra.Category.Algebra.Basic
+import Algebra.Category.ModuleCat.Monoidal.Basic
+import Algebra.Category.AlgebraCat.Basic
import CategoryTheory.Monoidal.Mon_
#align_import category_theory.monoidal.internal.Module from "leanprover-community/mathlib"@"1a51edf13debfcbe223fa06b1cb353b9ed9751cc"
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -66,7 +66,7 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.pt :=
map_mul' := fun x y =>
by
have h := LinearMap.congr_fun A.one_mul.symm (x ⊗ₜ A.one y)
- rwa [monoidal_category.left_unitor_hom_apply, ← A.one.map_smul] at h
+ rwa [monoidal_category.left_unitor_hom_apply, ← A.one.map_smul] at h
commutes' := fun r a => by
dsimp
have h₁ := LinearMap.congr_fun A.one_mul (r ⊗ₜ a)
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,9 +3,9 @@ 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.Algebra.Category.Module.Monoidal.Basic
-import Mathbin.Algebra.Category.Algebra.Basic
-import Mathbin.CategoryTheory.Monoidal.Mon_
+import Algebra.Category.Module.Monoidal.Basic
+import Algebra.Category.Algebra.Basic
+import CategoryTheory.Monoidal.Mon_
#align_import category_theory.monoidal.internal.Module from "leanprover-community/mathlib"@"1a51edf13debfcbe223fa06b1cb353b9ed9751cc"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,16 +2,13 @@
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.internal.Module
-! leanprover-community/mathlib commit 1a51edf13debfcbe223fa06b1cb353b9ed9751cc
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Algebra.Category.Module.Monoidal.Basic
import Mathbin.Algebra.Category.Algebra.Basic
import Mathbin.CategoryTheory.Monoidal.Mon_
+#align_import category_theory.monoidal.internal.Module from "leanprover-community/mathlib"@"1a51edf13debfcbe223fa06b1cb353b9ed9751cc"
+
/-!
# `Mon_ (Module R) ≌ Algebra R`
mathlib commit https://github.com/leanprover-community/mathlib/commit/1a51edf13debfcbe223fa06b1cb353b9ed9751cc
@@ -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.internal.Module
-! leanprover-community/mathlib commit 74403a3b2551b0970855e14ef5e8fd0d6af1bfc2
+! leanprover-community/mathlib commit 1a51edf13debfcbe223fa06b1cb353b9ed9751cc
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.CategoryTheory.Monoidal.Mon_
/-!
# `Mon_ (Module R) ≌ Algebra R`
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
The category of internal monoid objects in `Module R`
is equivalent to the category of "native" bundled `R`-algebras.
mathlib commit https://github.com/leanprover-community/mathlib/commit/5dc6092d09e5e489106865241986f7f2ad28d4c8
@@ -74,11 +74,14 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.pt :=
exact h₁.trans h₂.symm
smul_def' := fun r a => (LinearMap.congr_fun A.one_mul (r ⊗ₜ a)).symm }
+#print ModuleCat.MonModuleEquivalenceAlgebra.algebraMap /-
@[simp]
theorem algebraMap (A : Mon_ (ModuleCat.{u} R)) (r : R) : algebraMap R A.pt r = A.one r :=
rfl
#align Module.Mon_Module_equivalence_Algebra.algebra_map ModuleCat.MonModuleEquivalenceAlgebra.algebraMap
+-/
+#print ModuleCat.MonModuleEquivalenceAlgebra.functor /-
/-- Converting a monoid object in `Module R` to a bundled algebra.
-/
@[simps]
@@ -92,7 +95,9 @@ def functor : Mon_ (ModuleCat.{u} R) ⥤ AlgebraCat R
map_mul' := fun x y => LinearMap.congr_fun f.MulHom (x ⊗ₜ y)
commutes' := fun r => LinearMap.congr_fun f.OneHom r }
#align Module.Mon_Module_equivalence_Algebra.functor ModuleCat.MonModuleEquivalenceAlgebra.functor
+-/
+#print ModuleCat.MonModuleEquivalenceAlgebra.inverseObj /-
/-- Converting a bundled algebra to a monoid object in `Module R`.
-/
@[simps]
@@ -122,7 +127,9 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R)
monoidal_category.associator_hom_apply]
simp only [LinearMap.mul'_apply, mul_assoc]
#align Module.Mon_Module_equivalence_Algebra.inverse_obj ModuleCat.MonModuleEquivalenceAlgebra.inverseObj
+-/
+#print ModuleCat.MonModuleEquivalenceAlgebra.inverse /-
/-- Converting a bundled algebra to a monoid object in `Module R`.
-/
@[simps]
@@ -134,11 +141,13 @@ def inverse : AlgebraCat.{u} R ⥤ Mon_ (ModuleCat.{u} R)
one_hom' := LinearMap.ext f.commutes
mul_hom' := TensorProduct.ext <| LinearMap.ext₂ <| map_mul f }
#align Module.Mon_Module_equivalence_Algebra.inverse ModuleCat.MonModuleEquivalenceAlgebra.inverse
+-/
end MonModuleEquivalenceAlgebra
open MonModuleEquivalenceAlgebra
+#print ModuleCat.monModuleEquivalenceAlgebra /-
/-- The category of internal monoid objects in `Module R`
is equivalent to the category of "native" bundled `R`-algebras.
-/
@@ -181,7 +190,9 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R
commutes' := fun r => rfl } })
(by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
+-/
+#print ModuleCat.monModuleEquivalenceAlgebraForget /-
/-- The equivalence `Mon_ (Module R) ≌ Algebra R`
is naturally compatible with the forgetful functors to `Module R`.
-/
@@ -200,6 +211,7 @@ def monModuleEquivalenceAlgebraForget :
map_smul' := fun c x => rfl } })
(by tidy)
#align Module.Mon_Module_equivalence_Algebra_forget ModuleCat.monModuleEquivalenceAlgebraForget
+-/
end ModuleCat
mathlib commit https://github.com/leanprover-community/mathlib/commit/2a0ce625dbb0ffbc7d1316597de0b25c1ec75303
@@ -116,7 +116,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R)
rw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
mul_assoc' := by
- ext (x y z)
+ ext x y z
dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, LinearMap.compr₂_apply,
Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
monoidal_category.associator_hom_apply]
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -66,7 +66,7 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.pt :=
map_mul' := fun x y =>
by
have h := LinearMap.congr_fun A.one_mul.symm (x ⊗ₜ A.one y)
- rwa [monoidal_category.left_unitor_hom_apply, ← A.one.map_smul] at h
+ rwa [monoidal_category.left_unitor_hom_apply, ← A.one.map_smul] at h
commutes' := fun r a => by
dsimp
have h₁ := LinearMap.congr_fun A.one_mul (r ⊗ₜ a)
@@ -179,7 +179,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R
map_one' := (algebraMap R A).map_one.symm
map_mul' := fun x y => (@LinearMap.mul'_apply R _ _ _ _ _ _ x y).symm
commutes' := fun r => rfl } })
- (by intros ; rfl)
+ (by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
/-- The equivalence `Mon_ (Module R) ≌ Algebra R`
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -28,7 +28,7 @@ open CategoryTheory
open LinearMap
-open TensorProduct
+open scoped TensorProduct
attribute [local ext] TensorProduct.ext
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -45,12 +45,8 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Ring A.pt :=
A.pt) with
one := A.one (1 : R)
mul := fun x y => A.mul (x ⊗ₜ y)
- one_mul := fun x => by
- convert LinearMap.congr_fun A.one_mul ((1 : R) ⊗ₜ x)
- simp
- mul_one := fun x => by
- convert LinearMap.congr_fun A.mul_one (x ⊗ₜ (1 : R))
- simp
+ one_mul := fun x => by convert LinearMap.congr_fun A.one_mul ((1 : R) ⊗ₜ x); simp
+ mul_one := fun x => by convert LinearMap.congr_fun A.mul_one (x ⊗ₜ (1 : R)); simp
mul_assoc := fun x y z => by convert LinearMap.congr_fun A.mul_assoc (x ⊗ₜ y ⊗ₜ z)
left_distrib := fun x y z =>
by
@@ -158,19 +154,13 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R
{ toFun := id
map_add' := fun x y => rfl
map_smul' := fun r a => rfl }
- mul_hom' := by
- ext
- dsimp at *
- rfl }
+ mul_hom' := by ext; dsimp at *; rfl }
inv :=
{ Hom :=
{ toFun := id
map_add' := fun x y => rfl
map_smul' := fun r a => rfl }
- mul_hom' := by
- ext
- dsimp at *
- rfl } })
+ mul_hom' := by ext; dsimp at *; rfl } })
(by tidy)
counitIso :=
NatIso.ofComponents
@@ -189,9 +179,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R
map_one' := (algebraMap R A).map_one.symm
map_mul' := fun x y => (@LinearMap.mul'_apply R _ _ _ _ _ _ x y).symm
commutes' := fun r => rfl } })
- (by
- intros
- rfl)
+ (by intros ; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
/-- The equivalence `Mon_ (Module R) ≌ Algebra R`
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -109,20 +109,20 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R)
ext x
dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
LinearMap.compr₂_apply, Function.comp_apply, RingHom.map_one,
- ModuleCat.monoidalCategory.hom_apply, AlgebraCat.coe_comp,
- ModuleCat.monoidalCategory.leftUnitor_hom_apply]
+ ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
+ ModuleCat.MonoidalCategory.leftUnitor_hom_apply]
rw [LinearMap.mul'_apply, monoidal_category.left_unitor_hom_apply, ← Algebra.smul_def]
mul_one' := by
ext x
dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
- LinearMap.compr₂_apply, Function.comp_apply, ModuleCat.monoidalCategory.hom_apply,
+ LinearMap.compr₂_apply, Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply,
AlgebraCat.coe_comp]
- rw [LinearMap.mul'_apply, ModuleCat.monoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
+ rw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
mul_assoc' := by
ext (x y z)
dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, LinearMap.compr₂_apply,
- Function.comp_apply, ModuleCat.monoidalCategory.hom_apply, AlgebraCat.coe_comp,
+ Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
monoidal_category.associator_hom_apply]
simp only [LinearMap.mul'_apply, mul_assoc]
#align Module.Mon_Module_equivalence_Algebra.inverse_obj ModuleCat.MonModuleEquivalenceAlgebra.inverseObj
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -4,11 +4,11 @@ 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.internal.Module
-! leanprover-community/mathlib commit 657df4339ae6ceada048c8a2980fb10e393143ec
+! leanprover-community/mathlib commit 74403a3b2551b0970855e14ef5e8fd0d6af1bfc2
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
-import Mathbin.Algebra.Category.Module.Monoidal
+import Mathbin.Algebra.Category.Module.Monoidal.Basic
import Mathbin.Algebra.Category.Algebra.Basic
import Mathbin.CategoryTheory.Monoidal.Mon_
mathlib commit https://github.com/leanprover-community/mathlib/commit/9da1b3534b65d9661eb8f42443598a92bbb49211
@@ -39,10 +39,10 @@ variable {R : Type u} [CommRing R]
namespace MonModuleEquivalenceAlgebra
@[simps]
-instance (A : Mon_ (ModuleCat.{u} R)) : Ring A.x :=
+instance (A : Mon_ (ModuleCat.{u} R)) : Ring A.pt :=
{
(by infer_instance : AddCommGroup
- A.x) with
+ A.pt) with
one := A.one (1 : R)
mul := fun x y => A.mul (x ⊗ₜ y)
one_mul := fun x => by
@@ -63,7 +63,7 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Ring A.x :=
rw [← TensorProduct.add_tmul]
rfl }
-instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.x :=
+instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.pt :=
{ A.one with
map_zero' := A.one.map_zero
map_one' := rfl
@@ -79,7 +79,7 @@ instance (A : Mon_ (ModuleCat.{u} R)) : Algebra R A.x :=
smul_def' := fun r a => (LinearMap.congr_fun A.one_mul (r ⊗ₜ a)).symm }
@[simp]
-theorem algebraMap (A : Mon_ (ModuleCat.{u} R)) (r : R) : algebraMap R A.x r = A.one r :=
+theorem algebraMap (A : Mon_ (ModuleCat.{u} R)) (r : R) : algebraMap R A.pt r = A.one r :=
rfl
#align Module.Mon_Module_equivalence_Algebra.algebra_map ModuleCat.MonModuleEquivalenceAlgebra.algebraMap
@@ -88,7 +88,7 @@ theorem algebraMap (A : Mon_ (ModuleCat.{u} R)) (r : R) : algebraMap R A.x r = A
@[simps]
def functor : Mon_ (ModuleCat.{u} R) ⥤ AlgebraCat R
where
- obj A := AlgebraCat.of R A.x
+ obj A := AlgebraCat.of R A.pt
map A B f :=
{ f.Hom.toAddMonoidHom with
toFun := f.Hom
@@ -102,7 +102,7 @@ def functor : Mon_ (ModuleCat.{u} R) ⥤ AlgebraCat R
@[simps]
def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R)
where
- x := ModuleCat.of R A
+ pt := ModuleCat.of R A
one := Algebra.linearMap R A
mul := LinearMap.mul' R A
one_mul' := by
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
Generalize MulActionHom
so that it allows two different monoids acting, related by a morphism. This is inspired by the treatment of (semi)linear maps in mathlib, and allows to refactor them.
Let M
, N
, X
, Y
be types, with SMul M X
and SMul N Y
, and let φ : M → N
be a map.
MulActionHom φ X Y
, the type of equivariant functions from X
to Y
, consists of functions f : X → Y
such that f (m • x) = (φ m) • (f x)
for all m : M
and x : X
.Assume that we have Monoid M
, Monoid N
and that φ : M →* N
. For A
, B
by types with AddMonoid A
and AddMonoid B
, endowed with DistribMulAction M A
and DistribMulAction M B
:
DistribMulActionHom φ A B
is the type of equivariant additive monoid homomorphisms from A
to B
.Similarly, when R
and S
are types with Semiring R
, Semiring S
, MulSemiringAction M R
and MulSemiringAction N S
SMulSemiringHom φ R S
is the type of equivariant ring homomorphisms
from R
to S
.The above types have corresponding classes:
MulActionHomClass F φ X Y
states that F
is a type of bundled X → Y
homs which are φ
-equivariantDistribMulActionHomClass F φ A B
states that F
is a type of bundled A → B
homs preserving the additive monoid structure and φ
-equivariantSMulSemiringHomClass F φ R S
states that F
is a type of bundled R → S
homs preserving the ring structure and φ
-equivariantWe introduce the following notation to code equivariant maps
(the subscript index ₑ
is for equivariant) :
X →ₑ[φ] Y
is MulActionHom φ X Y
.A →ₑ+[φ] B
is DistribMulActionHom φ A B
.R →ₑ+*[φ] S
is MulSemiringActionHom φ R S
.When M = N
and φ = MonoidHom.id M
, we provide the backward compatible notation :
X →[M] Y
is MulActionHom ([@id](https://github.com/id) M) X Y
A →+[M] B
is DistribMulActionHom (MonoidHom.id M) A B
R →+*[M] S
is MulSemiringActionHom (MonoidHom.id M) R S
This more general definition is propagated all over mathlib, in particular to LinearMap
.
The treatment of composition of equivariant maps is inspired by that of semilinear maps. We provide classes CompTriple
and MonoidHom.CompTriple
of “composable triples`, and various instances for them.
@@ -153,8 +153,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
erw [id_apply]
- erw [TensorProduct.mk_apply, TensorProduct.mk_apply, id_apply, LinearMap.mul'_apply,
- LinearMap.mul'_apply]
+ erw [TensorProduct.mk_apply, TensorProduct.mk_apply, mul'_apply, LinearMap.id_apply, mul'_apply]
simp only [LinearMap.mul'_apply, mul_assoc]
#align Module.Mon_Module_equivalence_Algebra.inverse_obj ModuleCat.MonModuleEquivalenceAlgebra.inverseObj
This is a very large PR, but it has been reviewed piecemeal already in PRs to the bump/v4.7.0
branch as we update to intermediate nightlies.
Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Kyle Miller <kmill31415@gmail.com> Co-authored-by: damiano <adomani@gmail.com>
@@ -140,6 +140,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
← Algebra.smul_def]
erw [id_apply]
mul_assoc := by
+ set_option tactic.skipAssignedInstances false in
-- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext fun y =>
LinearMap.ext fun z => ?_
In this pull request, I have systematically eliminated the leading whitespace preceding the colon (:
) within all unlabelled or unclassified porting notes. This adjustment facilitates a more efficient review process for the remaining notes by ensuring no entries are overlooked due to formatting inconsistencies.
@@ -38,9 +38,9 @@ variable {R : Type u} [CommRing R]
namespace MonModuleEquivalenceAlgebra
--- Porting note : in the following proof `have := ...; convert this` is to help Lean infer what the
+-- Porting note: in the following proof `have := ...; convert this` is to help Lean infer what the
-- underlying rings are.
--- Porting note : `simps(!)` doesn't work, I guess we will see what `simp` lemmas are needed and
+-- Porting note: `simps(!)` doesn't work, I guess we will see what `simp` lemmas are needed and
-- add them manually
-- @[simps!]
instance Ring_of_Mon_ (A : Mon_ (ModuleCat.{u} R)) : Ring A.X :=
@@ -113,26 +113,26 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
one := Algebra.linearMap R A
mul := LinearMap.mul' R A
one_mul := by
- -- Porting note : `ext` did not pick up `TensorProduct.ext`
+ -- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext_ring <| LinearMap.ext fun x => ?_
-- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
erw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
- -- Porting note : this `dsimp` does nothing
+ -- Porting note: this `dsimp` does nothing
-- dsimp [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
-- LinearMap.compr₂_apply, Function.comp_apply, RingHom.map_one,
-- ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
-- ModuleCat.MonoidalCategory.leftUnitor_hom_apply]
- -- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
+ -- Porting note: because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [LinearMap.mul'_apply, MonoidalCategory.leftUnitor_hom_apply, ← Algebra.smul_def]
erw [id_apply]
mul_one := by
- -- Porting note : `ext` did not pick up `TensorProduct.ext`
+ -- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext_ring ?_
- -- Porting note : this `dsimp` does nothing
+ -- Porting note: this `dsimp` does nothing
-- dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
-- LinearMap.compr₂_apply, Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply,
-- AlgebraCat.coe_comp]
- -- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
+ -- Porting note: because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [compr₂_apply, compr₂_apply]
-- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
erw [CategoryTheory.comp_apply]
@@ -140,7 +140,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
← Algebra.smul_def]
erw [id_apply]
mul_assoc := by
- -- Porting note : `ext` did not pick up `TensorProduct.ext`
+ -- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext fun y =>
LinearMap.ext fun z => ?_
dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, LinearMap.compr₂_apply,
@@ -188,7 +188,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
map_add' := fun x y => rfl
map_smul' := fun r a => rfl }
mul_hom := by
- -- Porting note : `ext` did not pick up `TensorProduct.ext`
+ -- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext ?_
dsimp at *
rfl }
@@ -198,7 +198,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
map_add' := fun x y => rfl
map_smul' := fun r a => rfl }
mul_hom := by
- -- Porting note : `ext` did not pick up `TensorProduct.ext`
+ -- Porting note: `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext ?_
dsimp at *
rfl } })
@@ -124,7 +124,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- ModuleCat.MonoidalCategory.leftUnitor_hom_apply]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [LinearMap.mul'_apply, MonoidalCategory.leftUnitor_hom_apply, ← Algebra.smul_def]
- rw [id_apply]
+ erw [id_apply]
mul_one := by
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext_ring ?_
@@ -138,7 +138,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
erw [CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
- rw [id_apply]
+ erw [id_apply]
mul_assoc := by
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext fun y =>
@@ -151,7 +151,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
erw [CategoryTheory.comp_apply,
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
- rw [id_apply]
+ erw [id_apply]
erw [TensorProduct.mk_apply, TensorProduct.mk_apply, id_apply, LinearMap.mul'_apply,
LinearMap.mul'_apply]
simp only [LinearMap.mul'_apply, mul_assoc]
@@ -143,17 +143,15 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| TensorProduct.ext <| LinearMap.ext fun x => LinearMap.ext fun y =>
LinearMap.ext fun z => ?_
- -- Porting note : this `dsimp` does nothing
- -- dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, LinearMap.compr₂_apply,
- -- Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
- -- MonoidalCategory.associator_hom_apply]
- -- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
- rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply]
+ dsimp only [AlgebraCat.id_apply, TensorProduct.mk_apply, LinearMap.compr₂_apply,
+ Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
+ MonoidalCategory.associator_hom_apply]
+ rw [compr₂_apply, compr₂_apply]
-- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
erw [CategoryTheory.comp_apply,
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
- rw [id_apply, TensorProduct.mk_apply]
+ rw [id_apply]
erw [TensorProduct.mk_apply, TensorProduct.mk_apply, id_apply, LinearMap.mul'_apply,
LinearMap.mul'_apply]
simp only [LinearMap.mul'_apply, mul_assoc]
@@ -193,8 +191,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext ?_
dsimp at *
- rfl
- one_hom := by ext; rfl }
+ rfl }
inv :=
{ hom :=
{ toFun := _root_.id
@@ -204,11 +201,7 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext ?_
dsimp at *
- rfl
- one_hom := by ext; rfl }
- hom_inv_id := by ext; rfl
- inv_hom_id := by ext; rfl })
- (by aesop_cat)
+ rfl } })
counitIso :=
NatIso.ofComponents
(fun A =>
@@ -226,7 +219,6 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
map_one' := (algebraMap R A).map_one.symm
map_mul' := fun x y => (@LinearMap.mul'_apply R _ _ _ _ _ _ x y).symm
commutes' := fun r => rfl } })
- (by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
-- These lemmas have always been bad (#7657), but leanprover/lean4#2644 made `simp` start noticing
@@ -248,7 +240,6 @@ def monModuleEquivalenceAlgebraForget :
{ toFun := _root_.id
map_add' := fun x y => rfl
map_smul' := fun c x => rfl } })
- (by aesop_cat)
#align Module.Mon_Module_equivalence_Algebra_forget ModuleCat.monModuleEquivalenceAlgebraForget
end ModuleCat
@@ -115,7 +115,8 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
one_mul := by
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext_ring <| LinearMap.ext fun x => ?_
- rw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
-- Porting note : this `dsimp` does nothing
-- dsimp [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
-- LinearMap.compr₂_apply, Function.comp_apply, RingHom.map_one,
@@ -133,7 +134,8 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- AlgebraCat.coe_comp]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [compr₂_apply, compr₂_apply]
- rw [CategoryTheory.comp_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
rw [id_apply]
@@ -146,7 +148,9 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
-- MonoidalCategory.associator_hom_apply]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
- rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply, CategoryTheory.comp_apply,
+ rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [CategoryTheory.comp_apply,
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
rw [id_apply, TensorProduct.mk_apply]
@@ -225,6 +229,9 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
(by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
+-- These lemmas have always been bad (#7657), but leanprover/lean4#2644 made `simp` start noticing
+attribute [nolint simpNF] ModuleCat.MonModuleEquivalenceAlgebra.functor_map_apply
+
/-- The equivalence `Mon_ (ModuleCat R) ≌ AlgebraCat R`
is naturally compatible with the forgetful functors to `ModuleCat R`.
-/
@@ -115,8 +115,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
one_mul := by
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext_ring <| LinearMap.ext fun x => ?_
- -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
- erw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
+ rw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
-- Porting note : this `dsimp` does nothing
-- dsimp [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
-- LinearMap.compr₂_apply, Function.comp_apply, RingHom.map_one,
@@ -134,8 +133,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- AlgebraCat.coe_comp]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [compr₂_apply, compr₂_apply]
- -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
- erw [CategoryTheory.comp_apply]
+ rw [CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
rw [id_apply]
@@ -148,9 +146,7 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
-- MonoidalCategory.associator_hom_apply]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
- rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply]
- -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
- erw [CategoryTheory.comp_apply,
+ rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply, CategoryTheory.comp_apply,
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
rw [id_apply, TensorProduct.mk_apply]
@@ -229,9 +225,6 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
(by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
--- These lemmas have always been bad (#7657), but leanprover/lean4#2644 made `simp` start noticing
-attribute [nolint simpNF] ModuleCat.MonModuleEquivalenceAlgebra.functor_map_apply
-
/-- The equivalence `Mon_ (ModuleCat R) ≌ AlgebraCat R`
is naturally compatible with the forgetful functors to `ModuleCat R`.
-/
@@ -115,7 +115,8 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
one_mul := by
-- Porting note : `ext` did not pick up `TensorProduct.ext`
refine TensorProduct.ext <| LinearMap.ext_ring <| LinearMap.ext fun x => ?_
- rw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [compr₂_apply, compr₂_apply, CategoryTheory.comp_apply]
-- Porting note : this `dsimp` does nothing
-- dsimp [AlgebraCat.id_apply, TensorProduct.mk_apply, Algebra.linearMap_apply,
-- LinearMap.compr₂_apply, Function.comp_apply, RingHom.map_one,
@@ -133,7 +134,8 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- AlgebraCat.coe_comp]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
erw [compr₂_apply, compr₂_apply]
- rw [CategoryTheory.comp_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, ModuleCat.MonoidalCategory.rightUnitor_hom_apply, ← Algebra.commutes,
← Algebra.smul_def]
rw [id_apply]
@@ -146,7 +148,9 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
-- Function.comp_apply, ModuleCat.MonoidalCategory.hom_apply, AlgebraCat.coe_comp,
-- MonoidalCategory.associator_hom_apply]
-- Porting note : because `dsimp` is not effective, `rw` needs to be changed to `erw`
- rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply, CategoryTheory.comp_apply,
+ rw [compr₂_apply, compr₂_apply, compr₂_apply, compr₂_apply]
+ -- This used to be `rw`, but we need `erw` after leanprover/lean4#2644
+ erw [CategoryTheory.comp_apply,
CategoryTheory.comp_apply, CategoryTheory.comp_apply]
erw [LinearMap.mul'_apply, LinearMap.mul'_apply]
rw [id_apply, TensorProduct.mk_apply]
@@ -225,6 +229,9 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
(by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
+-- These lemmas have always been bad (#7657), but leanprover/lean4#2644 made `simp` start noticing
+attribute [nolint simpNF] ModuleCat.MonModuleEquivalenceAlgebra.functor_map_apply
+
/-- The equivalence `Mon_ (ModuleCat R) ≌ AlgebraCat R`
is naturally compatible with the forgetful functors to `ModuleCat R`.
-/
@@ -18,6 +18,8 @@ is equivalent to the category of "native" bundled `R`-algebras.
Moreover, this equivalence is compatible with the forgetful functors to `ModuleCat R`.
-/
+suppress_compilation
+
set_option linter.uppercaseLean3 false
universe v u
@@ -10,12 +10,12 @@ import Mathlib.CategoryTheory.Monoidal.Mon_
#align_import category_theory.monoidal.internal.Module from "leanprover-community/mathlib"@"74403a3b2551b0970855e14ef5e8fd0d6af1bfc2"
/-!
-# `Mon_ (Module R) ≌ Algebra R`
+# `Mon_ (ModuleCat R) ≌ AlgebraCat R`
-The category of internal monoid objects in `Module R`
+The category of internal monoid objects in `ModuleCat R`
is equivalent to the category of "native" bundled `R`-algebras.
-Moreover, this equivalence is compatible with the forgetful functors to `Module R`.
+Moreover, this equivalence is compatible with the forgetful functors to `ModuleCat R`.
-/
set_option linter.uppercaseLean3 false
@@ -90,7 +90,7 @@ theorem algebraMap (A : Mon_ (ModuleCat.{u} R)) (r : R) : algebraMap R A.X r = A
rfl
#align Module.Mon_Module_equivalence_Algebra.algebra_map ModuleCat.MonModuleEquivalenceAlgebra.algebraMap
-/-- Converting a monoid object in `Module R` to a bundled algebra.
+/-- Converting a monoid object in `ModuleCat R` to a bundled algebra.
-/
@[simps!]
def functor : Mon_ (ModuleCat.{u} R) ⥤ AlgebraCat R where
@@ -103,7 +103,7 @@ def functor : Mon_ (ModuleCat.{u} R) ⥤ AlgebraCat R where
commutes' := fun r => LinearMap.congr_fun f.one_hom r }
#align Module.Mon_Module_equivalence_Algebra.functor ModuleCat.MonModuleEquivalenceAlgebra.functor
-/-- Converting a bundled algebra to a monoid object in `Module R`.
+/-- Converting a bundled algebra to a monoid object in `ModuleCat R`.
-/
@[simps]
def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
@@ -153,12 +153,12 @@ def inverseObj (A : AlgebraCat.{u} R) : Mon_ (ModuleCat.{u} R) where
simp only [LinearMap.mul'_apply, mul_assoc]
#align Module.Mon_Module_equivalence_Algebra.inverse_obj ModuleCat.MonModuleEquivalenceAlgebra.inverseObj
-/-- Converting a bundled algebra to a monoid object in `Module R`.
+/-- Converting a bundled algebra to a monoid object in `ModuleCat R`.
-/
@[simps]
def inverse : AlgebraCat.{u} R ⥤ Mon_ (ModuleCat.{u} R) where
obj := inverseObj
- map := @fun A B f =>
+ map f :=
{ hom := f.toLinearMap
one_hom := LinearMap.ext f.commutes
mul_hom := TensorProduct.ext <| LinearMap.ext₂ <| f.map_mul }
@@ -169,7 +169,7 @@ end MonModuleEquivalenceAlgebra
open MonModuleEquivalenceAlgebra
set_option maxHeartbeats 500000 in
-/-- The category of internal monoid objects in `Module R`
+/-- The category of internal monoid objects in `ModuleCat R`
is equivalent to the category of "native" bundled `R`-algebras.
-/
def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
@@ -223,8 +223,8 @@ def monModuleEquivalenceAlgebra : Mon_ (ModuleCat.{u} R) ≌ AlgebraCat R where
(by intros; rfl)
#align Module.Mon_Module_equivalence_Algebra ModuleCat.monModuleEquivalenceAlgebra
-/-- The equivalence `Mon_ (Module R) ≌ Algebra R`
-is naturally compatible with the forgetful functors to `Module R`.
+/-- The equivalence `Mon_ (ModuleCat R) ≌ AlgebraCat R`
+is naturally compatible with the forgetful functors to `ModuleCat R`.
-/
def monModuleEquivalenceAlgebraForget :
MonModuleEquivalenceAlgebra.functor ⋙ forget₂ (AlgebraCat.{u} R) (ModuleCat.{u} R) ≅
@@ -168,7 +168,7 @@ end MonModuleEquivalenceAlgebra
open MonModuleEquivalenceAlgebra
-set_option maxHeartbeats 400000 in
+set_option maxHeartbeats 500000 in
/-- The category of internal monoid objects in `Module R`
is equivalent to the category of "native" bundled `R`-algebras.
-/
@@ -2,16 +2,13 @@
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.internal.Module
-! leanprover-community/mathlib commit 74403a3b2551b0970855e14ef5e8fd0d6af1bfc2
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Algebra.Category.ModuleCat.Monoidal.Basic
import Mathlib.Algebra.Category.AlgebraCat.Basic
import Mathlib.CategoryTheory.Monoidal.Mon_
+#align_import category_theory.monoidal.internal.Module from "leanprover-community/mathlib"@"74403a3b2551b0970855e14ef5e8fd0d6af1bfc2"
+
/-!
# `Mon_ (Module R) ≌ Algebra R`
The unported dependencies are