Posts Tagged ‘Quantum Information Theory’

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]

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
9 ?
10 ?
11 ? ?
17 – 26
27 ?

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.

The Spectrum of the Partial Transpose of a Density Matrix

July 3rd, 2013

It is a simple fact that, given any density matrix (i.e., quantum state) \rho\in M_n, the eigenvalues of \rho are the same as the eigenvalues of \rho^T (the transpose of \rho). However, strange things can happen if we instead only apply the transpose to one half of a quantum state. That is, if \rho\in M_m \otimes M_n then its eigenvalues in general will be very different from the eigenvalues of (id_m\otimes T)(\rho), where id_m is the identity map on M_m and T is the transpose map on M_n (the map id_m\otimes T is called the partial transpose).

In fact, even though \rho is positive semidefinite (since it is a density matrix), the matrix (id_m\otimes T)(\rho) in general can have negative eigenvalues. To see this, define p:={\rm min}\{m,n\} and let \rho=|\psi\rangle\langle\psi|, where


is the standard maximally-entangled pure state. It then follows that

(id_m\otimes T)(\rho)=\displaystyle\frac{1}{p}\sum_{i,j=1}^{p}|i\rangle\langle j|\otimes|j\rangle\langle i|,

which has p(p+1)/2 eigenvalues equal to 1/pp(p-1)/2 eigenvalues equal to -1/p, and p|m-n| eigenvalues equal to 0.

The fact that (id_m\otimes T)(\rho) can have negative eigenvalues is another way of saying that the transpose map is positive but not completely positive, and thus plays a big role in entanglement theory. In this post we consider the question of how exactly the partial transpose map can transform the eigenvalues of \rho:

Question. For which ordered lists \lambda_1\geq\lambda_2\geq\cdots\geq\lambda_{mn}\in\mathbb{R} does there exist a density matrix \rho such that (id_m\otimes T)(\rho) has eigenvalues \lambda_1,\lambda_2,\ldots,\lambda_{mn}?

The Answer for Pure States

In the case when \rho is a pure state (i.e., has rank 1), we can completely characterize the eigenvalues of (id_m\otimes T)(\rho) by making use of the Schmidt decomposition. In particular, we have the following:

Theorem 1. Let |\phi\rangle have Schmidt rank r and Schmidt coefficients \alpha_1\geq\alpha_2\geq\cdots\geq\alpha_r>0. Then the spectrum of (id_m\otimes T)(|\phi\rangle\langle\phi|) is

\{\alpha_i^2 : 1\leq i\leq r\}\cup\{\pm\alpha_i\alpha_j:1\leq i<j\leq r\},

together with the eigenvalue 0 with multiplicity p|n-m|+p^2-r^2.

Proof. If |\phi\rangle has Schmidt decomposition



\displaystyle(id_m\otimes T)(|\phi\rangle\langle\phi|)=\sum_{i,j=1}^r\alpha_i\alpha_j|a_i\rangle\langle a_j|\otimes|b_j\rangle\langle b_i|.

It is then straightforward to verify, for all 1\leq i<j\leq r, that:

  • |a_i\rangle\otimes|b_i\rangle is an eigenvector with eigenvalue \alpha_i^2;
  • |a_i\rangle\otimes|b_j\rangle\pm|a_j\rangle\otimes|b_i\rangle is an eigenvector with eigenvalue \pm\alpha_i\alpha_j; and
  • {\rm rank}\big((id_m\otimes T)(|\phi\rangle\langle\phi|)\big)= r^2, from which it follows that the remaining p|n-m|+p^2-r^2 eigenvalues are 0.

Despite such a simple characterization in the case of rank-1 density matrices, there is no known characterization for general density matrices, since eigenvalues aren’t well-behaved under convex combinations.

The Number of Negative Eigenvalues

Instead of asking for a complete characterization of the possible spectra of (id_m\otimes T)(\rho), for now we focus on the simpler question that asks how many of the eigenvalues of (id_m\otimes T)(\rho) can be negative. Theorem 1 answers this question when \rho=|\phi\rangle\langle\phi| is a pure state: the number of negative eigenvalues is r(r-1)/2, where r is the Schmidt rank of |\phi\rangle. Since r\leq p, it follows that (id_m\otimes T)(\rho) has at most p(p-1)/2 negative eigenvalues when \rho is a pure state.

It was conjectured in [1] that a similar fact holds for general (not necessarily pure) density matrices \rho as well. In particular, they conjectured that if \rho\in M_n\otimes M_n then (id_n\otimes T)(\rho) has at most n(n-1)/2 negative eigenvalues. However, this conjecture is easily shown to be false just by randomly-generating many density matrices \rho and then counting the number of negative eigenvalues of (id_n\otimes T)(\rho); density matrices whose partial transposes have more than n(n-1)/2 negative eigenvalues are very common.

In [2,3], it was shown that if \rho\in M_m\otimes M_n then (id_m\otimes T)(\rho) can not have more than (m-1)(n-1) negative eigenvalues. In [4], this bound was shown to be tight when {\rm min}\{m,n\}=2 by explicitly constructing density matrices \rho\in M_2\otimes M_n such that (id_2\otimes T)(\rho) has n-1 negative eigenvalues. Similarly, this bound was shown to be tight via explicit construction when m=n=3 in [3]. Finally, it was shown in [5] that this bound is tight in general. That is, we have the following result:

Theorem 2. The maximum number of negative eigenvalues that (id_m\otimes T)(\rho) can have when \rho\in M_m\otimes M_n is (m-1)(n-1).

It is worth pointing out that the method used in [5] to prove that this bound is tight is not completely analytic. Instead, a numerical method was presented that is proved to always generate a density matrix \rho\in M_m\otimes M_n such that (id_m\otimes T)(\rho) has (m-1)(n-1) negative eigenvalues. Code that implements this numerical procedure in MATLAB is available here, but no general analytic form for such density matrices is known.

Other Bounds on the Spectrum

Unfortunately, not a whole lot more is known about the spectrum of (id_m\otimes T)(\rho). Here are some miscellaneous other results that impose certain restrictions on its maximal and minimal eigenvalues (which we denote by \lambda_\textup{max} and \lambda_\textup{min}, respectively):

Theorem 3 [3]. 1\geq\lambda_\textup{max}\geq\lambda_\textup{min}\geq -1/2.

Theorem 4 [2]. \lambda_\textup{min}\geq\lambda_\textup{max}(1-{\rm min}\{m,n\}).

Theorem 5 [6]. If (id_m\otimes T)(\rho) has q negative eigenvalues then

\displaystyle\lambda_\textup{min}\geq\lambda_\textup{max}\Big(1-\big\lceil\tfrac{1}{2}\big(m+n-\sqrt{(m-n)^2+4q-4}\big)\big\rceil\Big) and


However, these bounds in general are fairly weak and the question of what the possible spectra of (id_m\otimes T)(\rho) are is still far beyond our grasp.


  1. R. Xi-Jun, H. Yong-Jian, W. Yu-Chun, and G. Guang-Can. Partial transposition on bipartite system. Chinese Phys. Lett., 25:35, 2008.
  2. N. Johnston and D. W. Kribs. A family of norms with applications in quantum information theory. J. Math. Phys., 51:082202, 2010. E-print: arXiv:0909.3907 [quant-ph]
  3. S. Rana. Negative eigenvalues of partial transposition of arbitrary bipartite states. Phys. Rev. A, 87:054301, 2013. E-print: arXiv:1304.6775 [quant-ph]
  4. L. Chen, D. Z. Djokovic. Qubit-qudit states with positive partial transpose. Phys. Rev. A, 86:062332, 2012. E-print: arXiv:1210.0111 [quant-ph]
  5. N. Johnston. Non-positive-partial-transpose subspaces can be as large as any entangled subspace. Phys. Rev. A, 87:064302, 2013. E-print: arXiv:1305.0257 [quant-ph]
  6. N. Johnston. Norms and Cones in the Theory of Quantum Entanglement. PhD thesis, University of Guelph, 2012.

How to Construct Minimal Unextendible Product Bases

March 14th, 2013

In quantum information theory, a product state |v\rangle \in \mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2} is a quantum state that can be written as an elementary tensor:

|v\rangle=|v_1\rangle\otimes|v_2\rangle\text{ with }|v_i\rangle\in\mathbb{C}^{d_i}\ \text{ for } i=1,2,

while states that can not be written in this form are called entangled. In this post, we will be investigating unextendible product bases (UPBs), which are sets S\subset\mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2} of mutually orthogonal product states with the property that no other product state is orthogonal to every member of S.

In this post, we will be looking at how to construct small UPBs. Note that UPBs can more generally be defined on multipartite spaces (i.e., \mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2}\otimes\cdots\otimes\mathbb{C}^{d_p} for arbitrary p\geq 2), but for simplicity we stick with the bipartite (i.e., p= 2) case in this blog post.

Simple Examples

The most trivial unextendible product basis is simply the computational basis:


However, the above UPB is rather trivial – the unextendibility condition holds vacuously because S spans the entire Hilbert space, so of course there is no product state (or any state) orthogonal to every member of S.

It is known that when \min\{d_1,d_2\}\leq 2, the only UPBs that exist are trivial in this sense – they consist of a full set of d_1d_2 states. We are more interested in UPBs that contain fewer vectors than the dimension of the Hilbert space (since, for example, these UPBs can be used to construct bound entangled states [1]). One of the first such UPBs to be constructed was called “Pyramid” [1]. To construct this UPB, define h:=\tfrac{1}{2}\sqrt{1+\sqrt{5}} and N:=\tfrac{1}{2}\sqrt{5+\sqrt{5}}, and let

|\phi_j\rangle:=\tfrac{1}{N}[\cos(2\pi j/5),\sin(2\pi j/5),h]\text{ for }0\leq j\leq 4.

Then the following set of 5 states in \mathbb{C}^3\otimes\mathbb{C}^3 is a UPB:


where |v_i\rangle:=|\phi_i\rangle\otimes|\phi_{2i(\text{mod }5)}\rangle.

It is a straightforward calculation to verify that the members of S_{\textup{pyr}} are mutually orthogonal (and thus form a product basis). To verify that there is no product state orthogonal to every member of S_{\textup{pyr}}, we first observe that any 3 of the |\phi_j\rangle‘s form a linearly independent set (verification of this claim is slightly tedious, but nonetheless straightforward). Thus there is no state |w\rangle\in\mathbb{C}^3 that is orthogonal to more than 2 of the |\phi_j\rangle‘s. Thus no product state |w_1\rangle\otimes|w_2\rangle\in\mathbb{C}^3\otimes\mathbb{C}^3 is orthogonal to more than 2 + 2 = 4 members of S_{\textup{pyr}}, which verifies unextendibility.

Minimum Size

One interesting question concerning unextendible product bases asks for their minimum cardinality. It was immediately noted that any UPB in \mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2} must have cardinality at least d_1+d_2-1. To see this, suppose for a contradiction that there existed a UPB S containing (d_1-1)+(d_2-1) or fewer product states. Then we could construct another product state that is orthogonal to d_1-1 members of S on \mathbb{C}^{d_1} and another d_2-1 members of S on \mathbb{C}^{d_2}, for a total of (d_1-1)+(d_2-1) members of S, which shows that S is extendible.

Despite being such a simple lower bound, it is also attainable for many values of d_1,d_2 [2] (and very close to attainable in the other cases [3,4]). The goal of this post is to focus on the case when there exists a UPB of cardinality d_1+d_2-1, which is characterized by the following result of Alon and Lovász:

Theorem [2]. There exists a UPB in \mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2} of (necessarily minimal) size d_1+d_2-1 if and only if d_1,d_2\geq 3 and at least one of d_1 or d_2 is odd.

In spite of the above result that demonstrates the existence of a UPB of the given minimal size in many cases, how to actually construct such a UPB in these cases is not immediately obvious, and is buried throughout the proofs of [2] and its references. The goal of the rest of this post is to make the construction of a minimal UPB in these cases explicit.

Orthogonality Graphs

The orthogonality graph of a set of s product states in \mathbb{C}^{d_1}\otimes\mathbb{C}^{d_2} is graph with coloured edges (there are 2 colours) on s vertices (one for each product state), such that there is an edge connecting two vertices with the ith colour if and only if the two corresponding product states are orthogonal on the ith party.

For example, the orthogonality graph of the Pyramid UPB introduced earlier is illustrated below. Black edges represent states that are orthogonal on the first party, and red dotted edges represent states that are orthogonal on the second party.

Pyramid Orthogonality Graph

If the product states under consideration are mutually orthogonal, then their orthogonality graph is the complete graph K_s. Unextendibility is a bit more difficult to determine, but nonetheless a useful technique for constructing UPBs is to first choose a colouring of the edges of K_s, and then try to construct product states that lead to that colouring.

A Minimal Construction

In the orthogonality graph of the Pyramid UPB, all of the edges that connect a vertex to a neighbouring vertex are coloured black, and all other edges are coloured red. We can construct minimal UPBs by generalizing this graph in a natural way. Suppose without loss of generality that d_1 is odd, and we wish to construct a UPB of size s := d_1 + d_2 - 1. We construct the orthogonality graph by arranging s vertices in a circle and connecting any vertices that are a distance of (d_1-1)/2 or less from each other via a black edge. All other edges are coloured red. For example, in the d_1 = d_2 = 3 case, this gives the orthogonality graph above. In the d_1 = 5, d_2 = 4 case, this gives the orthogonality graph below.

(5,4) orthogonality graph

Our goal now is to construct product states that have the given orthogonality graph. This is straightforward to do, since every state must be orthogonal to d_1-1 of the other states on \mathbb{C}^{d_1} and orthogonal to the d_2-1 other states on \mathbb{C}^{d_2}. Thus, we can just pick |v_0\rangle arbitrarily, then pick |v_1\rangle randomly subject to the constraint that it is orthogonal to |v_0\rangle on the first subsystem, and so on, working our way clockwise around the orthogonality graph, generating each product state randomly subject to the orthogonality conditions.

Furthermore, it can be shown (but will not be shown here – the techniques are similar to those of [4] and are a bit technical) that this procedure leads to a product basis that is in fact unextendible with probability 1. In order to verify unextendibility explicitly, one approach is to check that any subset of d_1 of the product states are linearly independent on \mathbb{C}^{d_1} and any subset of d_2 of the product states are linearly independent on \mathbb{C}^{d_2}.


  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. N. Alon and L. Lovász. Unextendible product bases. J. Combinatorial Theory, Ser. A, 95:169–179, 2001.
  3. K. Feng. Unextendible product bases and 1-factorization of complete graphs. Discrete Appl. Math., 154:942–949, 2006.
  4. J. Chen and N. Johnston. The minimum size of unextendible product bases in the bipartite case (and some multipartite cases). Comm. Math. Phys., 333(1):351–365, 2015. E-print: arXiv:1301.1406 [quant-ph]

Norms and Dual Norms as Supremums and Infimums

May 26th, 2012

Let \mathcal{H} be a finite-dimensional Hilbert space over \mathbb{R} or \mathbb{C} (the fields of real and complex numbers, respectively). If we let \|\cdot\| be a norm on \mathcal{H} (not necessarily the norm induced by the inner product), then the dual norm of \|\cdot\| is defined by

\displaystyle\|\mathbf{v}\|^\circ := \sup_{\mathbf{w} \in \mathcal{H}}\Big\{ \big| \langle \mathbf{v}, \mathbf{w} \rangle \big| : \|\mathbf{w}\| \leq 1 \Big\}.

The double-dual of a norm is equal to itself (i.e., \|\cdot\|^{\circ\circ} = \|\cdot\|) and the norm induced by the inner product is the unique norm that is its own dual. Similarly, if \|\cdot\|_p is the vector p-norm, then \|\cdot\|_p^\circ = \|\cdot\|_q, where q satisfies 1/p + 1/q = 1.

In this post, we will demonstrate that \|\cdot\|^\circ has an equivalent characterization as an infimum, and we use this characterization to provide a simple derivation of several known (but perhaps not well-known) formulas for norms such as the operator norm of matrices.

For certain norms (such as the “separability norms” presented at the end of this post), this ability to write a norm as both an infimum and a supremum is useful because computation of the norm may be difficult. However, having these two different characterizations of a norm allows us to bound it both from above and from below.

The Dual Norm as an Infimum

Theorem 1. Let S \subseteq \mathcal{H} be a bounded set satisfying {\rm span}(S) = \mathcal{H} and define a norm \|\cdot\| by

\displaystyle\|\mathbf{v}\| := \sup_{\mathbf{w} \in S}\Big\{ \big| \langle \mathbf{v}, \mathbf{w} \rangle \big| \Big\}.

Then \|\cdot\|^\circ is given by

\displaystyle\|\mathbf{v}\|^\circ = \inf\Big\{ \sum_i |c_i| : \mathbf{v} = \sum_i c_i \mathbf{v}_i, \mathbf{v}_i \in S \ \forall \, i \Big\},

where the infimum is taken over all such decompositions of \mathbf{v}.

Before proving the result, we make two observations. Firstly, the quantity \|\cdot\| described by Theorem 1 really is a norm: boundedness of S ensures that the supremum is finite, and {\rm span}(S) = \mathcal{H} ensures that \|\mathbf{v}\| = 0 \implies \mathbf{v} = 0. Secondly, every norm on \mathcal{H} can be written in this way: we can always choose S to be the unit ball of the dual norm \|\cdot\|^\circ. However, there are times when other choices of S are more useful or enlightening (as we will see in the examples).

Proof of Theorem 1. Begin by noting that if \mathbf{w} \in S and \|\mathbf{v}\| \leq 1 then \big| \langle \mathbf{v}, \mathbf{w} \rangle \big| \leq 1. It follows that \|\mathbf{w}\|^{\circ} \leq 1 whenever \mathbf{w} \in S. In fact, we now show that \|\cdot\|^\circ is the largest norm on \mathcal{H} with this property. To this end, let \|\cdot\|_\prime be another norm satisfying \|\mathbf{w}\|_{\prime}^{\circ} \leq 1 whenever \mathbf{w} \in S. Then

\displaystyle \| \mathbf{v} \| = \sup_{\mathbf{w} \in S} \Big\{ \big| \langle \mathbf{w}, \mathbf{v} \rangle \big| \Big\} \leq \sup_{\mathbf{w}} \Big\{ \big| \langle \mathbf{w}, \mathbf{v} \rangle \big| : \|\mathbf{w}\|_{\prime}^{\circ} \leq 1 \Big\} = \|\mathbf{v}\|_\prime.

Thus  \| \cdot \| \leq \| \cdot \|_\prime, so by taking duals we see that \| \cdot \|^\circ \geq \| \cdot \|_\prime^\circ, as desired.

For the remainder of the proof, we denote the infimum in the statement of the theorem by \|\cdot\|_{{\rm inf}}. Our goal now is to show that: (1) \|\cdot\|_{{\rm inf}} is a norm, (2) \|\cdot\|_{{\rm inf}} satisfies \|\mathbf{w}\|_{{\rm inf}} \leq 1 whenever \mathbf{w} \in S, and (3) \|\cdot\|_{{\rm inf}} is the largest norm satisfying property (2). The fact that \|\cdot\|_{{\rm inf}} = \|\cdot\|^\circ will then follow from the first paragraph of this proof.

To see (1) (i.e., to prove that \|\cdot\|_{{\rm inf}} is a norm), we only prove the triangle inequality, since positive homogeneity and the fact that \|\mathbf{v}\|_{{\rm inf}} = 0 if and only if \mathbf{v} = 0 are both straightforward (try them yourself!). Fix \varepsilon > 0 and let \mathbf{v} = \sum_i c_i \mathbf{v}_i, \mathbf{w} = \sum_i d_i \mathbf{w}_i be decompositions of \mathbf{v}, \mathbf{w} with \mathbf{v}_i, \mathbf{w}_i \in S for all i, satisfying \sum_i |c_i| \leq \|\mathbf{v}\|_{{\rm inf}} + \varepsilon and \sum_i |d_i| \leq \|\mathbf{w}\|_{{\rm inf}} + \varepsilon. Then

\displaystyle \|\mathbf{v} + \mathbf{w}\|_{{\rm inf}} \leq \sum_i |c_i| + \sum_i |d_i| \leq \|\mathbf{v}\|_{{\rm inf}} + \|\mathbf{w}\|_{{\rm inf}} + 2\varepsilon.

Since \varepsilon > 0 was arbitrary, the triangle inequality follows, so \|\cdot\|_{{\rm inf}} is a norm.

To see (2) (i.e., to prove that \|\mathbf{v}\|_{{\rm inf}} \leq 1 whenever \mathbf{v} \in S), we simply write \mathbf{v} in its trivial decomposition \mathbf{v} = \mathbf{v}, which gives the single coefficient c_1 = 1, so \|\mathbf{v}\|_{{\rm inf}} \leq \sum_i c_i = c_1 = 1.

To see (3) (i.e., to prove that \|\cdot\|_{{\rm inf}} is the largest norm on \mathcal{H} satisfying condition (2)), begin by letting \|\cdot\|_\prime be any norm on \mathcal{H} with the property that \|\mathbf{v}\|_{\prime} \leq 1 for all \mathbf{v} \in S. Then using the triangle inequality for \|\cdot\|_\prime shows that if \mathbf{v} = \sum_i c_i \mathbf{v}_i is any decomposition of \mathbf{v} with \mathbf{v}_i \in S for all i, then

\displaystyle\|\mathbf{v}\|_\prime = \Big\|\sum_i c_i \mathbf{v}_i\Big\|_\prime \leq \sum_i |c_i| \|\mathbf{v}_i\|_\prime = \sum_i |c_i|.

Taking the infimum over all such decompositions of \mathbf{v} shows that \|\mathbf{v}\|_\prime \leq \|\mathbf{v}\|_{{\rm inf}}, which completes the proof.

The remainder of this post is devoted to investigating what Theorem 1 says about certain specific norms.

Injective and Projective Cross Norms

If we let \mathcal{H} = \mathcal{H}_1 \otimes \mathcal{H}_2, where \mathcal{H}_1 and \mathcal{H}_2 are themselves finite-dimensional Hilbert spaces, then one often considers the injective and projective cross norms on \mathcal{H}, defined respectively as follows:

\displaystyle \|\mathbf{v}\|_{I} := \sup\Big\{ \big| \langle \mathbf{v}, \mathbf{a} \otimes \mathbf{b} \rangle \big| : \|\mathbf{a}\| = \|\mathbf{b}\| = 1 \Big\} \text{ and}

\displaystyle \|\mathbf{v}\|_{P} := \inf\Big\{ \sum_i \| \mathbf{a}_i \| \| \mathbf{b}_i \| : \mathbf{v} = \sum_i \mathbf{a}_i \otimes \mathbf{b}_i \Big\},

where \|\cdot\| here refers to the norm induced by the inner product on \mathcal{H}_1 or \mathcal{H}_2. The fact that \|\cdot\|_{I} and \|\cdot\|_{P} are duals of each other is simply Theorem 1 in the case when S is the set of product vectors:

\displaystyle S = \big\{ \mathbf{a} \otimes \mathbf{b} : \|\mathbf{a}\| = \|\mathbf{b}\| = 1 \big\}.

In fact, the typical proof that the injective and projective cross norms are duals of each other is very similar to the proof of Theorem 1 provided above (see [1, Chapter 1]).

Maximum and Taxicab Norms

Use n to denote the dimension of \mathcal{H} and let \{\mathbf{e}_i\}_{i=1}^n be an orthonormal basis of \mathcal{H}. If we let S = \{\mathbf{e}_i\}_{i=1}^n then the norm \|\cdot\| in the statement of Theorem 1 is the maximum norm (i.e., the p = ∞ norm):

\displaystyle\|\mathbf{v}\|_\infty = \sup_i\Big\{\big|\langle \mathbf{v}, \mathbf{e}_i \rangle \big| \Big\} = \max \big\{ |v_1|,\ldots,|v_n|\big\},

where v_i = \langle \mathbf{v}, \mathbf{e}_i \rangle is the i-th coordinate of \mathbf{v} in the basis \{\mathbf{e}_i\}_{i=1}^n. The theorem then says that the dual of the maximum norm is

\displaystyle \|\mathbf{v}\|_\infty^\circ = \inf \Big\{ \sum_i |c_i| : \mathbf{v} = \sum_i c_i \mathbf{e}_i \Big\} = \sum_{i=1}^n |v_i|,

which is the taxicab norm (i.e., the p = 1 norm), as we expect.

Operator and Trace Norm of Matrices

If we let \mathcal{H} = M_n, the space of n \times n complex matrices with the Hilbert–Schmidt inner product

\displaystyle \big\langle A, B \big\rangle := {\rm Tr}(AB^*),

then it is well-known that the operator norm and the trace norm are dual to each other:

\displaystyle \big\| A \big\|_{op} := \sup_{\mathbf{v}}\Big\{ \big\|A\mathbf{v}\big\| : \|\mathbf{v}\| = 1 \Big\} \text{ and}

\displaystyle \big\| A \big\|_{op}^\circ = \big\|A\big\|_{tr} := \sup_{U}\Big\{ \big| {\rm Tr}(AU) \big| : U \in M_n \text{ is unitary} \Big\},

where \|\cdot\| is the Euclidean norm on \mathbb{C}^n. If we let S be the set of unitary matrices in M_n, then Theorem 1 provides the following alternate characterization of the operator norm:

Corollary 1. Let A \in M_n. Then

\displaystyle \big\|A\big\|_{op} = \inf\Big\{ \sum_i |c_i| : A = \sum_i c_i U_i \text{ and each } U_i \text{ is unitary} \Big\}.

As an application of Corollary 1, we are able to provide the following characterization of unitarily-invariant norms (i.e., norms \|\cdot\|_{\prime} with the property that \big\|UAV\big\|_{\prime} = \big\|A\big\|_{\prime} for all unitary matrices U, V \in M_n):

Corollary 2. Let \|\cdot\|_\prime be a norm on M_n. Then \|\cdot\|_\prime is unitarily-invariant if and only if

\displaystyle \big\|ABC\big\|_\prime \leq \big\|A\big\|_{op}\big\|B\big\|_{\prime}\big\|C\big\|_{op}

for all A, B, C \in M_n.

Proof of Corollary 2. The “if” direction is straightforward: if we let A and C be unitary, then

\displaystyle \big\|B\big\|_\prime = \big\|A^*ABCC^*\big\|_\prime \leq \big\|ABC\big\|_\prime \leq \big\|B\big\|_{\prime},

where we used the fact that \big\|A\big\|_{op} = \big\|C\big\|_{op} = 1. It follows that \big\|ABC\big\|_\prime = \big\|B\big\|_\prime, so \|\cdot\|_\prime is unitarily-invariant.

To see the “only if” direction, write A = \sum_i c_i U_i and C = \sum_i d_i V_i with each U_i and V_i unitary. Then

\displaystyle \big\|ABC\big\|_\prime = \Big\|\sum_{i,j}c_i d_j U_i B V_j\Big\|_\prime \leq \sum_{i,j} |c_i| |d_j| \big\|U_i B V_j\big\|_\prime = \sum_{i,j} |c_i| |d_j| \big\|B\big\|_\prime.

By taking the infimum over all decompositions of A and C of the given form and using Corollary 1, the result follows.

An alternate proof of Corollary 2, making use of some results on singular values, can be found in [2, Proposition IV.2.4].

Separability Norms

As our final (and least well-known) example, let \mathcal{H} = M_m \otimes M_n, again with the usual Hilbert–Schmidt inner product. If we let

\displaystyle S = \{ \mathbf{a}\mathbf{b}^* \otimes \mathbf{c}\mathbf{d}^* : \|\mathbf{a}\| = \|\mathbf{b}\| = \|\mathbf{c}\| = \|\mathbf{d}\| = 1 \},

where \|\cdot\| is the Euclidean norm on \mathbb{C}^m or \mathbb{C}^n, then Theorem 1 tells us that the following two norms are dual to each other:

\displaystyle \big\|A\big\|_s := \sup\Big\{ \big| (\mathbf{a}^* \otimes \mathbf{c}^*)A(\mathbf{b} \otimes \mathbf{d}) \big| : \|\mathbf{a}\| = \|\mathbf{b}\| = \|\mathbf{c}\| = \|\mathbf{d}\| = 1 \Big\} \text{ and}

\displaystyle \big\|A\big\|_s^\circ = \inf\Big\{ \sum_i \big\|A_i\big\|_{tr}\big\|B_i\big\|_{tr} : A = \sum_i A_i \otimes B_i \Big\}.

There’s actually a little bit of work to be done to show that \|\cdot\|_s^\circ has the given form, but it’s only a couple lines – consider it an exercise for the interested reader.

Both of these norms come up frequently when dealing with quantum entanglement. The norm \|\cdot\|_s^\circ was the subject of [3], where it was shown that a quantum state \rho is entangled if and only if \|\rho\|_s^\circ > 1 (I use the above duality relationship to provide an alternate proof of this fact in [4, Theorem 6.1.5]). On the other hand, the norm \|\cdot\|_s characterizes positive linear maps of matrices and was the subject of [5, 6].


  1. J. Diestel, J. H. Fourie, and J. Swart. The Metric Theory of Tensor Products: Grothendieck’s Résumé Revisited. American Mathematical Society, 2008. Chapter 1: pdf
  2. R. Bhatia. Matrix Analysis. Springer, 1997.
  3. O. Rudolph. A separability criterion for density operators. J. Phys. A: Math. Gen., 33:3951–3955, 2000. E-print: arXiv:quant-ph/0002026
  4. N. Johnston. Norms and Cones in the Theory of Quantum Entanglement. PhD thesis, University of Guelph, 2012.
  5. N. Johnston and D. W. Kribs. A Family of Norms With Applications in Quantum Information TheoryJournal of Mathematical Physics, 51:082202, 2010.
  6. N. Johnston and D. W. Kribs. A Family of Norms With Applications in Quantum Information Theory IIQuantum Information & Computation, 11(1 & 2):104–123, 2011.

MATLAB Scripts for Computing Completely Bounded Norms via Semidefinite Programming

July 23rd, 2011

Update [March 3, 2015]: I have released a MATLAB package called QETLAB that can compute the completely bounded and diamond norms (and much more) much faster than the code contained in this blog post. I recommend using QETLAB instead of the code below.


In operator theory, the completely bounded norm of a linear map on complex matrices \Phi : M_m \rightarrow M_n is defined by \|\Phi\|_{cb} := \sup_{k \geq 1} \| id_k \otimes \Phi \|, where \|\Phi\| is the usual norm on linear maps defined by \|\Phi\| := \sup_{X \in M_m} \{ \|\Phi(X)\| : \|X\| \leq 1\} and \|X\| is the operator norm of X [1]. The completely bounded norm is particularly useful when thinking of M_m and M_n as operator spaces.

The dual of the completely bounded norm is called the diamond norm, which plays an important role in quantum information theory, as it can be used to measure the distance between quantum channels. The diamond norm of \Phi is typically denoted \|\Phi\|_{\diamond}. For properties of the completely bounded and diamond norms, see [1,2,3].

A method for efficiently computing the completely bounded and diamond norms via semidefinite programming was recently presented in [4]. The purpose of this post is to provide MATLAB scripts that implement this algorithm and demonstrate its usage.

Download and Install

In order to make use of these scripts to compute the completely bounded or diamond norm, you must download and install two things: the SeDuMi semidefinite program solver and the MATLAB scripts themselves.

  1. SeDuMi – Please follow the instructions on the SeDuMi website to download and install it. If possible, you should install SeDuMi 1.1R3, not SeDuMi 1.21 or SeDuMi 1.3, since there is a bug with the newer versions when dealing with complex matrices.
  2. CB Norm MATLAB Package – Once SeDuMi is installed, download the CB norm MATLAB scripts, unzip them, and place them in your MATLAB scripts directory. The zip file contains 10 MATLAB scripts.

Once the scripts are installed, type “help CBNorm” or “help DiamondNorm” at the MATLAB prompt to learn how to use the CBNorm and DiamondNorm functions. Several usage examples are provided below.

Usage Examples

The representation of the linear map \Phi that the CBNorm and DiamondNorm functions take as input is a pair of arrays of its left- and right- generalized Choi-Kraus operators. That is, an array of operators \{A_i\} and \{B_i\} such that \Phi(X) = \sum_i A_i X B_i for all X.

Basic Examples

If we wanted to compute the completely bounded and diamond norms of the map

the MATLAB input and output would be as follows:

>> PhiA(:,:,1) = [1,1;1,0];
>> PhiA(:,:,2) = [1,0;1,2];
>> PhiB(:,:,1) = [1,0;0,1];
>> PhiB(:,:,2) = [1,2;1,1];
>> CBNorm(PhiA,PhiB)

ans =


>> DiamondNorm(PhiA,PhiB)

ans =


So we see that its completely bounded norm is 7.2684 and its diamond norm is 7.4124.

If we instead want to compute the completely bounded or diamond norm of a completely positive map, we only need to provide its Kraus operators – i.e., operators \{A_i\} such that \Phi(X) = \sum_i A_i X A_i^\dagger for all X. Furthermore, in this case semidefinite programming isn’t used at all, since [1, Proposition 3.6] tells us that \|\Phi\|_{cb} = \|\Phi(I)\| and \|\Phi\|_{\diamond} = \|\Phi^\dagger(I)\|, and computing \|\Phi(I)\| is trivial. The following example demonstrates the usage of these scripts in this case, via a completely positive map \Phi : M_3 \rightarrow M_2 with four (essentially random) Kraus operators:

>> PhiA(:,:,1) = [1 0 0;0 1 1];
>> PhiA(:,:,2) = [-3 0 1;5 1 1];
>> PhiA(:,:,3) = [0 2 0;0 0 0];
>> PhiA(:,:,4) = [1 1 3;0 2 0];
>> CBNorm(PhiA)

ans =


>> DiamondNorm(PhiA)

ans =


Transpose Map

Suppose we want to compute the completely bounded or diamond norm of the transpose map on M_n. A generalized Choi-Kraus representation is given by defining A_{ij} = B_{ij} = e_i e_j^\dagger, where \{e_i\} is the standard basis of \mathbb{C}^n (i.e., A_{ij} and B_{ij} are the operators with matrix representation in the standard basis with a one in the (i,j)-entry and zeroes elsewhere). It is known that the completely bounded and diamond norms of the n-dimensional transpose map are both equal to n, which can be verified in small dimensions as follows:

>> % 2-dimensional transpose
>> PhiA(:,:,1) = [1 0;0 0];
>> PhiA(:,:,2) = [0 1;0 0];
>> PhiA(:,:,3) = [0 0;1 0];
>> PhiA(:,:,4) = [0 0;0 1];
>> PhiB = PhiA;
>> CBNorm(PhiA,PhiB)

ans =


>> DiamondNorm(PhiA,PhiB)

ans =

>> % 3-dimensional transpose
>> I = eye(3);
>> for i=1:3
for j=1:3
PhiA(:,:,3*(i-1)+j) = I(:,i)*I(j,:);
>> PhiB = PhiA;
>> CBNorm(PhiA,PhiB)

ans =


>> DiamondNorm(PhiA,PhiB)

ans =


Difference of Unitary Channels

Now consider the map \Phi : M_2 \rightarrow M_2 defined by \Phi(X) = X - UXU^\dagger, where U is the following unitary matrix:

We know from [2, Theorem 12] that the CB norm and diamond norm of \Phi are both equal to the diameter of the smallest closed disc containing all of the eigenvalues of U. Because the eigenvalues of U are (1 \pm i)/\sqrt{2}, the smallest closed disc containing its eigenvalues has diameter \sqrt{2}, so \|\Phi\|_{cb} = \|\Phi\|_{\diamond} = \sqrt{2}. This result can be verified as follows:

>> PhiA(:,:,1) = [1 0;0 1];
>> PhiA(:,:,2) = [1 1;-1 1]/sqrt(2);
>> PhiB(:,:,1) = [1 0;0 1];
>> PhiB(:,:,2) = -[1 -1;1 1]/sqrt(2);
>> CBNorm(PhiA,PhiB)

ans =


>> DiamondNorm(PhiA,PhiB)

ans =



  1. V. I. Paulsen. Completely bounded maps and operator algebras. Cambridge University Press, 2003.
  2. N. Johnston, D. W. Kribs, and V. I. Paulsen. Computing stabilized norms for quantum operations via the theory of completely bounded maps. Quantum Inf. Comput., 9:16-35, 2009.
  3. J. Watrous. Theory of quantum information lecture notes.
  4. J. Watrous. Semidefinite programs for completely bounded norms. Theory Comput., 5:217–238, 2009.