算法三步流程
- 演算卡(寄存器规模,N = 15):寄存器 1:n = ⌈log₂ 15²⌉ = ⌈log₂ 225⌉ = 8 → Q = 2⁸ = 256 ≥ N²;寄存器 2:⌈log₂ 15⌉ = 4 比特
- 流程(三泳道,每节点带态公式):
- 阶段 1(经典预处理):选 a ∈ {2, …, N−1} → 算 gcd(a, N);大于 1 直接收因子、提前结束
- 阶段 2(量子求阶六拍):|0⟩|0⟩ → 叠加 (1/√Q)·Σ_x |x⟩|0⟩ → 模幂 |x⟩|0⟩ → |x⟩|a^x mod N⟩ → 测寄存器 2 得 y → 寄存器 1 坍缩为 |φ⟩ = (1/√M)·Σ_k |x₀+kr⟩ → QFT → 测得 j ≈ cQ/r → 连分数提取 r
- 阶段 3(经典后处理):r 奇 → 重选 a;a^{r/2} ≡ −1 → 重选;否则 gcd(a^{r/2} ∓ 1, N) 收因子
- 强调条:先测寄存器 2(把叠加压成间隔 r 的等距梳子)、再对寄存器 1 做 QFT(梳子变尖峰)——次序不能乱
类型flowchart(流程 + 状态公式)