4.2 从 Shor 码到表面码:把一个比特守成一个编队


4.2 从 Shor 码到表面码:把一个比特守成一个编队

本节摘要:九比特肖尔码用嵌套演示了"同时防比特翻转与相位翻转"的原理,表面码则把它进化成只靠二维最近邻连接、错误率门槛约百分之一、可无限扩编的制式工事。本节沿防御思想的进化路线走完全程,并用代码演练肖尔码的行纵解码。

先回到 1995 年那个追问

1995 年,肖尔发表纠错码论文后,学界最大的疑虑不是"这个码灵不灵",而是"这类思路能不能推广":九比特码是为了防特定错误手工设计的精巧玩具,真实器件的错误五花八门,难道每种错误手工配一个码?同一两年内,斯坦恩给出七比特码,戈泰与卡斯金等人把整个框架抽象成稳定子形式化——用一组对易的泡利算符定义码空间,编码、查错、解码全部变成对这组算符的测量问题。到 1997 年,基塔耶夫再进一步:他不构造具体小码,而是直接设计一个二维格子上的几何结构(环面码),让纠错成为格子上的局域操作。这条"从专用设计到几何制式"的路线,正是量子纠错从原型机走向工程的主力进化史。本节先拆肖尔码的嵌套机关,再看表面码凭什么成为当代旗帜。

一、肖尔码:行防翻转,列防相位

九比特码的机关是嵌套。第一层防比特翻转:把单比特态编码成 \alpha|000\rangle + \beta|111\rangle 的三比特重复码;第二层防相位翻转:把上面三个"逻辑比特"中的每一个物理比特再各自展开成三份——总共九个比特排成三行三列,每一行都是一个纠缠整体。行内做多数表决,逮住比特翻转;相位翻转不会在行内暴露,但相位错误等价于给叠加分量乘负号,而每行是 GHZ 型叠加——块内任何奇数个相位错误都会翻转整块的符号。于是三个行块各自被当作一个"大比特",块与块之间再做一次多数表决,相位翻转就现形了。比特与相位两种错误,被行内与块间两级表决分别看住。下面的模拟把这套两级解码跑起来:

# shor9.py:九比特码两级表决的攻防模拟(经典抽象层面,仅标准库) import random def shor9_trial(p, rng): """九宫格:每个位置独立地以概率 p 发生比特错误与相位错误。 行内表决纠比特翻转;相位错误以"块"为单位暴露——每个三比特块 是 GHZ 型叠加,块内奇数个相位错误会翻转整块符号,块间再表决。""" xerr = [[1 if rng.random() < p else 0 for _ in range(3)] for _ in range(3)] zerr = [[1 if rng.random() < p else 0 for _ in range(3)] for _ in range(3)] row_flips = [sum(row) >= 2 for row in xerr] # 行内表决:两位以上翻转则判定错误 logical_x = sum(row_flips) % 2 # 判定错误的行数奇偶决定逻辑翻转 block_flips = [sum(zerr[r]) % 2 for r in range(3)] # 每块相位错误的奇偶 logical_z = sum(block_flips) >= 2 # 块级多数表决 return logical_x or logical_z def rate(p, trials=50000): rng = random.Random(11) return sum(shor9_trial(p, rng) for _ in range(trials)) / trials print("物理错误率 -> 九比特码逻辑错误率") for p in [0.001, 0.005, 0.01, 0.02, 0.05, 0.1]: print(f" {p:.3f} {rate(p):.5f}")

输出的规律与三比特码同构但坡度更陡:两级表决各贡献一层平方级压制,错误率千分之五时逻辑错误率已压到千分之一以下;要出逻辑错,行内得凑出多数翻转、块间还得凑出多数坏块,错误要"两次押中多数"才能突破防线。这份模拟也诚实地标明了抽象层次——真实的九比特码解码要处理两级测量本身的错误与层间耦合,但"行防翻转、块防相位"的嵌套骨架就是如此。理解了这个骨架,下一站表面码只剩一个工程问题:这样的结构能不能摊平在芯片上、只用最近邻连线做出来?

图 4-2:表面码——摊平在二维格子上的制式工事

图 4-2:表面码——摊平在二维格子上的制式工事

二、稳定子:把查错变成一组测量

表面码图里那些绿块紫块,学名叫稳定子:一组彼此对易的泡利算符,码空间定义成"被它们全部稳定"的态。纠错动作于是标准化成固定的循环:反复测量每个稳定子(绿块测四位数据的 X 乘积、紫块测 Z 乘积),得到一串伴随式;错误会让相邻稳定子的测量值翻转,在格子上留下成对的"症状点";解码器根据症状点反推最可能的错误链,告诉我方该在何处施加恢复操作。整个过程只测稳定子、从不测数据比特本身——2.2 节"查错不查态"的窄门,在这里被制度化为一张测量清单。

这个框架顺带解决了 4.1 末尾"推广性"的疑虑:新码不再手工设计,而是"选一组对易算符"的系统工程,肖尔码、斯坦恩码、表面码都是同一语法下的不同选型。语法统一还带来软件红利——第 5 章的编译器与模拟器(如稳定子模拟器)能以远快于态矢量模拟的速度处理纠错线路,百万物理比特的仿真才成为可能。

三、从格子到战报:为什么是它站在最前线

表面码登顶不是单一因素,而是三项优势的交集:二维最近邻匹配真实芯片的布线能力、约百分之一的门槛与器件水平无缝衔接、扩编只改尺寸不改结构。2023 年前后的标志性进展正是这三项优势的第一次实战合演——研究团队把距离三、五、七的表面码编队逐级放大,测得逻辑错误率随距离增大被系统性压制,也就是"编队越大、防守越牢"首次从定理变成实验曲线;此后又有团队展示了距离七编队把逻辑错误率压到物理错误率的三倍以下,跨过了"逻辑比特优于物理比特"这道心理关口。战报的具体数字逐年在刷新,但检验战报的三问保持稳定:距离多大、物理错误率多少、解码延迟多少——这三问就是本节留给你的面试题。

本节要点回顾

  • 肖尔码的机关是嵌套:行内表决防比特翻转,块间表决防相位翻转,九比特同时守住两副面孔。
  • 稳定子统一了语法:码空间由对易算符定义,纠错循环化为"测稳定子、收伴随式、解码、恢复"。
  • 表面码是制式工事:二维最近邻、约百分之一门槛、平方律扩编,三项优势严丝合缝对上工程现实。
  • 症状点成对出现:错误链的两端留下伴随式翻转,解码器按最可能链恢复,数据比特全程未被读出。
  • 战报三问:距离、物理错误率、解码延迟,是评估一切"逻辑比特"新闻的固定尺子。

工事看清了,下一节来算这笔账:要把逻辑错误率压到目标值,距离取多大、要花多少物理比特与时间开销——阈值定理的承诺,按平方律计价。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U