toqito.state_metrics.helstrom_holevo¶
Helstrom-Holevo metric gives the bst success probability to distinguish two mixed states.
Module Contents¶
- toqito.state_metrics.helstrom_holevo.helstrom_holevo(rho, sigma)[source]¶
Compute the Helstrom-Holevo distance between density matrices [@WikiHolevo].
In general, the best success probability to discriminate two mixed states represented by (rho) and (sigma) is given by [@WikiHolevo].
- [
frac{1}{2}+frac{1}{2} left(frac{1}{2} left|rho - sigma right|_1right).
]
Examples
Consider the following Bell state
]
The corresponding density matrix of (u) may be calculated by:
- [
- rho = u u^* = begin{pmatrix}
1 & 0 & 0 & 1 \ 0 & 0 & 0 & 0 \ 0 & 0 & 0 & 0 \ 1 & 0 & 0 & 1
end{pmatrix} in text{D}(mathcal{X}).
]
Calculating the Helstrom-Holevo distance of states that are identical yield a value of (1/2). This can be verified in |toqito⟩ as follows.
```python exec=”1” source=”above” import numpy as np from toqito.states import basis from toqito.state_metrics import helstrom_holevo
e_0, e_1 = basis(2, 0), basis(2, 1) e_00 = np.kron(e_0, e_0) e_11 = np.kron(e_1, e_1)
u_vec = 1 / np.sqrt(2) * (e_00 + e_11) rho = u_vec @ u_vec.conj().T sigma = rho
print(helstrom_holevo(rho, sigma)) ```
- Raises:
ValueError – If matrices are not density operators.
- Parameters:
rho (numpy.ndarray) – Density operator.
sigma (numpy.ndarray) – Density operator.
- Returns:
The Helstrom-Holevo distance between rho and sigma.
- Return type:
float | numpy.floating