If $A$ and $B$ are normal such that $AB=0$, does it follows that $BA=0$?

Let $AB=0$. We have $B^*BAA^*=BB^*A^*A=B(AB)^*A=0$.

This shows $Im(AA^*) \subset \operatorname{ker}(B^*B)=\operatorname{ker} B$, hence $BAA^*=0$ and thus also $AA^*B^*=0$, which shows $Im(B^*) \subset \operatorname{ker}(AA^*)=\operatorname{ker} A^*$, hence $A^*B^*=0$ and thus $BA=0$.


An alternate solution, described in a pedagogical way, is as follows.

(This proof avoids the image and the kernel/null-space argument used in the previous answer, and works in both finite and infinite dimensions, and for both real and complex spaces like the previous answer.)

The answer to the question is "yes, $BA = 0$".

Proof: We are given that $AB = 0$, and we see that $AA^* = A^*A$ (since $A$ is given as normal) and $BB^* = B^*B$ (since $B$ is given as normal).

For an arbitrary vector $x$, we find that $\Vert BAx \Vert^2$ $= (BAx, BAx)$ $= (A^*B^*BAx, x)$. We set out to inspect how $A^*B^*BA$ acts on an arbitrary vector, and discover that $A^*B^*BA$ is in fact $0$. How? If $y$ is an arbitrary vector, we observe $\Vert A^*B^*BA y \Vert^2$ $= (A^*B^*BA y, A^*B^*BA y)$ $= (AA^*B^*BA y, B^*BA y)$ $= \big(A^*(AB)B^*A y, B^*BA y\big)$ $= (0y, B^*BA y) = 0$.

It follows that $\Vert BAx \Vert^2 = (A^*B^*BAx, x) = (0x, x) = 0 \implies BA = 0$.