Equivariant homomorphisms #
Main definitions #
MulActionHom M X Y
, the type of equivariant functions fromX
toY
, whereM
is a monoid that acts on the typesX
andY
.DistribMulActionHom M A B
, the type of equivariant additive monoid homomorphisms fromA
toB
, whereM
is a monoid that acts on the additive monoidsA
andB
.MulSemiringActionHom M R S
, the type of equivariant ring homomorphisms fromR
toS
, whereM
is a monoid that acts on the ringsR
andS
.
The above types have corresponding classes:
SMulHomClass F M X Y
states thatF
is a type of bundledX → Y
homs preserving scalar multiplication byM
DistribMulActionHomClass F M A B
states thatF
is a type of bundledA → B
homs preserving the additive monoid structure and scalar multiplication byM
MulSemiringActionHomClass F M R S
states thatF
is a type of bundledR → S
homs preserving the ring structure and scalar multiplication byM
Notations #
X →[M] Y
isMulActionHom M X Y
.A →+[M] B
isDistribMulActionHom M A B
.R →+*[M] S
isMulSemiringActionHom M R S
.
Equivariant functions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
SMulHomClass F M X Y
states that F
is a type of morphisms preserving
scalar multiplication by M
.
You should extend this class when you extend MulActionHom
.
The proposition that the function preserves the action.
Instances
Turn an element of a type F
satisfying SMulHomClass F M X Y
into an actual
MulActionHom
. This is declared as the default coercion from F
to MulActionHom M X Y
.
Equations
- ↑f = { toFun := ⇑f, map_smul' := ⋯ }
Instances For
Any type satisfying SMulHomClass
can be cast into MulActionHom
via
SMulHomClass.toMulActionHom
.
Equations
- MulActionHom.instCoeTCMulActionHom = { coe := SMulHomClass.toMulActionHom }
If Y/X/M forms a scalar tower, any map X → Y preserving X-action also preserves M-action.
The identity map as an equivariant map.
Equations
- MulActionHom.id M' = { toFun := id, map_smul' := ⋯ }
Instances For
The inverse of a bijective equivariant map is equivariant.
Equations
- MulActionHom.inverse f g h₁ h₂ = { toFun := g, map_smul' := ⋯ }
Instances For
If actions of M
and N
on α
commute, then for c : M
, (c • · : α → α)
is an N
-action
homomorphism.
Equations
- SMulCommClass.toMulActionHom N α c = { toFun := fun (x : α) => c • x, map_smul' := ⋯ }
Instances For
Equivariant additive monoid homomorphisms.
- toFun : A → B
- map_zero' : self.toFun 0 = 0
The proposition that the function preserves 0
The proposition that the function preserves addition
Instances For
Reinterpret an equivariant additive monoid homomorphism as an additive monoid homomorphism.
Equations
- DistribMulActionHom.toAddMonoidHom self = { toZeroHom := { toFun := self.toFun, map_zero' := ⋯ }, map_add' := ⋯ }
Instances For
Equivariant additive monoid homomorphisms.
Equations
- One or more equations did not get rendered due to their size.
Instances For
DistribMulActionHomClass F M A B
states that F
is a type of morphisms preserving
the additive monoid structure and scalar multiplication by M
.
You should extend this class when you extend DistribMulActionHom
.
Instances
Equations
- DistribMulActionHom.instFunLikeDistribMulActionHom M A B = { coe := fun (m : A →+[M] B) => m.toFun, coe_injective' := ⋯ }
Equations
- ⋯ = ⋯
Turn an element of a type F
satisfying SMulHomClass F M X Y
into an actual
MulActionHom
. This is declared as the default coercion from F
to MulActionHom M X Y
.
Equations
- ↑f = let __src := ↑f; let __src_1 := ↑f; { toMulActionHom := { toFun := __src.toFun, map_smul' := ⋯ }, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Any type satisfying SMulHomClass
can be cast into MulActionHom
via
SMulHomClass.toMulActionHom
.
Equations
- DistribMulActionHom.instCoeTCDistribMulActionHom = { coe := DistribMulActionHomClass.toDistribMulActionHom }
The identity map as an equivariant additive monoid homomorphism.
Equations
- DistribMulActionHom.id M = { toMulActionHom := MulActionHom.id M, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Equations
- DistribMulActionHom.instZeroDistribMulActionHom = { zero := let __src := 0; { toMulActionHom := { toFun := __src.toFun, map_smul' := ⋯ }, map_zero' := ⋯, map_add' := ⋯ } }
Equations
- DistribMulActionHom.instOneDistribMulActionHom = { one := DistribMulActionHom.id M }
Equations
- DistribMulActionHom.instInhabitedDistribMulActionHom = { default := 0 }
Composition of two equivariant additive monoid homomorphisms.
Equations
- DistribMulActionHom.comp g f = let __src := MulActionHom.comp ↑g ↑f; let __src_1 := AddMonoidHom.comp ↑g ↑f; { toMulActionHom := __src, map_zero' := ⋯, map_add' := ⋯ }
Instances For
The inverse of a bijective DistribMulActionHom
is a DistribMulActionHom
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If DistribMulAction
of M
and N
on A
commute, then for each c : M
, (c • ·)
is an
N
-action additive homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equivariant ring homomorphisms.
- toFun : R → S
- map_zero' : self.toFun 0 = 0
- map_one' : self.toFun 1 = 1
The proposition that the function preserves 1
The proposition that the function preserves multiplication
Instances For
Reinterpret an equivariant ring homomorphism as a ring homomorphism.
Equations
- MulSemiringActionHom.toRingHom self = { toMonoidHom := { toOneHom := { toFun := self.toFun, map_one' := ⋯ }, map_mul' := ⋯ }, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Equivariant ring homomorphisms.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MulSemiringActionHomClass F M R S
states that F
is a type of morphisms preserving
the ring structure and scalar multiplication by M
.
You should extend this class when you extend MulSemiringActionHom
.
Instances
Equations
- MulSemiringActionHom.instFunLikeMulSemiringActionHom M R S = { coe := fun (m : R →+*[M] S) => m.toFun, coe_injective' := ⋯ }
Equations
- ⋯ = ⋯
Turn an element of a type F
satisfying MulSemiringActionHomClass F M R S
into an actual
MulSemiringActionHom
. This is declared as the default coercion from F
to
MulSemiringActionHom M X Y
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Any type satisfying MulSemiringActionHomClass
can be cast into MulSemiringActionHom
via
MulSemiringActionHomClass.toMulSemiringActionHom
.
Equations
- MulSemiringActionHom.instCoeTCMulSemiringActionHom = { coe := MulSemiringActionHomClass.toMulSemiringActionHom }
The identity map as an equivariant ring homomorphism.
Equations
- MulSemiringActionHom.id M = { toDistribMulActionHom := DistribMulActionHom.id M, map_one' := ⋯, map_mul' := ⋯ }
Instances For
Composition of two equivariant additive monoid homomorphisms.
Equations
- MulSemiringActionHom.comp g f = let __src := DistribMulActionHom.comp ↑g ↑f; let __src_1 := RingHom.comp ↑g ↑f; { toDistribMulActionHom := __src, map_one' := ⋯, map_mul' := ⋯ }