Split exact sequence equivalent conditions 
For a short exact sequence $0 \longrightarrow A \overset{i}{\longrightarrow} B\overset{j}{\longrightarrow} C \longrightarrow 0$ of abelian groups the following statements are equivalent:

*

*There is a homomorphism $p : B\to A$ such that $p \circ i = \text{id}_A$.


*There is a homomorphism $s : C \to B$ such that $j \circ s = \text{id}_C$


*There is an isomorphism $B \cong A \oplus C$.

I am trying to prove that $1 \implies  3$ and $2 \implies 3$ and afterwards that $3 \implies 1$ and $3 \implies 2$.
I'm stuck in the first part i.e. $1 \implies 3$. Suppose that $1$ is true, then there exists $p : B \to A$ such that $p \circ i = \text{id}_A$. I now tried to define $$\varphi : B \to A \oplus C, \ b \mapsto (p(b), j(b))$$ and an inverse as $$\varphi^{-1}: A \oplus C \to B, (a,c) \mapsto i(a).$$ What I got is that $$\varphi(\varphi^{-1}(a,c)) = \varphi(i(a))= (p(i(a)), j(i(a))) = (a, j(i(a))) \ne \text{id}_{A \oplus B}$$ and that $$\varphi^{-1}(\varphi(b))=\varphi^{-1}(p(b), j(b)) = i(p(b)) \ne \text{id}_B.$$
So I think that I've defined the inverse wrong here, but I couldn't think of any other candidates for it. Is there some other way to define it?
 A: In addition to the need to strengthen condition (3) to make sure it is equivalent, your proposed inverse for $\varphi$ cannot work, since it has nontrivial kernel given by $\{0\}\oplus C$. Instead, some more work is needed to use $p$ to establish the implication $(1)\Rightarrow(3)$.
Given any $c\in C$, let $b_c$ be an arbitrary element of $B$ such that $j(b_c)=c$. now consider $b=b_c-i(p(b_c))$.
First, note that $j(b) = j(b_c) - j(i(p(b_c)) = j(b_c)=c$. And $p(b) = p(b_c)-p(i(p(b_c))) = p(b_c) - p(b_c) = 0$.
Second: suppose $r_c\in B$ is another element of $B$ with $j(r_c)=c$. Let $r=r_c-i(p(r_c))$. Then $j(b-r) = j(b)-j(r) = c-c = 0$, and since the original sequence is exact, we have that $b-r\in \ker(j) =\mathrm{im}(i)$. Thus, there exists $a\in A$ such that $i(a)=b-r$. But then
$$ a = p(i(a)) = p(b-r) = p(b)-p(r) = 0-0 = 0.$$
Thus, in fact we have $b=r$.
That means that even though the element $b_c$ is not uniquely determined by the fact that it is a pre-image of $c$, the map $p$ does provide a "canonical" choice of pre-image of $c$: namely, $x=b_c-i(p(b_c))$ for any pre-image $b_c$.
(Intuitively what is going on is that if $B$ "really is" $A\oplus C$, and the map $p$ is the projection onto the first coordinate, we are taking an arbitrary preimage $(a,c)$ of $c$, and then subtracting $i(p(a,c)) = i(a) = (a,0)$, so that we get the "canonical" pre-image $(0,c)$...)
So define $f\colon A\oplus C\to B$ by
$$f(a,c) = i(a) + \Bigl(b_c - i(p(b_c))\Bigr),$$
where $b_c$ is any pre-image of $c$. This is well-defined by the work done above. Now we have
$$\begin{align*}
\varphi(f(a,c)) &= \varphi\bigl(i(a)+b_c-i(p(b_c))\bigr)\\
&= \bigl( p(i(a))+p(b_c-i(p(b_c))), j(i(a)) + j(b_c-i(p(b_c)))\bigr)\\
&= ( a+0,0+c) = (a,c)\\
f(\varphi(x)) &= f(p(x),j(x))\\
&= i(p(x)) + x - i(p(x)) \qquad\text{since }x\text{ is a pre-image of }j(x)\\
&= x.
\end{align*}$$
So $f$ is the inverse of $\varphi$, proving that $\varphi$ is a bijection, as required.
