### Navigation

- index
- modules |
- next |
- previous |
- Category Theory »

# Semirngs

class `sage.categories.semirings.``Semirings`(base_category)

  Bases: `sage.categories.category_with_axiom.CategoryWithAxiom_singleton`

  The category of semirings.

  A semiring \((S,+,*)\) is similar to a ring, but without the requirement that each element must have an additive inverse. In other words, it is a combination of a commutative additive monoid \((S,+)\) and a multiplicative monoid \((S,*)\), where \(*\) distributes over \(+\).

  EXAMPLES:

      sage: Semirings()
      Category of semirings
      sage: Semirings().super_categories()
      [Category of associative additive commutative additive associative additive unital distributive magmas and additive magmas,
       Category of monoids]

      sage: sorted(Semirings().axioms())
      ['AdditiveAssociative', 'AdditiveCommutative', 'AdditiveUnital', 'Associative', 'Distributive', 'Unital']

      sage: Semirings() is (CommutativeAdditiveMonoids() & Monoids()).Distributive()
      True

      sage: Semirings().AdditiveInverse()
      Category of rings

  TESTS:

      sage: TestSuite(Semirings()).run()

### Navigation

- index
- modules |
- next |
- previous |
- Category Theory »