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=False, require_cptp=False)

GitHub

Return the process fidelity of a noisy quantum channel.

This process fidelity FproF_{\text{pro}} is given by

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\cal{E} and target unitary UU respectively, and dd is the dimension of the channel.

Parameters

  • channel (QuantumChannel) – noisy quantum channel.
  • target (Operator or None) – target unitary operator. If None target is the identity operator [Default: None].
  • require_cp (bool) – require channel to be completely-positive [Default: True].
  • require_tp (bool) – require channel to be trace-preserving [Default: False].
  • require_cptp (bool) – (DEPRECATED) require input channels to be CPTP [Default: False].

Returns

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

Return type

float

Raises

  • QiskitError – if the channel and target do not have the same dimensions, or have different input and output dimensions.
  • QiskitError – if the channel and target or are not completely-positive (with require_cp=True) or not trace-preserving (with require_tp=True).
Was this page helpful?
Report a bug or request content on GitHub.