HOME

TheInfoList



OR:

In
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
, a Kleene algebra ( ; named after Stephen Cole Kleene) is an idempotent (and thus partially ordered) semiring endowed with a closure operator. It generalizes the operations known from regular expressions.


Definition

Various inequivalent definitions of Kleene algebras and related structures have been given in the literature. Here we will give the definition that seems to be the most common nowadays. A Kleene algebra is a set ''A'' together with two
binary operation In mathematics, a binary operation or dyadic operation is a rule for combining two elements (called operands) to produce another element. More formally, a binary operation is an operation of arity two. More specifically, an internal binary op ...
s + : ''A'' × ''A'' → ''A'' and · : ''A'' × ''A'' → ''A'' and one function * : ''A'' → ''A'', written as ''a'' + ''b'', ''ab'' and ''a''* respectively, so that the following axioms are satisfied. * Associativity of + and ·: ''a'' + (''b'' + ''c'') = (''a'' + ''b'') + ''c'' and ''a''(''bc'') = (''ab'')''c'' for all ''a'', ''b'', ''c'' in ''A''. *
Commutativity In mathematics, a binary operation is commutative if changing the order of the operands does not change the result. It is a fundamental property of many binary operations, and many mathematical proofs depend on it. Most familiar as the name of ...
of +: ''a'' + ''b'' = ''b'' + ''a'' for all ''a'', ''b'' in ''A'' * Distributivity: ''a''(''b'' + ''c'') = (''ab'') + (''ac'') and (''b'' + ''c'')''a'' = (''ba'') + (''ca'') for all ''a'', ''b'', ''c'' in ''A'' * Identity elements for + and ·: There exists an element 0 in ''A'' such that for all ''a'' in ''A'': ''a'' + 0 = 0 + ''a'' = ''a''. There exists an element 1 in ''A'' such that for all ''a'' in ''A'': ''a''1 = 1''a'' = ''a''. * Annihilation by 0: ''a''0 = 0''a'' = 0 for all ''a'' in ''A''. The above axioms define a semiring. We further require: * + is idempotent: ''a'' + ''a'' = ''a'' for all ''a'' in ''A''. It is now possible to define a partial order ≤ on ''A'' by setting ''a'' ≤ ''b'' if and only if ''a'' + ''b'' = ''b'' (or equivalently: ''a'' ≤ ''b'' if and only if there exists an ''x'' in ''A'' such that ''a'' + ''x'' = ''b''; with any definition, ''a'' ≤ ''b'' ≤ ''a'' implies ''a'' = ''b''). With this order we can formulate the last four axioms about the operation *: * 1 + ''a''(''a''*) ≤ ''a''* for all ''a'' in ''A''. * 1 + (''a''*)''a'' ≤ ''a''* for all ''a'' in ''A''. * if ''a'' and ''x'' are in ''A'' such that ''ax'' ≤ ''x'', then ''a''*''x'' ≤ ''x'' * if ''a'' and ''x'' are in ''A'' such that ''xa'' ≤ ''x'', then ''x''(''a''*) ≤ ''x'' Intuitively, one should think of ''a'' + ''b'' as the "union" or the "least upper bound" of ''a'' and ''b'' and of ''ab'' as some multiplication which is monotonic, in the sense that ''a'' ≤ ''b'' implies ''ax'' ≤ ''bx''. The idea behind the star operator is ''a''* = 1 + ''a'' + ''aa'' + ''aaa'' + ... From the standpoint of
programming language theory Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of formal languages known as programming languages. Programming language theory is clos ...
, one may also interpret + as "choice", · as "sequencing" and * as "iteration".


Examples

Let Σ be a finite set (an "alphabet") and let ''A'' be the set of all regular expressions over Σ. We consider two such regular expressions equal if they describe the same language. Then ''A'' forms a Kleene algebra. In fact, this is a
free Free may refer to: Concept * Freedom, having the ability to do something, without having to obey anyone/anything * Freethought, a position that beliefs should be formed only on the basis of logic, reason, and empiricism * Emancipate, to procur ...
Kleene algebra in the sense that any equation among regular expressions follows from the Kleene algebra axioms and is therefore valid in every Kleene algebra. Again let Σ be an alphabet. Let ''A'' be the set of all regular languages over Σ (or the set of all context-free languages over Σ; or the set of all recursive languages over Σ; or the set of ''all'' languages over Σ). Then the union (written as +) and the concatenation (written as ·) of two elements of ''A'' again belong to ''A'', and so does the Kleene star operation applied to any element of ''A''. We obtain a Kleene algebra ''A'' with 0 being the
empty set In mathematics, the empty set is the unique set having no elements; its size or cardinality (count of elements in a set) is zero. Some axiomatic set theories ensure that the empty set exists by including an axiom of empty set, while in other ...
and 1 being the set that only contains the empty string. Let ''M'' be a monoid with identity element ''e'' and let ''A'' be the set of all
subset In mathematics, Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they are ...
s of ''M''. For two such subsets ''S'' and ''T'', let ''S'' + ''T'' be the union of ''S'' and ''T'' and set ''ST'' = . ''S''* is defined as the submonoid of ''M'' generated by ''S'', which can be described as ∪ ''S'' ∪ ''SS'' ∪ ''SSS'' ∪ ... Then ''A'' forms a Kleene algebra with 0 being the empty set and 1 being . An analogous construction can be performed for any small category. The
linear subspace In mathematics, and more specifically in linear algebra, a linear subspace, also known as a vector subspaceThe term ''linear subspace'' is sometimes used for referring to flats and affine subspaces. In the case of vector spaces over the reals, li ...
s of a unital
algebra over a field In mathematics, an algebra over a field (often simply called an algebra) is a vector space equipped with a bilinear product. Thus, an algebra is an algebraic structure consisting of a set together with operations of multiplication and addition ...
form a Kleene algebra. Given linear subspaces ''V'' and ''W'', define ''V'' + ''W'' to be the sum of the two subspaces, and 0 to be the trivial subspace . Define , the
linear span In mathematics, the linear span (also called the linear hull or just span) of a set of vectors (from a vector space), denoted , pp. 29-30, §§ 2.5, 2.8 is defined as the set of all linear combinations of the vectors in . It can be characterized ...
of the product of vectors from ''V'' and ''W'' respectively. Define , the span of the unit of the algebra. The closure of ''V'' is the
direct sum The direct sum is an operation between structures in abstract algebra, a branch of mathematics. It is defined differently, but analogously, for different kinds of structures. To see how the direct sum is used in abstract algebra, consider a more ...
of all powers of ''V''. V^ = \bigoplus_^ V^ Suppose ''M'' is a set and ''A'' is the set of all
binary relation In mathematics, a binary relation associates elements of one set, called the ''domain'', with elements of another set, called the ''codomain''. A binary relation over Set (mathematics), sets and is a new set of ordered pairs consisting of ele ...
s on ''M''. Taking + to be the union, · to be the composition and * to be the reflexive transitive closure, we obtain a Kleene algebra. Every Boolean algebra with operations \lor and \land turns into a Kleene algebra if we use \lor for +, \land for · and set ''a''* = 1 for all ''a''. A quite different Kleene algebra can be used to implement the Floyd–Warshall algorithm, computing the shortest path's length for every two vertices of a weighted directed graph, by Kleene's algorithm, computing a regular expression for every two states of a deterministic finite automaton. Using the
extended real number line In mathematics, the affinely extended real number system is obtained from the real number system \R by adding two infinity elements: +\infty and -\infty, where the infinities are treated as actual numbers. It is useful in describing the algebra ...
, take ''a'' + ''b'' to be the minimum of ''a'' and ''b'' and ''ab'' to be the ordinary sum of ''a'' and ''b'' (with the sum of +∞ and −∞ being defined as +∞). ''a''* is defined to be the real number zero for nonnegative ''a'' and −∞ for negative ''a''. This is a Kleene algebra with zero element +∞ and one element the real number zero. A weighted directed graph can then be considered as a deterministic finite automaton, with each transition labelled by its weight. For any two graph nodes (automaton states), the regular expressions computed from Kleene's algorithm evaluates, in this particular Kleene algebra, to the shortest path length between the nodes.


Properties

Zero is the smallest element: 0 ≤ ''a'' for all ''a'' in ''A''. The sum ''a'' + ''b'' is the least upper bound of ''a'' and ''b'': we have ''a'' ≤ ''a'' + ''b'' and ''b'' ≤ ''a'' + ''b'' and if ''x'' is an element of ''A'' with ''a'' ≤ ''x'' and ''b'' ≤ ''x'', then ''a'' + ''b'' ≤ ''x''. Similarly, ''a''1 + ... + ''a''''n'' is the least upper bound of the elements ''a''1, ..., ''a''''n''. Multiplication and addition are monotonic: if ''a'' ≤ ''b'', then * ''a'' + ''x'' ≤ ''b'' + ''x'', * ''ax'' ≤ ''bx'', and * ''xa'' ≤ ''xb'' for all ''x'' in ''A''. Regarding the star operation, we have * 0* = 1 and 1* = 1, * ''a'' ≤ ''b'' implies ''a''* ≤ ''b''* (monotonicity), * ''a''''n'' ≤ ''a''* for every natural number ''n'', where ''a''''n'' is defined as ''n''-fold multiplication of ''a'', * (''a''*)(''a''*) = ''a''*, * (''a''*)* = ''a''*, * 1 + ''a''(''a''*) = ''a''* = 1 + (''a''*)''a'', * ''ax'' = ''xb'' implies (''a''*)''x'' = ''x''(''b''*), * ((''ab'')*)''a'' = ''a''((''ba'')*), * (''a''+''b'')* = ''a''*(''b''(''a''*))*, and * ''pq'' = 1 = ''qp'' implies ''q''(''a''*)''p'' = (''qap'')*. If ''A'' is a Kleene algebra and ''n'' is a natural number, then one can consider the set M''n''(''A'') consisting of all ''n''-by-''n'' matrices with entries in ''A''. Using the ordinary notions of matrix addition and multiplication, one can define a unique *-operation so that M''n''(''A'') becomes a Kleene algebra.


History

Kleene introduced regular expressions and gave some of their algebraic laws. Although he didn't define Kleene algebras, he asked for a decision procedure for equivalence of regular expressions. Redko proved that no finite set of ''equational'' axioms can characterize the algebra of regular languages. Salomaa gave complete axiomatizations of this algebra, however depending on problematic inference rules. The problem of providing a complete set of axioms, which would allow derivation of all equations among regular expressions, was intensively studied by John Horton Conway under the name of ''regular algebras'', however, the bulk of his treatment was infinitary. In 1981, Kozen gave a complete infinitary equational deductive system for the algebra of regular languages. In 1994, he gave the above finite axiom system, which uses unconditional and conditional equalities (considering ''a'' ≤ ''b'' as an abbreviation for ''a'' + ''b'' = ''b''), and is equationally complete for the algebra of regular languages, that is, two regular expressions ''a'' and ''b'' denote the same language only if ''a'' = ''b'' follows from the above axioms. — An earlier version appeared as:


Generalization (or relation to other structures)

Kleene algebras are a particular case of
closed semiring : ''This article addresses the notion of quasiregularity in the context of ring theory, a branch of modern algebra. For other notions of quasiregularity in mathematics, see the disambiguation page quasiregular.'' In mathematics, specifically ri ...
s, also called
quasi-regular semiring : ''This article addresses the notion of quasiregularity in the context of ring theory, a branch of modern algebra. For other notions of quasiregularity in mathematics, see the disambiguation page quasiregular.'' In mathematics, specifically ri ...
s or
Lehmann semiring : ''This article addresses the notion of quasiregularity in the context of ring theory, a branch of Abstract algebra, modern algebra. For other notions of quasiregularity in mathematics, see the disambiguation page quasiregular (disambiguation), qua ...
s, which are semirings in which every element has at least one quasi-inverse satisfying the equation: ''a''* = ''aa''* + 1 = ''a''*''a'' + 1. This quasi-inverse is not necessarily unique. In a Kleene algebra, ''a''* is the least solution to the fixpoint equations: ''X'' = ''aX'' + 1 and ''X'' = ''Xa'' + 1. Closed semirings and Kleene algebras appear in algebraic path problems, a generalization of the shortest path problem.


See also

*
Action algebra In algebraic logic, an action algebra is an algebraic structure which is both a residuated semilattice and a Kleene algebra. It adds the star or reflexive transitive closure operation of the latter to the former, while adding the left and right re ...
*
Algebraic structure In mathematics, an algebraic structure consists of a nonempty set ''A'' (called the underlying set, carrier set or domain), a collection of operations on ''A'' (typically binary operations such as addition and multiplication), and a finite set of ...
* Kleene star * Regular expression *
Star 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—this originated as a joke, suggesting that rigs are ...
* Valuation algebra


Notes and references

*


Further reading

* {{cite book, author=Peter Höfner, title=Algebraic Calculi for Hybrid Systems, url=https://books.google.com/books?id=40vn5XIMAtwC, year=2009, publisher=BoD – Books on Demand, isbn=978-3-8391-2510-6, pages=10–13 The introduction of this book reviews advances in the field of Kleene algebra made in the last 20 years, which are not discussed in the article above. Algebraic structures Algebraic logic Formal languages Many-valued logic