toqito.states.horodecki
- toqito.states.horodecki(a_param, dim=None)[source]
Produce a Horodecki state [HOR], [CHR].
Returns the Horodecki state in either \((3 \otimes 3)\)-dimensional space or \((2 \otimes 4)\)-dimensional space, depending on the dimensions in the 1-by-2 vector
dim.The Horodecki state was introduced in [1] which serves as an example in \(\mathbb{C}^3 \otimes \mathbb{C}\) or \(\mathbb{C}^2 \otimes \mathbb{C}^4\) of an entangled state that is positive under partial transpose (PPT). The state is PPT for all \(a \in [0, 1]\) and separable only for
a_param = 0ora_param = 1.These states have the following definitions:
\[\begin{split}\begin{equation} \rho_a^{3 \otimes 3} = \frac{1}{8a + 1} \begin{pmatrix} a & 0 & 0 & 0 & a & 0 & 0 & 0 & a \\ 0 & a & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & a & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & a & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & a & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & a & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & \frac{1}{2} \left( 1 + a \right) & 0 & \frac{1}{2} \sqrt{1 - a^2} \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & a & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & \frac{1}{2} \sqrt{1 - a^2} & 0 & \frac{1}{2} \left(1 + a \right) \\ \end{pmatrix}, \end{equation}\end{split}\]\[\begin{split}\begin{equation} \rho_a^{2 \otimes 4} = \frac{1}{7a + 1} \begin{pmatrix} a & 0 & 0 & 0 & 0 & a & 0 & 0 \\ 0 & a & 0 & 0 & 0 & 0 & a & 0 \\ 0 & 0 & a & 0 & 0 & 0 & 0 & a \\ 0 & 0 & 0 & a & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & \frac{1}{2} \left(1 + a\right) & 0 & 0 & \frac{1}{2}\sqrt{1 -a^2} \\ a & 0 & 0 & 0 & 0 & a & 0 & 0 \\ 0 & a & 0 & 0 & 0 & 0 & a & 0 \\ 0 & 0 & a & 0 & \frac{1}{2}\sqrt{1 - a^2} & 0 & 0 & \frac{1}{2}\left(1 +a \right) \end{pmatrix}. \end{equation}\end{split}\]Note
Refer to [CHR] (specifically equations (1) and (2)) for more information on this state and its properties. The 3x3 Horodecki state is defined explicitly in Section 4.1 of [HOR] and the 2x4 Horodecki state is defined explicitly in Section 4.2 of [HOR].
Examples
The following code generates a Horodecki state in \(\mathbb{C}^3 \otimes \mathbb{C}^3\)
>>> from toqito.states import horodecki >>> horodecki(0.5, [3, 3]) [[0.1 , 0. , 0. , 0. , 0.1 , 0. , 0. , 0. , 0.1 ], [0. , 0.1 , 0. , 0. , 0. , 0. , 0. , 0. , 0. ], [0. , 0. , 0.1 , 0. , 0. , 0. , 0. , 0. , 0. ], [0. , 0. , 0. , 0.1 , 0. , 0. , 0. , 0. , 0. ], [0.1 , 0. , 0. , 0. , 0.1 , 0. , 0. , 0. , 0.1 ], [0. , 0. , 0. , 0. , 0. , 0.1 , 0. , 0. , 0. ], [0. , 0. , 0. , 0. , 0. , 0. , 0.15 , 0. , 0.08660254], [0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.1 , 0. ], [0.1 , 0. , 0. , 0. , 0.1 , 0. , 0.08660254, 0. , 0.15 ]]
The following code generates a Horodecki state in \(\mathbb{C}^2 \otimes \mathbb{C}^4\).
>>> from toqito.states import horodecki >>> horodecki(0.5, [2, 4]) [[0.11111111, 0. , 0. , 0. , 0. , 0.11111111, 0. , 0. ], [0. , 0.11111111, 0. , 0. , 0. , 0. , 0.11111111, 0. ], [0. , 0. , 0.11111111, 0. , 0. , 0. , 0. , 0.11111111], [0. , 0. , 0. , 0.11111111, 0. , 0. , 0. , 0. ], [0. , 0. , 0. , 0. , 0.16666667, 0. , 0. , 0.09622504], [0.11111111, 0. , 0. , 0. , 0. , 0.11111111, 0. , 0. ], [0. , 0.11111111, 0. , 0. , 0. , 0. , 0.11111111, 0. ], [0. , 0. , 0.11111111, 0. , 0.09622504, 0. , 0. , 0.16666667]]
References