state_props.entanglement_of_formation
¶
Computes the entanglement of formation of a bipartite quantum state.
Module Contents¶
Functions¶
|
Compute entanglement-of-formation of a bipartite quantum state [1]. |
- state_props.entanglement_of_formation.entanglement_of_formation(rho, dim=None)¶
Compute entanglement-of-formation of a bipartite quantum state [1].
Entanglement-of-formation is the entropy of formation of the bipartite quantum state
rho
. Note that this function currently only supportsrho
being a pure state or a 2-qubit state: it is not known how to compute the entanglement-of-formation of higher-dimensional mixed states.This function was adapted from QETLAB.
Examples
Compute the entanglement-of-formation of a Bell state.
Let \(u = \frac{1}{\sqrt{2}} \left(|00\rangle + |11\rangle \right)\) and let
\[\begin{split}\rho = uu^* = \frac{1}{2}\begin{pmatrix} 1 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ 1 & 0 & 0 & 1 \end{pmatrix}.\end{split}\]The entanglement-of-formation of \(\rho\) is equal to 1.
>>> from toqito.state_props import entanglement_of_formation >>> from toqito.states import bell >>> >>> u_vec = bell(0) >>> rho = u_vec * u_vec.conj().T >>> '%.2f' % entanglement_of_formation(rho) '1.00'
Note
You do not need to use ‘%.2f’ % when you use this function.
We use this to format our output such that doctest compares the calculated output to the expected output upto two decimal points only. The accuracy of the solvers can calculate the float output to a certain amount of precision such that the value deviates after a few digits of accuracy.
References
- Raises:
ValueError – If matrices have improper dimension.
- Parameters:
rho (numpy.ndarray) – A matrix or vector.
dim (list[int] | int) – The default has both subsystems of equal dimension.
- Returns:
A value between 0 and 1 that corresponds to the entanglement-of-formation of
rho
.- Return type:
float