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.

qiskit.quantum_info.process_fidelity

process_fidelity(channel, target=None, require_cp=True, require_tp=True)

GitHub

Return the process fidelity of a noisy quantum channel.

The process fidelity Fpro(E,F)F_{\text{pro}}(\mathcal{E}, \mathcal{F}) between two quantum channels E,F\mathcal{E}, \mathcal{F} is given by

Fpro(E,F)=F(ρE,ρF)F_{\text{pro}}(\mathcal{E}, \mathcal{F}) = F(\rho_{\mathcal{E}}, \rho_{\mathcal{F}})

where FF is the state_fidelity(), ρE=ΛE/d\rho_{\mathcal{E}} = \Lambda_{\mathcal{E}} / d is the normalized Choi matrix for the channel E\mathcal{E}, and dd is the input dimension of E\mathcal{E}.

When the target channel is unitary this is equivalent to

Fpro(E,U)=Tr[SUSE]d2F_{\text{pro}}(\mathcal{E}, U) = \frac{Tr[S_U^\dagger S_{\mathcal{E}}]}{d^2}

where SE,SUS_{\mathcal{E}}, S_{U} are the SuperOp matrices for the input quantum channel E\mathcal{E} and target unitary UU respectively, and dd is the input dimension of the channel.

Parameters

  • channel (Operator or QuantumChannel) – input quantum channel.
  • target (Operator or QuantumChannel or None) – target quantum channel. If None target is the identity operator [Default: None].
  • require_cp (bool) – check if input and target channels are completely-positive and if non-CP log warning containing negative eigenvalues of Choi-matrix [Default: True].
  • require_tp (bool) – check if input and target channels are trace-preserving and if non-TP log warning containing negative eigenvalues of partial Choi-matrix Trout[E]ITr_{\text{out}}[\mathcal{E}] - I [Default: True].

Returns

The process fidelity FproF_{\text{pro}}.

Return type

float

Raises

QiskitError – if the channel and target do not have the same dimensions.

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