qiskit.quantum_info.process_fidelity
process_fidelity(channel, target=None, require_cp=True, require_tp=True)
Return the process fidelity of a noisy quantum channel.
The process fidelity between two quantum channels is given by
where is the state_fidelity()
, is the normalized Choi
matrix for the channel , and is the input dimension of .
When the target channel is unitary this is equivalent to
where are the SuperOp
matrices for the input quantum channel and target unitary respectively, and 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 [Default: True].
Returns
The process fidelity .
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.