1. 课程导入与相位翻转纠错码定位
在量子计算中,我们习惯把错误分成两类:一类是比特翻转(bit-flip),把 |0⟩ 变成 |1⟩;另一类是相位翻转(phase-flip),把 |1⟩ 变成 −|1⟩,而 |0⟩ 保持不变。相位翻转不会改变测量基下 0/1 的统计结果,却会破坏叠加态中两个分支的相对符号,因此它比比特翻转更隐蔽,也更难通过简单的重复测量发现。本课程要解决的正是:如何构建一套能够检测并纠正相位翻转的纠错码,并在实际线路中验证它确实有效。
相位翻转的物理与信息论背景
从物理角度看,相位翻转最常见的来源是退相干。以超导量子比特为例,能量弛豫(T1 过程)和纯退相位(T2 过程)都会让量子态的相对相位随机化;在旋转坐标系下,一个随机的 Z 轴小角度旋转 Z(θ) 累积起来,就表现为相位噪声。从信息论角度看,相位翻转是作用在单量子比特上的 Pauli-Z 算符:Z|0⟩=|0⟩,Z|1⟩=−|1⟩。它不改变计算基下的概率分布,因此只做 |0⟩/|1⟩ 投影测量无法察觉它;只有当我们测量 X 基(即 |+⟩/|−⟩ 基)时,相位翻转才会表现为一次“比特翻转”。这个对偶关系是理解相位翻转纠错码的关键:在 X 基下看,相位翻转就是比特翻转。
由此可以引出一个重要的设计思路——基变换。如果已经有一套能纠正比特翻转的重复码,那么在每个量子比特前后各加一个 Hadamard 门 H,把 Z 错误“转”成 X 错误,就可以用同一套纠错逻辑来处理相位翻转。这正是相位翻转码(phase-flip code)的构造方式,也是本课程后续编码与验证的主线。
纠错码在量子与经典场景中的角色
经典纠错码依靠复制信息并做多数表决,例如三重复码把 0 编成 000、1 编成 111,收到 010 时按多数判为 0。量子纠错不能直接复制未知量子态(不可克隆定理),因此改用“把信息编码到多比特的纠缠子空间”的方式:用逻辑态 |0_L⟩ 和 |1_L⟩ 张成一个二维子空间,错误把态推出这个子空间,测量稳定子(stabilizer)得到错误症状(syndrome),再根据症状施加恢复操作。相位翻转码的逻辑态可以写成 |0_L⟩=|+++⟩、|1_L⟩=|−−−⟩,稳定子是 X₁X₂ 和 X₂X₃,症状测量告诉我们哪一个比特发生了相位翻转。
在经典场景中,相位本身不是可观测的物理量,所以“相位翻转码”更多是量子语境下的概念;但它的数学结构(Pauli 群、稳定子、症状解码)与经典线性码高度平行。理解这种平行关系,有助于把经典纠错中的校验矩阵、最小距离等直觉迁移到量子情形。
上图把本课程的核心结构压缩在一张图里:编码把单比特信息展开到三比特,H 层把相位错误转成比特错误,症状测量给出两个稳定子的 ±1 结果,再按症状表定位并恢复。需要特别说明参照约定:本课程统一把“相位翻转”定义为 Pauli-Z 作用,把症状测量结果记为 +1(无错误)或 −1(有错误),恢复操作统一写成 Z₁、Z₂、Z₃,全文与图示保持一致。
整体课程框架与验证任务概览
本课程共 30 章,围绕“构建—验证—排障”三条线索展开。构建部分从相位翻转的物理来源讲起,逐步引入三比特相位翻转码的编码线路、稳定子形式化描述和症状解码逻辑;验证部分要求你在模拟器上搭建完整线路,注入可控的 Z 错误,读取症状并检查恢复后的逻辑态保真度;排障部分则讨论症状误判、多比特错误超出纠错能力、测量基选择错误等典型问题。
为了让验证任务可执行,这里给出一个贯穿全课程的教学示例(参数为合理假设,非实测结果):取逻辑态 |+_L⟩=(|0_L⟩+|1_L⟩)/√2,在第二个物理比特上注入一个 Z 错误,运行 1024 次采样。预期症状为 X₁X₂=−1、X₂X₃=−1,解码器判定第 2 比特翻转并施加 Z₂,恢复后逻辑态应回到 |+_L⟩。判断依据有两条:一是症状统计中 (−1,−1) 组合占比接近 100%;二是恢复后 X 基测量下 |+⟩ 的出现频率应接近 1(理想情形),若明显偏离则说明解码或恢复环节有误。这个示例会在后续章节中被反复引用和扩展。