Solution (source code)

= Solution

After the first <Hadamard gate>, the joint state is
$$
\frac1{\sqrt2}(|0\rangle+|1\rangle)|\psi\rangle|\phi\rangle.
$$
The controlled <SWAP gate> then gives
$$
\frac1{\sqrt2}\left(
|0\rangle|\psi\rangle|\phi\rangle
+|1\rangle|\phi\rangle|\psi\rangle\right).
$$
After the second Hadamard gate, it is
$$
\boxed{\frac12\left[
|0\rangle\bigl(|\psi\rangle|\phi\rangle+|\phi\rangle|\psi\rangle\bigr)
+|1\rangle\bigl(|\psi\rangle|\phi\rangle-|\phi\rangle|\psi\rangle\bigr)
\right]}.
$$