Current Article  

Kleene algebra

In mathematics,Kleene algebra (named after Stephen Cole Kleene, pronounced "clay-knee")eithertwo different things:

Tablecontents
1 Definition
2 Examples
3 Properties
4 History
5 References

Definition

Various inequivalent definitionsKleene algebrasrelated structures have been given inliterature. See [1] forsurvey. Here we will givedefinition that seemsbemost common nowadays.

A Kleene algebra isset A togethertwo binary operations + : A × AA· : A × AAone function * : AA, written as a + b, aba* respectively, so thatfollowing axiomssatisfied.

The above axioms definesemiring. We further require: Itnow possibledefinepartial order ≤ on A by setting ab iff a + b = b (or equivalently: ab iff there exists an xA such that a + x = b). With this order we can formulatelast two axioms aboutoperation *: Intuitively, one should thinka + b as"union" or"least upper bound"ab andab as some multiplication whichmonotonic, insense that ab implies axbx. The idea behindstar operatora* = 1 + a + aa + aaa + ... Fromstandpointprogramming theory, one may also interpret + as "choice", · as "sequencing"* as "iteration".

Examples

Let Σ befinite set (an "alphabet")let A besetall regular expressions over Σ. We consider two such regular expressions equal ifdescribesame language. Then A formsKleene algebra. In fact, this is"free" Kleene algebra insense that any equation among regular expressions follows fromKleene algebra axiomsis therefore validevery Kleene algebra.

Again let Σ be an alphabet. Let A besetall regular languages over Σ (orsetall context-free languages over Σ; orsetall recursive languages over Σ; orsetall languages over Σ). Thenunion (written as +) andconcatenation (written as ·)two elementsA again belongA,so doesKleene star operation appliedany elementA. We obtainKleene algebra A0 beingempty set1 beingset that only containsempty string.

Let M bemonoididentity element elet A besetall subsetsM. For two such subsets ST, let S + T beunionSTset ST = {st : sStT}. S*defined assubmonoidM generated by S, which can be described as {e} ∪ SSSSSS ∪ ... Then A formsKleene algebra0 beingempty set1 being {e}. An analogous construction can be performedany small category.

Suppose M issetA issetall binary relations on M. Taking +beunion, ·becomposition*bereflexive transitive hull, we obtainKleene algebra.

Every boolean algebraoperations v^ turns intoKleene algebra if we use v+, ^·set a* = 1all a.

A quite different Kleene algebrauseful when computing shortest pathssweighted directed graphs: let A beextended real number line, take a + bbeminimumababbeordinary sumab (withsum+∞-∞ being defined as +∞). a*definedbereal number zerononnegative a-∞negative a. This isKleene algebrazero element +∞one elementreal number zero.

Properties

Zero issmallest element: 0 ≤ aall aA.

The sum a + b isleast upper boundab: we have aa + bba + bif xan elementAaxbx, then a + bx. Similarly, a1 + ... + an isleast upper bound ofelements a1, ..., an.

Multiplicationadditionmonotonic: if ab, then a + xb + x, axbxxaxball xA.

Regarding* operation, we have 0* = 11* = 1, that *monotonic (ab implies a* ≤ b*),that ana*every natural number n. Furthermore, (a*)(a*) = a*, (a*)* = a*,ab* ifonly if a* ≤ b*.

If A isKleene algebran isnatural number, then one can considerset Mn(A) consistingall n-by-n matricesentriesA. Usingordinary notionsmatrix additionmultiplication, one can defineunique *-operation so that Mn(A) becomesKleene algebra.

History

Kleene algebras were not defined by Kleene; he introduced regular expressionsasked forsetaxioms which would allowderive all equations among regular expressions. The axiomsKleene algebras solve this problem, as was first shown by Dexter Kozen.

References

  1. Dexter Kozen: On Kleene algebrasclosed semirings. In Rovan, editor, Proc. Math. Found. Comput. Sci., volume 452Lecture NotesComputer Science, pages 26-47. Springer, 1990. Online at http://www.cs.cornell.edu/kozen/papers/kacs.ps

Copyright 2004. All rights reserved.