Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

choi_to_pauli

choi_to_pauli(choi, order=1)

GitHub

Convert a Choi-matrix to a Pauli-basis superoperator.

Note that this function assumes that the Choi-matrix is defined in the standard column-stacking convention and is normalized to have trace 1. For a channel E this is defined as: choi=(IE)(bellstate)choi = (I \otimes E)(bell_state).

The resulting ‘rauli’ R acts on input states as

ρoutp=Rρinp.|{\rho_{out}}_p\rangle = R \cdot |{\rho_{in}}_p\rangle.

where ρ=|{\rho}\rangle = vectorize(rho, method='pauli') for order=1 and ρ=|{\rho}\rangle = vectorize(rho, method='pauli_weights') for order=0.

Parameters

  • choi (matrix) – the input Choi-matrix.
  • order (int) – ordering of the Pauli group vector. order=1 (default) is standard lexicographic ordering (e.g. [II, IX, IY, IZ, XI, XX, XY,...]) order=0 is ordered by weights (e.g. [II, IX, IY, IZ, XI, XY, XZ, XX, XY,...])

Returns

A superoperator in the Pauli basis.

Return type

np.array

Was this page helpful?
Report a bug or request content on GitHub.