A (formal) language is simply a set of strings.
Language equations are mathematical statements that resemble numerical equations, but the variables assume values of formal languages rather than numbers.
Among the most common operations on two languages A and B are the set union A ∪ B, and their concatenation A⋅B.
Finally, as an operation taking a single operand, the set A* denotes the Kleene star of the language A. Arden's rule states that the set A*⋅B is the smallest language that is a solution for X in the linear equation X = A⋅X ∪ B where X, A, B are sets of strings.
[1][2] Equivalently, the set B⋅A* is the smallest language that is a solution for X in X = X⋅A ∪ B. Arden's rule can be used to help convert some finite automatons to regular expressions,[how?]