Welcome to our community

Be a part of something great, join today!

Semi-direct products: a gentle introduction


Well-known member
MHB Math Scholar
Feb 15, 2012
Semi-direct products are often confusing to the budding group theorist, with good reason: they are a bit more complicated than the more transparent direct products.

First off, let's start with a (my apologies) formal definition:

We need 2 groups to start with: we shall call these groups (for reasons that hopefully will be clearer later on) $N$ and $H$.

The goal is to build a "bigger group" out of $N$ and $H$, but one in which $N$ and $H$ "interact"...for the time being, I will just say that $H$ "jumbles" $N$ before we "put them together". The language here is to make you think that $H$ "permutes" $N$ in some way, and that is exactly what we are going to do.

Since $N$ is a group, we don't just want our induced mapping $N \to N$ to be a bijection (an "ordinary" permutation), we would like it to be a homomorphism. But what is a bijective homomorphism from $N \to N$ called? An automorphism of $N$.

We would like this automorphism to at least preserve "something" of the group character of $H$. How do we do that? We insist that we have a homomorphism of $H$ into $\text{Aut}(N)$.

So in addition to our two groups, we insist we have one more ingredient: a homomophism $\theta: H \to \text{Aut}(N)$. Now that we have all our ingredients, we can cook them up.

We say we have a semi-direct product of $N$ by $H$ over $\theta$, written:

$N \rtimes_{\theta} H$

if we have a homomorphism $\theta: H \to \text{Aut}(N)$.

Well, that's all very well and good, but we haven't given even the bare basics of what a group should have:

1) An underlying set
2) A group operation

We should fix this, hmm?

(1) is the easy part: we will take as our underlying set, $N \times H$ (a pair: the first element of the pair lies in $N$, the second one lies in $H$). That seems straight-forward enough, right? This makes it clear that if our groups $N,H$ are finite:

$|N \rtimes_{\theta} H| = |N| \ast |H|$.

(2) is where things get a bit sticky: in order to get something we haven't seen before, $\theta$ is going to "gum up the works". Before we continue, a slight notational detour:

Normally, we would write $\theta(h)$ for the image of an element $h$ under $\theta$. However, $\theta(h)$ is a FUNCTION $N \to N$, and it's cumbersome (and a bit confusing) to write:


for the image of an element $n$ under the function which is $\theta(h)$. So we will instead write:

$\theta(h) = \theta_h \in \text{Aut}(N)$

so that we can write $\theta_h(n)$ for the image of $n$ under the automorphism $\theta_h$.

Now for the hard part (again, my apologies):

For our product, we set:

$(n,h)\ast(n',h') = (n\theta_h(n'),hh')$

As you can see, the second coordinate is not any different than the direct product, it's just the first one that is a little strange. Let's consider a very important special case, first:

It might be, that no matter which element of $H$ we pick, the resulting "jumble" of $N$ ISN'T one, that is, every element of $H$ induces the identity permutation of $N$. This is what we get if the homomorphism $H \to \text{Aut}(N)$ is trivial: that is:

$\theta_h = 1_N$ for all $h \in H$. In that case, our product becomes:

$(n,h) \ast (n',h') = (n\theta_h(n'),hh') = (n1_N(n'),hh') = (nn',hh')$

(since $1_N(n) = n$ for all $n \in N$), which is just the "ordinary" direct product.

So we see that the direct product is just a "special case" of the semi-direct product.

Now, although I *have* displayed a FUNCTION:

$(N \rtimes_{\theta} H) \times (N \rtimes_{\theta} H) \to (N \rtimes_{\theta} H)$

so we know we have a binary operation, I have NOT yet shown that this is a GROUP operation, which means we need to show (3) things:

(1) $\ast$ is associative
(2) $\ast$ has an identity in $n \times H$
(3) every $(n,h)$ has an inverse element in $N \times H$ under $\ast$.

Let's show (2) first, because it's easy:

I claim $(e_N,e_H)$ is an identity for $\ast$. Let's check this:

$(n,h)\ast(e_N,e_H) = (n\theta_h(e_N),he_H) = (n\theta_h(e_N),h)$.

Now since $\theta_h$ is an automorphism of $N$ (and thus a homomorphism), it maps the identity of $N$ to itself (it HAS to). Thus $\theta_h(e_N) = e_N$, so we have:

$(n,h)\ast(e_N,e_H) = (n\theta_h(e_N),h) = (ne_N,h) = (n,h)$. Halfway there. Now we check the other side:

$(e_N,e_H)\ast(n,h) = (e_N\theta_{e_H}(n),e_Hh) = (e_N\theta_{e_H}(n),h)$.

But now, because $\theta$ is a homomorphsim, it has to map $e_H$ to the identity of $\text{Aut}(N)$, and the identity of the automorphism group is the identity map on $N$. Thus $\theta_{e_H}(n) = (1_N)(n) = n$, so:

$(e_N,e_H)\ast(n,h) = (e_N\theta_{e_H}(n),h) = (e_Nn,h) = (n,h)$.

This proves (2).

(1) is going to be nasty....it's really a straight-forward application of the definition, but it's going to get messy. We need to show that:

$(n_1,h_1)\ast[(n_2,h_2)\ast(n_3,h_3)] = [(n_1,h_1)\ast(n_2,h_2)]\ast(n_3,h_3)$

Working on the left side, we get:

$(n_1,h_1)\ast[(n_2,h_2)\ast(n_3,h_3)] = (n_1h_1)\ast(n_2\theta_{h_2}(n_3),h_2h_3)$

$= (n_1(\theta_{h_1}(n_2\theta_{h_2}(n_3)),h_1(h_2h_3))$

Wow, that first coordinate really looks ugly. However, since $\theta_{h_1}$ is a homomorphism, we have:

$\theta_{h_1}(n_2\theta_{h_2}(n_3)) = \theta_{h_1}(n_2)\theta_{h_1}(\theta_{h_2}(n_3)) = \theta_{h_1}(n_2)((\theta_{h_1}\circ \theta_{h_2})(n_3))$

Since $\theta$ is a homomorphism of $H$ into $\text{Aut}(N)$, we have:

$\theta_{h_1} \circ \theta_{h_2} = \theta(h_1h_2) = \theta_{h_1h_2}$.

So we can re-write our LHS as:


and now using associativity in $N$ and $H$ we see this equals:

$((n_1\theta_{h_1}(n_2))\theta_{h_1h_2}(n_3),(h_1h_2),h_3)$ (**).

Now let's work on our right-hand side:

$[(n_1,h_1)\ast(n_2,h_2)]\ast(n_3,h_3) = (n_1\theta_{h_1}(n_2),h_1h_2)\ast(n_3,h_3)$

$= ((n_1\theta_{h_1}(n_2))\theta_{h_1h_2}(n_3),(h_1h_2)h_3)$

which is just what we obtained in (**), so the two sides are equal. Fortunately, we only have to prove this once (whew!).

For our last trick, we go on to exhibit an inverse. Once again, we will use a special property of $\theta$: since it is a homomorphism, we have that:

$\theta_{h^{-1}} = \theta_h^{-1}$

This means, in particular, that:

$\theta_h \circ \theta_{h^{-1}} = \theta_{e_H} = 1_N$

Since we have a two-sided identity, it suffices to show that we have a one-sided inverse (although you may check we have a two-sided inverse for yourselves, as an exercise):

$(n,h)\ast(\theta_{h^{-1}}(n^{-1}),h^{-1}) = (n\theta_h(\theta_{h^{-1}}(n^{-1})),hh^{-1}$

$ = (n((\theta_h \circ \theta_{h^{-1}})(n^{-1})),e_H) = (n,1_N(n^{-1}),e_H) = (nn^{-1},e_H) = (e_N,e_H)$

Thus $(\theta_{h^{-1}}(n^{-1},h^{-1})$ is an inverse for $(n,h)$.

Thus $(N \times H,\ast)$ truly is a group.

(continued in next post).

Questions and comments should be posted here:

Commentary for "Semi-direct products: a gentle introduction".


Well-known member
MHB Math Scholar
Feb 15, 2012
Ok, we've created a new group out of two smaller groups, using what seems to be a really complicated construction. What practical uses could such a beastly thing have? Let's look at an example:

Suppose $N$ is a cyclic group of order $n$. Because cyclic groups are abelian, the inverse map:

$n \mapsto n^{-1}$

is an automorphism:

$(nn')^{-1} = n'^{-1}n^{-1} = n^{-1}n'^{-1}$.

Let's call this map $i$.

It should be clear that $\{1_N,i\}$ forms a subgroup of $\text{Aut}(N)$ of order 2. Since any two groups of order 2 (which are cyclic, of course) are isomorphic, if we take $H = \{e,h\}$ to be a cyclic group of order 2, we have a homomorphism (actually an isomorphism, but that's not important) $H \to \text{Aut}(N)$ given by:

$e \mapsto 1_N$
$h \mapsto i$

So we have all the ingredients we need for a semi-direct product. Clearly, the group we get is of order $|N| \ast |H| = 2n$.

Since $N$ is cyclic, we can write $N = \langle x \rangle$ for some element $x$. We can separate the elements of $N \rtimes_{\theta} H$ into two types:

(a) those of the form $(x^k,e)$
(b) those of the form $(x^k,h)$.

Let's look at the elements of type (a) first. It should be clear these form a subgroup of our semi-direct product, since:

$(x^k,e)\ast(x^m,e) = (x^k\theta_e(x^m),ee) = (x^kx^m,e) = (x^{k+m},e)$

and that this subgroup is isomorphic to $N$ itself. This is indeed true of any general semi-direct product (and it is ALSO true that $\{(e_N,h):h \in H\}$ is a subgroup isomorphic to $H$).

But this subgroup possesses an unexpected property as well: it is NORMAL in the semi-direct product. Behold:

$(x^k,e)\ast(x^m,e)\ast(x^k,e)^{-1} = (x^{k+m},e)\ast(1_N(x^{-k}),e)$

$= (x^{k+m},e)\ast(x^{-k},e) = (x^{k+m-k},e) = (x^m,e)$

so conjugation by an element of type (a) lands us back with an element of type (a), and:

$(x^k,h)\ast(x^m,e)\ast(x^k,h)^{-1} = (x^k i(x^m),h)\ast(i(x^{-k},h^{-1})$

$= (x^kx^{-m},h)\ast(x^k,h^{-1}) = (x^kx^{-m}i(x^k),hh^{-1}) = (x^{k-m-k},e) = (x^{-m},e)$

so conjugation by an element of type (b) also returns an element of type (a).

This is no accident, this always happens in a semi-direct product, the subgroup $N \times \{e_H\}$ is a normal subgroup isomorphic to $N$ (prove this!).

So we know what happens when we multiply two elements of type (a) together, let's look at the other possible types we might get:

1) type (a) times type (b)
2) type (b) times type (a)
3) type (b) times type (b).

$(x^k,e)\ast(x^m,h) = (x^k1_N(x^m),eh) = (x^{k+m},h)$

$(x^k,h)\ast(x^m,e) = (x^k i(x^m),he) = (x^k(x^{-m})h) = (x^{k-m},h)$

Hmm...this is interesting...if we compare (writing 1 for the identity of $N$):

$(x^k,e)\ast(1,h) = (x^k1_N(1),eh) = (x^k,h)$

$(1,h)\ast(x^k,e) = (i(x^k),he) = (x^{-k},h)$

we can see that unless $N$ is of order 2, our semi-direct product is non-abelian.

In fact, if we define the following mapping:

$\phi:N \rtimes_{\theta} H \to D_n$ by:

$\phi (x^k,h^m) = r^ks^m$, where $r$ is a rotation of $2\pi/n$ and $s$ is a reflection about the x-axis, it is not hard to show this is an isomorphism. That is, $D_n$ is a semi-direct product of $\Bbb Z_n$ by $\Bbb Z_2$, and we can write the semi-direct operation ADDITIVELY as:

$(k,m)\ast(k',m') = ((k + (-1)^mk') (\text{mod }n), m+m' (\text{mod } 2))$

The second coordinate tells us if we have a reflection or rotation, and the first coordinate tells us WHICH rotation or reflection we have.

But I digress...let's look at what happens when we multiply two elements of type (b) together:

$(x^k,h) \ast (x^m,h) = (x^k i(x^m),h^2) = (x^{k-m},e)$

We see we get an element of type (a). THIS is why "two reflections composed gives a rotation". How does the element of order 2 in $H$ affect the cyclic group $N$ (that is, what does taking the inverse of a rotation do)? It "flips it over", reversing orientation.

The "jumbling" then, that $H$ does to $N$, is either: nothing (if the second coordinate of the first thing we're multiplying is the identity of $H$), or: reversing the order (if the element of $H$ in the second coordinate of the first term in a product is the non-identity one).

Exercise for the reader:

Realize $S_3$ as the semi-direct product of its two subgroups:

$N = \{e,(1\ 2\ 3), (1\ 3\ 2)\}$ and
$H = \{e, (1\ 2)\}$


$\theta:H \to \text{Aut}(N)$ given by:

$\theta_e = 1_N$

$\theta_{(1\ 2)}(n) = n^{-1}$.

(continued in next post).


Well-known member
MHB Math Scholar
Feb 15, 2012
So, so far we've seen we can make a bigger group out of two smaller groups. But there are lots of ways to do this, and moreover, usually the situation is the opposite:

We have some large(-ish) group $G$, which we would like to understand in terms of smaller subgroups of $G$, which we are more comfortable with. This is what the following theorem accomplishes:

Let $G$ be a group with 2 subgroups $H,N$ such that:

1) $N$ is normal in $G$
2) $G = NH$
3) $N \cap H = \{e\}$

Then $G$ is isomorphic to a semi-direct product $N \rtimes_{\theta} H$.


The isomorphism we would like to come up with is:

$nh \mapsto (n,h)$

which by (2) and (3) is clearly a bijection. The problem is: how do we come up with $\theta$?

Consider the inner automorphism induced by $h \in H$:

$g \mapsto hgh^{-1}$.

Since $N$ is normal in $G$, this inner automorphism restricted to $N$ yields an automorphism of $N$, that is we define:

$\theta:H \to \text{Aut}(N)$ by:

$\theta_h(n) = hnh^{-1}$.

Now we can define:

$\phi:G \to N \rtimes_{\theta} H$ by:

$\phi(g) = \phi(nh) = (n,h)$

We have already seen that $\phi$ is bijective, it only remains to be seen that $\phi$ is indeed a homomorphism. So let $g = nh, g' = n'h'$.

Then $\phi(gg') = \phi(nhn'h') = \phi(nhn'(h^{-1}h)h') = \phi(n(hn'h^{-1})hh')$

Now, since $N$ is normal, $hn'h^{-1} \in N$, so $nhn'h^{-1} \in N$, and $hh' \in H$, and by (2) and (3) this is the UNIQUE way to write $gg' \in G$ as a product of something in $N$ and something in $H$. Hence:

$\phi(gg') = \phi((nhn'h^{-1})(hh')) = (nhn'h^{-1},hh') = (n\theta_h(n'),hh')$

$= (n,h)\ast(n',h') = \phi(nh)\ast\phi(n'h') = \phi(g)\ast\phi(g')$

and so $\phi$ is a homomorphism.

Exercise left for the reader:

Suppose $G = N \rtimes_{\theta} H$ for two groups $N,H$. Prove:

(a) $N' = N \times \{e_H\}$ is a subgroup of $G$ isomorphic to $N$
(b) $H' = \{e_N\} \times H$ is a subgroup of $G$ isomorphic to $H$
(c) $N'$ is normal in $G$
(d) $N' \cap H' = \{e_G\}$
(e) $G = N'H'$
(f) $(e_N,h)(n,e_H)(e_N,h)^{-1} = (\theta_h(n),e_H)$ (in $G$, the action of $H'$ on $N'$ is just conjugation).

Deduce that $H$ is isomorphic to $G/N$, and thus that there is a surjective homomorphism $G \to H$ with kernel $N$ which is the identity on $H$.