[proofplan]
We prove exactness by using the finite-support description of direct sums. The map $F$ is injective because each component map $f_i$ is injective, and $G \circ F = 0$ because each component composite $g_i \circ f_i$ is zero. For the middle exactness and surjectivity, the only point requiring care is finite support: when choosing preimages componentwise, we choose nonzero preimages only on the finite support of the given element.
[/proofplan]
custom_env
admin
[step:Verify that the componentwise direct-sum maps are well-defined $R$-linear maps]
For each $i \in I$, the maps $f_i: A_i \to B_i$ and $g_i: B_i \to C_i$ are $R$-linear. Define
\begin{align*}
F: \bigoplus_{i \in I} A_i \to \bigoplus_{i \in I} B_i
\end{align*}
by $F((a_i)_{i \in I}) = (f_i(a_i))_{i \in I}$, and define
\begin{align*}
G: \bigoplus_{i \in I} B_i \to \bigoplus_{i \in I} C_i
\end{align*}
by $G((b_i)_{i \in I}) = (g_i(b_i))_{i \in I}$.
If $a = (a_i)_{i \in I} \in \bigoplus_{i \in I} A_i$, then the support
\begin{align*}
\operatorname{supp}(a) := \{i \in I : a_i \ne 0\}
\end{align*}
is finite. Since each $f_i$ is $R$-linear, $f_i(0) = 0$, so
\begin{align*}
\operatorname{supp}(F(a)) \subset \operatorname{supp}(a).
\end{align*}
Thus $F(a)$ has finite support and belongs to $\bigoplus_{i \in I} B_i$. The same argument, using $g_i(0) = 0$, shows that $G(b) \in \bigoplus_{i \in I} C_i$ for every $b \in \bigoplus_{i \in I} B_i$.
For $a = (a_i)_{i \in I}$ and $a' = (a'_i)_{i \in I}$ in $\bigoplus_{i \in I} A_i$, and for $r \in R$, componentwise $R$-linearity gives
\begin{align*}
F(a + a') = (f_i(a_i + a'_i))_{i \in I} = (f_i(a_i) + f_i(a'_i))_{i \in I} = F(a) + F(a')
\end{align*}
and
\begin{align*}
F(ra) = (f_i(ra_i))_{i \in I} = (r f_i(a_i))_{i \in I} = rF(a).
\end{align*}
Hence $F$ is $R$-linear. The identical componentwise calculation with $g_i$ in place of $f_i$ shows that $G$ is $R$-linear.
[/step]
custom_env
admin
[step:Prove that $F$ is injective]
Let $a = (a_i)_{i \in I} \in \bigoplus_{i \in I} A_i$ satisfy $F(a) = 0$. By the definition of $F$, this means
\begin{align*}
(f_i(a_i))_{i \in I} = 0.
\end{align*}
Therefore $f_i(a_i) = 0$ for every $i \in I$. Since the sequence
\begin{align*}
0 \to A_i \xrightarrow{f_i} B_i
\end{align*}
is exact at $A_i$, each $f_i$ is injective. Hence $a_i = 0$ for every $i \in I$, so $a = 0$. Thus $\ker F = \{0\}$, and $F$ is injective.
[/step]
custom_env
admin
[step:Show that the composite $G \circ F$ is zero]
Let $a = (a_i)_{i \in I} \in \bigoplus_{i \in I} A_i$. Then
\begin{align*}
(G \circ F)(a) = G((f_i(a_i))_{i \in I}) = (g_i(f_i(a_i)))_{i \in I}.
\end{align*}
For each $i \in I$, exactness of
\begin{align*}
A_i \xrightarrow{f_i} B_i \xrightarrow{g_i} C_i
\end{align*}
at $B_i$ gives $\operatorname{im} f_i = \ker g_i$, and therefore $g_i(f_i(a_i)) = 0$. Hence $(G \circ F)(a) = 0$ for every $a$, so
\begin{align*}
\operatorname{im} F \subset \ker G.
\end{align*}
[/step]
custom_env
admin
[step:Lift every element of $\ker G$ through $F$ using finite support]Let $b = (b_i)_{i \in I} \in \ker G$. Then
\begin{align*}
G(b) = (g_i(b_i))_{i \in I} = 0,
\end{align*}
so $g_i(b_i) = 0$ for every $i \in I$. Exactness at $B_i$ gives $\ker g_i = \operatorname{im} f_i$, hence for every $i \in I$ there exists $a_i \in A_i$ such that $f_i(a_i) = b_i$.
Let
\begin{align*}
S := \{i \in I : b_i \ne 0\}.
\end{align*}
Since $b \in \bigoplus_{i \in I} B_i$, the set $S$ is finite. For each $i \in S$, choose $a_i \in A_i$ with $f_i(a_i) = b_i$. For each $i \in I \setminus S$, set $a_i = 0$. Then $a = (a_i)_{i \in I}$ has support contained in the finite set $S$, so
\begin{align*}
a \in \bigoplus_{i \in I} A_i.
\end{align*}
For $i \in S$, $f_i(a_i) = b_i$ by construction. For $i \in I \setminus S$, we have $b_i = 0$ and $f_i(a_i) = f_i(0) = 0$. Therefore $F(a) = b$, so $b \in \operatorname{im} F$. This proves
\begin{align*}
\ker G \subset \operatorname{im} F.
\end{align*}
Together with the previous step, $\ker G = \operatorname{im} F$.[/step]
custom_env
admin
[guided]We must prove the reverse inclusion $\ker G \subset \operatorname{im} F$. This is the only place where the [direct sum](/page/Direct%20Sum), rather than a direct product, needs explicit attention.
Take an element
\begin{align*}
b = (b_i)_{i \in I} \in \ker G.
\end{align*}
By definition of $G$, the equation $G(b) = 0$ means
\begin{align*}
(g_i(b_i))_{i \in I} = 0.
\end{align*}
Equality of families is componentwise equality, so $g_i(b_i) = 0$ for every $i \in I$. Thus $b_i \in \ker g_i$ for every $i$.
Now use exactness of the original short exact sequence at $B_i$. For each $i \in I$, exactness gives
\begin{align*}
\ker g_i = \operatorname{im} f_i.
\end{align*}
Therefore each component $b_i$ has at least one preimage under $f_i$. The subtle point is that if $I$ is infinite, choosing arbitrary preimages for every $i \in I$ could create a family with infinite support. We avoid this by using the finite support of $b$.
Define the finite support set
\begin{align*}
S := \{i \in I : b_i \ne 0\}.
\end{align*}
Because $b$ lies in the direct sum $\bigoplus_{i \in I} B_i$, the set $S$ is finite. For every $i \in S$, choose an element $a_i \in A_i$ such that
\begin{align*}
f_i(a_i) = b_i.
\end{align*}
For every $i \in I \setminus S$, define $a_i := 0$. Then the family
\begin{align*}
a := (a_i)_{i \in I}
\end{align*}
has support contained in $S$, because outside $S$ we defined its components to be zero. Since $S$ is finite, this proves
\begin{align*}
a \in \bigoplus_{i \in I} A_i.
\end{align*}
Finally compute $F(a)$ componentwise. If $i \in S$, then $f_i(a_i) = b_i$ by the chosen preimage. If $i \in I \setminus S$, then $b_i = 0$ by definition of $S$, while $a_i = 0$, and $R$-linearity gives $f_i(a_i) = f_i(0) = 0 = b_i$. Hence every component of $F(a)$ equals the corresponding component of $b$, so
\begin{align*}
F(a) = b.
\end{align*}
Thus every element of $\ker G$ lies in $\operatorname{im} F$, which proves $\ker G \subset \operatorname{im} F$. Since the previous step already proved $\operatorname{im} F \subset \ker G$, we conclude
\begin{align*}
\ker G = \operatorname{im} F.
\end{align*}[/guided]
custom_env
admin
[step:Prove that $G$ is surjective using finite support]
Let $c = (c_i)_{i \in I} \in \bigoplus_{i \in I} C_i$. Define its finite support by
\begin{align*}
T := \{i \in I : c_i \ne 0\}.
\end{align*}
For each $i \in T$, exactness of
\begin{align*}
B_i \xrightarrow{g_i} C_i \to 0
\end{align*}
at $C_i$ says that $g_i$ is surjective, so choose $b_i \in B_i$ with $g_i(b_i) = c_i$. For $i \in I \setminus T$, set $b_i = 0$. Then $b = (b_i)_{i \in I}$ has support contained in $T$, so $b \in \bigoplus_{i \in I} B_i$.
For $i \in T$, $g_i(b_i) = c_i$ by construction. For $i \in I \setminus T$, $c_i = 0$ and $g_i(b_i) = g_i(0) = 0$. Therefore $G(b) = c$. Since $c$ was arbitrary, $G$ is surjective.
[/step]
custom_env
admin
[step:Conclude exactness of the direct-sum sequence]
We have proved that $F$ is injective, that $\operatorname{im} F = \ker G$, and that $G$ is surjective. These are exactly the three exactness conditions for
\begin{align*}
0 \to \bigoplus_{i \in I} A_i \xrightarrow{F} \bigoplus_{i \in I} B_i \xrightarrow{G} \bigoplus_{i \in I} C_i \to 0.
\end{align*}
Hence the direct-sum sequence is short exact.
[/step]