Relative homology of a retract: Help to understand a proof. I need some help to understand the proof of the following theorem:
Theorem If $A\subset X$ is a retract of $X$ then, $$H_n(X)\simeq H_n(A)\oplus H_n(X, A),$$ all $n\geq 0$. 
Proof. Let $r:X\longrightarrow A$ be a retraction. Since $r\circ \imath=id_A$ it follows $r_*\circ \imath_*=id_{H_n(A)}$ hence $\imath_*$ is injective. Consider the exact homology sequence of the pair $(X, A)$: $$\ldots\longrightarrow H_n(A)\stackrel{\imath_*}{\longrightarrow} H_n(X)\stackrel{\jmath_*}{\longrightarrow} H_n(X, A)\stackrel{\partial}{\longrightarrow}H_{n-1}(A)\longrightarrow\ldots$$ Since $\imath_*$ is injective we find $\textrm{ker}(\imath_*)=0=\textrm{im}(\partial)$. But this says $\jmath_*:H_n(X)\longrightarrow H_n(X, A)$ is onto for all $n\geq 0$. In other words, for all $n\geq 0$, we have a short exact sequence $$0\longrightarrow H_n(A)\stackrel{\imath_*}{\longrightarrow} H_n(X)\stackrel{\jmath_*}{\longrightarrow}H_n(X, A)\longrightarrow 0,$$ which splits. Therefore, for all $n\geq 0$, $H_n(X)\simeq H_n(A)\oplus H_n(X, A)$. 
Question: Where did the $0's$ in $0\longrightarrow H_n(A)\stackrel{\imath_*}{\longrightarrow} H_n(X)\stackrel{\jmath_*}{\longrightarrow}H_n(X, A)\longrightarrow 0$ come from?
 A: We have ${\rm im}(\partial)=0$, so $\partial=0$ as map $H_n(X,A)\to H_{n-1}(A)$, so it factors through the zero object: $H_n(X,A)\to 0\to H_{n-1}(A)$. Extending the long exact sequence with these $0$'s will keep the exactness.
Anyway, injectivity of a map $f$ is equivalent to $\ker f=0$, i.e. $0\to A \overset{f}\to B$ is exact, and dually, surjectivity is equivalent to $A\to B\to 0$ being exact.
A: The reason why one can obtain a short exact sequence $0 \to H_n(A) \xrightarrow{i_*} H_n(X) \xrightarrow{j_*} H_n(X, A) \to 0$ in the proof is expressed generally by the result below

Result: Consider an exact sequence of abelian groups $$\dots \to C_{n+1} \to A_n \xrightarrow{i_n} B_n \xrightarrow{p_n} C_n \to A_{n-1} \xrightarrow{i_{n-1}} B_{n-1} \xrightarrow{p_{n-1}} C_{n-1} \to \dots$$ in which every third map $i_n$ is injective. Then the sequence $$0 \to A_n \xrightarrow{i_n} B_n \xrightarrow{p_n} C_n \to 0$$ is exact for all $n$

Now in the proof supplied in the question, we have the following long exact sequence (of abelian groups)
$$\dots H_{n+1}(X, A) \xrightarrow{\partial} H_n(A) \xrightarrow{i_*} H_n(X) \xrightarrow{j_*} H_n(X, A) \xrightarrow{\partial}  H_{n-1}(A) \xrightarrow{i_*} H_{n-1}(X) \xrightarrow{j_*} H_{n-1}(X, A) \to\dots$$
and every third map $i_*$ is injective, so by the result above we obtain a short exact sequence $0 \to H_n(A) \xrightarrow{i_*} H_n(X) \xrightarrow{j_*} H_n(X, A) \to 0$ as desired.

This result quoted above is Exercise 5.14 (i) in Introduction to Algebriac Topology by J. Rotman. It is not too difficult to prove this result.
