paddle_quantum.channel.representation

量桨量子信道的表达式库。

bit_flip_kraus(prob, dtype=None)

比特反转信道的Kraus表达式,其形式为

\[E_0 = \sqrt{1-p} I, E_1 = \sqrt{p} X.\]
参数:
  • prob (Union[float, np.ndarray, paddle.Tensor]) – 概率 \(p\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

phase_flip_kraus(prob, dtype=None)

相位反转信道的Kraus表达式,其形式为

\[E_0 = \sqrt{1-p} I, E_1 = \sqrt{p} Z.\]
参数:
  • prob (Union[float, np.ndarray, paddle.Tensor]) – 概率 \(p\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

bit_phase_flip_kraus(prob, dtype=None)

比特相位反转信道的Kraus表达式,其形式为

\[E_0 = \sqrt{1-p} I, E_1 = \sqrt{p} Y.\]
参数:
  • prob (Union[float, np.ndarray, paddle.Tensor]) – 概率 \(p\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

amplitude_damping_kraus(gamma, dtype=None)

振幅阻尼信道的Kraus表达式,其形式为

\[\begin{split}E_0 = \begin{bmatrix} 1 & 0 \\ 0 & \sqrt{1-\gamma} \end{bmatrix}, E_1 = \begin{bmatrix} 0 & \sqrt{\gamma} \\ 0 & 0 \end{bmatrix}.\end{split}\]
参数:
  • gamma (Union[float, np.ndarray, paddle.Tensor]) – 系数 \(\gamma\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

generalized_amplitude_damping_kraus(gamma, prob, dtype=None)

广义振幅阻尼信道的Kraus表达式,其形式为

\[\begin{split}E_0 = \sqrt{p} \begin{bmatrix} 1 & 0 \\ 0 & \sqrt{1-\gamma} \end{bmatrix}, E_1 = \sqrt{p} \begin{bmatrix} 0 & \sqrt{\gamma} \\ 0 & 0 \end{bmatrix},\\ E_2 = \sqrt{1-p} \begin{bmatrix} \sqrt{1-\gamma} & 0 \\ 0 & 1 \end{bmatrix}, E_3 = \sqrt{1-p} \begin{bmatrix} 0 & 0 \\ \sqrt{\gamma} & 0 \end{bmatrix}.\end{split}\]
参数:
  • gamma (Union[float, np.ndarray, paddle.Tensor]) – 系数 \(\gamma\)

  • prob (Union[float, np.ndarray, paddle.Tensor]) – 概率 \(p\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

phase_damping_kraus(gamma, dtype=None)

相位阻尼信道的Kraus表达式,其形式为

\[\begin{split}E_0 = \begin{bmatrix} 1 & 0 \\ 0 & \sqrt{1-\gamma} \end{bmatrix}, E_1 = \begin{bmatrix} 0 & 0 \\ 0 & \sqrt{\gamma} \end{bmatrix}.\end{split}\]
参数:
  • gamma (Union[float, np.ndarray, paddle.Tensor]) – 系数 \(\gamma\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

depolarizing_kraus(prob, dtype=None)

去极化信道的Kraus表达式,其形式为

\[E_0 = \sqrt{1-3p/4} I, E_1 = \sqrt{p/4} X, E_2 = \sqrt{p/4} Y, E_3 = \sqrt{p/4} Z.\]
参数:
  • prob (Union[float, np.ndarray, paddle.Tensor]) – 概率 \(p\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

generalized_depolarizing_kraus(prob, num_qubits, dtype=None)

广义去极化信道的Kraus表达式,其形式为

\[\begin{split}E_0 = \sqrt{1-(D - 1)p/D} I, \text{ where } D = 4^n, \\ E_k = \sqrt{p/D} \sigma_k, \text{ for } 0 < k < D.\end{split}\]
参数:
  • prob (float) – 概率 \(p\)

  • num_qubits (int) – 信道的比特数 \(n\)

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

pauli_kraus(prob, dtype=None)

泡利信道的Kraus表达式。

参数:
  • prob (Union[List[float], np.ndarray, paddle.Tensor]) – 泡利算符 X、Y、Z 对应的概率。

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

reset_kraus(prob, dtype=None)

重置信道的Kraus表达式,其形式为

\[\begin{split}E_0 = \begin{bmatrix} \sqrt{p} & 0 \\ 0 & 0 \end{bmatrix}, E_1 = \begin{bmatrix} 0 & \sqrt{p} \\ 0 & 0 \end{bmatrix},\\ E_2 = \begin{bmatrix} 0 & 0 \\ \sqrt{q} & 0 \end{bmatrix}, E_3 = \begin{bmatrix} 0 & 0 \\ 0 & \sqrt{q} \end{bmatrix},\\ E_4 = \sqrt{1-p-q} I.\end{split}\]
参数:
  • prob (Union[List[float], np.ndarray, paddle.Tensor]) – 重置为 \(|0\rangle\) 和重置为 \(|1\rangle\) 的概率。

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

thermal_relaxation_kraus(const_t, exec_time, dtype=None)

热弛豫信道的Kraus表达式。

参数:
  • const_t (Union[List[float], np.ndarray, paddle.Tensor]) – \(T_1\)\(T_2\) 过程的弛豫时间常数,单位是微秒。

  • exec_time (Union[List[float], np.ndarray, paddle.Tensor]) – 弛豫过程中量子门的执行时间,单位是纳秒。

  • dtype (str, optional) – 数据类型。默认为 None

返回:

返回对应的 Kraus 算符

返回类型:

List[paddle.Tensor]

replacement_choi(sigma, dtype=None)

置换信道的Choi表达式。

参数:
  • sigma (Union[np.ndarray, paddle.Tensor, State]) – 这个信道的输出态。

  • dtype (str) – 数据类型。默认为 None

返回:

返回对应的 Choi 算符

返回类型:

paddle.Tensor