IsotropicState: Difference between revisions

From QETLAB
Jump to navigation Jump to search
Created page with "{{Function |name=IsotropicState |desc=Produces an isotropic state |req=iden<br />MaxEntangled<br />opt_args |rel=WernerState |upd=January 7, 2013 |v=1.00}}..."
 
No edit summary
Line 2: Line 2:
|name=IsotropicState
|name=IsotropicState
|desc=Produces an [[isotropic state]]
|desc=Produces an [[isotropic state]]
|req=[[iden]]<br />[[MaxEntangled]]<br />[[opt_args]]
|rel=[[WernerState]]
|rel=[[WernerState]]
|upd=January 7, 2013
|upd=September 22, 2014
|v=1.00}}
|v=0.50}}
<tt>'''IsotropicState'''</tt> is a [[List of functions|function]] that returns the [[isotropic state]] requested by the user. The isotropic state may be either full or sparse.
<tt>'''IsotropicState'''</tt> is a [[List of functions|function]] that returns an [[isotropic state]] (i.e., a state of the following form):<ref name="HH97">M. Horodecki and P. Horodecki. Reduction criterion of separability and limits for a class of distillation protocols. Phys. Rev. A, 59:4206--4216, 1999. E-print: [http://arxiv.org/abs/quant-ph/9708015 arXiv:quant-ph/9708015]</ref>
<center><math>\rho_\alpha := (1-\alpha)I/d^2 + \alpha|\psi_+\rangle\langle\psi_+| \in M_d \otimes M_d,</math></center>
where $|\psi_+\rangle:=\frac{1}{\sqrt{d}}\sum_j|j\rangle\otimes|j\rangle$ is the standard [[MaxEntangled|maximally-entangled pure state]]. Note that the output of this function is a sparse matrix.


==Syntax==
==Syntax==
* <tt>RHO = IsotropicState(DIM,ALPHA)</tt>
* <tt>RHO = IsotropicState(DIM,ALPHA)</tt>
* <tt>RHO = IsotropicState(DIM,ALPHA,SP)</tt>


==Argument descriptions==
==Argument descriptions==
* <tt>DIM</tt>: Dimension of the local subsystems on which <tt>RHO</tt> acts.
* <tt>DIM</tt>: Dimension of the local subsystems on which <tt>RHO</tt> acts.
* <tt>ALPHA</tt>: A parameter that specifies which [[isotropic state]] is to be returned. In particular, <tt>RHO = (1-ALPHA)*I/DIM^2 + ALPHA*E</tt>, where <tt>I</tt> is the identity operator and <tt>E</tt> is the projection onto the standard maximally-entangled pure state on two copies of <tt>DIM</tt>-dimensional space. In order for <tt>RHO</tt> to be positive semidefinite (and hence a valid density matrix), it must be the case that <tt>-1/(DIM^2-1) &le; ALPHA &le; 1</tt>.
* <tt>ALPHA</tt>: A parameter that specifies which isotropic state is to be returned. In particular, <tt>RHO = (1-ALPHA)*I/DIM^2 + ALPHA*E</tt>, where <tt>I</tt> is the identity operator and <tt>E</tt> is the projection onto the standard maximally-entangled pure state on two copies of <tt>DIM</tt>-dimensional space. In order for <tt>RHO</tt> to be positive semidefinite (and hence a valid density matrix), it must be the case that <tt>-1/(DIM^2-1) &le; ALPHA &le; 1</tt>.
* <tt>SP</tt> (optional, default 0): A flag (either 1 or 0) indicating that the isotropic state produced should or should not be sparse.


==Examples==
==Examples==
===A qutrit isotropic state===
===A qutrit isotropic state===
To generate the isotropic state with parameter $\alpha = 1/2$, the following code suffices:
To generate the isotropic state with parameter $\alpha = 1/2$, the following code suffices:
<pre>
<syntaxhighlight>
>> IsotropicState(3,1/2)
>> full(IsotropicState(3,1/2))


ans =
ans =
Line 34: Line 33:
         0        0        0        0        0        0        0    0.0556        0
         0        0        0        0        0        0        0    0.0556        0
     0.1667        0        0        0    0.1667        0        0        0    0.2222
     0.1667        0        0        0    0.1667        0        0        0    0.2222
</pre>
</syntaxhighlight>


Isotropic states in general have a lot of zero entries, so you will usually save a lot of memory by specifying <tt>SP = 1</tt>, which causes the isotropic state that is generated to be sparse:
Isotropic states in general have a lot of zero entries, so this function always returns a sparse matrix. If you want a full matrix (as above), use MATLAB's [http://www.mathworks.com/access/helpdesk/help/techdoc/ref/full.html full] function.
<pre>
<syntaxhighlight>
>> IsotropicState(3,1/2,1)
>> IsotropicState(3,1/2,1)


Line 57: Line 56:
   (5,9)      0.1667
   (5,9)      0.1667
   (9,9)      0.2222
   (9,9)      0.2222
</pre>
</syntaxhighlight>
 
{{SourceCode|name=IsotropicState}}
 
==References==
<references />

Revision as of 14:29, 22 September 2014

IsotropicState
Produces an isotropic state

Other toolboxes required none
Related functions WernerState

IsotropicState is a function that returns an isotropic state (i.e., a state of the following form):[1]

<math>\rho_\alpha := (1-\alpha)I/d^2 + \alpha|\psi_+\rangle\langle\psi_+| \in M_d \otimes M_d,</math>

where $|\psi_+\rangle:=\frac{1}{\sqrt{d}}\sum_j|j\rangle\otimes|j\rangle$ is the standard maximally-entangled pure state. Note that the output of this function is a sparse matrix.

Syntax

  • RHO = IsotropicState(DIM,ALPHA)

Argument descriptions

  • DIM: Dimension of the local subsystems on which RHO acts.
  • ALPHA: A parameter that specifies which isotropic state is to be returned. In particular, RHO = (1-ALPHA)*I/DIM^2 + ALPHA*E, where I is the identity operator and E is the projection onto the standard maximally-entangled pure state on two copies of DIM-dimensional space. In order for RHO to be positive semidefinite (and hence a valid density matrix), it must be the case that -1/(DIM^2-1) ≤ ALPHA ≤ 1.

Examples

A qutrit isotropic state

To generate the isotropic state with parameter $\alpha = 1/2$, the following code suffices:

>> full(IsotropicState(3,1/2))

ans =

    0.2222         0         0         0    0.1667         0         0         0    0.1667
         0    0.0556         0         0         0         0         0         0         0
         0         0    0.0556         0         0         0         0         0         0
         0         0         0    0.0556         0         0         0         0         0
    0.1667         0         0         0    0.2222         0         0         0    0.1667
         0         0         0         0         0    0.0556         0         0         0
         0         0         0         0         0         0    0.0556         0         0
         0         0         0         0         0         0         0    0.0556         0
    0.1667         0         0         0    0.1667         0         0         0    0.2222

Isotropic states in general have a lot of zero entries, so this function always returns a sparse matrix. If you want a full matrix (as above), use MATLAB's full function.

>> IsotropicState(3,1/2,1)

ans =

   (1,1)       0.2222
   (5,1)       0.1667
   (9,1)       0.1667
   (2,2)       0.0556
   (3,3)       0.0556
   (4,4)       0.0556
   (1,5)       0.1667
   (5,5)       0.2222
   (9,5)       0.1667
   (6,6)       0.0556
   (7,7)       0.0556
   (8,8)       0.0556
   (1,9)       0.1667
   (5,9)       0.1667
   (9,9)       0.2222

Source code

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

References

  1. M. Horodecki and P. Horodecki. Reduction criterion of separability and limits for a class of distillation protocols. Phys. Rev. A, 59:4206--4216, 1999. E-print: arXiv:quant-ph/9708015