# Proof of Uhlmann's theorem (explicit decomposition )

I am having difficulty with Wiki's proof of the Uhlmann's theorem (https://en.wikipedia.org/wiki/Fidelity_of_quantum_states#Proof_with_explicit_decompositions)

The purifications of the states is given by

$$|\psi_\rho\rangle = \sum_k\sqrt{\lambda_k}|\lambda_k\rangle \otimes |u_k\rangle$$

$$|\psi_\sigma\rangle = \sum_k\sqrt{\mu_k}|\mu_k\rangle \otimes |v_k\rangle$$

and the overlap between the purifications are given by

$$\langle \psi_\rho \vert \psi_\sigma \rangle = \sum_{j,k}\sqrt{\lambda_k \mu_k}\langle \lambda_j \vert \mu_k \rangle \langle u_j \vert v_k \rangle$$

The proof then claims that $$\sum_{j,k}\sqrt{\lambda_j \mu_k}\langle \lambda_j \vert \mu_k \rangle \langle u_j \vert v_k \rangle = tr(\sqrt{\rho}\sqrt{\sigma}U)$$ where $$U=(\sum_k \vert \mu_k \rangle \langle u_k \vert)(\sum_j \vert v_j \rangle \langle \lambda_j \vert)$$

This is where I get stuck because expanding $$tr(\sqrt{\rho}\sqrt{\sigma}U)$$ gives a different indexing: \begin{align*} tr(\sqrt{\rho}\sqrt{\sigma}U) &= tr\left(\sum_{m,n,j,k} \sqrt{\lambda_m \mu_n} \vert \lambda_m \rangle \langle \lambda_m \vert \mu_n \rangle \langle \mu_n \vert \mu_k \rangle \langle u_k \vert v_j \rangle \langle \lambda_j \vert \right) \\ &= tr\left(\sum_{m,n,j,k} \sqrt{\lambda_m \mu_n} \rangle \langle \lambda_m \vert \mu_n \rangle \langle \mu_n \vert \mu_k \rangle \langle u_k \vert v_j \rangle \langle \lambda_j \vert \lambda_m \rangle \right) \text{by the cyclic property}\\ &= tr\left(\sum_{m,n,j,k} \sqrt{\lambda_m \mu_n} \delta_{jm} \delta_{kn} \langle \lambda_m \vert \mu_n \rangle \langle \mu_n \vert \mu_k \rangle \langle u_k \vert v_j \rangle \langle \lambda_j \vert \lambda_m \rangle \right) \text{by the orthonormality of the basis}\\ &= tr\left(\sum_{j,k} \sqrt{\lambda_j \mu_k} \langle \lambda_j \vert \mu_k \rangle \langle u_k \vert v_j \rangle \right) \\ &= \sum_{j,k} \sqrt{\lambda_j \mu_k} \langle \lambda_j \vert \mu_k \rangle \langle u_k \vert v_j \rangle \; \; \text{since the trace of a scalar is just a scalar}\\ \end{align*}

The problem is that I get $$\sum_{j,k} \sqrt{\lambda_j \mu_k} \langle \lambda_j \vert \mu_k \rangle \langle u_k \vert v_j \rangle$$ instead of $$\sum_{j,k}\sqrt{\lambda_k \mu_k}\langle \lambda_j \vert \mu_k \rangle \langle u_j \vert v_k \rangle$$ i.e. the indices for $$\{ \vert u \rangle \}$$ swaps to that for $$\sigma$$ and likewise for $$\{ \vert v \rangle \}$$.

The only possible explanation I can think of is that $$\{ \vert u \rangle \}$$ and $$\{ \vert v \rangle \}$$ are arbitrary orthonormal basis and hence the indices do not matter. Is there a more elegant way to prevent this swapping of indices?

The proof works if we instead use the unitary matrix defined by $$U=\sum_{j,k}\left(|\mu_k\rangle\langle u_j|\right)\left(|v_k\rangle\langle\lambda_j|\right).$$ One may verify that this is indeed unitary: \begin{align}UU^\dagger&=\sum_{k,k^\prime}|\mu_k\rangle\langle\mu_{k^\prime}|\sum_j \langle u_j|v_k\rangle\langle v_{k^\prime}|u_j\rangle\\ &=\sum_{k,k^\prime}|\mu_k\rangle\langle\mu_{k^\prime}|\sum_j \langle v_{k^\prime}|u_j\rangle\langle u_j|v_k\rangle\\ &=\sum_{k,k^\prime}|\mu_k\rangle\langle\mu_{k^\prime}|\sum_j \langle v_{k^\prime}|v_k\rangle\\ &=\sum_{k}|\mu_k\rangle\langle\mu_{k} \\&=\mathbf{1}\end{align} and similarly for $$U^\dagger U$$. The rest of the derivation does not depend on the form of the unitary, so you may proceed using this one.
I am not sure whether the proof also works with the unitary defined in your question. For example, if we choose the two orthonormal bases to be the same, then $$\langle u_j|v_k\rangle=\delta_{j,k}=\langle u_k|v_j\rangle$$. This may not be sufficiently general, which is why I would stick to an alternative answer such as the one I provided above. I strongly suspect the phases of the orthonormal basis to be irrelevant, such that $$\langle u_j|v_k\rangle=\langle v_k|u_j\rangle$$, but that would not fully solve your version's problem.