IsSeparable

From QETLAB
Revision as of 20:38, 25 June 2013 by Nathaniel (talk | contribs)
Jump to navigation Jump to search
IsSeparable
Determines whether or not a bipartite operator is separable

Other toolboxes required ApplyMap
cvx
FilterNormalForm
iden
IsPPT
IsPSD
jacobi_poly
kpNorm
MaxEntangled
OperatorSchmidtDecomposition
opt_args
opt_disp
PartialMap
PartialTrace
PartialTranspose
PermutationOperator
PermuteSystems
Realignment
SchmidtDecomposition
sporth
Swap
SymmetricExtension
SymmetricInnerExtension
SymmetricProjection
TraceNorm
Related functions SchmidtNumber

IsSeparable is a function that determines whether a bipartite operator is separable or entangled.

Syntax

  • SEP = IsSeparable(X)
  • SEP = IsSeparable(X,DIM)
  • SEP = IsSeparable(X,DIM,STR)
  • SEP = IsSeparable(X,DIM,STR,MODE)
  • SEP = IsSeparable(X,DIM,STR,MODE,VERBOSE)
  • SEP = IsSeparable(X,DIM,STR,MODE,VERBOSE,TOL)

Argument descriptions

  • X: A bipartite positive semidefinite operator.
  • DIM (optional, by default has both subsystems of equal dimension): A 1-by-2 vector containing the dimensions of the two subsystems that X acts on.
  • STR (optional, default 2): An integer that determines how hard the script should work to determine separability before giving up (STR = -1 means that the script won't stop working until it finds an answer. Other valid values are 0, 1, 2, 3, .... In practice, if STR >= 4 then most computers will run out of memory and/or the sun will explode before computation completes.
  • MODE (optional, default -1): A flag that determines whether the script will try to prove that X is entangled, separable, or both. If MODE = 0, the script will only try to prove that X is entangled (and hence the output will always be 0 or -1). If MODE = 1, the script will only try to prove that X is separable (and hence the output will always be 1 or -1). If MODE = -1, the script will try to prove both separability and entanglement.
  • VERBOSE (optional, default 1): A flag (either 0 or 1) that indicates that the script will or will not display a line of text describing how it proved that X is or is not separable.
  • TOL (optional, default eps^(1/4)): The numerical tolerance used throughout the script.

Examples

Determining entanglement of a bound entangled state

The following code constructs a two-qutrit bound entangled state based on the "Tiles" unextendible product basis. This state's entanglement can not be detected by the positive partial transpose criterion, but the following code shows that it is indeed entangled.

>> v = UPB('Tiles');
>> rho = eye(9);
>> for j = 1:5
    rho = rho - v(:,j)*v(:,j)';
end
>> rho = rho/4; % 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 =

     0

The following code performs the same computation, but has VERBOSE set to 0 so that the method of proving that rho is entangled is not displayed.

>> IsSeparable(rho,[3,3],2,-1,0)

ans =

     0

Mixtures with the maximally-mixed state

Every state that is sufficiently close to the maximally-mixed state is separable, so for every entangled state $\rho \in M_A \otimes M_B$, the state $\sigma_p := p\rho + \tfrac{1}{d_A d_B}(1-p)I$ is separable as long as $p$ is small enough.

For the remainder of this example, $\rho$ is the same bound entangled state based on the "Tiles" UPB from the previous example. It was shown in [1] that the Filter Covariance Matrix Criterion detects the entanglement in $\sigma_p$ when $p = 0.8723$, which we can verify as follows:

>> p = 0.8723; sigma = p*rho + (1-p)*eye(9)/9;
>> IsSeparable(sigma)
Determined to be entangled via the Filter Covariance Matrix Criterion. Reference:
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.

ans =

     0

However, if we decrease $p$ to $p = 0.8722$ then a stronger test of entanglement is needed to determine that $\sigma_p$ is entangled:

>> p = 0.8722; sigma = p*rho + (1-p)*eye(9)/9;
>> IsSeparable(sigma)
Determined to be entangled by not having a 2-copy symmetric extension. Reference:
A. C. Doherty, P. A. Parrilo, and F. M. Spedalieri. A complete family of separability
criteria. Phys. Rev. A, 69:022308, 2004.

ans =

     0

If we decrease $p$ further, then $\sigma_p$ becomes separable:

>> p = 0.2; sigma = p*rho + (1-p)*eye(9)/9;
>> IsSeparable(sigma)
Determined to be separable by closeness to the maximally mixed state. Reference:
L. Gurvits and H. Barnum. Largest separable balls around the maximally mixed bipartite
quantum state. Phys. Rev. A, 66:062311, 2002.

ans =

     1

If we increase $p$ back to $p = 0.4$ then $\sigma_p$ is still separable, but a stronger test is required to prove its separability:

>> p = 0.4; sigma = p*rho + (1-p)*eye(9)/9;
>> IsSeparable(sigma)
Determined to be separable via the semidefinite program based on 2-copy symmetric extensions from reference:
M. Navascues, M. Owari, and M. B. Plenio. A complete criterion for separability detection. Phys. Rev. Lett.,
103:160404, 2009.

ans =

     1

If we increase $p$ slightly more to $p = 0.45$ then $\sigma_p$ is still separable, but none of the default tests for separability are strong enough to determine this. To prove separability, we can increase the STR argument to 3:

>> p = 0.45; sigma = p*rho + (1-p)*eye(9)/9;
>> IsSeparable(sigma)

ans =

    -1

>> IsSeparable(sigma,[3,3],3)
Determined to be separable via the semidefinite program based on 3-copy symmetric extensions from reference:
M. Navascues, M. Owari, and M. B. Plenio. A complete criterion for separability detection. Phys. Rev. Lett., 103:160404, 2009.

ans =

     1

References

  1. 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]