Kleene algebra
In mathematics,Kleene algebra (named after Stephen Cole Kleene, pronounced "clay-knee")eithertwo different things:
- A bounded distributive latticean involution satisfying certain laws weaker than those governing lattice-theoretic complementations. Thus every Boolean algebra isKleene algebra, but most Kleene algebrasnot Boolean algebras.
- An algebraic structure that generalizesoperations known from regular expressions. The remainderthis article dealsthis notionKleene algebra.
| Tablecontents |
|
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 × A → A· : A × A → Aone function * : A → A, written as a + b, aba* respectively, so thatfollowing axiomssatisfied.
- Associativity+·: a + (b + c) = (a + b) + ca(bc) = (ab)call a, b, cA.
- Commutativity+: a + b = b + aall a, bA
- Distributivity: a(b + c) = (ab) + (ac)(b + c)a = (ba) + (ca)all a, b, cA
- Identity elements+·: There exists an element 0A such thatall aA: a + 0 = 0 + a = a. There exists an element 1A such thatall aA: a1 = 1a = a.
- a0 = 0a = 0all aA.
- +idempotent: a + a = aall aA.
- 1 + a(a*) ≤ a* all aA.
- 1 + (a*)a ≤ a* all aA.
- if axin A such that ax ≤ x, then a*x ≤ x
- if axin A such that xa ≤ x, then x(a*) ≤ x
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} ∪ S ∪ SS ∪ SSS ∪ ... 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 a ≤ a + bb ≤ a + bif xan elementAa ≤ xb ≤ x, then a + b ≤ x. Similarly, a1 + ... + an isleast upper bound ofelements a1, ..., an.
Multiplicationadditionmonotonic: if a ≤ b, then a + x ≤ b + x, ax ≤ bxxa ≤ xball xA.
Regarding* operation, we have 0* = 11* = 1, that *monotonic (a ≤ b implies a* ≤ b*),that an ≤ a*every natural number n. Furthermore, (a*)(a*) = a*, (a*)* = a*,a ≤ b* 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
- 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
