# Semiring

In abstract algebra, a **semiring** is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse. The term **rig** is also used occasionally^{[1]} — this originated as a joke, suggesting that rigs are ri*n*gs without *n*egative elements.

## Definition

A **semiring** is a set *R* equipped with two binary operations + and ·, called addition and multiplication, such that:^{[2]}^{[3]}^{[4]}

- (
*R*, +) is a commutative monoid with identity element 0:- (
*a*+*b*) +*c*=*a*+ (*b*+*c*) - 0 +
*a*=*a*+ 0 =*a* *a*+*b*=*b*+*a*

- (
- (
*R*, ·) is a monoid with identity element 1:- (
*a*·*b*)·*c*=*a*·(*b*·*c*) - 1·
*a*=*a*·1 =*a*

- (
- Multiplication left and right distributes over addition:
*a*·(*b*+*c*) = (*a*·*b*) + (*a*·*c*)- (
*a*+*b*)·*c*= (*a*·*c*) + (*b*·*c*)

- Multiplication by 0 annihilates
*R*:- 0·
*a*=*a*·0 = 0

- 0·

This last axiom is omitted from the definition of a ring: it follows from the other ring axioms. Here it does not, and it is necessary to state it in the definition.

The difference between rings and semirings, then, is that addition yields only a commutative monoid, not necessarily a commutative group. Specifically, elements in semirings do not necessarily have an inverse for the addition.

The symbol · is usually omitted from the notation; that is, *a*·*b* is just written *ab*. Similarly, an order of operations is accepted, according to which · is applied before +; that is, *a* + *bc* is *a* + (*bc*).

A **commutative semiring** is one whose multiplication is commutative.^{[5]} An **idempotent semiring** is one whose *addition* is idempotent: *a* + *a* = *a*,^{[6]} that is, (*R*, +, 0) is a join-semilattice with zero.

There are some authors who prefer to leave out the requirement that a semiring have a 0 or 1. This makes the analogy between *ring* and *semiring* on the one hand and *group* and *semigroup* on the other hand work more smoothly. These authors often use *rig* for the concept defined here.^{[note 1]}

## Examples

### In general

- Any ring is also a semiring.
- The ideals of a ring form a semiring under addition and multiplication of ideals.
- Any unital quantale is an idempotent semiring, or dioid, under join and multiplication.
- Any bounded, distributive lattice is a commutative, idempotent semiring under join and meet.
- In particular, a Boolean algebra is such a semiring. A Boolean ring is also a semiring—indeed, a ring—but it is not idempotent under
*addition*. A*Boolean semiring*is a semiring isomorphic to a subsemiring of a Boolean algebra.^{[7]} - A normal skew lattice in a ring
*R*is an idempotent semiring for the operations multiplication and nabla, where the latter operation is defined by . - Any c-semiring is also a semiring, where addition is idempotent and defined over arbitrary sets.

### Specific examples

- The motivating example of a semiring is the set of natural numbers
**N**(including zero) under ordinary addition and multiplication. Likewise, the non-negative rational numbers and the non-negative real numbers form semirings. All these semirings are commutative.^{[7]}^{[8]}^{[9]} - The
*extended*natural numbers**N**∪{∞} with addition and multiplication extended (and 0⋅∞ = ∞).^{[8]} - The square
*n*-by-*n*matrices with non-negative entries form a (non-commutative) semiring under ordinary addition and multiplication of matrices. More generally, this likewise applies to the square matrices whose entries are elements of any other given semiring*S*, and the semiring is generally non-commutative even though*S*may be commutative.^{[7]} - If
*A*is a commutative monoid, the set*End(A)*of endomorphisms*f:A→A*form a semiring, where addition is pointwise addition and multiplication is function composition. The zero morphism and the identity are the respective neutral elements. If*A*is the additive monoid of natural numbers we obtain the semiring of natural numbers as*End(A)*, and if*A=S^n*with*S*a semiring, we obtain (after associating each morphism to a matrix) the semiring of square*n*-by-*n*matrices with coefficients in*S*. - The
**Boolean semiring**: the commutative semiring**B**formed by the two-element Boolean algebra and defined by 1+1=1:^{[3]}^{[8]}^{[9]}this is idempotent^{[6]}and is the simplest example of a semiring which is not a ring. **N**[x], polynomials with natural number coefficients form a commutative semiring. In fact, this is the free commutative semiring on a single generator {*x*}.- Tropical semirings are variously defined. The
*max-plus*semiring**R**∪ {−∞}, is a commutative, idempotent semiring with max(*a*,*b*) serving as semiring addition (identity −∞) and ordinary addition (identity 0) serving as semiring multiplication. In an alternative formulation, the tropical semiring is**R**∪ {∞}, and min replaces max as the addition operation.^{[10]}A related version has**R**∪ {±∞} as the underlying set.^{[3]}^{[11]} - The set of cardinal numbers smaller than any given infinite cardinal form a semiring under cardinal addition and multiplication. The set of
*all cardinals*of an inner model form a semiring under (inner model) cardinal addition and multiplication. - The
**probability semiring**of non-negative real numbers under the usual addition and multiplication.^{[3]} - The
**log semiring**on**R**∪ ±∞ with addition given by

- The family of (isomorphism equivalence classes of) combinatorial classes (sets of countably many objects with non-negative integer sizes such that there are finitely many objects of each size) with the empty class as the zero object, the class consisting only of the empty set as the unit, disjoint union of classes as addition, and Cartesian product of classes as multiplication.
^{[12]} - The Łukasiewicz semiring: the closed interval [0, 1] with addition given by taking the maximum of the arguments (
*a*+*b*=max(*a*,*b*)) and multiplication*ab*given by max(0, a+b−1) appears in multivalued logic.^{[13]} - The Viterbi semiring is also over the base set [0, 1] and addition by maximum, but with multiplication as the usual multiplication of reals; it appears in probabilistic parsing.
^{[13]}

{{safesubst:#invoke:anchor|main}}

- Given a set
*U*, the set of binary relations over*U*is a semiring with addition the union (of relations as sets) and multiplication the composition of relations. The semiring's zero is the empty relation and its unit is the identity relation.^{[13]}

{{safesubst:#invoke:anchor|main}}

- Given an alphabet (finite set) Σ, the set of formal languages over Σ (subsets of Σ
^{*}) is a semiring with product induced by string concatenation and addition as the union of languages (i.e. simply union as sets). The zero of this semiring is the empty set (empty language) and the semiring's unit is the language containing as its sole element the empty string.^{[13]} - Generalising the previous example by viewing Σ
^{∗}as the free monoid over Σ, take*M*to be any monoid; the power set**P***M*of all subsets of*M*forms a semiring under set-theoretic union as addition and set-wise multiplication: .^{[9]}

## Semiring theory

Much of the theory of rings continues to make sense when applied to arbitrary semirings.
In particular, one can generalise the theory of algebras over commutative rings directly to a theory of algebras over commutative semirings.
Then a ring is simply an algebra over the commutative semiring **Z** of integers.
Some mathematicians go so far as to say that semirings are really the more fundamental concept, and specialising to rings should be seen in the same light as specialising to, say, algebras over the complex numbers.

Idempotent semirings are special to semiring theory as any ring which is idempotent under addition is trivial. One can define a partial order ≤ on an idempotent semiring by setting *a* ≤ *b* whenever *a* + *b* = *b* (or, equivalently, if there exists an *x* such that *a* + *x* = *b*). It is easy to see that 0 is the least element with respect to this order: 0 ≤ *a* for all *a*. Addition and multiplication respect the ordering in the sense that *a* ≤ *b* implies *ac* ≤ *bc* and *ca* ≤ *cb* and (*a*+*c*) ≤ (*b*+*c*).

## Applications

Dioids, especially the (max, +) and (min, +) dioids on the reals, are often used in performance evaluation on discrete event systems. The real numbers then are the "costs" or "arrival time"; the "max" operation corresponds to having to wait for all prerequisites of an events (thus taking the maximal time) while the "min" operation corresponds to being able to choose the best, less costly choice; and + corresponds to accumulation along the same path.

The Floyd–Warshall algorithm for shortest paths can thus be reformulated as a computation over a (min, +) algebra. Similarly, the Viterbi algorithm for finding the most probable state sequence corresponding to an observation sequence in a Hidden Markov model can also be formulated as a computation over a (max, ×) algebra on probabilities. These dynamic programming algorithms rely on the distributive property of their associated semirings to compute quantities over a large (possibly exponential) number of terms more efficiently than enumerating each of them.

## Complete and continuous semirings

A **complete semiring** is a semiring for which the addition monoid is a complete monoid, meaning that it has an infinitary sum operation Σ_{I} for any index set *I* and that the following (infinitary) distributive laws must hold:^{[11]}^{[13]}^{[14]}

Examples of complete semirings include the power set of a monoid under union; the matrix semiring over a complete semiring is complete.^{[15]}

A **continuous semiring** is similarly defined as one for which the addition monoid is a continuous monoid: that is, partially ordered with the least upper bounds property, and for which addition and multiplication respect order and suprema. The semiring **N**∪{∞} with usual addition, multiplication and order extended, is a continuous semiring.^{[16]}

Any continuous semiring is complete:^{[11]} this may be taken as part of the definition.^{[15]}

## Star semirings

A **star semiring** (sometimes spelled as **starsemiring**) is a semiring with an additional unary operator *.^{[6]}^{[13]}^{[17]}

Examples of star semirings include:

- the (aforementioned) semiring of binary relations over some base set
*U*in which for all . This star operation is actually the*reflexive and transitive closure*of*R*(i.e. the smallest reflexive and transitive binary relation over*U*containing*R*.).^{[13]} - the semiring of formal languages is also a complete star semiring, with the star operation coinciding with the Kleene star (for sets/languages).
^{[13]} - The set of non-negative extended reals, [0, ∞], together with the usual addition and multiplication of reals is a complete star semiring with the star operation given by a
^{∗}= 1/(1 − a) for 0 ≤ a < 1 (i.e. the geometric series) and a^{∗}= ∞ for a ≥ 1.^{[13]}

Further examples:^{[13]}

- The Boolean semiring with 0
^{∗}= 1^{∗}= 1; - The semiring on
**N**∪ {∞}, with extended addition and multiplication, and 0^{∗}= 0,*a*^{∗}= ∞ for a ≥ 1.

A **Kleene algebra**Template:Which is a starsemiring with idempotent addition: they are important in the theory of formal languages and regular expressions. A **Conway semiring** is a starsemiring satisfying the sum-star and the product-star equations:^{[6]}^{[18]}

The first three examples above are also Conway semirings.^{[13]}

An **iteration semiring** is a Conway semiring satisfying the Conway group axioms,^{[6]} associated by John Conway to groups in star-semirings.^{[19]}

### Complete star semirings

We define a notion of **complete star semiring** in which the star operator behaves more like the usual Kleene star: for a complete semiring we use the infinitary sum operator to give the usual definition of the Kleene star:^{[13]}

Examples of complete star semirings include the first three classes of examples in the previous section: the binary relations semiring; the formal langages semiring and the extended non-negative reals.^{[13]}

In general, every complete star semiring is also a Conway semiring,^{[20]} but the converse does not hold. An example of Conway semiring that is not complete is the set of extended non-negative rational numbers ({x ∈ **Q** | x ≥ 0} ∪ {∞}) with the usual addition and multplication (this is a modification of the example with extended non-negative reals given in this section by eliminating irrational numbers).^{[13]}

## Further generalizations

A *near-ring* does not require addition to be commutative, nor does it require right-distributivity. Just as cardinal numbers form a semiring, so do ordinal numbers form a near-ring.

In category theory, a *2-rig* is a category with functorial operations analogous to those of a rig. That the cardinal numbers form a rig can be categorified to say that the category of sets (or more generally, any topos) is a 2-rig.

## Semiring of sets

A **semiring (of sets)**^{[21]} is a non-empty collection S of sets such that

- If and then .
- If and then there exists a finite number of mutually disjoint sets for such that .

Such semirings are used in measure theory. An example of a semiring of sets is the collection of half-open, half-closed real intervals .

## Terminology

The term *dioid* (for "double monoid") was used by Kuntzman in 1972 to denote what we now term semiring.^{[22]} The use to mean idempotent subgroup was introduced by Baccelli et al. in 1992.^{[23]}

## See also

## Notes

## Bibliography

- ↑ Głazek (2002) p.7
- ↑ Berstel & Perrin (1985), [[[:Template:Google books]] p. 26]
- ↑
^{3.0}^{3.1}^{3.2}^{3.3}^{3.4}Lothaire (2005) p.211 - ↑ Sakarovitch (2009) pp.27–28
- ↑ Lothaire (2005) p.212
- ↑
^{6.0}^{6.1}^{6.2}^{6.3}^{6.4}{{#invoke:citation/CS1|citation |CitationClass=book }} - ↑
^{7.0}^{7.1}^{7.2}{{#invoke:citation/CS1|citation |CitationClass=book }} - ↑
^{8.0}^{8.1}^{8.2}Sakarovitch (2009) p.28 - ↑
^{9.0}^{9.1}^{9.2}Berstel & Reutenauer (2011) p.4 - ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑
^{11.0}^{11.1}^{11.2}{{#invoke:citation/CS1|citation |CitationClass=book }} - ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}.
- ↑
^{13.00}^{13.01}^{13.02}^{13.03}^{13.04}^{13.05}^{13.06}^{13.07}^{13.08}^{13.09}^{13.10}^{13.11}^{13.12}^{13.13}Droste, M., & Kuich, W. (2009). Semirings and Formal Power Series.*Handbook of Weighted Automata*, 3–28. Template:Hide in printTemplate:Only in print, pp. 7-10 - ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑
^{15.0}^{15.1}Sakaraovich (2009) p.471 - ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ Berstel & Reutenauer (2011) p.27
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ Droste, M., & Kuich, W. (2009). Semirings and Formal Power Series.
*Handbook of Weighted Automata*, 3–28. Template:Hide in printTemplate:Only in print, Theorem 3.4 p. 15 - ↑ Noel Vaillant, Caratheodory's Extension, on probability.net.
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}

- François Baccelli, Guy Cohen, Geert Jan Olsder, Jean-Pierre Quadrat,
*Synchronization and Linearity (online version)*, Wiley, 1992, ISBN 0-471-93609-X - Golan, Jonathan S.,
*Semirings and their applications*. Updated and expanded version of*The theory of semirings, with applications to mathematics and theoretical computer science*(Longman Sci. Tech., Harlow, 1992, Template:MathSciNet. Kluwer Academic Publishers, Dordrecht, 1999. xii+381 pp. ISBN 0-7923-5786-8 Template:MathSciNet - {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

## Further reading

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:Citation/CS1|citation

|CitationClass=journal }}

- {{#invoke:citation/CS1|citation

|CitationClass=book }}

- {{#invoke:Citation/CS1|citation

|CitationClass=journal }}

- Steven Dolan (2013) Fun with Semirings, Template:Hide in printTemplate:Only in print