§ The cutest way to write semidirect products

Given two monoids (M,+,0M)(M, +, 0_M) and (N,×,1N)(N, \times, 1_N), and a homomorphism ϕ:NEnd(M)\phi: N \rightarrow End(M), where End(M)End(M) is the endomorphism group of MM. We will notate ϕ(n)(m)\phi(n)(m) as nmMn \cdot m \in M. Now the semidirect product MϕNM \ltimes_\phi N is the set M×NM \times N equipped with the multiplication rule:
  • (m,n)(m,n)=(m+nm,nn)(m, n) (m', n') = (m + n \cdot m', nn')
This can also be written down as:
[10mn][10mn]=[10m+nmn×n] \begin{bmatrix} 1 & 0 \\ m & n \end{bmatrix} \begin{bmatrix} 1 & 0 \\ m' & n' \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ m + n \cdot m' & n \times n' \end{bmatrix}
This way of writing down semidirect products as matrices makes many things immediately clear:
  • The semidirect product is some kind of "shear" transform, since that's what a shear transformation looks like, matrix-wise.
  • The resulting monoid MϕNM \ltimes_{\phi} N has identity (0M,1N)(0_M, 1_N), since for the matrix to be identity, we need the 2nd row to be (0,1)(0, 1).
  • The inverse operation if (M,N)(M, N) were groups would have to be such that
[10m+nmn×n]=[1001] \begin{bmatrix} 1 & 0 \\ m + n \cdot m' & n \times n' \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix}
Hence:
  • nn=1nn' = 1 implies that n=1/nn' = 1/n.
  • m+nm=0m + n m' = 0 implies that m=m/nm' = -m/n.
which is indeed the right expression for the inverse.