Difference between revisions of "SymmetricExtension"

From QETLAB
Jump to navigation Jump to search
(Updated to v1.03 and added an example)
Line 2: Line 2:
 
|name=SymmetricExtension
 
|name=SymmetricExtension
 
|desc=Determines whether or not an operator has a [[symmetric extension]]
 
|desc=Determines whether or not an operator has a [[symmetric extension]]
|req=[http://cvxr.com/cvx/ cvx]<br />[[IsPPT]]<br />[[IsPSD]]<br />[[opt_args]]<br />[[PartialTrace]]<br />[[PartialTranspose]]<br />[[PermutationOperator]]<br />[[PermuteSystems]]<br />[[sporth]]<br />[[SymmetricProjection]]
+
|req=[http://cvxr.com/cvx/ cvx]
|rel=[[SymmetricInnerExtension]]
+
|rel=[[IsPPT]]<br />[[IsSeparable]]<br />[[SymmetricInnerExtension]]<br />[[SymmetricProjection]]
 +
|cat=[[List of functions#Entanglement_and_separability|Entanglement&nbsp;and&nbsp;separability]]
 
|upd=February 21, 2014
 
|upd=February 21, 2014
|v=1.03}}
+
|v=0.50}}
 
<tt>'''SymmetricExtension'''</tt> is a [[List of functions|function]] that determines whether or not a given [[positive semidefinite]] operator has a symmetric extension. This function is extremely useful for showing that [[quantum state]]s are [[entangled]] (see the [[#Examples|Examples]] section). Various types of symmetric extensions can be looked for &ndash; by default, the extension that is looked for must be [[Bosonic]] and have [[positive partial transpose]], but both of these restrictions can be removed.
 
<tt>'''SymmetricExtension'''</tt> is a [[List of functions|function]] that determines whether or not a given [[positive semidefinite]] operator has a symmetric extension. This function is extremely useful for showing that [[quantum state]]s are [[entangled]] (see the [[#Examples|Examples]] section). Various types of symmetric extensions can be looked for &ndash; by default, the extension that is looked for must be [[Bosonic]] and have [[positive partial transpose]], but both of these restrictions can be removed.
  
Line 33: Line 34:
 
===2-qubit symmetric extension===
 
===2-qubit symmetric extension===
 
It is known<ref>J. Chen, Z. Ji, D. Kribs, N. Lütkenhaus, and B. Zeng. ''Symmetric extension of two-qubit states''. E-print: [http://arxiv.org/abs/1310.3530 arXiv:1310.3530] [quant-ph]</ref> that a 2-qubit state $\rho_{AB}$ has a (not necessarily PPT) symmetric extension if and only if ${\rm Tr}(\rho_B^2) \geq {\rm Tr}(\rho_{AB}^2) - 4\sqrt{\det(\rho_{AB})}$. The following code verifies that one such state does indeed have a symmetric extension.
 
It is known<ref>J. Chen, Z. Ji, D. Kribs, N. Lütkenhaus, and B. Zeng. ''Symmetric extension of two-qubit states''. E-print: [http://arxiv.org/abs/1310.3530 arXiv:1310.3530] [quant-ph]</ref> that a 2-qubit state $\rho_{AB}$ has a (not necessarily PPT) symmetric extension if and only if ${\rm Tr}(\rho_B^2) \geq {\rm Tr}(\rho_{AB}^2) - 4\sqrt{\det(\rho_{AB})}$. The following code verifies that one such state does indeed have a symmetric extension.
<pre<noinclude></noinclude>>
+
<syntaxhighlight>
 
>> rho = [1 0 0 -1;0 1 1/2 0;0 1/2 1 0;-1 0 0 1];
 
>> rho = [1 0 0 -1;0 1 1/2 0;0 1/2 1 0;-1 0 0 1];
>> [trace([[PartialTrace|PartialTrace(rho)]]^2), trace(rho^2) - 4*sqrt(det(rho))] % if the first number is >= the second number, rho has a symmetric extension
+
>> [trace(PartialTrace(rho)^2), trace(rho^2) - 4*sqrt(det(rho))] % if the first number is >= the second number, rho has a symmetric extension
  
 
ans =
 
ans =
Line 46: Line 47:
  
 
     1
 
     1
</pre<noinclude></noinclude>>
+
</syntaxhighlight>
 +
 
 +
{{SourceCode|name=SymmetricExtension}}
  
 
==References==
 
==References==
 
<references />
 
<references />

Revision as of 15:27, 22 September 2014

SymmetricExtension
Determines whether or not an operator has a symmetric extension

Other toolboxes required cvx
Related functions IsPPT
IsSeparable
SymmetricInnerExtension
SymmetricProjection
Function category Entanglement and separability

SymmetricExtension is a function that determines whether or not a given positive semidefinite operator has a symmetric extension. This function is extremely useful for showing that quantum states are entangled (see the Examples section). Various types of symmetric extensions can be looked for – by default, the extension that is looked for must be Bosonic and have positive partial transpose, but both of these restrictions can be removed.

Syntax

  • EX = SymmetricExtension(X)
  • EX = SymmetricExtension(X,K)
  • EX = SymmetricExtension(X,K,DIM)
  • EX = SymmetricExtension(X,K,DIM,PPT)
  • EX = SymmetricExtension(X,K,DIM,PPT,BOS)
  • EX = SymmetricExtension(X,K,DIM,PPT,BOS,TOL)
  • [EX,WIT] = SymmetricExtension(X,K,DIM,PPT,BOS,TOL)

Argument descriptions

Input arguments

  • X: A positive semidefinite operator.
  • K (optional, default 2): The number of copies of the second subsystem in the desired symmetric extension.
  • 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.
  • PPT (optional, default 1): A flag (either 1 or 0) that indicates whether or not the desired symmetric extension must have positive partial transpose.
  • BOS (optional, default 1): A flag (either 1 or 0) that indicates whether or not the desired symmetric extension must be Bosonic (i.e., have its range contained within the symmetric subspace).
  • TOL (optional, default eps^(1/4)): The numerical tolerance used throughout this script. It is recommended that this is left at the default value unless numerical problems arise and the script has difficulty determining whether or not X has a symmetric extension.

Output arguments

  • EX: A flag (either 1 or 0) indicating that X does or does not have a symmetric extension of the desired type.
  • WIT (optional): A witness that verifies that the answer provided by EX is correct. If EX = 1 (i.e., X has a symmetric extension) then WIT is such a symmetric extension. If EX = 0 (i.e., no symmetric extension exists) then WIT is an entanglement witness with trace(WIT*X) = -1 but trace(WIT*Y) >= 0 for all symmetrically extendable Y.

Examples

2-qubit symmetric extension

It is known[1] that a 2-qubit state $\rho_{AB}$ has a (not necessarily PPT) symmetric extension if and only if ${\rm Tr}(\rho_B^2) \geq {\rm Tr}(\rho_{AB}^2) - 4\sqrt{\det(\rho_{AB})}$. The following code verifies that one such state does indeed have a symmetric extension.

>> rho = [1 0 0 -1;0 1 1/2 0;0 1/2 1 0;-1 0 0 1];
>> [trace(PartialTrace(rho)^2), trace(rho^2) - 4*sqrt(det(rho))] % if the first number is >= the second number, rho has a symmetric extension

ans =

    8.0000    6.5000

>> SymmetricExtension(rho,2,[2,2],0) % verify that rho has a symmetric extension

ans =

     1

Source code

Click here to view this function's source code on github.

References

  1. J. Chen, Z. Ji, D. Kribs, N. Lütkenhaus, and B. Zeng. Symmetric extension of two-qubit states. E-print: arXiv:1310.3530 [quant-ph]