I'm new to homological algebra, and I've come across this:
A double complex (or a bicomplex) in $\mathcal A$ is a family $\{C_{p,q}\}$ of objects of $\mathcal A$, together with maps $$d^h: C_{p,q}\rightarrow C_{p-1,q}~~~\text{and}~~~d^v:C_{p,q}\rightarrow C_{p,q-1}$$ such that $d^h\circ d^h=d^v\circ d^v=d^v\circ d^h +d^h\circ d^v=0$.
$$\require{AMScd} \begin{CD} @.\vdots@.\vdots@.\vdots\\ @.@VVV@VVV@VVV\\ \dots@<<<C_{p-1,q+1}@<d^h<<C_{p,q+1}@<d^h<<C_{p+1,q+1}@<<<\dots\\ @.@Vd^vVV @Vd^vVV @Vd^vVV @.\\ \dots@<<<C_{p-1,q0}@<d^h<<C_{p,q}@<d^h<<C_{p+1,q}@<<<\dots\\ @.@Vd^vVV @Vd^vVV @Vd^vVV @.\\ \dots@<<<C_{p-1,q-1}@<d^h<<C_{p,q-1}@<d^h<<C_{p+1,q-1}@<<<\dots\\ @.@VVV @VVV @VVV @.\\ @.\vdots@.\vdots@.\vdots \end{CD}$$
Why is $d^v\circ d^h+d^h\circ d^v=0$ required? I can understand $d^v\circ d^v=0$ and $d^h\circ d^h =0$, since each colum and each row is a chain complex.
Later they define a map from diagonal to diagonal, given by $$d: \color{green}{\prod_{p+q=n}C_{p,q}}\rightarrow\color{red}{\prod_{p+q=n-1}C_{p,q}}\\d=d^h+d^v$$
$$\require{AMScd} \begin{CD} @.\vdots@.\vdots@.\vdots\\ @.@VVV@VVV@VVV\\ \dots@<<<\color{red}{C_{p-1,q+1}}@<d^h<<\color{green}{C_{p,q+1}}@<d^h<<C_{p+1,q+1}@<<<\dots\\ @.@Vd^vVV @Vd^vVV @Vd^vVV @.\\ \dots@<<<C_{p-1,q0}@<d^h<<\color{red}{C_{p,q}}@<d^h<<\color{green}{C_{p+1,q}}@<<<\dots\\ @.@Vd^vVV @Vd^vVV @Vd^vVV @.\\ \dots@<<<C_{p-1,q-1}@<d^h<<C_{p,q-1}@<d^h<<\color{red}{C_{p+1,q-1}}@<<<\dots\\ @.@VVV @VVV @VVV @.\\ @.\vdots@.\vdots@.\vdots \end{CD}$$
If $d^2=0$ then $(d^h+d^v)\circ (d^h\circ+d^v)=d^h\circ (d^h+d^v)+d^v\circ (d^h+d^v)$. Can I distribute it to obtain $(d^h+d^v)\circ (d^h+d^v)=d^h\circ d^h+d^h\circ d^v+d^v\circ d^h+d^v\circ d^v=d^h\circ d^v+d^v\circ d^h=0$?