Algebra structure on monoid algebras #
Multiplicative monoids #
Non-unital, non-associative algebra structure #
A non-unital R-algebra homomorphism from R[M] is uniquely defined by its
values on the monomials single a 1.
A non-unital R-algebra homomorphism from R[M] is uniquely defined by its
values on the monomials single a 1.
See note [partially-applied ext lemmas].
The functor M ↦ R[M], from the category of magmas to the category of non-unital,
non-associative algebras over R is adjoint to the forgetful functor in the other direction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Algebra structure #
The instance Algebra R A[M] whenever we have Algebra R A.
In particular this provides the instance Algebra R R[M].
Equations
- MonoidAlgebra.algebra = { toSMul := MonoidAlgebra.smulZeroClass.toSMul, algebraMap := MonoidAlgebra.singleOneRingHom.comp (algebraMap R A), commutes' := ⋯, smul_def' := ⋯ }
The instance Algebra R R[M] whenever we have Algebra R R.
In particular this provides the instance Algebra R R[M].
Equations
- AddMonoidAlgebra.algebra = { toSMul := AddMonoidAlgebra.smulZeroClass.toSMul, algebraMap := AddMonoidAlgebra.singleZeroRingHom.comp (algebraMap R A), commutes' := ⋯, smul_def' := ⋯ }
MonoidAlgebra.single 1 as an AlgHom
Equations
- MonoidAlgebra.singleOneAlgHom = { toRingHom := MonoidAlgebra.singleOneRingHom, commutes' := ⋯ }
Instances For
AddMonoidAlgebra.single 0 as an AlgHom
Equations
- AddMonoidAlgebra.singleZeroAlgHom = { toRingHom := AddMonoidAlgebra.singleZeroRingHom, commutes' := ⋯ }
Instances For
The trivial monoid algebra is the base ring.
Equations
- MonoidAlgebra.uniqueAlgEquiv R M = { toEquiv := (MonoidAlgebra.uniqueRingEquiv M).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
The trivial monoid algebra is the base ring.
Equations
- AddMonoidAlgebra.uniqueAlgEquiv R M = { toEquiv := (AddMonoidAlgebra.uniqueRingEquiv M).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
A product monoid algebra is a nested monoid algebra.
Equations
- MonoidAlgebra.curryAlgEquiv R = { toEquiv := MonoidAlgebra.curryRingEquiv.toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
A product monoid algebra is a nested monoid algebra.
Equations
- AddMonoidAlgebra.curryAlgEquiv R = { toEquiv := AddMonoidAlgebra.curryRingEquiv.toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
liftNCRingHom as an AlgHom, for when f is an AlgHom
Equations
- MonoidAlgebra.liftNCAlgHom f g h_comm = { toRingHom := MonoidAlgebra.liftNCRingHom (↑f) g h_comm, commutes' := ⋯ }
Instances For
A R-algebra homomorphism from R[M] is uniquely defined by its
values on the functions single a 1.
A R-algebra homomorphism from R[M] is uniquely defined by its
values on the functions single a 1.
Any monoid homomorphism M →* A can be lifted to an algebra homomorphism R[M] →ₐ[R] A.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Decomposition of a R-algebra homomorphism from R[M] by
its values on F (single a 1).
If f : M → N is a homomorphism between two magmas, then MonoidAlgebra.mapDomain f
is a non-unital algebra homomorphism between their magma algebras.
Equations
- MonoidAlgebra.mapDomainNonUnitalAlgHom R A f = { toFun := (MonoidAlgebra.mapDomainNonUnitalRingHom A f).toFun, map_smul' := ⋯, map_zero' := ⋯, map_add' := ⋯, map_mul' := ⋯ }
Instances For
If f : M → N is a homomorphism between two additive magmas,
then AddMonoidAlgebra.mapDomain f is a non-unital algebra homomorphism
between their additive magma algebras.
Equations
- AddMonoidAlgebra.mapDomainNonUnitalAlgHom R A f = { toFun := (AddMonoidAlgebra.mapDomainNonUnitalRingHom A f).toFun, map_smul' := ⋯, map_zero' := ⋯, map_add' := ⋯, map_mul' := ⋯ }
Instances For
If f : M → N is a monoid homomorphism, then MonoidAlgebra.mapDomain f is an algebra
homomorphism between their monoid algebras.
Equations
- MonoidAlgebra.mapDomainAlgHom R A f = { toRingHom := MonoidAlgebra.mapDomainRingHom A f, commutes' := ⋯ }
Instances For
If f : M → N is an additive monoid homomorphism, then MonoidAlgebra.mapDomain f is an
algebra homomorphism between their additive monoid algebras.
Equations
- AddMonoidAlgebra.mapDomainAlgHom R A f = { toRingHom := AddMonoidAlgebra.mapDomainRingHom A f, commutes' := ⋯ }
Instances For
If e : M ≃* N is a multiplicative equivalence between two monoids, then
MonoidAlgebra.domCongr e is an algebra equivalence between their monoid algebras.
Equations
- MonoidAlgebra.domCongr R A e = { toEquiv := (MonoidAlgebra.mapDomainRingEquiv A e).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
If e : M ≃+ N is an additive equivalence between two additive monoids, then
AddMonoidAlgebra.domCongr e is an algebra equivalence between their additive monoid algebras.
Equations
- AddMonoidAlgebra.domCongr R A e = { toEquiv := (AddMonoidAlgebra.mapDomainRingEquiv A e).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
Nested monoid algebras can be taken in an arbitrary order.
Equations
Instances For
Nested monoid algebras can be taken in an arbitrary order.
Equations
Instances For
The algebra homomorphism of monoid algebras induced by a homomorphism of the base algebras.
Equations
- MonoidAlgebra.mapRangeAlgHom M f = { toRingHom := MonoidAlgebra.mapRangeRingHom M ↑f, commutes' := ⋯ }
Instances For
The algebra homomorphism of additive monoid algebras induced by a homomorphism of the base algebras.
Equations
- AddMonoidAlgebra.mapRangeAlgHom M f = { toRingHom := AddMonoidAlgebra.mapRangeRingHom M ↑f, commutes' := ⋯ }
Instances For
The algebra isomorphism of monoid algebras induced by an isomorphism of the base algebras.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The algebra isomorphism of additive monoid algebras induced by an isomorphism of the base algebras.
Equations
- One or more equations did not get rendered due to their size.
Instances For
When V is a R[M]-module, multiplication by a group element g is a R-linear map.
Equations
- MonoidAlgebra.GroupSMul.linearMap R V g = { toFun := fun (v : V) => MonoidAlgebra.single g 1 • v, map_add' := ⋯, map_smul' := ⋯ }
Instances For
Build a R[M]-linear map from a R-linear map and evidence that it is M-equivariant.
Equations
- MonoidAlgebra.equivariantOfLinearOfComm f h = { toFun := ⇑f, map_add' := ⋯, map_smul' := ⋯ }
Instances For
If S is an R-algebra, then S[M] is a R[M] algebra.
Warning: This produces a diamond for Algebra R[M] S[M][M] and another one for Algebra R[M] R[M].
That's why it is not a global instance.
Equations
Instances For
If S is an R-algebra, then S[M] is an R[M]-algebra.
Warning: This produces a diamond for Algebra R[M] S[M][M] and another one for Algebra R[M] R[M].
That's why it is not a global instance.
Equations
Instances For
Non-unital, non-associative algebra structure #
See note [partially-applied ext lemmas].
The functor M ↦ R[M], from the category of magmas to the category of
non-unital, non-associative algebras over R is adjoint to the forgetful functor in the other
direction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Algebra structure #
liftNCRingHom as an AlgHom, for when f is an AlgHom
Equations
- AddMonoidAlgebra.liftNCAlgHom f g h_comm = { toRingHom := AddMonoidAlgebra.liftNCRingHom (↑f) g h_comm, commutes' := ⋯ }
Instances For
Any monoid homomorphism M →* A can be lifted to an algebra homomorphism
R[M] →ₐ[R] A.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Decomposition of a R-algebra homomorphism from R[M] by
its values on F (single a 1).
The algebra equivalence between AddMonoidAlgebra and MonoidAlgebra in terms of
Multiplicative.
Equations
- AddMonoidAlgebra.toMultiplicativeAlgEquiv A M = { toEquiv := (AddMonoidAlgebra.toMultiplicative A M).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
The algebra equivalence between MonoidAlgebra and AddMonoidAlgebra in terms of
Additive.
Equations
- MonoidAlgebra.toAdditiveAlgEquiv A M = { toEquiv := (MonoidAlgebra.toAdditive A M).toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }