Constructing the inverse of a surjective homomorphism $g\otimes \operatorname{id}\colon B\otimes G \to C\otimes G$ Given an exact sequence of group homomorphisms on abelian groups $$A\xrightarrow{f} B \xrightarrow{g} C\to 0$$ I want to prove that the induced sequence $$A\otimes G \xrightarrow{f\otimes \operatorname{id}} B\otimes G\xrightarrow{g\otimes \operatorname{id}} C\otimes G \to 0$$ is also exact.
Let $I$ denote the image $\operatorname{im}(f\otimes \operatorname{id})$ and $K$ the kernel $\operatorname{ker} (g\otimes \operatorname{id})$. Now the solution says its sufficient to prove that $$(B\otimes G)\big/ I \cong C\otimes G$$
The solution does this by constructing the inverse as follows:

We define an inverse map: for every $c \in C$ we choose $b_c \in B$
which maps to $c$. Let $F$ be the free Abelian group on generators
$\{c\otimes g \mid c \in C, g \in G \}$. On generators of $F$ we set
$\varphi(c \otimes g)$ to be (the remainder class of) $b_c \otimes g$ in
$(B\otimes G) \big/I$. A different choice $b_c'$ would give the same
definition since $b_c\otimes a - b'_c\otimes a = (b_c - b'_c)\otimes a
 \in I$. Thus we get a well defined homomorphism $F \to (B\otimes G)
 \big/I $ which can be seen to descend to the tensor product $C \otimes
 G$. This is the desired inverse.

Unfortunately, i do have a hard time understanding the way this works. My questions:

*

*All we know is $I \subset K$, therefore the kernel in $(B\otimes G)\big/ I$ is not neccesarily trivial which means $g \otimes \operatorname{id}$ does not need to be injective. Why can we build the inverse anyways? For any $c \in C$ there might be various $b_c$ such that $b_c \mapsto c$, or am I missing something?

*Assuming the homomorphism works as proposed, how does it descend to the tensor product $C\otimes G$ precisely?

 A: 
Now the solution says its sufficient to prove that $$(B\otimes G)\big/ I \cong C\otimes G$$

I'd like to be extra pedantic here: this is not actually sufficient! What we need to do precisely is show that the map $(B \otimes G)/I \to C \otimes G$ induced by $g \otimes \operatorname{id}$ is an isomorphism. Of course, this implies that $(B\otimes G)\big/ I \cong C\otimes G$, but it's important that the isomorphism actually comes from this induced map! For example, the sequence of abelian groups $\mathbb{Z} \xrightarrow{0} \mathbb{Z} \xrightarrow{0} \mathbb{Z} \to 0$ is not exact, but $\mathbb{Z}/\operatorname{img}(0) \cong \mathbb{Z}$. In this example, the induced map $\mathbb{Z}/\operatorname{img}(0) \to \mathbb{Z}$ is $0$, which is not an isomorphism. Also, in your problem, of course it is also important to show exactness at $C \otimes G$, which amounts to showing that $g \otimes \operatorname{id}$ is surjective: hopefully you've already seen this part of the proof.
Now I'll try to answer your actual questions:

*

*You're right that a priori all we know is that $I \subseteq K$, but the whole point of this argument is to prove that $I = K$ (this is what it means for the sequence to be exact at $B \otimes G$)! By constructing the promised inverse, we will conclude that $I = K$. Also, just to be precise, $g \otimes \operatorname{id}$ will not be injective (because $I$ might not be trivial); rather, the map induced by $g \otimes \operatorname{id}$, which goes $(B \otimes G)/I \to C \otimes G$, will be injective. Let me call this induced map $\gamma$ for convenience. You also note:

for any $c \in C$ there might be various $b_c$ such that $b_c \mapsto c$

This is absolutely true, and indeed $g$ will not be invertible (in general). But this  doesn't matter in the proof; we only aim to construct an inverse to $\gamma$. So, for each $c \in C$, we fix some $b_c \in B$ such that $b_c \mapsto c$ ahead of time, and we don't worry about the fact that these choices were non-unique until it matters later.


*Perhaps an easier way to understand the map $\varphi$ is to think of it as a function $C \times G \to (B \otimes G)/I$. Then the function is very simple to define: $\varphi(c,g) = [b_c \otimes g]$ (where square brackets mean "equivalence class of"). The proof explains why the choices of $b_c$'s don't affect the equivalence classes of $b_c \otimes g$ in $(B \otimes C)/I$, therefore $\varphi$ is well-defined independently of our choices of $b_c$'s (while we had to make these choices to construct $\varphi$ in the first place, any choices we made would have resulted in the exact same function). Now you can prove directly that $\varphi$ is bilinear. For example, we have
$$\varphi(c_1 + c_2, g) = [b_{c_1 + c_2} \otimes g].$$
Since $b_{c_1} + b_{c_2} \mapsto c_1 + c_2$, and the choices of $b_c$'s don't matter, we can assume that $b_{c_1 + c_2} = b_{c_1} + b_{c_2}$. Therefore,
$$\varphi(c_1 + c_2, g) = [b_{c_1 + c_2} \otimes g] = [(b_{c_1} + b_{c_2}) \otimes g] = [(b_{c_1} \otimes g) + (b_{c_2} \otimes g)]\\ = [b_{c_1} \otimes g] + [b_{c_2} \otimes g] = \varphi(c_1, g) + \varphi(c_2,g).$$
Once you prove furthermore that $\varphi(\alpha c, g) = \alpha \varphi(c,g) = \varphi(c,\alpha g)$ and $\varphi(c, g_1 + g_2) = \varphi(c,g_1) + \varphi(c,g_2)$, you'll conclude that $\varphi$ is bilinear. By the universal property of tensor products, $\varphi$ induces a homomorphism $\overline{\varphi} : C \otimes G \to (B \otimes G)/I$ such that $\overline{\varphi}(c \otimes g) = \varphi(c,g)$. You can then check directly that $\gamma \circ \overline{\varphi} = \operatorname{id}_{C \otimes G}$ and $\overline{\varphi} \circ \gamma = \operatorname{id}_{(B \otimes G)/I}$, so $\gamma$ is an isomorphism.
A: The inclusion $I\subseteq K$ is easy to prove. Thus $g\otimes\mathrm{id}$ induces a homomorphism $\gamma\colon(B\otimes G)/I\to C\otimes G$. The kernel of this homomorphism is $K/I$, so if we see that the homomorphism is an isomorphism, we're done.
In order to define a homomorphism $C\otimes G\to (B\otimes G)/I$ we need a bilinear map $\tau\colon C\times G\to (B\otimes G)/I$ and to use the universal property (rather than using the construction via the free group).
How do we define such a bilinear map? Suppose $c\in C$ and $g\in G$. Then there exists $b_c\in B$ such that $g(b_c)=c$. We wish to define
$$
\tau(c,g)=(b_c\otimes g)+I
$$
but we have to check this is well defined to begin with. If $g(b_c')=c$, then $b_c-b_c'\in\ker g=\operatorname{im}f$, so $b_c'=f(a)+b_c$ and
$$
b_c'\otimes g=b_c\otimes g+f(a)\otimes g
$$
Since $f(a)\otimes g\in I$, we conclude that the map is indeed well defined (this answers one of your doubts).
Verifying it is bilinear is easy. Hence there exists a unique homomorphism $t\colon C\otimes G\to (B\otimes G)/I$ such that $t(c\otimes g)=\tau(c,g)$, for all $c\in C,g\in G$.
We need to check that $t\gamma$ and $\gamma t$ are the identity maps.
For $c\in C,g\in G$, $\gamma t(c\otimes g)=\gamma(b_c\otimes g+I)=g(b_c)\otimes g=c\otimes g$. So one is proved.
Try the other one.
