Introducing QETLAB: A MATLAB toolbox for quantum entanglement

April 14th, 2015

After over two and a half years in various stages of development, I am happy to somewhat “officially” announce a MATLAB package that I have been developing: QETLAB (Quantum Entanglement Theory LABoratory). This announcement is completely arbitrary, since people started finding QETLAB via Google about a year ago, and a handful of papers have made use of it already, but I figured that I should at least acknowledge its existence myself at some point. I’ll no doubt be writing some posts in the near future that highlight some of its more advanced features, but I will give a brief run-down of what it’s about here.

The Basics

First off, QETLAB has a variety of functions for dealing with “simple” things like tensor products, Schmidt decompositions, random pure and mixed states, applying superoperators to quantum states, computing Choi matrices and Kraus operators, and so on, which are fairly standard daily tasks for quantum information theorists. These sorts of functions are somewhat standard, and are also found in a few other MATLAB packages (such as Toby Cubitt’s nice Quantinf package and Géza Tóth’s QUBIT4MATLAB package), so I won’t really spend any time discussing them here.

Mixed State Separability

The “motivating problem” for QETLAB is the separability problem, which asks us to (efficiently / operationally / practically) determine whether a given mixed quantum state is separable or entangled. The (by far) most well-known tool for this job is the positive partial transpose (PPT) criterion, which says that every separable state remains positive semidefinite when the partial transpose map is applied to it. However, this is just a quick-and-dirty one-way test, and going beyond it is much more difficult.

The QETLAB function that tries to solve this problem is the IsSeparable function, which goes through several separability criteria in an attempt to prove the given state separable or entangled, and provides a journal reference to the paper that contains the separability criteria that works (if one was found).

As an example, consider the “tiles” state, introduced in [1], which is an example of a quantum state that is entangled, but is not detected by the simple PPT test for entanglement. We can construct this state using QETLAB’s UPB function, which lets the user easily construct a wide variety of unextendible product bases, and then verify its entanglement as follows:

>> u = UPB('Tiles'); % generates the "Tiles" UPB
>> rho = eye(9) - u*u'; % rho is the projection onto the orthogonal complement of the UPB
>> rho = rho/trace(rho); % we are now done constructing the bound entangled state
>> IsSeparable(rho)
Determined to be entangled via the realignment criterion. Reference:
K. Chen and L.-A. Wu. A matrix realignment method for recognizing entanglement.
Quantum Inf. Comput., 3:193-202, 2003.
ans =

And of course more advanced tests for entanglement, such as those based on symmetric extensions, are also checked. Generally, quick and easy tests are done first, and slow but powerful tests are only performed if the script has difficulty finding an answer.

Alternatively, if you want to check individual tests for entanglement yourself, you can do that too, as there are stand-alone functions for the partial transpose, the realignment criterion, the Choi map (a specific positive map in 3-dimensional systems), symmetric extensions, and so on.

Symmetry of Subsystems

One problem that I’ve come across repeatedly in my work is the need for robust functions relating to permuting quantum systems that have been tensored together, and dealing with the symmetric and antisymmetric subspaces (and indeed, this type of thing is quite common in quantum information theory). Some very basic functionality of this type has been provided in other MATLAB packages, but it has never been as comprehensive as I would have liked. For example, QUBIT4MATLAB has a function that is capable of computing the symmetric projection on two systems, or on an arbitrary number of 2- or 3-dimensional systems, but not on an arbitrary number of systems of any dimension. QETLAB’s SymmetricProjection function fills this gap.

Similarly, there are functions for computing the antisymmetric projection, for permuting different subsystems, and for constructing the unitary swap operator that implements this permutation.

Nonlocality and Bell Inequalities

QETLAB also has a set of functions for dealing with quantum non-locality and Bell inequalities. For example, consider the CHSH inequality, which says that if \{A_1,A_2\} and \{B_1,B_2\} are \{-1,+1\}-valued measurement settings, then the following inequality holds in classical physics (where \langle \cdot \rangle denotes expectation):

\langle A_1B_1 \rangle + \langle A_1B_2 \rangle + \langle A_2B_1 \rangle - \langle A_2B_2 \rangle \leq 2.

However, in quantum-mechanical settings, this inequality can be violated, and the quantity on the left can take on a value as large as 2\sqrt{2} (this is Tsirelson’s bound). Finally, in no-signalling theories, the quantity on the left can take on a value as large as 4.

All three of these quantities can be easily computed in QETLAB via the BellInequalityMax function:

>> coeffs = [1 1;1 -1]; % coefficients of the terms <A_iB_j> in the Bell inequality
>> a_coe = [0 0]; % coefficients of <A_i> in the Bell inequality
>> b_coe = [0 0]; % coefficients of <B_i> in the Bell inequality
>> a_val = [-1 1]; % values of the A_i measurements
>> b_val = [-1 1]; % values of the B_i measurements
>> BellInequalityMax(coeffs, a_coe, b_coe, a_val, b_val, 'classical')
ans =
>> BellInequalityMax(coeffs, a_coe, b_coe, a_val, b_val, 'quantum')
ans =
>> BellInequalityMax(coeffs, a_coe, b_coe, a_val, b_val, 'nosignal')
ans =

The classical value of the Bell inequality is computed simply by brute force, and the no-signalling value is computed via a linear program. However, no reasonably efficient method is known for computing the quantum value of a Bell inequality, so this quantity is estimated using the NPA hierarchy [2]. Advanced users who want more control can specify which level of the NPA hierarchy to use, or even call the NPAHierarchy function directly themselves. There is also a closely-related function for computing the classical, quantum, or no-signalling value of a nonlocal game (in case you’re a computer scientist instead of a physicist).

Download and Documentation

QETLAB v0.8 is currently available at (where you will also find its documentation) and also on github. If you have any suggestions/comments/requests/anything, or if you have used QETLAB in your work, please let me know!


  1. C.H. Bennett, D.P. DiVincenzo, T. Mor, P.W. Shor, J.A. Smolin, and B.M. Terhal. Unextendible product bases and bound entanglement. Phys. Rev. Lett. 82, 5385–5388, 1999. E-print: arXiv:quant-ph/9808030
  2. M. Navascués, S. Pironio, and A. Acín. A convergent hierarchy of semidefinite programs characterizing the set of quantum correlations. New J. Phys., 10:073013, 2008. E-print: arXiv:0803.4290 [quant-ph]

“Obvious” Does Not Imply “True”: The Minimal Superpermutation Conjecture is False

August 22nd, 2014

One of my favourite examples of an “obvious” mathematical statement that is actually false is the “fact” that if R,S,T \subseteq \mathbb{R}^n are vector spaces then

\dim(R + S + T) = \dim(R) + \dim(S) + \dim(T) \\ {}_{{}_{{}_{.}}}\quad\quad\quad\quad\quad\quad\quad\quad - \dim(R\cap S) -\dim(R\cap T) -\dim(S\cap T) \\ {}_{{}_{{}_{.}}}\quad\quad\quad\quad\quad\quad\quad\quad+\dim(R\cap S\cap T).

The reason that the above statement seems so obvious is that the similar fact \dim(R + S) = \dim(R) + \dim(S) - \dim(R\cap S) does hold, so it’s very tempting to think  “inclusion-exclusion, yadda yadda, it’s simple enough to prove that it’s not worth writing down or working through the details”. However, it’s not true: a counterexample is provided by 3 distinct lines through the origin in \mathbb{R}^2.

There is another problem that I’ve been thinking about for quite some time that is also “obvious”: the minimal superpermutation conjecture. This conjecture was so obvious, in fact, that it appeared as a question in a national programming contest in 1998. Well, last night Robin Houston posted a note on the arXiv showing that, despite being obvious, the conjecture is false [1].


What is the shortest string that contains each permutation of “123” as a contiguous substring? It is straightforward to check that “123121321” contains each of “123”, “132”, “213”, “231”, “312”, and “321” as substrings (i.e., it is a superpermutation of 3 symbols), and it’s not difficult to argue (or use a computer search to show) that it is the shortest string with this property.

Well, we can repeat this question for any number of symbols. I won’t repeat all of the details (because I already wrote about the problem here), but there is a natural recursive construction that takes an (n-1)-symbol superpermutation of length L and spits out an n-symbol superpermutation of length L+n!. This immediately gives us an n-symbol superpermutation of length 1! + 2! + 3! + … + n! for all n. Importantly, it seemed like this construction was the best we could do: computer search verifies that these superpermutations are the smallest possible, and are even unique, for n ≤ 4.

Furthermore, it is not difficult to come up with some lower bounds on the length of superpermutations that seem to suggest that we have found the right answer. A trivial argument shows that an n-symbol superpermutation must have length at least (n-1) + n!, since we need n characters for the first permutation, and 1 additional character for each of the remaining n!-1  permutations. This argument can be refined to show that a superpermutation must actually have length at least (n-2) + (n-1)! + n!, since there is no way to pack the permutations tightly enough so that each one only uses 1 additional character (spend a few minutes trying to construct superpermutations by hand and you’ll see this for yourself). In fact, we can even refine this argument further (see a not-so-pretty proof sketch here) to show that n-symbol superpermutations must have length at least (n-3) + (n-2)! + (n-1)! + n!.

A-ha! A pattern has emerged – surely we can just keep refining this argument over and over again to eventually get a lower bound of 1! + 2! + 3! + … + n!, which shows that the superpermutations we already have are indeed minimal, right? Some variant of this line of thought seemed to be where almost everyone’s mind went when introduced to this problem, and it seemed fairly convincing: this argument is more or less contained within the answers when this question was posted on MathExchange and on StackOverflow (although the authors are usually careful to state that their method only appears to be optimal), and this problem was presented as a programming question in the 1998 Turkish Informatics Olympiad (see the resulting thread here). Furthermore, even on pages where this was acknowledged to be a difficult open problem, it was sometimes claimed that it had been proved for n ≤ 11 (example).

For the above reasons, it was a long time before I was even convinced that this problem was indeed unsolved – it seemed like people had solved this problem but just found it not worth the effort of writing up a full proof, or that people had found a simple way to tackle the problem for moderately large values of n like 10 or 11 that I couldn’t even dream of handling.

The Conjecture is False

It turns out that the minimal superpermutation conjecture is false for all n ≥ 6. That is, there exists a superpermutation of length strictly less than 1! + 2! + 3! + … + n! in all of these cases [1]. In particular, Robin Houston found the following 6-symbol superpermutation of length 872, which is smaller than the conjectured minimum length of 1! + 2! + … + 6! = 873:


So not only are congratulations due to Robin for settling the conjecture, but a big “thank you” are due to him as well for (hopefully) convincing everyone that this problem is not as easy as it appears upon first glance.


  1. R. Houston. Tackling the Minimal Superpermutation Problem. E-print: arXiv:1408.5108 [math.CO], 2014.

All Minimal Superpermutations on Five Symbols Have Been Found

August 13th, 2014

Recall from an earlier blog post that the minimal superpermutation problem asks for the shortest string on the symbols “1”, “2”, …, “n” that contains every permutation of those symbols as a contiguous substring. For example, “121” is a minimal superpermutation on the symbols “1” and “2”, since it contains both “12” and “21” as substrings, and there is no shorter string with this property.

Until now, the length of minimal superpermutations has only been known when n ≤ 4: they have length 1, 3, 9, and 33 in these cases, respectively. It has been conjectured that minimal superpermutations have length \sum_{k=1}^n k! for all n, and I am happy to announce that Ben Chaffin has proved this conjecture when n = 5. More specifically, he showed that minimal superpermutations in the n = 5 case have length 153, and there are exactly 8 such superpermutations (previously, it was only known that minimal superpermutations have either length 152 or 153 in this case, and there are at least 2 superpermutations of length 153).

The Eight Minimal Superpermutations

The eight superpermutations that Ben found are available here (they’re too large to include in the body of this post). Notice that the first superpermutation is the well-known “easy-to-construct” superpermutation described here, and the second superpermutation is the one that was found in [1]. The other six superpermutations are new.

One really interesting thing about the six new superpermutations is that they are the first known minimal superpermutations to break the “gap pattern” that previously-known constructions have. To explain what I mean by this, consider the minimal superpermutation “123121321” on three symbols. We can think about generating this superpermutation greedily: we start with “123”, then we append the character “1” to add the permutation “231” to the string, and then we append the character “2” to add the permutation “312” to the string. But now we are stuck: we have “12312”, and there is no way to append just one character to this string in such a way as to add another permutation to it: we have to append the two characters “13” to get the new permutation “213”.

This phenomenon seemed to be fairly general: in all known small superpermutations on n symbols, there was always a point (approximately halfway through the superpermutation) where n-2 consecutive characters were “wasted”: they did not add any new permutations themselves, but only “prepared” the next symbol to add a new permutation.

However, none of the six new minimal superpermutations have this property: they all never have more than 2 consecutive “wasted” characters, whereas the two previously-known superpermutations each have a run of n-2 = 3 consecutive “wasted” characters. Thus these six new superpermutations are really quite different from any superpermutations that we currently know and love.

How They Were Found

The idea of Ben’s search is to do a depth-first search on the placement of the “wasted” characters (recall that “wasted” characters were defined and discussed in the previous section). Since the shortest known superpermutation on 5 symbols has length 153, and there are 120 permutations of 5 symbols, and the first n-1 = 4 characters of the superpermutation must be wasted, we are left with the problem of trying to place 153 – 120 – 4 = 29 wasted characters. If we can find a superpermutation with only 28 wasted characters (other than the initial 4), then we’ve found a superpermutation of length 152; if we really need all 29 wasted characters, then minimal superpermutations have length 153.

So now we do the depth-first search:

  • Find (via brute-force) the maximum number of permutations that we can fit in a string if we are allowed only 1 wasted character: the answer is 10 permutations (for example, the string “123451234152341” does the job).
  • Now find the maximum number of permutations that we can fit in a string if we are allowed 2 wasted characters. To speed up the search, once we have found a string that contains some number (call it p) of permutations, we can ignore all other strings that use a wasted character before p-10 permutations, since we know from the previous bullet point that the second wasted character can add at most 10 more permutations, for a total of (p-10)+10 = p permutations.
  • We now repeat this process for higher and higher numbers of wasted characters: we find the maximum number of permutations that we can fit in a string with 3 wasted characters, using the results from the previous two bullets to speed up the search by ignoring strings that place 1 or 2 wasted characters too early.
  • Etc.

The results of this computation are summarized in the following table:

Wasted characters Maximum # of permutations
0 5
1 10
2 15
3 20
4 23
5 28
6 33
7 36
8 41
9 46
10 49
11 53
12 58
13 62
14 66
15 70
16 74
17 79
18 83
19 87
20 92
21 96
22 99
23 103
24 107
25 111
26 114
27 116
28 118
29 120

As we can see, it is not possible to place all 120 permutations in a string with 28 or fewer wasted characters, which proves that there is no superpermutation of length 152 in the n = 5 case. C code that computes the values in the above table is available here.

Update [August 18, 2014]: Robin Houston has found a superpermutation on 6 symbols of length 873 (i.e., the conjectured minimal length) with the interesting property that it never has more than one consecutive wasted character! The superpermutation is available here.

IMPORTANT UPDATE [August 22, 2014]: Robin Houston has gone one step further and disproved the minimal superpermutation conjecture for all n ≥ 6. See here.


  1. N. Johnston. Non-uniqueness of minimal superpermutations. Discrete Mathematics, 313:1553–1557, 2013.

What the Operator-Schmidt Decomposition Tells Us About Entanglement

June 27th, 2014

In quantum information theory, the well-known Schmidt decomposition theorem tells us that every pure quantum state |\phi\rangle\in\mathbb{C}^d\otimes\mathbb{C}^d can be written in the form

|\phi\rangle =\displaystyle\sum_{i=1}^d\gamma_i|a_i\rangle\otimes|b_i\rangle,

where each \gamma_i \geq 0 is a real scalar and the sets \{|a_i\rangle\} and \{|b_i\rangle\} form orthonormal bases of \mathbb{C}^d.

The Schmidt decomposition theorem isn’t anything fancy: it is just the singular value decomposition in disguise (the \gamma_i‘s are singular values of some matrix and the sets \{|a_i\rangle\} and \{|b_i\rangle\} are its left and right singular vectors). However, it tells us everything we could ever want to know about the entanglement of |\phi\rangle: it is entangled if and only if it has more than one non-zero \gamma_i, and in this case the question of “how much” entanglement is contained within |\phi\rangle is answered by a certain function of the \gamma_i‘s.

Well, we can find a similar decomposition of mixed quantum states. If \rho\in M_d\otimes M_d is a mixed quantum state then it can be written in its operator-Schmidt decomposition:

\rho=\displaystyle\sum_{i=1}^{d^2}\gamma_iA_i\otimes B_i,

where each \gamma_i \geq 0 is a real scalar and the sets \{A_i\} and \{B_i\} form orthonormal bases of Hermitian matrices in M_d (under the Hilbert–Schmidt inner product \langle A,B\rangle :=\mathrm{Tr}(A^\dagger B)).

Once again, we haven’t really done anything fancy: the operator-Schmidt decomposition is also just the singular value decomposition in disguise in almost the exact same way as the regular Schmidt decomposition. However, its relationship with entanglement of mixed states is much weaker (as we might expect from the fact that the singular value decomposition can be computed in polynomial time, but determining whether a mixed state is entangled or separable (i.e., not entangled) is expected to be hard [1]). In this post, we’ll investigate some cases when the operator-Schmidt decomposition does let us conclude that \rho is separable or entangled.

Proving a State is Entangled: The Realignment Criterion

One reasonably well-known method for proving that a mixed state is entangled is the realignment criterion [2,3]. What is slightly less well-known is that the realignment criterion can be phrased in terms of the coefficients \{\gamma_i\} in the operator-Schmidt decomposition of \rho.

Theorem 1 (realignment criterion). Let \rho\in M_d\otimes M_d have operator-Schmidt decomposition

\rho=\displaystyle\sum_{i=1}^{d^2}\gamma_iA_i\otimes B_i.

If \sum_{i=1}^{d^2}\gamma_i>1 then \rho is entangled.

Proof. The idea is to construct a specific entanglement witness that detects the entanglement in \rho. In particular, the entanglement witness that we will use is W:=I-\sum_{i=1}^{d^2}A_i\otimes B_i. To see that W is indeed an entanglement witness, we must show that (\langle a|\otimes\langle b|)W(|a\rangle\otimes|b\rangle)\geq 0 for all |a\rangle\in\mathbb{C}^m and |b\rangle\in\mathbb{C}^n. Well, some algebra shows that

(\langle a|\otimes\langle b|)W(|a\rangle\otimes|b\rangle) = 1 - \displaystyle\sum_{i=1}^{d^2}\langle a|A_i|a\rangle\langle b|B_i|b\rangle,

so it suffices to show that \sum_{i=1}^{d^2}\langle a|A_i|a\rangle\langle b|B_i|b\rangle\leq 1. To see this notice that

\displaystyle\sum_{i=1}^{d^2}\langle a|A_i|a\rangle\langle b|B_i|b\rangle\leq \sqrt{\sum_{i=1}^{d^2}(\langle a|A_i|a\rangle)^2}\sqrt{\sum_{i=1}^{d^2}(\langle b|B_i|b\rangle)^2}= 1,

where the inequality is the Cauchy–Schwarz inequality and the equality comes from the fact that the sets \{A_i\} and \{B_i\} are orthonormal bases, so \sum_{i=1}^{d^2}(\langle a|A_i|a\rangle)^2=\big\langle |a\rangle\langle a|,|a\rangle\langle a|\big\rangle=1 (and similarly for |b\rangle).

Now that we know that W is an entanglement witness, we must check that it detects the entanglement in \rho (that is, we want to show that \mathrm{Tr}(W\rho)<0). This is straightforward to show by making use of the fact that the sets \{A_i\} and \{B_i\} are orthonormal:

\mathrm{Tr}(W\rho) = \displaystyle\mathrm{Tr}\left( \Big(I - \sum_{i=1}^{d^2}A_i\otimes B_i\Big)\Big(\sum_{i=1}^{d^2}\gamma_iA_i\otimes B_i\Big)\right)=1-\mathrm{Tr}\left(\sum_{i,j=1}^{d^2}\gamma_iA_iA_j\otimes B_iB_j\right)

{}_{{}_{{}_{.}}} \phantom{\mathrm{Tr}(W\rho)}=\displaystyle 1-\sum_{i,j=1}^{d^2}\gamma_i\mathrm{Tr}(A_iA_j)\mathrm{Tr}(B_iB_j)=1-\sum_{i=1}^{d^2}\gamma_i<0.

It follows that \rho is entangled, which completes the proof.

A more popular formulation of the realignment criterion says that if we define the realignment map R by R(|i\rangle\langle j|\otimes|k\rangle\langle\ell|)=|i\rangle\langle k|\otimes|j\rangle\langle\ell| and extending by linearity, and let \|\cdot\|_{tr} denote the trace norm (i.e., the sum of the singular values), then \|R(\rho)\|_{tr}>1 implies that \rho is entangled. The equivalence of these two formulations of the realignment criterion comes from the fact that the singular values of R(\rho) are exactly the coefficients \{\gamma_i\} in its operator-Schmidt decomposition.

Proving a State is Entangled: Beyond the Realignment Criterion

We might naturally wonder whether we can prove that even more states are entangled based on their operator-Schmidt decomposition than those detected by the realignment criterion. The following theorem gives one sense in which the answer to this question is “no”: if we only look at “nice” functions of the coefficients \{\gamma_i\} then the realignment criterion gives the best method of entanglement detection possible.

Theorem 2. Let f : \mathbb{R}^{d^2}\rightarrow\mathbb{R}_{\geq 0} be a symmetric gauge function (i.e., a norm that is invariant under permutations and sign changes of the d^2 entries of the input vector). If we can conclude that \rho\in M_d\otimes M_d is entangled based on the value of f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) then it must be the case that \sum_{i=1}^{d^2}\gamma_i>1.

Proof. Without loss of generality, we scale f so that f(1,0,0,\ldots,0) = 1. We first prove two facts about f.

Claim 1: f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2})\geq \frac{1}{d} for all mixed states \rho\in M_d\otimes M_d. This follows from the fact that \max_i\gamma_i\geq\frac{1}{d} (which itself is kind of a pain to prove: it follows from the fact that the 1\rightarrow\infty Schatten norm of the realignment map R is d, but if anyone knows of a more direct and/or simpler way to prove this, I’d love to see it). If we assume without loss of generality that \gamma_1\geq\frac{1}{d} then

f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) = \frac{1}{2}\big(f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2})+f(\gamma_1,-\gamma_2,\ldots,-\gamma_{d^2})\big)

{}_{{}_{.}} \phantom{f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2})} \geq f(\gamma_1,0,0,\ldots,0) = \gamma_1f(1,0,0,\ldots,0) = \gamma_1 \geq \frac{1}{d},

as desired.

Claim 2: There exists a separable state \rho\in M_d\otimes M_d for which f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) equals any given value in the interval [\frac{1}{d},1]. To see why this is the case, first notice that there exists a separable state \rho\in M_d\otimes M_d with \gamma_1=1 and \gamma_i=0 for all i\geq 2: the state \rho=|0\rangle\langle 0|\otimes|0\rangle\langle 0| is one such example. Similarly, there is a separable state with \gamma_1=\frac{1}{d} and \gamma_i=0 for all i\geq 2: the state \rho=\frac{1}{d^2}I\otimes I is one such example. Furthermore, it is straightforward to interpolate between these two extremes to find separable states (even product states) with \gamma_i = 0 for all i\geq 2 and any value of \gamma_1 \in[\frac{1}{d},1]. For such states we have

f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) = f(\gamma_1,0,0,\ldots,0)=\gamma_1f(1,0,0,\ldots,0)=\gamma_1,

which can take any value in the interval [\frac{1}{d},1] as claimed.

By combining claims 1 and 2, we see that we could only ever use the value of f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) to conclude that \rho is entangled if f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2})>1. However, in this case we have

\displaystyle\sum_{i=1}^{d^2}\gamma_i = f(\gamma_1,0,0,\ldots,0) + f(0,\gamma_2,0,\ldots,0) + \cdots + f(0,0,0,\ldots,\gamma_{d^2})

{}_{{}_{.}}\displaystyle\phantom{\sum_{i=1}^{d^2}\gamma_i}\geq f(\gamma_1,\gamma_2,\ldots,\gamma_{d^2}) >1,

which completes the proof.

Theorem 2 can be phrased naturally in terms of the other formulation of the realignment criterion as well: it says that there is no unitarily-invariant matrix norm \|\cdot\|_{u} with the property that we can use the value of \|R(\rho)\|_{u} to conclude that \rho is entangled, except in those cases where the trace norm (i.e., the realignment criterion) itself already tells us that \rho is entangled.

Nonetheless, we can certainly imagine using functions of the coefficients \{\gamma_i\} that are not symmetric gauge functions. Alternatively, we could take into account some (hopefully easily-computable) properties of the matrices \{A_i\} and \{B_i\}. One such method for detecting entanglement that depends on the coefficients \{\gamma_i\} and the trace of each \{A_i\} and \{B_i\} is as follows.

Theorem 3 [4,5]. Let \rho\in M_d\otimes M_d have operator-Schmidt decomposition

\rho=\displaystyle\sum_{i=1}^{d^2}\gamma_iA_i\otimes B_i.


\displaystyle\sum_{i=1}^{d^2}\big|\gamma_i - \gamma_i^2\mathrm{Tr}(A_i)\mathrm{Tr}(B_i)\big| + \frac{1}{2}\sum_{i=1}^{d^2}\gamma_i^2\big(\mathrm{Tr}(A_i)^2+\mathrm{Tr}(B_i)^2\big) > 1

then \rho is entangled.

I won’t prove Theorem 3 here, but I will note that it is strictly stronger than the realignment criterion, which can be seen by showing that the left-hand side of Theorem 3 is at least as large as the left-hand side of Theorem 1. To show this, observe that

\displaystyle\sum_{i=1}^{d^2}\big|\gamma_i - \gamma_i^2\mathrm{Tr}(A_i)\mathrm{Tr}(B_i)\big| \geq \sum_{i=1}^{d^2}\gamma_i - \sum_{i=1}^{d^2}\gamma_i^2\mathrm{Tr}(A_i)\mathrm{Tr}(B_i)


\displaystyle\frac{1}{2}\sum_{i=1}^{d^2}\gamma_i^2\big(\mathrm{Tr}(A_i)^2+\mathrm{Tr}(B_i)^2\big) - \sum_{i=1}^{d^2}\gamma_i^2\mathrm{Tr}(A_i)\mathrm{Tr}(B_i) = \frac{1}{2}\sum_{i=1}^{d^2}\big(\gamma_i\mathrm{Tr}(A_i)-\gamma_i\mathrm{Tr}(B_i)\big)^2,

which is nonnegative.

Proving a State is Separable

Much like we can use the operator-Schmidt decomposition to sometimes prove that a state is entangled, we can also use it to sometimes prove that a state is separable. To this end, we will use the operator-Schmidt rank of \rho, which is the number of non-zero coefficients \{\gamma_i\} in its operator-Schmidt decomposition. One trivial observation is as follows:

Proposition 4. If the operator-Schmidt rank of \rho is 1 then \rho is separable.

Proof. If the operator-Schmidt rank of \rho is 1 then we can write \rho=A\otimes B for some A,B\in M_d. Since \rho is positive semidefinite, it follows that either A and B are both positive semidefinite or both negative semidefinite. If they are both positive semidefinite, we are done. If they are both negative semidefinite then we can write \rho=(-A)\otimes(-B) and then we are done.

Somewhat surprisingly, however, we can go further than this: it turns out that all states with operator-Schmidt rank 2 are also separable, as was shown in [6].

Theorem 5 [6]. If the operator-Schmidt rank of \rho is 2 then \rho is separable.

Proof. If \rho has operator-Schmidt rank 2 then it can be written in the form \rho=A\otimes B + C\otimes D for some A,B,C,D\in M_d. Throughout this proof, we use the notation a:=\mathrm{Tr}(A), b:=\mathrm{Tr}(B), and so on.

Since \rho is positive semidefinite, so are each of its partial traces. Thus bA+dC and aB+cD are both positive semidefinite operators. It is then straightforward to verify that

(bA+dC)\otimes(aB+cD) + (cA-aC)\otimes(dB-bD)= A\otimes B + C\otimes D =\rho.

What is important here is that we have found a rank-2 tensor decomposition of \rho in which one of the terms is positive semidefinite. Now we define

X := \big((bA+dC)^{-1/2}\otimes(aB+cD)^{-1/2}\big) \rho \big((bA+dC)^{-1/2}\otimes(aB+cD)^{-1/2}\big)

and notice that X = I\otimes I + E\otimes F for some E,F\in M_d (in order to do this, we actually need the partial traces of \rho to be nonsingular, but this is easily taken care of by standard continuity arguments, so we’ll sweep it under the rug). Furthermore, X is also positive semidefinite, and it is separable if and only if \rho is separable. Since X is positive semidefinite, we know that 1 + \lambda_i(E)\lambda_j(F) \geq 0 for all eigenvalues \lambda_i(E) of E and \lambda_j(F) of F. If we absorb scalars between E and F so that \max_i\lambda_i(E) = 1 then this implies that \lambda_j(F) \geq -1 for all j. Thus I-E and I+F are both positive semidefinite. Furthermore, a straightforward calculation shows that

(I-E)\otimes I + E \otimes (I+F) = I\otimes I + E\otimes F = X.

We now play a similar game as before: we define a new matrix

Y := \big((I-E)^{-1/2}\otimes(I+F)^{-1/2}\big)X\big((I-E)^{-1/2}\otimes(I+F)^{-1/2}\big)

and notice that Y = I \otimes G + H \otimes I for some G,H\in M_d (similar to before, we note that there is a standard continuity argument that can be used to handle the fact that I-E and I+F might be singluar). The minimum eigenvalue of Y is then \lambda_{\textup{min}}(G)+\lambda_{\textup{min}}(H), which is non-negative as a result of Y being positive semidefinite. It then follows that

Y = I \otimes (G - \lambda_{\textup{min}}(G)I) + (H - \lambda_{\textup{min}}(H)I) \otimes I + \big(\lambda_{\textup{min}}(G)+\lambda_{\textup{min}}(H)\big)I \otimes I.

Since each term in the above decomposition is positive semidefinite, it follows that Y is separable, which implies that X is separable, which finally implies that \rho is separable.

In light of Theorem 6, it seems somewhat natural to ask how far we can push things: what values of the operator-Schmidt rank imply that a state is separable? Certainly we cannot expect all states with an operator-Schmidt rank of 4 to be separable, since every state in M_2 \otimes M_2 has operator-Schmidt rank 4 or less, and there are entangled states in this space (more concretely, it’s easy to check that the maximally-entangled pure state has operator-Schmidt rank 4).

This left the case of operator-Schmidt rank 3 open. Very recently, it was shown in [7] that a mixed state in M_2 \otimes M_d with operator-Schmidt rank 3 is indeed separable, yet there are entangled states with operator-Schmidt rank 3 in M_3 \otimes M_3.


  1. L. Gurvits. Classical deterministic complexity of Edmonds’ problem and quantum entanglement. In Proceedings of the Thirty-Fifth Annual ACM Symposium on Theory of Computing, pages 10–19, 2003. E-print: arXiv:quant-ph/0303055
  2. K. Chen and L.-A. Wu. A matrix realignment method for recognizing entanglement. Quantum Inf. Comput., 3:193–202, 2003. E-print: arXiv:quant-ph/0205017
  3. O. Rudolph. Some properties of the computable cross norm criterion for separability. Phys. Rev. A, 67:032312, 2003. E-print:  E-print: arXiv:quant-ph/0212047
  4. C.-J. Zhang, Y.-S. Zhang, S. Zhang, and G.-C. Guo. Entanglement detection beyond the cross-norm or realignment criterion. Phys. Rev. A, 77:060301(R), 2008. E-print: arXiv:0709.3766 [quant-ph]
  5. O. Gittsovich, O. Gühne, P. Hyllus, and J. Eisert. Unifying several separability conditions using the covariance matrix criterion. Phys. Rev. A, 78:052319, 2008. E-print: arXiv:0803.0757 [quant-ph]
  6. D. Cariello. Separability for weak irreducible matrices. E-print: arXiv:1311.7275 [quant-ph]
  7. D. Cariello. Does symmetry imply PPT property?. E-print: arXiv:1405.3634 [math-ph]

Counting the Possible Orderings of Pairwise Multiplication

February 12th, 2014

Suppose we are given n distinct positive real numbers a_1 > a_2 > \cdots > a_n > 0. The question we are going to consider in this post is as follows:

Question. How many different possible orderings are there of the n(n+1)/2 numbers \{a_ia_j\}_{1\leq i\leq j\leq n}?

To help illustrate what we mean by this question, consider the n = 2 case, where a_1 > a_2 > 0. Then the 3 possible products of a_1 and a_2 are a_1^2, a_2^2, a_1a_2, and it is straightforward to see that we must have a_1^2 > a_1a_2> a_2^2, so there is only one possible ordering in the n = 2 case.

In the n = 3 case, we have a_1 > a_2 > a_3 > 0 and 6 possible products: a_1^2, a_2^2, a_3^2, a_1a_2, a_1a_3, a_2a_3. Some relationships between these 6 numbers are immediate, such as a_1^2 > a_1a_2 > a_1a_3 > a_2a_3 > a_3^2. However, it could be the case that either a_2^2 > a_1a_3 or a_1a_3 > a_2^2 (we ignore the degenerate cases where two products are equal to each other), so there are two different possible orderings in this case:

a_1^2 > a_1a_2 > a_2^2 > a_1a_3 > a_2a_3 > a_3^2\quad\text{ or }\\ a_1^2 > a_1a_2 > a_1a_3 > a_2^2 > a_2a_3 > a_3^2.

In this post, we will consider the problem of how many such orderings exist for larger values of n. This problem arises naturally from a problem in quantum entanglement: the number of such orderings is exactly the minimum number of linear matrix inequalities needed to characterize the eigenvalues of quantum states that are “PPT from spectrum” [1].

A Rough Upper Bound

We now begin constructing upper bounds on the number of possible orderings of \{a_ia_j\}_{1\leq i\leq j\leq n}. Since we are counting orderings between n(n+1)/2 numbers, a trivial upper bound is given by (n(n+1)/2)!, since that is the number of possible orderings of n(n+1)/2 arbitrary numbers. However, this quantity is a gross overestimate.

We can improve this upper bound by creating an n \times n matrix whose (i,j)-entry is a_ia_j (note that this matrix is symmetric, positive semidefinite, and has rank 1, which is roughly how the connection to quantum entanglement arises). For example, in the n = 4 case, this matrix is as follows:

\begin{bmatrix}a_1^2 & a_1a_2 & a_1a_3 & a_1a_4 \\ * & a_2^2 & a_2a_3 & a_2a_4 \\ * & * & a_3^2 & a_3a_4 \\ * & * & * & a_4^2\end{bmatrix},

where we have used asterisks (*) to indicate entries that are determined by symmetry. The fact that a_1 > a_2 > \cdots > a_n > 0 implies that the rows and columns of the upper-triangular part of this matrix are decreasing. Thus we can get an upper bound to the solution to our problem by counting the number of ways that we can place the numbers 1, 2, \ldots, n(n+1)/2 (exactly once each) in the upper-triangular part of a matrix in such a way that the rows and columns of that upper-triangular part are decreasing. For example, this can be done in 2 different ways in the n = 3 case:

\begin{bmatrix}6 & 5 & 4 \\ * & 3 & 2 \\ * & * & 1\end{bmatrix} \quad \text{and} \quad \begin{bmatrix}6 & 5 & 3\\ * & 4 & 2\\ * & * & 1\end{bmatrix}.

The matrix above on the left corresponds to the case a_1a_3 > a_2^2 discussed earlier, while the matrix above on the right corresponds to the case a_2^2 > a_1a_3.

A formula for the number of such ways to place the integers 1, 2, \ldots, n(n+1)/2 in a matrix was derived in [2] (see also A003121 in the OEIS), which immediately gives us the following upper bound on the number of orderings of the products \{a_ia_j\}_{1\leq i\leq j\leq n}:

\displaystyle(n(n+1)/2)! \frac{1! 2! \cdots (n-1)!}{1! 3! \cdots (2n-1)!}.

For n = 1, 2, 3, …, this formula gives the values 1, 1, 2, 12, 286, 33592, 23178480, …

A Better Upper Bound

Before improving the upper bound that we just presented, let’s first discuss why it is not actually a solution to the original question. In the n = 4 case, our best upper bound so far is 12, since there are 12 different ways to place the integers 1,2,\ldots,10 in the upper-triangular part of a 4 \times 4 matrix such that the rows and columns of that upper-triangular part are decreasing. However, one such placement is as follows:

\begin{bmatrix}10 & 9 & 7 & 6 \\ * & 8 & 5 & 3 \\ * & * & 4 & 2 \\ * & * & * & 1\end{bmatrix}.

The above matrix corresponds to the following inequalities in terms of \{a_ia_j\}_{1\leq i\leq j\leq n}:

a_1^2 > a_1a_2 > a_2^2 > a_1a_3 > a_1a_4 > a_2a_3 > a_3^2 > a_2a_4 > a_3a_4 > a_4^2.

The problem here is that there actually do not exist real numbers a_1 > a_2 > a_3 > a_4 > 0 that satisfy the above string of inequalities. To see this, notice in particular that we have the following three inequalities: a_2^2 > a_1a_3, a_1a_4 > a_2a_3, and a_3^2 > a_2a_4. However, multiplying the first two inequalities together gives a_1a_2^2a_4 > a_1a_2a_3^2, so a_2a_4 > a_3^2, which contradicts the third inequality.

More generally, there can not be indices i,j,k,\ell,m,n such that we simultaneously have the following three inequalities:

a_ia_j > a_ka_\ell, a_\ell a_m > a_j a_n, and a_i a_m < a_k a_n.

I am not aware of a general formula for the number integer matrices that do not lead to these types of “bad” inequalities, but I have computed this quantity for n ≤ 7 (C code is available here), which gives the following better upper bound on the number of possible orderings of the products \{a_ia_j\}_{1\leq i\leq j\leq n} for n = 1, 2, 3, …: 1,1,2,10,114,2612,108664, …, which we see is significantly smaller than the upper bound found in the previous section for n ≥ 5.

This Bound is Not Tight

It is straightforward to write a script that generates random numbers a_1 > a_2 > \cdots > a_n > 0 and determines the resulting ordering of the pairwise products \{a_ia_j\}_{1\leq i\leq j\leq n}. By doing this, we can verify that the upper bounds from the previous section are in fact tight when n ≤ 5. However, when n = 6, we find that 4 of the 2612 potential orderings do not seem to actually be attained by any choice of a_1 > a_2 > \cdots > a_6 > 0. One of these “problematic” orderings is the one that arises from the following matrix:

\begin{bmatrix}21 & 20 & 19 & 18 & 17 & 11\\ * & 16 & 15 & 14 & 10 & 6\\ * & * & 13 & 12 & 8 & 5\\ * & * & * & 9 & 7 & 3\\ * & * & * & * & 4 & 2\\ * & * & * & * & * & 1\end{bmatrix}

The problem here is that the above matrix implies the following 5 inequalities:

a_1a_5 > a_2^2, \quad \ \ a_2a_4 > a_3^2, \quad \ \ a_2a_5 > a_4^2, \quad \ \ a_3a_4 > a_1a_6, \quad \text{and }\ \ \ a_3a_6 > a_5^2.

However, multiplying the first four inequalities gives a_1a_2^2a_3a_4^2a_5^2 > a_1a_2^2a_3^2a_4^2a_6, so a_5^2 > a_3a_6, which contradicts the fifth inequality above. We can similarly prove that the other 3 seemingly problematic orderings are in fact not attainable, so there are exactly 2608 possible orderings in the n = 6 case.

I haven’t been able to compute the number of orderings when n ≥ 7, as my methods for obtaining upper and lower bounds are both much too slow in these cases. The best bounds that I have in the n = 7 case say that the number of orderings is between 50900 and 108664, inclusive.

Update [Feb. 13, 2014]: Giovanni Resta has improved the lower bound in the n = 7 case to 107498, which narrows the n = 7 region down considerably. I’ve also improved the upper bound to 108146 (see this improved version of the C script). In all likelihood, 107498 is the correct number of orderings in this case, and it’s the upper bound 108146 that needs to be further improved.

Update [Feb. 14, 2014]: This sequence is now in the OEIS. See A237749.

Update [Feb. 18, 2014]: Hans Havermann has found a couple of references that talk about this problem (in the language of Golomb rulers) and compute all values for n ≤ 7. See [3] and [4].


  1. R. Hildebrand. Positive partial transpose from spectra. Phys. Rev. A, 76:052325, 2007. E-print: arXiv:quant-ph/0502170
  2. R. M. Thrall. A combinatorial problem. Michigan Math. J., 1:81–88, 1952.
  3. M. Beck, T. Bogart, and T. Pham. Enumeration of Golomb rulers and acyclic orientations of mixed graphs. Electron. J. Combin., 19:42, 2012. E-print: arXiv:1110.6154 [math.CO]
  4. T. Pham. Enumeration of Golomb rulers. Master’s Thesis, San Francisco State University, 2011.

In Search of a 4-by-11 Matrix

October 1st, 2013

IMPORTANT UPDATE [January 30, 2014]: I have managed to solve the 4-by-11 case: there is no such matrix! Details of the computation that led to this result, as well as several other related results, are given in [4]. See Table 3 in that paper for an updated list of which cases still remain open (the smallest open cases are now 5-by-11 and 6-by-10).

After spinning my wheels on a problem for far too long, I’ve decided that it’s time to enlist the help of the mathematical and programming geniuses of the world wide web. The problem I’m interested in asks for a 4-by-11 matrix whose columns satisfy certain relationships. While the conditions are relatively easy to state, the problem size seems to be just slightly too large for me to solve myself.

The Problem

The question I’m interested in (for reasons that are explained later in this blog post) is, given positive integers p and s, whether or not there exists a p-by-s matrix M with the following three properties:

  1. Every entry of M is a nonzero integer;
  2. The sum of any two columns of M contains a 0 entry; and
  3. There is no way to append a (s+1)th column to M so that M still has property 2.

In particular, I’m interested in whether or not such a matrix M exists when p = 4 and s = 11. But to help illustrate the above three properties, let’s consider the p = 3, s = 4 case first, where one such matrix M is:

M = \begin{bmatrix}1 & -1 & 2 & -2 \\ 1 & -2 & -1 & 2 \\ 1 & 2 & -2 & -1\end{bmatrix}.

The fact that M satisfies condition 2 can be checked by hand easily enough. For example, the sum of the first two columns of M is [0, -1, 3]T which contains a 0 entry, and it is similarly straightforward to check that the other 5 sums of two columns of M each contain a 0 entry as well.

Checking property 3 is slightly more technical (NP-hard, even), but is still doable in small cases such as this one. For the above example, suppose that we could add a 5th column (which we will call z = [z1, z2, z3]T) to M such that its sum with any of the first 4 columns has a 0 entry. By looking at M’s first column, we see that one of z’s entries must be -1 (and by the cyclic symmetry of the entries of the last 3 columns of M, we can assume without loss of generality that z1 = -1). By looking at the last 3 columns of M, we then see that either z2 = 2 or z3 = -2, either z2 = 1 or z3 = 2, and either z2 = -2 or z3 = 1. Since there is no way to simultaneously satisfy all 3 of these requirements, no such column z exists.

What’s Known (and What Isn’t)

As I mentioned earlier, the instance of this problem that I’m really interested in is when p = 4 and s = 11. Let’s first back up and briefly discuss what is known for different values of p and s:

  • If s ≤ p then M does not exist. To see this, simply note that property 3 can never be satisfied since you can always append one more column. If we denote the (i,j)-entry of M by mij and the i-th entry of the new column z by zi, then you can choose zi = -mii for i = 1, 2, …, s.
  • Given p, the smallest value of s for which M exists is: (a) s = p+1 if p is odd, (b) s = p+2 if p = 4 or p ≡ 2 (mod 4), (c) s = p+3 if p = 8, and (d) s = p+4 otherwise. This result was proved in [1] (the connection between that paper and this blog post will be explained in the “Motivation” section below).
  • If s > 2p then M does not exist. In this case, there is no way to satisfy property 2. This fact is trivial when p = 1 and can be proved for all p by induction (an exercise left to the reader?).
  • If s = 2p then M exists. To see this claim, let the columns of M be the 2p different columns consisting only of the entries 1 and -1. To see that property 2 is satisfied, simply notice that each column is different, so for any pair of columns, there is a row in which one column is 1 and the other column is -1. To see that property 3 is satisfied, observe that any new column must also consist entirely of 1’s and -1’s. However, every such column is already a column of M itself, and the sum of a column with itself will not have any 0 entries.
  • If s = 2p – 4 (and p ≥ 3) then M exists. There is an inductive construction (with the p = 3, s = 4 example from the previous section as the base case) that works here. More specifically, if we let Mp denote a matrix M that works for a given value of p and s = 2p – 4, we let Bp be the matrix from the s = 2p case above, and 1k denotes the row vector with k ones, then
    M_{p+1} = \begin{bmatrix}M_p & B_p \\ 1_{2^p-4} & -1_{2^p}\end{bmatrix}

    is a solution to the problem for p’ = p+1 and s’ = 2p+1 – 4.
  • If 2p – 3 ≤ s ≤ 2p – 1 then M does not exist. This is a non-trivial result that follows from [2].

Given p, the above results essentially tell us the largest and smallest values of s for which a solution M to the problem exists. However, we still don’t really know much about when solutions exist for intermediate values of s – we just have scattered results that say a solution does or does not exist in certain specific cases, without really illuminating what is going on. The following table summarizes what we know about when solutions do and do not exist for small values of p and s (a check mark ✓ means that a solution exists, a dash – means no solution exists, and ? means we don’t know).

s \ p 1 2 3 4 5
1 - - - - -
2 - - - -
3 - - - - -
4 - - -
5 - - - - -
6 - - -
7 - - - -
8 - -
9 - - - ?
10 - - - ?
11 - - - ? ?
12 - - -
13 - - - -
14 - - - -
15 - - - -
16 - - -
17 – 26 - - - -
27 - - - - ?
28 - - - -
29 - - - - -
30 - - - - -
31 - - - - -
32 - - - -

The table above shows why I am interested in the p = 4, s = 11 case: it is the only case when p ≤ 4 whose solution still is not known. The other unknown cases (i.e., p = 5 and s ∈ {9,10,11,27}, and far too many to list when p ≥ 6) would be interesting to solve as well, but are a bit lower-priority.

Some Simplifications

Some assumptions about the matrix M can be made without loss of generality, in order to reduce the search space a little bit. For example, since the values of the entries of M don’t really matter (other than the fact that they come in positive/negative pairs), the first column of M can always be chosen to consist entirely of ones (or any other value). Similarly, permuting the rows or columns of M does not affect whether or not it satisfies the three desired properties, so you can assume (for example) that the first row is in non-decreasing order.

Finally, since there is no advantage to having the integer k present in M unless -k is also present somewhere in M (i.e., if M does not contain any -k entries, you could always just replace every instance of k by 1 without affecting any of the three properties we want), we can assume that the entries of M are between -floor(s/2) and floor(s/2), inclusive.


The given problem arises from unextendible product bases (UPBs) in quantum information theory. A set of pure quantum states |v_1\rangle, \ldots, |v_s\rangle \in \mathbb{C}^{d_1} \otimes \cdots \otimes \mathbb{C}^{d_p} forms a UPB if and only if the following three properties hold:

  1. (product) Each state |v_j\rangle is a product state (i.e., can be written in the form |v_j\rangle = |v_j^{(1)}\rangle \otimes \cdots \otimes |v_j^{(p)}\rangle, where |v_j^{(i)}\rangle \in \mathbb{C}^{d_i} for all i);
  2. (basis) The states are mutually orthogonal (i.e., \langle v_i | v_j \rangle = 0 for all i ≠ j); and
  3. (unextendible) There does not exist a product state |z\rangle with the property that \langle z | v_j \rangle = 0 for all j.

UPBs are useful because they can be used to construct quantum states with very strange entanglement properties [3], but their mathematical structure still isn’t very well-understood. While we can’t really expect an answer to the question of what sizes of UPBs are possible when the local dimensions d_1, \ldots, d_p are arbitrary (even just the minimum size of a UPB is still not known in full generality!), we might be able to hope for an answer if we focus on multi-qubit systems (i.e., the case when d_1 = \cdots = d_p = 2).

In this case, the 3 properties above are isomorphic in a sense to the 3 properties listed at the start of this post. We associate each state |v_j\rangle with the j-th column of the matrix M. To each state in the product state decomposition of |v_j\rangle, we associate a unique integer in such a way that orthogonal states are associated with negatives of each other. The fact that \langle v_i | v_j \rangle = 0 for all i ≠ j is then equivalent to the requirement that te sum of any two columns of M has a 0 entry, and unextendibility of the product basis corresponds to not being able to add a new column to M without destroying property 2.

Thus this blog post is really asking whether or not there exists an 11-state UPB on 4 qubits. In order to illustrate this connection more explicitly, we return to the p = 3, s = 4 example from earlier. If we associate the matrix entries 1 and -1 with the orthogonal standard basis states |0\rangle, |1\rangle \in \mathbb{C}^2 and the entries 2 and -2 with the orthogonal states |\pm\rangle := (|0\rangle \pm |1\rangle)/\sqrt{2}, then the matrix M corresponds to the following set of s = 4 product states in \mathbb{C}^2 \otimes \mathbb{C}^2 \otimes \mathbb{C}^2:

|0\rangle|0\rangle|0\rangle, \quad |1\rangle|-\rangle|+\rangle, \quad |+\rangle|1\rangle|-\rangle, \quad|-\rangle|+\rangle|1\rangle.

The fact that these states form a UPB is well-known – this is the “Shifts” UPB from [3], and was one of the first UPBs found.


  1. N. Johnston. The minimum size of qubit unextendible product bases. In Proceedings of the 8th Conference on the Theory of Quantum Computation, Communication and Cryptography (TQC), 2013. E-print: arXiv:1302.1604 [quant-ph], 2013.
  2. L. Chen and D. Ž. Ðjoković. Separability problem for multipartite states of rank at most four. J. Phys. A: Math. Theor., 46:275304, 2013. E-print: arXiv:1301.2372 [quant-ph]
  3. C. H. Bennett, D. P. DiVincenzo, T. Mor, P. W. Shor, J. A. Smolin, and B. M. Terhal. Unextendible product bases and bound entanglement. Phys. Rev. Lett., 82:5385–5388, 1999. E-print: arXiv:quant-ph/9808030
  4. N. Johnston. The structure of qubit unextendible product basesJournal of Physics A: Mathematical and Theoretical, 47:424034, 2014. E-print: arXiv:1401.7920 [quant-ph], 2014.