4. 量子纠错码基本原理
量子纠错的核心困难在于:量子态不可克隆,测量会破坏叠加态,且错误是连续的(任意小旋转都可能发生)。量子纠错码的解决思路不是直接复制量子态,而是把逻辑量子比特编码到多个物理量子比特的联合子空间中,通过测量“错误症状”而不读取编码信息本身,从而在不破坏逻辑态的前提下定位并纠正错误。本节围绕稳定子形式、CSS码与表面码三个层次展开,说明它们如何支撑编码与解码的可靠性。
稳定子形式:用对易算符描述编码子空间
稳定子形式是量子纠错码的统一语言。设编码后的逻辑态为 |ψ⟩,若存在一组相互对易的泡利算符 S₁, S₂, …, Sₙ₋ₖ,使得 Sᵢ|ψ⟩ = +|ψ⟩ 对所有 i 成立,则称这些算符为该码的稳定子生成元,所有满足该条件的态构成码空间。这里 n 是物理比特数,k 是逻辑比特数,n−k 个独立稳定子把 2ⁿ 维希尔伯特空间约束到 2ᵏ 维码空间。
稳定子必须两两对易,且每个稳定子的平方为恒等算符。常见的生成元形式是泡利串,例如 XZZXI 表示在第 1、4 位作用 X,在第 2、3 位作用 Z,第 5 位作用 I。编码时,我们并不直接写出码字,而是通过“制备被所有稳定子固定的态”来完成:先准备一个已知态,再对每个生成元做投影测量并纠正到 +1 本征值,最终得到码空间中的态。
错误检测的关键在于:若发生错误 E,则稳定子 Sᵢ 与 E 的对易关系决定测量结果。若 E 与 Sᵢ 对易,测量仍为 +1;若反对易,测量变为 −1。所有稳定子测量结果组成一个二进制症状向量,不同错误对应不同症状。解码器根据症状查表或计算,推断最可能的错误并施加逆操作。稳定子形式的价值在于把“连续错误”离散化为有限个泡利错误类,因为任意单比特错误都可分解为 I、X、Z、Y 的线性组合,而测量会将其投影到某一类。
CSS码:X 与 Z 稳定子分离的构造
CSS 码(Calderbank-Shor-Steane 码)是一类结构清晰、便于工程实现的稳定子码。它的核心思想是把稳定子分成两组:一组只由 X 型泡利串组成,用于检测 Z 错误;另一组只由 Z 型泡利串组成,用于检测 X 错误。两组生成元各自对应一个经典线性码,且满足相互对偶包含关系,从而保证所有稳定子两两对易。
具体构造时,给定两个经典二进制线性码 C₁ 和 C₂,满足 C₂ ⊂ C₁,且 C₁ 与 C₂ 的对偶码 C₂⊥ 满足 C₂⊥ ⊂ C₁。则 X 型稳定子由 C₂⊥ 的校验矩阵行生成,Z 型稳定子由 C₁ 的校验矩阵行生成。逻辑比特数 k = dim C₁ − dim C₂。编码后的码字可以写成 |x + C₂⟩ 的叠加形式,其中 x 遍历 C₁ 的陪集代表元。
CSS 码的工程优势在于解码可以分两步独立进行:先测 Z 型稳定子得到 X 错误的症状,纠正 X 错误;再测 X 型稳定子得到 Z 错误的症状,纠正 Z 错误。这种分离使得解码器可以复用经典纠错码的成熟算法,例如用最小权重译码或置信传播。一个经典的教学示例是 [[7,1,3]] Steane 码:它由经典 [7,4,3] Hamming 码构造,n=7,k=1,最小距离 d=3,可纠正任意单比特错误。其 X 型稳定子生成元可写为三行 7 位泡利串,Z 型稳定子形式相同但 X 与 Z 互换。
表面码:二维拓扑上的高容错编码
表面码是当前超导量子计算中最受关注的纠错码之一,因为它只要求物理比特排列在二维网格上,且稳定子测量只涉及近邻比特,非常适合硬件实现。以旋转表面码为例,数据比特放在网格顶点,X 型稳定子位于面心(测量四个近邻数据比特的 X 算符乘积),Z 型稳定子位于顶点(测量四个近邻数据比特的 Z 算符乘积)。边界处稳定子退化为三比特或二比特形式。
表面码的逻辑信息不存储在单个物理比特上,而是编码在拓扑缺陷或边界条件中。逻辑 X 算符是一条连接两个 X 型边界的链,逻辑 Z 算符是一条连接两个 Z 型边界的链。错误表现为症状图中相邻稳定子被激发,形成“症状对”。解码任务就是根据症状对找到一条连接它们的错误链,并施加纠正。常用解码算法是最小权重完美匹配:把症状点作为图的顶点,用错误链的权重作为边权,寻找总权重最小的匹配方案。
表面码的纠错阈值约为 1%(具体数值依赖噪声模型和解码器),当物理错误率低于阈值时,增加码距 d 可以指数级压低逻辑错误率。码距 d 与物理比特数约为 2d²−1 的关系,例如 d=3 约需 17 个数据比特,d=5 约需 49 个。逻辑错误率近似满足 p_L ∝ (p/p_th)^{⌊(d+1)/2⌋},这意味着每增加一层码距,逻辑错误率下降一个数量级左右。这一标度行为是表面码支撑可靠编码与解码的核心依据。
从稳定子到可靠解码的闭环
量子纠错的可靠性最终落在“编码—症状提取—解码—恢复”这个闭环上。稳定子形式提供了统一的数学描述,CSS 码给出了可分解的构造方法,表面码则把纠错问题转化为二维拓扑上的匹配问题。实际系统中,稳定子测量本身也会出错,因此需要重复测量多次,用时空症状图进行解码。例如在表面码中,通常对每个稳定子连续测量 d 轮,把测量错误也纳入匹配图,形成三维时空解码。
一个可操作的检查流程是:先确认稳定子生成元是否两两对易且独立;再验证码距是否满足目标纠错能力 t = ⌊(d−1)/2⌋;然后检查症状提取电路是否保持稳定子本征值;最后用蒙特卡洛方法注入不同错误率,观察逻辑错误率随码距的下降斜率。若斜率不降反升,说明物理错误率已超过阈值,或解码器权重设置与噪声模型不匹配。只有这个闭环成立,编码与解码的可靠性才有工程意义。