Skip to content

模型Model

Reed–Solomon 码

施工中 · 内容逐步修订

Reed–Solomon code

以低次数多项式在互异域元素处的取值向量形成的最大距离可分码。

形式陈述 ​

取有限域 Fq 中 n≤q 个互异点 α1,…,αn,Reed–Solomon 码从多项式环 Fq[x] 中取次数小于 k 的 f,并映为 (f(α1),…,f(αn))。这里 1≤k≤n,消息可取 f 的 k 个系数。求值对系数是线性的,而非零的次数小于 k 的多项式不能在全部 n 点消失,故求值映射单射。根数界给出距离至少 n−k+1;取 f(x)=∏j=1k−1(x−αj)(k=1 时为空积 1),其求值向量恰有 k−1 个零坐标,故距离恰为 n−k+1。它是 [n,k,n−k+1]q 线性码,达到Singleton 界,因而是 MDS 码;一般上界、puncturing 证明与 MDS 定义由该定理页承接。再给各坐标乘上指定非零域元素,可得广义 RS 码;非零条件保证距离不变。

直觉

Reed–Solomon 码把消息看成低次数多项式,在有限域的多个不同点求值。低次多项式由足够多取值唯一确定,噪声只破坏部分取值时,剩余冗余仍可恢复原多项式。任意两个不同的次数小于 k 的多项式至多在 k−1 个点相同,所以长度 n 的码最小距离为 n−k+1,恰好达到一般上界。它按“符号”纠错,每个符号可含多个 bit,特别适合把 burst 打包成少量符号错误的场景。

Reed–Solomon 求值码与错误恢复
例子与边界

在有限域上实际恢复 ​

在 F7 中取 n=5,k=3,评价点为 0,1,2,3,4。消息系数 (1,2,1) 对应 f(x)=1+2x+x2,求值并模 7 化简得到码字 (1,4,2,2,4)。

若位置 1,3 的符号擦除(这里位置用评价点标记),留下 f(0)=1,f(2)=2,f(4)=4。写 f(x)=a+bx+cx2,则 a=1,另外两式为

2b+4c=1,4b+2c=3(mod7).

第一式乘 2 后为 4b+c=2;从第二式减去它得 c=1,再得 2b=4,即 b=2。因此恢复原消息,并补回两个擦除值。所有除法都取域中的逆元,例如 2−1=4;这里没有实数拟合或数值舍入。

这个码的距离为 3,所以能恢复两处已知擦除,或纠正一处未知错误。若把最后的 4 改成 0,接收词 (1,4,2,2,0) 与原码字仅差一处;任何另一 RS 码字不可能也与它只差一处,否则两码字距离至多为 2。

一般地,知道任意 k 个无错符号即可插值恢复 f;经典唯一译码可纠正至多 ⌊(n−k)/2⌋ 个未知位置符号错误,或至多 n−k 个已知位置擦除。混合出现 e 处未知错误与 s 处擦除时,保证条件为 2e+s≤n−k:删去擦除位置后,剩余码的距离至少为 n−k+1−s,只要该距离大于 2e,就不可能有两个码字同时落在接收词的 e 错误范围内。

求值点必须互异且 n≤q(扩展版本另论),因此长码通常在扩域符号上工作,不能直接把任意长二元码写成普通 RS 码。bit 错误如何映为符号错误取决于封装;若每个 bit 错落在不同符号,纠错能力与 burst 场景不同。超出唯一译码半径可采用列表译码;Guruswami–Sudan 的插值—因式分解路线利用 RS 代数结构输出完整候选列表,但列表大小、可达半径与唯一译码保证不能混写。

推论与应用

RS 码是在 有限域 上按多项式取值构造的 线性码,距离由 Hamming 距离衡量,唯一译码可用综合、Euclid/Berlekamp–Massey 等算法,列表译码则有不同输出接口与半径。光盘、二维码、存储阵列与分布式存储、卫星通信和秘密共享都利用其 MDS 性质。

存储实现还要保证用于恢复的符号属于一致版本。RAID校验更新与写洞以更简单的单异或校验阵列展示:只更新一个数据块而校验未同步持久,随后重建竟会把未修改的A5算成96。这里并未推翻编码的擦除恢复界,而是输入已不满足同一合法码字和正确幸存符号的前提;RS阵列同样需要单独设计更新与持久化协议。

改用线性化消息时,互异条件也必须升级 ​

Gabidulin码把普通低次消息换成 ∑jfjXqj,并在 Fq 上独立的扩域元素处求值。非零消息的根空间维数受 q 次数控制,由此得到输出秩下界;仅仅互异的点可能底域相关,不能照搬本页的点条件。

未知秩错误由线性化插值译码恢复,其最终检查为 N=Λ∘f 的形式复合除法。复合通常不交换,扩域逐坐标缩放也未必保持秩;本页普通乘法和Hamming等距的操作不能不经证明地迁移。

参考资料
  • Irving S. Reed and Gustave Solomon, Polynomial Codes over Certain Finite Fields, Journal of the Society for Industrial and Applied Mathematics 8(2), 1960,pp. 300–304。
  • F. J. MacWilliams and N. J. A. Sloane, The Theory of Error-Correcting Codes, North-Holland, 1977,Chs. 1–10。
  • Venkatesan Guruswami, Algorithmic Results in List Decoding, 2007,作者公开版本,Chapter 4,RS 的多项式恢复与列表译码。
关系图谱12 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

下位 / 直接特例

暂未标注直接特例。

类型化关系

使用的工具