mindquantum.simulator.fidelity

查看源文件
mindquantum.simulator.fidelity(rho: np.ndarray, sigma: np.ndarray)[源代码]

计算两个量子态的保真度。

量子态保真度的定义如下所示。

F(ρ,σ)=(trρσρ)2

其中 ρσ 是密度矩阵。

如果 ρσ 都是纯态,则有 ρ=|ψρψρ|σ=|ψσψσ|,此时

F(ρ,σ)=|ψρ|ψσ|2

此外,该接口还支持状态向量和密度矩阵混合输入。

参数:
  • rho (np.ndarray) - 其中一个量子态。支持态矢量或密度矩阵。

  • sigma (np.ndarray) - 另一个量子态。支持态矢量或密度矩阵。

返回:

numbers.Number,两个量子态的保真度。

样例:

>>> from mindquantum.core.circuit import Circuit
>>> from mindquantum.simulator import Simulator, fidelity
>>> circ = Circuit().h(0).x(1, 0)
>>> sim = Simulator('mqmatrix', 2)
>>> sim.apply_circuit(circ)
>>> rho = sim.get_qs()
>>> sim.reset()
>>> sigma = sim.get_qs()
>>> fidelity(rho, sigma)
0.5000000000000001