|View source on GitHub|
Returns a Kraus representation of a channel specified via the superoperator matrix.
cirq.qis.superoperator_to_kraus( superoperator: np.ndarray ) -> Sequence[np.ndarray]
Quantum channel E: L(H1) -> L(H2) may be described by a collection of operators A_i, called Kraus operators, such that
Kraus representation is not unique. Alternatively, E may be specified by its superoperator matrix K(E) defined so that
where the vectorization map $vec$ rearranges d-by-d matrices into d**2-dimensional vectors. Superoperator matrix is unique for a given channel. It is also called the natural representation of a quantum channel.
The most expensive step in the computation of a Kraus representation from a superoperator matrix is eigendecomposition. Therefore, the cost of the conversion is O(d**6) where d is the dimension of the input and output Hilbert space.
||Superoperator matrix specifying a quantum channel.|
|Sequence of Kraus operators of the channel specified by superoperator.|
||If superoperator is not a valid superoperator matrix.|