Miika Rankaviita

The Fundamental Theorem of Homomorphisms

01/06/2026

The first important theorem a student of algebra learns is the fundamental theorem of homomorphisms (FTH), or more commonly a special case known as the first isomorphism theorem. However, the theorem has more depth than might seem at first look and one cannot avoid seeing it pop up in various places along the journey to mastering algebra. In this post we will explore the basics, then move to progressively deeper waters to see how far the theorem can get us. The reader with prior exposure to abstract algebra is encouraged to skim over the easy sections.

Let us first spell out the statement of the FTH. Suppose φ:AB\varphi\colon A \to B is a homomorphism of groups, vector spaces, modules, rings, etc. and CC a normal subgroup, vector subspace, submodule, ideal, etc. If CC is contained in the kernel of φ\varphi, then there is a unique homomorphism ψ:A/CB\psi\colon A/C\to B making the below triangle commute \begin{tikzcd} A\rar{\varphi}\drar[swap]{\mathrm{pr}} & B \\ & A/C\uar[swap]{\psi} \end{tikzcd} where pr\mathrm{pr} is the usual projection to the quotient. By commutativity we mean φ=ψpr\varphi=\psi\circ\mathrm{pr}, where \circ denotes function composition. If C=kerφC=\ker\varphi, then ψ\psi is injective. In particular, we obtain an isomorphism A/kerφimφ.A/\ker\varphi\cong\mathrm{im}\,\varphi. The proof of this theorem is surprisingly easy and I encourage the reader to choose their favourite algebraic structure and give a try at proving it before reading on.

The FTH is a statement of universal algebra, which means it works for all algebraic structures. As a fun consequence, we can state the FTH for sets, since they are algebras in a trivial way. In this case the FTH says the following. Suppose f:XYf\colon X\to Y is any function of sets. Given an equivalence relation \sim on XX such that xxx\sim x' implies f(x)=f(x)f(x)=f(x'), there is a unique function g:X/Yg\colon X/\sim\to Y making the below triangle commute. \begin{tikzcd} X\rar{f}\drar[swap]{\pi} & Y \\ & X/\sim\uar[swap]{g} \end{tikzcd} If \sim identifies all the pairs x,xx,x' such that f(x)=f(x)f(x)=f(x'), then gg is an injection.

One could wonder if the FTH generalises further from universal algebra to category theory. For those interested, I leave a link to this MSE post.

Basic applications

The FTH is most often used to prove isomorphisms of the type G/NHG/N\cong H. The general approach is to construct a surjection GHG\to H and prove that its kernel coincides with NN. As a basic example, suppose we want to show that /nCn\mathbb{Z} /n\mathbb{Z}\cong C_{n}, where CnC_n is the cyclic group of order nn. Recall that the elements of CnC_n are of the form gig^i, where gg is a generator of CnC_n. We simply define the obvious homomorphism φ:Cn:mgm.\varphi\colon \mathbb{Z}\to C_{n}: m\mapsto g^m. Now, since gg generates CnC_n, it follows directly that φ\varphi is surjective with kernel nn\mathbb{Z}. Thus, the FTH implies /nCn\mathbb{Z}/n\mathbb{Z}\cong C_{n}. Applying the same argument to the determinant det:GLn(k)k\det\colon\mathrm{GL}_{n}(k)\to k gives GLn(k)/SLn(k)k\mathrm{GL}_{n}(k)/\mathrm{SL}_{n}(k)\cong k and applying it to the sign function sgn:Sn{±1}\mathrm{sgn}\colon S_{n}\to \{\pm 1\} gives Sn/An{±1}S_{n}/ A_{n}\cong\{\pm 1\}, where SnS_n is the symmetric group and AnA_n is the alternating group.

The FTH isn't only good for proving isomorphisms in specific cases, but also for proving more general statements. For example, the second and third isomorphism theorems are proved using the FTH. The second isomorphism theorem states (HN)/NH/(HN)(HN)/N\cong H /(H\cap N) where HH and NN are subgroups of some larger group and NN is normal. The isomorphism is obtained from the FTH by showing that the homomorphism H(HN)/N:h(h1)NH\to (HN) /N: h\mapsto (h\cdot 1)N is surjective with kernel HNH\cap N.

The third isomorphism theorem states (G/N)/(K/N)G/K,(G/N)/(K /N)\cong G /K, where NN and KK are normal subgroups of GG such that NKN\subseteq K. Again, this follows from the FTH after showing the homomorphism G(G/N)/(K/N):g(gN)(K/N)G\to (G/N)/(K /N):g\mapsto (gN)(K /N) is surjective with kernel KK.

Exact sequences

As we saw above, the FTH gives us the isomorphism A/kerφBA /\ker\varphi\cong B whenever φ:AB\varphi \colon A\to B is a surjection. In fact, we get something more. The FTH implies the existence of a commutative triangle \begin{tikzcd}[row sep=3em] A\rar{\varphi}\drar[swap]{\mathrm{pr}} &B\arrow[d,leftrightarrow,"\sim"]\\&A /K \end{tikzcd} where we denote K=kerφK=\ker\varphi for short. We could read this diagram as saying that φ\varphi is in some sense "isomorphic" to the projection pr:AA/K\mathrm{pr}\colon A\to A/K, because the two maps differ only by an isomorphism on the targets. Thus, we could make the statement that

Every surjective homomorphism is a quotient homomorphism.

Indeed, algebraists often use the terms "surjection" and "quotient" interchangeably when talking about a homomorphism.

Let's assume for a moment that we are working with Abelian structures such as Abelian groups, vector spaces or modules. In this setting we can form the quotient of AA by any subobject CAC\leq A, whereas one needs to require that the subobject be "normal" in general. Now, we can define a correspondence {injections AB}{surjections BC}\{\text{injections }A\to B\} \longleftrightarrow \{\text{surjections }B\to C\} where an injection ABA\to B is mapped to the projection BB/AB\to B/A onto the quotient and a surjection φ:BC\varphi\colon B\to C is mapped to the inclusion kerφB\ker\varphi\to B of the kernel into BB. One half of the bijectivity of this correspondence comes directly from the FTH and the above philosophy that surjections are quotients. The reader should pause at this point and convince themselves that this correspondence is indeed bijective.

Hence, the FTH teaches us that injections and surjections of Abelian structures come in pairs. Whenever you are given an injection or a surjection, you can pair it up with its corresponding homomorphism and form a "chain" by putting the arrows after one another AψBφCA\xrightarrow{\psi} B\xrightarrow{\varphi} C where ψ\psi is an injection and φ\varphi is the corresponding surjection. This means AkerφA\cong\ker\varphi and CB/AC\cong B/A. Observe that this chain satisfies imψ=kerφ\mathrm{im}\,\psi=\ker \varphi. This property is called exactness, and more precisely, one says that the chain is exact at BB. Since ψ\psi is injective and φ\varphi is surjective, the sequences 0AψBBφC0\begin{gather} 0\to A\xrightarrow{\psi}B \\ B\xrightarrow{\varphi} C\to 0 \end{gather} are exact at AA and CC respectively (can you see why?) Thus, we get an exact sequence 0AψBφC00\to A\xrightarrow{\psi} B\xrightarrow{\varphi} C\to 0 meaning it is exact at AA, BB and CC. An exact sequence of this form is called a short exact sequence (SES). In other words, any given injection or surjection can be "completed" into a SES, so every injection-surjection pair gives rise to a SES. Conversely, every SES defines an injection-surjection pair.

Abstracting the FTH

Since exactness can express injectivity and surjectivity, it can also characterise isomorphisms. Furthermore, it can neatly express the duality between injections and surjections that arises from the FTH. We could now ask if the FTH itself could be stated only using the language of exact sequences, and indeed this is possible. The following is equivalent to the FTH. Any diagram \begin{tikzcd} &A\rar{f}\dar[swap]{\alpha}&B\rar{g}\dar{\beta}&C\rar&0\\ 0\rar&A&39;\rar[swap]{f&39;}&B&39;\rar[swap]{g&39;}&C&39;& \end{tikzcd} with exact rows that commutes, i.e. fα=βff'\circ\alpha=\beta\circ f, can be completed uniquely into a diagram \begin{tikzcd} &A\rar{f}\dar[swap]{\alpha}&B\rar{g}\dar{\beta}&C\rar\dar{\exists!\gamma}&0\\ 0\rar&A&39;\rar[swap]{f&39;}&B&39;\rar[swap]{g&39;}&C&39;& \end{tikzcd} that commutes, i.e. γg=gβ\gamma\circ g=g'\circ\beta also. Furthermore, if α\alpha is surjective, then γ\gamma is injective. As a remark, this latter statement is generalised by the famous snake lemma.

Exact sequences and commutative diagrams provide a language that can express the FTH, but it also leads to natural extensions of it. As a concrete example, note that the FTH implies the rank-nullity theorem for vector spaces: dimVdim(kerφ)=dim(V/kerφ)=dim(imφ).\dim V-\dim(\ker\varphi)=\dim(V /\ker\varphi)=\dim(\mathrm{im}\,\varphi). In terms of exact sequences, this is equivalent to saying that for any SES 0UVW00\to U\to V\to W\to 0 of vector spaces, the alternating sum of their dimensions vanishes dimUdimV+dimW=0.\dim U-\dim V+\dim W=0. It turns out that this way of expressing the theorem generalises directly. Indeed, for any exact sequence 0V0V1Vm00\to V_{0}\to V_{1}\to\cdots\to V_{m}\to 0 of vector spaces, the alternating sum of their dimensions vanishes i=0m(1)idimVi=0.\sum _{i=0}^m(-1)^i\dim V_{i}=0. The concise way to express this fact is by saying: "dimension is additive over exact sequences".

In conclusion, properties of homomorphisms (injectivity, surjectivity and bijectivity) can be stated in terms of exactness, and the FTH can be applied and in some senses extended using the language of exact sequences and commutative diagrams. Therefore, most of basic algebra can be handled in this diagrammatic framework, because the basic proofs often consist in checking some homomorphism is injective or surjective and applying the FTH in the right places. While not everything reduces to exactness and commutative diagrams, this higher level of abstraction allows for stating, discovering and applying more complicated results.

Visualising homomorphisms

For me the most satisfying insight provided by the FTH is a visual interpretation of homomorphisms. To see how this works, fix a homomorphism φ:GH\varphi\colon G\to H. At the present φ\varphi need not be surjective. But note that the morphism doesn't "see" the stuff outside of imφ\mathrm{\mathrm{im}}\,\varphi anyways, so we might as well assume φ\varphi is surjective.

In the previous section we learnt that every surjection "is" a quotient. Now, there is a way to visually think of quotient homomorphisms which I find useful, and thanks to FTH we can use the same visual intuition for all homomorphisms. Here is how I would draw a quotient homomorphism pr:GG/N\mathrm{pr}\colon G\to G/N schematically.

Quotient homomorphism

I visualise the act of taking a quotient as collapsing the cosets, which I imagine as being "parallel" to each other. If you have seen algebraic topology or differential geometry, you might note that this is vaguely analogous to how you would think of vector or fibre bundles.

Groups of order 8

Not only do we have this static visualisation, but we can now take a group action on the domain of φ\varphi (the total space), and try to see how it "moves the points around" in the picture. Consider the action of GG on itself by left-multiplication. If we fix gGg\in G and look at what happens when we multiply that with the elements (points) of some coset hNhN (fibre), then we see that it moves them to the coset ghNghN. Why is this useful? At least to me this visual way of thinking was helpful in approaching the problem of classifying small groups. Let's take the groups of order 8 as an example.

In fact, I think that trying to classify small groups is among the best ways of forming a solid understanding of basic group theory, so I will not rob you of the opportunity to do it yourself by writing a complete description of how I would do it. Instead, I strongly encourage the reader to try classifying some groups, and I will only provide a rough outline of the classification of groups of order 8. If you have had a go at classifying groups GG of order 8, you can take a look at the below hints.

  1. I would start by looking at the orders of the group elements.
  2. First I would consider the case where every non-trivial element has order 2. In this case the group g\langle g\rangle generated by a fixed non-trivial element is normal and the quotient G/gG/\langle g\rangle is the Klein 4-group. By staring at the first figure below long enough should help in deciding which group GG must be.
  3. In the second case, there is an element gGg\in G of order 4. Since g\langle g\rangle has index 2, it is normal, so one can look at the quotient map GG/gG\to G/\langle g\rangle. Taking any hG\gh\in G\setminus \langle g\rangle gives G=ghgG=\langle g\rangle\cup h\langle g\rangle. See the second figure below.
  4. Next, suppose no element of G\gG\setminus\langle g\rangle has order 2. If any element of G\gG\setminus\langle g\rangle has order 8, we know what GG is, so we may suppose all the elements of G\gG\setminus\langle g\rangle have order 4. Now, this means GG has precisely one element of order 2 and the rest of the non-trivial elements have order 4. Thus, all of their squares must be the element g2g^2 of order 2. Now, you can think of it this way: g2g^2 is a non-trivial solution to the equation x2=1x^2=1. Maybe try writing 1:=g2-1:=g^2. The remaining non-trivial elements are solutions to the equation x2=g2=1x^2=g^2=-1.
  5. Now, suppose gg still has order 4 but there is an element hG\gh\in G\setminus\langle g\rangle of order 2. We can then try to see what ghgh equals.
  6. The case gh=1gh=1 is impossible.
  7. If gh=hggh=hg, then the image suggest what GG is. Look at the second figure again.
  8. If gh=hg2gh=hg^2, then what is the order of hghg?
  9. If gh=hg3gh=hg^3, then try proving (hg)2=1(hg)^2=1. Thus,Gg,hg4=h2=(hg)2=1G\leq\langle g,h\mid g^4=h^2=(hg)^{2}=1\rangleDoes this look familiar?

Quotientients of groups of order 8

If you did everything right, you should get the following classification: The group of order 8 with all non-trivial elements having order 2 is the product C2×C2×C2C_2\times C_2\times C_2. The groups of order 8 with a cyclic subgroup of order 4 are C8C_8, C4×C2C_4\times C_2, the quaternion group QQ, and the dihedral group D8D_8.

Semi-direct products

We managed to classify the groups of order 8, but unfortunately this approach is not very practical for larger groups. One problem is that if we fix g,hGg,h\in G, then from the picture we only know the coset where hh is mapped to after being multiplied with gg, but we have no further information on which element of the coset it gets mapped to. If we abuse geometric terminology a bit, we could say that we are able to find the "coordinate" of the product ghgh in the "horizontal direction" only by knowing the group structure on the quotient HH. Namely, it is the product of the "coordinates" of gg and hh. To specify the product ghgh completely, we need to know its "coordinate" in the "vertical direction" as well.

Coordinate lines on a group

In order to put a "coordinate system" on GG, where the "vertical coordinate axis" is the kernel KK, we need to also specify what the "horizontal coordinate axis" is. For each point xHx\in H, we need to specify an element of GG that represents the point on the vertical coordinate axis with coordinate xx. This can be encoded as a homomorphism σ:HG\sigma\colon H\to G satisfying φσ=idH\varphi\circ\sigma=\text{id}_{H}. Such a homomorphism is called a section of φ\varphi. Given such a section, we can now represent the elements of GG by coordinate pairs (x,y)(x,y), where xHx\in H and yKy\in K. Let's say such a pair corresponds to the element σ(x)yG\sigma(x)y\in G. Then, an element gGg\in G has coordinates (φ(g),σ(φ(g))1g)\left(\varphi(g),\sigma(\varphi(g))^{-1}g\right). This defines a bijection (not an isomorphism) between GG and the Cartesian product H×KH\times K (can you see why?).

The next question we can ask is: How does the product of two elements in GG look like in terms of coordinates? Fix two elements of GG with coordinates (x,y)(x,y) and (x,y)(x',y'). Their product is the element p:=(σ(x)y)(σ(x)y)p:=\left(\sigma(x)y\right)\left(\sigma(x')y'\right). To compute the coordinates of the product pp, note first that φ(p)=φ(σ(x))φ(y)φ(σ(x))φ(y)=xx.\varphi(p)=\varphi(\sigma(x))\varphi(y)\varphi(\sigma(x'))\varphi(y')=x x'. Thus, the first coordinate of pp is xxx x' and the second is σ(xx)1p=σ((x)1x1)σ(x)yσ(x)y=σ(x)1yσ(x)y.\sigma(x x')^{-1}p =\sigma((x')^{-1}x^{-1})\sigma(x)y\sigma(x')y' =\sigma(x')^{-1}y\sigma(x')y'. Hence, we have managed to write the group structure of GG completely in coordinates. Note that here we do not need to know the group structure on GG a priori. If we have a section σ:HG\sigma\colon H\to G, then we need to only understand the group structures of HH and KK in order to understand the group structure on GG.

As a final remark, I note that the group structure on H×KH\times K obtained by writing the products of GG in coordinates is isomorphic to the semi-direct product KψHK\rtimes_{\psi} H, where ψ:HAut(K)\psi\colon H\to \mathrm{Aut}(K) is the action defined by ψx(y)=σ(x)yσ(x)1.\psi_{x}(y)=\sigma(x)y\sigma(x)^{-1}. Thus, we have stumbled upon a construction equivalent to the semi-direct product just by following geometric intuition. We will now move on from pictures, and continue discussing classification problems

Extension problems

We will finish with extension problems, which nicely tie together the things we have discussed. Let's begin by fixing a SES 0AφBψC0.0\to A\xrightarrow{\varphi} B\xrightarrow{\psi} C\to 0. We learnt that if we only know φ:AB\varphi\colon A\to B, we can recover CC, and if we only know ψ:BC\psi\colon B\to C, we can recover AA. We could then ask, what we can say about BB if we only know AA and CC. This is known as an extension problem. For any given SES as above, the middle term BB is said to be an extension of CC by AA (recall that ψ:BC\psi\colon B\to C is "the same" as the projection BB/AB\to B/A, which visually speaking "contracts" the cosets of AA in BB, so conversely BB "extends" CC by AA). Solving the extension problem means classifying all possible extensions of CC by AA.

Finite groups

We actually solved an extension problem without realising it when we classified the groups of order 8. We split the problem into cases based on what orders the elements have. If a group GG of order 8 has an element gGg\in G of order 4, then the subgroup gG\langle g\rangle\leq G generated by gg is a normal subgroup of order 4. The quotient G/gG/\langle g\rangle has order 22, so it must be the cyclic group C2C_2. Thus, the groups of order 8 containing an element of order 4 are precisely the extensions of C2C_2 by C4C_4 1C4GC21.1\to C_{4}\to G\to C_{2}\to 1. We classified the extensions successfully, and they are: C4×C2C_4\times C_2, C8C_8, QQ, and D8D_8.

One could hope that solving extension problems would give a general approach to classifying all finite groups that is inductive on the order. If we have classified all groups of order n\leq n, then we can list all the pairs (N,H)(N,H) of non-trivial groups with orders adding to n+1n+1. If for each such pair we classify the extensions of HH by NN, do we then get all the groups of order n+1n+1? The only way that a group wouldn't arise as an extension of two groups of smaller order is if it has no proper, non-trivial normal subgroups. Such groups are said to be simple.

So, in order to approach the (undoubtedly megalomaniac) project of classifying all finite groups, we need to first classify finite simple groups, and then give a solution to the extension problem. The classification of finite simple groups, which was completed mostly towards the end of the 1900-century, is one of the most famous and grand achievements in the history of mathematics. However, the extension problem does not have a complete solution for finite groups.

Split extensions

Although the general extension problem is not solved, there is a solution to classifying the so-called split extensions. An extension 1NGφH11\to N\to G\xrightarrow{\varphi} H\to 1 is said to be a split extension, if φ\varphi admits a section. In other words, if there is a group homomorphism σ:HG\sigma\colon H\to G such that φσ=idH\varphi\circ\sigma=\mathrm{id}_{H}. I hope this sounds familiar. Indeed, such extensions are classified by the semi-direct products.

Sometimes it is possible to prove that given a pair (N,H)(N, H) of groups, all the extensions of HH by NN are split. For example, any group of order 12 is a split extensions of a pair (N,H)(N,H), where one of the groups has order 3 and the other has order 4. Using this fact, Keith Conrad gives a nice account of the classification of groups of order 12 in one of his blurbs. This is generalised by the Schur-Zassenhaus theorem, which states that all extensions of finite groups with coprime orders are split.

On the other hand, not all extensions are split. While the extensions 1C4C4×C2C21and1C4D8C21\begin{gather} 1\to C_{4}\to C_{4}\times C_{2}\to C_{2}\to 1\\ \text{and} \\ 1\to C_{4}\to D_{8}\to C_{2}\to 1 \end{gather} are split, the extensions 1C4C8C21and1C4QC21\begin{gather} 1\to C_{4}\to C_{8}\to C_{2}\to 1\\ \text{and} \\ 1\to C_{4}\to Q\to C_{2}\to 1 \end{gather} are not (can you find sections in the first two cases and show that there are no sections in last two?).

Abelian extensions

Another case where there is a novel way to solve the extension problem is where the first group NN in the extension 1NGH11\to N\to G\to H\to 1 is known to be Abelian. The extension problem is solved in this case by group cohomology. Because NN is Abelian, the last group HH acts on NN by hn=h1nhh\cdot n = h^{-1}nh for hHh\in H and nNn\in N. And since HH acts on NN, one can construct the second cohomology group H2(H,N)H^2(H,N). It turns out that this group is always in bijection with the set of extensions of NN by HH that induce the same action of HH on NN (up to isomorphism).

Since cyclic groups are Abelian, we get all the extensions of C2C_2 by C4C_4 even though not all of them are split. Thus, we will be able to verify that the four groups we got earlier by the process of elimination are the only extensions of C2C_2 by C4C_4. We only need to compute the cohomology groups H2(C2,C4)H^2(C_2,C_4) for the different actions of C2C_2 on C4C_4. Let's first figure out what the possible actions are. It's easy to check that there are two possible actions. There's the trivial action C2Aut(C4)C_2\to \mathrm{Aut}(C_{4}) that maps everything to the identity morphism on C4C_4, denote it by tt. In addition, there is the action that sends the generator of C2C_2 to the automorphism ρAut(C4)\rho\in \mathrm{Aut}(C_{4}) that swaps σ\sigma and σ1\sigma^{-1}, where σ\sigma is a generator of C4C_4, denote this action by ψ\psi.

Group cohomology is an example of a derived functor, which are seen in homological algebra, and it is defined in the same way as derived functors usually are. The first thing that needs to be done is computing a suitable resolution. In this case we want to resolve the module \mathbb{Z} over the group ring [C2]={a+bτa,b},\mathbb{Z}[C_{2}]=\{ a+b\tau\mid a,b\in \mathbb{Z}\}, where τ\tau is a generator of C2C_2. The integers are resolved by the long exact sequence 0aug[C2]1τ[C2]1+τ[C2]1τ[C2]1+τ0\leftarrow \mathbb{Z}\xleftarrow{\mathrm{aug}} \mathbb{Z}[C_{2}]\xleftarrow {1-\tau}\mathbb{Z}[C_{2}]\xleftarrow{1+\tau} \mathbb{Z}[C_{2}]\xleftarrow{1-\tau} \mathbb{Z}[C_{2}]\xleftarrow{1+\tau}\cdots Here aug\mathrm{aug} maps an element a+bτ[C2]a+b\tau\in \mathbb{Z}[C_{2}] to the sum a+ba+b\in \mathbb{Z}. The maps 1τ1-\tau and 1+τ1+\tau multiply an element of [C2]\mathbb{Z}[C_{2}] by 1τ1-\tau and 1+τ1+\tau respectively.

Once we have fixed an action of C2C_2 on C4C_4, we can view C4C_4 as a module over [C2]\mathbb{Z}[C_{2}]. Then, we remove \mathbb{Z} from the above sequence and take [C2]\mathbb{Z}[C_{2}]-module homs to C4C_4 to obtain a cochain complex 0Hom[C2]([C2],C4)Hom[C2]([C2],C4)0\to\mathrm{Hom}_{\mathbb{Z}[C_{2}]}(\mathbb{Z}[C_{2}],C_{4})\to \mathrm{Hom}_{\mathbb{Z}[C_{2}]}(\mathbb{Z}[C_{2}],C_{4})\to\cdots Finally, the group cohomology H(C2,C4)H^\bullet(C_2,C_4) is the cohomology of this cochain complex.

Note that Hom[C2]([C2],C4)C4\mathrm{Hom}_{\mathbb{Z}[C_{2}]}(\mathbb{Z}[C_{2}],C_{4})\cong C_{4}, so we actually have a cochain complex 0C4d0C4d1C4d20\to C_{4}\xrightarrow{d^{0}}C_{4}\xrightarrow{d^{1}}C_{4}\xrightarrow{d^{2}}\cdots Then, the second cohomology group is H2(C2,C4)=kerd2/imd1H^2(C_{2},C_{4})=\ker d^2/\mathrm{im}\,d^1. If one now tracks the morphisms, one will see that d2d^2 is defined by multiplying an element of C4C_4 by 1τ1-\tau and d1d^1 is defined by multiplying by 1+τ1+\tau. Now, for the sake of clarity let's denote by H2(C2,t)H^2(C_2,t) the cohomology H2(C2,C4)H^2(C_2,C_4) where we equip C4C_4 with the trivial action tt and similarly for H2(C2,ψ)H^2(C_2,\psi).

If we equip C4C_4 with the action tt, then kerd2=C4\ker d^2=C_4 and imd1={1,σ2}\mathrm{im}\,d^1=\{1,\sigma^2\}. Thus, H2(C2,t)=C2H^2(C_2,t)=C_2. If C4C_4 is equipped with the action ψ\psi, then kerd2={1,σ2}\ker d^2=\{1,\sigma^2\} and imd1=1\mathrm{im}\,d^1=1. Hence, we also have H2(C2,ψ)=C2H^2(C_2,\psi)=C_2. In conclusion, we have in total four extensions of C2C_2 by C4C_4. The extensions 1C4C4×C2C21and1C4C8C21\begin{gather} 1\to C_{4}\to C_{4}\times C_{2}\to C_{2}\to 1 \\ \text{and} \\ 1\to C_{4}\to C_{8}\to C_{2}\to 1 \end{gather} induce the trivial action tt on C4C_4 and the extensions 1C4D8C21and1C4QC21\begin{gather} 1\to C_{4}\to D_{8}\to C_{2}\to 1 \\ \text{and} \\ 1\to C_{4}\to Q\to C_{2}\to 1 \end{gather} induce the action ψ\psi on C4C_4.