toqito.state_props.is_distinguishable¶
Checks if a set of quantum states are distinguishable.
Module Contents¶
- toqito.state_props.is_distinguishable.is_distinguishable(states, probs=None)[source]¶
Check whether a collection of vectors are (perfectly) distinguishable or not.
The ability to determine whether a set of quantum states are distinguishable can be obtained via the state distinguishability SDP as defined in state_distinguishability
Examples
The set of Bell states are an example of distinguishable 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 distinguishable:
`python exec="1" source="above" from toqito.states import bell from toqito.state_props import is_distinguishable bell_states = [bell(0), bell(1), bell(2), bell(3)] print(is_distinguishable(bell_states)) `- Parameters:
states (list[numpy.ndarray]) – A set of vectors consisting of quantum states to determine the distinguishability of.
probs (list[float] | None) – Respective list of probabilities each state is selected. If no probabilities are provided, a uniform
assumed. (probability distribution is)
- Returns:
True if the vectors are distinguishable; False otherwise.
- Return type:
bool | numpy.bool_