Fidelity measures how close two quantum states (or unitaries) are. For states $\rho$ and $\sigma$:
$$F(\rho, \sigma) = \text{Tr}(\sqrt{\sqrt{\rho} \sigma \sqrt{\rho}})$$
For pure states, this simplifies to $F = |\langle\psi|\phi\rangle|^2$. Fidelity ranges from 0 (orthogonal) to 1 (identical).
from qutip import * import numpy as np # Two quantum states psi1 = basis(2, 0) psi2 = (basis(2, 0) + basis(2, 1)).unit() rho1 = psi1 * psi1.dag() rho2 = psi2 * psi2.dag() # Fidelity between states F = fidelity(rho1, rho2) print(F) # 0.5 for these states # Fidelity between unitaries U1 = sigmax() U2 = np.sqrt(sigmax()) # √X gate F_unitary = average_gate_fidelity(U1, U2)
D = tracedist(rho1, rho2) D_hs = (rho1 - rho2).norm() # Hilbert-Schmidt
Fidelity is the key metric for assessing quantum gate accuracy and simulation accuracy. Higher fidelity means closer to target.