3. 纠错码基础回顾
在进入相位翻转纠错码的构建之前,有必要把经典纠错码的几条主干线索重新梳理一遍:码字空间如何被线性约束定义、生成矩阵与校验矩阵如何互为对偶、最小距离如何决定纠错能力、伴随式如何把“检错”转化为“定位错误”。这些概念并非背景装饰,它们直接决定了后续相位翻转码的编码方式、校验关系设计与译码判决逻辑。
线性分组码:用线性约束圈定合法码字
线性分组码把信息划分为长度 k 的比特块,映射为长度 n 的码字(n > k),冗余位数为 n − k。所谓“线性”,指任意两个合法码字逐位模 2 相加仍是合法码字,全零向量必为码字。这一性质使得码字集合构成 GF(2) 上的 k 维子空间,编码与译码都可以用矩阵运算统一描述,而不必依赖查表。
以 (7,4) 汉明码为例,4 位信息 m = (m₁m₂m₃m₄) 编码为 7 位码字,其中 3 个校验位分别覆盖不同的信息位组合。正是这种“每个校验位监督一组信息位”的结构,使得单个比特错误会在多个校验方程中留下痕迹,从而被定位。
生成矩阵与校验矩阵:一对互为对偶的约束
生成矩阵 G 是 k × n 矩阵,编码即 c = m·G。校验矩阵 H 是 (n−k) × n 矩阵,合法码字满足 H·cᵀ = 0。两者满足 G·Hᵀ = 0,即 G 的行空间与 H 的行空间互为正交补。理解这一点很关键:G 回答“怎样造出合法码字”,H 回答“怎样判断一个向量是否合法、错在哪里”。
若采用系统码形式 G = [Iₖ | P],则 H = [Pᵀ | Iₙ₋ₖ],信息位原样保留在前 k 位,校验位在后。这种形式便于工程实现,也便于在译码后直接截取信息位。
最小距离与纠错能力
码的最小距离 d_min 定义为任意两个不同码字之间汉明距离的最小值,对线性码等于非零码字的最小重量。它决定了码的纠错与检错能力:
- 检错
e个错误:需d_min ≥ e + 1; - 纠错
t个错误:需d_min ≥ 2t + 1; - 同时纠
t个、检e个(e > t):需d_min ≥ t + e + 1。
直观理解:以每个码字为球心、半径 t 画汉明球,d_min ≥ 2t+1 保证这些球互不重叠,接收向量落在哪个球内就判为哪个码字。(7,4) 汉明码 d_min = 3,故可纠 1 位错或检 2 位错,但不能同时既纠 1 又检 2。
伴随式译码:把错误图案变成可查的“指纹”
设接收向量 r = c + e(模 2),其中 e 为错误图案。计算伴随式 S = H·rᵀ = H·eᵀ。由于 H·cᵀ = 0,伴随式只与错误图案有关,与发送的是哪个码字无关——这正是伴随式译码的核心思想。
译码分三步:计算 S;若 S = 0 判为无错(或错误恰好构成一个码字,属不可检错误);否则在预计算的伴随式表中查找与 S 对应的最小重量错误图案 ê,输出 ĉ = r + ê。对 (7,4) 汉明码,7 个非零伴随式恰好一一对应 7 种单比特错误,因此单错必可纠正。
2^(n−k)。汉明码的巧妙之处在于 n−k 个校验位刚好能编码 2^(n−k) − 1 = n 种非零单错图案,达到汉明界,因此是完备码。经典纠错码与相位翻转纠错的联系与区别
相位翻转(比特翻转)错误在数学上就是 GF(2) 上的加性错误,因此经典线性分组码的整套代数工具可以直接迁移:编码仍可用生成矩阵,校验仍可用校验矩阵,译码仍可用伴随式。区别主要体现在三方面。
第一,错误模型与物理载体不同。经典分组码面向存储或通信信道中的随机比特翻转;相位翻转纠错码面向量子比特的 X 型错误(比特翻转),且量子态不可克隆、测量会破坏叠加态,因此不能直接测量数据量子比特本身,必须借助辅助量子比特做“综合征测量”,只提取校验信息而不获取数据值。
第二,校验的实现方式不同。经典码用异或门直接计算 H·rᵀ;量子相位翻转码用受控非门(CNOT)把数据比特的奇偶性“抄”到辅助比特上再测量,测量结果是经典比特串,即伴随式。这一过程要求校验算符彼此对易,否则无法同时测量。
第三,纠错动作不同。经典译码输出纠正后的比特串即可;量子译码根据伴随式推断错误位置后,需施加相应的 X 门把量子态恢复,且整个过程中不能泄露量子信息。此外,量子码还面临经典码没有的连续错误、测量误差与容错阈值问题。
一个可动手核对的示例
取 (7,4) 汉明码的系统形式,校验位定义为:p₁ = m₁⊕m₂⊕m₃,p₂ = m₁⊕m₂⊕m₄,p₃ = m₁⊕m₃⊕m₄。设信息 m = 1011,则 p₁ = 1⊕0⊕1 = 0,p₂ = 1⊕0⊕1 = 0,p₃ = 1⊕1⊕1 = 1,码字 c = 1011001。
若传输中第 5 位翻转,接收 r = 1011101。三个校验方程重新计算:s₁ = r₁⊕r₂⊕r₃⊕r₅ = 1⊕0⊕1⊕1 = 1,s₂ = r₁⊕r₂⊕r₄⊕r₆ = 1⊕0⊕1⊕0 = 0,s₃ = r₁⊕r₃⊕r₄⊕r₇ = 1⊕1⊕1⊕1 = 0,伴随式 S = 100。对照单错伴随式表,100 对应第 5 位出错,翻转第 5 位即恢复 1011001。这个手算过程说明:伴随式是错误位置的“编码指纹”,与原始信息无关。
迁移到相位翻转码时,同样的奇偶校验思想被搬到量子线路中:用两个辅助比特分别测量 Z₁Z₂ 与 Z₂Z₃ 的奇偶性,得到 2 位伴随式 00/01/10/11,分别对应无错、第 3 位错、第 1 位错、第 2 位错。可见经典码的代数框架是理解量子纠错码的必经台阶,而量子实现又在测量方式与容错约束上提出了经典码没有的新要求。
t 时,伴随式可能落入另一个码字的纠错球内,译码器会输出一个“看似合法”的错误码字,造成不可检的误纠。设计时须按最坏错误数留足 d_min 余量。