Group action on rings #
This file defines the typeclass of monoid acting on semirings MulSemiringAction M R
,
and the corresponding typeclass of invariant subrings.
Note that Algebra
does not satisfy the axioms of MulSemiringAction
.
Implementation notes #
There is no separate typeclass for group acting on rings, group acting on fields, etc.
They are all grouped under MulSemiringAction
.
Tags #
group action, invariant subring
Typeclass for multiplicative actions by monoids on semirings.
This combines DistribMulAction
with MulDistribMulAction
.
- smul : M → R → R
Multipliying
1
by a scalar gives1
Scalar multiplication distributes across multiplication
Instances
Each element of the monoid defines a semiring homomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The tautological action by R →+* R
on R
.
This generalizes Function.End.applyMulAction
.
Equations
- RingHom.applyMulSemiringAction R = MulSemiringAction.mk (_ : ∀ (f : R →+* R), f 1 = 1) (_ : ∀ (f : R →+* R) (x y : R), f (x * y) = f x * f y)
RingHom.applyMulSemiringAction
is faithful.
Equations
- (_ : FaithfulSMul (R →+* R) R) = (_ : FaithfulSMul (R →+* R) R)
Each element of the group defines a semiring isomorphism.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Compose a MulSemiringAction
with a MonoidHom
, with action f r' • m
.
See note [reducible non-instances].
Equations
- One or more equations did not get rendered due to their size.
Instances For
Note that smul_inv'
refers to the group case, and smul_inv
has an additional inverse
on x
.