### Navigation

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

# Rngs

class `sage.categories.rngs.``Rngs`(base_category)

  Bases: `sage.categories.category_with_axiom.CategoryWithAxiom_singleton`

  The category of rngs.

  An rng \((S, +, *)\) is similar to a ring but not necessarilly 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

  TESTS:

      sage: TestSuite(C).run()

  `Unital`

    alias of `Rings`

### Navigation

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