Pointwise instances on Subgroup
and AddSubgroup
s #
This file provides the actions
which matches the action of Set.mulActionSet
.
These actions are available in the Pointwise
locale.
Implementation notes #
The pointwise section of this file is almost identical to
the file Mathlib.Algebra.Group.Submonoid.Pointwise
.
Where possible, try to keep them in sync.
For additive subgroups generated by a single element, see the simpler
zsmul_induction_left
.
For subgroups generated by a single element, see the simpler zpow_induction_left
.
For additive subgroups generated by a single element, see the simpler
zsmul_induction_right
.
For subgroups generated by a single element, see the simpler zpow_induction_right
.
An induction principle for additive closure membership. If p
holds for 0
and all
elements of k
and their negation, and is preserved under addition, then p
holds for all
elements of the additive closure of k
.
An induction principle for closure membership. If p
holds for 1
and all elements of
k
and their inverse, and is preserved under multiplication, then p
holds for all elements of
the closure of k
.
An induction principle for elements of ⨆ i, S i
.
If C
holds for 0
and all elements of S i
for all i
, and is preserved under addition,
then it holds for all elements of the supremum of S
.
An induction principle for elements of ⨆ i, S i
.
If C
holds for 1
and all elements of S i
for all i
, and is preserved under multiplication,
then it holds for all elements of the supremum of S
.
A dependent version of AddSubgroup.iSup_induction
.
A dependent version of Subgroup.iSup_induction
.
The carrier of H ⊔ N
is just ↑H + ↑N
(pointwise set addition)
when N
is normal.
The carrier of N ⊔ H
is just ↑N + ↑H
(pointwise set addition)
when N
is normal.
Equations
- ⋯ = ⋯
Pointwise action #
The action on a subgroup corresponding to applying the action to every element.
This is available as an instance in the Pointwise
locale.
Equations
- Subgroup.pointwiseMulAction = MulAction.mk ⋯ ⋯
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
Applying a MulDistribMulAction
results in an isomorphic subgroup
Equations
- Subgroup.equivSMul a H = (MulDistribMulAction.toMulEquiv G a).subgroupMap H
Instances For
The action on an additive subgroup corresponding to applying the action to every element.
This is available as an instance in the Pointwise
locale.
Equations
- AddSubgroup.pointwiseMulAction = MulAction.mk ⋯ ⋯
Instances For
Equations
- ⋯ = ⋯
For additive subgroups S
and T
of a ring, the product of S
and T
as submonoids
is automatically a subgroup, which we define as the product of S
and T
as subgroups.
Equations
- AddSubgroup.mul = { mul := fun (M N : AddSubgroup R) => let __spread.0 := M.toAddSubmonoid * N.toAddSubmonoid; { toAddSubmonoid := __spread.0, neg_mem' := ⋯ } }