paddle_quantum.qsvt.qsvt

量子奇异值变换

block_encoding_projector(num_qubits, num_projected_qubits)

生成块编码的投影算子

参数:
  • num_qubits (int) – 量子比特数量

  • num_projected_qubits (int) – 被投影的量子比特数量,默认为 num_qubits - 1

返回:

投影算子 \(|0\rangle\langle0| \otimes I\)

返回类型:

paddle.Tensor

qubitization(proj, phi)

单比特化操作,生成等同于 \(e^{i \phi (2P - I)}\) 的电路

参数:
  • proj (paddle.Tensor) – 正交投影算子 \(P\)

  • phi (paddle.Tensor) – 角度 \(\phi\)

返回:

\(e^{i \phi (2P - I)}\) 的电路

返回类型:

Circuit

class QSVT

基类: object

参数:
  • poly_p (Polynomial) – 多项式 \(P(x)\)

  • oracle (paddle.Tensor) – 酉算子 \(U\),为一个厄米特矩阵 \(X\) 的块编码

  • m – 厄米特矩阵 \(X\) 的系统量子比特数量,默认为酉算子 \(U\) 量子比特数量 - 1

block_encoding_matrix()

构造一个对于厄米特矩阵 \(X\) 的量子奇异值变换矩阵,即实现多项式 \(P(X)\) 的块编码矩阵

返回:

量子奇异值变换矩阵

返回类型:

paddle.Tensor

block_encoding_circuit()

构造一个对于厄米特矩阵 \(X\) 的量子奇异值变换电路,即实现多项式 \(P(X)\) 的块编码电路

返回:

量子奇异值变换电路

返回类型:

Circuit

block_encoding_unitary()

返回一个对于厄米特矩阵 \(X\) 的量子奇异值变换电路的酉矩阵形式,用于验证正确性

返回:

量子奇异值变换电路的酉矩阵

返回类型:

paddle.Tensor