paddle_quantum.gate.clifford

随机生成 Clifford 算子的功能实现。

compose_clifford_circuit(clifd1, clifd2)

计算两个指定的 Clifford 的复合,得到复合后的电路。

参数:
  • clifd1 (Clifford) – 需要复合的第 1 个 Clifford。

  • clifd2 (Clifford) – 需要复合的第 2 个 Clifford。

返回:

复合后的 Clifford 所对应的电路,作用的顺序为 clif1、clif2。

返回类型:

paddle_quantum.ansatz.Circuit

class Clifford(num_qubits)

用户可以通过实例化该 class 来随机生成一个 Clifford operator。

参数:

num_qubits (int) – 该 Clifford operator 作用的量子比特数目。

参考文献:

1. Bravyi, Sergey, and Dmitri Maslov. “Hadamard-free circuits expose the structure of the Clifford group.” IEEE Transactions on Information Theory 67.7 (2021): 4546-4563.

print_clifford()

输出该 Clifford 在 Pauli 基上的作用关系来描述这个 Clifford。

sym()

获取该 Clifford operator 所对应的辛矩阵。

返回:

该 Clifford 对应的辛矩阵。

返回类型:

np.ndarray

tableau()

获取该 Clifford operator 所对应的 table。

num_qubits 个 qubits 的情况,前 num_qubits 行对应 \(X_i\) 的结果,后 num_qubits 行对应 \(Z_i\) 的结果。

返回:

该 Clifford 的 table。

返回类型:

np.ndarray

circuit()

获取该 Clifford operator 所对应的电路。

返回:

该 Clifford 对应的电路。

返回类型:

paddle_quantum.ansatz.Circuit