Powers of Commuting Elements of Semigroup Commute

Theorem
Let $\left({S, \circ, \preceq}\right)$ be a naturally ordered semigroup.

Let $\left({T, *}\right)$ be a semigroup, and let $a \in T$.

Let the mapping $*^n: S \to T$ be defined as:
 * $\forall n \in S: *^n a = \begin{cases}

e & : n = 0 \\ a & : n = 1 \\ \end{cases}$ where $e$ is the identity element of $\left({T, *}\right)$, if such exists.
 * ^r * a & : n = r \circ 1

Let $a, b \in T$ such that $a$ commutes with $b$:
 * $a * b = b * a$

Then:
 * $\forall m, n \in S: \left({*^m a}\right) * \left({*^n b}\right) = \left({*^n b}\right) * \left({*^m a}\right)$

Proof
Let $a, b \in T: a * b = b * a$.

From Uniqueness of Recursive Mapping from Naturally Ordered Semigroup to Algebraic Structure with Identity:
 * $*^n: S \to T$ is the only mapping with that definition.

Because $\left({T, *}\right)$ is a semigroup, $*$ is associative on $T$.

Let $0$ be understood in this immediate context as the zero of the naturally ordered semigroup.

Let $1$ be understood in this immediate context as the one of the naturally ordered semigroup.

The proof proceeds by finite induction on $S$:

Let $S'$ be the set of all $n \in S$ such that:


 * $\left({*^n a}\right) * b = b * \left({*^n a}\right)$

Basis of the Induction
By definition of $*^n$:

So $0 \in S'$ whether or not $a * b = b * a$.

Also by definition of $*^n$:

demonstrating that $1 \in S'$.

This is the basis for the induction.

Induction Hypothesis
Suppose that $k \in S'$.

That is:


 * $\left({*^k a}\right) * b = b * \left({*^k a}\right)$

This is the induction hypothesis.

Induction Step
It remains to be shown that:
 * $k \in S' \implies k \circ 1 \in S'$

Thus:

So $k \circ 1 \in S'$.

Thus by the the Principle of Finite Induction:
 * $S' = S$

Thus:
 * $\forall m \in S: \left({*^m a}\right) * b = b * \left({*^m a}\right)$

Next note that $*^n b \in T$.

By repeating the argument above, replacing $a$ with $b$ and $b$ with $*^n a$, we show that:

Hence the result:
 * $\forall m, n \in S: \left({*^m a}\right) * \left({*^n b}\right) = \left({*^n b}\right) * \left({*^m a}\right)$