What is the motivation for defining both homogeneous and inhomogeneous cochains?

Let me give you three examples where nature picks your first complex:

First: Let $G$ be a group, let $A$ be a $G$-module, and let $A\rtimes G$ be the direct product (as a set, this is $A\times G$, and it becomes a group with multiplication such that $(a,g)\cdot(b,h)=(a+g\cdot b,gh)$ for all $a$, $b\in A$ and all $g$, $h\in G$) Consider the projection map $p:A\rtimes G\to G$, which is a group homomorphism. A section of $p$ is a group homomorphism $s:G\to A\rtimes G$ such that $f\circ s=\mathrm{id}_G$. It is immediate to check that a section determines uniquely and is determined uniquely by a function $\sigma:G\to A$ such that $$g\cdot\sigma(h)+\sigma(g)=\sigma(gh)$$ for all $g$, $h\in G$; indeed, the relation between $s$ and $\sigma $ is that $s(g)=(\sigma(g),g)$ for all $g\in G$. The function $\sigma$ is then a $1$-cocycle defined on your first complex.

Second: Consider an extension

          i      f
0 ---> A ---> E ---> G ---> 1

of a group $G$ by an abelian group $A$ (whose operation I'll write $+$). Let $\sigma:G\to E$ be a set-theoretic section of $f$. For all $g$, $h\in G$ we have $f(\sigma(g)\sigma(h))=f(\sigma(g))f(\sigma(h))=gh=f(\sigma(gh))$, so that there exists a unique element $\alpha(g,h)\in A$ such that $$\sigma(g)\sigma(h)=\iota(\alpha(g,h))\sigma(gh).$$

There is an action of $G$ on $A$ such that $$\iota(g\cdot a)=\sigma(g)\iota(a)\sigma(g)^{-1}$$ for all $g\in G$ and all $a\in A$. It is eeasy to check that this is indeed an action of $G$ on $A$ by group automorphisms (here it is where we need that $A$ be abelian) In other words, $A$ is a $G$-module.

Now, whenever $g$, $h$, $k$ are in $G$ we have $$(\sigma(g)\sigma(h))\sigma(k)=\iota(\alpha(g,h))\sigma(gh)\sigma(k)=\iota(\alpha(g,h)+\alpha(gh,k))\sigma(ghk)$$ and $$\sigma(g)(\sigma(h)\sigma(k))=\sigma(g)\iota(\alpha(h,k))\sigma(hk)=\iota(g\cdot\alpha(h,k))\sigma(g)\sigma(hk)=\iota(g\cdot\alpha(h,k)+\alpha(g,hk))\sigma(ghk).$$ Since multiplication in $G$ is associative, the left-hand sides in these last two equations are equal, so so are their right hand sides---and since $\iota$ is injective, we see that $$g\cdot\alpha(h,k)+\alpha(g,hk)=\alpha(g,h)+\alpha(gh,k)$$ or, equivalently, that $$g\cdot\alpha(h,k)-\alpha(gh,k)+\alpha(g,hk)-\alpha(g,h)=0.$$ This means that $\alpha$ determines a $2$-cocyle on your first the complex.

Third: If $G$ is a group, the category of $G$-modules over a field $k$ is a monoidal category $\mathscr M_G$ with respect to the tensor product of representations. If $\alpha:G\times G\times G\to k^\times$ is a $3$-cocycle defined on your first complex and with values in the multiplicative group of $k$, then one can "twist" the associativity isomorphisms of $\mathscr M_G$ using $\alpha$ to obtain a different, slightly more fun monoidal category $\mathscr M_G(\alpha)$, and if you work this out in detail, you will see that again the cocycle condition with respect to your first complex is precisely the pentagon condition for a monoidal structure.

These are just three instances where nature picks inhomopgenous cochains.


The inhomogeneous cochain construction is a standard free resolution of $\mathbb Z$ (the trivial $G$-module) as a $\mathbb Z[G]$-module, and it is explicitly constructed to be such. Since taking $G$-invariants is the same as forming $Hom_G(\mathbb Z, A)$, this is what is needed to compute derived functors of this operation (which is what group cohomology is, from a derived functor point of view).

On the other hand, homogenous cochains are what you get if you compute the cohomology of local systems (twisted coefficients) on the classifying space for $G$, which is how group cohomology first arose (explicitly --- there were implicit examples of group cohomology classes much earlier) in the literature. The "homogeneity" reflects the fact that we are computing with a certain $G$-equivariant simplicial complex.

Loosely, and roughly, speaking, the inhomogeneous picture is more algebraic, and the homogeneous picture is more topological.