Non Negative Integer Semiring#
- class sage.rings.semirings.non_negative_integer_semiring.NonNegativeIntegerSemiring#
Bases:
NonNegativeIntegers
A class for the semiring of the non negative integers
This parent inherits from the infinite enumerated set of non negative integers and endows it with its natural semiring structure.
EXAMPLES:
sage: NonNegativeIntegerSemiring() Non negative integer semiring
For convenience,
NN
is a shortcut forNonNegativeIntegerSemiring()
:sage: NN == NonNegativeIntegerSemiring() True sage: NN.category() Category of facade infinite enumerated commutative semirings
Here is a piece of the Cayley graph for the multiplicative structure:
sage: G = NN.cayley_graph(elements=range(9), generators=[0,1,2,3,5,7]) sage: G Looped multi-digraph on 9 vertices sage: G.plot() Graphics object consisting of 48 graphics primitives
This is the Hasse diagram of the divisibility order on
NN
.sage: Poset(NN.cayley_graph(elements=[1..12], generators=[2,3,5,7,11])).show()
Note: as for
NonNegativeIntegers
,NN
is currently just a “facade” parent; namely its elements are plain SageIntegers
withInteger Ring
as parent:sage: x = NN(15); type(x) <class 'sage.rings.integer.Integer'> sage: x.parent() Integer Ring sage: x+3 18
- additive_semigroup_generators()#
Returns the additive semigroup generators of
self
.EXAMPLES:
sage: NN.additive_semigroup_generators() Family (0, 1)