toqito.state_props.is_antidistinguishable¶
Check if set of states are antidistinguishable.
Module Contents¶
- toqito.state_props.is_antidistinguishable.is_antidistinguishable(states)[source]¶
Check whether a collection of vectors are antidistinguishable or not.
For more information, see [@Heinosaari_2018_Antidistinguishability].
The ability to determine whether a set of quantum states are antidistinguishable can be obtained via the state exclusion SDP [@Bandyopadhyay_2014_Conclusive] such that we ignore the associated probabilities with which the states are chosen from the set of vectors.
Examples
The set of Bell states are an example of antidistinguishable states. Recall that the Bell states are defined as:
[ begin{aligned} u_1 &= frac{1}{sqrt{2}} left(|00rangle + |11rangleright), quad u_2 = frac{1}{sqrt{2}} left(|00rangle - |11rangleright), \ u_3 &= frac{1}{sqrt{2}} left(|01rangle + |10rangleright), quad u_4 = frac{1}{sqrt{2}} left(|01rangle - |10rangleright). end{aligned} ]
It can be checked in toqito that the Bell states are antidistinguishable:
`python exec="1" source="above" from toqito.states import bell from toqito.state_props import is_antidistinguishable bell_states = [bell(0), bell(1), bell(2), bell(3)] print(is_antidistinguishable(bell_states)) `Consider the following measurement operators
[ M_i = frac{1}{3}left(mathbb{I}_{mathcal{X}} - u_i u_i^*right) ]
for all (1 leq i leq 4). It can be verified that these constitute a valid set of POVMs, that is (sum_{i=1}^4 M_i = mathbb{I}_{mathcal{X}}) and (M_i in text{Pos}(mathcal{X})) for all (1 leq i leq 4). It may also be verified that
- [
sum_{i=1}^4 langle M_i, u_i u_i^* rangle = 0,
]
and hence, the Bell states are antidistinguishable.
- Parameters:
states (list[numpy.ndarray]) – A set of vectors consisting of quantum states to determine the antidistinguishability of.
- Returns:
True if the vectors are antidistinguishable; False otherwise.
- Return type:
bool | numpy.bool_