| |||||||||
In mathematical logic and computer science, the Kleene star (or Kleene closure) is a unary operation, either on sets of strings or on sets of symbols or characters.The application of the Kleene star to a set V is written as V*. It is widely used for regular expressions, which is the context in which it was introduced by Stephen Kleene (1909-1994) to characterise certain automata.
Example of Kleene star applied to set of strings:
Example of Kleene star applied to set of characters:
The Kleene star is often generalized for any monoid (M, .), that is, a set M and binary operation '.' on M such that
If V is a subset of M, then V* is defined as the smallest superset of V that contains ε (the empty string) and is closed under the operation. V* is then itself a monoid, and is called the monoid generated by V. This is a generalization of the Kleene star discussed above since the set of all strings over some set of symbols forms a monoid (with string concatenation as binary operation).