Partial transpose

PT (bit labels);
outputs the partial transpose with respect to the qubits specified by bit labels. There is also the command
PTb (bit labels);
This shows each vector of the output of the partial transpose in the format of binary digits.

To save the partial transpose into the file named file name, use the command:

PTsave (bit labels, file name);
The saved matrix can be loaded by ``mload;''. Further analysis with the saved matrix should be performed in another calculator such as Octave. This is possible when a user converts it to the matrix in another format (See Sec. 5.1).

 
Note: These three commands does not change the current state in calculation. They only show or save a partial transpose. 

In general, the partial transpose of a density operator $ \rho$ of a bipartite state (the state space is the Hilbert space $ H_A\otimes H_B$) with respect to the component system $ A$ ($ H_A$) is denoted as $ \rho^{T_A}$. Let us write the $ i$-$ j$ element of $ \rho$ as

$\displaystyle \rho_{ij}=\langle\varphi_i\vert\rho\vert\varphi_j\rangle=\langle\...
...langle\varphi_{i,B}\vert\rho\vert\varphi_{j,A}\rangle\vert\varphi_{j,B}\rangle.$ (12)

Then the $ i$-$ j$ element of $ \rho^{T_A}$ is given by

$\displaystyle \rho^{T_A}_{ij}=\langle\varphi_{j,A}\vert\langle\varphi_{i,B}\vert\rho\vert\varphi_{i,A}\rangle\vert\varphi_{j,B}\rangle.$ (13)

In other words, the $ ac$-$ bd$ element of $ \rho$, $ \langle a\vert\langle c\vert\rho\vert b\rangle\vert d\rangle$, is mapped to the $ bc$-$ ad$ element of $ \rho^{T_A}$, $ \langle b\vert\langle c\vert\rho^{T_A}\vert a\rangle\vert d\rangle$, for all the possible integers $ a,b,c,d$, where $ \vert a\rangle,\vert b\rangle$ are basis vectors of the component system $ A$, and $ \vert c\rangle,\vert d\rangle$ are basis vectors of the component system $ B$.

For example, the partial transpose with respect to the left most qubit of $ \rho = \frac{1}{2}(\vert10\rangle\langle 010\vert + \vert10\rangle\langle 111\vert +
\vert 111\rangle\langle 010\vert + \vert 111\rangle\langle 111\vert)$ is $ \rho^{T_l}=\frac{1}{2}(\vert10\rangle\langle 010\vert + \vert11\rangle\langle 110\vert +
\vert 110\rangle\langle 011\vert + \vert 111\rangle\langle 111\vert)$. For this purpose, you may just type ``PTb(1);'' after setting up the mixed state $ \rho$. Try the following example in the read-line mode:

 
=======================
 > init-mixed 1.0 0.0 1.0;
 > H(3); CN(3,1);
 > showb;
0.5|010><010| + 0.5|010><111| + 0.5|111><010| + 0.5|111><111|
 > PTb(1);
0.5|010><010| + 0.5|011><110| + 0.5|110><011| + 0.5|111><111|
 > showb;
0.5|010><010| + 0.5|010><111| + 0.5|111><010| + 0.5|111><111|
 >
root
2004-06-15