Submonoids: membership criteria #
In this file we prove various facts about membership in a submonoid:
pow_mem,nsmul_mem: ifx ∈ SwhereSis a multiplicative (resp., additive) submonoid andnis a natural number, thenx^n(resp.,n • x) belongs toS;mem_iSup_of_directed,coe_iSup_of_directed,mem_sSup_of_directedOn,coe_sSup_of_directedOn: the supremum of a directed collection of submonoid is their union.sup_eq_range,mem_sup: supremum of two submonoidsS,Tof a commutative monoid is the set of products;closure_singleton_eq,mem_closure_singleton,mem_closure_pair: the multiplicative (resp., additive) closure of{x}consists of powers (resp., natural multiples) ofx, and a similar result holds for the closure of{x, y}.
Tags #
submonoid, submonoids
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.
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.
A dependent version of Submonoid.iSup_induction.
A dependent version of AddSubmonoid.iSup_induction.
The submonoid generated by an element.
Equations
- Submonoid.powers n = (MonoidHom.mrange ((powersHom M) n)).copy (Set.range fun (x : ℕ) => n ^ x) ⋯
Equations
- Submonoid.decidableMemPowers = Classical.decPred fun (x : M) => x ∈ Submonoid.powers a
Equations
Exponentiation map from natural numbers to powers.
Equations
- Submonoid.pow n m = ((powersHom M) n).mrangeRestrict (Multiplicative.ofAdd m)
Logarithms from powers to natural numbers.
Equations
- Submonoid.log p = Nat.find ⋯
The exponentiation map is an isomorphism from the additive monoid on natural numbers to powers when it is injective. The inverse is given by the logarithms.
Equations
- One or more equations did not get rendered due to their size.
The additive submonoid generated by an element.
Equations
- AddSubmonoid.multiples x = (AddMonoidHom.mrange ((multiplesHom A) x)).copy (Set.range fun (i : ℕ) => i • x) ⋯
Equations
- AddSubmonoid.decidableMemMultiples = Classical.decPred fun (x : M) => x ∈ AddSubmonoid.multiples a
Equations
The additive submonoid generated by an element is an additive group if that element has finite order.
Equations
- One or more equations did not get rendered due to their size.