Additive semigroups¶
- class sage.categories.additive_semigroups.AdditiveSemigroups(base_category)[source]¶
- Bases: - CategoryWithAxiom_singleton- The category of additive semigroups. - An additive semigroup is an associative - additive magma, that is a set endowed with an operation \(+\) which is associative.- EXAMPLES: - sage: from sage.categories.additive_semigroups import AdditiveSemigroups sage: C = AdditiveSemigroups(); C Category of additive semigroups sage: C.super_categories() [Category of additive magmas] sage: C.all_super_categories() [Category of additive semigroups, Category of additive magmas, Category of sets, Category of sets with partial maps, Category of objects] sage: C.axioms() frozenset({'AdditiveAssociative'}) sage: C is AdditiveMagmas().AdditiveAssociative() True - >>> from sage.all import * >>> from sage.categories.additive_semigroups import AdditiveSemigroups >>> C = AdditiveSemigroups(); C Category of additive semigroups >>> C.super_categories() [Category of additive magmas] >>> C.all_super_categories() [Category of additive semigroups, Category of additive magmas, Category of sets, Category of sets with partial maps, Category of objects] >>> C.axioms() frozenset({'AdditiveAssociative'}) >>> C is AdditiveMagmas().AdditiveAssociative() True - AdditiveCommutative[source]¶
- alias of - CommutativeAdditiveSemigroups
 - AdditiveUnital[source]¶
- alias of - AdditiveMonoids
 - class Algebras(category, *args)[source]¶
- Bases: - AlgebrasCategory- class ParentMethods[source]¶
- Bases: - object- algebra_generators()[source]¶
- Return the generators of this algebra, as per - MagmaticAlgebras.ParentMethods.algebra_generators().- They correspond to the generators of the additive semigroup. - EXAMPLES: - sage: S = CommutativeAdditiveSemigroups().example(); S An example of a commutative semigroup: the free commutative semigroup generated by ('a', 'b', 'c', 'd') sage: A = S.algebra(QQ) # needs sage.modules sage: A.algebra_generators() # needs sage.modules Family (B[a], B[b], B[c], B[d]) - >>> from sage.all import * >>> S = CommutativeAdditiveSemigroups().example(); S An example of a commutative semigroup: the free commutative semigroup generated by ('a', 'b', 'c', 'd') >>> A = S.algebra(QQ) # needs sage.modules >>> A.algebra_generators() # needs sage.modules Family (B[a], B[b], B[c], B[d]) 
 - product_on_basis(g1, g2)[source]¶
- Product, on basis elements, as per - MagmaticAlgebras.WithBasis.ParentMethods.product_on_basis().- The product of two basis elements is induced by the addition of the corresponding elements of the group. - EXAMPLES: - sage: S = CommutativeAdditiveSemigroups().example(); S An example of a commutative semigroup: the free commutative semigroup generated by ('a', 'b', 'c', 'd') sage: A = S.algebra(QQ) # needs sage.modules sage: a, b, c, d = A.algebra_generators() # needs sage.modules sage: b * d * c # needs sage.modules B[b + c + d] - >>> from sage.all import * >>> S = CommutativeAdditiveSemigroups().example(); S An example of a commutative semigroup: the free commutative semigroup generated by ('a', 'b', 'c', 'd') >>> A = S.algebra(QQ) # needs sage.modules >>> a, b, c, d = A.algebra_generators() # needs sage.modules >>> b * d * c # needs sage.modules B[b + c + d] 
 
 - extra_super_categories()[source]¶
- EXAMPLES: - sage: from sage.categories.additive_semigroups import AdditiveSemigroups sage: AdditiveSemigroups().Algebras(QQ).extra_super_categories() [Category of semigroups] sage: CommutativeAdditiveSemigroups().Algebras(QQ).super_categories() [Category of additive semigroup algebras over Rational Field, Category of additive commutative additive magma algebras over Rational Field] - >>> from sage.all import * >>> from sage.categories.additive_semigroups import AdditiveSemigroups >>> AdditiveSemigroups().Algebras(QQ).extra_super_categories() [Category of semigroups] >>> CommutativeAdditiveSemigroups().Algebras(QQ).super_categories() [Category of additive semigroup algebras over Rational Field, Category of additive commutative additive magma algebras over Rational Field] 
 
 - class CartesianProducts(category, *args)[source]¶
- Bases: - CartesianProductsCategory- extra_super_categories()[source]¶
- Implement the fact that a Cartesian product of additive semigroups is an additive semigroup. - EXAMPLES: - sage: from sage.categories.additive_semigroups import AdditiveSemigroups sage: C = AdditiveSemigroups().CartesianProducts() sage: C.extra_super_categories() [Category of additive semigroups] sage: C.axioms() frozenset({'AdditiveAssociative'}) - >>> from sage.all import * >>> from sage.categories.additive_semigroups import AdditiveSemigroups >>> C = AdditiveSemigroups().CartesianProducts() >>> C.extra_super_categories() [Category of additive semigroups] >>> C.axioms() frozenset({'AdditiveAssociative'}) 
 
 - class Homsets(category, *args)[source]¶
- Bases: - HomsetsCategory- extra_super_categories()[source]¶
- Implement the fact that a homset between two semigroups is a semigroup. - EXAMPLES: - sage: from sage.categories.additive_semigroups import AdditiveSemigroups sage: AdditiveSemigroups().Homsets().extra_super_categories() [Category of additive semigroups] sage: AdditiveSemigroups().Homsets().super_categories() [Category of homsets of additive magmas, Category of additive semigroups] - >>> from sage.all import * >>> from sage.categories.additive_semigroups import AdditiveSemigroups >>> AdditiveSemigroups().Homsets().extra_super_categories() [Category of additive semigroups] >>> AdditiveSemigroups().Homsets().super_categories() [Category of homsets of additive magmas, Category of additive semigroups]