# Transformation semigroup

In algebra, a transformation semigroup (or composition semigroup) is a collection of transformations (functions from a set to itself) that is closed under function composition. If it includes the identity function, it is a monoid, called a transformation (or composition) monoid. This is the semigroup analogue of a permutation group.
A transformation semigroup of a set has a tautological semigroup action on that set. Such actions are characterized by being faithful, i.e., if two elements of the semigroup have the same action, then they are equal.
An analogue of Cayley's theorem shows that any semigroup can be realized as a transformation semigroup of some set.
In automata theory, some authors use the term transformation semigroup to refer to a semigroup acting faithfully on a set of "states" different from the semigroup's base set. There is a correspondence between the two notions.

## Transformation semigroups and monoids

A transformation semigroup is a pair (X,S), where X is a set and S is a semigroup of transformations of X. Here a transformation of X is just a function from a subset of X to X, not necessarily invertible, and therefore S is simply a set of transformations of X which is closed under composition of functions. The set of all partial functions on a given base set, X, forms a regular semigroup called the semigroup of all partial transformations (or the partial transformation semigroup on X), typically denoted by ${\mathcal {PT}}_{X}$.
If S includes the identity transformation of X, then it is called a transformation monoid. Any transformation semigroup S determines a transformation monoid M by taking the union of S with the identity transformation. A transformation monoid whose elements are invertible is a permutation group.
The set of all transformations of X is a transformation monoid called the full transformation monoid (or semigroup) of X. It is also called the symmetric semigroup of X and is denoted by T$_X$. Thus a transformation semigroup (or monoid) is just a subsemigroup (or submonoid) of the full transformation monoid of X.
If (X,S) is a transformation semigroup then X can be made into a semigroup action of S by evaluation:
    $s\cdot x=s(x){\text{ for }}s\in S,x\in X.$
This is a monoid action if S is a transformation monoid.
The characteristic feature of transformation semigroups, as actions, is that they are faithful, i.e., if
    $s\cdot x=t\cdot x{\text{ for all }}x\in X,$
then s = t. Conversely if a semigroup S acts on a set X by T(s,x) = s • x then we can define, for s ∈ S, a transformation T$_s$ of X by
    $T_{s}(x)=T(s,x).\,$
The map sending s to T$_s$ is injective if and only if (X, T) is faithful, in which case the image of this map is a transformation semigroup isomorphic to S.

## Cayley representation

In group theory, Cayley's theorem asserts that any group G is isomorphic to a subgroup of the symmetric group of G (regarded as a set), so that G is a permutation group. This theorem generalizes straightforwardly to monoids: any monoid M is a transformation monoid of its underlying set, via the action given by left (or right) multiplication. This action is faithful because if ax = bx for all x in M, then by taking x equal to the identity element, we have a = b.
For a semigroup S without a (left or right) identity element, we take X to be the underlying set of the monoid corresponding to S to realise S as a transformation semigroup of X. In particular any finite semigroup can be represented as a subsemigroup of transformations of a set X with |X| ≤ |S| + 1, and if S is a monoid, we have the sharper bound |X| ≤ |S|, as in the case of finite groups.$^{:21}$

### In computer science

In computer science, Cayley representations can be applied to improve the asymptotic efficiency of semigroups by reassociating multiple composed multiplications. The action given by left multiplication results in right-associated multiplication, and vice versa for the action given by right multiplication. Despite having the same results for any semigroup, the asymptotic efficiency will differ. Two examples of useful transformation monoids given by an action of left multiplication are the functional variation of the difference list data structure, and the monadic Codensity transformation (a Cayley representation of a monad, which is a monoid in a particular monoidal functor category).

## Transformation monoid of an automaton

Let M be a deterministic automaton with state space S and alphabet A. The words in the free monoid A$^∗$ induce transformations of S giving rise to a monoid morphism from A$^∗$ to the full transformation monoid T$_S$. The image of this morphism is the transformation semigroup of M.$^{:78}$
For a regular language, the syntactic monoid is isomorphic to the transformation monoid of the minimal automaton of the language.$^{:81}$