Surjectivity of products of homomorphisms We have $\{f_i : G_i \to H_i\}$ is a family of group homomorphisms. Then $f= \prod f_i: \prod G_i \to \prod H_i$ defined by $(a_i) \mapsto (f_i (a_i))$ is also an homomorphism.
Prove $f$ is surjective $\iff$ each $f_i$ is surjective. Another something we know is that $Im(\prod f_i) = \prod Im(f_i)$.
What I've tried so far:
$\prod f_i$ is surjective $\iff Im(\prod f_i)= \prod Im(f_i)= \prod H_i$
$\iff Im(f_i) = H_i$ for each $i \in I$.
$\iff f_i$ is surjective for each $i \in I$.
 A: Suppose each $f_i$ is surjective. We seek to show that $\Pi\ f_i$ is surjective.
So let's pick any $(b_i) \in \Pi\ H_i$. Now we have that each $b_i \in H_i$, and since the $f_i$ are surjective, $b_i = f_i(a_i)$ for at least one $a_i \in G_i$, for every $i$. Then $(\Pi\ f_i)[(a_i)] = (f_i(a_i)) = (b_i) (\ast)$, that is every $(b_i) \in \Pi\ H_i$ has a pre-image under $\Pi\ f_i$.
($(\ast)$: The defining property of the direct product is this: if $\pi_i$ is the homomorphism that sends $(a_i) \mapsto a_i$, then $\pi_i \circ (\Pi\ f_i) = f_i \circ \pi_i$. This is the justification for distributing the product homomorphism  into its component ("coordinate") homomorphisms in this equation).
On the other hand, suppose $\Pi\ f_i$ is surjective. So we know there exists $(a_i) \in \Pi\ G_i$ for any $(b_i) \in \Pi\ H_i$ such that $(\Pi\ f_i)[(a_i)]  = (b_i)$.
Thus $\pi_i((\Pi\ f_i)[(a_i)]) = \pi_i((b_i)) = b_i$.
But $\pi_i((\Pi\ f_i)[(a_i)]) = (\pi_i \circ \Pi\ f_i)((a_i)) = (f_i \circ \pi_i)((a_i)) = f_i(a_i)$.
Thus for each $i$, there exists for any $b_i \in H_i$ some $a_i \in G_i$ with $f_i(a_i) = b_i$, that is: each $f_i$ is surjective.
(Note: this is a lot more transparent if we use a finite indexing set like $i = 1,2$).
A: The proof is incomplete. The main point is
$$
\operatorname{Im}\Bigl(\prod_i f_i\Bigr)=
\prod_i \operatorname{Im}(f_i)
$$
that you're jumping over without comments.
There is an easier proof, using the fact that we know one element in any group, namely the identity.
Suppose each $f_i$ is surjective and consider $(b_i)\in\prod_iH_i$; for all $i$, choose $a_i\in G_i$ with $f_i(a_i)=b_i$; this provides the element $(a_i)\in\prod_i G_i$ that's mapped to the given one.
For the converse, consider $b_{i_0}\in H_{i_0}$ (for a fixed $i_0$), and the element $b=(b_i)\in\prod_iH_i$ defined by
$$
b_i=\begin{cases}
b_{i_0} & \text{if $i=i_0$}\\[6px]
1       & \text{if $i\ne i_0$}
\end{cases}
$$
Pick $a\in\prod_i G_i$ that's mapped to $\hat{b}$ and you're done.
