state_opt.ppt_distinguishability

PPT distinguishability.

Module Contents

Functions

dual_problem(states[, probs, dist_method])

Calculate dual problem for PPT distinguishability.

ppt_distinguishability(states[, probs, dist_method, ...])

Compute probability of optimally distinguishing a state via PPT measurements [1].

primal_problem(states[, probs, dist_method])

Calculate primal problem for PPT distinguishability.

state_opt.ppt_distinguishability.dual_problem(states, probs=None, dist_method='min-error')

Calculate dual problem for PPT distinguishability.

The minimum-error semidefinite program implemented is defined as:

\[\begin{split}\begin{aligned} \text{minimize:} \quad & \frac{1}{k} \text{Tr}(Y) \\ \text{subject to:} \quad & Y - \rho_j \geq \text{T}_{\mathcal{A}} (Q_j), \quad j = 1, \ldots, k, \\ & Y \in \text{Herm}(\mathcal{A} \otimes \mathcal{B}), \\ & Q_1, \ldots, Q_k \in \text{Pos}(\mathcal{A} \otimes \mathcal{B}). \end{aligned}\end{split}\]

The unambiguous semidefinite program implemented is defined as:

\[\begin{split}\begin{aligned} \text{minimize:} \quad & \frac{1}{k} \text{Tr}(Y) \\ \text{subject to:} \quad & Y - \rho_j + \sum_{\substack{i \leq i \leq k \\ i \not= j}} y_{i,j} \rho_i \geq T_{\mathcal{A}}(Q_j), \quad j = 1, \ldots, k, \\ & Y \geq T_{\mathcal{A}}(Q_{k+1}), \\ & Y \in \text{Herm}(\mathcal{A} \otimes \mathcal{B}), \\ & Q_1, \ldots, Q_k \in \text{Pos}(\mathcal{A} \otimes \mathcal{B}), \\ & y_{i,j} \in \mathcal{R}. \quad 1 \leq i, j \leq k, \quad i \not= j. \end{aligned}\end{split}\]
Parameters:
  • states (list[numpy.ndarray]) – A list of states provided as either matrices or vectors.

  • probs (list[float]) – Respective list of probabilities each state is selected.

  • dist_method (str) – Method of distinguishing to use.

Returns:

The optimal value of the PPT dual problem SDP.

Return type:

float

state_opt.ppt_distinguishability.ppt_distinguishability(states, probs=None, dist_method='min-error', strategy=False)

Compute probability of optimally distinguishing a state via PPT measurements [1].

Implements the semidefinite program (SDP) whose optimal value is equal to the maximum probability of perfectly distinguishing orthogonal maximally entangled states using any PPT measurement; a measurement whose operators are positive under partial transpose. This SDP was explicitly provided in [1].

One can specify the distinguishability method using the dist_method argument.

For dist_method = "min-error", this is the default method that yields the probability of distinguishing quantum states via PPT measurements that minimize the probability of error.

For dist_method = "unambiguous", Alice and Bob never provide an incorrect answer, although it is possible that their answer is inconclusive.

For more info, go to the tutorial in the documentation Optimal probability of distinguishing a state via PPT measurements.

Examples

Consider the following Bell states:

\[\begin{split}\begin{equation} \begin{aligned} |\psi_0 \rangle = \frac{|00\rangle + |11\rangle}{\sqrt{2}}, &\quad |\psi_1 \rangle = \frac{|01\rangle + |10\rangle}{\sqrt{2}}, \\ |\psi_2 \rangle = \frac{|01\rangle - |10\rangle}{\sqrt{2}}, &\quad |\psi_3 \rangle = \frac{|00\rangle - |11\rangle}{\sqrt{2}}. \end{aligned} \end{equation}\end{split}\]

It was illustrated in [2] that for the following set of states

\[\begin{split}\begin{equation} \begin{aligned} \rho_1^{(2)} &= |\psi_0 \rangle | \psi_0 \rangle \langle \psi_0 | \langle \psi_0 |, \\ \rho_2^{(2)} &= |\psi_1 \rangle | \psi_3 \rangle \langle \psi_1 | \langle \psi_3 |, \\ \rho_3^{(2)} &= |\psi_2 \rangle | \psi_3 \rangle \langle \psi_2 | \langle \psi_3 |, \\ \rho_4^{(2)} &= |\psi_3 \rangle | \psi_3 \rangle \langle \psi_3 | \langle \psi_3 |, \\ \end{aligned} \end{equation}\end{split}\]

that the optimal probability of distinguishing via a PPT measurement should yield \(7/8 \approx 0.875\) as was proved in [2].

>>> from toqito.states import bell
>>> from toqito.state_opt import ppt_distinguishability
>>> # Bell vectors:
>>> psi_0 = bell(0)
>>> psi_1 = bell(2)
>>> psi_2 = bell(3)
>>> psi_3 = bell(1)
>>>
>>> # YDY vectors from :cite:`Yu_2012_Four`.
>>> x_1 = np.kron(psi_0, psi_0)
>>> x_2 = np.kron(psi_1, psi_3)
>>> x_3 = np.kron(psi_2, psi_3)
>>> x_4 = np.kron(psi_3, psi_3)
>>>
>>> # YDY density matrices.
>>> rho_1 = x_1 * x_1.conj().T
>>> rho_2 = x_2 * x_2.conj().T
>>> rho_3 = x_3 * x_3.conj().T
>>> rho_4 = x_4 * x_4.conj().T
>>>
>>> states = [rho_1, rho_2, rho_3, rho_4]
>>> probs = [1 / 4, 1 / 4, 1 / 4, 1 / 4]
>>> ppt_distinguishability(states, probs)
0.875

References

[1] (1,2,3)

Alessandro Cosentino. Positive-partial-transpose-indistinguishable states via semidefinite programming. Physical Review A, Jan 2013. URL: http://dx.doi.org/10.1103/PhysRevA.87.012321, doi:10.1103/physreva.87.012321.

[2] (1,2)

Nengkun Yu, Runyao Duan, and Mingsheng Ying. Four locally indistinguishable ququad-ququad orthogonal maximally entangled states. Physical Review Letters, Jul 2012. URL: http://dx.doi.org/10.1103/PhysRevLett.109.020506, doi:10.1103/physrevlett.109.020506.

Parameters:
  • states (list[numpy.ndarray]) – A list of states provided as either matrices or vectors.

  • dist_method (str) – The method of distinguishing states.

  • probs (list[float]) – Respective list of probabilities each state is selected.

  • dist_method – Method of distinguishing to use.

  • strategy (bool) – Returns strategy if True and does not otherwise.

Returns:

The optimal probability with which the states can be distinguished via PPT measurements.

Return type:

float

state_opt.ppt_distinguishability.primal_problem(states, probs=None, dist_method='min-error')

Calculate primal problem for PPT distinguishability.

The minimum-error semidefinite program implemented is defined as:
\[\begin{split}\begin{aligned} \text{maximize:} \quad & \sum_{j=1}^k \langle P_j, \rho_j \rangle \\ \text{subject to:} \quad & P_1 + \cdots + P_k = \mathbb{I}_{\mathcal{A}} \otimes \mathbb{I}_{\mathcal{B}}, \\ & P_1, \ldots, P_k \in \text{PPT}(\mathcal{A} : \mathcal{B}). \end{aligned}\end{split}\]
The unambiguous semidefinite program implemented is defined as:
Parameters:
  • states (list[numpy.ndarray]) – A list of states provided as either matrices or vectors.

  • probs (list[float]) – Respective list of probabilities each state is selected.

  • dist_method (str) – Method of distinguishing to use.

Returns:

The optimal value of the PPT primal problem SDP.

Return type:

float