A binary operation $\cdot$ on a set $A$ is a binary function $\cdot: A \times A \to A$.

$\cdot$ may have the following properties:

• associativity: $\forall a_1, a_2, a_3 \in A, a_1 \cdot (a_2 \cdot a_3) = (a_1 \cdot a_2) \cdot a_3$.
• identity: $\exists e \in A, \forall a \in A, e \cdot a = a \cdot e = a$.
• invertibility: $\forall a \in A, \exists a\inv \in A, a \cdot a\inv = a\inv \cdot a = e$.
• commutativity: $\forall a_1, a_2 \in A, a_1 \cdot a_2 = a_2 \cdot a_1$.

For a set $A$ equipped with a binary operation $\cdot$, we can define the following algebraic structures:

• semigroup: a set equipped with an associative operation $\cdot$
• monoid: a semigroup with an identity element $e$
• group: an invertible monoid
• Abelian group: a commutative group

A homomorphism $f: A \to B$ is a function compatible with the operations defining the algebraic structures:

• (mono)morphism: an injective homomorphism
• (epi)morphism: a surjective homomorphism
• (iso)morphism: a bijective homomorphism
• (endo)morphism: the domain and codomain are the same
• (auto)morphism: a bijective endomorphism

The corresponding homomorphism is called a semigroup/monoid/group homomorphism.

A (left) action of a set $A$ on another set $X$ is a binary function $\act: A \times X \to X$.

• $\act(a, -): X \to X$ is an endofunction on $X$.
• $\act(-, x): A \to X$ is a representation of $A$ on an object $x$ in $X$.

Let $A$ act on two sets $X$ and $Z$. Let $f: X \to Z$ be a function.

• $f$ is equivariant w.r.t. $A$ if $f \circ \act_X(a, -) = \act_Z(a, -) \circ f$.
• $f$ is invariant w.r.t. $A$ if $f \circ \act_X(a, -) = f$.

The curried function $a \mapsto \act(a, -)$ preserves a binary operation $\cdot$ on $A$ if $$\act(a_2, -) \circ \act(a_1, -) = \act(a_2 \cdot a_1, -).$$ The corresponding action is called a semigroup/monoid/group action.