Additional lemmas about monoid and group homomorphisms #
Negation on a commutative additive group, considered as an additive monoid homomorphism.
Equations
- negAddMonoidHom = { toZeroHom := { toFun := Neg.neg, map_zero' := ⋯ }, map_add' := ⋯ }
Instances For
Inversion on a commutative group, considered as a monoid homomorphism.
Equations
- invMonoidHom = { toOneHom := { toFun := Inv.inv, map_one' := ⋯ }, map_mul' := ⋯ }
Instances For
Given two additive morphisms f
, g
to an additive commutative semigroup,
f + g
is the additive morphism sending x
to f x + g x
.
Given two mul morphisms f
, g
to a commutative semigroup, f * g
is the mul morphism
sending x
to f x * g x
.
A homomorphism from an additive group to an additive monoid is injective iff
its kernel is trivial. For the iff statement on the triviality of the kernel,
see injective_iff_map_eq_zero'
.
A homomorphism from a group to a monoid is injective iff its kernel is trivial.
For the iff statement on the triviality of the kernel, see injective_iff_map_eq_one'
.
A homomorphism from an additive group to an additive monoid is injective iff its
kernel is trivial, stated as an iff on the triviality of the kernel. For the implication, see
injective_iff_map_eq_zero
.
A homomorphism from a group to a monoid is injective iff its kernel is trivial,
stated as an iff on the triviality of the kernel.
For the implication, see injective_iff_map_eq_one
.
Makes an additive group homomorphism from a proof that the map preserves
the operation fun a b => a + -b
. See also AddMonoidHom.ofMapSub
for a version using
fun a b => a - b
.
Equations
- AddMonoidHom.ofMapAddNeg f map_div = AddMonoidHom.mk' f ⋯
Instances For
Makes a group homomorphism from a proof that the map preserves right division
fun x y => x * y⁻¹
. See also MonoidHom.of_map_div
for a version using fun x y => x / y
.
Equations
- MonoidHom.ofMapMulInv f map_div = MonoidHom.mk' f ⋯
Instances For
Define a morphism of additive groups given a map which respects ratios.
Equations
- MonoidHom.ofMapDiv f hf = MonoidHom.ofMapMulInv f ⋯
Instances For
Given two additive monoid morphisms f
, g
to an additive commutative monoid,
f + g
is the additive monoid morphism sending x
to f x + g x
.
Given two monoid morphisms f
, g
to a commutative monoid, f * g
is the monoid morphism
sending x
to f x * g x
.
If f
is an additive monoid homomorphism to an additive commutative group,
then -f
is the homomorphism sending x
to -(f x)
.
Equations
- AddMonoidHom.instNegAddMonoidHomToAddZeroClassToAddMonoidToSubNegAddMonoidToAddGroup = { neg := fun (f : M →+ G) => AddMonoidHom.mk' (fun (g : M) => -f g) ⋯ }
If f
is a monoid homomorphism to a commutative group, then f⁻¹
is the homomorphism sending
x
to (f x)⁻¹
.
Equations
- MonoidHom.instInvMonoidHomToMulOneClassToMonoidToDivInvMonoidToGroup = { inv := fun (f : M →* G) => MonoidHom.mk' (fun (g : M) => (f g)⁻¹) ⋯ }
If f
and g
are monoid homomorphisms to an additive commutative group,
then f - g
is the homomorphism sending x
to (f x) - (g x)
.
Equations
- AddMonoidHom.instSubAddMonoidHomToAddZeroClassToAddMonoidToSubNegAddMonoidToAddGroup = { sub := fun (f g : M →+ G) => AddMonoidHom.mk' (fun (x : M) => f x - g x) ⋯ }
If f
and g
are monoid homomorphisms to a commutative group, then f / g
is the homomorphism
sending x
to (f x) / (g x)
.
Equations
- MonoidHom.instDivMonoidHomToMulOneClassToMonoidToDivInvMonoidToGroup = { div := fun (f g : M →* G) => MonoidHom.mk' (fun (x : M) => f x / g x) ⋯ }