Documentation

Mathlib.RingTheory.TensorProduct.MonoidAlgebra

Monoid algebras commute with base change #

In this file we show that monoid algebras are stable under pushout.

TODO #

Additivise

noncomputable def AddMonoidAlgebra.tensorEquiv.invFun {R : Type u_1} {M : Type u_2} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [AddCommMonoid M] :

Implementation detail.

Equations
    Instances For

      Implementation detail.

      Equations
        Instances For
          @[simp]
          theorem AddMonoidAlgebra.tensorEquiv.invFun_tmul (R : Type u_1) {M : Type u_2} (A : Type u_4) (B : Type u_5) [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [AddCommMonoid M] (a : A) (m : M) (b : B) :
          @[simp]
          theorem MonoidAlgebra.tensorEquiv.invFun_tmul {R : Type u_1} {M : Type u_2} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [CommMonoid M] (a : A) (m : M) (b : B) :
          noncomputable def MonoidAlgebra.tensorEquiv (R : Type u_1) {M : Type u_2} (A : Type u_4) (B : Type u_5) [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [CommMonoid M] :

          The base change of B[M] to an R-algebra A is isomorphic to (A ⊗[R] B)[M] as an A-algebra.

          Equations
            Instances For
              noncomputable def AddMonoidAlgebra.tensorEquiv (R : Type u_1) {M : Type u_2} (A : Type u_4) (B : Type u_5) [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [AddCommMonoid M] :

              The base change of B[M] to an R-algebra A is isomorphic to (A ⊗[R] B)[M] as an A-algebra.

              Equations
                Instances For
                  @[simp]
                  theorem MonoidAlgebra.tensorEquiv_tmul {R : Type u_1} {M : Type u_2} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [CommMonoid M] (a : A) (p : MonoidAlgebra B M) :
                  @[simp]
                  theorem MonoidAlgebra.tensorEquiv_symm_single {R : Type u_1} {M : Type u_2} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [CommMonoid M] (m : M) (a : A) (b : B) :
                  (tensorEquiv R A B).symm (single m (a ⊗ₜ[R] b)) = a ⊗ₜ[R] single m b
                  @[simp]
                  theorem AddMonoidAlgebra.tensorEquiv_symm_single {R : Type u_1} {M : Type u_2} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring A] [CommSemiring B] [Algebra R A] [Algebra R B] [AddCommMonoid M] (m : M) (a : A) (b : B) :
                  (tensorEquiv R A B).symm (single m (a ⊗ₜ[R] b)) = a ⊗ₜ[R] single m b
                  noncomputable def MonoidAlgebra.scalarTensorEquiv (R : Type u_1) {M : Type u_2} (A : Type u_4) [CommSemiring R] [CommSemiring A] [Algebra R A] [CommMonoid M] :

                  The base change of R[M] to an R-algebra A is isomorphic to A[M] as an A-algebra.

                  Equations
                    Instances For

                      The base change of R[M] to an R-algebra A is isomorphic to A[M] as an A-algebra.

                      Equations
                        Instances For
                          @[simp]
                          theorem MonoidAlgebra.scalarTensorEquiv_tmul {R : Type u_1} {M : Type u_2} {A : Type u_4} [CommSemiring R] [CommSemiring A] [Algebra R A] [CommMonoid M] (a : A) (p : MonoidAlgebra R M) :
                          @[simp]
                          theorem AddMonoidAlgebra.scalarTensorEquiv_tmul {R : Type u_1} {M : Type u_2} {A : Type u_4} [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] (a : A) (p : AddMonoidAlgebra R M) :
                          @[simp]
                          theorem MonoidAlgebra.scalarTensorEquiv_symm_single {R : Type u_1} {M : Type u_2} {A : Type u_4} [CommSemiring R] [CommSemiring A] [Algebra R A] [CommMonoid M] (m : M) (a : A) :
                          @[simp]
                          theorem AddMonoidAlgebra.scalarTensorEquiv_symm_single {R : Type u_1} {M : Type u_2} {A : Type u_4} [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] (m : M) (a : A) :
                          instance MonoidAlgebra.instIsPushout {R : Type u_1} {M : Type u_2} {S : Type u_3} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring S] [CommSemiring A] [CommSemiring B] [Algebra R S] [Algebra R A] [Algebra R B] [CommMonoid M] [Algebra S B] [Algebra A B] [IsScalarTower R A B] [IsScalarTower R S B] [Algebra.IsPushout R S A B] :
                          instance AddMonoidAlgebra.instIsPushout {R : Type u_1} {M : Type u_2} {S : Type u_3} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring S] [CommSemiring A] [CommSemiring B] [Algebra R S] [Algebra R A] [Algebra R B] [AddCommMonoid M] [Algebra S B] [Algebra A B] [IsScalarTower R A B] [IsScalarTower R S B] [Algebra.IsPushout R S A B] :
                          instance MonoidAlgebra.instIsPushout' {R : Type u_1} {M : Type u_2} {S : Type u_3} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring S] [CommSemiring A] [CommSemiring B] [Algebra R S] [Algebra R A] [Algebra R B] [CommMonoid M] [Algebra S B] [Algebra A B] [IsScalarTower R A B] [IsScalarTower R S B] [Algebra.IsPushout R A S B] :
                          instance AddMonoidAlgebra.instIsPushout' {R : Type u_1} {M : Type u_2} {S : Type u_3} {A : Type u_4} {B : Type u_5} [CommSemiring R] [CommSemiring S] [CommSemiring A] [CommSemiring B] [Algebra R S] [Algebra R A] [Algebra R B] [AddCommMonoid M] [Algebra S B] [Algebra A B] [IsScalarTower R A B] [IsScalarTower R S B] [Algebra.IsPushout R A S B] :