Dioid Algebra

Introduction

Dioid algebra is a powerful mathematical tool that allows a linear description of some systems that would have a very non-linear representation if described by differential or difference equations. In particular, Discrete Event Dynamic Systems (DEDS) where synchronization phenomena predominate.

DEDS are systems whose state transitions are triggered by events that occur at discrete instants. For example, the number of packets inside a communication network and the number of pieces in a manufacturing system are state variables that change at events like “arrival” or “departure” of items (packets or pieces). DEDS are often associated to technological systems like computer systems, flexible manufacturing systems, telecommunication networks, traffic control systems, multiprocessor operating systems and logistic systems.

There are specific techniques to represent DEDS. For examples, see [1-2].

Dioids: Definition

A dioid is a set D endowed with two closed operations called “addition” (⊕) and “multiplication” (⊗). The usual notation is D = (D, ⊕, ⊗). The operations of a dioid must satisfy the following axioms, a,b,c ∈ D :

  • Commutativity of addition: ab = ba
  • Associativity of addition: (ab) ⊕ c = a ⊕ (bc)
  • Associativity of multiplication: (ab)c = a(bc)
  • Distributivity of multiplication over finite sums: (ab)c = (ac) ⊕ (bc) and
    c(ab) = (ca) ⊕ (cb)
  • Existence of a null element: ε ∈ D : εa = aε = a
  • Absortion by the null element: εa = aε = ε
  • Existence of an unity element: e ∈ D : e ⊗ a = a ⊗ e = a
  • Idempotency of addition: aa = a

The majority of the axioms that define a dioid are, thus, common to the “normal” algebra of real numbers. The two really big differences are:

  1. Idempotency of addition;

  2. Absence of a symmetric element (like -a).

For these characteristics, dioids are also called idempotent semi-rings.

Dioids: Examples

Possibilities of functions that can define a sum in a dioid include minimization (min), maximization (max), union (∪) and the logic OR.

Example 1 (Max-Plus dioid): Consider R±∞ = R ∪ {-∞} ∪ {+∞}. Given a,b R±∞, define:

ab = max {a,b};
a  ⊗  b = a + b.

Rmax = (R±∞,⊕,⊗) is a dioid. In Rmax: ε = -∞, e = 0 and

 2 ⊕ 3.5 = 3.5, 
2  ⊗  3.5 = 5.5.

Example 2: Consider R+∞ = R+ ∪ {+∞} (just non-negative real numbers are considered). Given a,b R+∞, define:

ab = min {a,b};
a  ⊗  b = a + b.

R = (R+∞,⊕,⊗) is also a dioid. In R: ε = +∞, e = 0 and

 2 ⊕ 3.5 = 2, 
2  ⊗  3.5 = 5.5.

Dioids: Other Examples

Some other examples of dioids are presented in Table 1.

D
R{-∞} max +
R{+∞} min +
R+ max ×
R{-∞}{+∞} max min
{0,1} max min
2R2 + (vectorial)

Table 1: Examples of dioids

Note that these structures satisfy the idempotency of addition.

Dioids: Classification

Dioids can be classified according to their characteristics. For example:

  • Commutative dioids: dioids with commutative multiplications, i.e.,
    a,b ∈ D: ab = ba.

    Most of the time, the symbol ⊗ is omitted as it is the case in the conventional algebra. Also as usual, ak, k ∈ N, denotes the product a ⊗ … ⊗ a (k times)
    and a0 = e.

  • Complete dioids: dioids that are closed for infinite sums, and the distributivity applies for infinite sums.
  • Subdioid: subset Ds of dioid D = (D,⊕,⊗) that satisfy
    • εDs and e ∈ Ds;
    • Ds is closed for and ⊗.
  • Entire dioids: A dioid that satisfy
    ab = εa = ε or b = ε.

Diod Rmax of Example 1 and dioid R of example Example 2 are complete commutative dioids.

Order in Dioids

A partial order in a dioid can be defined by the following equivalency, a,b ∈ D:

aba = ab.

This equivalency defines a partial order, because two elements of a dioid are not always comparable. There can exist elements a,b such that ab = c, with ca and cb.

In the recent literature of dioids, it is common to use the symbol dleq instead of ≤ and the symbol dgeq instead of ≥. In this section, we use symbols ≤ and ≥ to denote order in diods and symbols ≤R and ≥R to denote order in the conventional sense.

Notice that the order between two elements of a dioid depends on the definition of sum. For example, for the Max-Plus dioid in Example 1:  2 ≤ 3.5 , but for the dioid in Example 2:  2 ≥ 3.5 .

Define T in a dioid D = (D,⊕,⊗) as the sum of all elements in D. From the definition of order in dioids, T is the maximum element of D (or top element). For the dioid of Example 1,

T = +,

and for the dioid of Example 2,

T = 0.

Let a,b ∈ D be two elements of a complete dioid D. Define ab D as the least upper bound between a and b, i.e., the greatest element of D that is smaller than or equal to a and b. Then:

aba = abb = ba.

Residuated Functions and Residuals

Consider the following problem in a given dioid:

  • Determine the values of x that satisfy the equation f(x) = b, as a function of b.

As it happens in the usual algebra of real numbers, this problem can have multiple solutions or can have no solutions at all. In dioids, in general, it is solved a relaxation of this problem given by

  • Find the maximum solution of f(x) ≤ b;
  • Find the minimum solution of f(x) ≥ b.

The first problem is addressed by the residuation and the second (or dual) problem is addressed by the dual residuation, as defined next.

Let f: AB be an isotone mapping from a complete dioid A into a complete dioid B. If ∀bB the set of solutions of f(x) ≤ b is non-empty and has a maximum element, denoted f #(b) (unique), then f is called a residuated function and f #(b) is called the residual of f at b.

Similarly, if ∀bB the set of solutions of f(x) ≥ b is non-empty and has a minimum element, denoted f b(b) (unique), then f is said dual-residuated and f b(b) is the dual-residual of f at b.

Define la(x) = ax and ra(x) = xa. For any dioid, functions la(x) and ra(x) are residuated. The residual functions are denoted, respectively, la#(y) = a \ y and ra#(y) = y / a.

Properties of Residuation

Table 2 presents some properties of the residuation operation.

a,b,c ∈ D:

axbxa \ b xabxb / a
a \ (ax) ≥ x (xa) / ax
(ab) \ x = b \ (a \ x) x / (ba) = (x / a) / b
(ab) \ x = a \ xb \ x x / (ab) = x / ax / b
b (a \ x) ≤ (a / b) \ x (x / a)bx / (b \ a)
(a \ x)ba \ (xb) b(x / a) ≤ (bx) / a
a \ (xy) = (a \ x) ∧ (a \ y) (xy) / a = (x / a) ∧ (y / a)
a \ (xy) ≥ (a \ x) ⊕ (a \ y) (xy) / a ≥ (x / a) ⊕ (x / a)
(ab) \ x ≥ (a \ x) ⊕ (b \ x) x / (ab) ≥ (x / a) ⊕ (x / b)
a(a \ x) ≤ x (x / a)ax
a(a \ (ax)) = ax ((ax / a)a = ax
a \ [a(a \ x)] = a \ x [(x / a)a] / a = x / a
(a \ x) / b = a \ (x / b) b \ (x / a) = (b \ x) / a
(a \ x) ⊕ ba \ (xab) (x / a) ⊕ b ≤ (xba) / a

Table 2: Properties of Residuation (adapted from [1]).

Residuation: Example

As an example of how to determine a residuation function, it is calculated next the residual function la#(y) = a \ y of function la(x) = ax for the dioid of Example 2, i.e.,
R = (R+∞ = R+ ∪ {+∞}, min, +).

Consider ≤R and ≥R the ordering symbols for the conventional algebra, i.e., given a,b ∈ R+∞:

a = min{a, b} ⇔ aR bbR a.

Residuation is related to the solutions of the inequality f(x) ≤ b. In this case, we have:

f(x) = la(x) = ax = a + x.

From the definition of order in dioids and the definition of sum in R,

f(x) ≤ bb = bf(x) ⇒ b = min{b, a + x} ⇒ b R a + xxR (b - a).

However, as a function from R into R, the residual of la(x) has to be in R+∞ = R+ ∪ {+∞}. Therefore, the solutions of f(x) ≤ b, in this case, must also satisfy xR 0. This implies that

la#(y) = [y - a]+.

Notice that as R is commutative, then

la#(y) = ra#(y).

Some Notes on Dioids

Operations like +∞ - ∞ can be well defined in dioids, depending on the meaning of each term.

To guarantee that the axioms that define a dioid are satisfied for ε and T, we have:

ε ⊗ T = ε
T ⊗ ε = ε

From the definition of residuation, we also have:

ε / ε = T / T = T;
ε \ ε = T \ T = T.

Consider dioid Rmax = (R ∪ {+∞} ∪ {-∞},max,+) of Example 1. We have ε = -∞, T = +∞ and
la#(y) = y - a (prove it!). From the above equations, we must have:

ε ⊗ T = ε ⇒ -∞ + (+∞) = -∞
ε / ε = T ⇒ -∞ - (-∞) = +∞

Therefore, as -∞ and +∞ are added to the set D that define a dioid, they are treated as any other element of D, leading to well defined results, depending on the operation that is being processed.

The next sections are optional to understand most of the section
NC and Dioid Algebra.

Fixed Point Equations, mod-z Equivalence and Quotient Dioids

Define the Kleene Closure of a ∈ N as follows

a* = ak.
k∈N

Fixed Point Equations: Given a,b D (complete), the minimum solution of equation
x = axb is given by x = a*b. Moreover, any solution of x = axb satisfies x = a*x.

Given a,b D (complete), the maximum solution of equation x = x / ab is given by
x = b / a*. Moreover, any solution of x = x / ab satisfies x = x / a*.

Mod-z Equivalence: Given a,b,z D (commutative dioid), a and b are mod-z equivalent if

az* = bz*.

The notation is ab mod z.

Quotient Dioids: It is possible to properly define and ⊗ operations between the equivalence classes defined above. The result is a new dioid called quotient dioid, denoted D/z, whose elements are classes of D. Usually, a class is represented by its greatest element.

Dioids of Formal Power Series

A formal power series with coefficients in a dioid D is a mapping f from N (or Z) into D such that t ∈ N (or Z), f(t) represents the coefficient of δt, i.e.,

f = f(t) δt.
t∈N (or Z)

Not every term in f must be explicitly written. The missing terms have coefficient ε.

The set of formal series is endowed with the following operations:

fg: (fg)(t) = f(t) ⊕ g(t);
f  ⊗  g: (f  ⊗  g)(t) = f(s)  ⊗  g(t-s);
s∈Z

The set of series endowed with these operations is a dioid denoted D [[δ]], with zero element ε defined by f(k) = εD, ∀k, and unity element e defined by f(0) = eD, and f(k) = εD, otherwise (εD and eD are, respectively, the zero and unit elements of dioid D).

An order in D [[δ]] is defined as follows. Given f,g D [[δ]]:

fg ⇔ {f(t) ≥ g(t), ∀t}.

For f,h D [[δ]]:

f \ h = ⊕ ∧ [f(s) \ h(t+s)] δt.
t∈Z s∈Z

Bibliography

  1. F. Baccelli, G. Cohen, G. J. Olsder and J.-P. Quadrat. “Synchronization and Linearity: An Algebra for Discrete Event Systems,” England: John Wiley & Sons, 1992.


  2. C. G. Cassandras and S. Lafortune. “Introduction to Discrete Event Systems,” Kluwer Academic Publishers, 1999.


Back to top ↑

Last update: 2012-11-22

© 2009-2012 · Mabia Cavalcante