Unbundled submonoids #
This file defines unbundled multiplicative and additive submonoids is_submonoid
and
is_add_submonoid
. These are not the preferred way to talk about submonoids and should
not be used for any new projects. The preferred way in mathlib are the bundled
versions submonoid G
and add_submonoid G
.
Main definitions #
is_add_submonoid (S : set G)
: the predicate that S
is the underlying subset of an additive
submonoid of G
. The bundled variant add_subgroup G
should be used in preference to this.
is_submonoid (S : set G)
: the predicate that S
is the underlying subset of a submonoid
of G
. The bundled variant submonoid G
should be used in preference to this.
Tags #
subgroup, subgroups, is_subgroup
Tags #
submonoid, submonoids, is_submonoid
s
is an additive submonoid: a set containing 0 and closed under addition.
Note that this structure is deprecated, and the bundled variant add_submonoid A
should be
preferred.
s
is a submonoid: a set containing 1 and closed under multiplication.
Note that this structure is deprecated, and the bundled variant submonoid M
should be
preferred.
The intersection of two add_submonoid
s of an add_monoid
M
is
an add_submonoid
of M.
The intersection of two submonoids of a monoid M
is a submonoid of M
.
The intersection of an indexed set of submonoids of a monoid M
is a submonoid of M
.
The intersection of an indexed set of add_submonoid
s of an add_monoid
M
is
an add_submonoid
of M
.
The union of an indexed, directed, nonempty set
of add_submonoid
s of an add_monoid
M
is an add_submonoid
of M
.
The union of an indexed, directed, nonempty set of submonoids of a monoid M
is a submonoid
of M
.
The set of natural number multiples 0, x, 2x, ...
of an element x
of an add_monoid
.
1 is in the set of natural number powers of an element of a monoid.
0 is in the set of natural number multiples of an element of an add_monoid
.
An element of an add_monoid
is in the set of that element's natural number multiples.
An element of a monoid is in the set of that element's natural number powers.
The set of natural number multiples of an element of an add_monoid
is closed under addition.
The set of natural number multiples of an element of
an add_monoid
M
is an add_submonoid
of M
.
The set of natural number powers of an element of a monoid M
is a submonoid of M
.
A monoid is a submonoid of itself.
An add_monoid
is an add_submonoid
of itself.
The preimage of an add_submonoid
under an add_monoid
hom is
an add_submonoid
of the domain.
The preimage of a submonoid under a monoid hom is a submonoid of the domain.
The image of a submonoid under a monoid hom is a submonoid of the codomain.
The image of an add_submonoid
under an add_monoid
hom is an add_submonoid
of the codomain.
The image of a monoid hom is a submonoid of the codomain.
The image of an add_monoid
hom is an add_submonoid
of the codomain.
An add_submonoid
is closed under multiplication by naturals.
Submonoids are closed under natural powers.
The set of natural number powers of an element of a submonoid is a subset of the submonoid.
The set of natural number multiples of an element
of an add_submonoid
is a subset of the add_submonoid
.
The sum of a list of elements of an add_submonoid
is an element of the
add_submonoid
.
The product of a list of elements of a submonoid is an element of the submonoid.
The product of a multiset of elements of a submonoid of a comm_monoid
is an element of
the submonoid.
The sum of a multiset of elements of an add_submonoid
of an add_comm_monoid
is an element of the add_submonoid
.
The sum of elements of an add_submonoid
of an add_comm_monoid
indexed by
a finset
is an element of the add_submonoid
.
The product of elements of a submonoid of a comm_monoid
indexed by a finset
is an element
of the submonoid.
- basic : ∀ {A : Type u_2} [_inst_2 : add_monoid A] {s : set A} {a : A}, a ∈ s → add_monoid.in_closure s a
- zero : ∀ {A : Type u_2} [_inst_2 : add_monoid A] {s : set A}, add_monoid.in_closure s 0
- add : ∀ {A : Type u_2} [_inst_2 : add_monoid A] {s : set A} {a b : A}, add_monoid.in_closure s a → add_monoid.in_closure s b → add_monoid.in_closure s (a + b)
The inductively defined membership predicate for the submonoid generated by a subset of a monoid.
- basic : ∀ {M : Type u_1} [_inst_1 : monoid M] {s : set M} {a : M}, a ∈ s → monoid.in_closure s a
- one : ∀ {M : Type u_1} [_inst_1 : monoid M] {s : set M}, monoid.in_closure s 1
- mul : ∀ {M : Type u_1} [_inst_1 : monoid M] {s : set M} {a b : M}, monoid.in_closure s a → monoid.in_closure s b → monoid.in_closure s (a * b)
The inductively defined membership predicate for the submonoid
generated by a subset of an
monoid.
The inductively defined add_submonoid
genrated by a subset of an add_monoid
.
Equations
- add_monoid.closure s = {a : M | add_monoid.in_closure s a}
The inductively defined submonoid generated by a subset of a monoid.
Equations
- monoid.closure s = {a : M | monoid.in_closure s a}
A subset of an add_monoid
is contained in the add_submonoid
it generates.
A subset of a monoid is contained in the submonoid it generates.
The submonoid generated by a set is contained in any submonoid that contains the set.
The add_submonoid
generated by a set is contained in any add_submonoid
that
contains the set.
Given subsets t
and s
of a monoid M
, if s ⊆ t
, the submonoid of M
generated by s
is
contained in the submonoid generated by t
.
Given subsets t
and s
of an add_monoid M
, if s ⊆ t
, the add_submonoid
of M
generated by s
is contained in the add_submonoid
generated by t
.
The submonoid generated by an element of a monoid equals the set of natural number powers of the element.
The add_submonoid
generated by an element of an add_monoid
equals the set of
natural number multiples of the element.
The image under a monoid hom of the submonoid generated by a set equals the submonoid generated by the image of the set under the monoid hom.
The image under an add_monoid
hom of the add_submonoid
generated by a set equals
the add_submonoid
generated by the image of the set under the add_monoid
hom.
Given an element a
of the submonoid of a monoid M
generated by a set s
, there exists
a list of elements of s
whose product is a
.
Given an element a
of the add_submonoid
of an add_monoid M
generated by
a set s
, there exists a list of elements of s
whose sum is a
.
Given sets s, t
of a commutative monoid M
, x ∈ M
is in the submonoid of M
generated by
s ∪ t
iff there exists an element of the submonoid generated by s
and an element of the
submonoid generated by t
whose product is x
.
Given sets s, t
of a commutative add_monoid M
, x ∈ M
is in the add_submonoid
of M
generated by s ∪ t
iff there exists an element of the add_submonoid
generated by s
and an element of the add_submonoid
generated by t
whose sum is x
.
Create a bundled additive submonoid from a set s
and [is_add_submonoid s]
.
Create a bundled submonoid from a set s
and [is_submonoid s]
.