# SymmetricInnerExtension

 Other toolboxes required SymmetricInnerExtension Determines whether or not an operator has a symmetric inner extension CVX IsPPTIsSeparableSymmetricExtensionSymmetricProjection Entanglement and separability

SymmetricInnerExtension is a function that determines whether or not a given positive semidefinite operator is in the cone defined in reference  that approximates the set of separable operators from the inside, based on operators with symmetric extensions. Importantly, if this script returns a value of 1 then we know that the given operator is separable (if the script returns a value of 0, we know nothing about whether the operator is separable or entangled).

## Syntax

• EX = SymmetricInnerExtension(X)
• EX = SymmetricInnerExtension(X,K)
• EX = SymmetricInnerExtension(X,K,DIM)
• EX = SymmetricInnerExtension(X,K,DIM,PPT)
• EX = SymmetricInnerExtension(X,K,DIM,PPT,TOL)
• [EX,WIT] = SymmetricInnerExtension(X,K,DIM,PPT,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 0): A flag (either 1 or 0) that indicates whether or not the desired symmetric extension must have positive partial transpose.
• 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 inner extension.

### Output arguments

• EX: A flag (either 1 or 0) indicating that X does or does not have a symmetric inner extension of the desired type. A value of 1 means that X is separable.
• WIT (optional): A witness that verifies that the answer provided by EX is correct. If EX = 1 (i.e., X is in the "inner" symmetric extension cone) then WIT is a symmetric extension of the operator $$\sigma_{AB}$$ from , and thus acts as a witness that verifies that EX = 1 is correct. If X is not in this cone (i.e., EX = 0) then WIT is an operator with trace(WIT*X) = -1 but trace(WIT*Y) >= 0 for all operators in the described cone. Note that WIT may not be an entanglement witness!

## Examples

The following code takes an unnormalized quantum state and shows that it is separable, since it has a symmetric inner extension.

>> rho = [11     4    -1    -1    -1    -1    -1    -1    -1
4    11    -1    -1    -1    -1    -1    -1    -1
-1    -1    11    -1    -1     4    -1    -1    -1
-1    -1    -1    11    -1    -1     4    -1    -1
-1    -1    -1    -1    16    -1    -1    -1    -1
-1    -1     4    -1    -1    11    -1    -1    -1
-1    -1    -1     4    -1    -1    11    -1    -1
-1    -1    -1    -1    -1    -1    -1    11     4
-1    -1    -1    -1    -1    -1    -1     4    11];
>> SymmetricInnerExtension(rho,2,[3,3],1) % we set PPT=1, since this makes the separability test stronger

ans =

1

If we subtract the identity from rho, then intuitively it becomes "less separable". We can verify this as follows, where we see that setting K = 2 is no longer sufficient to prove that the state is separable, and instead we must set K = 3. In general, the higher K is, the stronger the test for separability is, but the longer and more memory-intensive the computation is.

>> SymmetricInnerExtension(rho-eye(9),2,[3,3],1)

ans =

0

>> SymmetricInnerExtension(rho-eye(9),3,[3,3],1)

ans =

1