Distributive Magmas and Additive Magmas#
- class sage.categories.distributive_magmas_and_additive_magmas.DistributiveMagmasAndAdditiveMagmas(base_category)[source]#
Bases:
CategoryWithAxiom_singleton
The category of sets \((S,+,*)\) with \(*\) distributing on \(+\).
This is similar to a ring, but \(+\) and \(*\) are only required to be (additive) magmas.
EXAMPLES:
sage: from sage.categories.distributive_magmas_and_additive_magmas import DistributiveMagmasAndAdditiveMagmas sage: C = DistributiveMagmasAndAdditiveMagmas(); C Category of distributive magmas and additive magmas sage: C.super_categories() [Category of magmas and additive magmas]
>>> from sage.all import * >>> from sage.categories.distributive_magmas_and_additive_magmas import DistributiveMagmasAndAdditiveMagmas >>> C = DistributiveMagmasAndAdditiveMagmas(); C Category of distributive magmas and additive magmas >>> C.super_categories() [Category of magmas and additive magmas]
- class AdditiveAssociative(base_category)[source]#
Bases:
CategoryWithAxiom_singleton
- class AdditiveCommutative(base_category)[source]#
Bases:
CategoryWithAxiom_singleton
- class CartesianProducts(category, *args)[source]#
Bases:
CartesianProductsCategory
- extra_super_categories()[source]#
Implement the fact that a Cartesian product of magmas distributing over additive magmas is a magma distributing over an additive magma.
EXAMPLES:
sage: C = (Magmas() & AdditiveMagmas()).Distributive().CartesianProducts() sage: C.extra_super_categories() [Category of distributive magmas and additive magmas] sage: C.axioms() frozenset({'Distributive'})
>>> from sage.all import * >>> C = (Magmas() & AdditiveMagmas()).Distributive().CartesianProducts() >>> C.extra_super_categories() [Category of distributive magmas and additive magmas] >>> C.axioms() frozenset({'Distributive'})