finite automata
def
A semiring is a set A equipped with two binary operations + and ⋅ and two constant elements 0,1 such that:
- ⟨A,+,0⟩ is a commutative monoid (= set of elements with an associative, commutative binary operation and an identity element)
 
- ⟨A,⋅,1⟩ is a monoid (= set of elements with an associative binary operation and an identity element)
 
- the following distribution laws hold for all elements: a⋅(b+c)=a⋅b+a⋅c, (a+b)⋅c=a⋅c+b⋅c
 
- 0⋅a=a⋅0=0 for every a
 
def
A starsemiring is a semiring equipped with an additional unary operation ∗. Example of starsemirings: ⟨B,+,⋅,∗,0,1⟩ with 0∗=1∗=1
def
A Conway semiring is a starsemiring that satisfies the sum-star-equation:
(a+b)∗=(a∗b)∗a∗
and the product-star-equation:
(ab)∗=1+a(ba)∗b
Example: semiring ⟨2Σ∗,∪,⋅,∗,∅,{ϵ}⟩ of formal languages over Σ with L∗=∪n≥0Ln for all L⊆Σ∗
A way to highlight the connection between graphs and automata:
def
Consider a Conway semiring A and its subset A′.
A finite automaton A′-automaton \textfrakU=(n,M,S,P),n≥1 is given by:
- a transition matrix M∈(A′∪{0,1})n×n
 
- an initial state vector S∈(A′∪{0,1})1×n
 
- a final state vector P∈(A′∪{0,1})n×1
The behavior ∣∣\textfrakU∣∣ of \textfrakU is defined by
∣∣\textfrakU∣∣=Σ1≤i1,i2≤nSi1(M∗)i1,i2Pi2=SM∗P