Rngs¶
- class sage.categories.rngs.Rngs(base_category)[source]¶
- Bases: - CategoryWithAxiom_singleton- The category of rngs. - An rng \((S, +, *)\) is similar to a ring but not necessarily unital. In other words, it is a combination of a commutative additive group \((S, +)\) and a multiplicative semigroup \((S, *)\), where \(*\) distributes over \(+\). - EXAMPLES: - sage: C = Rngs(); C Category of rngs sage: sorted(C.super_categories(), key=str) [Category of associative additive commutative additive associative additive unital distributive magmas and additive magmas, Category of commutative additive groups] sage: sorted(C.axioms()) ['AdditiveAssociative', 'AdditiveCommutative', 'AdditiveInverse', 'AdditiveUnital', 'Associative', 'Distributive'] sage: C is (CommutativeAdditiveGroups() & Semigroups()).Distributive() True sage: C.Unital() Category of rings - >>> from sage.all import * >>> C = Rngs(); C Category of rngs >>> sorted(C.super_categories(), key=str) [Category of associative additive commutative additive associative additive unital distributive magmas and additive magmas, Category of commutative additive groups] >>> sorted(C.axioms()) ['AdditiveAssociative', 'AdditiveCommutative', 'AdditiveInverse', 'AdditiveUnital', 'Associative', 'Distributive'] >>> C is (CommutativeAdditiveGroups() & Semigroups()).Distributive() True >>> C.Unital() Category of rings - class ParentMethods[source]¶
- Bases: - object- ideal_monoid()[source]¶
- The monoid of the ideals of this ring. - Note - The code is copied from the base class of rings. This is since there are rings that do not inherit from that class, such as matrix algebras. See Issue #7797. - EXAMPLES: - sage: # needs sage.modules sage: MS = MatrixSpace(QQ, 2, 2) sage: isinstance(MS, Ring) False sage: MS in Rings() True sage: MS.ideal_monoid() Monoid of ideals of Full MatrixSpace of 2 by 2 dense matrices over Rational Field - >>> from sage.all import * >>> # needs sage.modules >>> MS = MatrixSpace(QQ, Integer(2), Integer(2)) >>> isinstance(MS, Ring) False >>> MS in Rings() True >>> MS.ideal_monoid() Monoid of ideals of Full MatrixSpace of 2 by 2 dense matrices over Rational Field - Note that the monoid is cached: - sage: MS.ideal_monoid() is MS.ideal_monoid() # needs sage.modules True - >>> from sage.all import * >>> MS.ideal_monoid() is MS.ideal_monoid() # needs sage.modules True 
 - principal_ideal(gen, coerce=True)[source]¶
- Return the principal ideal generated by - gen.- EXAMPLES: - sage: R.<x,y> = ZZ[] sage: R.principal_ideal(x+2*y) Ideal (x + 2*y) of Multivariate Polynomial Ring in x, y over Integer Ring - >>> from sage.all import * >>> R = ZZ['x, y']; (x, y,) = R._first_ngens(2) >>> R.principal_ideal(x+Integer(2)*y) Ideal (x + 2*y) of Multivariate Polynomial Ring in x, y over Integer Ring 
 - zero_ideal()[source]¶
- Return the zero ideal of this ring (cached). - EXAMPLES: - sage: ZZ.zero_ideal() Principal ideal (0) of Integer Ring sage: QQ.zero_ideal() Principal ideal (0) of Rational Field sage: QQ['x'].zero_ideal() Principal ideal (0) of Univariate Polynomial Ring in x over Rational Field - >>> from sage.all import * >>> ZZ.zero_ideal() Principal ideal (0) of Integer Ring >>> QQ.zero_ideal() Principal ideal (0) of Rational Field >>> QQ['x'].zero_ideal() Principal ideal (0) of Univariate Polynomial Ring in x over Rational Field - The result is cached: - sage: ZZ.zero_ideal() is ZZ.zero_ideal() True - >>> from sage.all import * >>> ZZ.zero_ideal() is ZZ.zero_ideal() True