Pointwise instances on Subsemiring
s #
This file provides the action Subsemiring.PointwiseMulAction
which matches the action of
MulActionSet
.
This actions is available in the Pointwise
locale.
Implementation notes #
This file is almost identical to the file Mathlib.Algebra.Group.Submonoid.Pointwise
. Where
possible, try to keep them in sync.
def
Subsemiring.pointwiseMulAction
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
:
MulAction M (Subsemiring R)
The action on a subsemiring corresponding to applying the action to every element.
This is available as an instance in the Pointwise
locale.
Equations
- Subsemiring.pointwiseMulAction = MulAction.mk ⋯ ⋯
Instances For
theorem
Subsemiring.pointwise_smul_def
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(S : Subsemiring R)
:
a • S = Subsemiring.map (MulSemiringAction.toRingHom M R a) S
@[simp]
theorem
Subsemiring.coe_pointwise_smul
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(m : M)
(S : Subsemiring R)
:
@[simp]
theorem
Subsemiring.pointwise_smul_toAddSubmonoid
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(m : M)
(S : Subsemiring R)
:
theorem
Subsemiring.smul_mem_pointwise_smul
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(m : M)
(r : R)
(S : Subsemiring R)
:
instance
Subsemiring.instCovariantClassHSMulLe
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
:
CovariantClass M (Subsemiring R) HSMul.hSMul LE.le
theorem
Subsemiring.mem_smul_pointwise_iff_exists
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(m : M)
(r : R)
(S : Subsemiring R)
:
theorem
Subsemiring.smul_sup
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(a : M)
(S T : Subsemiring R)
:
theorem
Subsemiring.smul_closure
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
(a : M)
(s : Set R)
:
a • Subsemiring.closure s = Subsemiring.closure (a • s)
instance
Subsemiring.pointwise_central_scalar
{M : Type u_1}
{R : Type u_2}
[Monoid M]
[Semiring R]
[MulSemiringAction M R]
[MulSemiringAction Mᵐᵒᵖ R]
[IsCentralScalar M R]
:
IsCentralScalar M (Subsemiring R)
@[simp]
theorem
Subsemiring.smul_mem_pointwise_smul_iff
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S : Subsemiring R}
{x : R}
:
theorem
Subsemiring.mem_pointwise_smul_iff_inv_smul_mem
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S : Subsemiring R}
{x : R}
:
theorem
Subsemiring.mem_inv_pointwise_smul_iff
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S : Subsemiring R}
{x : R}
:
@[simp]
theorem
Subsemiring.pointwise_smul_le_pointwise_smul_iff
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S T : Subsemiring R}
:
theorem
Subsemiring.pointwise_smul_subset_iff
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S T : Subsemiring R}
:
theorem
Subsemiring.subset_pointwise_smul_iff
{M : Type u_1}
{R : Type u_2}
[Group M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
{S T : Subsemiring R}
:
TODO: add equiv_smul
like we have for subgroup.
@[simp]
theorem
Subsemiring.smul_mem_pointwise_smul_iff₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
(S : Subsemiring R)
(x : R)
:
theorem
Subsemiring.mem_pointwise_smul_iff_inv_smul_mem₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
(S : Subsemiring R)
(x : R)
:
theorem
Subsemiring.mem_inv_pointwise_smul_iff₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
(S : Subsemiring R)
(x : R)
:
@[simp]
theorem
Subsemiring.pointwise_smul_le_pointwise_smul_iff₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
{S T : Subsemiring R}
:
theorem
Subsemiring.pointwise_smul_le_iff₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
{S T : Subsemiring R}
:
theorem
Subsemiring.le_pointwise_smul_iff₀
{M : Type u_1}
{R : Type u_2}
[GroupWithZero M]
[Semiring R]
[MulSemiringAction M R]
{a : M}
(ha : a ≠ 0)
{S T : Subsemiring R}
: