category_theory.monoidal.internal.ModuleMathlib.CategoryTheory.Monoidal.Internal.Module

This file has been ported!

Changes since the initial port

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.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(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)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -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"
Diff
@@ -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)
Diff
@@ -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"
 
Diff
@@ -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`
 
Diff
@@ -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.
 
Diff
@@ -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
 
Diff
@@ -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]
Diff
@@ -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`
Diff
@@ -28,7 +28,7 @@ open CategoryTheory
 
 open LinearMap
 
-open TensorProduct
+open scoped TensorProduct
 
 attribute [local ext] TensorProduct.ext
 
Diff
@@ -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`
Diff
@@ -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
Diff
@@ -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_
 
Diff
@@ -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

Changes in mathlib4

mathlib3
mathlib4
feat: MulActionHom in the semilinear style (#6057)

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 φ-equivariant
  • DistribMulActionHomClass F φ A B states that F is a type of bundled A → B homs preserving the additive monoid structure and φ-equivariant
  • SMulSemiringHomClass F φ R S states that F is a type of bundled R → S homs preserving the ring structure and φ-equivariant

Notation

We 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.

Diff
@@ -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
 
chore: move Mathlib to v4.7.0-rc1 (#11162)

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>

Diff
@@ -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 => ?_
style: reduce spacing variation in "porting note" comments (#10886)

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.

Diff
@@ -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 } })
refactor(CategoryTheory/Monoidal/Braided): use monoidalComp in the proofs (#10078)
Diff
@@ -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]
chore: golfing in categories of algebraic objects (#10114)

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -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
Revert "chore: revert #7703 (#7710)"

This reverts commit f3695eb2.

Diff
@@ -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`.
 -/
chore: revert #7703 (#7710)

This reverts commit 26eb2b0a.

Diff
@@ -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`.
 -/
chore: bump toolchain to v4.2.0-rc2 (#7703)

This includes all the changes from #7606.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -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`.
 -/
feat: use suppress_compilation in tensor products (#7504)

More principled version of #7281.

Diff
@@ -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
chore: tidy various files (#7017)
Diff
@@ -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) ≅
chore(linear_algebra/tensor_product): forward-port leanprover-community/mathlib#19143 (#6094)
Diff
@@ -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.
 -/
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -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`
 
feat: port CategoryTheory.Monoidal.Internal.Module (#5725)

Co-authored-by: Moritz Firsching <firsching@google.com> Co-authored-by: Jujian Zhang <jujian.zhang1998@outlook.com>

Dependencies 8 + 584

585 files ported (98.7%)
228292 lines ported (98.7%)
Show graph

The unported dependencies are