Let's assume I give you the expression of a unitary matrix acting on two qubits that is:

$$U=\sum_{i} A_i \otimes B_i$$

for some operators $A_i$ and $B_i$.

Is there a simple criterion allowing you to find out if it is actually simply $U=\widetilde{A} \otimes \widetilde{B}$ for some $\widetilde{A}$ and $\widetilde{B}$?

By simple I mean that I would like to avoid taking two generic single qubit unitary matrices and check if $U=\widetilde{A} \otimes \widetilde{B}$ admits solution (it would be relatively messy).

As a comment: to check if we have $U=Tr_2(U) \otimes Tr_1(U)$ is not sufficient in general as it can be that $Tr_1(U)$ or $Tr_2(U)$ vanish.

If such simple method exists, do there exist a more general criteria for $n$ qubits (i.e. you have an $n$-qubit unitary matrix and you want to see if it can be written as a tensor product of single qubit gates).


1 Answer 1


TL;DR: A two-qubit unitary operator $U$ is a product operator, i.e. $U=U_1\otimes U_2$ for some single-qubit unitaries $U_1$ and $U_2$ if and only if $U$ has Schmidt rank one

$$ U = U_1\otimes U_2 \iff \mathrm{Sch}(U) = 1.\tag1 $$

This generalizes to $n$-qubit unitaries via straightforward recursive applications of $(1)$ over $n-1$ partitionings of the subsystems.

Operator Schmidt decomposition

The space of linear operators on a vector space $\mathcal{H}$ is a vector space $L(\mathcal{H})$ equipped with an inner product $\langle A,B\rangle_{HS} = \mathrm{tr}(A^\dagger B)$ known as the Hilbert-Schmidt inner product. Therefore, Schmidt decomposition applies to linear operators. Explicitly, any operator $U$ can be written as

$$ U = \sum_{k=1}^r \lambda_k A_k\otimes B_k\tag2 $$

where $A_k$ are orthonormal operators on the first subsystem, $B_k$ are orthonormal operators on the second subsystem and $\lambda_k$ are positive real numbers. The integer $r=:\mathrm{Sch}(U)$ is called the Schmidt rank of $U$.

See e.g. $6.4.2$ in Nielsen's PhD thesis or this paper for more details on operator variant of Schmidt decomposition.

Unitary product is a product of unitaries

Now, suppose that $U=A\otimes B$ for some operators $A$ and $B$. We'll show that $U=U_1\otimes U_2$ for some unitary operators $U_1$ and $U_2$. We have

$$ I=U^\dagger U = A^\dagger A\otimes B^\dagger B,\tag2 $$

so $\mathrm{tr}(A^\dagger A)>0$ and $\mathrm{tr}(B^\dagger B)>0$. Moreover, $A^\dagger A=\alpha I$ for some positive real number $\alpha$ and $B^\dagger B=\beta I$ for some positive real number $\beta$. Consequently, $U=U_1\otimes U_2$ where $U_1:=\frac{A}{\sqrt{\alpha}}$ and $U_2:=\frac{B}{\sqrt{\beta}}$ are unitary.

Generalization to $n$-qubit unitaries

An $n$-qubit unitary operator $U$ is the tensor product of an $(n-1)$-qubit unitary $U_{1\dots(n-1)}$ and a single-qubit unitary $U_n$ if and only if its Schmidt rank with respect to the partitioning $\{1\dots(n-1)\}\cup\{n\}$ is one. Applying this check recursively to $U_{1\dots(n-1)}$, we can determine whether $U$ is the tensor product of $n$ single-qubit unitaries by computing $n-1$ Schmidt decompositions.

  • $\begingroup$ Thanks a lot for this great answer. I will look in further details next week and feedback to you! Cheers. $\endgroup$ Jul 16, 2022 at 14:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.