跳转至

量子计算系统知识库 - 数学符号约定

文档版本: 1.0 创建日期: 2026-01-12 维护者: 系统架构组 状态: 活跃


文档目的

本文档规定量子计算知识库中**数学符号的统一约定**,特别解决以下关键问题:

  1. Pauli矩阵表示:σ_x 与逻辑门 X 的关系(相位因子)
  2. 旋转方向:R_z(θ) 的定义(Qiskit vs 物理教材)
  3. 全局相位:何时忽略,何时重要
  4. 算符与门:理论符号与代码实现的映射

1. Pauli矩阵与量子门的约定

1.1 核心约定声明

本知识库采用以下标准

符号 定义 矩阵表示 代码表示
σ_x, σ_y, σ_z Pauli矩阵(物理算符) 见1.2节 sigma_x, sigma_y, sigma_z
X, Y, Z 量子门(逻辑操作) 见1.3节 gates.X(), gates.Y(), gates.Z()
关系 门 = 算符(忽略全局相位) X ≡ σ_x, Y ≡ σ_y, Z ≡ σ_z 代码中无区别

关键原则: - 理论文档:区分 σ_x(算符)和 X(门) - 代码实现:统一使用 X, Y, Z(不考虑相位) - 测量讨论:明确说明使用的是算符还是门


1.2 Pauli矩阵(物理算符)

标准定义(本知识库采用):

\[ \sigma_x = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \quad \sigma_y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \quad \sigma_z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix} \]

代数关系

对易关系:[σ_i, σ_j] = 2iε_{ijk} σ_k
反对易:{σ_i, σ_j} = 2δ_{ij} I
平方:σ_i² = I

本征值和本征态

σ_z|0⟩ = (+1)|0⟩
σ_z|1⟩ = (-1)|1⟩
σ_x|+⟩ = (+1)|+⟩
σ_y|+i⟩ = (+1)|+i⟩


1.3 量子门(逻辑操作)

标准定义(本知识库采用):

\[ X = \sigma_x = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \quad Y = \sigma_y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \quad Z = \sigma_z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix} \]

代码实现

# ✅ 推荐:统一使用大写字母
gates.X(qubit)   # Pauli-X 门
gates.Y(qubit)   # Pauli-Y 门
gates.Z(qubit)   # Pauli-Z 门

# ✅ 可选:明确表示算符
sigma_x = np.array([[0, 1], [1, 0]])
sigma_y = np.array([[0, -1j], [1j, 0]])
sigma_z = np.array([[1, 0], [0, -1]])


1.4 相位因子问题

问题:某些文献中定义的差异

方案A(本知识库采用):
X = σ_x  (无相位差异)

方案B(某些教材):
X = e^{iπ/2}σ_x = iσ_x  (差全局相位 i)

方案C(某些框架):
X = -σ_x  (差全局相位 -1)

本知识库规定

✅ 标准约定:X ≡ σ_x(忽略全局相位)
理由:
1. 全局相位不影响测量结果
2. 与主流框架一致(Qiskit, Cirq, Qibo)
3. 公式简洁

特殊情况

# 当讨论受控相位时,必须明确:
- CZ 门:diag(1, 1, 1, -1)
- CZ ≠ σ_z ⊗ σ_z(差相位)
- CZ = |0⟩⟨0| ⊗ I + |1⟩⟨1| ⊗ σ_z

# 当讨论几何相位时,必须明确:
- Berry phase 与全局相位不同
- 几何相位是可观测的


2. 旋转门的约定

2.1 核心约定声明

本知识库采用物理教科书标准

\[ R_x(\theta) = e^{-i\theta \sigma_x / 2}, \quad R_y(\theta) = e^{-i\theta \sigma_y / 2}, \quad R_z(\theta) = e^{-i\theta \sigma_z / 2} \]

显式矩阵形式

\[ R_z(\theta) = \begin{pmatrix} e^{-i\theta/2} & 0 \\ 0 & e^{i\theta/2} \end{pmatrix} \]

关键特性

旋转轴:右手定则
旋转角度:θ 单位为弧度
旋转方向:正 θ = 逆时针旋转


2.2 与主流框架的对比

框架 R_z(θ) 定义 参数顺序 说明
本知识库 \(e^{-i\theta\sigma_z/2}\) - 物理教材标准
Qiskit \(e^{-i\theta\sigma_z/2}\) rz(theta, qubit) ✅ 一致
Cirq \(e^{-i\theta\sigma_z/2}\) rz(rads=theta) ✅ 一致
Qibo \(e^{-i\theta\sigma_z/2}\) RZ(qubit, theta) ✅ 一致
PennyLane \(e^{-i\theta\sigma_z/2}\) RZ(theta, wires) ✅ 一致
某些教材 \(e^{-i\theta\sigma_z}\) - ⚠️ 差 2 倍
OpenQASM \(u1(\lambda) = diag(1, e^{i\lambda})\) u1(lambda) q ⚠️ 相位因子不同

2.3 Qiskit vs 物理教材的详细对比

Qiskit 定义

# Qiskit 文档
qc.rz(theta, qubit)

# 矩阵形式
R_z(θ) = [[e^{-/2}, 0],
          [0, e^{/2}]]

# 等价于
R_z(θ) = exp(-/2 * σ_z)

代码示例

from qiskit import QuantumCircuit
import numpy as np

qc = QuantumCircuit(1)
qc.rz(np.pi/2, 0)  # Z 旋转 π/2

# 矩阵验证
from qiskit.quantum_info import Operator
op = Operator(qc)
# op = [[e^{-iπ/4}, 0], [0, e^{iπ/4}]]


物理教材定义

# Sakurai, Griffiths 等标准教材
R_z(θ) = exp(-iθ σ_z / 2)

# 显式形式
R_z(θ) = [[e^{-iθ/2}, 0],
          [0, e^{iθ/2}]]

推导

从薛定谔方程出发:
|ψ(t)⟩ = exp(-iHt/ħ)|ψ(0)⟩

对于 H = ωσ_z/2:
|ψ(t)⟩ = exp(-iωt σ_z/2)|ψ(0)⟩
       ≡ R_z(θ = ωt)


对比结论

✅ Qiskit 和物理教材完全一致!

R_z(θ) = exp(-iθ σ_z / 2)

θ = π  时:
R_z(π) = [[e^{-iπ/2}, 0], [0, e^{iπ/2}]]
       = [[-i, 0], [0, i]]
       = -i σ_z  (全局相位 -i)

θ = π/2 时:
R_z(π/2) = [[e^{-iπ/4}, 0], [0, e^{iπ/4}]]
        = 1/√2 [[1-i, 0], [0, 1+i]]

2.4 其他常见定义(注意!)

定义 A(本知识库采用)

R_z(θ) = exp(-iθ σ_z / 2)
- 优点:与 Qiskit, Cirq, Qibo 一致 - 优点:符合物理教材标准 - 特性:旋转 2π 返回 -|ψ⟩(全局相位)


定义 B(某些文献)

R_z(θ) = exp(-iθ σ_z)
- 问题:旋转角度差 2 倍 - 转换:θ_B = θ_A/2 - 示例
定义 A: R_z(π) = [[-i, 0], [0, i]]
定义 B: R_z(π/2) = [[-i, 0], [0, i]]


定义 C(OpenQASM u1)

u1(λ) = diag(1, e^{iλ})
- 与定义 A 的关系
u1(λ) = e^{iλ/2} · R_z(-λ)
- 全局相位差异:e^{iλ/2}


2.5 旋转门的矩阵形式

完整列表(定义 A,本知识库采用):

\[ R_x(\theta) = e^{-i\theta \sigma_x / 2} = \begin{pmatrix} \cos(\theta/2) & -i\sin(\theta/2) \\ -i\sin(\theta/2) & \cos(\theta/2) \end{pmatrix} \]
\[ R_y(\theta) = e^{-i\theta \sigma_y / 2} = \begin{pmatrix} \cos(\theta/2) & -\sin(\theta/2) \\ \sin(\theta/2) & \cos(\theta/2) \end{pmatrix} \]
\[ R_z(\theta) = e^{-i\theta \sigma_z / 2} = \begin{pmatrix} e^{-i\theta/2} & 0 \\ 0 & e^{i\theta/2} \end{pmatrix} \]

2.6 旋转方向约定

右手定则

右手拇指指向旋转轴正方向
四指弯曲方向为正旋转方向

示例:
R_z(θ) 绕 z 轴旋转
- θ > 0: 从 x 轴向 y 轴旋转(逆时针)
- θ < 0: 从 y 轴向 x 轴旋转(顺时针)

布洛赫球表示

|0⟩ = 北极 (0, 0, 1)
|1⟩ = 南极 (0, 0, -1)
|+⟩ = 东极 (1, 0, 0)
|-⟩ = 西极 (-1, 0, 0)
|+i⟩ = (0, 1, 0)
|-i⟩ = (0, -1, 0)

R_z(θ): 绕 z 轴旋转
R_x(θ): 绕 x 轴旋转
R_y(θ): 绕 y 轴旋转


3. 全局相位约定

3.1 核心原则

本知识库规定

✅ 在测量讨论中,忽略全局相位
✅ 在干涉讨论中,保留相对相位
✅ 在几何相位讨论中,区分全局与几何相位


3.2 何时不重要

# 场景 1: 测量概率
P(0) = |⟨0|ψ⟩|²  # 全局相位抵消

|ψ⟩ = α|0⟩ + β|1⟩
|ψ'⟩ = e^{iφ}|ψ⟩  # 全局相位

P(0) = |⟨0|ψ'⟩|² = |e^{iφ}⟨0|ψ⟩|² = |⟨0|ψ⟩|²  # 相同
# 场景 2: 单量子门操作
X ≡ σ_x  (忽略全局相位)

# 虽然可能有相位差异,但对测量结果无影响

3.3 何时重要

# 场景 1: 干涉实验
|ψ⟩ = (|0⟩ + |1⟩)/√2
|ψ'⟩ = (|0⟩ + e^{iπ}|1⟩)/√2  # 相对相位 π

干涉结果不同!
# 场景 2: 受控操作
CNOT ≠ |0⟩⟨0| ⊗ I + |1⟩⟨1| ⊗ (e^{iφ}σ_x)

相位 φ 会影响受控门的行为
# 场景 3: 几何相位(Berry Phase)
Berry phase ∮ ⟨n|i∇⟩|n⟩ · dR

几何相位是可观测的,不同于全局相位

4. 其他重要符号约定

4.1 量子态表示

符号 含义 使用场景
** ψ⟩** 右矢(列向量)
**⟨ψ ** 左矢(行向量)
ψ 态向量(数组) 代码实现
state_vector 态向量 代码变量

示例

# 理论表示
|ψ = α|0 + β|1

# 代码实现
psi = np.array([alpha, beta])
state_vector = np.array([alpha, beta])


4.2 密度矩阵表示

符号 含义 使用场景
ρ 密度矩阵 理论推导
**ρ = ψ⟩⟨ψ **
density_matrix 密度矩阵 代码变量

示例

# 理论表示
ρ = |ψ⟩⟨ψ|

# 代码实现
rho = np.outer(psi, psi.conj())
density_matrix = np.outer(psi, psi.conj())


4.3 张量积表示

符号 含义 使用场景
张量积 理论推导
A ⊗ B A 和 B 的张量积 理论推导
np.kron(A, B) Kronecker 积 代码实现

示例

# 理论表示
H = H  H

# 代码实现
H = np.kron(H1, H2)

# 多系统张量积
H_total = H1  H2  H3
H_total = np.kron(H1, np.kron(H2, H3))


4.4 对易子和反对易子

符号 定义 使用场景
[A, B] AB - BA 对易子
{A, B} AB + BA 反对易子

示例

# Pauli 矩阵对易关系
[σ_x, σ_y] = 2iσ_z
[σ_i, σ_j] = 2iε_{ijk}σ_k

# Pauli 矩阵反对易关系
{σ_x, σ_y} = 0
{σ_i, σ_j} = 2δ_{ij}I


4.5 哈密顿量表示

符号 含义 使用场景
H 哈密顿量 理论推导
哈密顿量(花体) 某些教材
hamiltonian 哈密顿量 代码变量

示例

# 理论表示
H = ωσ_z/2 + Ωcos(ωt)σ_x

# 代码实现
omega = 5.0  # GHz
Omega = 0.1  # GHz
H = omega/2 * sigma_z + Omega * np.cos(omega * t) * sigma_x

# 使用 Qibo
from qibo.hamiltonians import XXZ
H = XXZ(nqubits=2)  # 自然单位制


5. 框架特定符号约定

5.1 Qiskit 符号

# ✅ 推荐:明确文档约定
"""
Qiskit 使用标准量子门符号:
- X, Y, Z: Pauli 门(等同于 σ_x, σ_y, σ_z)
- RX, RY, RZ: 旋转门,定义 R_j(θ) = exp(-iθσ_j/2)
- U, U1, U2, U3: 通用单比特门
"""

# 代码示例
qc = QuantumCircuit(2)
qc.x(0)           # Pauli-X
qc.h(0)           # Hadamard
qc.cx(0, 1)       # CNOT
qc.rz(np.pi/2, 0)  # RZ 旋转 π/2

5.2 Cirq 符号

# ✅ 推荐:明确文档约定
"""
Cirq 使用标准量子门符号:
- X, Y, Z: Pauli 门
- Rx, Ry, Rz: 旋转门,定义 R_j(θ) = exp(-iθσ_j/2)
"""

# 代码示例
q0, q1 = cirq.LineQubit.range(2)
circuit = cirq.Circuit()
circuit.append(cirq.X(q0))              # Pauli-X
circuit.append(cirq.H(q0))              # Hadamard
circuit.append(cirq.CNOT(q0, q1))       # CNOT
circuit.append(cirq.rz(np.pi/2).on(q0)) # RZ 旋转 π/2

5.3 Qibo 符号

# ✅ 推荐:明确文档约定
"""
Qibo 使用物理风格符号:
- X, Y, Z: Pauli 门(等同于 σ_x, σ_y, σ_z)
- RX, RY, RZ: 旋转门,定义 R_j(θ) = exp(-iθσ_j/2)
- 参数顺序:(qubit, theta),qubit 在前
"""

# 代码示例
from qibo import gates, models

circuit = models.Circuit(2)
circuit.add(gates.X(0))                 # Pauli-X
circuit.add(gates.H(0))                 # Hadamard
circuit.add(gates.CNOT(0, 1))           # CNOT
circuit.add(gates.RZ(0, theta=np.pi/2)) # RZ 旋转 π/2

5.4 PennyLane 符号

# ✅ 推荐:明确文档约定
"""
PennyLane 使用量子机器学习符号:
- PauliX, PauliY, PauliZ: Pauli 门
- RX, RY, RZ: 旋转门,定义 R_j(θ) = exp(-iθσ_j/2)
- wires 参数指定作用量子比特
"""

# 代码示例
import pennylane as qml

@qml.qnode(dev)
def circuit(theta):
    qml.PauliX(wires=0)           # Pauli-X
    qml.Hadamard(wires=0)         # Hadamard
    qml.CNOT(wires=[0, 1])        # CNOT
    qml.RZ(theta, wires=0)        # RZ 旋转
    return qml.state()

6. 常见符号冲突与解决

6.1 旋转门参数顺序

冲突

# Qiskit
qc.rz(theta, qubit)  # 角度在前

# Qibo
gates.RZ(qubit, theta)  # qubit 在前

解决

✅ 本知识库规范:
- 文档中统一使用 R_z(θ) 表示(θ 在括号内)
- 代码中明确参数顺序
- 提供转换函数


6.2 量子比特编号顺序

冲突

# Qiskit: 大端序
|qₙ₋₁⟩  ...  |q₁⟩  |q₀⟩

# Qibo: 小端序
|q₀⟩  |q₁⟩  ...  |qₙ₋₁⟩

解决

✅ 本知识库规范:
- 文档中明确说明编号约定
- 提供转换函数
- 优先使用小端序(与物理直觉一致)


6.3 矩阵乘法顺序

冲突

有些文献:U|ψ⟩(左乘)
有些文献:|ψ⟩U(右乘)

解决

✅ 本知识库规范:
- 统一使用左乘:U|ψ⟩
- 代码中:np.dot(U, psi) 或 U @ psi
- 禁止右乘(除非明确说明)


7. 符号使用检查清单

使用本规范时,请完成以下检查:

7.1 Pauli 矩阵与门

  • 区分 σ_x(算符)和 X(门)
  • 说明是否忽略全局相位
  • 在测量讨论中可忽略全局相位
  • 在干涉讨论中保留相对相位

7.2 旋转门

  • 明确使用 R_z(θ) = exp(-iθσ_z/2)
  • θ 单位为弧度
  • 正 θ = 逆时针旋转(右手定则)
  • 说明与 Qiskit/Cirq/Qibo 的一致性

7.3 其他符号

  • 量子态:|ψ⟩(理论)/ psi(代码)
  • 密度矩阵:ρ(理论)/ rho(代码)
  • 张量积:⊗(理论)/ np.kron(代码)
  • 对易子:[A, B] = AB - BA
  • 哈密顿量:H(理论)/ hamiltonian(代码)

8. 快速参考表

8.1 核心符号对照

概念 理论符号 代码表示 Qiskit Cirq Qibo
Pauli-X 算符 σ_x sigma_x - - -
Pauli-X 门 X gates.X() x() X X()
Z 旋转 R_z(θ) gates.RZ() rz() rz() RZ()
量子态 ψ⟩ psi Statevector StateVector
密度矩阵 ρ rho DensityMatrix DensityMatrix -
张量积 np.kron() ^ * -

8.2 旋转门定义对比

定义 公式 矩阵形式(θ=π/2) 使用者
本知识库 e^{-iθσ_z/2} [[e^{-iπ/4}, 0], [0, e^{iπ/4}]] Qiskit, Cirq, Qibo
某些教材 e^{-iθσ_z} [[e^{-iπ/2}, 0], [0, e^{iπ/2}]] Nielsen & Chuang 注
OpenQASM diag(1, e^{iλ}) [[1, 0], [0, e^{iπ/2}]] OpenQASM 2.0

版本历史

版本 日期 修改内容 影响范围 负责人
1.0 2026-01-12 初始版本,建立数学符号约定 全系统 系统架构组

参考资源

教材

  • Nielsen, M. A., & Chuang, I. L. (2010). Quantum Computation and Quantum Information
  • Sakurai, J. J., & Napolitano, J. (2017). Modern Quantum Mechanics

框架文档

  • Qiskit Textbook: https://qiskit.org/textbook/
  • Cirq Documentation: https://quantumai.google/cirq
  • Qibo Documentation: https://qibo.readthedocs.io/

标准

  • IEEE Standard for Quantum Computing Notation (讨论中)