纠错码的代数理论 冯克勤 著 清华大学出版社 内容简介 本书概要介绍半个世纪以来由数字通信的可靠性要求所建立和不断发展的纠错码数学 理论 。 书中不涉及纠错技术和工程具体实现问题 ,但也介绍了一些纠错译码算法 。 本书适用于代数专业的研究生和具有较好代数基础的高年级本科生 。 书中所讲述的知 识和方法对于研究信息科学与计算机科学中许多其他问题也会有所帮助 。 版权所有 ,翻印必究 。 举报电话 :010唱62782989 13501256678 13801310933 图书在版编目(CIP)数据 纠错码的代数理论 = Algebraic T heory of Error唱Correcting Codes /冯克勤著 .— 北京 :清华 大学出版社 ,2005 .10 (研究生数学丛书 ;4) ISBN 7唱302唱11254唱1 Ⅰ .纠 … Ⅱ .冯 … Ⅲ . 教材 英文 Ⅳ .O157 .4 中国版本图书馆 CIP 数据核字(2005)第 068873 号 出 版 者 :清华大学出版社 地 址 :北京清华大学学研大厦 http ://w w w .tup .com .cn 邮 编 :100084 社 总 机 :010唱62770175 客户服务 :010唱62776969 责任编辑 :陈朝晖 封面设计 : 印 刷 者: 装 订 者: 发 行 者 :新华书店总店北京发行所 开 本 :170 × 230 印张 :10 字数 :193 千字 版 次 :2005 年 10 月第 1 版 2005 年 10 月第1 次印刷 书 号 :ISBN 7唱302唱11254唱1 /O · 474 印 数 :1 ~ 定 价 :29 .00 元 研究生数学丛书 M athem atics S eries fo r G raduate S tudents 编 审 委 员 会 主 编 :李大潜 副主编 :冯克勤 编 委 :(姓氏按拼音字母排序) 程崇庆 陈木法 陈叔平 陈志杰 李克正 李 忠 邵嘉裕 王维克 文志英 肖 杰 袁亚湘 周 张伟平 青 研究生数学丛书 M athem atics S eries fo r G raduate S tudents 1 .连续介质力学中的数学模型 (M athematical M odeling in Continuum M echanics) 2 .应用密码学 (Applied Cryptography ) 3 .Introduction to M alliavin Calculus (M alliavin 随机变分引论) 4 .纠错码的代数理论 (Algebraic T heory of Error唱Correcting Codes) 5 .抽象代数学基础 (Fundamentals of A bstract Algebra) 6 .Algebraic Geomefry (代数几何) 7 .反问题 (Inverse Problem ) 总 序 数学是一门在非常广泛的意义下研究自然和社会现象中的数量关系和空间 形式的科学。 长期以来,在人们认识世界和改造世界的过程中,数学作为一 种精确的语言和一个有力的工具一直发挥着重要的作用。 在现代,数学科学 已构成包括纯粹数学及应用数学内涵的众多分支学科和许多新兴交叉学科的庞 大的科学体系。 作为各门科学的重要基础,作为“四化”建设的重要武器, 作为人类文明的重要支柱,数学科学在很多重要的领域中已起着关键性甚至决 定性的作用,数学技术已成为高技术的突出标志和重要组成部分,数学的影响 和作用已深入到各行各业,可以说无处不在。 马克思当年的预言: “一门科 学只有当它成功地运用了数学之后,才算达到了真正完善的地步”,正在不断 得到证实。 在这样的背景下,数学科学的重要性已得到空前广泛的认同。 在 研究生(不限于数学专业的研究生)的培养中,重视数学基础的训练,强调数 学思想的熏陶,也已成为一种必然的趋势。 但是,国内研究生数学教材及参 考读物的实际情况,无论从品种、数量及质量哪一方面来看,都远远不能适应 这个形势,甚至也远远落后于本科生的数学教材。 这已成为制约提高研究生 培养质量的一个重要瓶颈。 清华大学出版社和施普林格出版社 (Spr inge r唱 Ver唱 lag 合 ) 作,倡议出版这一套《研究生数学丛书》 (Mathemat ics Ser ies fo r Graduate S tudents),可望改善这方面的状况,为我国的研究生打好数学基础、提高数学 素质起到积极的作用。 根据数学这门科学的特点,同时考虑到研究生学习数学的基本要求和特有 方式,这套以面向研究生(包括高年级本科生、硕士及博士研究生)的数学教 材或参考读物,将力求体现以下的一些原则: 瞯 主题有理论或(和)应用方面的重要性; 瞯 在重点介绍基础性内容的前提下,兼顾学科前沿的重要发展趋势和研 究成果; 瞯 在讲授数学内容的同时,充分体现数学的思想方法和精神实质; 瞯 少而精,在较小的篇幅中展现基本的内容; Ⅵ 纠错码的代数理论 瞯 有相当好的可读性,适宜读者自学; 瞯 附有习题、思考题及参考资料目录,书末有索引,方便读者深入学习与 思考。 为了有利于体现这些原则,本丛书将采取相当灵活的体例及风格: 内容 可以是纯粹数学、应用数学或数学与其他学科的交叉; 可以是较系统地介绍 某一个分支的教材,或是介绍某一前沿分支状况的综述,也可以是课外参考 书; 可以是原著,也可以是译著; 可以是国内作者,也可以是国外作者; 可 以用中文编写,也可以用英文编写,等等。 要实现本丛书的目标和宗旨,任重而道远,但千里之行,始于足下,在学 界同仁和广大读者的支持和帮助下,让我们共同努力。 李大潜 2003 年 9 月于上海 前 言 20 世纪 50 年代以来 ,数字计算机和数字通信得到极大的发展 。 在今天 ,人 们从每个层面上都能感受到计算机和通信的这种进步所产生的广泛而深刻的影 响 。 除了技术进步之外 ,这种发展也得益于新的数学思想和工具的运用 。 数字 脉冲信号的数学描述方式 ,从连续性数学(Fourier 分析和 Laplace 变换)一下子 扩展到离散性数学(组合学 、数论 、代数) 。 与此同时 ,数字计算和数字通信中提 出许多具有重要应用背景的数学问题 ,也促进离散性数学自身的发展 ,注入新的 活力 。 本书的目的是介绍半个世纪以来 ,由数字通信的可靠性要求所建立和不 断发展的纠错码数学理论 。 纠错码的数学理论是一个很好的题目 ,用来表达理论和应用之间相互联系 和促进的过程 。 通信的可靠性提出纠错的要求 ,建立起明确的数学概念和问题 , 以反映工程上的需求 ,然后数学家用各种数学工具构作性能愈来愈好的纠错码 。 纯粹数学和应用数学具有不尽相同的价值观念和美学标准 。 本书讲述纠错码的 数学理论 ,不涉及纠错技术和工程具体实现问题 ,但是也要介绍一些纠错译码算 法 ,这是应用中十分关心的数学问题 。 纯粹数学家可能只对构作好的纠错码更 有兴趣 ,但是像关于 BC H 码的 Berlekamp唱M assey 算法这样的内容 ,对于工程师 和应用数学家来说 ,不仅是必需和重要的 ,而且也是美的 。 纠错码的数学理论也是一个很好的场所 ,在这里 ,不同的数学知识和方法被 用来解决通信中一个共同的课题 ,本书所用的数学工具主要涉及到组合学 、初等 数论 、线性代数和抽象代数(群 、环 、域的基本知识) 。 事实上 ,近 20 年来纠错码 的研究用到了更深刻的数学 :代数几何 、代数数论和群表示理论 。 这本书希望 代数专业的研究生和具有较好代数基础的高年级本科生能够使用 。 本书的基本内容是前三章(到 BC H 码为止) 。 由于代数几何码需要较为专 门的代数几何和代数数论知识(有限域上的代数曲线和代数函数域) ,本书略去 这方面内容 。 最后一章介绍 1996 年产生的量子纠错码的数学理论 ,其中用到一 点群表示论(有限交换群的特征理论) 。 附录中介绍有限域的基本知识和线性移 存器序列 。 Ⅷ 纠错码的代数理论 读者在本书中可以学到纠错码的基本知识 ,并通过这些材料能复习和加深 关于初等数论 、线性代数和抽象代数的知识与方法 ,这些知识和方法对于研究信 息科学与计算机科学中许多其他问题也是有用的 ,我们希望读者通过对这些材 料的学习 ,感受到数学工具和思考方式对应用领域的重要作用 ,并且能够在今后 从事各种工作中 ,有意识地采用数学工具和思考方式 ,从而终生与数学相伴并喜 欢它 。 冯克勤 于清华园 目 录 总序 … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … Ⅴ 前言 … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … Ⅶ 1 2 什么是纠错码 … … … … … … … … … … … … … … … … … … … … … … … 1 1 .1 1 .2 通信和纠错的数学模型 … … … … … … … … … … … … … … … … 1 纠错码的基本概念和主要数学问题 … … … … … … … … … … … 5 1 .3 纠错码的界 … … … … … … … … … … … … … … … … … … … … … 10 线性码 … … … … … … … … … … … … … … … … … … … … … … … … … 14 2 .1 生成阵和校验阵 … … … … … … … … … … … … … … … … … … … 14 2 .2 2 .3 2 .4 2 .5 3 … … … … … … … … … 22 M DS 线性码 :多项式码 … … … … … … … … … … … … … … … 31 二元 Reed唱M uller 码 … … … … … … … … … … … … … … … … … 39 M acWilliams 恒等式 … … … … … … … … … … … … … … … … … 46 循环码 … … … … … … … … … … … … … … … … … … … … … … … … … 54 3 .1 3 .2 3 .3 3 .4 4 完全线性码 :Hamming 码和 Golay 码 生成式和校验式 … … … … … … … … … … … … … … … … … … … 54 循环码的迹表达式 … … … … … … … … … … … … … … … … … … 60 循环码的根 ,BC H 码 … … … … … … … … … … … … … … … … … 65 Goppa 码 … … … … … … … … … … … … … … … … … … … … … … 76 量子纠错码 … … … … … … … … … … … … … … … … … … … … … … … 81 4 .1 什么是量子纠错码 … … … … … … … … … … … … … … … … … … 82 4 .2 Stabilizer 量子码 … … … … … … … … … … … … … … … … … … 89 4 .3 4 .4 由经典码构作量子码 … … … … … … … … … … … … … … … … … 94 量子权多项式和 Singleton 界 … … … … … … … … … … … … … 99 附录 A :有限域 … … … … … … … … … … … … … … … … … … … … … … … … … 108 A .1 有限域 … … … … … … … … … … … … … … … … … … … … … … 108 Ⅹ 纠错码的代数理论 A .2 A .3 A .4 有限域上的多项式环 … … … … … … … … … … … … … … … … 115 有限域上的幂级数环 … … … … … … … … … … … … … … … … 123 有限域的加法特征 … … … … … … … … … … … … … … … … … 129 附录 B :线性移存器序列 … … … … … … … … … … … … … … … … … … … … … 133 B .1 线性移存器序列 … … … … … … … … … … … … … … … … … … 133 B .2 线性移存器的综合算法 … … … … … … … … … … … … … … … 139 参考文献 … … … … … … … … … … … … … … … … … … … … … … … … … … … … 145 1 什么是纠错码 1畅 1 通信和纠错的数学模型 1948 年 Shannon 发表枟通信的数学理论枠一文 ,奠定了通信的数学基础 ——— 信息论和通信的可靠性理论 。 具体的通信方式可以是多种多样的(打电话 ,传送 电子邮件 ,宇宙飞船将金星图片传回地球 ,邮差传送信件和公文 ,… … ) ,它们的 抽象的数学模型可以表示成以下最基本的形式 : 发方 x x 信道 … … 收方 要发送的原始信息可以有不同形式(声音 、文字 、图像 、数据 、… … ) 。 利用各 种物理技术手段 ,把原始信息统一编成离散的脉冲电信号发出 ,脉冲信号只有有 限多个状态 ,假设有 m 个状态 (m ≥ 2) ,可以表示成 0 ,1 ,… ,m - 1 ,并且将集合 {0 ,1 ,… ,m - 1}按模 m 做加 、减 、乘运算 ,即状态集合是模 m 同余类环 Z m 。 也可 把状态集合取成有限域Fq ,其中 q = p ( p 为素数 ,l ≥ 1 ) ,这时还可做除法运算 。 l 本书只研究状态集合为 q 元有限域Fq 的情形 。 事实上 ,数字通信中最常用的脉 冲信号只有两个状态 ,即最常用的是二元域F2 = {0 ,1}(1 + 1 = 0) ,关于有限域的 基本知识见附录 A 。 以F q 表示Fq 上的 n 维向量空间 ,其中 q 个不同向量(c0 ,… ,cn - 1 )(ci ∈ Fg )可 n n 以表示 q 个不同的信息 ,比如F 2 中有 8 个向量 ,可表示 0 ,1 ,… ,7 这 8 个信息 : n 3 0 = (000) ,1 = (100) ,2 = (010) ,3 = (110) , 4 = (001) ,5 = (101) ,6 = (011) ,7 = (111) 。 设想发方把数字 3 传给对方 ,即把码字 (110 )传出去 。 如果信道 (电话线 ,大气 层 ,… … )受到干扰(或发生设备故障)使信息(110)的某位出错 ,比如第 3 位由 0 2 纠错码的代数理论 变成 1 ,则收方得到(111) 。 由于(111 )也代表信息 (数字 7 ) ,收方无法发现传送 的错误 ,即无法判定发来的就是 7(无错) ,还是发来其他数字错成了 7 。 这表明 , 通信系统完全没有检查错误和纠正错误的能力 。 如何使通信系统具有纠错能力 ? 这需要将信息进行一次纠错编码 。 我们先 举两个最简单的例子 ,它们也是通信系统最早采用的检错和纠错方式 。 例 1(奇偶校验码 ) 前面已经把 0 ,1 ,… ,7 分 别 用 长为 3 的 二 元 向 量 (000) ,(100) ,… ,(111)传输 ,现在再把每个向量后面加上 1 位 (0 或 1 ) ,使新的 码字有偶数个 1 ,于是均变成长为 4 的二元向量 : 0 = (0000) ,1 = (1001) ,2 = (0101) ,3 = (1100) , 4 = (0011) ,5 = (1010) ,6 = (0110) ,7 = (1111) 。 长为 4 的 二 元 向 量 共 16 个 ,其 中 只 有 上 述 8 个 是 有 意 义 的 码 字 (codew ord) ,其余 8 个(a0 a1 a2 a3 )(ai ∈ F2 ,a0 + a1 + a2 + a3 = 1)均没有意义 ,不是 码字 。 如果码字在传输中只有 1 位出错 ,比如(1100)错成(1110) ,收到的(1110)不 是码字 ,这是由于任意两个不同码字至少有 2 位是不同的 ,所以一个码字出现 1 位错误不可能变成另一个码字 ,收方收到的(1110)不是码字 ,便知出了错误 。 但 是收方不能纠错 ,因为(1110)也可能是码字(1111)的最后一位出错而造成的 ,这 表明 :奇偶校验码可检查出 1 位错(收到向量有奇数个 1 ,便知出错) ,但不能纠 正 1 位错(即不知哪位出错) 。 另一方面 ,8 个信息本来用长为 3 的二元向量即 可表示 ,现在为了检查 1 位错误 ,改用长为 4 的向量 ,传输信息的速度为原来的 4 3 ,从而效率为原来的 。 3 4 例 2(重复码) 电话中噪音很大时 ,常常把讲话重复几遍 。 现在我们也把 每个信息 0 = (000) ,1 = (100) ,… ,7 = (111)重复三遍 ,即改用 0 = (000000000) ,1 = (100100100) ,2 = (010010010) ,… ,7 = (111111111) 。 长为 9 的二元向量共 2 = 512 个 ,其中只有形如(c0 c1 c2 c0 c1 c2 c0 c1 c2 )的 8 个 9 是码字 ,不同的码字至少有 3 位是不一样的 ,所以若一个码字在传输中有 1 位或 2 位发生错误 ,收到的不是码字 ,即发现错误 。 如果码字 x = (c0 c1 c2 c0 c1 c2 c0 c1 c2 ) 只有 1 位出错 ,变成 y ,则 y 与 x 只有 1 位不同 ,而 y 与其他码字至少有 2 位不 同 ,于是 收 方 便 可 把 y 译 成 与 y 最 “ 相 近 ” 的 码 字 x 。 事 实 上 ,设 y = (a0 a1 a2 a3 a4 a5 a6 a7 a8 ) ,如果它只有 1 个错位 ,那么 (a0 a1 a2 ) ,(a3 a4 a5 ) ,(a6 a7 a8 ) 第1章 什么是纠错码 当中有两个相同 ,而另一个和它们相差 1 位 ,那 1 位的数字改动 ,就可纠正错误 。 例如若 y = (101111101 ) ,马上知道中间那位出错 ,纠正成 (101101101 ) ,这叫纠 错译码 。 总之 ,上述纠错码可检查 2 位错误 ,也可纠正 1 位错误 。 另一方面 ,效率是 原来的 3 1 = 。 9 3 从以上两个例子可以看出纠错码的本质 。 (1) 为了使通信系统具有检错和纠错能力 ,我们把每个信息(c0 ,… ,ck - 1 ) ∈ F 的长度加大 ,即将信息编成F q 中的向量 x ,使F q 中只有一部分是码字 (代表信 k q n 息) ,效率为原来的 n k 。 所以 ,我们是在降低通信效率的情况下提高通信纠错能 n 力的 。 (2) 为了使纠错编码具有好的检错和纠错能力 ,我们要使不同码字之间 ,有 许多位上均是不同的元素(这叫相异位) 。 在例 1 中 ,不同码字之间至少有 2 个 相异位 ,从而可检查 1 位错 。 在例 2 中 ,不同码字之间至少有 3 个相异位 ,从而 可检查 2 位错 ,也可纠正 1 位错 。 将通信系统加上纠错功能之后 ,数学模型便成为如下形式 : x 发方 纠错编码 c 信道 … … ε v = c+ ε 纠错译码 c 收方 x 发方将信息 x ∈ F q 编成有纠错能力的码字 c ∈ F q ,传给收方的过程中信道出 k n 现错误 ε∈ F q (ε 叫错误向量) ,从而收方得到 v = c+ ε 。 收方进行纠错 ,恢复成正 n 确的码字 c ,然后得到信息 x 。 国际上标准的书号设计 ISBN (International 习题 1(书号的纠错编码 ) Standard Book Number )是将每本书编成 F11 = {0 ,1 ,2 ,… ,10}上的十位数字 。 例如书号为 ISBN 0唱19唱859617唱0 , 其中 0 表示语种(英语) ,19 表示出版社 (牛津大学出版社 ) ,859617 是该出版 社真正的书号 ,末 位 0 是 校 验 位 ,使 得 每 个 书 号 a1 唱a2 a3 唱a4 a5 a6 a7 a8 a9 唱a10 都 满足 10 ∑ i= 1 i ai ≡ 0 (mod 11) 。 前九位均用 0 到 9 中的数字 ,如果末位为 10 ,则表示成 X ,如 ISBN 0550唱10206唱X 3 4 纠错码的代数理论 (各出版社在 10 个数字之间加横线的方式不尽相同) 。 证明如此设计的书号有 以下纠错功能 。 (1) 可以检查任何 1 位发生错误 ; (2) 可以检查任何 2 位数字相互置换的错误(即 i ≠ j 时 ,ai 印成 a j ,而 aj 印 成 ai ,其余不变) 。 习题 2 构作一个二元纠错码 ,可传送 8 个信息 ,能纠正 2 位错误 。 第1章 什么是纠错码 1畅 2 纠错码的基本概念和主要数学问题 有了以上直观描述 ,现在可以给出纠错码确切的数学概念 。 定义 1畅 2畅 1 F q 表示有限域Fq 上的 n 维向量空间 。 F q 的每个非空子集合 C 都叫作一个 q 元码 ,n 叫该码的码长 ,C 中向量叫作码字 。 n 用 K 表示 C 中码字个数 ,即 K = |C| ,则 1 ≤ K ≤ q 。 k = log q K 叫作码 C 的信息位数(k 为实数 ,0 ≤ k ≤ n) 。 k 叫作码 C 的效率(或叫信息率) 。 n n n 我们还需要一个概念来衡量码 C 的纠错能力 ,由上节直观描述可知 ,这个 概念应当是不同码字之间的相异位个数 。 定义 1畅 2畅 2 设 a= (a1 ,… ,an )和 b = (b1 ,… ,bn )是F q 中两个向量 ,则向量 a 的 Hamming 权(w eight )定义为非零分量 ai 的个数 ,表示成 w H (a) ,即 w H (a) = # { i | 1 ≤ i ≤ n ,ai ≠ 0} 。 而向量 a和 b 之间的 Hamming 距离是指它们相异位的个数 ,表示成 dH (a ,b) ,即 dH (a ,b) = # { i | 1 ≤ i ≤ n ,ai ≠ bi } = w H (a - b) 。 n F q 中这个距离的定义非常简单 ,下面习题表明它具有通常距离类似的性质 , 本书除最后一章之外 ,均研究 Hamming 距离 ,所以将 w H (a)和 dH (a ,b)分别简 记为 w(a)和 d(a ,b) 。 n 习题 1 对于 a ,b ,c ∈ F q ,证明 (1) d(a ,b) ≥ 0 ,并且 d(a ,b) = 0 ,当且仅当 a= b ; (2) d(a ,b) = d(b ,a) ; (3) (三角形不等式) d(a ,c) ≤ d(a ,b) + d(b ,c) 。 n 定义 1畅 2畅 3 设 C 是码长为 n 的 q 元码 (即 C 为 F q 的非空子集合 ) ,K = |C| ≥ 2 ,定义 C 的最小距离为不同码字之间 Hamming 距离的最小值 ,表示成 d(C) ,即 d = d(C) = min{ d(c ,c′) | c ,c′ ∈ C ,c ≠ c′} 。 n 5 6 纠错码的代数理论 下面结果虽然简单 ,但却是整个纠错码理论的基础 。 对于实数 α ,以 [α]表 示不超过 α 的最大整数 ,叫 α 的整数部分 。 定理 1畅 2畅 4 如果纠错码 C 的最小距离为 d ,则 C 可检查 ≤ d - 1 位错 ,也可 d -1 纠正 ≤ 位错 。 2 证明 设发出码字 c ∈ C ,信道出错 ,但错位不超过 d - 1 ,即错误向量 ε 满足 1 ≤ w(ε) ≤ d - 1 ,则收到向量为 v = c + ε 。 由 ε ≠ 0 可知 v ≠ c ,进而 d(c ,v ) = w (v - c) = w(ε) ≤ d - 1 。 由于对每个码字 c′ ≠ c ,d(c ,c′) ≥ d ,所以 v 也不为 c′ , 这表明v 不是码字 ,从而收方知道出错 ,即可检查出 ≤ d - 1 位错 。 d -1 d -1 现在设 1 ≤ w(ε) ≤ ,这时 d(c ,v ) = w (ε) ≤ ,而对每个码字 2 2 c′ ≠ c ,由三角形不等式知 d(c′ ,v ) ≥ d(c′ ,c) - d(c ,v ) d-1 d -1 ≥ d- > 。 2 2 这表明c是惟一的与v最近的码字 ,收方将 v译成c是正确纠错 ,从而可纠 ≤ d -1 2 位错 ,证毕 。 对每个固定的有限域Fq ,q 元纠错码 C( 彻 F qn )有三个基本参数 : 码长 n , 码字个数 K = |C|(或用信息位数 k = log q K ) ,0 ≤ k ≤ n , 最小距离 d = d(C) ,1 ≤ d ≤ n 。 我们把这个纠错码表示成 (n ,K ,d)q 或者 [n ,k ,d]q ,也说成 : q 元码(n ,K , d)或 q 元码[n ,k ,d] 。 纠错码数学理论的最基本研究课题有以下两个 : k (1) 构作性能良好的纠错码 ,即要求效率 和反映纠错能力的 d 愈大愈好 。 n (2) 寻求好的译码算法 。 对于问题(1) ,易知三个参数 n ,K (或 k)和 d 之间是相互制约的 ,有两个极 k n n 端的情形 :一种情形 ,若 为最大值 1 ,即 k = n ,则 K = q ,从而 C = F q (每个向量 n 第1章 什么是纠错码 都是码字) ,则 d 为最小值 1(不能检错和纠错) ;另一种情形 ,若 d 为最大值 d = n ,则 q 元码 C 的码字最多有 q 个 ,即 K ≤ q ,k ≤ 1 ,于是效率 k 1 ≤ 。 所以我们可 n n 以固定其中两个参数 ,而问第三个参数最佳可能的值是多少 。 比如 : 对固定的 n 和 K (1 ≤ K ≤ q ) ,F q 中一个 K 元子集合 C 的最小距离 d 最大 n n 可能是多少 ? 对于固定的 n 和 d(1 ≤ d ≤ n) ,码长为 n 且最小距离为 d 的纠错码 ,最多可 以有多少码字 ? 我们在下节将给出一个码(n ,K ,d)q 的参数之间应当满足的一些不等式 ,叫 作纠错码的各种界 ,达到这些界的码就是性能最好的纠错码 。 例3 考虑由以下 16 个码字构成的二元码(码长 n = 7 ,K = 16) 。 0010111 1101000 1001011 0110100 1100101 0011010 1110010 0001101 0111001 1000110 1011100 0100011 0101110 1010001 0000000 1111111 这是(0010111)循环移位给出的 7 个码字 ,与(1101000 )循环移位给出的 7 个码 字 ,再加上(0000000)和(1111111) 。 可直接验证此码的最小距离为 3 ,即为二元码(7 ,16 ,3)(或表示为[7 ,4 ,3]) 。 例 2 中的重复码是二元码[9 ,3 ,3] ,例 3 中二元码[7 ,4 ,3 ]的效率 k 4 = 比 n 7 3 1 = 要好 ,而纠错能力相同 ,所以例 3 中二元码比例 2 中重复码要好 ,事实上 。 9 3 [7 ,4 ,3]2 是一种性能最好的纠错码 ,达到下节中的 Hamming 界 ,构作好的纠错 码是很有学问的 。 问题(2 )则源于应用 ,一个好的纠错码在通信中真正能够被采用 ,还需要有 好的纠错编码和纠错译码方法 ,使得工程上得以实用 ,纠错编码是希望给出一种 方便的办法把 K 个信息一一对应于 C 中的 K 个码字 ,通常容易实现 ,而纠错译 码是收方得到v = c+ ε 之后 ,要有方便的办法译出正确的码字 c 。 让我们考察一 7 8 纠错码的代数理论 下定理 1畅 2畅 4 ,它的证明实际上给出了一种译码算法 :每收到向量 v = c + ε ,都 要把v 与 C 中所有码字加以比较 ,即对所有 c′ ∈ C ,计算 d(v ,c′) = w(v - c′) ,从 中找到码字 c 使 d (v ,c)最小 ,将 v 译成码字 c ,这是非常耗时的译码算法 。 所 以 ,找到好的纠错码之后 ,要给出好的译码算法 ,在工程上才能应用 。 围绕以上两个基本问题 ,还需要研究纠错码的一些其他问题 ,特别是分析好 码的组合结构 、代数结构甚至是几何结构 。 这就需要使用各种组合学 、代数学甚 至是几何学的工具 ,利用码的结构特点不仅可以发现好码 ,也可用来找到好的译 码算法 。 每个数学分支都有主要的研究对象 ,研究这些对象的基本性质 ,并且研究基 本对象的分类问题 ,要求同一类的对象具有相同的基本性质 。 在纠错码理论中 , 对于固定的有限域Fq ,我们也把所有 q 元纠错码加以分类 ,使得同一类中的纠错 码有相同参数 n ,K 和 d 。 最容易想出的是以下三类变换 。 ① 分量置换 设 C 是 q 元码(n ,K ,d) ,对于集合{1 ,2 ,… ,n}的每个置换 σ , 我们把 C 中每个码字 c = (c1 ,… ,cn )变成 σ(c) = (cσ(1 ) ,cσ(2 ) ,… ,cσ( n) ) ∈ F q n 即把码字 c 的各分量作置换 σ ,新的集合 σ(C) = {σ(c) | c ∈ C} 给出具有相同参数(n ,K ,d)的 q 元码 。 ② 元素置换 设 f 是集合Fq 到Fq 的一一映射(Fq 中 q 个元素的一个置换) , f (0) = 0 。 于是每个码 C 彻 F q ,将码字 c= (c1 ,… ,cn ) ∈ C 变成 f (c) = ( f (c1 ) ,… , n f (cn )) ∈ F q ,易知新的码 n f (C) = { f (c) | c ∈ C} 与 C 具有相同的参数 n ,K 和 d 。 ③ 码的平移 设 C 彻 F qn ,对每个v ∈ F qn ,新的码 C′ = C + v = {c + v | c ∈ C} 与 C 具有相同的参数 n ,K ,d 。 定义 1畅 2畅 5 设 C 和 C′是两个 q 元码 ,如果通过有限次上述三种变换把 C 变成 C′ ,称 C 和 C′是等价的码 。 习题 2 一个码长为 8 的二元码 ,最小距离为 5 ,试问最多能有多少码字 ? 习题 3 一个码长为 n 的 q 元码 ,最小距离为 2 ,试问最多能有多少码字 ? 习题 4 能否构作一个参数为[8 ,4 ,4]的二元码 ? 第1章 习题 5 彼此等价 。 习题 6 什么是纠错码 证明二元码(n ,K ,d) = (5 ,4 ,3)是存在的 ,并且所有这种二元码均 设 C 和 C′分别是参数为(n ,K ,d)和(n′ ,K′ ,d′)的 q 元码 。 证明 n+ n′ C 磑 C′ = {(c | c′) ∈ F q | c ∈ C ,c′ ∈ C′} 是参数为(n + n′ ,K K′ ,min(d ,d′))的 q 元码(这个码叫作 C 和 C′的直和) 。 9 10 纠错码的代数理论 1畅 3 纠错码的界 现在我们给出纠错码三个参数之间一些相互制约的关系 。 定理 1畅 3畅 1(Hamming 界) 如果存在纠错码(n ,K ,d)q ,则 q ≥ K n d -1 2 ∑ i= 0 i (q - 1) ni , 这里 ni 是组合数(n 个物体中取 i 个的方法数) n! n = n(n - 1) … (n - i + 1) = 。 i i(i - 1) … 1 (n - i) !i ! 证明 对每个整数 r ≥ 0 和向量v = (v1 ,… ,v n ) ∈ F qn ,我们用 Sq (v ,r)表示 与 v 的 Hamming 距离 ≤ r 的所有向量组成的集合 n Sq (v ,r) = {u ∈ F q | d(u ,v ) ≤ r} 叫作以v 为中心 ,半径为 r 的(闭)球 ,不难算出这个球中向量的个数 :对每个 i ≥ 0 , 若 u与v 的 Hamming 距离为 i ,则 u和 v 恰有 i 个分量不同 。 由于v = (v1 ,… ,vn ) 是固定的 ,n 个分量中选 i 个的方法数为 ni 。 在这 i 个分量上 u 的元素与v 不 一致 ,从而每分量均有 q - 1 种取法 ,其余分量上与 v 一致 ,因此 d(u ,v ) = i 的 u i 共(q - 1) ni 个 。 于是球 Sq (v ,r)中元素个数为 | Sq (v ,r) | = r ∑ i= 0 n (q - 1)i 。 i d -1 ,考虑以 C 中每个 2 码字为中心的所有半径均为 l 的球 S q (c ,l)(c ∈ C) 。这样的球共 K 个 ,对于其中 两个不同的球 Sq (c1 ,l) 和 Sq (c2 ,l)(c1 ,c2 ∈ C ,c1 ≠ c2 ) ,由 d(c1 ,c2 ) ≥ d 可知这 两个球不相交 ,因若有向量 u同时在这两个球中 ,则 d(u ,c1 ) ≤ l ,d(u ,c2 ) ≤ l 。由 d -1 三角形不等式 ,d(c1 ,c2 ) ≤ d(c1 ,u) + d(u ,c2 ) ≤ 2 l = 2 ≤ d - 1 。这与 2 d(c1 ,c2 ) ≥ d 相矛盾 ,于是 ,上述 K 个球两两不相交 ,这些球所有元素之和为 现在设存在参数为(n ,K ,d) 的 q 元码 C ,令 l = K· r ∑ i= 0 n (q - 1)i ,它应不超过整个空间F qn 的元素个数 q n ,这就给出定理 1畅3畅1 。 i ■ 第1章 定义 1畅 3畅 2 什么是纠错码 设 C 为 q 元码(n ,K ,2 l + 1) 。 如果 l q = K· n ∑ i= 0 i (q - 1) ni , 则称 C 为完全(perfect )码 。 完全码是一类好的纠错码 ,几何上 ,如果 C 是上述参数的 q 元完全码 ,则 K n 个球 S q (c ,l)(c ∈ C)恰好填满整个空间F q ,上节例 3 中的二元码(7 ,16 ,3)是完全 码 ,因为 q = 2 = 128 , K · n 7 l ∑ (q - 1) ni = 16 · i i= 0 1 ∑ i= 0 7 = 16(1 + 7) = 128 。 i 1973 年 ,van Lint 和 Tiet惫v惫inen 决定出所有完全码 。 下面是另一个(平凡 的)例子 。 习题 1 设 n 为奇数 ,则由长为 n 的两个码字 (00 … 0 )和 (11 … 1 )组成的码 是二元完全码 。 定理 1畅 3畅 3(Singleton 界) 如果存在 q 元码(n ,K ,d) ,1 ≤ d ≤ n - 1 ,则 n - d+ 1 K ≤ q (即 n ≥ k + d - 1) 。 证明 设 C 是 q 元码(n ,K ,d) ,对每个 a ∈ F q ,令 Ca 是 C 中所有末位是 a 的码字去掉 a 之后组成的F q 中一个子集合 , n-1 Ca = {(c1 ,c2 ,… ,cn - 1 ) | (c1 ,c2 ,… ,cn - 1 ,a) ∈ C} 。 易知 d(Ca ) ≥ d(C) = d 。对于码长为 n - 1 的 q 个码 C a (a ∈ F q ) ,所有码字个数 之和为 | C | = K ,即 K = 必存在参数(n - 1 , ≥ ≥ q K n-d ∑ a∈ Fq | Ca | 。从而至少存在 a ∈ F q ,使 | Ca | ≥ K ,所以 q K , ≥ d) 的 q 元码 。这样做下去 ,即知存在参数为 (d , q ,d)的 q 元码 C′ 。由于 C′的码长和最小距离均为 d ,可知 C′ 至多有 q 个码 字 ,于是 q ≥ | C′ | ≥ 定义 1畅 3畅 4 q K n-d ,从而 K ≤ q n - d+ 1 。 设 C 是 q 元码(n ,K ,d) ,如果 K = qn - d + 1 (即 n = k + d - 1) ,则 C 叫作极大距离可分码 ,简称为 M DS (M aximal Distance Separable)码 。 11 12 纠错码的代数理论 习题 2 如果存在 q 元码(n ,K ,d) ,其中 d = 2 l 是偶数 ,证明 l -1 q ≥ K (q - 1) ∑ n i= 0 n (q - 1)i 。 i M DS 码也是一类好的纠错码 ,一个平凡的例子是码长为 n 的 C = {(a ,a ,… ,a) | a ∈ Fq } 。 由于 K = q ,k = 1 ,d = n ,从而 n = k + d - 1 ,所以 C 是 M DS 码 ,进一步的例子见 第2章。 下面由 Plotkin 给出的界只对二元码有效 。 定理 1畅 3畅 5(二元码的 Plotkin 界) 如果存在参数为(n ,K ,d)的二元码 ,并 且 2 d > n ,则 K ≤ d , 当 K 为偶数时 , 2d - n d 2 - 1 , 当 K 为奇数时 。 2d - n 2 证明 设 C = {c1 ,… ,cK }是参数为(n ,K ,d)的二元码 ,码字 ci (1 ≤ i ≤ K )均 n 为F2 中的向量 ,我们构作F2 上一个 K 2 行 n 列的矩阵 c1 + c2 A= c1 + c3 ⁝ cK - 1 + cK 。 其中 2K 行分别是不同码字之差 ci - cj ( = ci + cj )(1 ≤ i < j ≤ K ) 。我们用两 种方式计算矩阵 A 中 1 的个数 N 。由于 w (ci - cj ) ≥ d ,可知每行都至少有 d 个 1 ,于是 N ≥ d 2K ;另一方面 ,对每个 i(1 ≤ i ≤ n) ,设码字 c1 ,… ,cK 的第 i 位 共有 N i 个为 1 ,其余 K - N i 个为 0 ,则 ci + cj (1 ≤ i < j ≤ K ) 这 K 2 个向量的 第 i 位共有 N i (K - N i ) 个为 1 ,这也正好是矩阵 A 的第 i 列中 1 的个数 ,因此 N = n ∑ i= 1 N i (K - N i ) 。由于 N i 和 K - N i 之和为 K ,可知当 K 为偶数时 ,N i 和 K - N i 均为 K 时乘积最大 ,于是 2 第1章 K (K - 1) d 2K = d ≤ N ≤ 2 n ∑ i= 1 K 2 什么是纠错码 nK , 4 2 2 = 2d 即 2 d(K - 1 ) ≤ nK ,于是 K ≤ (由假设 2 d > n) ,由 于 K 为偶数 ,所以 2d - n d K ≤ 。 2d - n 2 K ≤ 2 即 d 。 2d - n 若 K 为奇数 ,则整数 N i 和 K - N i 为 K -1 K + 1 和 时乘积最大 ,这时 2 2 n dK (K - 1) ≤ N ≤ (K - 1)( K + 1) = n(K - 1)(K + 1) , ∑ 2 4 4 i= 1 dK n(K + 1) K+1 d K+1 即 ≤ ,由 此 得 出 ≤ ,由 于 是 整 数 ,可 知 2 4 2 2d - n 2 d d K+1 ≤ ,即 K ≤ 2 - 1 ,证毕 。 2d - n 2d - n 2 例 4 码长为 9 并且最小距离为 5 的二元码 ,最多能有多少码字 ? 解 设 C 为参数(n ,K ,d) = (9 ,K ,5)的二元码 ,考虑新的二元码 C′ = {(c1 ,… ,c9 ,c10 ) ∈ F 2 | (c1 ,… ,c9 ) ∈ C ,c1 + … + c10 = 0} , 6 d = = 3 ,由 Plotkin 易知二元码 C′的参数为 (10 ,K ,6 ) ,由于 2畅 6 - 10 2d - n 界知 K ≤ 6 。 10 习题 3 试构作参数为(n ,K ,d) = (9 ,6 ,5)和(10 ,6 ,6)的二元码 。 习题 4 设 d 为偶数 ,2 ≤ d ≤ n 。 证明 :存在参数为(n ,K ,d)的二元码当且 仅当存在参数为(n - 1 ,K ,d - 1)的二元码 。 寻求性能良好的纠错码本质上是一个组合学问题 ,因为只要求码 C 是F qn 的 一个子集合 。 下一章考虑一类特殊的码 C ,即 C 是F q 的线性子空间 。 这时我们 有线性代数作为工具 ,为构作好码和好的译码算法带来很多益处 。 n 13 2 线 性 码 2畅 1 生成阵和校验阵 定义 2畅 1畅 1 向量空间F q 的一个F q 上的线性子空间 C 叫作 q 元线性码 。 换 n 句话说 ,F q 的一个非空子集合 C 叫作 q 元线性码 ,是指若 c ,c′ ∈ C ,则对任意 a , a′ ∈ Fq ,均有 ac + a′c′ ∈ C 。 n 记 k = dim F q C(Fq唱向量子空间 C 的维数) ,则 K = |C | = qk ,所以 C 的维数 k 就是码 C 的信息位数 ,C 的码长为 n 。 根据定义 ,码 C 的最小距离 d = d(C)应为 K 1 = K (K - 1)个 d(c ,c′) (c ,c′ ∈ C ,c ≠ c′)的最小值 。 下面引理表明 ,对 2 2 于线性码 C ,d(C)可以有更简单的刻画方式 。 引理 2畅 1畅 2 对于线性码 C , d(C) = min w(c) | 0 ≠ c ∈ C , 即 d 为 C 中所有 K - 1 个非零码字 c 的 Hamming 权的最小值 。 证明 零向量 0 是线性码 C 中的码字 ,并且任何两个不同码字之差仍是码 字 ,可知 C 中不同码字之差所成的集合就是 C 的所有非零码字所成的集合 。 由 此即证引理 。 对于线性码可以利用线性代数工具 ,取 C 的一组Fq唱基 v 1 ,… ,v k v i = (ai1 ,… ,ai n ) (1 ≤ i ≤ k) , 其中 aij ∈ F q (1 ≤ j ≤ n ,1 ≤ i ≤ k) 。 则每个码字可惟一表示成 , 第2章 c = b1 v 1 + … + bk v k = (b1 ,… ,bk )G , 线性码 (b1 ,… ,bk ∈ F q ) 其中 G 是Fq 上秩为 k 的 k × n(k 行 n 列)矩阵 G= v1 a11 a12 … a1 n ⁝ = vk ⁝ ak1 ⁝ ak2 ⁝ … ⁝ ak n , G 叫作线性码 C 的一个生成阵 。 我们可以先把 K = q 个信息编成 F q 中向量 k k (b1 ,… ,bk )(共 q 个) ,为了纠错 ,再把它们编成 C 中码字 c = (b1 ,… ,bk )G ,所以 k 纠错编码即是Fq唱线性的单射 φ :F qk → C 彻 F qn , (b1 ,… ,bk ) | → (b1 ,… ,bk )G 。 另一方面 ,Fq 的一个 k 维向量子空间 C 必是某个齐次线性方程组 n b11 x1 + b12 x2 + … + b1 n x n = 0 , b21 x1 + b22 x2 + … + b2 n x n = 0 , ⁝ bn - k ,1 x1 + bn - k ,2 x2 + … + bn - k ,n x n = 0 的全部解 ,其中 H = (bij )1 ≤ i ≤ n - k , 1≤ j≤ n 是Fq 上(n - k) × n(n - k 行 n 列)矩阵 ,并且秩为 n - k 。 H 叫作线性码 C 的一个 校验阵 。 由定义可知 ,对每个v ∈ F q , n v ∈ C 骋 vH = 0(长为 n - k 的零向量) , T 所以 可 用 H来 检 查 向 量 v 是 否 为 C 中 的 码 字 (这 里 H 表 示 矩 阵 H的 转 置 T 矩阵) 。 校验阵还可用来决定线性码 C 的最小距离 。 为此 ,我们把 H 表示成列向量 的形式 : b1 i H = (u1 ,u2 ,… ,un ) , 引理 2畅 1畅 3 ui = b2 i ⁝ bn - k ,i (1 ≤ i ≤ n) 。 设 C 是参数为[n ,k]的 q 元线性码 ,H = (u1 ,… ,un )是 C 的一 个校验阵 。 如果 u1 ,… ,un 当中任意 d - 1 个均Fq唱线性无关 ,并且存在 d 个列向 量是Fq唱线性相关的 ,则 C 的最小距离为 d 。 15 16 纠错码的代数理论 证明 设 c = (c1 ,c2 ,… ,cn )是F q 中 Hamming 权为 l 的向量 ,即 c 有 l 个分 n 量 c j 1 ,… ,cj l 不为零 ,而其余分量为零 ,则 c1 c ∈ C 骋 0 = Hc = (u1 ,… ,un ) ⁝ cn T = cj 1 uj1 + … + cj l uj l 。 这表明 :C 中每个权为 l 的非零码字对应给出 H 中 l 个Fq唱线性相关的列向量 。 从而 C 的最小距离 (即非零码字的最小权 )就等于 u1 ,… ,un 中线性相关列向量 的最少个数 。 由此即证引理 。 由于线性码 C 中的基有不同的选取方式 ,所以 C 的生成阵不是惟一的 。 习题 1 设 C 是参数[n ,k]的 q 元线性码 ,G 是 C 的一个生成阵 。 则 (1) 对每个Fq 上 k × n 的矩阵 G′ ,G′是 C 的生成阵当且仅当存在Fq 上 k 阶可 逆方阵 A ,使得 G′ = AG 。 (2) Fq 上(n - k) × n 的矩阵 H 是 C 的校验阵当且仅当 H 的秩为 n - k 并且 GH = 0 k ,n - k (k × (n - k)的零矩阵) 。 T (3) 存在着与 C 等价的线性码 C′ ,使得 C′具有以下形式的生成阵 G′ = [Ik ┆ P] , 其中 Ik 是 k 阶单位方阵 ,P 是Fq 上 k × (n - k)的矩阵 。 并且这时 ,C′有校验阵 H′ = [ - P ┆ In - k ] 。 T 例1 考虑以 G= 0 1 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 为生成阵的二元线性码 C ,G 的前 4 列构成的行列式其值为 1 ,于是 G 的秩为 4 , 可知 C 是[n ,k] = [7 ,4]的二元线性码 。 这个码具有码字 (1000110) (G 的 4 行之和) , (0100011) (G 的第 1 ,2 ,4 行之和) , (0010111) (G 的第 1 行) , (0001101) (G 的第 1 ,3 ,4 行之和) 。 这 4 个码字是线性无关的 ,从而也构成线性码 C 的一组基 。 于是 C 也有生成阵 第2章 1 0 G′ = I4 1 1 线性码 0 1 = (I4 ┆ P) 。 1 1 1 1 0 1 由习题 1(3)便可写出线性码 C 的一个校验阵 1 0 1 1 1 0 0 H= (P ┆ I3 ) = 1 1 1 0 0 1 0 。 0 1 1 1 0 0 1 二元矩阵 H 的 7 列恰好是F2 上长为 3 的全部非零列向量 ,任意两列均线性无关 , 而第 1 列和第 2 列相加为第 4 列 ,即第 1 ,2 ,4 这三列线性相关 ,由引理 2 .1 .3 可 T 知线性码 C 的最小距离为 3 。 即 C 是[n ,k ,d] = [7 ,4 ,3]的二元线性码 。 写出它 的全部 16 个码字 ,可知这就是 1 .2 节例 3 中给出的纠错码(二元完全码) 。 线性码的校验阵不仅可用来决定码的最小距离 ,而且还可用来纠错 。 定理 2 .1 .4(线性码的纠错译码算法) 设 C 是参数[n ,k ,d]的 q 元线性码 , d -1 l= ,并且 C 有校验阵 2 H = (u1 ,… ,un ) , 其中 ui (1 ≤ i ≤ n)均是Fq 上长为 n - k 的列向量 。 如果码字 c ∈ C 在传送时错位 个数 ≤ l ,即收到向量 y = c + ε ,其中 w (ε) ≤ l 。 则用下列算法可以纠错 。 (1) 计算 v = Hy , T 这是Fq 上长为 n - k 的列向量 ,叫作 y 的校验向量 ; (2) 如果v = 0(零向量) ,则 ε= 0 ,y = c(无错) ; (3) 如果v ≠ 0 ,则 v 必可表示成 u1 ,… ,un 当中不超过 l 个列向量的线性 组合 : v = ai1 ui1 + … + ai t ui t (1 ≤ i1 < i2 < … < it ≤ n) , (1) 其中 1 ≤ t ≤ l ,而 ai1 ,… ,ai t 均是Fq 中非零元素 ,这时 , ε = (ε1 ,ε2 ,… ,εn ) , 其中 εi1 = ai1 ,… ,εi t = ai t ,而当 i ≠ i1 ,… ,it 时 ,εi = 0 ,于是 c = y - ε 。 换句话说 , 传送时出现了 t 位错误 ,错位为 i1 ,i2 ,… ,it ,而错值分别为 ai1 ,… ,ai t 。 证明 由于 c 是码字 ,从而 Hc = 0 。 于是 T v = Hy T = H(c + ε ) = Hε = ε1 u1 + ε2 u2 + … + εn un 。 T T T 17 18 纠错码的代数理论 由于 w (ε) ≤ l ,可知 v 必是 u1 ,… ,un 当中不超过 l 个的线性组合 。 为了证明上面 译码算法的正确性 ,我们只需证明 :将 v 表示成 u1 ,… ,un 中不超过 l 个列向量 线性组合的方式是惟一的 。 现在设有两个向量 a= (a1 ,… ,an ) ,b = (b1 ,… ,bn ) ∈ F q ,w(a) ≤ l ,w (b) ≤ l ,使得 n Ha = a1 u1 + … + an un = v , Hb = b1 u1 + … + bn un = v , T T 于是 H(a - b)T = v - v = 0 。 从而 a - b ∈ C 。 但是 w (a - b) ≤ w (a) + w (b) ≤ 2 l < d ,而 C 中非零码字的 Hamming 权均 ≥ d 。 这表明 a - b = 0 ,即 a = b ,这就 表明v 表成 u1 ,… ,un 中不超过 l 个列向量线性组合的方式是惟一的 。 所以由译 码算法中的表达式(1)得到的错误向量 ε 是正确的 ,证毕 。 继续前面的例 1 。 即考虑以 1 0 1 1 0 1 H= 1 1 1 1 0 1 1 0 0 0 0 1 0 = (u1 u2 u3 u4 u5 u6 u7 ) 0 1 为校验阵的二元线性码 C 。 它的最小距离为 d = 3 ,从而可纠 l = 1 个错 。 设发出 码字 c = (0101110) ∈ C(它是生成阵 G 中第 2 ,3 行之和 ) 。 传送时出现 1 位错 误 :ε= (0100000) ,于是收到向量为 y = c + ε= (0001110) 。 我们计算校验向量 v = Hy T 1 1 0 = 0 1 1 1 1 1 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 1 = 1 1 0 0 1 = u2 , 1 可知第 2 位出现错误 ,于 是 得 出 ε = (0100000 ) ,而 c = y - ε = (0001110 ) + (0100000) = (0101110) 。 例2 设 C 是以F7 上的矩阵 H= 1 0 1 1 2 1 3 1 0 0 1 2 2 2 3 2 1 3 2 3 3 3 1 4 2 4 3 4 1 5 2 5 3 5 1 6 2 6 2 3 6 3 1 0 = 0 0 为校验阵的 7 元线性码 。 H 中任意 4 列构成方阵 1 1 1 1 1 2 4 1 1 3 2 6 1 4 2 1 1 5 4 6 1 6 1 6 第2章 1 a1 1 a2 1 a3 1 a4 a1 2 a2 2 a3 2 a4 a1 a2 a3 a4 3 3 3 线性码 , 2 3 其中 a1 ,a2 ,a3 ,a4 是F7 中不同元素 。 从而它的行列式(Vandermonde 行列式)不 为零 。 这表明 H 中任意 4 列均线性无关 。 特别地 ,H 的秩为 4 。 H 中任意 5 列 显然线性相关 ,于是 d = 5 。 所以 C 是F7 上参数为 [n ,k ,d] = [7 ,3 ,5 ]的线性码 (这是 M DS 码) 。 对于每个 v = (v0 ,… ,v6 ) ∈ F 7 ,v ∈ C 当且仅当 Hv = 0 ,所以 线性码 C 是线性方程组 v0 + v1 + v2 + v3 + v4 + v5 + v6 = 0 , 7 T v1 + 2 v2 + 3 v3 + 4 v4 + 5 v5 + 6 v6 = 0 , v1 + 4 v2 + 2 v3 + 2 v4 + 4 v5 + v6 = 0 , v1 + v2 + 6 v3 + v4 + 6 v5 + 6 v6 = 0 , 在F 中的所有解(v0 ,v1 ,… ,v6 )组成的 。 分别令 (v4 ,v5 ,v6 ) = (1 ,0 ,0 ) ,(0 ,1 ,0 ) 和(0 ,0 ,1) ,得到(v0 ,v1 ,v2 ,v3 ) = (1 ,3 ,6 ,3 ) ,(4 ,6 ,6 ,4 )和 (3 ,6 ,3 ,1 ) 。 于是得 到线性码 C 的生成阵 1 3 6 3 1 0 0 G= 4 6 6 4 0 1 0 。 3 6 3 1 0 0 1 由于 d = 5 ,从而可以纠正 ≤ 2 位错 。 设发出码字 c = (1363100 ) ,信道传送时有 两位错误 :ε= (0100200) 。 从而收到 y = c + ε= (1463300) 。 收方计算校验向量 1 4 1 1 1 1 1 1 1 3 6 0 1 2 3 4 5 6 2 T Hy = 3 = 0 1 4 2 2 4 1 5 3 0 1 1 6 1 6 6 3 0 0 1 1 1 4 = + 2· (H 的第 2 列加上第 5 列的 2 倍) 。 1 2 1 1 由定 理 2 .1 .4 可 知 ,错 误 在 第 2 位 和 第 5 位 ,错 值 分 别 为 1 和 2 。 即 ε = (0100200) ,于是发出的码字为 c= y - ε= (1463300) - (0100200) = (1363100) 。 7 7 19 20 纠错码的代数理论 定义 2 .1 .5 的内积为 对于F q 中的向量v = (v1 ,… ,v n )和 u= (u1 ,… ,un ) ,定义它们 n (v ,u) = v1 u1 + … + v n u n = v u ∈ Fq 。 T 易知(v ,u)= (u ,v ) ,并且对于 α ,β ∈ Fq ,v 1 ,v 2 ,u ∈ Fq ,(αv 1 + βv 2 ,u) = α(v 1 ,u) + β(v 2 ,u) 。 如果(v ,u) = 0 ,称v 和 u 正交 。 注意在有限域上的向量空间中 ,非零向量可 2 以自正交 ,例如在F 2 中 ,对于v = (1 ,1) ,(v ,v ) = 1 · 1 + 1 · 1 = 0 。 n 设 C 是Fq 上参数为[n ,k]的线性码 ,则F q 的子集合 n C = { v ∈ F q | 对每个 c ∈ C ,(v ,c) = 0} n ⊥ 也是Fq 上的线性子空间 ,并且 dim Fq C + dim Fq C = n ,所以 C 是参数为[n ,n - k] ⊥ ⊥ 的 q 元线性码 ,叫作线性码 C 的对偶码 。 如果 C 彻 C ,称 C 为自正交码 。 若 ⊥ ⊥ ⊥ C = C ,则 C 叫自对偶码 。 对于自对偶码 C ,dim C + dim C = n ,dim C = dim C , n 。 从而 dim C = 2 ⊥ 定理 2 .1 .6 设 C 是Fq 上线性码 。 则 (1) (C ) = C ; ⊥ (2) 若 G 是线性码 C 的生成阵 ,则 G 是线性码 C 的校验阵 。 ⊥ 若 H 是线性码 C 的校验阵 ,则 H 是线性码 C 的生成阵 。 ⊥ ⊥ (1) 设线性码 C 的参数为 [n ,k] 。 由对偶码的定义可知 dim Fq C = 证明 ⊥ n - dim Fq C = n - k 。 同样由定义可知 (C ) 澈 C ,因为 C 中每个码字均与 C 中 ⊥ ⊥ ⊥ 所有码字正交 。 但是 dim (C ) = n - dim C = n - (n - k) = k = dim C 。 所以 (C ⊥ ) ⊥ = C 。 v1 ⊥ (2) 设 G= ⁝ vk ⊥ ⊥ ,v i ∈ F q (1 ≤ i ≤ k) 。 则对每个v ∈ F q , n n v ∈ C 骋 (v ,c) = 0 (对每个 c ∈ C) 骋 (v ,v i ) = 0 (1 ≤ i ≤ k) (因为v 1 ,… ,v k 是 C 的一组基) ⊥ 骋 Gv T = 0 (零列向量) , ⊥ T 这就表明 G 是 C 的校验阵 。 另一方面 ,由 GH = 0 可知 H 的每个行向量均属 ⊥ ⊥ 于 C 。 但是 H 的 n - k 个 行 向 量 是 线 性 无 关 的 ,从 而 张 成 整 个 C (因 为 ⊥ ⊥ dim C = n - k) 。 于是 H 为 C 的生成阵 。 第2章 例3 线性码 考虑例 1 中以 0 0 1 0 1 1 1 1 0 0 1 0 1 1 G= 1 1 0 0 1 0 1 1 1 1 1 1 1 1 为生成阵的二元线性码 C ,它的参数为(n ,k ,d) = [7 ,4 ,3] 。 它的扩充码 8 C′ = {(c1 ,c2 ,… ,c7 ,c8 ) ∈ F 2 | (c1 ,c2 ,… ,c7 ) ∈ C ,c1 + c2 + … + c7 + c8 = 0} 8 是F 2 中的线性码 ,参数为[8 ,4 ,4](见后面习题 2) ,并且 C′有生成阵 v1 0 0 1 0 1 1 1 0 v2 1 0 0 1 0 1 1 0 G′ = = 。 1 1 0 0 1 0 1 0 v3 1 1 1 1 1 1 1 1 v4 不难验证 G′的 4 个行向量相互正交 ,即对任意 1 ≤ i ,j ≤ 4 ,(v i ,v j ) = 0 。 从而 C′ 8 是自正交码 。 再由 dim C′ = 4 = ,可知 C′是自对偶码 。 2 习题 2 设 C 是参数为[n ,k ,d]的二元线性码 ,其中 d 为正奇数 。 则扩充码 n+1 C′ = {(c1 ,… ,cn ,cn + 1 ) ∈ F 2 | (c1 ,… ,cn ) ∈ C ,c1 + … + cn + cn + 1 = 0} 是参数为[n + 1 ,k ,d + 1]的二元线性码 。 习题 3 设 n ≥ 1 (1) 求证重复码 C = {(ccn个… c) | c ∈ F q } 是 q 元线性码并决定 C 的码长 ,信息位数和最小距离 ; (2) 给出重复码 C 的一个生成阵和校验阵 ; ⊥ (3) 决定对偶码 C 的最小距离 。 习题 4 设 C1 和 C2 是 q 元线性码 ,证明 (1) C1 磑 C2 是线性码并且(C1 磑 C2 ) ⊥ = C1 磑 C2 ; (2) 若 G1 和 H1 分别是 C1 的生成阵和校验阵 ,G2 和 H2 分别是 C2 的生成 阵和校验阵 ,证明 G1 0 H1 0 G= , H= 0 G2 0 H2 分别是 C1 磑 C2 的生成阵和校验阵 ; (3) 若 C1 和 C2 分别是参数[n1 ,k1 ,d1 ]和[n2 ,k2 ,d2 ]的 q 元线性码 ,试决定 q 元线性码 C1 磑 C2 = {(c1 ,c2 )|c1 ∈ C1 ,c2 ∈ C2 }的参数 。 ⊥ ⊥ 21 22 纠错码的代数理论 2畅 2 完全线性码 :Hamming 码和 Golay 码 n 线性码是纠错码当中的一部分(因为线性码不仅是F q 的子集合 ,而且要求是 n F q 的线性子空间) 。 但是多数性能良好的纠错码都是线性码 。 本节中我们介绍 一类好的线性码 :完全线性码 。 根据定义 ,参数为 [n ,k ,d]的 q 元码叫作完全 码 ,是指它达到 Hamming 界(定义 1 .3 .2) ,即 d = 2 l + 1 并且 q n-k l = ∑ i= 0 i (q - 1) ni 。 首先 ,我们有两类平凡的完全线性码 : n (1) q 元线性码[n ,n ,1] ,即 C = F q 。 这时 l = 0 ,k = n 。 易知这是完全码 。 (2) 对于 n= 2 l + 1 ,q = 2 ,C 由码长为 2 l + 1 的零向量和全 1 向量(1 ,1 ,… ,1) 2l+ 1 ∈ F 2 两个码字组成的二元线性码 ,参数为[n ,k ,d] = [2 l + 1 ,1 ,2 l + 1] 。 由于 l l l n n n 1 = + ∑ ∑ ∑ 2 i= 0 i= 0 i= 0 i i n- i = 1 2 l ∑ i= 0 n + i n ∑ i = l+ 1 n i = 1 2 n ∑ i= 0 n n- 1 n- k = 2 = 2 , i 可知它们为完全码 。 m m 现在介绍一类重要的完全线性码 。 设 m ≥ 2 ,F q 中非零向量共 q - 1 个 。 其 倡 中任意两个非零向量 v 1 和 v 2 是 F q唱线性 相关的 ,当且仅当存在 α ∈ F q ,使得 v 1 = α v 2 。 我们将这样两个非零向量叫作是射影等价的 。 这是一个等价关系 。 每个等价类中均恰好有 q - 1 个向量(因为与非零向量 v 等价的向量为 αv (α ∈ m q -1 倡 F q )) 。 从而共有 个等价类 。 现在从每个等价类中取出一个代表向量 ,共 q -1 m q -1 取出 n = 个向量 u1 ,… ,un ,每个向量表成长为 m 的列向量 ,排成Fq 上一个 q -1 m × n 的矩阵 Hm = (u1 ,… ,un ) 定义 2 .2 .1 设 m ≥ 2 ,以 Hm 为校验阵的 q 元线性码 C 叫作Hamming 码 。 · · 定理 2 .2 .2 Hamming 码是参数为 [n ,k ,d] = 元完全线性码 。 q -1 q -1 , - m ,3 的 q q -1 q -1 m m 第2章 证明 线性码 (1 ,0 ,… ,0) ,(0 ,1 ,0 ,… ,0 ) ,… ,(0 ,0 ,… ,0 ,1 )属于不同的射影等价 类 。 这 m 个等价类取出的代表元构成矩阵 H 中 m 个列向量是线性无关的 。 这 表明 H 的秩为 m 。 于是 n = q -1 q -1 (等价类数) ,k = n - m = - m 。 进而 ,H q -1 q -1 m m 中诸列属于不同的等价类 ,所以任意两个不同的列是线性无关的 。 特别地 ,任意 两个不同列之和是非零向量 ,从而必与 H 中某个列向量等价 。 于是这三列是线 性相关的 ,这表明 d = 3(引理 2 .1 .3) 。 最后 ,由于 1 ∑ i= 0 i m m n- k (q - 1) ni = 1 + (q - 1)n = 1 + q - 1 = q = q , 可知 Hamming 码是完全码 。 例 4(二元 Hamming 码) 当 q = 2 时 ,Hm 即是由全部 2 - 1 个长为 m 的非 m 零列向量构成的矩阵 。 从而二元 Hamming 码的参数为[n ,k ,3] = [2 - 1 ,2 - m m 1 - m ,3](对每个 m ≥ 2) 。 比如对于 m = 3 , H3 = 1 0 0 0 1 0 0 0 1 0 1 1 1 0 1 1 1 1 1 = (I3 ┆ P) , 0 1 从而以 H3 为校验阵的二元 Hamming 码有生成阵 G3 = (P ┆ I4 ) = T 0 1 1 1 1 0 1 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 。 0 1 这个二元线性码的参数为[7 ,4 ,3] 。 不难看出 ,这个线性码与 2 .1 节例 1 中的线 性码是等价的 ,因为这两个码的校验阵中诸列只是排列的次序不同 。 例5 取 q = 3 ,m = 3 ,则F 3 中非零向量共有 3 q -1 3 -1 = = 13 个等价类 。 q -1 3 -1 3 3 取出 13 个代表向量组成F3 上矩阵 H3 = 1 0 0 0 0 1 0 1 0 0 1 1 0 1 2 1 0 1 1 0 2 1 1 0 1 1 2 1 0 1 1 1 2 1 2 1 1 2 = (I3 ┆ P) 2 以 H3 为校验阵的三元 Hamming 码是参数[n ,k ,d] = [13 ,10 ,3]的完全码 ,它有 生成阵 G3 = ( - P ┆ I10 ) 。 T 23 24 纠错码的代数理论 现在介绍 1949 年 Golay 发现的两个完全线性码 。 一个参数为[n ,k ,2 l + 1 ] 的 q 元完全码要满足 q n- k l = ∑ i= 0 i (q - 1) ni 。 满足这个等式的 n ,k ,d( = 2 l + 1)和 q(为素数幂)是很少的 。 Golay 首先求出满 足这个等式的三组参数(q ,n ,k ,d) = (2 ,23 ,12 ,7) ,(2 ,90 ,78 ,5 )和(3 ,11 ,6 ,5 ) 。 他证明了 :参数为[90 ,78 ,5]的二元线性码是不存在的 。 然后通过精细的组合 学考虑 ,构作出二元线性码[23 ,12 ,7]和三元线性码[11 ,6 ,5] 。 先介绍二元 Golay 线性码[23 ,12 ,7] 。 由 2 .1 节的习题 2 知道 ,若存在二元 线性码 [23 ,12 ,7] ,则存在扩充的二元线性码[24 ,12 ,8] 。 Golay 先构作了二元 线性码[24 ,12 ,8] ,然后通过“收缩”得到二元线性码[23 ,12 ,7] 。 定理 2 .2 .3(Golay) 0 1 1 1 1 1 P= 1 1 1 1 1 1 0 1 1 1 1 1 = 1 1 1 1 1 1 设 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 1 1 0 1 1 0 0 1 1 0 1 1 1 1 1 1 P′ 1 1 0 0 0 1 0 1 1 0 1 1 1 1 0 0 0 1 0 1 1 0 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 0 1 1 1 0 1 1 0 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 0 0 0 1 1 , 第2章 线性码 则以 G= (I12 ┆ P)为生成阵的二元线性码 G24 具有参数[n ,k ,d] = [24 ,12 ,8] 。 证明 我们首先说明一下F2 上 12 阶方阵 P 的构作方式 ,这个方阵的左上角 元素为 0 ,第 1 行和第 1 列中的其他元素均为 1 ,剩下的 11 阶方阵 P′ ,其第 1 行 为(11011100010) ,而其余诸行依次为第 1 行向左循环移位 。 由于 G 中有子方阵 I12 ,可知 H 的秩为 12 ,于是[n ,k] = [24 ,12] 。 为了证明 d = 8 ,我们要分几步进行 。 (1) G24 是自对偶码 首先证明 G24 是自正交码 ,这只需验证生成阵 G 中任意两行(包括每行和它 自身)都是正交的 ,由于 G 的每行都包含偶数个 1 ,所以每行都是自正交的 ,于是 只需验证 G 中任意两个不同行向量是自正交的 。 由于生成阵 G 的左半部分 I12 中任意两个不同行向量是正交的 ,所以只需证右半部分 P 的任意两个不同行向 量是正交的 ,由于 P′中每行均有 6 个 1 ,可知 P 的第 1 行与其余诸行均正交 ,所 以只需再验证 P 的后 11 行彼此正交 ,这也相当于验证方阵 P′的任两个不同行 的内 积 均 为 1 。 再 由 方 阵 P′ 的 循 环 特 性 ,可 知 只 需 验 证 P′ 的 第 1 行 (11011100010)和其余诸行(即第 1 行的所有循环移位)的内积均为 1 ,这件事容 ⊥ ⊥ 易逐个验证 ,于是证明了 G24 是自正交码 ,即 G24 彻 G24 ,但是 dim G24 = 24 - 12 = 12 = dim G24 ,从而 G24 = G24 ,即 G24 是自对偶码 。 (2) (P ┆ I12 )也是 G24 的生成阵 ⊥ 由于 P = P ,可知 (P ┆ I12 ) = (P ┆ I12 )是 G24 的校验阵 ,但是 G24 为自对偶 码 ,所以(P ┆ I12 )也是 G24 的生成阵 。 (3) G24 中每个码字的 Hamming 权都是 4 的倍数 对于向量 u = (u1 ,… ,u24 ) 和v = (v1 ,… ,v24 ) ∈ F24 ,定义 2 T T u ∩ v = (u1 v1 ,… ,u24 v24 ) ∈ F 2 。 24 于是当 u ,v ∈ G24 时 ,w (u ∩ v ) = 24 ∑ i= 1 ui v i ≡ (u ,v ) ≡ 0(mod 2)((u ,v ) = 0 是 由于 G24 为自对偶码) 。即 w(u ∩ v ) 均为偶数 。进而 ,对每个 α ∈ F 2 ,以 w(α) 表 示 α 的 Hamming 权 ,即 w(0) = 0 ,w(1) = 1 。容易验证 : w(ui + v i ) = w(ui ) + w (v i ) - 2 w (ui v i ) ,于是对于F 2 中任意向量 u 和v , w (u + v ) = w (u) + w(v ) - 2 w (u ∩ v ) 。 (2) G24 中每个码字 c 都是生成阵 G = (I12 ┆ P)中一些行之和 ,容易看出 G 中每 行的 Hamming 权均是 4 的倍数 ,如果码字 c 是 G中两行 u和v 之和 ,由于 w (u)和 w(v )均是 4 的倍数 ,上面证明了 w(u∩ v )为偶数 ,由式(2)知 w (c) = w (u+ v ) 也是 4 的倍数 。 进而 ,若码字 c 是 G 中三行v 1 ,v 2 ,v 3 之和 ,令 u= v 1 + v 2 ,v = 24 25 26 纠错码的代数理论 v 3 ,再利用式(2)便知 w(c) = w(u+ v )也是 4 的倍数 。 继续下去便知 G24 中每个 码字的 Hamming 权均是 4 的倍数 。 (4) G24 中没有 Hamming 权为 4 的码字 G24 中码字 c 表示成(x|y) ,其中 x 和 y 分别是码字 c 的前 12 位和后 12 位 , 则 w(c) = w(x) + w (y) ,如果 w(c) = 4 ,则有以下几种可能 。 ① w(x) = 0 ,w (y) = 4 ,c 是生成阵 G = (I12 ┆ P)的某些行之和 ,而 x 是单位 方阵 I12 中对应行之和 ,由 w (x) = 0 可知所取的行数为 0 ,即 c 是零向量 ,于是 y = 0 ,这与 w(y) = 4 相矛盾 。 换句话说 ,w (x) = 0 ,w (y) = 4 是不可能的 。 同样地 ,由于(P┆ I12 )也是 G24 的生成阵 ,可知 w(x) = 4 ,w(y) = 0 也不可能 。 ② w (x) = 1 ,w(y) = 3 ,由 w(x) = 1 知 c 为生成阵 G = (I12 ┆ P)中的某 1 行 , 但是 P 中每行的 Hamming 权均大于 3 ,所以 w(x) = 1 ,w(y) = 3 是不可能的 ,同 样地用生成阵(P ┆ I12 ) ,可知 w(x) = 3 ,w(y) = 1 也不可能 。 ③ w (x) = w(y) = 2 ,这时 c 是生成阵( I12 ┆ P)中两行之和 ,但是 P 中任意两 行之和的 Hamming 权均不为 2 ,所以 w(x) = w (y) = 2 也不可能 。 综合上述 ,便知 G24 中没有 Hamming 权为 4 的码字 。 现在证明定理 2 .2 .3 :由(3)和(4)可知 G24 中每个非零码字的 Hamming 权 均 ≥ 8 ,由于生成阵(I12 ┆ P)的第 2 行 Hamming 权为 8 ,于是 d = 8 ,这就完成了 定理 2 .2 .3 的证明 。 推论 2 .2 .4(Golay) 全码 。 存在参数为 [23 ,12 ,7 ]的二元线性码 G23 ,并且是完 证明 考虑将二元线性码 G24 的所有码字去掉最后一位而得到的集合 23 G23 = {(c1 ,… ,c23 ) ∈ F 2 |存在 c24 ∈ F 2 ,使得(c1 ,… ,c23 ,c24 ) ∈ G24 } 。 易知这是二元线性码(叫 G24 的收缩码 ) 。 将 G24 的生成阵 ( I12 ┆ P)去掉最后一 列 ,便是 G23 的生成阵 。 由于这个生成阵仍包含子阵 I12 ,从而秩为 12 ,于是 G23 的参数[n ,k] = [23 ,12] 。 进而 ,由于 G24 的最小距离为 8 ,码字去掉 1 位之后 ,可 知 G23 的最小距离 ≥ 7 ,容易看出 G23 中有权 7 的码字 ,因此 G23 的最小距离为 7 。 最后 ,由于 3 ∑ i= 0 n = i 23 23 23 23 + + + = 1 + 23 + 23 · 11 + 23 · 11 · 7 0 1 2 3 = 2048 = 2 可知 G23 为完全码 。 11 = 2 n- k , 第2章 线性码 最后介绍 Golay 的三元线性码 G11 ,它是参数 [n ,k ,d] = [11 ,6 ,5 ]的完全 码 。 其构作方式与二元线性码 G23 相似 。 定理 2畅 2畅 5(Golay) (1) 以 G = (I6 ┆ P) = I6 0 1 1 1 1 1 1 0 1 2 2 1 1 1 0 1 2 2 1 2 1 0 1 2 1 2 2 1 0 1 1 1 2 = 2 1 0 I6 0 1 1 1 1 1 1 1 1 1 1 P′ 为生成阵的三元线性码 G12 是[n ,k ,d] = [12 ,6 ,6]的自对偶码 。 (2) 将 G12 中所有码字去掉末位 ,得到的收缩码 G11 是[n ,k ,d] = [11 ,6 ,5]的 三元线性码 ,并且是完全码 。 证明 仿照定理 2 .2 .3 和推论 2 .2 .4 的证明 。 请读者自行补足 。 1960 年以前 ,人们猜想已经找到了所有的完全码 。 确切地说 ,猜想每个 q 元完全码(q 为素数幂)均为平凡完全码 ,或者等价于 Hamming 码 、二元 Golay 码 G23 和三元 G11 当中的一个 。 但是在 1962 年至 1968 年 ,人们对每个 q 均陆续 得到非线性的完全码 ,参数和 Hamming 码相同 ,而与 Hamming 码不等价 。 后 来人们又提出一个较弱的猜想 :每个非平凡的 q 元完全码 (线性或非线性 ,q 为 素数幂) ,其参数 n ,k ,d 必与 Hamming 码或 Golay 码的参数一致 。 这个猜想于 1973 年由 Tiet惫v惫inen唱van Lint 和 Zinov'ev唱Leont'ev 独立地证明 。 1975 年 ,Delsarte 和 Goelhals 证明了 :具有参数[23 ,12 ,7]的二元线性码和 参数[11 ,6 ,5]的三元码(线性或非线性)必分别等价于 Golay 码 G23 和 G11 。 另一 方面 ,具有 Hamming 码参数 q -1 q -1 , - m ,3 的 q 元码共有多少彼此不等 q -1 q -1 m m 价的 ? 这是一个相当困难的未解决问题 。 人们相信 :有成千个彼此不等价的非 线性二元码具有参数[15 ,11 ,3](q = 2 ,m = 4) 。 二元 Golay 码 G23 是参数为[23 ,11 ,7]的线性码 ,所以可以纠正 ≤ 3 位错误 。 我们可以根据定理 2 .1 .4 ,采用线性码的一般纠错译码算法 。 在传送码字 c ∈ 23 G23 时发生不超过 3 位的错误 ε ∈ F 2 ,0 ≤ w (ε) ≤ 3 。 接收到 y = c + ε 之后 ,计算 v = y HT ,其中 H 是 G 23 的一个校验阵 ,然后看 v 是 H 中不超过 3 个列向量之和 , 由此决定错误 ε ,得到正确码字 c = y + ε 。 现在我们用二元 Golay 码作为例子 , 说明如何利用一个线性码的特殊代数结构和组合结构 ,可以得到更方便和有效 27 28 纠错码的代数理论 的纠错译码算法 。 我们先考虑二元 Golay 码 G24 = [24 ,12 ,8] ,研究如何利用此码的特殊结构 纠正 ≤ 3 位错 。 这个自对偶二元线性码有校验阵 H = [ I12 ┆ P]和生成阵 G = T T (P ┆ I12 ) 。 由于 P = P ,并且 G23 是自对偶码 ,所以 G = (P ┆ I12 )也是校验阵 。 设码字 c ∈ G24 在传输中有错误 ε = (ε1 |ε2 ) ∈ F 2 ,0 ≤ w (ε) ≤ 3 。 其中 ε1 ,ε2 ∈ 24 F 2 ,于是 0 ≤ w (ε) = w(ε1 ) + w(ε2 ) ≤ 3 。 令 b1 12 P= ⁝ b12 , bi ∈ F 2 12 由于 H 既是校验阵也是生成阵 ,可知 (1 ≤ i ≤ 12) 。 I 2 = I+ P , P 2 从而 P = I12 。 我们可以用两个校验阵 H = (I ┆ P)和 G= (P ┆ I)来计算 y 的校 验向量 : I T T s1 = y H = εH = (ε1 | ε2 ) = ε1 + ε2 P , P P T T 2 s2 = yG = εG = (ε1 | ε2 ) = ε1 P + ε2 = s1 P (由于 P = I) 。 I 12 我们以 ei 表示F 2 中向量 ,其第 i 位为 1 ,其余位均为 0(1 ≤ i ≤ 12) 。 由于 w(ε1 ) + w (ε2 ) ≤ 3 ,可知有以下两种可能 : (1) w(ε2 ) = 0 ,这时 s1 = ε1 , w (s1 ) = w(ε1 ) ≤ 3 , ε= (ε1 |0) = (s1 |0) 。 同 样地 ,当 w(ε1 ) = 0 时 ,s2 = ε2 ,w (s2 ) ≤ 3 ,而 ε= (0 |ε2 ) = (0 |s2 ) 。 (2) 如果 ε1 ,ε2 均不为 0 ,即 w(ε1 ) ≥ 1 ,w(ε2 ) ≥ 1 。 由 w(ε1 ) + w(ε2 ) ≤ 3 ,可 知必然 w(ε1 ) = 1 或 w (ε2 ) = 1 。 如果 w(ε2 ) = 1 ,即 ε2 = ei (对某个 i ,1 ≤ i ≤ 12) ,则 s1 = ε1 + ei P = ε1 + bi 。 于 是 w(s1 + bi ) = w (ε1 ) ≤ 2 。 这时 ε = (s1 + bi |ei ) 。 同样地 ,如果 w (ε1 ) = 1 ,即 ε1 = ej (对某个 j ,1 ≤ j ≤ 12) ,则 s2 = ej P + ε2 = bj + ε2 ,于是 w(s2 + bj ) ≤ 2 ,而 ε = (ej |s2 + bj ) 。 通过以上分析 ,我们便得到用二元线性码 G24 纠正 ≤ 3 个位错的如下译码算 法 。 设码字 c ∈ G24 发生错误 ε ,其中 0 ≤ w (ε) ≤ 3 。 收到 y = c+ ε 。 I P (1) 计算校验向量 s1 = y 和 s2 = y ; P I (2) 若 s1 = 0 或 s2 = 0 ,则 ε= 0(y = c) ; (3) 若 w(s1 ) ≤ 3 ,则 ε= (s1 |0) ;若 w(s2 ) ≤ 3 ,则 ε= (0 |s2 ) ; 0 = HH = (I ┆ P) T 第2章 线性码 (4) 若对某个 bi ,w(s1 + bi ) ≤ 2 ,则 ε = (s1 + bi |ei ) 。 若对某个 bj ,w (s2 + bj ) ≤ 2 ,则 ε= (ej |s2 + bj ) 。 其中 bi (1 ≤ i ≤ 12)是 P 的 12 个行向量 ,P 如定理 2 .2 .3 中所示 。 例如 :收到 y = (000111000111 |011011010000) = (y1 |y2 ) (1) 计算 I s1 = y = y1 + y2 P = (000111000111) + (101010101011) P = (101101101100) , s2 = y1 P + y2 = (011010100101) + (011011010000) = (000001110101) 。 (2) s1 ≠ 0 ,s2 ≠ 0 。 (3) w(s1 ) > 3 ,w (s2 ) > 3 。 (4) s1 + b9 = (101101101100) + (100101101110) = (001000000010) ,w(s1 + b9 ) = 2 。 于是 ε = (s1 + b9 |e9 ) = (001000000010 |000000001000 ) ,从而正确码字 为 c = y + ε= (001111000101 |011011011000) 。 现在考虑 G23 的译码 。 我们知道 G23 中的码字是将 G24 中码字去掉最末位数 23 字而得到的 。 设发出 c= (c1 ,c2 ,… ,c23 ) ∈ G23 ,发生错误 ε ∈ F 2 ,0 ≤ w(ε) ≤ 3 ,收 2 。 考虑向量 到向量 y = c + ε= (y1 ,… ,y23 ) ∈ F 23 2 y′ = (y1 ,… ,y23 ,y24 ) ∈ F 24 , y24 = y1 + … + y23 + 1 。 由于 y 和 G 23 中码字的最小 Hamming 距离不超过 3 ,可知 y′与 G 24 中码字的最小 Hamming 距离不超过 4 。 但是 G24 中每个码字的 Hamming 权均为偶数 (因为 G24 是自对偶码 ,每个码字都自正交) ,而 y′的 Hamming 权为奇数(由于 y1 + … + y23 + y24 = 1) ,所以 y′与 G 24 中每个码字的 Hamming 距离均为奇数 。 于是 y′与 G 23 中码字的最小 Hamming 距离仍不超过 3 。 于是可以用上述 G 24 的译码算法 ,得 到 G24 中与 y′的 Hamming 距离不超过 3 的惟一码字 c′ = (c1 ,c2 ,… ,c23 ,c24 ) ∈ G24 。 去掉末位 G24 之后 ,就给出 y 在 G 23 中的正确译码 c = (c1 ,… ,c23 ) ∈ G23 。 23 例如 :设发生 c= (c1 ,… ,c23 ) ∈ G23 ,发生错误 ε ∈ F 2 ,0 ≤ w(ε) ≤ 3 ,收到向量 为 y = (00011100011101101101000) ∈ F2 。 由于 y 中共有 11 个分量为 1 ,将后面加 23 上 0 成为 y′ ∈ F 2 。 用上述 G24 的译码算法给出 c′ = (000011000111011010000000) 。 去掉末位数字 0 之后 ,便得到 y 在 G23 中的正确码字 c。 24 习题 1 证明不存在参数为(n ,K ,d) = (90 ,2 ,5)的二元纠错码 C 。 (提示 :(a) 不妨设 0 ∈ C 。 则 C 中非零码字的 Hamming 权均 ≤ 5 。 定义 Y = 90 { v = (v1 ,… ,v90 ) ∈ F 2 |w (v ) = 3 ,v1 = v2 = 1} ,则 |Y |= 88 。 78 29 30 纠错码的代数理论 (b) 对于F 2 中任意两个向量 u= (u1 ,… ,un )和v = (v1 ,… ,v n ) ,称 u 覆盖v , 是指对每个 i(1 ≤ i ≤ n) ,若 v i = 1 则必然 ui = 1 。 n 对于 Y 中每个向量 y ,恰好存在一个以 C 中码字 c 为中心 ,半径为 2 的球 S(c ,2) ,使得 y ∈ S(c ,2) 。 证明 w(c) = 5 并且 c 覆盖 y 。 (c) 考虑集合 X = {c = (c1 ,… ,c90 ) ∈ C | w(c) = 5 ,c1 = c2 = 1} 。 我们用两种方法计算集合 D = {(c ,y)|c ∈ X ,y ∈ Y ,c 覆盖 y} 中元素个数 。 一方面 ,每个 y ∈ Y 被 X 中惟一的 c所覆盖 ,于是 |D|= |Y |= 88 ;另 一方面 ,每个 c∈ X 覆盖 Y 中 3 个 y ,于是 |D|= 3 |X |。 由此导出矛盾 。) 习题 2 为 253 ; (1 ) 证明 : 二 元 Golay 码 G23 中 Hamming 权 为 7 的 码 字 个 数 (提示 :对于F 2 中每个权为 4 的向量 y ,G23 中均有惟一的权 7 码字覆盖 y 。) 23 (2) 证明 :在[n ,k ,d] = [2 - 1 ,2 - 1 - m ,3]的二元 Hamming 码中 ,权 3 m m-1 的码字个数为(2 - 1)(2 - 1)/3 ; (3) 证明 :三元 Golay 码 G11 中权 5 的码字个数为 132 。 m m 习题 3 证明定理 2 .2 .5 。 习题 4 对于 n ≥ 3 ,0 ≤ k ≤ n ,证明 : q 元线性码 [n ,k ,3 ]存在 ,当且仅当 Hamming 界成立 ,即 q n- k 习题 5 译码算法 。 ≥ 1 + n(q - 1) 。 仿照二元 Golay 码的情形 ,给出三元 Golay 码纠正 ≤ 2 位错的一个 第2章 2 .3 线性码 MDS 线性码 :多项式码 现在介绍另一类好的线性码 :M DS 线性码(即达到 Singleton 界 n = k + d - 1) 。 首先给出这种线性码的一些刻画方式 。 定理 2 .3 .1 设 C 是参数为[n ,k ,d]的 q 元线性码 。 G 和 H 分别为码 C 的 生成阵和校验阵 。 则下列四个条件彼此等价 。 (1) C 是 M DS 码(即 n = k + d - 1) ; (2) G 中任意 k 列均是F q唱线性无关的 ; (3) H 中任意 n - k 列均是F q唱线性无关的 ; (4) C 是 M DS 码 。 ⊥ 证明 (1) 骋 (3) :若 d = n - k + 1 ,可知 H 中任 n - k 列均线性无关 (引理 2 .1 .3) 。 反之若 H 中任 n - k 列均线性无关 ,由引理 2 .1 .3 知 d ≥ n - k + 1 。 但 是我们有 Singleton 界 d ≤ n - k + 1 。 因此 d = n - k + 1 。 ⊥ (2) 骋 (4) :由于 G 是 C 的校验阵 。 从而与(1) 骋 (3)的证明一样 。 (1) 骋 (2) :记 v1 G= ⁝ = (u1 … un ) , vk 其中v 1 ,… ,v k 是线性码 C 的一组基 ,而 u1 ,… ,un 均是长为 k 的列向量 。 如果 C 不是 M DS 码 ,即 d < n - k + 1 ,则 C 中有非零码字 c = α1 v 1 + … + αk v k (αi ∈ F q ,αi 不全为零)使得 1 ≤ w(c) ≤ n - k 。 于是 c = (c1 ,… ,cn )至少有 k 位为 0 。 设 ci1 = ci2 = … = cik = 0 。 则 k 阶方阵(ui1 ui2 … uik )的 k 行是线性相关的 。 从而此阵的 k 列 ui1 ,… ,uik 也是线性相关的 。 反推回去可知 :如果 G 有 k 列是线性相关的 ,则 C 中必有权 < n - k + 1 的非零码字 ,即 C 不是 M DS 码 。 这就证明了(1) 骋 (2) 。 综合上述 ,我们完成了定理 2 .3 .1 的证明 。 推论 2 .3 .2 n - k ,k + 1] 。 若 C 是 M DS 线性码 ,参数为 [ n ,k ,d] ,则 C 的参数为 [n , ⊥ 证明 由定理 2 .3 .1 知 C 也是 M DS 码 ,它的码长和信息位数分别为 n 和 n - k ,从而最小距离为 n - (n - k) + 1 = k + 1 。 ⊥ 31 32 纠错码的代数理论 习题 1 试问哪些 Hamming 码为 M DS 线性码 ? 设 C 是参数为[n ,k ,d]的 M DS 线性码 ,d ≥ 2 。 定义它的收缩码 C′ = {(c1 ,… ,cn - 1 )|有 cn 使(c1 ,… ,cn - 1 ,cn ) ∈ C} 证明 C′也是 M DS 线性码 ,参数为[n - 1 ,k ,d - 1] 。 习题 2 习题 3 设 C 是 M DS 线 性 码 ,参 数 为 [ n ,k ,d] 。 证 明 对 任 意 1 ≤ i1 < i2 < … < id ≤ n ,C 中均存在码字 c= (c1 ,… ,c n ) ,使得当 i = i1 ,… ,i d 时 ,c i ≠ 0 ,而当 i ≠ i1 ,… ,id 时 ,ci = 0 。 现在构作一批 M DS 线性码 。 定理 2 .3 .3(多项式码) 设 a1 ,… ,an 是F q 中 n 个不同的元素(从而 n ≤ q) , 1 ≤ k ≤ n 。 则集合 n C = {cf = ( f (a1 ) ,f (a2 ) ,… ,f (an )) ∈ Fq | f (x) ∈ F q [x] ,deg f ≤ k - 1} 是 q 元线性码 ,参数为[n ,k ,d] ,其中 d = n - k + 1 ,从而 C 是 M DS 线性码 。 证明 集合 M = { f ∈ F q [x] | deg f ≤ k - 1} 是F q 上的 k 维向量空间 ,{1 ,x ,x2 ,… ,x k - 1 }是 M 的一组F q唱基 。 考虑映射 φ :M → F q , φ( f ) = cf = ( f (a1 ) ,f (a2 ) ,… ,f (an )) , n 易知这是F q唱线性映射 ,并且 C = Im φ( = φ(M )) 。 所以 C 为F q 的向量子空间 ,即 n C 是 q 元线性码 ,码长为 n 。 为了证明 dim Fq C = k( = dim M) ,我们只需证明 φ 是 单射 ,即要证 Ker(φ) = (0) ,这里 Ker φ = { f ∈ M |φ( f ) = cf = (0 ,… ,0)} = { f ∈ M |f (a1 ) = f (a2 ) = … = f (an ) = 0} (φ 的核) 。 由于 deg f ≤ k - 1 ≤ n - 1 ,当 f 厨 0 时 ,f 至多有 n - 1 个零点 。 所以当 a1 ,… ,an 均 为 f (x)的零点时 ,必然 f ≡ 0 。 这就表明 Ker(φ) = (0) ,于是 dim C = dim M = k 。 现在决定线性码 C 的最小距离 d 。 先证 d ≥ n - k + 1 。 设 cf = ( f (a1 ) ,… ,f (an )) ∈ C , f (x) ∈ F q [x] , deg f (x) ≤ k - 1 。 如果 w(cf ) ≤ n - k ,则 f ( ai )(1 ≤ i ≤ n)当中至少有 n - (n - k) = k 个为 0 ,即 f (x)至少有 k 个不同的零点 。 由于 deg f ≤ k - 1 ,可知必然 f ≡ 0 ,于是 cf 为零 向量 。 这表明 C 中非零码字的 Hamming 权均 ≥ n - k + 1 。 于是 d ≥ n - k + 1 , 再由 Singleton 界可知 d = n - k + 1 。 从而 C 是 M DS 线性码 。 第2章 线性码 习题 4(定理 2 .3 .3 的另一证明) 对于定理 2 .3 .3 中的线性码 C ,证明 c1 cx G= cx2 = 1 a1 1 a2 … … 1 an a1 2 a2 2 … an ⁝ ⁝ ⁝ ⁝ … an ⁝ cx a a k-1 1 k -1 k -1 2 2 k -1 是 C 的生成阵 。 并且 G 的任意 k 列均是线性无关的 。 于是 C 为 M DS 码 。 从 ⊥ 而 C 也是 M DS 码 。 习题 5(多项式码的校验阵) 记 V (x1 ,… ,x k ) = 1 x1 1 x2 … … 1 xk x21 x22 … x2k ⁝ ⁝ ⁝ ⁝ … x kk - 1 x k-1 1 x k-1 2 = ∏ 1 ≤ i< j ≤ k (x j - x i ) 为 Vandermonde 行列式 。 则定理 2 .3 .3 中的多项式码 C 有如下的校验阵 H= A ┆ - In - k , A = (αij ) (1 ≤ i ≤ n - k ,1 ≤ j ≤ k) , 其中 αij = V (a1 ,… ,aj - 1 ,ai+ k ,aj + 1 ,… ,ak ) = V (a1 ,… ,ak ) (αij 的分子是将分母中的 a j 改成 ai + k ) k ∏ λ= 1 λ≠ j ai+ k - aλ a j - aλ 如果在定理 2 .3 .3 中 a1 ,… ,ak 取成F q 中全部元素 ,则得到以下结果 。 推论 2 .3 .4 设 a1 ,a2 ,… ,aq 为F q 中全部元素 。 对于 1 ≤ k ≤ q - 1 ,记 Ck = {cf = ( f (a1 ) ,f (a2 ) ,… ,f (aq )) ∈ F qq | f (x) ∈ F q [x] ,deg f ≤ k - 1} , 则 (1) Ck 是参数为[q ,k ,d]的 q 元 M DS 线性码 ,其中 d = q - k + 1 。 (2) Ck = Cq - k 。 特别当 2 k ≤ q 时 ,Ck 是自正交码 。 而当 q 为偶数(即 q 是 2 ⊥ q q 的方幂)时 ,Cq/2 是参数 q , , + 1 的 q 元自对偶码 。 2 2 证明 (1) 是定理 2 .3 .3 的直接推论 。 (2) cx = (a1 ,a2 ,… ,aq )(0 ≤ i ≤ k - 1)是线性码 Ck 的一组F q唱基 。 cx j (0 ≤ i i i i 33 34 纠错码的代数理论 j ≤ q - k - 1)是 Cq - k 的一组F q唱基 。 而 dimCk + dimCq - k = k + q - k = q 。 为证 Ck = Cq - k ,我们只需证明对任意 0 ≤ i ≤ k - 1 ,0 ≤ j ≤ q - k - 1 ,cx i 和 c x j 正交 。 当 i = j=0时 , q (c1 ,c1 ) = ∑1 λ= 1 当 i+ j ≥ 1 时 (cx i ,cx j ) = q ∑ aλ i+ j ∑ = a ∈ Fq λ= 1 q-2 = ∑ l= 0 q-2 = ∑ l= 0 (αl )i + j i+ j (α l ) = 倡 a = q = 0 ∈ Fq 。 i+ j (其中 α 是F q 的一个本原元素) q-1 i+ j 1 - (α ) i+ j 1-α = 0 (由于 1 ≤ i + j ≤ k - 1 + q - k - 1 = q - 2 , α ≠ 1 。 而 α = 1) 。 ⊥ 这就证明了 Ck = Cq - k 。 由定义可知当 1 ≤ k ≤ k′ ≤ q - 1 时 ,Ck 彻 C′k 。 从而当 2 k ≤ ⊥ ⊥ q q 时 ,Ck = Cq - k 澈 Ck ,即 Ck 是自正交的 。 当 k = ∈ Z 时 ,Ck = Cq - k = Ck ,所以 2 i+ j q-1 Cq/2 自对偶 。 习题 6 设 a1 ,a2 ,… ,aq - 1 为F q 中全部非零元素 。 对于 1 ≤ k ≤ q - 2 ,定义 C′k = {cf = ( f (a1 ) ,f (a2 ) ,… ,f (aq - 1 )) ∈ F q | f (x) ∈ F q [x] ,deg f ≤ k - 1} , q-1 C″k = {cf = ( f (a1 ) ,f (a2 ) ,… ,f (aq - 1 )) ∈ F q | f (x) ∈ F q [x] ,deg f ≤ k - 1 ,f (0) = 0} 。 q-1 证明 : (1) C′k 是参数为[q - 1 ,k ,d]的 q 元 M DS 线性码 ,其中 d = q - k 。 C″k 是参数为[q - 1 ,k - 1 ,d′]的 q 元 M DS 线性码 ,其中 d′ = q - k + 1 。 (2) (C″k ) = C′q - k 。 特别当 2 k ≤ q 时 ,C″k 是自正交码 。 ⊥ 例6 考虑 2 .1 节的例 2 ,即考虑F 7 上的线性码 C ,它以 H= 1 0 1 1 1 2 1 3 1 4 1 5 1 6 02 12 22 32 42 52 62 3 3 3 3 3 3 3 0 1 2 3 4 5 6 ⊥ ⊥ 为校验阵 。 用推论 2 .3 .4 中的记号 ,C 即是 C4 ,从而 C = C4 即是 C7 - 4 = C3 。 第2章 线性码 于是 C 的参数为[n ,k ,d] = [7 ,3 ,5]并且由 H 的前三行构成的矩阵是 C 的一个 生成阵 。 码 C 的最小距离为 5 ,从而当码字 c 在传输中产生 ≤ 2 位错时 ,可以纠正错 误 。 我们将向量v = (v0 ,v1 ,… ,v6 )的 7 位从左到右依次叫作第 0 ,1 ,2 ,… ,6 位 。 设错误向量为 ε ,0 ≤ w(ε) ≤ 2 。 收到向量为 y = c+ ε 。 收方计算校验向量 a0 Hy T a1 = a2 = a。 a3 根据定理 2 .1 .4 给出的译码算法 。 若 a0 = a1 = a2 = a3 = 0 ,则 ε= 0 ,y = c(无错) 。 当 a 是校验阵某一列乘以非零常数时 a0 1 a1 a2 a3 = α t (α ≠ 0 ,0 ≤ t ≤ 6) , t 2 t3 则 w(ε) = 1 ,ε 的第 t 位为 α ,即只有 1 位错误 ,错位在第 t 位 ,错值为 0 。 不难看 出 ,这种恰有 1 位错误的情形等价于 a0 ≠ 0 并且(a0 ,a1 ,a2 )与(a1 ,a2 ,a3 )相差一 个常数因子(即(a1 ,a2 ,a3 ) = t(a0 ,a1 ,a2 )) 。 否则 ,校验向量必为 H 中两列的线 性组合 a0 1 1 a1 a2 = x i i 2 j + y j 2 , (3) i j a3 其中 1 ≤ x ,y ≤ 6 ,0 ≤ i ≠ j ≤ 6 。 这时 w(ε) = 2 ,ε= (ε0 ,… ,ε6 ) ,其中 εi = x ,εj = y , 而其余 ελ (λ ≠ i ,j )为 0 。 即第 i 位和第 j 位出错 ,错值分别为 x ,y 。 现在我 们 给 出 一 个 新 的 译 码 算 法 ,它 是 第 3 章 中 BC H 码 Berlekamp唱 M assey 算法的基础 。 假设错位个数 ≤ 2 ,即可能的错位为 i 和 j ,错值分别为 x 和 y 。 于是式(3)成立 。 从而有关于 i ,j ,x ,y 的方程组 x + y = a0 , i x + jy = a1 , i2 x + j2 y = a2 , i3 x + j3 y = a3 。 (4) 我们要求出这个方程组在F 7 中的解(i ,j ,x ,y) ,其中 a0 ,a1 ,a2 ,a3 是已知的F 7 中 T 元素 ,由 Hy 算出 。 新的译码算法是考虑幂级数环 R = F 7 [[Z]] ,R 中每个元素是(形式)幂级数 3 ∞ α= ∑ λ= 0 3 bλ Z = b0 + b1 Z + … + bλ Z + … λ λ (bi ∈ F 7 ) 。 35 36 纠错码的代数理论 我们知道 ,α 是环 R 中乘法可逆元素当且仅当 b0 ≠ 0 。 于是对每个 a ∈ F 7 ,1 - aZ 均可逆 。 事实上 , ∞ λ λ 2 2 3 3 1 = ∑ a Z = 1 + aZ + a Z + a Z + … 1 - aZ λ= 0 于是由方程组(4)可知在环 R 中 , x y + = 1 - iZ 1 - jZ ∞ ∑ (xi + yj )Z = a0 + a1 Z + a2 Z + a3 Z + … λ λ λ 2 3 λ= 0 由于上式左边为(x + y - (x j + y i)Z)/(1 - (i + j )Z + i j Z2 ) 。 记 σ = i + j , τ = ij , 可知 (x + y) - (xj + y i)Z = (1 - σZ + τZ )(a0 + a1 Z + a2 Z + a3 Z + … ) 2 2 3 比较这个等式两边 Z 和 Z 的系数 ,得到 0 = a0 τ - a1 σ + a2 , 2 (5) 3 0 = a1 τ - a2 σ + a3 。 这是关于 τ和 σ 的线性方程组 ,系数行列式为 a0 - a1 2 = a1 - a0 a2 。 a1 - a2 由方程组(4)我们有 2 2 2 2 2 a1 - a0 a2 = (ix + jy ) - (x + y)(i x + j y) = (i - j ) xy , (6) 所以在产生两位错误的时候(即 i ≠ j 并且 x 和 y 均不为零) ,a1 - a0 a2 ≠ 0 。 于是 我们可以将线性方程组(6)解出 : 2 a2 - a1 a3 a1 a2 - a0 a3 τ= 2 , σ= 。 2 a1 - a0 a2 a1 - a0 a2 再由 2 2 (Z - i)(Z - j ) = Z - (i + j)Z + ij = Z - σZ + τ , 2 可知方程 Z - σZ + τ= 0 的两个解就是错位 i 和 j 。 然后由式(4)中前两个方程 x + y = a0 和 ix + j y = a1 ,算出错值 ja0 - a1 a1 - ia0 x = , y = 。 (7) j - i j - i 综合上述 ,我们给出线性码 C 的如下译码算法 。 设码字 c ∈ C 在传输时出 现错误 ε ,w (ε) ≤ 2 。 收到向量为 y = c+ ε 。 2 第2章 线性码 (1) 计算校验向量 a0 Hy T a1 = a2 ∈ F7 ; 4 a3 (2) 若 a0 = a1 = a2 = a3 = 0 ,则 c= y(无错) ; (3) 若 a0 ≠ 0 并且(a0 ,a1 ,a2 ) = α(a1 ,a2 ,a3 ) ,其中 α 为F 7 中非零元素 ,则只 有一位错 ,错位为 a1 ,错值为 a0 ; a0 (4) 若(2)和(3)均不成立 ,则 a1 - a0 a2 ≠ 0 ,并且方程 2 Z - 2 a1 a2 - a0 a3 a2 - a1 a3 Z+ 2 = 0 2 a1 - a0 a2 a1 - a0 a2 2 在F 7 中有两个不同的解 i 和 j 。 这时 ,传输时有两位错误 ,错位为 i 和 j ,而错值 分别为由式(7)算出的 x 和 y 。 比如说收到向量为 y = (1114131 ) ,并且错位的个数 ≤ 2 。 按照上面的算法 先计算校验向量 1 a0 a1 a2 = Hy a3 T = 1 1 1 1 1 1 1 0 1 2 3 4 5 6 0 1 4 2 2 4 1 0 1 1 6 1 6 6 1 1 4 = 1 3 5 5 0 。 2 1 由于 a0 ≠ 0 并且(a0 ,a1 ,a2 ) = (5 ,5 ,0)和(a1 ,a2 ,a3 ) = (5 ,0 ,2 )不成比例 ,可知有 两位错误 。 再计算 a2 - a1 a3 a1 a2 - a0 a3 -5·2 -5·2 = = 1, σ= = = 1。 2 2 2 2 a1 - a0 a2 5 a1 - a0 a2 5 2 τ= 而方程 Z - σZ + τ= Z - Z + 1 在F 7 中的两个解为 2 2 1 ± 1 -4 1± 4 1±2 = = = 3和5。 2 2 2 于是两个错位为 i = 3 和 j = 5 。 而错值分别为 x ,y ,其中 x = ja0 - a1 a1 - i a0 5·5 -5 5 -3·5 = = 3, y = = = 2。 j - i 2 j - i 2 37 38 纠错码的代数理论 于是错误向量为 ε= (0003020) ,而发出的码字为 c = y - ε = (1114131) - (0003020) = (1111111) 。 习题 7 对于上例中的F 7 上线性码 C ,如果收到向量为 y = (0265626) ,(2410142)和(2315324 ) ,并且在传输时错位数均 ≤ 2 。 试将 它们恢复成码字 。 第2章 线性码 2 .4 二元 Reed唱Muller 码 本节介绍一类重要的线性码 :Reed唱M uller 码 。 为简单起见 ,我们只讨论 q = 2 的情形(二元码) 。 这种线性码有许多等价的刻画方式 (用有限几何 ,或者 用多项式环F 2 [x]) 。 我们这里用最容易接受的布尔函数刻画方式 。 定义 2 .4 .1 设 m ≥ 1 。 向量空间F 2 到F 2 的每个映射 m f = f (x1 ,… ,x m ) :F 2 → F 2 , (a1 ,… ,am ) | → f (a1 ,… ,am ) m 叫作 m 元布尔(Boole)函数 。 由于F 2 中共有 2 个元素 ,对F 2 中每个元素(a1 ,… ,am ) ,f 的取值均有两种 m m m m 可能(0 或 1) ,所以 m 元布尔函数共有 2 个 。 我们用 Bm 表示全体 m 元布尔函 2 2 数构成的集合 ,|Bm |= 2 m 。 现在我们证明 :每个 m 元布尔函数 f (x1 ,… ,x m )都可表示成关于 x1 ,… , x m 的多项式形式 ,并且系数属于F 2 。 首先注意 ,对每个 i(1 ≤ i ≤ m) ,x i 和 x i 是 2 同一个F 2 上的函数(即同时取值为 0 或同时取值为 1) 。 于是对每个正整数 t ,看 成F 2 上的函数均有 x i = x i 。 这就表明 :如果 f (x1 ,… ,x m )可以表示成 x1 ,… ,x m t 的多项式(系数属于F 2 ) ,则可使每个单项式中 x i 的次数均 ≤ 1 。 定理 2 .4 .2 每个 m 元布尔函数 f (x1 ,… ,x m )均可惟一地表示成 m f (x1 ,… ,x m ) = ∑ ∑ c(i1 ,… ,ir )x i1 x i2 … x i r , r = 0 1 ≤ i1 < … < i r ≤ m (8) 其中 c(i1 ,… ,ir ) ∈ F 2 (这里对 r = 0 时 ,规定 x i1 x i2 … x i r = 1) 。 事实上 ,我们有 f (x1 ,… ,x m ) = ∑ m ( a1 ,… ,am ) ∈ F 2 f (a1 ,… ,am )(x1 + a1 + 1) … (x m + am + 1) 。 (9) 证明 我们先证式(9) ,由于 x i + ai + 1 = 0 , 若 x i = ai + 1 (即 x i ≠ ai ) , 1 , 若 x i = ai , 可知 (x1 + a1 + 1) … (x m + am + 1) = 1 , 若(x1 ,… ,x m ) = (a1 ,… ,am ) , 0 , 否则 。 39 40 纠错码的代数理论 所以对每个(b1 ,… ,bm ) ∈ F 2 ,在式(9)右边的求和式中 ,当(x1 ,… ,x m ) = (b1 ,… , m bm )时 ,只剩下(a1 ,… ,am )为(b1 ,… ,bm )的那一项不为零 ,于是在 ( x1 ,… ,x m ) = (b1 ,… ,bm )时 ,式(9)右边的多项式取值为 f (b1 ,… ,bm ) ,这正是 f ( x1 ,… ,x m )在 (x1 ,… ,x m ) = (b1 ,… ,bm )的取值 。 所以式(9)两边是同一个布尔函数 。 由式(9)右边可知每项展开后 ,每个 x i 的次数均 ≤ 1 。 所以再合并同类项之 m 后 ,就可表示成式(8)的形式 ,它是 2 个单项式 1 ,x1 ,… ,x m ,x1 x2 ,x1 x3 ,… ,x m - 1 x m ,x1 x2 x3 ,… ,x1 x2 … x m (10) 的F 2 唱线性组合 ,其中单项式 x i1 … x i r 的系数 c (i1 ,… ,ir )属于F 2 。 由于这 2 个 m m 系数每个均有两种选取可能 ,从而式 (8 )右边的表达式共有 22 种可能 ,而 m 元 m 布尔函数也恰有 2 个 。 这就表明每个 m 元布尔函数均可惟一地表示成式 (8 ) 右边的形式 。 证毕 。 2 定理 2 .4 .2 表明 :m 元布尔函数集合 B m 是以式 (10 )中的单项式为一组基 m 的 2 维F 2 唱向量空间 。 例7 对于 m = 3 ,设三元布尔函数 f (x1 ,x2 ,x3 )在(000) ,(010) ,(111)处取 3 值为 1 ,而在F 2 的其余 5 个向量处取值为 0 。 由式(9)知 f (x1 ,x2 ,x3 ) = ∑ ( a1 ,a2 ,a3 ) ∈ F2 f ( a1 ,a2 ,a3 ) = 1 (x1 + a1 + 1)(x2 + a2 + 1)(x3 + a3 + 1) 3 = (x1 + 1)(x2 + 1)(x3 + 1) + (x1 + 1)x2 (x3 + 1) + x1 x2 x3 = 1 + x1 + x3 + x1 x3 + x1 x2 x3 。 m 元布尔函数 f 的定义域F 2 是有限集合 ,可以按 0 ,1 ,2 ,… ,2 - 1 的二进 m m m m 制方式把F 2 中 2 个向量排成次序 : v 0 = (00 … 0) ,v 1 = (10 … 0) ,v 2 = (010 … 0) ,… ,v n- 1 = (11 … 1) (n = 2 ) , m 即对于 0 ≤ i ≤ n - 1 ,由 i 的 二 进 制 展 开 i = a0 + a1 2 + … + am - 1 2 m-1 给出 v i = (a0 a1 … am - 1 ) 。 然后便可把每个 m 元布尔函数 f = f ( x1 ,… ,x m )依次在这 些点上的值表示成一个F 2 上长为 n( = 2 )的向量 : m cf = ( f (v 0 ) ,f (v 1 ) ,… ,f (v n - 1 )) ∈ F 2 。 n 这时 ,函数的加法和乘法运算分别对应于向量按分量进行加法和乘法运算 : cf + g = ( f (v 0 ) + g(v 0 ) ,… ,f (v n - 1 ) + g(v n - 1 )) , cf g = ( f (v 0 )g(v 0 ) ,… ,f (v n - 1 )g(v n- 1 )) 。 第2章 线性码 例 8 对于 m = 2 ,n = 2 = 4 ,共有 2 = 16 个二元布尔函数 f (x1 ,x2 ) :F 2 → F 2 。 它们的多项式表示和向量表示如下所示 : m 函 数 f (x1 ,x2 ) n 自变量 v i 0 1 + x1 + x2 + x1 x2 x1 + x1 x2 1 + x2 x2 + x1 x2 2 (00) , (10) , (01) , (11) 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 1 + x1 + x2 x1 0 1 0 1 0 0 1 1 0 0 0 0 1 1 1 1 1 + x1 + x1 x2 x1 + x2 + x1 x2 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 + x1 x1 + x2 1 + x1 x2 x1 x2 1 + x2 + x1 x2 x2 1 习题 1 对每个有限域F q ,函数 f (x1 ,… ,x m ) :F q → F q 叫作F q 上的 m 元广 义布尔函数 。 证明 : (1) 每个F q 上的 m 元广义布尔函数 f (x1 ,… ,x m )均可表示成 m f (x1 ,… ,xm ) = ∑ m (a1 ,… ,am ) ∈ F q f (a1 ,… ,am )(1 - (x1 - a1 ) ) … (1 - (xm - am ) ) ; q-1 q-1 (2) 每个F q 上的 m 元广义布尔函数 f 均可惟一地表示成 x 1 ,… ,x m 的多项 式 ,系数属于F q ,并且对每个 i(1 ≤ i ≤ m) ,多项式对 x i 的次数均不超过 q - 1 。 习题 2 证明存在函数 f = f ( x) : Z4 → Z4 (这里 Z4 = Z /4 Z ) ,它不能表示 4 2 3 成 x 的多项式 (系数属于 Z4 ) 。 (提示 : x 和 x 是 Z4 上的同一个函数 ,2 x 和 2 x 也是 Z4 上同一个函数 。) 定义 2 .4 .3 设 m ≥ 1 ,n = 2 ,0 ≤ r ≤ m 。 向量空间F 2 中的子集合 m n RM (r ,m) = {cf ∈ F 2 | f ∈ Bm ,deg f ≤ r} 叫作 r 阶的二元 Reed唱M uller 码(简称 RM 码) 。 n 41 42 纠错码的代数理论 由于 Bm 中所有满足 deg f ≤ r 的 m 元布尔函数形成F 2 上的向量空间 ,可知 RM (r ,m)是F 2 的一个向量子空间 ,即 RM (r ,m)是二元线性码 。 码长为 n = 2 。 次数 ≤ r 的所有单项式所对应的码字 {cf | f = x i1 x i2 … x i t (0 ≤ t ≤ r ,1 ≤ i1 < i2 < … < it < m)} 形成线性码 RM (r ,m)的一组F 2 唱基 。 从而此码的信息位数为 r m m m m k = k(r ,m) = dim F2 RM (r ,m) = + + … + = ∑ 。 t=0 0 1 r t 现在决定码 RM (r ,m)的最小距离 。 n 对于每个 m 元布尔函数 f = f ( x1 ,… ,x m ) ,向量 cf ∈ F 2 的 Hamming 权 n w (cf )就是函数 f 在F 2 上取值为 1 的个数 。 我们用 N m ( f = 1)和 N m ( f = 0)分别 表示 m 元布尔函数 f 取值为 1 和 0 的个数 ,则 n m N m ( f = 1) = w (cf ) , N m ( f = 1) + N m ( f = 0) = 2 (n = 2 ) 。 n m 引理 2 .4 .4 设 m ≥ 1 ,f = f (x1 ,… ,x m )是 m 元布尔函数 ,deg f = r m- r r ≤ m) 。 则 N m ( f = 1) ≥ 2 。 并且当 r ≤ m - 1 时 N m ( f = 1)为偶数 。 (0 ≤ 证明 先证最后论断 。 对每个次数 ≤ m - 1 的单项式 g = x i1 … x i t (t ≤ m - 1 ,1 ≤ i1 < i2 < … < it ≤ m) ,N m (g = 1) = 2 为偶数 ,即 w (cg ) = 2 。 而每个次 n 数 ≤ m - 1 的多项式 f 均是这样一些多项式之和 ,即 cf 为 F 2 中一些 Hamming 权为偶数的向量之和 ,可知 w (cf ) = N m ( f = 1)仍为偶数 。 m- r 现在对于 deg f = r ,0 ≤ r ≤ m ,证明 N m ( f = 1) ≥ 2 。 当 m = 1 时易知命题 成立 。 现在设命题对 m - 1 成立(m ≥ 2) ,我们来证明命题对 m 也成立 。 m 当 r = 0 时 ,f ≡ 1 ,N m ( f = 1) = 2 。 当 r = m 时 ,f 厨 0 ,从而 N m ( f = 1) ≥ 1 。 这表明命题对 r = 0 和 r = m 情形成立 。 以下设 1 ≤ r ≤ m - 1 。 我们可把 r 次 m 元布尔函数 f (x1 ,… ,x m )惟一地写成 f = x m h(x1 ,… ,x m - 1 ) + g(x1 ,… ,x m - 1 ) , 其中 h ,g ∈ Bm - 1 ,deg h ≤ r - 1 ,deg g ≤ r 。 如果 h ≡ 0 ,则 f = g(x1 ,… ,x m - 1 )不依 赖于 x m 。 当 g(a1 ,… ,am - 1 ) = 1 时 ,f (a1 ,… ,am - 1 ,0 ) = f ( a1 ,… ,am - 1 ,1 ) = 1 。 于是 m-1 - r N m ( f = 1) = 2 N m - 1 (g = 1) ≥ 2 · 2 (由归纳假设) m- t m- r m- t =2 。 如果 h 厨 0 ,则当 h( a1 ,… ,am - 1 ) = 1 时 ,f ( a1 ,… ,am - 1 ,am ) = am + g ( a1 ,… , am - 1 ) 。 而当 h(a1 ,… ,am - 1 ) = 0 时 ,f (a1 ,… ,am - 1 ,am ) = g(a1 ,… ,am - 1 ) 。 于是 N m ( f = 1) = N m - 1 (h = 1) + 2 N m - 1 (h = 0)N m - 1 (g = 1) 第2章 ≥ N m - 1 (h = 1) ≥ 2 (m - 1) - (r - 1) =2 m- r 线性码 。 定理 2 .4 .5 设 m ≥ 1 ,0 ≤ r ≤ m 。 则 m m- r (1) 二元 RM 码 RM (r ,m)的参数为[n ,k ,d] = [2 ,k(r ,m) ,2 ] ,其中 r m k(r ,m) = ∑ ; t= 0 t (2) 当 0 ≤ r ≤ m - 1 时 ,RM (r ,m) = RM (m - r - 1 ,m) 。 ⊥ 证明 (1) 我们已经决定了 n 和 k 的值 ,并且引理 2 .4 .4 表明对 RM (r ,m) m- r 。 于是 d ≥ 中每个非零码字 cf ( f ∈ Bm ,0 ≤ deg f ≤ r) ,w(cf ) = N m ( f = 1 ) ≥ 2 2 m- r 。 对于 f = x1 x2 … x r ,易知 cf ∈ RM (r ,m) ,w(cf ) = N m ( f = 1 ) = 2 m- r 。 这表 明 d= 2 。 (2) RM (r ,m)中码字为 cf ,其中 f ∈ Bm ,deg f ≤ r 。 RM (m - 1 - r ,m)中码 字有形式 cg ,其中 g ∈ Bm ,deg g ≤ m - 1 - r 。 于是 deg( f g) ≤ m - 1 ,由引理 2 .4 .4 知 m- r N m ( f g = 1)是偶数 。 而F 2 中向量 cf 和 c g 的内积为 n (cf ,cg ) = ∑ m a∈ F2 f (a)g(a) = ∑ m a∈ F2 ( f g)(a) = N m ( f g = 1) = 0 ∈ F 2 。 即 RM (r ,m)中码字和 RM (m - 1 - r ,m)中码字均正交 。 于是 RM ( r ,m) 澈 RM (m - 1 - r ,m) ,但是 r m -1 - r m m dim RM (r ,m) + dim RM (m - 1 - r ,m) = ∑ + ∑ t= 0 λ = 0 t λ ⊥ r = ∑ t= 0 r = 可知 RM (r ,m) = RM (m - 1 - r ,m) 。 ∑ t= 0 m + t m + t m m-λ m m m = 2 = n。 ∑ t= r +1 t m-1 - r ∑ λ= 0 ⊥ 例9 RM (0 ,m) = {c0 = (0 ,… ,0) ,c1 = (1 ,… ,1)} ,参数为[n ,k ,d] = [2 , m 1 ,2 ] ,生成阵为(11 … 1) 。 这也是对偶码 RM (m - 1 ,m)的校验阵 ,即对于(c1 ,… , m cn ) ∈ F 2 , n (c1 ,… ,cn ) ∈ RM (m - 1 ,m) 骋 c1 + … + cn = 0 ∈ F 2 , 所以 RM (m - 1 ,m)即是 F 2n 中所有 Hamming 权为偶数的向量组成的线性码 。 参数为[n ,k ,d] = [2 ,2 - 1 ,2] 。 m m 43 44 纠错码的代数理论 例 10 RM (1 ,m)是以 cf ( f = 1 ,x1 ,x2 ,… ,x m )为基的二元线性码 ,由定理 2 .4 .5 知道参数为[n ,k ,d] = [2 ,m + 1 ,2 ] 。 对于每个 0 ≤ a ≤ 2 - 1 ,记 a 的 二进制展开为 m-1 a = a1 + a2 · 2 + … + am · 2 (ai ∈ {0 ,1}) , m m-1 m 则函数 x i 在 (a1 ,a2 ,… ,am ) ∈ F 2 处的取值为 ai 。 所以线性码 RM (1 ,m)有生 成阵 c1 1 1 … 1 1 1 … 1 m cx1 01 11 … (2 - 1)1 0 m cx2 G= = ⁝ cx m 02 12 … ⁝ ⁝ ⁝ 0m 1m (2 m ⁝ 0 ⁝ (2 - 1)m 0 m … - 1)2 = , G1 其中 G1 是F 2 上 m 阶方阵 ,它的诸列恰好是长为 m 的 2 - 1 个二元非零向量 。 于是 RM (1 ,m)的收缩码 n-1 RM (1 ,m)′ = {(c2 ,… ,cn ) ∈ F 2 | (0 ,c2 ,… ,cn ) ∈ RM (1 ,m)} 是以 G1 为生成阵的二元线性码 。 由于以 G1 为校验阵的线性码是参数为[n ,k , m d] = [2 - 1 ,2 - m - 1 ,3 ]的二元 Hamming 码 C ,所以 RM (1 ,m)′就是这个 ⊥ Hamming 码的对偶码 C 。 RM (1 ,m)中码字为 n m cf = ( f (0 ,… ,0) ,f (1 ,0 ,… ,0) ,… ,f (1 ,… ,1)) ∈ F 2 (n = 2 ) , 其中 deg f ≤ 1 ,即 f = b0 + b1 x1 + … + bm x m (bi ∈ F 2 ) 。 当 f ≡ 0 时 ,w (cf ) = 0 ;当 m m f ≡ 1 时 ,w(cf ) = n = 2 。 而对其余 2 m w(cf ) = 2 m-1 m+ 1 - 2 个 f ,b1 ,… ,bm 不全为零 ,易知这时 = n/2 。 这表明除了全 0 和全 1 码字之外 ,RM (1 ,m)中所有码字的 Hamming 权均为 2 m - 1 。 进而 : cf 去 掉 第 1 位 属 于 RM (1 ,m)′ 骋 f (0 ,… ,0 ) = 0 骋 f = b1 x1 + b2 x2 + … + bm x m 。 可知 RM (1 ,m)′中所有非零码字的 Hamming 权均为 2 m m-1 的参数为[n ,k ,d] = [2 - 1 ,m ,2 ] 。 m-1 。 特别地 ,RM (1 ,m)′ 习题 3 证明参数为 [2 - 1 ,2 - 1 - m ,3 ]的二元线性码为 (n = 2 )C = {(a2 ,… ,an ) ∈ F 2n - 1 |有 a1 ∈ F 2 ,使(a1 ,a2 ,… ,an ) ∈ RM (m - 2 ,m)} 。 m m 习题 4 对每个 r ,0 ≤ r ≤ m ,求 RM (r ,m)的收缩码 n-1 RM (r ,m)′ = {(c2 ,… ,cn ) ∈ F 2 | (0 ,c2 ,… ,cn ) ∈ RM (r ,m)} 和它的对偶码的参数[n ,k ,d] 。 m 第2章 线性码 习题 5 设 A 是F 2 上的 m 阶可逆方阵 ,a= (a1 ,… ,am ) ∈ F 2 。 (1) 证明映射 m σA ,a :F 2 → F 2 , v | → σA ,a (v ) = vA + a 是一一映射 。 并且所有这样的映射全体对于合成运算形成群(叫作F 2 上的 m 阶 仿射群 ,表示成 A G(m ,F 2 )) 。 (2) 对每个 m 元布尔函数 f = f (x1 ,… ,x m )和 σ ∈ A G(m ,F 2 ) ,定义一个新 m m 的 m 元布尔函数 σf ,其中对每个v ∈ F 2 , (σf )(v ) = f (σ(v )) 。 证明对每个 r(0 ≤ r ≤ m)和 f ∈ Bm ,σ ∈ A G (m ,F 2 ) ,若 cf ∈ RM ( r ,m) ,则 cσ( f ) ∈ RM (r ,m) 。 从而每个仿射变换 σ 都以这种方式给出二元 RM 码 RM ( r , m)的一个自同构 。 m 45 46 纠错码的代数理论 2 .5 MacWilliams 恒等式 参数[n ,k ,d]是 q 元线性码等价类的不变量 ,但是它不是“完全不变量” ,即 在一般情况下 ,可以有彼此不等价的 q 元线性码具有同样的参数[n ,k ,d] 。 我们 需要研究线性码一些更精细的不变量 。 定义 2 .5 .1 设 C 是参数为 [n ,k ,d]的 q 元线性码 。 对每个 i ,0 ≤ i ≤ n ,我 们用 A i 表示 C 中 Hamming 权为 i 的码字个数 。 即 A i = # {c ∈ C | w(c) = i} (0 ≤ i ≤ n) 。 (11) 易知 A 0 = 1 (权为 0 的只有码字(0 ,… ,0)) , A i 为非负整数 , A0 + A1 + … + A n = | C | = q , k d = min{ i | 1 ≤ i ≤ n , A i ≥ 1} 。 关于 x 和 y 的多项式 f C (x ,y) = n ∑ i= 0 Ai x 叫作 q 元线性码 C 的权多项式 。 于是 n- i y ∈ Z [x ,y] i f C (1 ,0) = A 0 = 1 , f C (1 ,1) = n ∑ i= 0 Ai = q 。 k 等价的线性码有同样的{ A 0 ,A 1 ,… ,A n } ,从而有同样的权多项式 。 下面是 M acWilliams 发现的一个美妙恒等式 。 定理 2 .5 .2 设 C 是参数为[n ,k]的 q 元线性码 ,C 是它的对偶码 。 则 -k f C ⊥ (x ,y) = q f C (x + (q - 1)y ,x - y) 。 (12) ⊥ 证明 记 f C (x ,y) = n ∑ i= 0 Ai x n- i y , f C ⊥ (x ,y) = i n ∑ i= 0 Ai x ⊥ n- i y , i 其中 A i 如式 (11 )所定义 ,而 A i 为线性码 C 中权 i 码字的个数 。 为证恒等 ⊥ ⊥ 式(12) ,我们需要利用迹映射(设 q = p ,其中 p 为素数 ,m ≥ 1) m m -1 T :F q → F p , T(α) = α + α + α + … + α (α ∈ F q ) 。 这个映射有如下三条基本性质 : (1) T 是F q唱线性映射 ,即对任何 α ,β∈ Fq ,a ,b ∈ Fp ,均有 p p 2 p 第2章 线性码 T(aα + bβ) = aT (α) + bT (β) ; (2) T 是满射 ; (3) 记 ζ= e p (复数) ,则对每个 α ∈ Fq , 2πi ∑ζ T(α x ) q, 若α= 0, = x ∈ Fq (13) 0 , 若 α ∈ Fq 。 倡 现在我们对每个 u= (u1 ,… ,un ) ∈ F qn ,定义关于 z 的复系数多项式 gu (z ) = ∑ n v ∈ Fq ζT((u ,v)) z w(v) 其中(u ,v )为F q 中的内积 ,w(v )是 v 的 Hamming 权 。 于是 n gu (z) = ∑ v1 ,… ,v n ∈ Fq ∑ = v 1 ∈ Fq ζT( u1 v1 + … + unv n ) z w( v1 )+ … + w( v n ) ζ T( u1 v1 ) z w(v1 ) … ∑ v n ∈ Fq ζ T( unv n ) z w(v n ) , (14) 其中 0 , 若 vi = 0 , w(v i ) = 1 , 若 vi ∈ F q 。 倡 当 ui = 0 时(即 w(ui ) = 0 时) , ∑ v i ∈ Fq ζ T( u i v i ) z w( v i ) = ∑ v i ∈ Fq z w( v i ) = 1 + (q - 1)z ; 而当 ui ≠ 0 时(即 w(ui ) = 1 时) ,由式(13)可算出 ∑ v i ∈ Fq ζ T( u i v i ) z w(v i ) ∑ = 1+ ζ T( u i v i ) 倡 v i ∈ Fq z = 1+ z ∑ ζ T( u i v i ) 倡 v i ∈ Fq = 1 - z。 综合以上两种情形 ,代入式(14)右边 ,可知 gu (z ) = (1 - z ) w(u) n- w (u) [1 + (q - 1)z ] 从而 ∑ u∈ C g u (z ) = ∑ u∈ C n = ∑ i= 0 (1 - z)w( u) [1 + (q - 1)z ]n - w( u) A i [1 + (q - 1)z ] n-i (1 - z) 。 i (15) 另一方面 ,又有 ∑ u∈ C g u (z ) = ∑ ∑ u∈ C v ∈ F n q ζ T((u ,v)) z w(v) = ∑ n v∈ Fq z w( v) ∑ζ u∈ C T(( u ,v)) (16) 我们现在证明 : ∑ u∈ C ζ T(( u ,v)) q , 若v ∈ C , 0 , 否则 。 k = ⊥ (17) 47 48 纠错码的代数理论 这是因为 :若v ∈ C ,则当 u∈ C 时(u ,v ) = 0 。 于是 ⊥ ∑ζ T(( u ,v)) u∈ C = | C|= q 。 k ∑1 = u∈ C 若 v 臭 C ,则存在 u0 ∈ C ,使 (u0 ,v ) = α ≠ 0 ,即 α ∈ F q 。 由于迹映射 T : F q → -1 F p 是满射 ,可知有 β ∈ F q 使得 T (β) = 1 ∈ F p 。 取 u1 = α βu0 ∈ C ,则 ⊥ 倡 T((u1 ,v)) ζ = ζ T(α -1 β( u0 ,v)) T(β) = ζ = ζ≠ 1, 于是 ∑ζ T(( u ,v)) u∈ C ∑ζ = ∑ζ = T((u1 ,v)) 由于 ζ (当 u 跑遍加法群 C ,u + u1 也跑遍 C) T(( u+ u1 ,v)) u∈ C T(( u ,v))+ T(( u1 ,v)) T(( u1 ,v)) = ζ u∈ C = ζ ≠ 1 ,可知 ∑ζ T(( u ,v)) ∑ζ T(( u ,v)) 。 u∈ C = 0 。这就证明了式(17) 。 u∈ C 将式(17)代入式(16)右边 ,得到 ∑ u∈ C g u (z) = qk ∑ v∈ C z w(v) = qk ⊥ n Ai z i 。 ⊥ ∑ i= 0 (18) 由式(15)和式(18)给出 n A i [1 + (q - 1)z] n- i ∑ i= 0 令 z= (1 - z) = q i k n ∑ i= 0 Ai z , ⊥ i y n 代入上式再将等式两边乘以 x ,便得到恒等式(12) 。 x 当 C 是参数为 [n ,k ,d]的 q 元线性码时 ,设对偶码 C 的参数为 [n ,k , ⊥ ⊥ ⊥ ⊥ d ] ,则 n = n ,k = n - k ,但是 d 不容易决定 。 如果知道码 C 的权多项式 ⊥ f C (x ,y) = f C ⊥ (x ,y) = n Ai x ∑ i= 0 n ∑ i= 0 n- i Ai x ⊥ ⊥ ⊥ y ,即知道{ A 0 ,… ,A n } ,则由 M acWilliams 恒等式可求出 i n- i y ,特别地可得到码 C 的最小距离 d (它是满足 A i ≠ i ⊥ ⊥ ⊥ 0 的最小正整数 i) 。 现在我们计算一些线性码的权多项式 。 例 11 0 阶的二元 RM 码 RM (0 ,m)只有两个码字 :长为 n = 2 的全 0 码 n n 字和全 1 码字 。 所以它的权多项式为 x + y 。 由定理 2 .5 .2 知它的对偶码(即 m - 1 阶的二元 RM 码)RM (m - 1 ,m)有权多项式 n n n- i i n n 1 (x + y) + (x - y) = ∑ x y (19) 2 i= 0 i m 2| i 第2章 线性码 事实上 ,RM (m - 1 ,m)的校验阵为 RM (0 ,m)的生成阵(11 … 1 ) ,所以 RM (m - 1 ,m)中码字即是与(11 … 1)正交的F 2 中的向量 ,也即是 F 2 中权为偶数的全部向 n n n 个 ,由此即知 RM (m - 1 ,m)的权多 i 量 。 而当 2 |i 时 ,F 2 中权为 i 的向量共有 n 项式有公式(19)的形式 。 更一般地 ,对任一个素数方幂 q ,以长为 n 的全 1 向量(11 … 1)为生成阵的 q 元线性码 C = {(a … a) | a ∈ F q } 具有参数[n ,k ,d] = [n ,1 ,n] ,权多项式为 n n f C (x ,y) = x + (q - 1)y 。 对偶码 C 以(11 … 1)为校验阵 ,从而 ⊥ C = {c = (c1 ,… ,cn ) ∈ F q | c1 + c2 + … + cn = 0} 。 n ⊥ 由定理 2 .5 .2 ,C 的权多项式为 ⊥ f C ⊥ (x ,y) = 1 n n [(x + (q - 1)y) + (q - 1)(x - y) ] , q 易知 C 的参数为[n ,n - 1 ,2] ,而 C 中权 2 的码字个数 A2 为 f C ⊥ (x ,y)中 x 的系数 ,于是 ⊥ ⊥ ⊥ A2 = ⊥ 1 q n n (q - 1)2 + (q - 1) 2 2 = (q - 1) n-2 y 2 n 。 2 事实上 ,C 中每个权 2 码字 c = (c1 ,… ,cn )恰有两位数字不为 0 ,这两位 i ,j 共有 ⊥ n 个选取方式 ,而对固定的两位 i 和 j (1 ≤ i ≠ j ≤ n) ,要求 ci + cj = 0 。 在Fq 中的 2 非零解共 q - 1 个 。 于是 A 2 = (q - 1) ⊥ 例 12 码字为 n 。 2 1 阶的二元 RM 码 RM (1 ,m)参数为[n ,1 + m ,2 m-1 m ](n = 2 ) 。 每个 cf = ( f (00 … 0) ,f (10 … 0) ,f (010 … 0) ,… ,f (11 … 1)) , 其中 (ai ∈ F 2 ) 。 f (x1 ,… ,x m ) = a0 + a1 x1 + … + am x m 对于 a1 = a2 = … = am = 0 的情形 ,w(c0 ) = 0 ,w (c1 ) = n 。 而当 a1 ,… ,am 不全为 零时 ,方程 a0 + a1 x1 + … + am x m = 1 在F 2 中共有 2 w (cf ) = 2 m-1 = m-1 个解 (x1 ,… ,x m ) 。 于是 n 。 这表明二元线性码 RM (1 ,m) = C 的权多项式为 2 49 50 纠错码的代数理论 f C (x ,y) = x + (2 n m+ 1 - 2)x n/2 y n/2 + y , n 从而 m - 2 阶二元 RM 码 C = RM (m - 2 ,m)的权多项式为 1 (x + y)n + (2 m+ 1 - 2)(x2 - y2 )n/2 + (x - y)n 。 (20) f C ⊥ (x ,y) = m+ 2 1 ⊥ 我们知道当 m ≥ 2 时 ,C 的参数为 [n ,n - m - 1 ,4] 。 事实上 ,由于 RM (m - 2 , m) 彻 RM (m - 1 ,m) ,可知 RM (m - 2 ,m)中码字的权均为偶数 (这件事也可由 ⊥ ⊥ n-2 2 式(20)看出) 。 C 中权 2 码字的个数 A 2 为 f C ⊥ (x ,y)中 x y 的系数 ,即 n n/2 n ⊥ m+ 1 1 A 2 = m+ 1 - (2 - 2) + 2 2 1 2 ⊥ 1 n(n - 1) - (2 n - 2) · n = 0 。 m+ 1 2 2 ⊥ n-4 4 ⊥ 而 A 4 应为 f C (x ,y)中 x y 的系数 ,即 n n/2 n ⊥ 1 A 4 = m+ + (2 n - 2) + = n(n - 1)(n - 2) > 0 。 1 24 2 4 2 4 ⊥ 从而 C 的最小距离为 4 。 = 例 13 我们在 2 .4 节证明了 ,参数为[n ,k ,d] = [2 - 1 ,2 - 1 - m ,3]的二 元 Hamming 码是 n-1 RM (1 ,m)′ = {(c2 ,… ,cn ) ∈ F 2 | (0 ,c2 ,… ,cn ) ∈ RM (1 ,m)} m m n n 的对偶码 。 二元 RM 码 RM (1 ,m)的权多项式为 x + (2 - 2) x2 y2 + y 。 易知 RM (1 ,m) = {(0 ,c2 ,… ,cn ) ,(1 ,c2 + 1 ,… ,cn + 1) | (c2 ,… ,cn ) ∈ RM (1 ,m)′} 。 如果 w H (c2 ,… ,cn ) = l ,则 w H (0 ,c2 ,… ,cn + 1 ) = l ,w H (1 ,c2 + 1 ,… ,cn + 1 ) = n - l 。 从而 RM (1 ,m)′中每个权 l 的码字对应于 RM (1 ,m)中权分别为 l 和 n - l 的 两个码字 。 由此事实和 RM (1 ,m)的权多项式不难得到 RM (1 ,m)′的权多项式 n n m+ 1 n n 为 x n - 1 + (2 m - 1)x 2 - 1 y 2 。 而参数[2 m - 1 ,2 m - 1 - m ,3 ]的二元 Hamming 码 C 是 RM (1 ,m)′的对偶 。 从而二元 Hamming 码 C 的权多项式为 f C (x ,y) = 2 -m (x + y) n-1 n + (2 - 1)(x + y) 2 m -1 n n (x - y) 2 = 2 (x + y) + (2 - 1)(x - y ) 2 (x - y) (n = 2 ) 。 n-4 3 特别地 ,这个二元 Hamming 码 C 中权为 3 的码字个数为 f C ( x ,y)中 x y 中 的系数 ,即为 n -1 n-1 1 (n - 1)(n - 2)(n - 3) + (n - 1)(n - 2) -m m 2 2 + (2 - 1) = 6 2 n 3 1 -m n-1 m 2 2 -1 m 第2章 = 线性码 1 (n - 1)(n - 2) 。 6 q 元线性码 C 的权多项式 f C ( x ,y) = n d] ,因为 n = deg f C (x ,y) ,k 由 q = k n ∑ i= 0 Aix n- i y 可决定 C 的参数 [n ,k , i A i = f C (1 ,1)所决定 ,而 d 由 A 2 = … = ∑ i= 0 A d - 1 = 0 ,A d ≥ 1 所决定 。 一般来说 ,f C (x ,y)(即 A i (0 ≤ i ≤ n))给出线性码更多 的信息 。 具有同样参数[n ,k ,d]的 q 元线性码可能有不同的权多项式 。 例如以 1010 1011 和 为生成阵的两个二元线性码 ,[n ,k ,d]均为[4 ,2 ,2 ] 。 但是它们 0110 0111 4 2 2 4 2 2 3 有不同的权多项式 :前者为 x + 3 x y ,后者为 x + x y + 2 x y 。 下面结果表 明 :对于 M DS 码 ,参数[n ,k ,d]可完全决定其权多项式 。 设 C 是参数[n ,k ,d]的 q 元 M DS 线性码(于是 d = n - k + 1 ) , 定理 2 .5 .3 1 ≤ k ≤ n - 1 。 f C ( x ,y ) = n ∑ i= 0 Ai x n- i y 是 C 的 权 多 项 式 (于 是 A0 = 1 ,A1 = i A2 = … = A d - 1 = 0) 。 则对于 d ≤ w ≤ n , w -d n w - 1 w - d- j j Aw = (q - 1) ∑ ( - 1) q 。 j=0 w j 证明 (21) C 的对偶码 C 也是 M DS 码 ,参数为 [n ,n - k ,d ] ,d = k + 1 。 权 ⊥ n 多项式为 f C ⊥ ( x ,y) = ∑ i= 0 ⊥ Ai x ⊥ n- i y ,其中 A 0 = 1 ,A 1 = A 2 = … = A k = 0 。 i M acWilliams 恒等式给出(令 y = 1) n ∑ i= 0 Ai x n- i ⊥ = f C (x ,1) = ⊥ ⊥ ⊥ ⊥ 1 ⊥ n - k f C (x + q - 1 ,x - 1) q n ⊥ 1 n- i i = n - k ∑ A i (x + q - 1) (x - 1) 。 q i= 0 对于 0 ≤ r ≤ n ,将上式两边对 x 微商 r 次 ,然后令 x = 1 ,得出 n-r ∑ i= 0 = n1- k q = n1- k q A i (n - i)(n - i - 1) … (n - i - r + 1) n ∑ i= 0 r ∑ i= 0 Ai ⊥ Ai ⊥ r ∑ l= 0 r d r - l (x + q - 1)n - i d l (x - 1)i · d xr - l d xl l x= 1 r n-i -r+ i [(n - i)(n - i - 1) … (n - i - r + i + 1)]q · i! i 51 52 纠错码的代数理论 = q r 1 ∑ r -k i= 0 r !(n - i) ! 。 (r - i) !(n - r) ! Ai ⊥ 这给出 1 qk n- i n- r ∑ r i= 0 1 qr Ai = n- i r ∑ n- r i= 0 Ai (0 ≤ r ≤ n) , ⊥ 于是 q n -k r n- i n- r + ∑ r i= d Ai = q -r n (0 ≤ r ≤ k) 。 r (22) 在式(22)中取 r = k - 1 ,给出 q n -k k -1 于是(由于 n - d = k - 1) + Ad = n- d Ad = q k -1 n d - k+ 1 n , k -1 (q - 1 ) ,这表明式 (21 )对 w = d 是正确的 。 一般地 ,若式(21)对于 w = d ,d + 1 ,… ,d + l( ≤ n - 1 )均成立 。 利用式 (22 )(取 r = k - l - 2)可推出式(21)对 w = d + l + 1 也成立(详细推导由读者补足) 。 由此 即证定理 2 .5 .3 。 由于 A i 均是非负整数 ,由定理 2 .5 .3 可给出 M DS 码存在性的进一步必要 条件 。 例如对于参数[n ,k ,d]的 q 元 M DS 码 ,d = n - k + 1 ,n ≥ d + 1 (即 k ≥ 2 ) 。 n 定理 2 .5 .3 给出 A d + 1 = d+ 1 1 (q - 1) ∑ j=0 j ( - 1) d j q 1- j n = d+ 1 (q - 1)(q - d) 。 这就得到这种 M DS 码存在的一个必要条件是 d ≤ q 。 换句话说 , 推论 2 .5 .4 存在 。 若 n ≥ d + 1 ,d > q ,则 q 元 M DS 码 [n ,k ,d](k = n - d + 1 )不 例如 F 4 上 的 线 性 码 [6 ,2 ,5] 不 存 在 ,虽 然 它 满 足 Hamming 界 和 Singleton 界 。 习题 1 不存在参数为[n ,k ,d]的 q 元 MDS 码 ,使得 2 ≤ k ≤ n - q 或者 q ≤ k ≤ n -2 。 习题 2 证明二元 Golay 码 G24 的权多项式为 x 24 + y 24 + 759(x y + x y ) + 2576 x y 。 16 8 8 16 12 12 第2章 线性码 (提示 :对F 2 中每个权 5 向量 v ,v 与 G 24 中恰好一个码字的距离 ≤ 3 。 由此 24 算出 G24 中权 8 码字个数为 759 。) 习题 3 权多项式 。 习题 4 利用 2 .2 节习题 3(1)和 G24 与 G23 的关系 ,给出二元 Golay 码 G23 的 计算三元 Golay 码 G12 和 G11 的权多项式 。 53 3 循 环 码 3畅 1 生成式和校验式 定义 3畅 1畅 1 码长为 n 的 q 元线性码 C 叫作循环码 ,是指若 c = (c0 ,c1 ,… , cn - 1 ) ∈ C ,则 c 的循环移位 (cn - 1 ,c0 ,c1 ,… ,cn - 2 ) ∈ C 。 (从而 c 的任意多次循环 移位所得向量均属于 C 。) 把码字 c = (c0 ,c1 … ,cn - 1 )写成多项式形式 c(x) = c0 + c1 x + … + cn - 1 x n - 1 ∈ F q [x] , deg c(x) ≤ n - 1 。 xc(x) = c0 x + c1 x + … + cn - 2 x 2 则 ≡ cn - 1 + c0 x + … + cn - 2 x 所以看成是商环 n-1 n-1 + cn - 1 x n (mod x - 1) 。 n R = F q [x]/(x - 1) n 中的元素 ,(cn - 1 ,c0 ,c1 ,… ,cn - 2 )恰好对应于 R 中元素 xc ( x) 。 对每个多项式 h(x) ∈ F q [x] ,用 x - 1 除 h(x)的带余除法给出 n h(x) = q(x)(x - 1) + r(x) , q(x) ,r(x) ∈ F q [x] , deg r(x) ≤ n - 1 。 n 从而商环 R 中元素h(x)有惟一的次数 ≤ n - 1 多项式 r ( x ) = r0 + r1 x + … + rn - 1 x n-1 n 作为代表 ,它对应于Fq 中向量(r0 ,r1 ,… ,rn - 1 ) 。 按这种方式 ,我们把集 合Fq 等同于 R ,它们均为Fq 上 n 维向量空间 ,{1 ,x ,… ,x n n-1 }是 R 的一组Fq 唱基 。 F 中的 q 元线性码 C 按上述方式(c 看成 c (x ))等同于 R 的一个Fq唱线性子 n q 空间(仍记为 C) 。 如果 C 又是循环码 ,这相当于 C 满足如下条件 : c(x) ∈ C 痴 xc(x) ∈ C 。 由此易知 :C 是循环码当且仅当 C 是环 R 中的一个理想 。 于是在分析和研究循 环码时 ,我们不仅有线性代数工具 ,还需要抽象代数 ,特别是多项式环Fq [ x]作为 第3章 循环码 工具 。 熟知 R 中每个理想 C 都是主理想 C = (g(x)) = g(x)R = a(x)g(x) ∈ R|a(x) ∈ R , n 并且可取 g(x)是 x - 1 在F q [x]中的首 1 多项式因子 。 循环码 C 和 g (x)是一 一对应的 ,称 g(x)为循环码 C 的生成(多项)式 。 令 n x - 1 = g(x)h(x) , deg g(x) = n - k , deg h(x) = k 。 称 h(x)(F q [x]中首 1 多项式)为循环码 C 的校验(多项)式 。 对于循环码 C = ( g( x ))中每个码字 c(x ) = a( x) g( x ) ∈ R ,用 h( x )去除 a(x)得到 a(x) = q(x)h(x) + r(x) , deg r(x) < k( = deg h(x)) , k-1 其中 q(x) ∈ F q [x] , r(x) = r0 + r1 x + … + rk - 1 x (ri ∈ F q ) 。 于是 c(x) = a(x)g(x) = [q(x)h(x) + r(x)]g(x) = q(x)(x n - 1) + r(x)g(x) k-1 = (r0 + r1 x + … + rk - 1 x )g(x) ∈ R 。 k-1 这就表明 g(x) ,x g(x) ,… ,x g(x)是线性码 C 的一组Fq 唱基(因为每个码字均 是它们的Fq 唱线性组合 ,而它们是Fq 唱线性无关的) 。 所以 C 的维数(信息位数)为 k = deg h(x) 。 并且 C 有生成阵 g0 g1 … gn - k g(x) G= xg(x) = ⁝ x k -1 g0 g1 … gn - k ⁝ ⁝ g0 ⁝ g1 g(x) ⁝ … (k 行 n 列) , gn - k 其中 g(x) = g0 + g1 x + … + gn - k x ,gi ∈ F q ,gn - k = 1 ,g0 ≠ 0 。 类似地 ,考虑循 环码 C 的校验式 k h(x) = h0 + h1 x + … + hk x ∈ F q [x] , (hk = 1 ,h0 ≠ 0) 。 则对每个 f (x) ∈ R , n f (x) ∈ C = (g(x)) 骋 g(x)| f (x) 骋 x - 1 = g(x)h(x)|f (x)h(x) 骋 f (x)h(x) = 0 ∈ R 。 n-1 若 f (x) = v0 + v1 x + … + v n - 1 x = (v0 ,v1 … ,v n - 1 ) (v i ∈ F q ) ,则 n-1 k f (x)h(x) = (v0 + v1 x + … + v n - 1 x )(h0 + h1 x + … + hk x ) n-1 n ≡ s0 + s1 x + … + sn - 1 x (mod x - 1) , 其中 s0 = v0 h0 + v n- 1 h1 + … + v n - k h k , n- k s1 = v1 h0 + v0 h1 + v n - 1 h2 + … + v n - k+ 1 hk , ⁝ sn - 1 = v n- 1 h0 + v n- 2 h1 + … + v n - k - 1 hk 。 (1) 55 56 纠错码的代数理论 所以若 f (x) ∈ C ,则 f ( x ) h( x ) ≡ 0 (mod x - 1 ) ,即 si = 0 (1 ≤ i ≤ n - 1 ) 。 由 式(1)中 si = 0(k ≤ i ≤ n - 1)给出 v0 n H v1 = 0(长为 n - k 的零向量) , ⁝ vn-1 其中 hk H= hk -1 … h1 h0 hk hk -1 … h1 h0 (n - k 行 n 列) 。 筹 筹 筹 筹 hk h k - 1 … h1 h0 由 hk = 1 知 H 的秩为 n - k 。 所以 H 为循环码 C 的一个校验阵 。 ⊥ 我们知道 ,循环码 C 的对偶码 C 以 H 和 G 分别为生成阵和校验阵 ,由矩阵 G 和 H 的形式可以看出定理 3 .1 .2 。 筹 定理 3 .1 .2 q 元循环码 C 的对偶码 C 也是循环码 。 确切地说 ,若 g(x) = n- k k g0 + g1 x + … + gn - k x 和 h(x) = h0 + h1 x + … + hk x 分别为 C 的生成式和校 n 验式 ,其中 gi ,hi ∈ F q ,gn - k = hk = 1 ,x - 1 = g(x)h( x)(从而 g0 h0 = 1 ≠ 0 ) 。 则 对于 g(x)和 h(x)的反向多项式 倡 n- k n- k-1 n- k -1 g (x) = g0 x + g1 x + … + gn - k = x g (x ) , ⊥ h (x) = h0 x + h1 x + … + hk = x h(x ) , ⊥ -1 倡 ⊥ -1 倡 它们给出的首 1 多项式 h (x) = g0 g ( x)和 g (x) = h0 h ( x)分别为循环码 C ⊥ 的校验式和生成式 。 倡 k k-1 k -1 本书中讨论的 q 元循环码 ,均假定码长 n 与 q 互素(好的纠错码均是这种情 n 形) 。 这时 x - 1 在F q 的扩域中没有重根 。 所以它在F q [x]中分解成有限个(设 为 g 个)不同的首 1 不可约多项式之乘积 n x - 1 = p1 (x) … p g (x) 。 n 而 x - 1 在F q [x]中的每个首 1 多项式因子 g(x)均是这 g 个不同因子 p i (x)(1 ≤ g i ≤ g)当中一部分的乘积 。 所以当(n ,q) = 1 时 ,码长为 n 的 q 元循环码共有 2 个 。 循环码理论的一个基本问题是决定这些码的最小距离 ,并且从中发现良好 的纠错码 。 为此 ,我们将用有限域F q 上多项式环F q [x]的理论和性质 ,给出刻画 循环码的其他方式 。 这里先举两个例子 。 第3章 例1 q = 3 ,n = 10 。 x 10 循环码 - 1 在F 3 [x]中分解成 4 个首 1 不可约多项式之积 x - 1 = (x - 1)(x + 1)(x + x + x + x + 1)(x - x + x - x + 1) 。 4 4 3 所以码长为 10 的三元循环码共 2 = 16 个 。 比如 ,取生成式为 g( x) = x - x + 2 x - x + 1 ,给出三元循环码 C = ( g( x))的参数 [n ,k ,d] ,其中 n = 10 ,k = 10 - deg g(x) = 6 。生成阵可取 1 2 1 2 1 0 0 0 0 0 0 1 2 1 2 1 0 0 0 0 0 0 1 2 1 2 1 0 0 0 G= 。 0 0 0 1 2 1 2 1 0 0 0 0 0 0 1 2 1 2 1 0 0 0 0 0 0 1 2 1 2 1 10 5 6 5 由于校验式为 h(x) = (x - 1)/g(x) = (x - 1)(x + 1) = x + x - x - 1 ,可以取 校验阵为 1 1 0 0 0 2 2 0 0 0 0 1 1 0 0 0 2 2 0 0 H= 。 0 0 1 1 0 0 0 2 2 0 0 0 0 1 1 0 0 0 2 2 ⊥ 因为 H 的第 1 和第 6 列线性相关 ,可知 d = 2 。 对偶码 C 有参数 [10 ,4 , d ⊥ ] 。 C ⊥ 也是循环码 ,生成式为 g ⊥ (x) = - ( - x6 - x5 + x + 1 ) = h( x) ,校验式 ⊥ ⊥ ⊥ 为 h (x) = g(x) 。 H 是线性码 C 的生成阵 。 由 H 的形式可知 C 的每个码字 1 1 0 0 0 0 1 1 0 0 5 可表示成 c = (c1 ,2c1 ) ,其中 c1 ∈ F 3 ,是以 H 的前 5 列 为生成 0 0 1 1 0 0 0 0 1 1 ⊥ 阵的三元线性码中的码字 。 此码的最小距离为 2 ,因此 d = 4 。 10 例2 4 3 2 4 3 2 对每个 m ≥ 2 ,取 g(x)为F 2 [x]中一个 m 次本原多项式 ,根据本原多 项式的定义 ,g(x)|x - 1 (n = 2 - 1) ,并且 g(x)的周期为 n ,即 n = 2 - 1 是满 d 足 g(x)|x - 1 的最小正整数 d(关于多项式的周期见本书附录 A ) 。 于是 x n - 1 = g(x)h(x) , deg g(x) = m , deg h(x) = n - m = 2 m - 1 - m 。 m 设 C 是以 g(x)为生成式的二元循环码 ,它的参数为 [n ,k ,d] ,其中 k = 2 - 1 - n l l l′ l m 。 F 2 中 Hamming 权为 1 和 2 的向量可表示成 x (0 ≤ l ≤ n)和 x + x = x (1 - n m m x )(0 ≤ l < l′ ≤ n) 。 由于 g(x)的周期为 n ,可知它们不可能为 g(x)的倍式 ,所 以 C 中没有权为 1 和 2 的非零码字 。 于是 d ≥ 3 。 再由 Hamming 界可知 d = 3 。 l′ - l 57 58 纠错码的代数理论 于是 C 与二元 Hamming 码有同样参数[n ,k ,d] = [2 - 1 ,2 - 1 - m ,3] 。 C 的 m m 校验阵 H 是F2 上 n - k = m 行 n = 2 - 1 列的矩阵 ,它的 2 - 1 列均是F 2 中的列 m m m 向量 。 由 d = 3 知这些列向量正是 F 2 中彼此不同的全部非零列向量 。 所以 C m 就是二元 Hamming 码 。 换句话说 ,每个二元 Hamming 均等价于循环码 。 C 的对偶码 C 以 g (x) = h (x) = x h(x ⊥ ⊥ n f C ⊥ (x ,y) = x + (2 - 1 )x 2 n n 倡 m -1 -1 )为生成式 。 C 的权多项式为 ⊥ n y 2 (第 2 章的例 10 ) ,即 C 中非零码字的权均为 ⊥ n m-1 ⊥ m m-1 =2 。 于是 C 的参数为[2 - 1 ,m ,2 ] 。 2 比如 ,取F 2 [x]中 3 次本原多项式 g(x) = x + x + 1 (m = 3) 。 以 g(x)为生 3 成式的二元循环码 C = (g(x))有参数[n ,k ,d] = [7 ,4 ,3]和生成阵 1 0 0 0 G= 1 1 0 0 0 1 1 0 1 0 1 1 0 1 0 1 0 0 1 0 0 0 。 0 1 C 的校验式为 h(x) = (x - 1)/g(x) = x + x + x + 1 。 从而 C 有校验阵 7 4 1 0 0 H= 0 1 0 1 0 1 2 1 1 0 1 1 1 0 0 1 0 。 1 1 C 的生成式为 g (x) = h (x) = x + x + x + 1 ,检验式为 h ( x) = g ( x ) = ⊥ ⊥ 倡 4 3 2 ⊥ 倡 x + x + 1 ,参数为[7 ,3 ,4] ,C 中非零码字的权均为 4 。 3 2 ⊥ 设 C 是参数[n ,k]的 q 元线性码 ,G 和 H 分别为 C 的生成阵和校验阵 。 则 C 的全部码字为 aG ,其中 a 过Fqk 中全部向量 (这叫纠错编码) ,而F qn 中向量v 是 C 中码字当且仅当 Hv T = 0 ∈ Fqn - k 。 如果 C 为 q 元循环码 ,g( x)和 h(x)分别 为其生成式和校验式 ,其中 g(x)和 h(x)分别是F q [ x]中次数 n - k 和 k 的首 1 多项式 ,并且 x - 1 = g(x)h( x) 。 则 C 中全部码字为 a(x ) g( x) ,其中 a( x )过 n F q [x]中全部次数 ≤ k - 1 的多项式 。 而对于 v (x ) = v0 + v1 x + … + v n - 1 x n-1 ∈ F q [x] ,v ( x )是 C 中码字当且仅 当 v ( x ) h ( x ) ≡ 0 (mod x - 1 ) (即 x - 1 | n n v(x)h(x)) 。 所以线性码的矩阵运算简化成多项式环F q [ x]中的乘法和除法运 算 。 在通信工程上 ,有一种元件可以快速而方便地进行有限域上的四则运算 ,这 种元件叫作线性移位寄存器 。 这种元件产生的序列和循环码有密切关系 。 线性移位寄存器序列的有关知识请见附录 B 。 第3章 习题 1 循环码 码长为 7 的三元循环码共有多少个 ? 决定这些码的参数[n ,k ,d] 。 习题 2 设 C1 和 C2 均为码长为 n 的 q 元循环码 。 证明 (1) 它们的交 C1 ∩ C2 以及 和 C1 + C2 = { c1 + c2 |c1 ∈ C1 ,c2 ∈ C2 } 仍 为 循环码 。 (2) 若 g1 (x)和 g2 (x)分别为 C1 和 C2 的生成式 ,则 C1 ∩ C2 和 C1 + C2 的生 成式分别为最小公倍式[g1 (x) ,g2 (x)]和最大公因子(g1 (x) ,g2 (x)) 。 习题 3 当(n ,q) = 1 时 ,是否有码长为 n 的 q 元循环码是自正交码或自对 偶码 ? 若允许(n ,q) > 1 呢 ? 习题 4 设 x - 1 在F q [x]中分解为 x - 1 = g(x)h(x) ,其中 g( x)和 h( x) n n 为F q [x]中的首 1 多项式 ,deg h(x) = k 。 用 g( x)除 x (n - k ≤ l ≤ n - 1 )得到余 式 rl (x)(deg rl (x) < n - k = deg g(x)) ,即 l x ≡ rl (x) = a0 ,l + a1 ,l x + … + an - k - 1 ,l x (mod g(x)) ,(n - k ≤ l ≤ n - 1) 。 证明码长为 n 的 q 元循环码 C = (g(x))有校验阵 a0 ,n - k a0 ,n - k+ 1 … a0 ,n - 1 l n- k-1 H = (In - k ┆ P) ,P = a1 ,n - k a1 ,n - k+ 1 … a1 ,n - 1 ⁝ ⁝ ⁝ an - k - 1 ,n - k an - k - 1 ,n - k+ 1 ⁝ … 。 an - k - 1 ,n - 1 习题 5 设 n 为奇数 ,x - 1 = (x - 1)g(x)h(x) ,其中 g(x)和 h(x)为F2 [x]中 的首 1 多项式 。 试问码长为 n 的二元循环码 C = (g(x))和 C′ = ((x - 1)g(x))之 间有何关系 ? 如果 C 的最小距离为奇数 d ,证明 C′的最小距离 ≥ d + 1 。 n 59 60 纠错码的代数理论 3畅 2 循环码的迹表达式 设(n ,q) = 1 ,x - 1 = g(x)h(x) ,其中 g(x)和 h(x)分别是Fq [ x]中 n - k 次 n 和 k 次首 1 多项式 。 C 是以 g(x)为生成式(从而以 h(x)为校验式)的 q 元循环 码 ,参数为[n ,k] 。 由(n ,q) = 1 可知 h(x) = p1 (x) … p s (x) , 其中 p1 (x) ,… ,p s (x)是F q [x]中彼此不同的首 1 不可约多项式 。 令 deg p i (x) = di (1 ≤ i ≤ s) , 并且在F q 的扩域中取多项式 pi (x)的一个零点 αi ,则F q (αi ) = F q di (1 ≤ i ≤ s) 。 定理 3畅 2畅 1(循环码的迹表达式 ) 对于上述 q 元循环码 C 中的每个码字 c = (c0 ,c1 ,… ,cn - 1 ) ,均存在惟一确定的 βi ∈ F q di (1 ≤ i ≤ s) ,使得 cλ = s ∑ i= 1 T i (βi αi ) (0 ≤ λ ≤ n - 1) , -λ 其中 T i 是Fq 对于Fq 的迹映射 ,即对于 γ ∈ F q di di ,T i (γ) = di - 1 ∑ γ j= 0 q j ∈ Fq 。 证明 每个码字 c= (c0 ,c1 ,… ,cn - 1 ) ∈ C 等同于环 R = Fq [ x]/( x - 1)中的 n 多项式 c(x) = c0 + c1 x + … + cn - 1 x n-1 。 现在我们再将码字 c 对应于 q 元周期序 列c = (c0 ,c1 ,… ,cn - 1 ,c0 ,c1 … ,cn - 1 ,… ) = (c0 ,c1 ,… ,cn - 1 ) ,而这个周期序列可看 · ~ · 成是幂级数 珓c (x) = c0 + c1 x + … + cn - 1 x = n-1 c0 + c1 x + … + cn - 1 x n 1-x + c0 x + c1 x n n-1 = n+ 1 + … + cn - 1 x 2n - 1 + … c(x) n ∈ Fq [[x]] 。 1-x 关于有限域上幂级数环Fq [[x]]的知识可见附录 A畅 3 。 于是 : c(x) ∈ C 骋 g(x)|c(x) (令 c(x) = a(x)g(x) ,a(x) ∈ F q [x] ,deg a(x) < k) 骋 珓c (x) = c(x) - a(x)g(x) - a(x) = 。 n = g(x)h(x) h(x) 1-x 这表明 ,循环码 C 中的码字 c ( x)一一对应于 F q [[ x ]]中以 h( x )为分母的真分 式 ,并且 c0 ,c1 ,… ,cn - 1 就是这个真分式 - a(x) 幂级数展开的前 n 位数字 。 然后 h(x) 再利用附录 A 中的定理 A畅 4畅 5 即得结果 。 第3章 例3 循环码 设 m ≥ 2 ,h(x)为Fq [x]中一个 m 次本原多项式 ,则 h(x)的周期为 n = q - 1 。 令 x - 1 = g(x)h( x) ,C 是以 h(x )为校验式 ,码长为 n 的 q 元循环码 , m n 则 C(x) = (g( x)) 。 [n ,k] = [q - 1 ,m] 。 取 α 为 h ( x )的一个根 ,γ = α m -1 ,则 F q (γ) = Fq ,并且 γ 是 Fq 中一个本原元素 (即 γ 的乘法阶为 q - 1 ) 。 由定理 m m m 3畅 2畅 1 ,C 中每个非零码字 c = (c0 ,c1 ,… ,cn - 1 )有迹表达式 cλ = T r (aγ ) (0 ≤ λ ≤ n - 1) , λ (2) 其中 0 ≠ a ∈ Fqm ,而 T r 是Fqm 对Fq 的迹映射 。 由于{γ |0 ≤ λ ≤ n - 1}是Fq m 中全部 λ (n - 1 = q - 1 个)非零元素 ,从而{ aγ |0 ≤ λ ≤ n - 1}也是Fqm 中全部非零元素 。 m λ 但是映射 T r :Fqm → Fq 是 q m-1 对 1 的映射 ,即对Fq 中每个元素 α ,均有 q m-1 Fq 使得 T r (β) = α 。 由此可知 ,对每个 0 ≠ α ∈ Fq ,均有 q m-1 m 个 cλ = T r ( aγ )(0 ≤ λ ≤ n - 1)为 α 。 这就表明 C 中每个非零码字的 Hamming 权均为 q 特别地 ,循环码 C 的最小距离为 q = [q - 1 ,m ,q m (q - 1 ) 。 (q - 1)] ,并且 C 的权多项式为 m-1 n = x q m m -1 y n- d m + (q - 1)x q (n = q - 1 ,d = q d m m -1 y -1 q m -q m -1 m-1 (q - 1)) 。 q -1 n n q-1 = ,则 β= γ ′的乘法阶为 q - 1 。 由 β = 1 可知 β ∈ q -1 q -1 m 进而 ,记 n′ = Fq ,并且是Fq 中一个本原元素 。 于是由式(2) , cλ+ n′ = T r (aγ ) = T r (βaγ ) = βT r (aγ ) = βcλ λ+ n′ λ 这就表明 C 中每个码字 c 均可写成 c= (c c (1 ) ( j) m-1 (q - 1) ,即 q 元循环码 C 的参数为[n ,k ,d] m-1 f C (x ,y) = x + (q - 1)x 其中 c 个 β∈ λ …c (2 ) (q - 1 ) (1 ) ) = (c (1 ) ,βc λ ,β c 2 (1 ) ,… ,β (λ ≥ 0) , q-2 c ), (1 ) ∈ Fq (1 ≤ j ≤ q - 1 ) 。 由于 c (1 ≤ j ≤ q - 1 )均是 c 乘以 F q 中非零元 n′ ( j) (1 ) 素 ,可知它们有同样的 Hamming 权 。 但是 C 中每个非零码字 c 的 Hamming 权 均为 d = q m-1 (q - 1) ,可知 w H (c ) = (1 ) 它的前 n′位 c (1 ) ,即 C′ = {c (1 ) ∈ Fq |(c n′ 这是 q 元线性码 ,每个码字 c (1 ) 有参数[n′ ,k′ ,d′] = (1 ) d m-1 =q 。 我们把 C 中每个码字 c 取出 q -1 (1 ) ,βc ,… ,β q-2 c ) ∈ C} , (1 ) = (c0 ,… ,cn′ - 1 )有迹表达式(1)(0 ≤ λ ≤ n′ - 1) 。 C′ q -1 m-1 ,m ,q q -1 m ,并且有权多项式 f C′ (x ,y) = x + (q - 1)x n′ m n′ - q 由 M acWilliams 恒等式 ,对偶码 C′ 的权多项式为 m -1 y q m -1 ⊥ f C′ ⊥ (x ,y) = q [(x + (q - 1)y) + (q - 1)(x + (q - 1)y) -m n′ m n′ - q m-1 (x - y) q m -1 ] 61 62 纠错码的代数理论 n′ Ai x ⊥ ∑ = i= 0 n′ - i y 。 i (3) 由此可算出 A1 = q ⊥ -m n′ m m-1 m-1 (q - 1) + (q - 1)( - q + (q - 1)(n′ - q )) 1 = 0 (式(3) 中 x n′ - 1 y 的系数) , A = 0 (式(3) 中 x n′ - 2 y 的系数) , ⊥ 2 2 A3 ≠ 0 。 ⊥ 可知 C′⊥ 最小距离 d⊥ 为 3 ,它与 q 元 Hamming 码有相同的参数 qm - 1 qm - 1 , - q -1 q -1 m ,3 (见定理 2畅 2畅 2) 。 由于 C′ 的校验阵 H 是Fq 上 m 行 n′列矩阵 ,由 d = 3 知 ⊥ ⊥ q -1 列 ,可 知 C′ ⊥ 就 是 q -1 Hamming 码 。 特别当 q = 2 时 ,C = C′ ,从而二元 Hamming 码 C ⊥ 为循环码的对 m H 的任 意 两 列 在 F q 上 均 线 性 无 关 ,H 一 共 有 n′ = 偶 ,从而也是循环码(见 3畅 1 节的例 2) 。 ⊥ 当 q > 2 时 ,Hamming 码 C′ 不是循环码 。 但是 C′类似于循环码 ,因为 C′ 中每个码字 c 对应于 C 中码字 c = (c (1 ) 此可知 ,若 c (1 ) (1 ) (1 ) ,βc = (c0 c1 … cn′ - 1 ) ∈ C′ ,则(β q-2 ,… ,β q-2 c ) ,而 C 为循环码 ,由 (1 ) cn′ - 1 ,c0 ,c1 ,… ,cn′ - 2 ) ∈ C′ 。 由此易证 C′ 也类似于循环码 :若(a0 a1 … an′ - 1 ) ∈ C′ ,则(a1 ,… ,an′ - 1 ,β a0 ) ∈ C′ 。 ⊥ ⊥ -1 ⊥ 比如对 q = 3 ,m = 3 ,取F 3 [x]中一个本原多项式 h(x) = x3 + 2 x + 1 ,它的周 期为 n = q - 1 = 26 ,而 m g(x) = x -1 13 = - f (x)(1 + βx ) , β= - 1 , h(x) 26 f (x) = 1 + x + x + 2 x + x + x + 2 x + x + x 。 这表 明 f ( x ) = (1110211210100 ) 是 三 元 线 性 码 C′ 中 的 一 个 码 字 m q -1 码长 = 13 ,维数为 m = 3 。 由上述 C′的类似循环性质 ,可知 C′有生成阵 q -1 2 1 G= 0 0 1 1 1 1 0 1 0 1 1 4 2 0 1 1 2 0 5 6 1 2 1 1 2 1 7 1 2 1 0 1 2 8 1 0 0 1 1 0 10 0 0 。 1 而参数[13 ,10 ,3 ]的三元 Hamming 码 C′ 以 G 为校验阵 ,这个码有如下性质 : ⊥ 若(c0 ,… ,c12 ) ∈ C′ ,则(c1 ,… ,c12 ,- c0 ) ∈ C′ 。 ⊥ 例4 ⊥ 仍设 m ≥ 2 ,但是加上条件(m ,q - 1) = 1 ,取 α 为Fqm 中一个本原元素 , 第3章 q-1 β= α ,则 β为 n = q i 循环码 q -1 阶元素 ,令 g(x)是 β 在Fq (x)中的最小多项式 ,则 g(x) q -1 m (q - 1 )q 的全部根为 β = α i (i ≥ 0) 。 易知满足 (q - 1)q ≡ q - 1(mod q - 1)的最小 i m i 正整数 i 为 m ,于是 g(x)是 m 次不可约首 1 多项式 ,并且有 m 个不同的根 β (0 ≤ q i ≤ m - 1) 。 设 C 是以 g (x)为生成式的 q 元循环码 ,[n ,k] = q -1 q -1 , - m ,我们 q -1 q -1 m m 现在证明这个码的最小距离 d 为 3 ,对 C(x)中每个非零码字 c(x)(deg c( x) ≤ n - 1) ,g(x)|c(x) ,于是 c(β) = 0 ,权为 1 的码字有形式 c(x) = x (0 ≤ l ≤ n - 1 ) , l 但是 c (β) = β l ≠ 0 ,若 C 中 有 权 2 码 字 x l + i - ax i ,则 像 例 3 中 那 样 可 知 g(x)|x l - a ,其中 1 ≤ l ≤ n - 1 ,a ∈ Fq倡 ,于是 β l = a ∈ Fq倡 ,从而 α(q - 1 ) l = β (q - 1 ) l = 2 a q-1 = 1 ,所以 q - 1 |(q - 1) l ,即 m 2 q -1 l(q - 1) ,但是 q -1 m qm - 1 m-1 m-2 =q +q + … + q+ 1 ≡ m q -1 q -1 q -1 ,q - 1 = (m ,q - 1) = 1 ,因此 = n|l ,而这与 1 ≤ l ≤ n - 1 q -1 q -1 m 由假设知 (mod q - 1) 。 m 相矛盾 ,这表明 d ≥ 3 ,由于 C 的参数[n ,k]和 Hamming 界可知 d = 3 ,所以 C 是 Hamming 码 ,这表明在 (m ,q - 1 ) = 1 时 ,参数为 Hamming 码均等价于循环码 。 q -1 q -1 , - m ,3 的 q 元 q -1 q -1 m m 比如和例 3 一样仍取 q = m = 3 ,则(m ,q - 1) = 1 ,取F3 [x]中 g(x) = x + 2 x + 3 q -1 的不可约多项式 ,它的根 β 的阶为 13 ,从而三元循环码 q -1 m 2 ,这是周期为 13 = C = (g(x))为参数[13 ,10 ,3]的 Hamming 码 。 x g(x)(0 ≤ i ≤ q)是 C 的一组Fq唱 i 基 ,由于 C 的校验式为 h(x) = (x - 1)/g(x) = x + x + x + x + 2 x + 2 x + 13 10 8 1 2 0 1 2 0 1 2 1 7 6 5 4 x + 2 x + 1 ,所以有校验阵 2 1 H= 0 0 习题 1 (1) 证明 0 1 0 1 0 1 1 1 1 1 0 1 2 1 1 2 2 1 0 2 2 0 1 2 0 0 。 1 h1 (x) = x + 2 x + 1 是F 3 [x]中本原多项式 。 3 (2) 设 α 是 h1 ( x )在 F 3 的扩域中一个根 ,求 α 在 F 3 [ x ]中的最小多项式 2 h2 (x) 。 (3) 设 C ,C1 和 C2 分 别 是 码 长 为 26 的 三 元 循 环 码 ,其 校 验 式 分 别 为 63 64 纠错码的代数理论 h1 (x)h2 (x) ,h1 (x)和 h2 (x) 。求 C 中 一 个 码 字 c = (c0 ,c1 ,… ,c25 ) ,使 得 (c0 , c1 ,… ,c5 ) = (012210) ,并将 c 表示成 c (1 ) +c (2 ) ,使得 c (1 ) ∈ C1 ,c (2 ) ∈ C2 。 习题 2 设 C1 是以 h1 (x) = x + 2 x + 1 为校验式的三元循环码 ,码长为 26 。 (1) 证明 26 C′ = {(c0 ,c2 ,c4 ,… ,c50 ) ∈ F 3 |(c0 ,c1 ,… ,c25 ) ∈ C1 } 也是三元循环码 。 这里当 m ≥ 26 时 ,规定 cm = cm - 26 。 (2) 计算三元循环码 C′的校验式 。 3 第3章 循环码 3 .3 循环码的根 ,BCH 码 现在介绍循环码的又一种刻画方式 。 定义 3 .3 .1 设 C 是以 g (x)为生成式的 q 元循环码 ,则 g( x)(在F q 的扩域 中)的根也叫作循环码 C 的根 。 以下设 C 的码长 n 与 q 互素 。 这时 ,g(x)|x - 1 ∈ F q [x] ,而 x - 1 在F q 的 n n 扩域中没有重根 ,从而 g(x)也是如此 ,记 R 为 g(x)的全部根所成的集合 ,|R | = deg g(x) ,则对每个多项式 c(x) ∈ F q [x] , c(x)为 C 中码字 骋 g(x)|c(x) 骋 c(γ) = 0 ,对每个 γ ∈ R 。 所以给出循环码的如下刻画 : C = {c(x) ∈ F q [x]|deg (x) ≤ n - 1 ,c(γ) = 0(对每个 γ ∈ R)} 。 现在设 g(x) = p1 ( x) … p g (x) ,其中 p1 (x) ,… ,p g (x)是F q [ x]中彼此不同 的首 1 不可约多项式 ,deg p i (x) = di (1 ≤ i ≤ g) 。 设 γi 是 p i ( x)在Fq 的扩域中的 一个根 ,则Fq (γi ) = Fq di ,并且全部根为 γi (0 ≤ λ ≤ di - 1) 。 对每个 c(x) ∈ Fq [x] , q λ 由于 p i (x)不可约 ,只要 c(γi ) = 0 ,p i (x)的全部根均为 c(x)的根 。 所以 c(x) ∈ C 骋 g(x)|c(x) 骋 p i (x)|c(x) 骋 c(γi ) = 0 (1 ≤ i ≤ g) (1 ≤ i ≤ g) 。 因此可以用 C 的一部分根(每个 p i (x)取一个根 γi )来刻画 C : C = {c(x) ∈ F q [x]|deg c(x) ≤ n - 1 ,c(γi ) = 0 (1 ≤ i ≤ g)} 。 用这种根刻画方式可以给出循环码的一个校验阵 ,设 c(x) = c0 + c1 x + … + cn - 1 x n-1 ,它等同于 c= (c0 ,… ,cn - 1 ) ∈ Fq ,则 n c(x) ∈ C 骋 c(γi ) = c0 + c1 γi + … + cn- 1 γi c0 骋H 珦 ⁝ = 0 cn - 1 n-1 = 0 (长为 g 的零向量) , 其中 H 珦 = n-1 1 γ1 … γ1 1 γ2 … γ2 ⁝ ⁝ ⁝ ⁝ 1 γg … γg n-1 n-1 , (1 ≤ i ≤ g) 65 66 纠错码的代数理论 其中 γi 是 F q di 中元素 ,取 F q d i 的一组 F q唱基{ v1 ,… ,v d i } (比如取为 {1 ,γi ,… , j d -1 ( i) ( i) j }) ,则 γi 可惟一表示成 j ( i) ( i) ( i) ( i) γi = aj v 1 + … + ad i j v d i γi i (aλ j ∈ F q ) 。 ( i) 这时 n-1 c(γi ) = ∑ j= 0 n-1 cj γ = j i di cj ∑ j=0 ∑ a v ( i) λj λ= 1 ( i) λ di n-1 ∑ ∑ = λ= 1 j= 0 aλ j c j v λ ( i) ( i) 所以 n-1 c(γi ) = 0 骋 ∑ (1 ≤ λ ≤ di ) 骋 Hi c = 0 T aλ j c j = 0 ( i) j= 0 其中 a10 ( i) Hi = ⁝ a ( i) d i ,0 a11 … ⁝ ⁝ ( i) a ( i) d i ,1 a1 ,n - 1 ( i) (Fq 上 d i 行 n 列矩阵) 。 ⁝ a ( i) d i ,n - 1 … 而 c(x) ∈ C 骋 c(γi ) = 0 (1 ≤ i ≤ g) 骋 HcT = 0 , 其中 H1 H= ⁝ Hg 为Fq 上 n 列的矩阵 ,行数为 d1 + … + dg = deg p1 (x) + … + deg pg (x) = deg g(x) , 所以 H 就是线性码 C 的一个校验阵 ,但是今后把更紧凑的 g × n 的矩阵 H 珦 (系数 属于Fq 的有限扩域)也叫作 C 的校验阵 。 例5 x + x + x + 2 是F 3 [x]中不可约多项式 ,周期为 13 ,设 γ 是此多项式 3 2 的一个根 ,F 3 (γ) = F 27 ,{1 ,γ ,γ }为F 27 的一组F 3 唱基 。 3 2 设 C 是以 g (x) = (x - 1)(x + x + x + 2)为生成式 ,并且码长为 13 的三元 循环码 ,则 2 C= 从而 C 有校验式 c(x) = 12 ∑ i= 0 H 珦= ci x ∈ F 3 [x] | c(1) = c(γ) = 0 。 i 1 1 1 … 1 。 12 1 γ γ … γ j 2 将 γ (0 ≤ j ≤ 12)以{1 ,γ ,γ }为基表示成向量 : j 2 3 γ = a1 j + a2 j γ + a3 j γ = (a1 j ,a2 j ,a3 j ) ∈ F 3 2 第3章 由 3 2 3 γ + γ + γ + 2 = 0 ,可知 循环码 2 γ = 1 + 2 γ + 2 γ = (122) ,于是 0 1 2 γ = 1 = (100) , γ = (010) , γ = (001) , 3 4 5 6 7 8 9 10 γ = (122) , γ = (012) + 2(122) = (220) , γ = (022) , γ = (002) + (211) = (210) , γ = (021) , γ = (002) + (122) = (121) , 11 γ = (101) , γ 12 γ = (102) , γ 13 = (111) , (γ = (221) , = (011) + (122) = (100) = 1) 所以 C 有F 3 上的校验阵 1 1 0 0 H= 1 0 1 0 1 0 0 1 1 1 2 2 1 2 2 0 1 0 2 2 1 2 1 0 1 0 2 1 1 1 2 1 1 1 0 1 1 1 0 2 1 2 2 1 1 1 。 1 1 循环码的根刻画方式可用来构作最小距离很大的循环码 ,这种码由 R .C . Bose 和 D .K .Ray唱Chaudhuri 于 1960 年和 A .Hocquenghen 于 1959 年相互独立 地给出 ,后人称为 BC H 码 。 定义 3 .3 .2 设(n ,q) = 1 ,β 是Fq 的某扩域中的 n 阶元素(当(n ,q) = 1 时 ,这 样的 β是存在的) ,l 和 δ 是正整数 ,2 ≤ δ ≤ n - 1 ,以 β ,β l l+ 1 l+ δ- 2 ,… ,β 为根的码长 为 n 的 q 元循环码 C= c(x) = n- 1 ∑ i= 0 ci x ∈ F q [x] | c(β ) = c(β i l 叫作设计距离为 δ 的 BC H 码 。 由定义可知 ,循环码 C 的生成式就是 β ,β l l+ 1 l+ 1 ) = … = c(β ,… ,β l+ δ- 2 l+ δ- 2 )= 0 在F q [x]中诸最小多 项式的最小公倍式 g(x) ,而 C 的参数为[n ,k] ,其中 k = n - deg g(x) 。 定理 3 .3 .3 BC H 码 C 的最小距离 d ≥ 设计距离 δ 。 证明 对于 c(x) = n-1 ∑ i= 0 ci x ∈ F q [x] ,由 BC H 码的定义可知 , i c0 c(x) ∈ C 骋 H ⁝ =0 , cn - 1 其中 67 68 纠错码的代数理论 1 β 1 ⁝ H= β l β l+ 1 β … 2 (l + 1 ) β ⁝ 1 2l 2(l + δ - 2) β (n - 1 ) l (n - 1 )( l + 1 ) … ⁝ ⁝ l+ δ- 2 β β 。 ⁝ (n - 1 )( l + δ - 2 ) … β 为证 d ≥ δ ,只需证明 H 的任意 δ - 1 列都是 F q唱线性无关的 ,取 H 中任意 δ - 1 列 ,给出 δ - 1 阶方阵 i l i l β1 M= β2 i (l+ 1) β1 i (l+ 1 ) β2 ⁝ ⁝ i (l+ δ-2 ) β1 i (l+ δ-2 ) β2 i … β δ-1 … ⁝ β δ-1 ⁝ i (l+ 1 ) i … l β δ-1 (0 ≤ i1 < i2 < … < iδ-1 ≤ n - 1) 。 ( l+ δ-2) 我们要证它的行列式 det M 必不等于零 ,由于 1 1 i1 i2 β ⁝ det M = β ( i1 + i2 + … + i δ - 1 ) l … β ⁝ i (δ - 2 ) β1 i (δ - 2 ) β2 1 iδ - 1 … ⁝ β … β δ-1 ⁝ i , (δ - 2 ) 而 β 1 ,… ,β δ - 1 彼此不同且均不为零 ,上式右边的行列式是 Vandermonde 行列 i i 式 ,从而也不为零 ,因此 det M ≠ 0 ,这就证明了 d ≥ δ 。 例6 设 m ≥ 3 ,q = 2 ,α 是F2 m 中一个本原元素 ,则 α 的阶为 n = 2 - 1 。 令 C m 是以 α 和 α 为根的二元循环码(码长为 n) ,即 3 C= n-1 c(x) = ∑ i= 0 ci x ∈ F 2 [x] | c(α) = c(α ) = 0 。 i 3 由于 α 为码 C 的根 ,可知 α ,α 也是 C 的根 ,从而 α ,α ,α ,α 均是 C 的根 ,这表 2 4 2 3 4 明 C 是设计距离为 δ = 5 的 BC H 码 ,从而 C 的最小距离 d ≥ 5 。 以 g1 ( x )和 g3 (x)分别表示 α 和 α 在F 3 [x]中的最小多项式 ,则 g1 (x)是F 2 [ x]中的 m 次本 3 2 4 2 原多项式 ,根为 α ,α ,α ,… ,α m-1 ,而 g3 (x)的根为 α ,α ,α ,… 。 当 m ≥ 3 时 ,易 3 6 12 知满足 3 · 2 l ≡ 3(mod 2 m - 1)的最小正整数 l 为 m ,所以 g3 (x)是F 3 [x]中 m 次 不可约多项式 ,C 是以 2m 次多项式 g (x) = g1 ( x) g3 ( x)为生成式的二元循环 码 ,参数为[n ,k ,d] = [2 - 1 ,2 - 1 - 2 m ,d] ,其中 d ≥ 5 ,此码有校验阵 m m H= 2 … 6 … 1 α α 1 α 3 α n-1 α 3 (n - 1) α 。 由于 d ≥ 5 ,此码可纠正 ≤ 2 位错 ,现在我们介绍用这个 BC H 码 C 纠正 ≤ 2 位错的译码方法 。 第3章 n- 1 设发出码字 c(x) = 循环码 ci x ∈ C(ci ∈ F2 ) ,而信道中产生 ≤ 2 位的错误 ,它 i ∑ i= 0 n-1 可表示成错误多项式 ε(x) = ∑ i= 0 εi x ∈ F 2 [x] ,其中 εi ≠ 0 的个数至多有 2 个 , i 即 ε(x) 的 Hamming 权 w H (ε(x)) ≤ 2 ,收到的多项式为 u(x) = c(x) + ε(x) = n-1 ∑ i= 0 ui x , ui = ci + εi ∈ F 2 。 i C 作为线性码 ,收到 u(x)之后计算校验子 u0 u(α) H ⁝ = un - 1 = u(α ) 3 c(α) + ε(α) c(α ) + ε(α ) 3 3 ε(α) = 3 ε(α ) 。 记 A 1 = u(α) ,A 3 = u(α ) ,这是F2 m 中元素 ,它们在收方接收到 u(x) 之后可以计 3 算 ,而事实上 A 1 = ε(α) ,A 3 = ε(α ) ,而多项式 ε(x) 至多包含两个单项式 。 3 当 ε(x) = 0(无错)时 ,A 1 = A 3 = 0 。 当 ε(x) = x (有一位错)时(0 ≤ i ≤ n - 1) ,A 1 = ε(α) = α ,A 3 = ε(α ) = α , i i 3 3i 从而 A 1 和 A 3 均不为零 ,并且 A 1 = A 3 。 3 当 ε(x) = x i + x j 时(有两位错 ,0 ≤ i ≠ j ≤ n - 1) , A 1 = α + α ( ≠ 0) , A 3 = α + α ( ≠ 0) 。 i j 3i 3j 这时 A1 = α + α 3i 3 2i+ j i+ 2 j +α + α = A3 + α 3j i+ j (α + α ) ≠ A 3 。 i j 记 X1 = α ,X2 = α ,则 i j X1 + X 2 = A 1 , X 1 + X 2 = A 3 。 3 3 于是 A 3 = (X1 + X2 )(X1 + X1 X2 + X2 ) = A 1 (A 1 + X1 X2 ) , 2 2 2 从而 X 1 X2 = A3 2 + A 1 ( ≠ 0) A1 定义关于 z 的二次多项式(叫错位多项式) σ(z ) = (1 - X1 z )(1 - X2 z ) = 1 + (X1 + X2 )z + X1 X2 z = 1 + A1 z + A3 + A1 2 z ∈ F 2 m [z ] 。 A1 2 3 由于 σ′(z ) = A 1 ≠ 0 ,A 3 + A 1 ≠ 0 ,可知 σ(z )有两个不同的根 ,这两个根应当 3 是 α 和 α (0 ≤ i ≠ j ≤ n - 1) ,由此得出错位为 i 和 j (错值当然均为 1) 。 - i - j 69 70 纠错码的代数理论 综合起来 ,在假设 w H (ε(x)) ≤ 2 之下 ,对于本例中的二元 BC H 码 C 我们有 如下的译码算法 。 (1) 收到 u(x)之后计算 A 1 = u(α)和 A 3 = u(α )(均为F 2 m 中元素) ; (2) 若 A 1 = A 3 = 0 ,则 c(x) = u(x)(无错) ; 3 (3) 若 A 3 = A 1 ≠ 0 ,记 A 1 = α (0 ≤ i ≤ n - 1 ) ,则 ε( x) = x ,即有一位错 ,将 u(x)中 ui 改为 u i + 1 便得码字 c(x) ; i 3 i (4) 若 A 1 ≠ 0 ,并且 A 1 ≠ A 3 ,二次方程 3 A 3 + A 31 2 z =0 A1 σ(z) = 1 + A 1 z + 在F 2 m 中必有两个不同的非零解 ,设解为 α 和 α (0 ≤ i ≠ j ≤ n - 1) ,则 ε(x) = x -i - j i + x ,即 u(x)有两位错 ,错位为 i 和 j ,c(x) = u(x) + x + x 。 4 比如对 m = 4 ,取 α 是F 2 [ x]中 4 次本原多项式 g1 ( x) = x + x + 1 的一个 j i j 根 ,则F 2 (α) = F 16 ,α = 1 + α ,F 16 中元素惟一表示成 4 a0 + a1 α+ a2 α + a3 α = (a0 ,a1 ,a2 ,a3 ) (ai ∈ F 2 ) 。 事实上 ,0 = (0000)而 2 3 1 = (1000) , α = (0100) , α = (0010) , α = (0001) , 2 3 4 5 6 8 9 10 7 α = (1100) , α = (0110) , α = (0011) , α = (1101) , 11 α = (1010) , α = (0101) , α 12 13 = (1110) , α 14 = (0111) , 15 α = (1111) , α = (1011) , α = (1001) , (α α 的阶为 5 ,所以 α3 在F 2 [x]中的最小多项式为 = 1) 3 g3 (x) = (x + α )(x + α )(x + α )(x + α ) = x + x + x + x + 1 。 3 6 12 9 4 3 2 3 所以以 α 和 α 为根的二元循环码(码长为 15)为 C= c(x) = 14 ∑ i= 0 ci x ∈ F 2 [x] | c(α) = c(α ) = 0 , i 3 其参数[n ,k ,d] = [15 ,7 ,≥ 5] ,C 的生成式为 4 6 7 8 g(x) = g1 (x)g3 (x) = 1 + x + x + x + x 。 由于 g(x)是 Hamming 权为 5 的码字 ,从而 d = 5 。 4 5 6 9 设发送 码 字 c ( x ) = (1 + x ) g ( x ) = 1 + x + x + x + x + x = 15 4 9 (110011100100000) ∈ F 2 ,信道错误为 ε(x) = x + x ,则收到的为 u(x) = c(x) + ε(x) = 1 + x + x + x 。 3 收方计算校验子(u(α) ,u(α )) = (A 1 ,A 3 ) ,则 5 6 A 1 = 1 + α + α + α = (1000) + (0100) + (0110) + (0011) = (1001) = α , 5 6 A3 = 1 + α + 1 + α = 0 。 3 3 由 A 1 ≠ 0 ,A = α ≠ A 3 可知有两位错 ,错位多项式为 3 1 12 14 第3章 σ(z ) = 1 + A 1 z + 循环码 A3 + A1 2 14 13 2 z =1+ α z+ α z , A1 3 反向多项式 z + α z + α 的两个根为 α 和 α ,于是错位为 4 和 9 ,从而正确码字 为 c(x) = u(x) - (x4 + x9 ) = 1 + x + x4 + x5 + x6 + x9 。 2 14 13 4 9 现在介绍 BC H 码的一般译码算法 。 2 2t 设 C 是码长为 n 的 q 元循环码 ,以 β ,β ,… ,β 为根 ,其中 β 是F q 的某扩域中 的 n阶元素 。则 C的设计距离为 δ = 2t + 1 ,所以可纠正 ≤ t位错 。设码字为 c(x) = n -1 ∑ i= 0 ci x ∈ C ,错误多项式为 i n-1 ε(x) = ∑ i= 0 εi x ∈ F q [x] , w H (ε(x)) ≤ t 。 i 定义错位集合为 M = { i | 0 ≤ i ≤ n - 1 ,εi ≠ 0} , l = | M | = w H (ε(x)) ≤ t 。 我们需要从收到的 r(x) = c(x) + ε(x) = n-1 ∑ i= 0 ri x i ∈ F q [x] 计算出错位集合 M 和错值 εi (i ∈ M) 。为了求出错位集合 M ,只需求出 β (i ∈ M) ,我们称 i 朝 σ(z ) = (1 - β z ) ∈ Fqm [z] (Fqm = Fq (β)) i i∈ M 为错位多项式 。 deg σ(z) = l ≤ t 。 而由 εi β z ω(z ) = ∑ i σ(z) 1 -βz i∈ M 定义出的多项式 ω( z ) ∈ F qm [z ]叫作错值多项式 。 因若能求出多项式 σ( z )和 -i ω(z ) ,则由 σ(z )可决定错位(i ∈ M 骋 σ(β ) = 0) 。 然后对 i ∈ M ,可算出错值 -i i -i εi = - ω(β )β /σ′(β ) , 其中 ,σ′(z )表示多项式 σ(z )的微商 。 在幂级数环Fq m [[z ]]中 , ω(z) = σ(z ) εi β z = i 1 -βz i ∑ i∈ M ∞ = i ∑ λ= 1 z ∞ ∑ε ∑ i i∈ M ∑ i∈ M λ εi β i = σ(z ) = λ z ε(β ) = λ ∑ λ= 1 其中 sλ = ε(β ) 。 当 1 ≤ λ ≤ 2 t 时 ,由 c(β ) = 0 可知 λ λ λ sλ = ε(β ) + c(β ) = r(β ) ∈ Fqm 它们可由收到的 r(x)计算出来 ,令 λ i λ= 1 ∞ λ (β z ) ∞ sλ z , (4) (1 ≤ λ ≤ 2 t) , (5) λ ∑ λ λ= 1 λ 朝 i∈ M (1 - β z ) = 1 + σ1 z + … + σl z i l (σ0 = 1) ,l = | M | 。 71 72 纠错码的代数理论 由式(4)可知 z |ω(z) ,令 ω(z) = zb(z) ,则 b(z)是Fqm [z]中次数 ≤ l - 1 的多项式 ,而 b(z ) = σ(z ) ∞ ∑ λ= 0 sλ+ 1 z , deg σ(z ) = l ≤ t , deg b(z ) ≤ l - 1 , λ b(z ) 所以 是真分式 ,我们已知它的前 2 t 位 s λ + 1 (0 ≤ λ ≤ 2 t - 1) ,所以Fqm 上的序列 σ(z ) {s1 ,s2 ,… ,s2 t ,s2 t + 1 ,… }是以 σ(z)为联接多项式的线性移存器 LSR(σ(z ))生成的 序列 。 利用附录 B .2 中的 B唱M 综合算法 ,可求出Fqm 上一个位数最短的线性移 存器 LSR( f (z )) ,使得它生成前 2 t 位为 s1 ,s2 ,… ,s2 t 的序列 。 由于 LSR (σ(z )) 也生成 s1 ,s2 ,… ,s2 t ,而 deg σ(z ) ≤ t ,附录 B 中的定理 B .2 .3 表明这个移存器是 惟一的 ,所以用 B唱M 算法求出的 f (z )就是 σ(z ) 。 综合上述 ,我们给出 BC H 码的如下译码算法 。 2 设 C是设计距离为 2t + 1 的 q 元 BCH 码 ,码长为 n ,(n ,q) = 1 。码 C以 β ,β ,… , β 为根 ,β 为 n 阶元素 ,Fq (β) = Fqm 。 2t 现在发出码字 c(x) = n -1 ∑ i= 0 ci x ∈ C ,错误为 ε(x) = i n -1 w H (ε(x)) ≤ t ,收到 r(x) = c(x) + ε(x) ∈ F q [x] 。 (1) 计算 sλ = r(β ) ∈ Fqm λ ∑ i= 0 εi (x) ∈ F q [x] , (1 ≤ λ ≤ 2 t) ; (2) (B唱M 算法) 求一个Fq 上最短的线性移存器 LSR(σ(z)) ,可生成序列 m a(z) = 2 t -1 ∑ sλ+ 1 z ,设此线性移存器的联接多项式为 λ λ= 0 σ(z ) = 1 + σ1 z + … + σl z l ∈ F 2 m [z] , 则 l = deg σ(z ) ≤ t ,令生成 a(z )的序列为 b(z) ,b(z) ∈ Fqm [z] ,deg b(z ) ≤ l - 1 ,令 σ(z ) ω(z ) = z b(z) ; (3) (求错位) 求出 σ(z )的全部根 β- i1 ,… ,β- i l (0 ≤ i1 ,… ,il ≤ n - 1 ) ,则错 位集合为 M = { i1 ,i2 ,… ,il } ; (4) (求错值) 错位 i ∈ M 处的错值为 -i i -i εi = - ω(β )β /σ′(β ) , 于是 ε(x) = ∑ εx i∈ M i i ,而正确码字为 c(x) = r(x) - ε(x) 。 这个译码算法在工程上可以有效的实现 (除了 B唱M 算法之外 ,还需要在有 限域Fqm 上求多项式 σ(z )全部根的好算法) 。 由于可以设计任意大的最小距离 , 所以 BC H 码一直在通信中被采用 。 第3章 循环码 q 元 BC H 码的一个特殊情形是取 n = q - 1 ,这时 ,n 阶元素 α 就是F q 中的本 原元素 ,从而 α 在F q [x]中的最小多项式就是 x - α 。 j j 定义 3 .3 .4 设 α 是F q 的一个本原元素 ,n = q - 1 ,2 ≤ d ≤ n ,以 α ,α ,… ,α 为根的 q 元 BC H 码(码长为 n - 1)叫作 R eed唱Solo mo n 码(RS 码) ,即 · · · · · ··· · · · · 2 C= n-1 c(x) = ci x ∈ F q [x] | c(α) = c(α ) = … = c(α i ∑ i= 0 d-1 2 d-1 )= 0 。 下面定理表明 RS 码是 2 .3 节中多项式码的一个特殊情形 (通常多项式码 只是线性码 ,而 RS 码是循环码) 。 定理 3 .3 .5 (1) 定义 3 .3 .4 中的 RS 码 C 有参数[n ,k ,d] ,其中 n = q - 1 , k = n - d + 1 ,从而为 M DS 码 。 (2) C 为多项式码 n -1 n C = {cf = ( f (1) ,f (α) ,… ,f (α )) ∈ F q | f (x) ∈ Fq [x] , deg f ≤ k - 1( = n - d)} 。 (6) 证明 (1) C 的生成式为 g(x) = (x - α)(x - α ) … ( x - α ) ,于是 k = n - deg g(x) = n - d + 1 ,由于 C 是设计距离为 d 的 BC H 码 ,从而 C 的最小距离 d(C) ≥ d = n - k + 1 ,再由 Singleton 界可知 d(C) ≤ n - k + 1 = d ,于是 d(C) = d 。 k-1 (2) 以 C′表示式(6)右边定义的多项式码 ,则 C′是以{ cf | f = 1 ,x ,… ,x } 为基的 q 元线性码 ,dim C′ = k ,并且 C′有生成阵 c1 1 1 1 … 1 d-1 2 cx G= ⁝ cx k -1 = 1 ⁝ α ⁝ 1 α 2 α ⁝ k-1 2 (k - 1 ) α n- 1 … ⁝ α ⁝ … α 。 (n - 1 )(k - 1 ) 考虑矩阵 H= 1 α α2 … αn - 1 1 ⁝ α ⁝ 2 α ⁝ 4 … ⁝ α ⁝ n-k 2 ( n - k) 2(n -1) , (n - 1 )( n - k) 1 α α … α G 的第 i 行(0 ≤ i ≤ k - 1)和 H 的第 j 行(1 ≤ j ≤ n - k)的内积为 n -1 ∑ λ= 0 iλ α α jλ n -1 = ∑ λ= 0 α( i+ j )λ = 0 (由于 1 ≤ i + j ≤ n - 1) , 并且 H 的秩为 n - k(因为 H 的前 n - k 列组成的 Vandermonde 行列式不为零) 。 73 74 纠错码的代数理论 这表明 H 是码 C′的校验阵 。 从而 C′是以 α ,α ,… ,α 环码 ,即 C′ = C 。 n- k 2 (n - k = d - 1 )为根的循 BC H 码的最小距离 d 大于或等于设计距离 δ ,在很多情形下 ,d 大于 δ ,这里 举两个例子 。 例 7(二元 Golay 码 G23 是循环码) 设 α 是F 2 的扩域中的 23 阶元素 。 由于 2 模 23 的阶为 11 ,从而 α 在F 2 [ x ]中的最小多项式 g1 ( x )是 11 次不可约多项 式 ,g1 ( x )的全部根为 { α ,α ,α ,α ,α ,α ,α ,α ,α ,α ,α } ,而 α = α 在 F 2 [x]中的最小多项式为 g1 (x)的反向多项式 g2 (x) ,次数也为 11 。 所以 23 22 21 x - 1 = g1 (x)g2 (x)(x - 1) , g1 (x)g2 (x) = x + x + … + x + 1 。 设 C 是码长 23 并且以 g1 (x)为生成式的二元循环码 ,则[n ,k] = [23 ,12 ] 。 2 4 8 16 9 18 13 3 6 12 -1 10 由于 C 有根 α ,α ,α ,α ,这是设计距离 δ= 5 的 BC H 码 ,所以 d ≥ 5 ,我们现在证 d = 7 ,从而 C 与二元 Golay 码 G23 有相同的参数 [n ,k ,d] = [23 ,12 ,7 ] ,即是完 全码 。 2 3 22 设 c(x) = ∑ 4 ci x ∈ F2 [x] 是 C 中非零码字 ,则 g1 (x) | c(x) ,于是 c(x) 的 i i= 0 反向多项式 c (x) = 倡 22 ∑ i= 0 ci x 23 - i 被 g1 (x) 的反向多项式除尽 ,即 g2 (x) | c (x) , 倡 于是 22 (x + x 21 + … + x + 1) = g1 (x)g2 (x) | c(x)c (x) = 倡 22 ∑ i ,j = 0 ci c j x i+ 23 - j 。 所以 22 ∑ i ,j = 0 ci c j x i+ 23 - j ≡ 0或 x 22 + x 21 + … + x+1 (mod x 23 - 1) 。 现在设 w H (c(x)) 为偶数 l ,则 ci (0 ≤ i ≤ 22) 有 l 个为 1 ,其余为 0 ,所以上式左 2 23 边共有 l 个 ci c j = 1 ,将上式右边模 x - 1 化成次数 ≤ 22 的多项式之后 ,常数 项为 ∑ cc i= j i j = ∑ i c i = l = 0 ,从而 ci c j x i - j ≡ 0(mod x23 - 1) ,即 l2 - l = ∑ 0 ≤ i ≠ j ≤ 22 l(l - 1) 个非零项 ci c j x (ci c j = 1) 在指数模 23 之后彼此相消 ,但是若 i - j ≡ i′ - j′(mod 23)(i ≠ i′ ,i ≠ j ) ,则 j - i ≡ j′ - i′(mod 23) 所以每次都是 4 项一 起消掉 ,于是 4 | l(l - 1) ,由于 l - 1 为奇数 ,所以 4 | l ,这表明 C 中码字的权若为 偶数 ,则必是 4 的倍数 。所以 l ≠ 6 ,即 C 中没有权 6 的码字 。 i- j 现在设 l 为 5 ,这时 22 ∑ i ,j = 0 ci c j x i- j (mod x 23 - 1) 的常数项为 5 = 1 ∈ F 2 ,所以 第3章 22 ∑ i ,j = 0 ci c j x ≡ 1 + x + x + … + x (mod x i- j 2 22 23 - 1) ,但是 ∑ 0 ≤ i ≠ j ≤ 22 ci c j x i- j 循环码 当中非零 项只有 5 - 5 = 20 项 ,它不可能同余于具有 22 项的 x + x + … + x ,所以 l ≠ 5 ,综合上述可知 d ≥ 7 ,由 Hamming 界可知 d = 7 。 可以证明 ,参数[23 ,12 ,7]的所有二元线性码均彼此等价 ,所以推论 2 .2 .4 中构作的二元 Golay 码 G23 等价于这里的循环码 C 。 例 8(三元 Golay 码 G11 是循环码 ) 设 α 是F 3 的某个扩域中的 11 阶元素 , 2 2 22 g1 (x)为 α 在F 3 [ x ]中的最小多项式 ,则 g1 ( x )的全部根为{ α ,α ,α ,α = α , 3 9 27 5 α = α } ,于是 deg g1 (x) = 5 ,记 g2 (x)为 α 在F 3 [x]中的最小多项式 ,它也是 5 15 4 -1 次不可约多项式 ,于是 x - 1 = (x - 1)g1 (x)g2 (x) 。 设 C 是码长为 11 并且以 g1 ( x)为生成式的三元循环码 ,则参数 [n ,k] = 11 [11 ,6] 。 由于 C 是以 α ,α ,α 为根的 BC H 码 ,所以 C 的最小距离 ≥ 4 ,我们现 n n n n 在证明 d = 5 ,设 c( x) = a1 x 1 + a2 x 2 + a3 x 3 + a4 x 4 ∈ F 3 [ x ]是 C 中权 4 的码 字 ,其中 0 ≤ n1 < n2 < n3 < n4 ≤ 10 ,a1 ,a2 ,a3 ,a4 ∈ {1 ,2} 。 则 g1 ( x)|c(x) 。 于是 3 g2 (x)|x c(x 11 (a1 x n1 -1 + a2 x 4 5 ) = c (x) ,但是 g1 (x)g2 (x) = 1 + x + x + … + x 倡 + a3 x n2 2 n3 + a4 x )(a1 x n4 11 - n1 + a2 x 11 - n2 10 + a3 x 11 - n3 ,所以 + a4 x 11 - n4 ) ≡ α(1 + x + x + … + x ) (mod x - 1) , 2 2 2 2 其中 α ∈ F 3 ,上式左边的常数项为 a1 + a2 + a3 + a4 = 1 + 1 + 1 + 1 = 1 ,可知 α = 1 , 2 10 11 在此同余式中代入 x = 1 ,得到(a1 + a2 + a3 + a4 ) = 11 = 2 ,这个等式在F 3 中是不 可能的 ,因此 C 中没有权 4 的码字 ,于是 d ≥ 5 ,再由 Hamming 界可知 d = 5 ,即 C 是参数[n ,k ,d] = [11 ,6 ,5]的三元完全码 ,它与定理 2 .2 .5 中的三元 Golay 码 G12 有同样参数 ,可以证明这两个码等价 。 2 习题 1 设 x - 1 = g(x)h( x) ,其中 g(x)和 h(x )为F q ( x)中首 1 多项式 , (n ,q) = 1 ,令 C 是以 g(x)为生成式的 q 元循环码(码长为 n) 。 证明 :C 是自正交码 -1 当且仅当对于 h(x)的每个根 α ,α 均为 g(x)的根 。 n 习题 2 试构作一个参数为[n ,k ,d] = [31 ,16 ,7]的二元循环码 。 习题 3 设 α是F2 [x]中本原多项式 x + x + 1 的一个根 ,C 是以 α 和 α 为根 的二元 BCH 码(码长 31) ,如果收到 y = (1001011011110000110101010111111) ,并 且错位不超过 2 个 ,试将它译成 C 中码字 。 5 2 3 75 76 纠错码的代数理论 3 .4 Goppa 码 BC H 码在工程中得到实际应用 ,因为可以设计出任意大的最小距离 ,并且 有好的译码算法 ,但是在理论上 ,BC H 码并不是好的纠错码 。 我们知道 ,好的纠 错码用一些界来刻画 ,Hamming 界和 Singleton 界都是一个纠错码的参数 n ,k , d(以及 q)所满足的必要条件 ;另一方面 ,1952 年 ,Gilbert 和 Varshamov 独立地 给出纠错码如下的一个充分条件 。 引理 3 .4 .1 设 1 ≤ d ≤ n ,2 ≤ K < q ,q 为素数幂 ,如果 n d-1 (K - 1) ∑ i= 0 i (q - 1) ni < q , n 则必存在参数为(n ,K ,d)的 q 元纠错码 。 证明 当 K = 1 时引理显然成立 ,现在设存在参数为(n ,N ,d)的 q 元码 C , 并且 1 ≤ N < K ,则不同码字之间的 Hamming 距离均 ≥ d ,考虑以所有码字为中 心 ,半径为 d - 1 的 N 个球 n S d - 1 (c) = { v ∈ F q | dH (c ,v ) ≤ d - 1} (c ∈ C) , 这 N 个球在整个空间中可能重叠 ,所占向量的总数不超过 d-1 d-1 n i i | C | · ∑ (q - 1) ≤ N · ∑ (q - 1) ni i= 0 i = 0 i d-1 ≤ (K - 1) · ∑ i= 0 i n n (q - 1) ni < q = | F q | 。 所以F q 中必有向量v 不在这 N 个球的任何一个之中 ,即 v 与 C 的任何一个码字 的 Hamming 距离均 ≥ d ,将 v 加到 C 之中 ,得到新的码有 N + 1 个码字 ,最小距 n 离仍 ≥ d 。 这就表明F q 中必有 K 个向量使它们的相互距离均 ≥ d ,证毕 。 n 由引理 3 .4 .1 和一些估计技巧 ,可以得到如下的结果 ,叫作 G唱V 渐近界 。 q -1 对每个固定的素数幂 q 和 0 < δ < ,均存在一族 q 元线性码 [ni ,ki ,di ] q di ki = δ 并且 lim = 1 - H q (δ) ,其中 H q (δ) = (当 i → ∞ 时 ,ni → ∞ ) ,使得 lim i → ∞ ni i → ∞ ni q -1 δlog q (q - 1) - δlog q δ - (1 - δ)log q (1 - δ)(注意当 δ 从 0 到 时 ,H q (δ)从 0 增加 q 到 1) 。 第3章 lim i→ ∞ 循环码 可以证明 :对每个固定的素数幂 q ,不存在一族 q 元 BC H 码[ni ,ki ,di ]使得 ki di 和 lim 均为正数 。 所以从渐近的观点看 ,BC H 码不是好码 。 尽管在理 i → ∞ ni ni 论上达到 G唱V 渐近界的线性码族是存在的 ,但是长时间里人们没有给出构作这 种码的具体方法 。 20 世纪 70 年代 ,前苏联数学家 Goppa 提出一种构作线性码的新方法 ,是 BC H 码的一种推广 ,用这种码可以构作出达到 G唱V 渐近界的线性码族 。 这种 线性码的发现是由于 Goppa 对 BC H 码作了新的思考 。 设(n ,q) = 1 ,F q (β) = F qm ,其中 β是 n 次本原单位根(即 β为 n 阶元素) 。C 是 以{β | 1 ≤ j ≤ d - 1} 为根的 BCH 码(码长为 n ,设计距离为 d) 。于是 ,对于 c(x) = j n-1 ∑ i= 0 ci x ∈ F q [x] , i c(x) ∈ C 骋 c(β ) = 0 j 由于 (z n - 1) n-1 ∑ i= 0 (1 ≤ j ≤ d - 1) 骋 ci = -i z -β n-1 ∑ i= 0 n-1 = 可知 c(x) ∈ C 骋 (z n - 1) n- 1 骋 ∑ i= 0 ∑ k= 0 n-1 ∑ i= 0 ci β = 0 ci z - 1- i = z -β n z n-1 ∑ i= 0 k n-1 ∑ i= 0 ci β i(k+ 1 ) n-1 ∑ i= 0 ci n-1 ∑ k= 0 z k (β - i )n - 1 - k , ci ≡ 0 -i z -β ci -i ≡ 0 z -β (1 ≤ j ≤ d - 1) 。 ij (mod z d-1 (mod z d - 1 ) ) (因为 z - 1 是环F q [[z ]]中可逆元) 。 n ∞ (后一个同余式的意思为 :将同余式左边展成为幂级数 ∑ i= 0 αi z 之后 ,αi = 0(对 0 ≤ i ≤ d - 2) ,它也等价于 :将左边表示成互素多项式之商 i d-1 f (z ) ,则 z | g(z ) f (z ) 。) d-1 i Goppa 的推广是把模 z 改用Fqm [z ]中一般的多项式 g(z) ,并且 β (0 ≤ i ≤ n - 1)也改用Fqm 中任意不同的元素 。 定义 3 .4 .2 设 g(z )是Fqm [z ]中 t 次首 1 多项式 ,L = { γ0 ,γ1 ,… ,γn - 1 }为 F qm 中 n 个不同元素组成的集合 ,并且 g(γi ) ≠ 0(0 ≤ i ≤ n - 1) 。 码长为 n 的 q 元 77 78 纠错码的代数理论 G o pp a 码定义为 · · · · · · c = (c0 ,c1 ,… ,cn - 1 ∈ F q | G(L ,g) = n n-1 ∑ i= 0 这是 q 元线性码 ,现在估计它的参数 k 和 d 。 定理 3 .4 .3 mt ,d ≥ t + 1 。 证明 ci ≡ 0 z - γi 对于上面定义的 Goppa 码 G(L ,g) ,参数 k 和 d 满足 k ≥ n - t 设 g(z ) = ∑ i= 0 gi z ∈ Fqm [z ] (gt = 1) ,则对每个 γ ∈ Fqm , i 1 - 1 g(z ) - g(γ) = z -γ z -γ g(γ) 从而 (mod g(z )) 。 n- 1 (mod g(z )) , n-1 ci - 1 g(z ) - g(γi ) = ∑ ci ∑ z - γi i i) z - γ g(γ i= 0 i= 0 n 所以对于 c = (c0 ,c1 ,… ,cn- 1 ) ∈ F q , n-1 c ∈ G(L ,g) 骋 ∑ i= 0 (mod g(z )) 。 g(z ) - g(γi ) ci ≡ 0 z - γi g(γi ) (mod g(z )) n-1 g(z ) - g(γi ) ci = 0 z - γi i = 0 g(γi ) (因为左边多项式的次数小于 deg g(z)) 由于 ∑ 骋 (7) j i g(z ) - g(x) = ∑ gi+ j + 1 x z , z - x i + j ≤ t-1 -1 t-1 t-2 0 记 hj = g(γj ) 考虑式(7)中 z ,z ,… ,z 的系数 ,可知线性码 G(L ,g)有如 下的校验阵 h0 gt … hn - 1 gt H= h0 (gt - 1 + gt γ0 ) … hn - 1 (gt - 1 + gt γ n - 1 ) ⁝ ⁝ ⁝ 。 h0 (g1 + g2 γ0 + … + gt γ0 ) … hn - 1 (g1 + g2 γn - 1 + … + gt γ n - 1 ) 由于 gt ≠ 0 ,可知 G(L ,g)也有如下的校验阵 h0 … hn - 1 t -1 H′ = t -1 h0 γ0 … hn - 1 γn - 1 ⁝ ⁝ ⁝ … hn - 1 γ n - 1 h0 γ 0 t-1 t-1 , hj = g(γj ) -1 ∈ Fqm 第3章 循环码 H′中每个元素属于Fqm ,对于一组固定的Fq唱基 ,这些元素可看成是长为 m 的列向 量(元素属于Fq ) ,从而 H′可看成是 Fq 上 mt 行 n 列的矩阵 ,它在Fq 上的秩 ≤ mt , 于是 k = dim Fq G ( L ,q) ≥ n - mt ,进 而 ,H′中 任 t 列 构 成 的 行 列 式 均 不 为 零 (Vandermonde 行列式) ,所以 d ≥ t + 1 。 当 q = 2 时 ,可以给出 Goppa 码最小距离的更强结果 。 定理 3 .4 .4 对于定义 3 .4 .2 中的 Goppa 码 G(L ,g) ,若 q = 2 ,并且 g(z )在 F2 的扩域中没有重根 ,则 d ≥ 2 t + 1 。 证明 对于非零向量(c0 ,c1 ,… ,cn - 1 ) ∈ F 2 ,令 f (z ) = n 则 f′(z) = f (z) n-1 ∑ i= 0 n-1 朝 i= 0 c (z - γi ) i ( ≠ 1) , ci 。 z - γi 于是 f′(z ) (c0 ,c1 ,… ,cn- 1 ) ∈ G(L ,g) 骋 ≡ 0 (mod g(z)) f (z ) 骋 g(z) | f′(z) (由于 f (z ) 无重根 ,( f ,f′) = 1) 。 但是对于特征 2 的域F 2 m ,F 2 m [z ]中多项式的微商 f′(z )是 z 的多项式 ,并且每 2 个数 a ∈ F 2 m , a也属于F 2 m ( a = a 2 m -1 于 g(z)无重根可知 ) ,因此 f′(z ) = h(z ) ,h(z ) ∈ F 2 m [z ] ,由 2 g(z) | f′(z) 骋 g(z) | h(z ) 骋 g (z ) | h (z ) = f′(z) 。 2 2 所以 c = (c0 ,c1 ,… ,cn - 1 ) ∈ G(L ,g) 骋 g (z ) | f′(z ) 痴 deg f′(z ) ≥ 2deg g(z ) = 2 t 2 痴 deg f (z ) ≥ 2 t + 1 。 由 f (z)的定义知 deg f (z ) = w H (c) ,所以二元线性码 G(L ,g)中每个非零码字 c 的 Hamming 权均 ≥ 2 t + 1 ,这表明 d ≥ 2 t + 1 。 现在于定义 3 .4 .2 中取 m = 1 ,则定理 3 .4 .3 给出 k ≥ n - t ,d ≥ t + 1 ,于是 k + d ≥ n + 1 ,但是由 Singleton 界有 k + d ≤ n + 1 ,于是 k = n - t 并且 d = t + 1 ,因 此有以下结果 。 定理 3 .4 .5 设 g(x)为Fq [x ]中 t 次首 1 多项式 0 ≤ t ≤ n - 1 ,L = { γ0 ,… , 79 80 纠错码的代数理论 γn - 1 }为Fq 中 n 个不同元素 (所以 n ≤ q) ,并且 g(γi ) ≠ 0 (0 ≤ i ≤ n - 1 ) 。 则 q 元 Goppa 码 n-1 ci G(L ,g) = (c0 ,c1 ,… ,cn - 1 ) ∈ F qn | ∑ ≡ 0 (mod g(x)) i = 0 x - γi 的参数为[n ,k ,d] ,其中 k = n - t ,d = t + 1 ,从而为 M DS 码 。 Goppa 码也具有与 BC H 码相类似的好的译码算法 ,并且 Goppa 码族可以 渐近地达到 G唱V 界(详见 van Lint 书[2]第 9 章) 。 Goppa 在发明这种线性码之 后 ,又从几何的角度加以审视 ,得到更大的推广 ,这就是代数几何码 。 这种码在 建立后不久 ,于 1982 年得到代数几何码族 ,渐近地超过了 G唱V 界 。 由于这种码 需要更多的代数几何(有限域上代数曲线)和代数数论(代数函数域的算术理论) 方面的知识 ,本书略去代数几何码的内容 。 有兴趣的读者可参阅关于代数几何 码的书[7 ~ 12] 。 习题 1 设 α 是F 2 [x]中多项式 x + x + 1 的一个根 ,L = {α |1 ≤ i ≤ 15 ,(i , i 4 15) = 1} ,g(z ) = x + 1 ,分析 Goppa 码 G(L ,g) ,证明这个二元线性码的参数为 [n ,k ,d] = [8 ,4 ,4] 。 2 习题 2 (线性码的G唱V 界)设1 ≤ k ≤ N , d ≥ 1 ,如果 q 则存在参数[n ,k ,d] 的 q 元线性码 。 n - k+ 1 d -1 > ∑ i= 0 i (q - 1) ni , 4 量子纠错码 我们在前四章介绍的“经典”纠错码理论已经有五十余年的历史 ,它来源于 数字和网络通信可靠性的实际需要 ,显示出纯粹数学的一些学科(组合学 、数论 、 抽象代数 、代数几何 … … )的重要应用和巨大作用 。 20 世纪后期 ,量子计算和量 子通信成为通信界 、物理学界和数学界的热门话题 。 在理论上 ,利用量子物理的 并行计算机制 ,可以极大地加快计算和通信速度 。 在实际上 ,尽管目前仍无法预 料何时能建成量子计算机 ,而量子计算和量子通信的真正应用则更为遥远 ,但是 实验的进展很快 ,发达国家均以政府行为支持这方面的研究工作 。 量子纠错码的历史只有不到八年的时间 ,与经典情形(数字通信)一样 ,纠错 性能不仅是量子通信而且是量子计算得以实现的必要保障之一 。 1995 年以前 , 人们认为解决量子纠错问题比经典的数字通信情形要困难得多 ,这是由于量子 物理的特殊机制所造成的(不可复制性 ,与环境的相互影响 ,纠缠态 ,信息状态的 连续性等) ,1995 — 1996 年取得重要的突破 ,Peter Shor 和 Steane 在物理上把复 杂的纠缠态错误归结和简化成只需考虑每个量子位上发生的几种错误类型 (Pauli 算子 σx ,σz 和 σ y ) 。 由此 ,Shor 构作出世界上第一个量子纠错码 [[9 ,1 , 3]] ,用 9 个量子位的码可纠 1 位错误 ,随后人们把所需的 9 位减到 7 位和 5 位 。 1998 年 ,Calderbank ,Rains ,Shor ,Steane ,Sloane 等人给出量子纠错码理论的数学形 式和构作量子码的一种系统而有效的数学方法 ,由此建立了经典纠错码和量子码 之间的联系 。 此后 ,量子码的研究进展加速 ,不仅利用经典码(RM 码 ,RS 码 ,BCH 码 ,代数几何码)构作出一批好参数的量子码 ,而且开展了其他课题的研究(权函数 的 MacWilliams 恒等式 ,界估计 ,多态量子码 ,构作量子码的其他方法等) 。 2001 年 ,量子码[[5 ,1 ,3 ]]已经成功地在实验室范围内实现了纠错功能 。 我们在本章介绍量子纠错码的基本数学概念和主要结果 ,我们只涉及量子 码理论的数学侧面 ,不讨论其物理机制 ,特别对于物理文献中的某些结果 ,我们 试图给出纯数学的证明 ,此外 ,我们在介绍量子纠错码的基本概念时 ,常常与经 典纠错码情形加以参照和对比 。 82 纠错码的代数理论 4 .1 什么是量子纠错码 1 .量子位(quantum bit ,qubit) 、量子态和量子码 在数字通信中 ,一个数字位 (bit )为有限域F q 中的元素 ,而一个状态 (字)是 F 中的一个向量v = (v1 ,… ,v n )(v i ∈ F q )(叫作 n唱bit) ,在量子通信中 ,一个量子 n q 位(qubit )和量子态(n唱qubit)均是复向量空间中的对象 ,以下用C 表示复数域 。 定义 4 .1 .1 2 一个量子位是C 中的一个非零向量 。 2 在物理上常常把二维复向量空间C 的一组基表示成 |0枛和 |1枛 。 所以一个 量子位表示成 (α ,β ∈ C ,(α ,β) ≠ (0 ,0)) 。 | v枛 = α | 0枛 + β | 1枛 一个 n 位的量子态(n唱qubit )是张量积空间(C ) 2 的非零向量 。 n 我们可以取C 2 的如下一组基 碅 n 2n =C 碅 … 碅C =C 中 2 2 { | a0 枛 碅 | a1 枛 碅 … 碅 | an - 1 枛 :(a0 ,… ,an - 1 ) ∈ F 2 } 。 n 对于 a = ( a0 ,… ,an - 1 ) ∈ F 2 ,我 们 把 纯 张 量 积 | a0 枛 碅 … 碅 | an - 1 枛 简 记 为 n |a0 a1 … an - 1 枛或者 |a枛 ,于是一个 n 位量子态惟一地表达成 0 ≠ | v枛 = ∑ n ( a0 ,… ,an-1 ) ∈ F 2 ca0 … an-1 | a0 a1 … an - 1 枛 = 其中 ∈ C (系数不全为零) 。 熟知复向量空间C ∑ n a ∈ F2 2 n 中有厄米特内积 :对于 | v枛 = ba | a枛(ca ,ba ∈ C ) ,定义它们的内积为 枙 u | v枛 = ∑ n a ∈ F2 ∑ n a ∈ F2 ∑ n a ∈ F2 ca | a枛 ca | a枛 和 | u枛 = ba c a ∈ C , 这里 ba 表示 b a 的复共轭 ,如果枙 u|v 枛 = 0 ,称 u 和 v 正交 。 量子物理与经典情形有一个重大区别 ,在数字通信中 ,两个状态 u= (u0 ,… , un - 1 )和v = (v0 ,… ,v n - 1 ) ∈ F q 是不同的 ,是指 u ≠ v ,即至少有一个 i(0 ≤ i ≤ n n - 1)使 ui ≠ v i ,而对于两个量子态 |u枛和 |v枛 (1) 如果 |u枛 = α|v枛(其中 α ∈ C 子态 ; × = C - {0}) ,则 |u枛和 |v枛看作是同一个量 第4章 量子纠错码 (2) |u枛和 |v枛完全可区分 ,是指它们正交 :枙 u|v枛 = 0 。 定义 4 .1 .2 一个量子码 Q 即指(C ) 2 碅 n n = C 的一个非零子空间 ,n 叫作 Q 2 的码长 ,记 K = dim C Q(子空间 Q 的维数) ,而 k = log 2 K ,于是 0 ≤ k ≤ n 。 和经典情形类似 ,量子码 Q 的基本参数除了 n 和 K (或 k)之外 ,还应有一个 重要参数反映纠错能力 ,首先要说明什么是量子错误 。 2 .量子错误群 对于经典情形 ,码字 c 和错误 ε 均是F q 中向量 ,错误 ε 对码字 c 的作用是相 n 加 ε + c ;在量子情形 ,量子码和量子错误是完全不同的物理对象 ,量子错误是作 n 2 用在空间C 上的酉线性算子 。 Shor 等人已经把问题简化成按每个量子位作用 的情形 ,对于每个量子位 |v枛 = α|0枛 + β|1枛 > ∈ C 2 ,量子错误算子对于基 |0枛和 |1枛可表示成二阶复酉阵 ,一共有 3 个基本的错误算子(Pauli 矩阵)σx ,σz 和 σ y , 它们是 0 1 α β σx = , σx | v枛 = β | 0枛 + α | 1枛 , σx = (位错) , 1 0 β α 1 0 α α σz = , σz | v枛 = α | 0枛 - β | 1枛 , σz = (相错) , β -β 0 -1 σy = i σx σ z = σy α = β - iβ iα 0 i -i , σy | v枛 = - iβ | 0枛 + iα | 1枛 , 0 (i = 1 0 当然还有 I = - 1) , 0 ,I | v枛 = | v枛 ,无错 。 1 这些二阶酉阵之间的基本关系为 2 2 2 σx = σy = σz = I , σx σ z = - σz σ x 。 定义 4 .1 .3 作用在 C 2 e = i ω0 碅 … 碅 ωn - 1 λ 这是酉线性算子 ,它在 C 分别作用 : 碅 n 2 碅 n 上的量子错误算子有如下形式 (λ ∈ {0 ,1 ,2 ,3} ,ω j ∈ { σx ,σy ,σz ,I}) 。 的基元 |a枛 = |a0 枛 碅 … 碅 |an - 1 枛上的作用为逐位 e | a枛 = i ( ω0 | a0 枛) 碅 … 碅 ( ωn - 1 | an - 1 枛) 。 λ 然后线性地扩充到 C 所有量子错误算子 2 碅 n (1) 的所有元素上 。 83 84 纠错码的代数理论 En = {i ω0 碅 … 碅 ωn-1 | λ ∈ {0 ,1 ,2 ,3} , ωj ∈ {σx ,σy ,σz ,I} (0 ≤ j ≤ n - 1)} λ 形成一个有限群 ,|En |= 4 定义群运算为 n+ 1 ee′ = i 例1 ,其中对于 e = i ω 0 碅 … 碅 ω n - 1 和 e′ = i ω′0 碅 … 碅 ω′n - 1 , λ λ+ λ′ λ′ ( ω0 ω′0 ) 碅 … 碅 ( ωn - 1 ω′n - 1 ) 。 (n = 2) ,对于 e = I 碅 σx ,e′ = σy 碅 σz ,则 ee′ = σy 碅 σx σ z = i σy 碅 σy e′e = σy 碅 σz σ x = i σy 碅 σy 。 3 En 不是交换群 ,由关系式(1)容易看出 ,群 En 的中心 (即与 En 中所有元素均可 交换的那些元素形成的子群)为 C(En ) = {iλ = iλ (I 碅 … 碅 I) | λ ∈ {0 ,1 ,2 ,3}} = { ± 1 ,± i} 。 进而 ,由关系式(1)可知对 En 中任何元素 e ,e′均有 ee′ = e′e 或 ee′ = - e′e ,于是 商群 En = En /C(En ) 是 4 阶交换群 ,并且对 En 中每个元素 珋e 均有 珋e2 = 1 ,从而 En 是初级 2 唱群 ,即为 n 2 n 个二阶循环群的直和 ,从而同构于F 2 的加法群 ,我们现在给出群 En 的另种 2n 表达方式 ,由此自然给出 En 和F 2 的一种同构 。 2n 将 En 中元素 e= i λ+ l e = i ω 0 碅 … 碅 ω n - 1 表示成 λ X (a)Z(b) 其中 ,对于 0 ≤ j ≤ n - 1 , 而 l= # (0 (1 (aj ,bj ) = (0 (1 j |0 ≤ j ≤ n - 1 ,ω j = σy X (a) = ω′0 碅 … 碅 其中 ω′j = 例2 (a = (a0 ,… ,an- 1 ) ,b = (b0 ,… ,bn - 1 ) ∈ F 2 ) , ,0) , 若 ω j = I , ,0) , 若 ω j = σx , ,1) , 若 ω j = σz , ,1) , 若 ω j = σy ( = i σx σ z ) 。 ,于是 ω′n - 1 , Z(b) = ω″0 碅 … 碅 ω″n- 1 , I , 若 aj = 0 , σx , 若 aj = 1 , ω″j = e = i σx 碅 σy 碅 σz 碅 I (n= 4) = i σx 碅 σx σ z 碅 σz 碅 I 2 = i (σx 碅 σx 碅 I 碅 I)(I 碅 σz 碅 σz 碅 I) 2 n I , 若 bj = 0 , σz , 若 bj = 1 。 第4章 量子纠错码 = i X(1100)Z(0110) 。 2 2n 下面引理表明这种新的记号容易表达错误算子在C 的基元上的作用 。 引理 4 .1 .4 2n (1) X(a)和 Z(b)(a ,b ∈ F 2 )在C 的基元 |v 枛 = |v0 v1 … v n - 1 枛 n (v ∈ F 2 )上的作用为 n X (a)|v 枛 = |a+ v 枛 , Z(b)|v 枛 = ( - 1) |v 枛 。 λ λ′ (2) 对于 e = i X (a)Z(b)和 e′ = i X (a′)Z(b′) ∈ En , a · b′ + a′ · b ee′ = ( - 1) e′e , b· v 其中对 a = (a0 ,… ,an- 1 ) 和 b = (b0 ,… ,bn - 1 ) ∈ F2 ,a· b = n n-1 ∑ j= 0 (2) (3) aj b j ∈ F2 为F2 中 n 通常的内积 。 证明 (1) 由定义知 σx |0枛 = |1枛 ,σx |1枛 = |0枛 ,由于 X (a) = ω0 碅 … 碅 ωn - 1 , 其中 ωj = I , 若 aj = 0 , σx , 若 aj = 1 。 可知 ω j |v j 枛 = |v j + aj 枛 ,从而 X(a)|v 枛 = |a+ v 枛 。 类似地 ,Z(b) = ω0 碅 … 碅 ω n - 1 ,其中 I , 若 bj = 0 , ωj = σz , 若 bj = 1 。 因为 σz |0枛 = |0枛 ,σz |1枛 = - |1枛 ,可知 ω j |v j 枛 = ( - 1) j j |v j 枛 ,从而 Z(b) |v 枛 = b v b· v ( - 1) |v 枛 。 n (2) 对每个基元 |v 枛(v ∈ F 2 ) , λ + λ′ ee′|v 枛 = i X (a)Z(b)X (a′)Z(b′)|v 枛 b′ · v λ + λ′ = ( - 1) i X (a)Z(b)X (a′)|v 枛 = ( - 1)b′ · v iλ + λ′ X (a)Z(b)|a′ + v 枛 b′ · v + b · ( a′ + v) λ + λ′ = ( - 1) i X (a)|a′ + v 枛 (b + b′) · v + a′ · b λ + λ′ = ( - 1) i |a+ a′ + v 枛 。 同样地可算出 (b + b′) · v + a · b′ λ + λ′ e′e |v 枛 = ( - 1) i |a+ a′ + v 枛 。 a · b′ + a′ · b 由此即知 ee′ = ( - 1) e′e 。 证毕 。 对 En 中每个元素 e = i X (a)Z(b) ,将它在 En = En /{ ± 1 ,± i}中的象表示成 λ 85 86 纠错码的代数理论 (a ,b ∈ F 2 ) 。 珋e = (a|b) n 这时对于 e′ = i X (a′)Z(b′) ,e′ = (a′|b′) ,我们由式(3)便知 λ′ e e′ = ee′ = X (a+ a′)Z(b + b′) = (a+ a′|b+ b′) 。 2n 这就给出了乘法群 En 和加法群F 2 的同构 : F 2 , i X (a)Z(b) = (a|b) En 进而 ,由式(3) 知 , 2n λ (a ,b ∈ F 2 ) 。 n ee′ = e′e 骋 ( - 1) = 1 骋 a · b′ + a′ · b = 0 ∈ F 2 (4) 2n 所以自然考虑向量空间 F 2 中的“辛内积” (symplectic inner product ) : 对 于 a · b′ + a′ · b (a|b)和(a′|b′) ∈ F 2 ,定义它们的辛内积为 2n ((a|b) ,(a′|b′))s = a · b′ + a′ · b = (a ,b) 0 In In a′ ∈ F2 。 b′ 0 对于F 的一个子空间 C ,它的辛对偶空间定义为 2n 2 Cs = { v ∈ F 2 |(v ,c)s = 0 ,对每个 c ∈ C} 。 2n ⊥ 这是F 2 的子空间 ,并且 dim C + dim Cs = dimF 2 = 2 n ,而且 (Cs )s = C 。 如果 2n 2n ⊥ ⊥ ⊥ C 彻 Cs ,称 C 为辛自正交的 ,如果 C = Cs (从而 dim C = n) ,称 C 是辛自对偶的 , 由式(4) 便知引理 4 .1 .5 成立 。 ⊥ ⊥ 引理 4 .1 .5 设 S 是 E n 的一个子群 ,则 S 是交换群当且仅当 S 是F 22 n 的辛 自正交子空间 。 今后在构作量子码时 ,要使用 En 的交换子群 ,由引理 4 .1 .5 可知这相当于 2n 采用F 2 中的辛自正交线性码 。 3 .量子纠错 定义 4 .1 .6 量子错误算子 e = iλ ω 0 碅 ω1 碅 … 碅 ω n- 1 = iλ′ X (a)Z(b) , e = (a | b) ( ω j ∈ { I ,σx ,σy ,σz } , a = (a0 ,… ,an - 1 ) , b = (b0 ,… ,bn - 1 ) ∈ F 2 ) 的量子权定义为 w Q (e) = w Q (e) = # { j | 0 ≤ j ≤ n - 1} ,(aj ,bj ) ≠ (0 ,0)} = # { j | 0 ≤ j ≤ n - 1 ,ω j ≠ I} 。 它表示真正有错误作用的量子位的个数 ,对于 0 ≤ l ≤ n ,令 En (l) = {e ∈ En | w Q (e) ≤ l} , En (l) = {e ∈ En | w Q (e) ≤ l} 。 则易知 | En (l) | = 4 · l ∑ i= 0 3 i n , i | En (l) | = l ∑3 i= 0 i n 。 i n 第4章 n 量子纠错码 现在我们表达一个量子码 Q 彻 C 的纠错能力 ,对于经典情形 ,F q 中一个码 2 n C 可以纠正 ≤ l 个错 ,可以用下列形式来刻画 : 如果 c1 ,c2 ∈ C ,c1 ≠ c2 (不同) ,则对任意 e1 ,e2 ∈ F q ,w H (e1 ) ≤ l ,w H (e2 ) ≤ l , n 均有 c1 + e1 ≠ c2 + e2 (不同) 。 让我们回忆 ,经典情形两个向量 c1 和 c2 不同 ,对应于量子情形两个量子状 态 |u枛和 |v枛“完全可区分”这一概念 ,即 |u枛和 |v枛对厄米特内积正交 :枙 u|v枛 = 0 (物理上把内积表示成枙 u|v枛) ,于是有如下的定义 。 定义 4 .1 .7 n 设 Q 为C 中一个量子码(复线性子空间 ) ,称 Q 可以纠正 ≤ l 2 个量子错(0 ≤ l ≤ n) ,是指 Q 满足如下条件 : 如果|v 1 枛 ,|v 2 枛 ∈ Q 并且枙v 1 |v 2 枛 = 0(完全可区分) ,则对任意 e1 ,e2 ∈ En (l)(即 w Q (e1 ) ≤ l ,w Q (e2 ) ≤ l) ,均有枙v 1 |e1 e2 |v 2 枛 = 0(即 e1 |v 1 枛和 e2 |v 2 枛完全可区分) 。 注记 T T 由于 ω = σx ,σy ,σz 都是厄米特算子(即 ω = ω ,其中 ω 和 ω 分别表 示矩阵的共轭和转置) ,所以对每个 e ∈ En ,e = i ω 0 碅 … 碅 ωn - 1 本质上也是厄米 λ 特算子 ,即可取适当的 l ,使 i e 为厄米特算子 ,而 e 和 i e 的作用本质上是相同 l l 的 。 于是 ,物理学家用枙v1 |e1 e2 |v2 枛表示复向量 e1 |v1 枛和 e2 |v2 枛的厄米特内积是 合理的 ,它也可看成是 |v1 枛和 e1 e2 |v2 枛的内积 ,或者是 e2 e1 |v1 枛和 |v2 枛的内积 。 量子码 Q 叫作具有最小距离 d ,是指 d 为满足如下条件的最大值 :如果 |v1 枛 ,|v2 枛 ∈ Q ,枙 v1 |v2 枛 = 0 ,则对每个 e ∈ En (d - 1) ,均有枙 v1 |e|v2 枛 = 0 。 由于 w Q (ee′) ≤ w Q (e) + w Q (e′) ,所以我们有如下结果 ,它可看成是量子纠 错码理论的基本出发点 。 引理 4 .1 .8 设 d 是量子码 Q 的最小距离 ,l = d -1 2 ,则 Q 可纠正 ≤ l 个 量子错误 。 类似于经典情形 ,量子码 Q 有三个基本参数 :n ,K (或 k)和 d ,其中 Q 为C 2 n 的子空间 ,dim Q = K ,k = log2 K ,我们用符号((n ,K ,d))或者 [[n ,k ,d]]表示这 k 和 d 愈大愈好 ,与经典情形一样 , n 这三个参数相互制约 ,体现在一些不等式给出的界 ,类比于经典情形 ,我们现在 n 给出量子码的 Hamming 界 ,回忆经典情形 :设 C 是F q 的一个子集合 (码 ) ,|C | 个量子码 Q 。 我们希望构作好的量子码 ,即 87 88 纠错码的代数理论 = K ,C 的最小距离为 d ,对于 l = d -1 ,所有的子集 e + C(w H (e) ≤ l)是彼此 2 不相交的 ,所以 q = | Fq | ≥ n n ∑ e w H (e) ≤ l | e+ C | = ∑ e w H (e) ≤ l | C|= K· l ∑ i= 0 i (q - 1) ni , 这就是 Hamming 界 ,对于量子情形 ,我们又要指出一个与经典情形不同之处 , 在经典情形 ,每个错误 e ≠ 0 加在 c 上 ,得到与 c 不同的向量 c + e ,在量子情形 , 对于一个量子错误 e ≠ I ,作用在某个量子状态 |v枛上 ,e|v枛不必与 |v枛完全可区分 (即不必枙v |e|v枛 = 0) ,甚至于 e|v枛和 |v枛本质上相等(即 |v枛是线性算子 e 的特征 向量) ,所以线性子空间 eQ 与 Q 不必正交 ,甚至可能彼此重合 。 定义 4 .1 .9 d -1 ,如果 2 设 Q 是码长为 n ,最小距离为 d 的量子码 ,l = n C 的诸线性子空间{e Q |e ∈ En ,w Q (e) ≤ l}彼此正交(对于厄米特内积) ,称 Q 为 纯的(pure)量子码 。 2 d -1 , 2 引理 4 .1 .10(量子 Hamming 界) 对于纯的量子码((n ,K ,d)) ,l = 我们有 2 ≥ K· n l ∑3 i= 0 i n i (5) 证明 2 = dimC n 2 n ≥ ∑ e ∈ E n ( l) dim (e Q) = dim Q · | En (l) | = K · l ∑3 i= 0 i n i 量子码叫作是完全的(perfect ) ,是指式(5) 中的等式成立 ,我们在 4 .2 节要 1 构作纯量子码[[5 ,1 ,3]] ,这是完全码(25 = 21 · 出量子 Singleton 界 :n ≥ k + 2 d - 2 。 ∑3 i= 0 i 5 ) ,我们在 4 .3 节要给 i 22 m - 1 ,k = 3 n - 2m 。 (注记 :我们在 4 .3 节要证明 ,对 每 个 m ≥ 1 ,参 数为 [[ n ,k ,d]] = 2m 2m 2 -1 2 -1 , - 2 m ,3 的完全量子码都是存在的(量子 Hamming 码)) 。 3 3 习题 1 若[[n ,k ,3]]是完全量子码 ,则存在正整数 m ,使得 n = 第4章 量子纠错码 4畅 2 Stabilizer 量子码 本节介绍 Calderbank ,Ranis ,Shor 和 Sloane 等人于 1998 年给出的一种构 作量子码的系统数学方法 。 这种方法的思想为 :首先选取错误算子群 En 的一 个交换子群 G ,根据引理 4畅 1畅 5 ,这种子群来源于F2 中的一个辛自正交码 C(C 彻 2n n CS ) ,由于 G 是交换群 ,G 在C 上的作用把整个空间分解成 G 的一些公共本征 ⊥ 2 子空间的直和 : C 2 n = χ 碄∈ G^Q(χ) , 其中 G ^ 是 G 的特征群 ,可以证明所有子空间 Q(χ)的维数相同 ,于是每个 Q(χ) 作为量子码 ,码长均为 n ,并且若 |G | = |^ G | = 2 ,则 K = dim Q(χ) = 2 /|^ G |= t 2 n- t n ,即 k = n - t 。 最后 ,可以由经典线性码 C 的特性来决定量子码 Q(χ)(χ ∈ G ^) 的最小距离 。 我们首先需要有限交换群表示论的一些知识 ,设 G 是有限交换群 ,它作用 在一个有限维复向量空间 V 之上 。 对每个 g ∈ G ,g 是 V 上的C 唱线性算子 ,并且 对 g ,g′ ∈ G , (g g′)(v ) = g(g′v ) , gg (v ) = 1(v ) = v , (v ∈ V ) , -1 其中群 G 的幺元素 1 在 V 上的作用为恒等算子 。 令G ^ 是 G 的特征群(^ G 和 G 是同构的群) ,对每个特征 χ ∈ G ^ ,定义 V 上的线 性算子 eχ = 1 | G| ∑ 珔χ (g)g 。 g∈ G 根据下面引理所述的性质 ,称{eχ :χ ∈ G ^}为本原幂等算子的正交系 。 引理 4畅 2畅 1 (2) 1 = ∑ ^ χ∈ G (1) eχ = eχ ,而当 χ ≠ χ′时 ,eχ e χ′ = 0 ; 2 eχ ; (3) 对每个 g ∈ G ,geχ = χ(g)eχ 证明 (χ(g) ∈ C ) 。 (1) 由特征的正交关系和 χ = χ - 1 可知 eχ e χ′ = = 1 2 | G| ∑ g∈ G χ(g)g ∑ h∈ G χ′(h)h (令 gh = a) 1 -1 χ(g) χ′(g a)a | G | 2 a ,g∑∈ G 89 90 纠错码的代数理论 (2) ∑ ^ χ∈ G 1 2 | G| = 0, 1 | G| 1 | G| eχ = (3) ge χ = = ∑ h∈ G 引理 4 .2 .2 G ^ ,令 ∑ a∈ G ∑ ∑ g∈ G 若 χχ′ ≠ 1(即 χ ≠ χ′) , ∑ a∈ G ^ g∈ G χ∈ G χ(h)gh = χ′(a)a ∑ (χχ′)(g) χ(a)a = eχ , 若 χ = χ′ 。 1 | G| χ(g)g = ∑ a∈ G ∑g∑ g∈ G χ(g) = 1 。 ^ χ∈ G -1 χ(ag )a = χ(g) ∑ χ(a)a = χ(g)eχ 。 a∈ G 设有限交换群 G 作用于有限维复向量空间 V 上 ,对每个 χ ∈ V (χ) = eχ V = {eχ (v ) | v ∈ V } 。 (1) 对v ∈ V (χ) ,g ∈ G ,则 g(v ) = χ( g)v ,从而 V (χ)是所有 g ∈ G 的公共 本征子空间 ,且 g 在 V (χ)上的本征值为 χ(g) ; (2) 我们有直和分解 V = 碄 ^ V (χ) 。 (6) χ∈ G 并且若每个 g ∈ G 均是 V 上的厄米特线性算子 ,则当 χ ≠ χ′时 ,V (χ)和 V (χ′)对 于厄米特内积是正交的 。 (1) 对于v ∈ V (χ) ,则v = eχ (w)(对某个 w ∈ V ) ,从而对每个 g ∈ G , g(v ) = ge χ (w) = χ(g)eχ (w) = χ(g) v 。 (2) v = ∑ e χ v = ∑ e χ (v ) = ∑ v χ ,其中v χ = eχ (v ) ∈ V (χ) ,我们再 证明 χ∈ G ^ χ∈ G ^ χ∈ G ^ 证 这个分解的惟一性 ,如果又有 v = wχ ∈ V ) 。 于是 ,由特征的正交关系可知 v χ = eχ (v ) = eχ = ∑ χ′ ∈ G ^ ∑ uχ ,uχ ∈ V ( χ) ,则 uχ = eχ (wχ )(对某个 χ∈ G ^ ∑ χ′ ∈ G ^ uχ′ = eχ ∑ e χ′ (wχ′ ) χ′ e χ e χ′ (wχ′ ) = eχ (wχ ) = uχ 。 这就证明了直和分解式(6) ,如果每个 g 均是厄米特线性算子 ,则当 χ ≠ χ′时 ,存 在 g ∈ G 使得 χ(g) ≠ χ′(g) ,由于 V (x)和 V (x′)是厄米特线性算子的本征子空 间 ,其本征值 χ(g)和 χ′(g)不同 ,熟知 V (χ)和 V (χ′)对于厄米特内积是正交的 , 这就证明了引理 4 .2 .2 。 第4章 量子纠错码 现在我们取 G 为 E n 的一个交换子群 ,|G |= 2 ,从而 G 同构于加法群F2 ,则 k n G 在C 上的作用给出直和分解 2 k C 2 n = χ 碄 Q (χ) , (7) ∈G ^ 其中 Q(χ)是 G 的 χ唱本征子空间 n n 2 2 Q(χ) = eχ C = {v ∈ C |g v = χ(g)v ,对每个 g ∈ G} 。 n 如果 G 中每个元素 g 均是C 上的厄米特线性算子 ,则式(7 )是正交分解 。 有了 这些准备 ,我们可证明构作量子码的第一个重要结果 。 2 定理 4 .2 .3(1998 ,Calderbank唱Rains唱Shor唱Sloane) 设 C 是F 2 中一个辛自 正交线性子空间(线性码) ,则存在量子码[[n ,n - k ,d]] ,其中 k = dim F2 C ,而 2n d = w Q (Cs \C) = min{ w Q (c)|c ∈ Cs \C} 。 ⊥ ⊥ 由 C 的自正交性可知 ,C 彻 Cs 并且 k ≤ 2 n - k ,从而 k ≤ n 。 取 C 的一 ⊥ 证明 组F 2 唱基{(aj |bj )|aj ,bj ∈ F 2 ,1 ≤ j ≤ k} ,(aj |bj )可等同于 En 中元素 ,它在 En 中 n 的原象为 i X (aj )Z(bj ) ,我们总可取 λ ∈ {0 ,1 ,2 ,3} ,使 ej = i X (aj )Z(bj )是厄米 k 特算子 。 于是{ ej |1 ≤ j ≤ k}生成 En 的一个 2 阶交换子群 G (由于 C 是辛自正交 的 ,利用引理 4 .1 .5 ) ,并且 G 中每个元素 g 均是厄米特算子 。 从而有分解式 (7) ,并且当 χ ≠ χ′时 ,Q(χ)和 Q(χ′)正交 。 n- k 我们现在证明对每个 χ ∈ G ^ ,均有 dim Q(χ) = 2 。 为此要考虑 En 在子空 间集合{Q(χ)|χ ∈ G ^}上的作用 。 对每个 |v枛 ∈ Q(χ) ,g ∈ G ,则 g | v枛 = χ(g) | v枛 (χ(g) ∈ C ) 。 所以对每个 e ∈ En , (珔g ,珋e ) g(e | v枛) = ge | v枛 = ( - 1) s eg | v枛 (引理 4 .1 .4(2)) λ λ = ( - 1)(珔g ,珋e) s χ(g)e | v枛 (对每个 g ∈ G) , 易知 χ珋e :G → { ± 1} , χ珋e (g) = ( - 1)(珔g ,珋e)s 是 G 的一个特征 。 所以对每个 g ∈ G , g(e | v枛) = χ珋e (g)χ(g)e | v枛 = χ′(g)e | v枛 (χ′ = χ珋e · χ ∈ G ^) 。 这表明 e|v枛 ∈ Q(χ′) 。 于是群元素 e 把 Q (χ)映成 Q(χ′) 。 这表明 dim Q(χ) = dim Q(χ′) 。 当 e 过 E n 中所有元素时 ,χ珋e 从而 χ′ = χ珋e χ 也过 G 的所有特征 。 这表 明所有子空间 Q(χ)(χ ∈ G ^)的维数相同 ,于是维数为 2 n /|^ G |= 2 n /2 k = 2 n - k 。 ⊥ 将每个子空间 Q(χ)看成是量子码 ,我们来证其最小距离为 d ≥ w Q (Cs \C) 。 也即要证明 :若 e ∈ En (d - 1) ,v1 ,v2 ∈ Q(χ) ,枙v1 |v2 枛 = 0 ,则枙v1 |e|v2 枛 = 0 。 91 92 纠错码的代数理论 (1) 如果 珋e ∈ G 珚 = C ,则 e|v2 枛 = χ(珋e)|v2 枛 ,于是枙 v1 |e|v2 枛 = χ(珋e )枙 v1 |v2 枛 = 0 。 (2) 如果 珋e 臭 C 。 由 d 的定义知 (Cs \C) ∩ En (d - 1) = 碬 。 再由 w Q (珋e ) ≤ ⊥ d - 1可知 珋e 臭 Cs 。 这意味着存在e′ ∈ G 珚 = C ,使得 ee′ = - e′e 。 从而对 v2 ∈ Q(χ) , ⊥ e′e | v2 枛 = - ee′ | v2 枛 = - χ(e′)e | v2 枛 , - χ(e′) ≠ χ(e′) 。 这表明 e|v2 枛 ∈ Q(χ′) ,其中 χ′ ≠ χ 。 但是 |v1 枛 ∈ Q(χ) ,e|v2 枛 ∈ Q(χ′) ,而 Q(χ)和 Q(χ′)是正交的 。 所以 |v1 枛和 e|v2 枛的内积为零 ,即枙 v1 |e |v2 枛 = 0 。 这就完成了 定理 4 .2 .3 的证明 。 今后把用定理 4 .2 .3 构作的量子码叫作 stabilizer 量子码 。 容易看出 ,若 C ∩ En (d - 1) = (0) ,则如此构作的量子码 Q(χ)均是纯的(定义 4 .1 .9) 。 例3 10 考虑F 2 中生成阵为 1 0 0 0 M= 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 a1 | b1 v1 1 0 = 1 0 v2 v3 v4 = a2 | b2 a3 | b3 a4 | b4 的线性码 C 。 容易验证码 C 的基向量v 1 ,v 2 ,v 3 ,v 4 彼此是辛正交的(注意 :每个 向量v = (a|b)与自身都是辛正交的 :(v ,v )s = a · b + a · b = 0 ∈ F 2 ) 。 所以 C 中任意两个码字都是辛正交的 ,即 C 是辛自正交码 ,参数[2 n ,k] = [10 ,4] ,(n = ⊥ ⊥ ⊥ 5) 。 由于 C 彻 Cs ,dim Cs = 10 - 4 = 6 ,从而 Cs 的基是 v 1 ,v 2 ,v 3 ,v 4 再加上两个 向量v 5 和v 6 。 易知可取 v 5 和 v 6 为 (00000 |11111 )和(11111 |00000 )(只需验证它 们和v 1 ,v 2 ,v 3 ,v 4 线性无关 ,并且和 v 1 ,v 2 ,v 3 ,v 4 均辛正交即可) 。 不难看出 C 中 非零向量的量子权最小值为 4 ,而 Cs 中非零向量的量子权的最小值是 3 (例如 ⊥ (11000 |00101) + (11111 |00000) = (00111 |00101 ) ∈ Cs ,而 w Q (00111 |00101 ) = ⊥ 3) ,于是 w Q (Cs \C) = 3 。 所以用 C 构作出的量子码 Q (χ)(对每个 χ ∈ G ^ ,G = C) 均是纯的 ,其参数为[[5 ,1 ,3]] ,(n - k = 5 - 4 = 1) ,这是 1996 年发现的第一个完 32 全的量子码 。 它们均是C 中的二维子空间 ,可以纠正 5 个量子位中任何一位的 任何 Pauli 型量子错误 σx ,σy 或者 σ z 。 现在我们对于平凡特征 χ0 (即 χ0 的取值恒为 1) ,明显写出量子码 Q = Q(χ0 ) 。 ⊥ 对于由生成阵 M 给出的 C 的基v j = (aj |bj )(1 ≤ j ≤ 4) ,可提升成 En 中元素 gj = X (aj )Z(bj ) (1 ≤ j ≤ 4) 。 可验证它们均是厄米特算子 。 于是由 gj (1 ≤ j ≤ 4 )生成 En 的一个 2 阶交 换子群 4 第4章 量子纠错码 G = 枙 g1 ,g2 ,g3 ,g4 枛 = {1 ,g1 ,g2 ,g3 ,g4 ,g1 g2 ,… ,g3 g4 ,… ,g1 g2 g3 g4 } , 其中 g1 = X(11000)Z(00101) = σx 碅 σx 碅 σz 碅 I 碅 σz , g2 = X(01100)Z(10010) = σz 碅 σx 碅 σx 碅 σz 碅 I , … 1 32 由于 dim Q = 2 = 2 ,我们需要求出 Q 在C 中的两个基向量 ,由于 32 Q = Q( χ0 ) = {v ∈ C | g(v ) = χ0 (g) v = v ,对每个 g ∈ G} , 32 32 即 Q 是由C 中被所有 G 的元素固定的向量组成的子空间 ,对每个 |v枛 ∈ C ,考虑 | v枛 = ~ 易知它属于 Q ,因为对每个 g ∈ G , g | v 枛 = g ∑ h | v枛 = ~ h∈ G ∑ h∈ G ∑ h∈ G h | v枛 (gh) | v枛 = ∑ s∈ G s | v枛 = | v 枛 。 ~ 取 |v0 枛 = |00000枛 ,则利用引理 4 .1 .4(1)可算出 | v 0枛= ~ ∑ h∈ G h | 00000枛 = | 00000枛 + + ∑ 1 ≤ i< j < k≤ 4 4 ∑ j= 1 gj | 00000枛 + ∑ 1 ≤ i< j ≤ 4 gi g j | 00000枛 gi g j g k | 00000枛 + g1 g2 g3 g4 | 00000枛 = | 00000枛+ (| 11000枛 + | 01100枛 + | 00110枛 + | 00011枛 + | 10001枛) - (| 10100枛 + | 01010枛 + | 00101枛 + | 10010枛 + | 01001枛) + (| 11110枛 + | 01111枛 + | 10111枛 + | 11011枛 + | 11101枛) 。 例如 g1 g2 | 00000枛 = X (11000)Z(00101)X (01100)Z(10010) | 00000枛 = X (11000)Z(00101)X (01100) | 00000枛 = X (11000)Z(00101) | 01100枛 = - X(11000) | 01100枛 = - | 10100枛 。 再取 |v1 枛 = |11111枛 ,可算出 | v 1枛 = ~ ∑ h∈ G h | 11111枛 = | 11111枛 + (| 00111枛 + | 10011枛 + | 11001枛 + | 11100枛 + | 01110枛) - (| 01011枛 + | 10101枛 + | 11010枛 + | 01101枛 + | 10110枛) + (| 00001枛 + | 10000枛 + | 01000枛 + | 00100枛 + | 00010枛) 。 |v 0 枛和 |v 1 枛是线性无关的 ,从而它们形成量子码 Q 的一组基 。 ~ ~ 93 94 纠错码的代数理论 4畅 3 由经典码构作量子码 定理 4 .2 .3 给出了量子码与经典的二元线性码之间的联系 ,它需要的经典 码 C 是辛自正交的 ,而量子码的最小距离用 Cs \C 中元素的量子权来刻画 。 现 ⊥ 在给出定理 4 .2 .3 的一些推论 ,使用起来更为方便 。 定理 4 .3 .1 (CRSS ,1998 ) 如果存在二元线性码 C ,参数为 [n ,k ,d] ,并且 C 澈 C ,其中 C 是 C 对于F 中通常内积的对偶 ,则存在量子码[[n ,2 k - n ,d]] 。 ⊥ n 2 ⊥ 证明 由 dim C = k ,dim C = n - k 和 C 澈 C 可知 2 k ≥ n ,考虑 F 2 中的线 ⊥ 性码 2n ⊥ G 珚 = C 磑 C = {(v 1 |v 2 ) ∈ F 2 |v 1 ,v 2 ∈ C } , ⊥ 2n ⊥ ⊥ 则 dim F2 G 珚 = 2(n - k) ,容易看出 G 珚 s = {(v 1 ,v 2 ) ∈ F 2 |v 1 ,v 2 ∈ C} = C 磑 C 澈 G 珚 ,dim G 珚 s = 2 n - 2(n - k) = 2 k 。 2n ⊥ ⊥ 于是由定理 4 .2 .3 便 知存 在 量 子 码 [[ n ,k′ ,d′]] ,其 中 k′ = 2 k - n ,而 d′ ≥ 珚 s \珚 G} = min{ w H (c)|c ∈ C\C } = d 。 min{ w Q (v )|v ∈ G ⊥ 例4 ⊥ 考虑二元 Hamming 码的对偶码[7 ,4 ,4] ,其生成阵为 1 1 1 0 1 0 0 M= 0 1 1 1 0 1 0 。 0 0 1 1 1 0 1 它的扩充码 C 有生成阵 0 M′ = M 0 , 0 1 1 1 1 1 1 1 1 这是参数为[8 ,4 ,4]的自对偶二元线性码(C = C ) 。 于是由定理 4 .3 .1 给出量 ⊥ 子码 Q ,其参数为[[8 ,0 ,4]] 。 由于 dimC Q = 2 = 1 ,所以这个码本质上是C 0 C 256 2 8 = 中的一个向量作为码字 ,它可纠正 8 个量子位中任一位发生的量子错误 σx , σy 或 σ z 。 如果我们稍加修改 ,而考虑F 2 中的线性码 G 珚 ,其生成阵为 16 第4章 量子纠错码 0 1 1 1 0 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 1 0 1 0 1 0 0 1 1 1 0 。 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 ⊥ ⊥ ⊥ 珚 = 5 ,G 珚彻G 珚 s ,w Q (珚 Gs \珚 G ) = w Q (珚 Gs ) = 3 。 由定理 4 .2 .3 给 这时 n = 8 ,k = dim F2 G 出量子码[[8 ,3 ,3 ]] ,并且是纯的量子码 。 这是一个好的量子码 ,因为由量子 Hamming 界可知不存在量子码[[7 ,3 ,3]] 。 定理 4 .3 .2 如果存在二元线性码 C1 = [n ,k1 ,d1 ]和 C2 = [n ,k2 ,d2 ] ,并且 C 彻 C2 (从而 n ≤ k1 + k2 ) ,则存在量子码[[n ,k1 + k2 - n ,min{ d1 ,d2 }]] 。 ⊥ 1 证明 设 Gi 和 Hi 是线性码 C i 的生成阵和校验阵(i = 1 ,2) ,考虑以 n n H1 0 n - k1 0 H2 n - k2 为生成阵的 F 中线性码 C 。 由 C 彻 C2 可 知 H1 H2 = 0 。 而 Cs 有 校 验 阵 H2 0 G2 0 ⊥ ⊥ 和生成阵 。 由此即知 ,C 彻 Cs ,并且 w Q (Cs \C) ≥ min{ d1 ,d2 } 。 0 H1 0 G1 由定理 4 .2 .3 给出量子码[[n ,k′ ,d′]] ,其中 k′ = n - dimC = n - (n - k1 + n - k2 ) = k1 + k2 - n ,d′ ≥ min{ d1 ,d2 } 。 2n 2 ⊥ 1 T ⊥ 利用更多的组合与矩阵技巧 ,Steane(1999)得到定理 4 .3 .2 的改进结果 ,从而 可得到参数更好的量子码 。 基于定理 4畅3畅2 和 Steane 的改进结果 ,近三年来 ,人们 用各种经典二元线性码(RM 码 、BCH 码 、RS 码 、代数几何码)构作出许多好的量子 码 ,使 Calderbank 等人于 1998 年给出的量子码参数表不断加以改进 。 上述定理给出由二元线性码构作量子码的方法 。 现在我们介绍量子码和四 元线性码的联系 ,四元域可表示成 2 2 F 4 = {0 ,1 ,ω ,珔ω = ω } ,ω + ω + 1 = 0 。 考虑映射 2n n Φ :E 珚 n = F2 → F4 , 2n 对于v = (a|b) = (a0 ,… ,an - 1 |b0 ,… ,bn - 1 ) ∈ F 2 ,定义 Φ(v ) = ω a + 珔ωb = (ω a0 + 珔ω b0 ,… ,ω an - 1 + 珔ω b n - 1 ) ∈ F 4 。 由于{ ω ,珔ω}是F 4 的一组F 2 唱基 ,可知 Φ 是F 2 唱向量空间的同构 。 下列引理表明同 n 95 96 纠错码的代数理论 构 Φ 有很好的性质 。 引理 4 .3 .3 (1) (保持权)对v ∈ F 2 = En ,w Q (v ) = w H ( Φ(v )) 。 n (2) (保持内积)对于 α = (α0 ,… ,αn - 1 } ,β = (β0 ,… ,βn - 1 ) ∈ F 4 ,定义“迹唱厄 米特”(trace唱Hermitian)内积为 2n n- 1 (α ,β)th = T r n-1 αi珋β i = T r ∑ i= 0 ∑ (v ,v ′)s = ( Φ(v ) ,Φ(v ′))th 。 i= 0 n -1 2 αi βi = (αi βi + αi βi ) ,则对 v ,v ′ ∈ F2 , 2 ∑ i= 0 2n 2 证明 (1) 设v = (a|b) ,a= (a0 ,… ,an - 1 ) ,b= (b0 ,… ,bn - 1 ) ∈ F 2 。 则 Φ(v ) = (ωa0 + 珔ωb0 ,… ,ωan - 1 + 珔ω bn - 1 ) 。 由于{ ω ,珔ω}为F 4 的一组F 2 唱基 ,从而 w Q (aj |bj ) = 0 骋 (aj ,bj ) = (0 ,0) 骋 ωaj + 珔ωbj = 0 骋 w H (ωaj + 珔ω bj ) = 0 。 这表明 w Q (v ) = w H ( Φ(v )) 。 (2) 又设v ′ = (a′|b′) ,a′ = (a′0 ,… ,a′n - 1 ) ,b′ = (b′0 ,… ,b′n - 1 ) 。 则 n n -1 ( Φ(v ) ,Φ(v ′))th = T r n-1 = ∑ i= 0 ∑ i= 0 (ω ai + ω bi )(ω a′i + ωb′i ) 2 2 T r (ai a′i + ω ai b′i + ω a′i b i + bi b′i ) (由于 T r (1) = 0) 2 n- 1 = ( ∑ ai b′i )T r (ω ) + 2 i= 0 n-1 ∑ i= 0 a′i b i T r (ω) (由于 T r (ω) = T r (珔ω) = ω + 珔ω = 1) n-1 = ∑ i= 0 (ai b′i + a′i b i ) = (v ,v ′)s 。 由引理 4 .3 .3 我们知道 2n n C 为F 2 的线性码 骋 Φ(C)为F 4 的加性码(加法子群) 。 C 彻 Cs 骋 Φ(C) 彻 Φ(C)th , 并且 min{ w Q (c) |0 ≠ c ∈ C} = min{ w H (c) |0 ≠ c ∈ Φ (C)} 。 | Φ (C) | = |C|= dim 2 F2 C 根据这些事实 ,定理 4 .2 .3 可以翻译成如下的结果 。 ⊥ 定理 4 .3 .4 ⊥ 设存在F 4n 的加性码(加法子群)C ,C 彻 Cth ,|C| = 2 n - k ,则存在 ⊥ 量子码[[n ,k ,d]] ,其中 d = w H (Cth \C) = min{ w H (c)|c ∈ Cth \C} 。 ⊥ ⊥ 下面引理表明 ,如果定理 4 .3 .4 中的 C 是F 4 中的F 4 唱线性码(不仅是加法子 群) ,则定理中关于 C 的“迹唱厄米特自正交”条件等价于“厄米特自正交”条件 。 n 第4章 引理 4 .3 .5 量子纠错码 设 C 是F 4 中的四元线性码 ,则 C 彻 Cth 骋 C 彻 Ch 。 n ⊥ ⊥ 其中 ,对 u = (u0 ,… ,un - 1 ) ,v = (v0 ,… ,v n - 1 ) ∈ F 4 , n (u ,v )h = n-1 ui v i ∈ F 4 , 2 ∑ i= 0 Ch = {v ∈ F 4 | (v ,c)h = 0 ,对所有 c ∈ C} 。 n ⊥ 证明 迟 :显然 ,因为(u ,v )h = 0 推出(u ,v )th = 0 。 痴 :如果 C 彻 Cth ,即对任何 c ,c′ ∈ C ,均有(c ,c′)th = 0 。 记 (c ,c′)h = a+ bω(a ,b ∈ F 2 ,注意 1 ,ω 为F 4 的一组F 2 唱基) 。 则 0 = (c ,c′)th = T r (a+ bω) = b 。 因此(c ,c′)h = a。 但是 C 为四元线性码 ,ωc′ ∈ C 。 ⊥ 因此又有 0 = (c ,ωc′)th = T r (c ,ωc′)h = T r (ω2 (a+ bω)) = T r (aω2 + b) = a , 因此(c ,c′)h = a= 0 。 这就表明 C 彻 Ch 。 证毕 。 ⊥ F 4 的子集合 C 叫作偶码 ,是指 C 中每个码字的 Hamming 权 定义 4 .3 .6 n 均为偶数 。 引理 4 .3 .7 设 C 彻 F4 。 n (1) 若 C 为偶加性码 ,则 C 彻 Cth 。 ⊥ (2) 若 C 彻 Cth ,并且 C 是F 4 唱线性码 ,则 C 为偶码 。 ⊥ 证明 (1) 设 u= (u0 ,… ,un - 1 ) ,v = (v0 ,… ,vn - 1 ) ,ui ,vi ∈ F 4 ,ui = a+ bω ,v i = c + dω ,a ,b ,c ,d ∈ F 2 ,则 T r (ui v i ) = T r ((a+ bω)(c + dω2 )) = ad + bc ∈ F 2 。 - 进而 ,由于 w H (ui ) = 0 骋 a= b = 0 。 所以 w H (ui ) ≡ a+ b + ab (mod 2) 。 同样地 ,w H (v i ) ≡ c + d + cd (mod 2 ) 。 w H (ui + v i ) ≡ ( a + c)(b + d) + a + b + c + d (mod 2) 。 因此 w H (ui + v i ) + w H (ui ) + w H (v i ) ≡ ad + bc = T r (ui v i ) ∈ F 2 。 这表明 w H (u+ v ) + w H (u) + w H (v ) ≡ (u ,v )th (mod 2) 。 由此即可证(1) 。 (2) 设 u= (u0 ,… ,un - 1 ) ∈ C ,ui ∈ F 4 。 由假设 ωu ∈ C ,从而 - n -1 0 = (u ,ωu)th = T r ( ∑ ui ω ui ) = T r 2 i= 0 2 n -1 ∑ i= 0 ω ui 2 3 97 98 纠错码的代数理论 ≡ w H (u) · T r (ω ) ≡ w H (u) 2 (mod 2) 。 这里用到 u = 1(若 ui ≠ 0) ,于是 C 为偶码 。 3 i 例 5(量子 Hamming 码) 设 m ≥ 2 ,α是F4 m 中本原元素(即 α的阶为 4 - 1) 。 m m-1 由于{1 ,α ,… ,α cm - 1 α m-1 }是F 4 m 的一组F 4 唱基 ,F 4 m 中元素惟一表成 c = c0 + c1 α + … + (ci ∈ F 4 ) ,将 c 看成向量 c = (c0 ,… ,cm - 1 ) ,从而F 4 m 等同于向量空间F 4 。 m m 4 -1 中的四元线性码 C ,它的校验阵为 3 T T 2 T n-1 T H= (1 ,α ,(α ) ,… ,(α ) ) , i T i m 这里(α ) 表示 α 看作 F 4 中元素的列向量 ,C 是 F 4 上的 Hamming 码 ,参数为 n 考虑F 4 n= m m m 4 -1 4 -1 4 -1 m-1 ,并 , - m ,3 。 而对偶码 C ⊥ 的参数为 ,m ,4 3 3 3 ⊥ m-1 ⊥ 且 C 中非零码字的 Hamming 权均为 4 ,即 C 为偶码 ,根据引理 4 .3 .5 和引 ⊥ ⊥ 理 4 .3 .7 ,C 对于内积( ,)th 和( ,)h 都是自正交的 ,因为 C 是四元线性码 。 于是 [n ,k ,d] = |C |= 2 ,C 彻 (C )th = (C )h ,而 (C )h 为{(c0 ,… ,cn - 1 ) |(c0 ,… ,cn - 1 ) ∈ C} ,从而它的最小距离就是 C 的最小 Hamming 距离 3 ,利用定理 4 .3 .4 便知对每 m m 4 -1 4 -1 , - 2m ,3 。 由于它们满 个 m ≥ 2 均存在纯的量子码[[n ,k ,d]] = 3 3 m 2m n- k 足量子 Hamming 界 :1 + 3n= 4 = 2 = 2 。 所以它们均是完全的量子码 。 利用定理 4 .3 .4 还可进一步由四元码构作好的量子码 ,见 Calderbank 等人 1998 年文章 。 ⊥ 2m ⊥ ⊥ ⊥ 例 6(量子 BC H 码 ) ⊥ ⊥ 2 2 取 F 64 中一个本原元素 α(α 的阶为 63 ) ,令 h1 ( x ) , h2 (x)和 h3 ( x ) 分 别 是 α ,α 和 α 在 F 4 [ x ] 中 的 最 小 多 项 式 ,h ( x ) = h1 (x)h2 (x)h3 (x) 。 而 2 x 3 - 1 = h(x) g( x) 。 令 C = ( g(x))是以 g( x)为生成 63 式的四元循环码 ,码长为 63 。 由于 h( x )的根集合为 M = { α ,α ,α ,α ,α ,α , 3 12 48 α ,α ,α } ,可知 deg h( x ) = 9 。 于是 C 的参数为 [n ,k ,d] = [63 ,9 ,d] ,|C | = 9 18 ⊥ ( - 1) - j j ⊥ 4 = 2 。 C 的根集合为 M = {α |α ∈ M} 。 C 是设计距离为 5 的 BC H 码 , ⊥ 于是 d(C ) ≥ 5 。 而循环码 ⊥ 4 |(c0 ,… , Ch = {(c20 ,… ,c262 ) ∈ F 63 c62 ) ∈ C ⊥ } 4 的根集合为 M ( - 2) = {α - 2i |α ∈ M} 。 容易看出 Ch 的根集合 M i (即 M 对{1 ,α ,… ,α }的补集)之中 ,因为 M 理4 .3 .4 可知存在纯量子码[[63 ,45 ,5]] 。 62 ⊥ ( - 2) ( - 2) 16 2 8 32 在 C 的根集合 ∩ M = 碬 。 因此 C 彻 Ch 。 由定 ⊥ 第4章 量子纠错码 4 .4 量子权多项式和 Singleton 界 本节介绍量子码的权多项式 ,在形式上 ,它与经典码的权函数相仿 ,并且也 有 M acWilliams 恒等式 。 但是在内容上反映了不同的物理背景 。 2n 设 Q 是((n ,K ))量子码 ,即 Q 是C 中的 K 维复向量子空间 。 以 P :C 表示正交投影算子 ,即对于厄米特内积有正交分解C 2 n 2n →Q = Q 磑 Q ,而 P 把v = ⊥ v 1 + v 2 (v 1 ∈ Q ,v 2 ∈ Q )映成 v 1 。 如果取 Q 和 Q 的基分别为 (v1 ,… ,v k ) , ⊥ ⊥ n (v k + 1 ,… ,v2 n ) ,则 P 对C 2 的这组基的表示方阵为 IK 0 0 0 。 因此 P2 = P ,并且 P 是厄米特线性算子 。 定义 4 .4 .1 对于每个 i(0 ≤ i ≤ n) ,定义 ⊥ 2 Bi = 12 ∑ T r (eP) , Bi = 1 ∑ T r (ePe P) 。 K e ∈ Si K e ∈ Si 其中 Si = {e = σ0 磗 … 磗 σn- 1 | σj ∈ { I ,σx ,σy ,σz }(0 ≤ j ≤ n - 1) ,wQ (e) = i} 。 由于 Si 中每个 e 均是厄米特算子 ,可知 T r (e P)和 T r (e Pe P)均为实数 。 于是 Bi 和 B i 均为实数 。 ⊥ 量子码 Q 的权多项式定义为 B(x ,y) = BQ (x ,y) = n ∑ i= 0 Bi x n- i y i ,B ⊥ (x ,y) = BQ (x ,y) = ⊥ n ∑ i= 0 Bi x n- i y i 。 ⊥ 定理 4 .4 .2(量子 M acWilliams 恒等式) 对于量子码 Q = ((n ,K )) ,则 B(x ,y) = 1 ⊥ B K x + 3y x - y , 。 2 2 证明 最早的证明(Shor 和 Laflamme ,1997)混和采用了数学和物理方法 。 下面的纯数学证明是 Rains 于 1998 年给出的 。 2 n 取C 的一组基 { | j枛 = | j0 … j n- 1 枛 : j = j0 + j 1 2 + … + j n - 1 2 n - 1 (0 ≤ j ≤ 2 n - 1)} 。 而 e 和 P 对这组基的表示阵为 e = (eij ) , P = ( Pij ) 0 ≤ i ,j ≤ 2 n - 1 , 则对 e = σ0 磗 … 磗 σn - 1 ,我们有 e | i枛 = ∑ j e ij | j枛 ,其中 99 100 纠错码的代数理论 eij = (σ0 )i0 j 0 … (σn- 1 )i n-1 j n-1 , σi ∈ I= 1 0 0 , σx = 1 0 1 1 , σz = 0 1 0 0 , σy = -1 x ∑ - i 0 0 i 于是 B(x ,y) = 1 K2 n ∑ t= 0 n- t y t ∑ w Q (e) = t i ,j ,k ,l = 12 ∑ P ji P l k K i ,j ,k ,l = 12 ∑ P ji P l k K i ,j ,k ,l ∑e e n-1 ij e kl x P ji e ij P lk e kl n- w Q (e) y w Q (e) bi t j t k t l t (x ,y) , 朝 t= 0 其中 bi t j t k t l t (x ,y) = x(I2 )i t j t (I2 )k t l t + y (σx )i t j t (σx )k t l t + (σy )i t j t (σy )k t l t + (σz )i t j t (σz )k t l t 。 类似地有 B (x ,y) = ⊥ 1 K ∑ i ,j ,k ,l P ji P lk n-1 朝 t= 0 bi t j t k t l t (x ,y) , ⊥ 其中 bi t j t k t l t (x ,y) = x(I2 )i t l t (I2 )k t j t ⊥ + y (σx )i t l t (σx )k t j t + (σy )i t l t (σy )k t j t + (σz )i t l t (σz )k t j t 。 我们只需对所有 16 种情形 i ,j ,k ,l ∈ {0 ,1} ,证明 bij kl (x ,y) = bij kl ( ⊥ x + 3y x - y , )。 2 2 例如对(i ,j ,k ,l) = (0 ,0 ,1 ,1) ,则 b0011 (x ,y) = x(I2 )00 (I2 )11 + y + 1 0 0 -1 00 1 0 0 1 0 -1 1 0 00 + 11 0 1 1 0 0 i - i 0 = x + y(0 - 1 + 0) = x - y , 0 1 0 ⊥ b0011 (x ,y) = x(I2 )01 (I2 )10 + y 1 0 01 1 + 1 0 0 -1 01 1 0 0 -1 = y(1 + 0 + 1) = 2 y 。 + 10 0 i 1 0 11 00 0 i - i 0 11 01 0 i - i 0 10 10 - i 0 。 第4章 因此 b0011 (x ,y) = b0011 ⊥ 引理 4 .4 .3 (n ,2 n- k 量子纠错码 101 x + 3y x - y , = x - y 。 其余 15 种情形可类似地证明 。 2 2 如果量子码 Q = [[n ,k]]是由定理 4 .3 .4 利用F 4n 中加性码 C = )得到的 stabilizer 量子码 ,C 彻 Cth ,则 ⊥ Bi = # {c ∈ C : w H (c) = i} , Bi = # {c ∈ Cth : w H (c) = i} 。 ⊥ 证明 ⊥ 用 A i 和 A i 分别表示上面 两个等式的右边 。 我 们 将 C 等 同 于 ⊥ n G 珚 (炒 E 珚 n )(由 ωa+ ω b|→ 珋e = (a|b) ∈ G 珚 ) ,而 Q = Q(χ)是 G 在C 上的作用给出的 2 2 χ唱本征子空间(χ ∈ G ^) ,则 K = dimQ = 2 。 而投射算子 P :C k P= 2 - ( n - k) ∑ e∈ G 这是因为对每个 v ∈ C 2 有正交分解v = n - (n - k) ∑ e∈ G χ(e)e v = 2 = - ( n - k) ∑ e∈ G ∑ χ∈ G ^ ∑ χ(e)e 1 e χ′ v | G | χ′∑∈ G^ ∑ e∈ G → Q = Q(χ)可表达成 χ(e)e 。 eχ v = 而 P 把v 投射为 e χ v 。另一方面 ,由特征的正交关系知 2 n 2 χ′ ∈ G ^ e χ′ v = (8) ∑e v ,其中 eχ v ∈ Q(χ) , χ χ∈ G ^ 1 | G| ∑ ∑ e ∈ G χ′ ∈ G ^ χ(e)χ′(e)eχ′ v (χχ′)(e) = eχ v 。 因此式(8)成立 。 于是对每个 e ∈ En , T r (eP) = 2 - (n- k) ∑ e′ ∈ G 2 χ(e′)Tr (ee′) χ(e) ∑ χ(e″)T r (e″) = χ(e)Tr (P) = χ(e)2 ,若 珋e ∈ G 珚 = C, - (n- k) k e″ ∈ G = 否则 。 0, 所以 Bi = 12 K ∑ e∈ G w Q(e) = i 2 T r (eP) = 12 k 2 2k ∑ e∈ G w Q(e) = i 2 = ∑ e∈ G w Q(e) = i ∑ 1 = c∈ G w H (c) = i 类似地 , T r (ePe P) = 2 = 2 = 2 - 2 (n - k) ∑ χ(ab)T r (e aeb) ∑ ( - 1) ∑ ( - 1) a ,b ∈ G - 2 (n - k) a ,b ∈ G - 2 (n - k) a∈ G 2 - ( n - k) = 0, (珋e ,珔a) s (珋e ,珔a) s ∑ b∈ G χ(ab)T r (ab) ∑ b∈ G 1 = Ai 。 (因为 eeab = ab) χ(b)T r (b) χ(b)T r (b) = T r ( P) = 2 ,若 珔a ∈ (珚 G )s , 否则 。 k ⊥ 102 纠错码的代数理论 于是 k 2 1 = K 珔a ∈ ∑ ⊥ (珚 G) Bi = ⊥ s w Q (珔a) = i ∑ ⊥ c ∈ (C) th 1 = Ai 。 ⊥ w H (c) = i 下面结果表明量子码 Q 的权多项式可决定它的最小距离 d (Q) 。 引理 4 .4 .4 (1)B0 = B0 = 1 ,Bi ≥ Bi ≥ 0 ⊥ (对于 0 ≤ i ≤ n) ; ⊥ (2) 若 t 是满足 B i = B (0 ≤ i ≤ t)的最大整数 ,则 d(Q) = t + 1 ; (3 ) 量子码 Q 可纠正 ≤ l 位错 ,当且仅当对每个 e ∈ En (2 l) ,Pe P = λe P ⊥ i (λe ∈ C ) 。 证明 (1)B0 = ⊥ 1 2 1 2 T r ( P ) = 1 。 由定义知 Bi ≥ 0 。 进而 2 T r ( P) = 1 ,B0 = K K 由熟知的不等式 T r (A B) ≤ T r (A A )T r (B B)和 T r (A B) = T r (BA )可知 :当 2 祰 祰 祰 e = e时 , 祰 T r (e P) = T r ( Pe P P) ≤ T r ( Pe P Pe P) T r ( P ) = T r (e Pe P) · K 。 2 2 2 (9) 可知 B ≥ Bi 。 (2) 由不等式(9)可知 : ⊥ Bi = Bi 当且仅当对每个 e ∈ En (i) ,Pe P = λe P 。 ⊥ i 然后(2)可由(3)推出 。 (3) 迟 :若 |c枛 ,|c′枛 ∈ Q ,枙c|c′枛 = 0 。 要证对任意 e ,e′ ∈ En (l) ,均有枙c|ee′|c′枛 = 0 。 由于 ee′ ∈ En (2l) ,由假设知 Pee′P = λee′ P c′ 。 因此 (λee′ ∈ C ) 。 另一方面 ,Pc = c ,Pc′ = 枙c | ee′ | c′枛 = 枙cP | ee′ | Pc′枛 = 枙c | Pee′P | c′枛 = λee′ 枙c | P | c′枛 = λe e′ 枙c | c′枛 = 0 痴 :设 |c枛 ,|c′枛 ∈ Q ,枙c|c′枛 = 0 ,并且枙c |c枛 = 枙 c′ |c′枛 = 1 。 则 c ± c′ ∈ Q 并且枙 c + c′|c - c′枛 = 枙c|c枛 - 枙c′|c′枛 = 0 。 每个 e ∈ En (2 l)可分解成 e = e1 e2 ,其中 e1 ,e2 ∈ En (l) 。由于 Q 已假设可纠正 ≤ l 位错 ,所以 0 = 枙c + c′ | e | c - c′枛 = 枙c | e | c枛 - 枙c′ | e | c′枛 。 (10) T 现在取 Q 的一组基{c1 ,… ,ck } ,其中枙 ci |c j 枛 = 珋ci · cj = δij (1 ≤ i ,j ≤ K ) 。 由(10)式知对每个 e ∈ En (2 l) , 枙ci |e|ci 枛 = 珋ci eci = λe ∈ C 不依赖于 i ,P 对于基 T {c1 ,… ,ck }的矩阵为 P= K ∑ i= 1 c i c i ,而对每个 e ∈ En (2 l) , T - 第4章 PeP = = 注记 ∑c i ∑ i ,j T i ci e - cj c j = T ∑ j - ci c j 枙 ci | e | cj 枛 = λe T 1 n 2 由定理 4畅 4畅 2 可知 K = ci (c i ec j ) c j T ∑ i ,j ∑ i ,j n ∑ i= 0 量子纠错码 103 T - - ci c j δij = λe T ∑c T i i c i = λe P 。 - Bi 。 ⊥ 作为 M acWilliams 恒等式的一个应用 ,我们现在给出量子码的 Singleton 界 。像经典情形一样 ,下面定义的多项式是编码理论的重要工具 。 对于固定的正整数 n ,Kraw tchouk 多项式定义为 i x n- x j i- j Pi (x) = ∑ ( - 1) 3 (0 ≤ i ≤ n) , j=0 j i- j 这些是有理系数的多项式 ,deg Pi (x) = i 。 前几个多项式为 P0 (x) = 1 , P1 (x) = 3 n - 4 x , 定义 4畅 4畅 5 1 (16 x2 + 8 x(1 - 3 n) + 9 n(n - 1)) 。 2 下面是这批多项式的基本性质和与量子码权多项式的联系 。 P2 (x) = 引理 4畅 4畅 6 (1) (对称性质) 3 i n n j P j (i) = 3 P i ( j) i j (0 ≤ i ,j ≤ n) ; (2) (正交性质) n ∑ i= 0 n Pr (i) Pi (s) = 4 δrs , n n n n r P r (i) Ps (i) = 4 · 3 δrs ; i= 0 i r (3) 每个 d 次实系数多项式 f (x) ∈ R [x]均可惟一表示成 ∑3 f (x) = i d (fi ∈ R ) , f i P i (x) ∑ i= 0 其中 fi = 1 n 4 n ∑ j=0 (4) 设 B(x ,y) = f (j ) Pj (i) = n 4 ·3 n ∑ t= 0 Bt x n- t n 1 i n i ∑ j=0 y 和 B (x ,y) = t ⊥ 3 n f (j ) Pi ( j) ; j j n ∑ t= 0 Bt x ⊥ n- t y 为量子码((n , t 104 纠错码的代数理论 k ,d))的权函数 ,则 证明 n Pi (j)z = i= 0 ∑ n Pi (j )B j 。 ⊥ j=0 (1) 由定义 4畅 4畅 5 可知 i ∑ n 1 2 K Bi = n i ∑ ∑ i= 0 μ= 0 μ (- 1) 3 j μ n = ∑ μ ( - 1) μ= 0 n- j i-μ i-μ n ∑3 n- j i z = i- μ i- μ i= μ = (1 - z) (1 + 3 z) j j i z μ = (1 + 3 z ) n- j n n μ ∑ ( - 1) μ= 0 1 - z 1 + 3z j μ z μ n- j ∑3 i i= 0 n- j i z i j 。 于是 n ∑ i ,j = 0 3 n i j Pi (j)z w = j j n ∑ j=0 n 1 - z j n (3 w) (1 + 3 z) 1 + 3z j n = (1 + 3 z) 1 + 3 w · 1 -z 1 + 3z n j = (1 + 3 z + 3 w - 3 z w ) , n 后边是 z 和 w 的对称函数 ,于是 3 j n Pi ( j ) = 3 j n i i P j (i) (0 ≤ i ,j ≤ n) 。 (2) 由(1)中等式可知 n n ∑ ∑ r ,s = 0 i = 0 3 i n r s Pr (i)Ps (i)z w = i n ∑3 n i n- i i n- i (1 - z) (1 + 3 z) (1 - w) (1 + 3w) i i i= 0 = (1 + 3 z) (1 + 3 w) n n n ∑ i= 0 3 n i i (1 - z)(1 - w) (1 + 3 z)(1 + 3 w) = [(1 + 3 z)(1 + 3 w) + 3(1 - z)(1 - w)] n = 4 (1 + 3z w ) , n n 于是 n ∑3 i= 0 i n n n r P r (i) Ps (i) = 4 · 3 δrs 。 i r 再由(1)即得另一个正交关系 。 (3) 由 deg Pi (x) = i 可知展开式的惟一性 。 再由正交关系可知 n ∑ j=0 f (j )Pj (i) = n ∑ j=0 Pj (i) n ∑ k= 0 f k P k (j ) = (4) 由 M acWilliams 恒等式可知 n ∑ k= 0 fk n ∑ j=0 Pk ( j) Pj (i) = 4 f i 。 n i 量子纠错码 105 第4章 n Bt x ∑ t= 0 n- t t y = 1 K = n ∑ ⊥ i= 0 1 2 K n x + 3y 2 Bi n Bi ⊥ ∑ i= 0 x - y 2 n- i n- i λ ∑ λ ,μ ≥ 0 i i n- i- λ λ i- μ μ x (3 y) x ( - y) , μ 因此 Bt = 1 2 K n n Bi ⊥ ∑ i= 0 ∑ λ ,μ ≥ 0 λ+ μ = t n- i λ i λ 1 μ 3 ( - 1) = n 2 K μ n ∑ i= 0 Bi P t (i) 。 ⊥ 下面引理表明 :适当选取实系数多项式 f (x)可给出 K 的上界估计 。 引理 4畅 4畅 7 设 Q 为量子码((n ,K ,d)) ,如果存在多项式 f (x) = n f i P i (x) ∈ R [x] , ( f i ∈ R ) ∑ i= 0 满足 (1) f i ≥ 0 (0 ≤ i ≤ n) ; (2) f (j ) > 0 (0 ≤ j ≤ d - 1) ,但是 f ( j ) ≤ 0 (d ≤ j ≤ n) , 则 K≤2 max -n 0≤ j≤ d-1 f ( j) 。 fj 证明 由引理假设和引理 4畅 4畅 6 中的公式可知 2K n d-1 ∑ i= 0 f i Bi ≤ 2 K n n = ∑ j=0 n ∑ i= 0 n f i Bi = ∑ i= 0 d-1 Bj f (j) ≤ ⊥ ∑ j= 0 fi n ∑ Bj Pi (j)= ⊥ j=0 Bj f (j)= ⊥ d -1 ∑ j= 0 n ∑ j=0 Bj ⊥ n ∑ i= 0 f i Pi (j) Bj f (j) (由引理 4畅4畅4(2)) 。 因此 d-1 2 K≤ n B j f (j ) ∑ j= 0 d-1 ∑ j= 0 fj Bj f (j ) 。 ≤ 0 ≤max j ≤ d -1 fj 作为引理 4畅 4畅 7 的应用 ,我们给出经典码 Singleton 界 n ≤ k + d - 1 的一个 模拟 。 106 纠错码的代数理论 定理 4畅 4畅 8(量子 Singleton 界) 对于任意量子码 ((n ,K ,d)) ,其中 d ≤ n + 1 ,均有 K ≤ 2 n - 2 d + 2 。 (于是对量子码[[n ,k ,d]] ,n ≥ 2 d - 2 时 ,均有 n ≥ k + 2 2 d - 2) 。 证明 考虑实系数多项式 f (x) = 4 n - d+ 1 n 朝 (1 - j= d n- x n - d+ 1 , n n - d+ 1 x n - d+ 1 )= 4 j 函数值 f (j)(0 ≤ j ≤ n)满足引理 4畅4畅7 中条件(2) 。 其次计算 f (x) = 的系数 f i ,为此我们考虑 n f (λ)z λ = λ n ∑ 3 λ λ= 0 =4 4 3λ ∑ n n - d+ 1 λ= 0 ∑ i= 0 f i Pi (x) n-λ zλ n - d+ 1 d -1 λ n - d+ 1 d-1 (3 z ) = 4 (1 + 3 z) 。 λ n n - d+ 1 n λ n n - d+ 1 n ∑ λ= 0 另一方面 , n λ f (λ)z = λ n ∑ 3 λ λ= 0 n ∑ 3 λ λ= 0 n ∑ = i= 0 3 i n λ z λ n fi i n f i Pi (λ) = ∑ i= 0 n Pλ (i)z = n ∑ i ,λ = 0 n λ ∑ λ= 0 3 ∑ i= 0 3 i i n λ z f i Pλ (i) i n 1-z n f i (1 + 3 z) 1 + 3z i i , 于是 n ∑ 3 i= 0 令 w= n 1-z fi 1 + 3z i i i =4 n - d+ 1 /(1 + 3 z) n - d+ 1 。 1-z 1-w ,则 z = ,而 1 + 3z 1 + 3w n ∑ i= 0 3 i n i f iw = i n - d+ 1 4 4 1 + 3w n - d+ 1 = (1 + 3 w ) n - d+ 1 n - d+ 1 = ∑ i= 0 n - d+ 1 i i 3w 。 i 因此算出 n - d+ 1 i 这满足引理 4畅 4畅 7 中条件(1) ,于是 fi = n = i n-i d -1 n d -1 (0 ≤ i ≤ n) 。 第4章 K ≤ 2 - n 0 ≤max j≤ d-1 =2 易知在 d ≤ n- 2d+ 2 f (j) 4n - d + 1 = 2 - n 0 ≤max j≤ d-1 fj max 0≤ j≤ d-1 n- j n - d+ 1 。 n- j d -1 n- j n - d+ 1 n n - d+ 1 量子纠错码 107 n d -1 n- j d -1 n + 1 时 ,上式右边的 max 值 ≤ 1 。 因此 K ≤ 2 n - 2 d + 2 ,证毕 。 2 附 录 A :有 限 域 有限域是计算机科学和数字通信领域的最基本数学工具之一 。 我们从初等 数论中知道 ,对于每个素数 p ,都存在 p 元有限域 Z p ,它是由整数模 p 的 p 个同 余类 0 ,1 ,… ,p - 1组成的集合 ,其中 i(0 ≤ i ≤ p - 1)是所有被 p 除余 i 的那些整 数 ,i 是全体整数Z 的一个子集合 ,但是 i 看成 Z p 中的一个元素 。 用抽象代数的 观点 ,我们有环的满同态 : φ :Z → Zp , a | → φ(a) = a 。 这个同态的核为 Ker φ = pZ ,它是整数环Z 的一个极大理想 。 由环的基本同态 定理 ,我们有环同构Z /pZ 碖 Zp 。 但是左边为域 ,可知 Zp 为域 ,或者再用比较初 等的数论观点 。 对 Zp 中每个非零元素 a ≠ 0 ,即 p 祰 a(a 不被 p 整除) ,初等数论 表明 :同余方程 ax ≡ 1(mod p)一定有解 ,即存在整数 b ,使得 ab ≡ 1(mod p) ,这 相当于说在环 Zp = Z /pZ 中 ,a · b = 1 ,即 a 是 Z p 中(乘法)可逆元素 ,换句话说 , 环 Zp 中每个非零元素均可逆 ,所以 Zp 是域 。 例1 对于 p = 7 ,有限域 Z7 中非零元素的逆分别为(我们把 a 简记为 a) 。 1 -1 6 -1 = 1, 2 = 6 -1 = 4, 3 -1 = 5, 4 (注意 6 = - 1 ,于是 6 -1 -1 = 2, 5 = ( - 1) -1 -1 = 3, = - 1 = 6) 。 在这个附录中我们要决定出全部有限域 ,讲述有限域 ,有限域为系数的多项式和 幂级数的基本性质 ,这些性质在信息科学中具有重要的应用 。 以下我们把上述 p 元有限域 Z p 改记为Fp 。 A畅 1 有限域 首先我们决定全部有限域 ,设 F 是 q 个元素构成的有限域 ,0 和 1 分别是 F 中的零元素和幺元素 。 对每个整数 n ,我们把 F 中元素 n · 1 简记成 n ,当 n 为正 整数时 ,n = n · 1 即是 n 个 1 相加 ,( - n) · 1 = - (n · 1) ,而 0 · 1 = 0 。 由于 F 是 附录 A :有限域 109 有限域 ,1 ,2 ,3 ,… ,n ,… 看成是 F 中元素不可能彼此不同 ,于是存在整数 i 和 j , 0 < i < j ,使得在 F 中 i = j ,即 j - i = 0 。 换句话说 ,在有限域 F 中必存在正整数 n( = j - i) 。 使得 n = 0 ,或者采用抽象代数的观点 ,F 对于加法是有限(交换)群 。 所以每个元素都是加法有限阶元素 ,特别地 ,幺元素 1 是如此 ,即存在正整数 n , 使得 n 个 1 相加为 0 : n = n · 1 = 0 。 满足此条件的最小正整数 n 即是元素 1 对 于加法的阶 ,叫作有限域 F 的特征 。 对于大家熟知的有理数域Q ,实数域R 和 复数域C ,幺元素 1 没有上述性质 ,即对每个非零整数 n ,均有 n = n · 1 ≠ 0 。 这 时称域的特征为零 。 于是 ,有限域具有和通常域一个不同的特点 :有限域的特 征为正整数 。 (1 )有限域 F 的特征必是素数 p ,从而 F 有 p 元子域 F p = 定理 A畅1畅1 Z /pZ 。 (2) 有限域 F 的元素个数 q 必是其特征 p 的方幂 :q = p ,而 F 为Fp 上 n 维 n 向量空间 。 特别地 ,F 的加法群是 n 个 p 阶循环群的直和 。 (3) q 元有限域 F 的非零元素全体形成的乘法群 F × = F - {0}是 q - 1 阶循 环群 ,于是存在 a ∈ F ,使得 F = Fp (a)( = Fp [a]) 。 证明 (1) 若 F 的特征 n 不是素数 ,则 n = kl ,其中 k 和 l 是比 n 小的正整 数 。 但是在 F 中 ,kl = n = 0 ,从而 k = 0 或者 l = 0 。 这与 n 为 F 的特征相矛盾 , 因为 n 是在 F 中满足 n = 0 的最小正整数 。 所以 F 的特征为素数 p ,于是 F 包 含 p 元域Fp = {0 ,1 ,2 ,… ,p - 1}(p = 0) 。 (2) F 是子域Fp 上的向量空间 ,由于 F 有限 ,可知 F 作为F p 唱向量空间是有 限维的 ,设维数为 n = dim Fp F ,取 F 在Fp 上的一组基 x 1 ,… ,x n ,则 F 中每个元素 惟一地表示成 a1 x1 + … + an x n (ai ∈ Fp ) 。 每个 ai 有 p 种取法 ,所以 F 中元素共 p 个 ,这表明有限域 F 元素的个数必为素 n 数幂 q = p ,其 中 素 数 p 为 F 的 特 征 ,n ≥ 1 。 作 为 加 法 群 ,F 是 直 和 : F = n Fp x 1 磑 … 磑 Fp x n ,而每个 Fp x i 都同构于 Fp ( p 阶循环群) 。 (3) 乘法群 F 是 q - 1 元交换群 。 由拉格朗日定理 ,对 F 中每个元素 a ,均 × 有a q-1 × = 1 。 这表明 F 的全部 q - 1 个元素都是 x × q-1 - 1 = 0 的根 。 将 q - 1 分 解成 q - 1 = p11 … p r r , e e 其中 p1 ,… ,p r 是不同的素数 ,ei ≥ 1 (1 ≤ i ≤ r) 。 则 p i i |q - 1 ,可知 x e e p ii -1| 110 纠错码的代数理论 x q-1 - 1 。由于 x q-1 - 1 在 F 中有 q - 1 个不同的根 ,可知 x × 个不同的根 。 另一方面 ,x e -1 p ii e pii - 1 = 0 在域 F 中至多有 p i i e -1 e -1 pii ai ∈ F ,使得 ai = 1 ,但是 ai × e pii - 1 在 F 中有 p i i e × 个根 。 这表明存在 ≠ 1 。 即 ai 是 F 中 p i i 阶元素(1 ≤ i ≤ r) 。 于是 e × e e a= a1 a2 … ar 为 F 中[p11 ,p22 ,… ,p r r ] = p11 p22 … p r r = q - 1 阶元素 ,所以 F 是 e × e e e × 由 a 生成的 q - 1 阶循环群 。 特别地 , F = {0 ,1 ,a ,a ,… ,a } = Fp [a] = Fp (a) 。 q-2 2 上面定理表明 :有限域 F 的元素个数必为 p ,其中 p 是素数 ( F 的特征 ) , n 而 n ≥ 1 ,并且Fp 为 F 的子域 。 由于 F/F p 是有限次(n 次)扩张 ,F 的每个元素在 Fp 上均是代数元素 。 从而 F 必包含在F p 的代数闭包之中 。 以下我们固定F p 的 一个代数闭包 ,表示成 Ω p 。 于是 ,每个特征为 p 的有限域均是 Ω p 的子域 。 下面 定理圆满地回答了 :对每个 q = p ,是否一定存在 q 元有限域 ? n 定理 A .1 .2(有限域的存在惟一性 ) 对每个正整数 n ≥ 1 ,在 Ω p 中均存在 惟一的 q = p 元有限域 F ,它是由方程 x - x = 0 在 Ω p 中全部解组成的集合 。 n q 特别地 ,对于 Ω p 中元素 a ,a 属于 q 元有限域当且仅当 aq = a 。 证明 对于 f (x) = x - x ∈ Ω p [x] ,f′(x) = qx q q-1 - 1 = - 1 ≠ 0 (注意在 Ω p 中 q = p = 0) 。 于是( f (x) ,f′(x)) = 1 。 这表明 f (x)没有重根 ,即在 Ω p 中恰有 n q 个不同的根 ,于是 F = { a ∈ Ω p | a - a = 0} q 是 Ω p 的 q 元子集合 ,我们要证它是域 ,即要证明 :当 a ,b ∈ F 时 ,a ± b ∈ F ,ab ∈ F 。 并且当 a ≠ 0 时 ,a ∈ F 。 n-1 由 a ,b ∈ F ,可知 aq = a ,bq = b ,从而(ab)q = aq bq = ab ,(a ± b)q = (a ± b)p · p = -1 (a ± b ) p -1 p q p n-1 q n n = … = a ± b = a ± b = a ± b 。 因此 ab ,a ± b ∈ F 。 又若 a ≠ 0 ,则 (a ) = (a ) p -1 = a -1 p 。 所以 a q -1 q ∈ F 。 这就证明了 F 为域 。 进而 ,F 是 Ω p 中惟 一的 q 元有限子域 ,因为 q 元域中每个非零元素 a 均满足 a q-1 = 1 ,即 a = a ,从 q 而 a ∈ F 。 所以 Ω p 的 q 元子域只有 F 。 由于 Ω p 中只有惟一的 q 元子域 ,我们把这个子域记成F q 。 由上述定理可以得到有限域的许多重要性质 。 定理 A .1 .3 (1) 设F q ,F q′ 彻 Ω p 。 则F q 为F q′ 的子域当且仅当 q′ = q (l ≥ 1) 。 l 附录 A :有限域 111 特别地 ,F p n 为F p m 的子域当且仅当 n |m 。 (2) 对每个 n ≥ 1 ,F q [x]中必存在 n 次不可约多项式 f (x) 。 并且对 f (x)在 Ω p 中的每个根 a ,Fq [a] = Fq (a) = Fq n 。 证明 (1) 若F q 为Fq′ 的子域 ,则Fq′ 是F q 上有限维向量空间 。 设维数为 l(正 整数) ,则 q′ = ql 。 反之若 q′ = ql ,则 Fq 中元素 a 都是 x q - x 的根 。 由于 x q - x = x(x q-1 - 1)|x(x l q -1 l - 1) = x - x = x - x ,从而 a 也是 x - x 的根 ,即 a ∈ F q q′ q′ q′ 。 这表明F q 是F q′ 的子域 。 (2) F q n 的非零元素形成 q - 1 阶循环群 ,从而F q n 有 q - 1 阶元素 a(a n 1) ,于是 n × F q n = {0 ,1 ,a ,a ,… ,a n q -2 2 n q -1 = } = F q (a) = F q [a] 由于F q /F q 是有限次(n 次)扩张 ,a 在F q 上是代数的 ,并且 a 在Fq 上的最小多项 n 式 f (x) ∈ F q [x]是[Fq n ∶ F q ] = n 次首 1 不可约多项式 。 这就证明了对每个 n ≥ 1 ,Fq [x]中均有 n 次不可约多项式 。 现在举两个例子 ,说明如何构作有限域 。 例2 构求F9 。 我们首先需要F3 [x]中一个 2 次不可约多项式 。 考虑 f (x) = x + x + 2 ∈ F3 [x] 。 由 f (0) = 2 = f (2 ) ,f (1 ) = 1 ,可知 f ( x )在F3 中无根 ,所以 2 f (x)在F 3 (x)中不可约 。 由定理 A .1 .3 ,取 a 为 f ( x)在 Ω3 中的一个根 。 则 a + a + 2 = 0 ,即 a = 2 a+ 1 。 而F9 = F3 [a] ,F9 /F3 是域的 2 次扩张 ,并且{1 ,a}是F9 在 F3 上的一组基 。 2 换句话说 ,F9 中每个元素惟一表示成 (c0 ,c1 ∈ F3 ) 。 α = c0 + c1 a 将这个元素记成向量形式(c0 ,c1 ) ,则 0 = (0 ,0) , a = (0 ,1) , 1 = (1 ,0) , 2 a = 2 a + 1 = (1 ,2) , 2 a = a(2 a + 1) = 2 a + a = 2(2 a + 1) + a = 2 + 2 a = (2 ,2) , 3 2 a = a(2 + 2 a) = 2 a + 2 a = 2 a + 2(2 a + 1) = 2 = (2 ,0) , 4 2 a = 2 a = (0 ,2) , 5 a = a · a = 2(1 ,2) = (2 ,1) , 6 4 a = 2 · a = 2(2 ,2) = (1 ,1) , 7 3 2 8 (a = 1) 。 以上我们给出F 9 中所有元素F9 = {0 ,1 ,a ,a ,… ,a }的向量表示 。 它们可用来进 2 7 行四则运算 。 例如 3 5 6 a + a = (2 ,2) + (0 ,2) = (2 ,1) = a ( = 2 + a) , 112 纠错码的代数理论 (1 + 2 a)(2 + a) = a · a = a = 1 , 2 (1 + a) -1 7 = (a ) -1 6 = a 8 = a -7 8 -7 = a。 例 3 构作F 16 。 由于 16 = 2 ,我们需要F 2 [x]中一个 4 次不可约多项式 ,考 4 3 2 虑 f (x) = x + x + x + x + 1 ∈ F 2 [ x] 。 我们证明 f (x)在F 2 [ x]中不可约 。 如 果它可约 ,则 f (x)必有次数 ≤ 2 的多项式因子 ,由于 f (0) = f (1) = 1 ,可知 f (x) 2 没有一次多项式(x 或 x + 1)因子 。 进而 ,F2 [x]中 2 次不可约多项式只有 x + x + 2 2 2 1 ,而 x + x + 1 祰 f (x)(带余除法 : f (x) = x (x + x + 1) + x + 1) ,这表明 f ( x) 不可约 。 4 2 3 取 a 为 f (x)在 Ω2 中一个根 ,a = 1 + a+ a + a 。 则F 16 = F 2 [a] ,并且F 16 中 每个元素惟一表示成 α = c0 + c1 a + c2 a2 + c3 a3 ci ∈ F 2 = {0 ,1} 。 × F 16 是 15 阶乘法循环群 ,从而存在 15 阶元素 β ,F 16× = 枙 β枛 。 由于 f (x)|x5 + 1 = (1 + x) f (x) ,可知 a5 = 1 ,所以 a 不是循环群F 16× 的生成元 。 另一方面 ,1 + 15 a ≠ 1并且(1 + a) = 1 。 而 3 2 3 (1 + a) = 1 + a + a + a ≠ 1 , 4 (1 + a) = (1 + a)(1 + a) = (1 + a)(1 + a ) = 1 + a + a + a 5 4 4 4 5 5 (a = 1) = a + a = a + (1 + a + a + a ) = 1 + a + a ≠ 1 可知 β= 1 + a 是F 16× 中的 15 阶元素 ,而F 16 = {0 ,1 ,β ,β2 ,… ,β14 } 。 4 2 3 2 3 定义 A .1 .4 域 K 的自同构是双射 (一一对应)φ : K → K 并且满足以下性 质 :对于 a ,b ∈ K φ(a + b) = φ(a) + φ(b) , φ(ab) = φ(a)φ(b) 。 K 的所有自同构全体对于运算(映射)的复合(合成 )形成群 ,叫作域 K 的自 同构群 ,这个群的幺元素即是恒等映射(把 K 中每个元素 a 映成自身 ) 。 注意对 于 K 的自同构 φ ,必然 φ(0) = 0 ,φ(1) = 1 。 由此可知对每个 a ∈ K , -1 -1 φ( - a) = - φ(a) , φ(a ) = φ(a) (当 a ≠ 0 时) 。 设 L /K 是域的扩张 ,L 的自同构 φ 叫作是 K唱自同构 ,是指 φ 把 K 中每个元 素 a 均保持不动(φ(a) = a) ,即 φ 在 K 上的限制为 K 的恒等自同构 。 L 的所有 K唱自同构也形成群 ,是 L 的自同构群的一个子群 ,叫作域扩张 L /K 的伽罗瓦 群 ,表示成 Gal(L /K ) ,以纪念群论创始人 ——— 法国数学家伽罗瓦(Galois) 。 我们现在对于有限域的扩张F q n /F q ,决定它的伽罗瓦群 。 定理 A .1 .5 对于 n 次有限域扩张F q n /F q ,它的伽罗瓦群是由 τ= τq 生成的 附录 A :有限域 113 n 阶循环群 ,其中 τ :F q n → F q n , τ(a) = a (a ∈ F q n ) 。 q 证明 首先证明F q n 的F q 自同构个数不超过 n 个 ,即 |Gal(F q n /F q )| ≤ n 。 由于F q n = F q (a) ,F q n 中元素惟一表示成 (ci ∈ F q ) 。 α = c0 + c1 a + … + cn -1 an - 1 设 φ 是F q 的一个F q唱自同构 ,则 φ(ci ) = ci (0 ≤ i ≤ n - 1) 。 于是 n φ(α) = c0 + c1 φ(a) + … + cn- 1 φ(a) n-1 。 这表明 φ 由 φ(a)所完全决定 。 a 在F q 上的最小多项式是F q (x)中 n 次不可约首 1 多项式 f (x) = x + bn - 1 x n (bi ∈ F q ) + … + b0 n-1 假设它的 n 个根为 a1 ,a2 ,… ,an (不妨设 a= a1 ) 。 则每个F q (ai )都是F q n 。 于是 ai ∈ F q n (1 ≤ i ≤ n) ,并且 x + bn- 1 x + … + b1 x + b0 = f (x) = (x - a1 )(x - a2 ) … (x - an ) 。 将 φ 作用于此式两边多项式的系数 ,得到 n n- 1 (x - φ(a1 )) … (x - φ(an )) = x + φ(bn - 1 )x n = x + bn - 1 x n n- 1 n-1 + … + φ(b0 ) + … + b0 = f (x) 这表明 φ(a) = φ(a1 )也是 f ( x)的根 ,从而 φ(a)至多只有 n 个可能 。 这就表明 F q n 的F q唱自同构至多有 n 个 。 现在我们给出F q n 的 n 个F q唱自同构 。 首先验证 τ :F q n → F q n , τ(α) = α (α ∈ F q n ) q 是F q n 的F q唱自同构 。 对于 α ,β ∈ F q n , τ(α + β) = (α + β)q = αq + βq = τ(α) + τ(β) , q q q τ(αβ) = (αβ) = α β = τ(α)τ(β) 。 所以 τ是环的同态 ,进而 τ(α) = 0 骋 α = 0 ,从而同态 τ 的核 Ker (τ) = (0 ) ,因此 τ n n 为单同态 ,又因 τ 由 q 元集映到 q 元集 ,单射 τ 必是满射 。 这就表明 τ 是域F q n 的自同构 。 最后对 a ∈ F q ,τ(a) = a = a ,从而 τ 是F q唱自同构 。 q 对于每个正整数 k , α ∈ F q n , k k-1 τ (α) = τ k-2 n = τ k -1 (τ(α)) = τ q· q (α) k -2 = τ q k -1 (α ) = τ q (α) 2 q (α) q k = … = α 。 于是 τ (α) = α = α ,即 τ 是恒等自同构 :τ = 1 ,而当 1 ≤ k ≤ n - 1 时 ,τ (α) = α n q n n k k k 相当于 α = α ,这又相当于 α ∈ F qk 。 由于 k < n ,F q n 中存在元素 β ,使得 β ≠ β = q q τ (β) 。 这表明当 1 ≤ k ≤ n - 1 时 ,τ 不是恒等自同构 。 于是我们得到 n 个不同 k k 114 纠错码的代数理论 的F q - 自同构 τ (0 ≤ k ≤ n - 1) ,它就是F q n 的全部F q唱自同构 ,即 Gal(F q n /F q )是由 τ 生成的 n 阶循环群 k 习题 1 构作有限域F 8 ,并决定F 8 中乘法阶为 7 的元素 。 习题 2 设 q = p ( p 为素数 ,n ≥ 1) 。 证明对F q 中每个元素 a ,均有惟一的 × n b ∈ F q ,使得 b = a 。 p 习题 3 设 n 为奇数 ,a ,b ∈ F 2 n 。 求证 :若 a + ab + b = 0 ,则 a = b = 1 。 2 2 习题 4 设 a ,b ∈ F q ,ab ≠ 0 。 证明对每个 c ∈ F q ,方程 ax + by = c 在F q 中 均有解(x ,y) 。 2 习题 5 设 c ∈ F q ,k 为正整数 。 证明 : 2 × (1) 方程 x = c 在F q 中或者无解 ,或者恰好有(k ,q - 1)个解(这里(A ,B)表 示整数 A 和 B 的最大公因子) 。 q -1 × k (2) F q 中恰好有 个元素 c ,使得方程 x = c 在F q 中有解 。 (k ,q - 1) k 附录 A :有限域 115 A .2 有限域上的多项式环 我们在本节研究有限域上多项式的一些性质 。 所有系数属于F q 的单变量多 项式 f (x) = an x + an - 1 x n n-1 (ai ∈ F q ) + … + a1 x + a0 全体组成的集合记为F q [x] ,它对于自然定义的加法和乘法是一个交换环 ,并且 是整环(即若 f (x)g(x) = 0 ,则 f (x) = 0 或者 g(x) = 0) ,F q [x]叫作F q 上(关于 x 的)多项式环 ,如果 n ≥ 0 ,an ≠ 0 ,f ( x )叫作 n 次多项式 ,f ( x )的次数表示成 deg ( f )( = n) 。 零次多项式为 f (x) ≡ a0 ,其中 a0 是F q 中非零元素 ,而恒为零的 多项式 f (x) ≡ 0 ,规定次数为 - ∞ 。 在抽象代数中我们对任意域 F ,给出多项式环 F[ x ]的下列性质 ,所以对 F q [x]也成立 。 × (1) 整环F q [x]的单位群(即乘法可逆元素组成的乘法群)为F q 。 换句话说 , F q [x]中多项式 f (x)可逆(即 f (x) -1 ∈ F q [x])当且仅当 f (x) ≡ a (a∈ F q ) 。 × (2) F q [x]是主理想整环 ,即每个理想 A 都是主理想 : A = ( f (x)) = { f (x)g(x) | g(x) ∈ F q [x]} 。 当 A = (0)时 ,f (x) = 0 ,而当 A ≠ (0)时 ,f (x)是非零多项式 ,并且( f (x)) = (g(x))当且仅当 f (x) = cg(x) ,其中 c ∈ F q 。 所以有惟一的首 1 多项式 f (x)(即 × 最高次项系数为 1) ,使得 A = ( f ( x )) 。 并且 : A 是素理想当且仅当 f ( x )是 F q [x]中的不可约多项式 。 F q [x]中的非零素理想都是极大理想 。 (3) F q [x]是惟一分解整环 ,即 :F q [x]中每个次数 ≥ 1 的多项式 f (x)都惟 一地分解成 其中 c ∈ F f (x) = cp 1 (x)p2 (x) … p g (x) , × q ,p1 (x) ,… ,p g (x)是F q (x)中首 1 不可约多项式 。 现在研究不可约多项式的性质 。 与通常实数域或复数域上的多项式相对 比 ,下面一些结果可看到有限域上多项式有不少特别的性质 。 定理 A .2 .1 设 f (x)是F q [x]中 n 次不可约多项式(n ≥ 1) ,f (x) ≠ x 。 α 为 f (x)在F q 的代数闭包中的一个根 ,则 (1) f (x)有 n 个不同的根 ,它们是 α ,α ,α ,… ,α q q 2 q n-1 n 。 并且 n 是满足 α = α q 的最小正整数 。 i q n n (2) α (0 ≤ i ≤ n - 1) 有相同的乘法阶 l ,l | q - 1 ,并且 n 也是满足 q ≡ 116 纠错码的代数理论 1(mod l) 的最小正整数 。 n q (3) x - x 是F q [x]中所有次数除尽 n 的首 1 不可约多项式的乘积 。 (4) F q [x]中 n 次首 1 不可约多项式的个数为 n/ d N q (n) = 1 ∑ μ(d)q , n d| n 其中 ,μ(n)是初等数论中的莫比乌斯函数 ,定义为 1, 若n= 1, ( - 1) , 若 n 是 l 个不同素数之乘积 , 0, 否则 。 l μ(n) = 证明 n ∑ i= 0 (1) 和(2) :先证F q [x] 中不可约多项式 f (x) 没有重根 ,设 f (x) = ai x (ai ∈ Fq ,an ≠ 0) ,则 f (x)的形式微商为 f′(x) ∈ i n iai x ∑ i= 0 i-1 ∈ Fq [x] 。 我 们知道 ,f (x)没有重根当且仅当( f (x) ,f′(x )) = 1 。 由 f′(x)的次数小于 n ,而 f (x)是 n 次不可约 ,可知当 ( f ( x) ,f′( x)) ≠ 0 时 ,必然 f′( x) ≡ 0 ,即 iai = 0 ∈ Fq (0 ≤ i ≤ n) 。 设Fq 的特征为素数 p ,则当 p 祰 i 时必然 ai = 0 。 所以 f (x)有形式 f (x) = t ∑ i= 0 aip x ip t = ( ∑ i= 0 aip x ) ,这与 f (x)不可约相矛盾 ,于是证明了F q [x]中 i p 不可约多项式没有重根 。 设 α1 ,… ,αn 是 f (x)的 n 个(不同的)根 ,α= α1 ,则F q [αi ] = F q n (1 ≤ i ≤ n) 。 于是 n n-1 an x + an - 1 x + … + a1 x + a0 = f (x) = an (x - α1 )(x - α2 ) … (x - αn ) , 其中 x - αi ∈ F q n [x](1 ≤ i ≤ n) 。 将上式两边作用F q n 的F q唱自同构 τ(τ(γ) = γ ) 可知 q q q f (x) = an (x - α1 )(x - α2 ) … (x - αn ) 。 q i 所以若 α= α1 为 f (x)的根 ,则 α = α1 也是 f (x)的根 ,于是 α (i = 0 ,1 ,2 … )均是 f (x)的根 。 × 由于 f (x) ≠ x ,可知 a0 ≠ 0 ,即 f (x )的根均不为零 ,于是 α 为F q n 中元素 ,并 q q q n n 且 α 的乘法阶 l 为 q - 1 为因子 ,这表明 α = 1 ,即 α = α 。 我们现在证明 i i j j i q q q q -q α (0 ≤ i ≤ n - 1)彼此不同 。 假如 α = α (0 ≤ i < j ≤ n - 1 ) ,则 1 = α = j-i i j-i j-i n j-i i n- i j-i (q - 1 )q q -1 (q - 1 )q (q - 1 )q q q α ,从而 α = α = α = 1。即 α = α 。 这表明 α ∈ F q j - i 而1 ≤ j - i ≤ n - 1 。 这与F q [α] = F q n 相矛盾 。 这就证明了 :若 α 是F q [ x]中 n q -1 q i n 次不可约多项式 f (x)的一个根 ,则 f ( x)有 n 个不同的根 ,它们是 α (0 ≤ i ≤ n - 1) 。 (1)和(2)的其他论断由上面证明中可以看出 。 q 附录 A :有限域 117 (3) 令 F(x)是Fq (x)中所有次数除尽 n 的首 1 不可约多项式之乘积 。 为证 n n n F(x)= x - x ,我们只需证明 F(x)和 x - x 有相同的根 。 由于 x - x 的 q 的根 即是Fqn 中全部元素 ,我们只需证明 F(x)的根也是Fqn 中全部元素 。 设 f (x)是Fq [x] 中 d 次首 1 不可约多项式 ,d|n ,α为 f (x)的根 ,则Fq (α) = Fq d 彻 Fqn 。 因此 α 是Fq n 中 元素 ,反之 ,对Fqn 中每个元素 α ,令Fq (α) = Fq d 。 由 α ∈ Fqn 可知Fq d = Fq (α) 彻 Fqn ,于是 d|n 。 而 α 在Fq 上的最小多项式 f (x)是Fq (x)中首 1 不可约多项式 ,次数 d 除尽 n 。 q q q n n 这就证明了 F(x)的根也是Fqn 中全部元素 ,于是 F(x) = x - x 。 (4) 对每个 d ≥ 1 ,以 N q (d)表示Fq [x]中 d 次首 1 不可约多项式的个数 。 这 N q (d)个 d 次首 1 多项式共有 d N q (d)个根 。 根据(3) ,将 d 过 n 的正因子求和 , q 便得到全部 q 个根(即F q n 中全部元素) ,于是有 n ∑ d| n d N q (d) = q 。 n 利用初等数论中的 Mö bius 反演公式 ,给出 nN q (n) = ∑ d| n N q (n)的公式 。 习题 1 n 为 。 (n ,l) n/ d μ(d)q 。这就得到 设 α 是乘法群F q 中的 n 阶元素 。 证明对每个整数 l ,元素 α 的阶 l × 习题 2 设 f (x)是Fq [x]中不可约多项式 ,f ( x) ≠ x 。 证明 f (x )的所有根 的乘法阶是相同的 。 定义 A .2 .2 乘法循环群F q 的生成元 α(即 α 为 q - 1 阶元素)叫作有限域 F q 的一个本原元素 。 设F q n = F q (α) ,则 α 在F q 上的最小多项式 f ( x)为F q [ x]中 n 次首 1 不可约 多项式 ,f (x) = 0 。 如果 α 是F q n 中本原元素 ,则 f (x)叫作F q [x]中的 n 次本原多 项式 。 换句话说 ,F q [x]中 n 次首 1 不可约多项式 f ( x)叫作是F q [ x]中的本原 × 多项式 ,是指 f (x)的(每个)根的阶为 q - 1 。 n 定理 A .2 .3 F q [x]中 n 次本原多项式的个数为 n φ(q - 1) 。 n 证明 设 α 是F q n 中的一个本原元素 ,即 α 的阶为 q - 1 ,则F q n 中元素可表 n 示成 α (1 ≤ l ≤ q - 1) 。 由上面习题 1 知 ,α 的阶为 l n l × q -1 l 。 所以 α 是F q n 中 n (q - 1 ,l) n 118 纠错码的代数理论 q -1 n n = q - 1 ,即当且仅当 (q - 1 ,l) = 1 。 由于 1 ≤ l ≤ n (q - 1 ,l) n n n n q - 1 并且(q - 1 ,l) = 1 的整数个数有 φ(q - 1)个 ,所以F q n 中共有 φ (q - 1 )个 本原元素 。 因为Fq [x]中每个 n 次本原多项式的根是Fq n 中 n 个本原元素 ,这就 n 本原元素当且仅当 证明了Fq [x]中 n 次本原多项式的个数为 例4 φ(qn - 1) 。 n 取 q = 2 ,n = 4 。 则F 2 [x]中 4 次不可约多项式的个数为 1 1 4 1 4 /d 2 N2 (4) = μ(d)2 = 2 -2 = (16 - 4) = 3 。 4 ∑ 4 4 d| 2 4 φ(2 - 1) φ(15) 8 = = = 2 。 事实上 , 4 4 4 F 2 [x]中 3 个 4 次不可约多项式为 f 1 ( x ) = x4 + x + 1 ,f 2 ( x ) = x4 + x3 + 1 和 而F 2 [x]中 4 次本原多项式的个数为 f 3 (x) = x + x + x + x + 1 。 取这三个多项式当中任一多项式的一个根 α ,均有 F 2 4 = F 2 [α] = F 2 (α) 。 我们在例 3 中取 f 3 ( x )的一个根 α ,α 的阶为 5 。 可知 f 3 (x)不是F2 [x]中的本原多项式 。 于是 f1 (x)和 f 2 (x)为F2 [x]中的本原多项式 。 我们在例 3 中指出 ,β= 1 + a 是F 16 中的一个本原元素 (即阶为 16 - 1 = 15 ) 。 β 在F 2 上的最小多项式 f (x)应当为F 2 [x]中的 4 次本原多项式 f 1 (x)或 f 2 (x) 。 根据定理 A .2 .1 ,f (x)的 4 个根为 β = 1 + a ,β2 = (1 + a)2 = 1 + a2 ,β4 = (1 + a)4 = 1 + a4 = a + a2 + a3 , 4 3 2 β = 1 + a = 1 + a (注意 : a = a + a + a + 1 , a = 1) 。 4 3 2 令 f (x) = x + c1 x + c2 x + c3 x + 1 ,则由韦达定理 , 8 8 3 4 3 2 5 c1 = β + β + β + β = 1 + a + 1 + a + a + a + a + 1 + a = 1 。 2 4 8 2 2 3 3 这表明 β在F 2 上的最小多项式为 f 2 (x) = x4 + x3 + 1 。 F 16 中非零元素为 β (0 ≤ i ≤ 14) 。 它们也惟一表示成 i β = c0 + c1 β + c2 β + c3 β = (c0 c1 c2 c3 ) i 4 2 3 3 2 3 (ci ∈ F 2 ) 。 利用 β = 1 + β ,便得到F 16 中诸元素对于基{1 ,β ,β ,β }的向量表示 2 0 = (0000) ,1 = (1000) ,β = (0100) ,β = (0010) , 3 4 5 6 7 8 9 10 β = (0001) ,β = (1001) ,β = (1101) ,β = (1111) , β = (1110) ,β = (0111) ,β = (1010) ,β = (0101) , 11 12 13 14 β = (1011) ,β = (1100) ,β = (0110) ,β = (0011) 。 5 5 如果求 β 在F 2 上的最小多项式 g(x) ,由 β 的阶为 15 可知 β 的阶为 3 。 因 x3 + 1 2 5 10 此 g(x) = = x + x + 1 。 或者根据定理 A .2 .1(1) : g(x)的根为 β ,β ,而 x+ 1 20 5 5 10 β = β 。 所以 g(x)是以 β = (1101)和 β = (0101)为根的 2 次不可约多项式 。 附录 A :有限域 119 g(x) = x + (β + β )x + β · β = x + x + 1 。 5 5 2 5 即F2 (β ) = F 4 。 由于 g(x)的根 β 的阶为 2 - 1 = 3 ,可知 β 是F 4 中本原元素 ,即 2 5 10 5 10 2 x + x + 1 是F 2 [x]中的本原多项式 。 (注意 :F 2 [x]中 2 次本原多项式个数为 2 2 φ(2 - 1) = 1 。) 2 习题 3 例5 写出F3 [x]中所有 3 次首 1 不可约多项式 ,其中哪些是本原多项式 ? 在F 3 [x]中将 x 60 - 1 分解成首 1 不可约多项式的乘积 。 解 x - 1 = (x - 1) ,我们只需分解 f (x) = x - 1 。 由 f′( x) = 20 x = 19 20 80 81 2 x ,( f (x) ,f′(x)) = 1 ,可知 f ( x)没有重根 。 由于 x - 1 |( x - 1 ) x = x - × × 20 20 x ,可知 f (x)的根均在F 81 = F 3 4 之中 ,若 α 和 β 为 f ( x)的根 ,即 α = β = 1 ,则 - 1 20 20 -1 (α ) = (αβ) = 1 ,即 α 和 αβ 也是 f (x)的根 ,可知 f (x)的全部 20 个根形成 × 循环群F 81 的一个乘法子群 ,所以它也是循环群 ,这表明存在阶为 20 的一个根 α , 60 20 3 20 19 使得 f (x)的全部根为 α (0 ≤ i ≤ 19) 。 i i 20 对每个 α ,α 在F 3 上的最小多项式 g(x)都是 f (x) = x - 1 在F 3 [x]中的一 i l-1 l 个首 1 不可约多项式因子 ,而 g(x)的根为 α ,α ,… ,α 。 其中 l 是满足 α = i l α 的最小正整数 ,即 l 是满足 3 i ≡ i(mod 20)的最小正整数 ,并且 deg g(x) = l 。 i i j 于是 ,f (x)的根 α (0 ≤ i ≤ 19)分成一些等价类 ,其中 α 和 α 等价 ,是指存在整数 i n 3i 3 i 3 i n ,使得 α = α (即 3 i ≡ j (mod 20)) 。 每个等价类对应于 f ( x) = x - 1 的一 个首 1 不可约多项式因子 g(x) ,并且 g(x )的次数等于这个等价类中元素的个 数 。 这些等价类为 0 {α = 1} , 3 9 7 3·7 21 {α ,α ,α ,α } (α = α = α) , 2 6 18 14 3·14 42 {α ,α ,α ,α } (α = α = α) , 4 12 16 8 3·8 4 {α ,α ,α ,α } (α = α ) , {α5 ,α15 } (α3·15 = α5 ) , {α10 = - 1} (α3·10 = α10 ) , 11 13 19 17 3·17 11 {α ,α ,α ,α } (α = α )。 20 这表明 x - 1 在F 3 [x]中是 7 个首 1 不可约多项式之乘积 ,次数分别为 1 ,4 ,4 , i· 3 j n 20 4 ,2 ,1 ,4 。 我们可将 x20 - 1 初步地分解成 20 10 10 x - 1 = (x - 1)(x + 1) 5 5 2 8 6 4 2 = (x - 1)(x + 1)(x + 1)(x - x + x - x + 1) 4 3 2 4 3 = (x - 1)(x + x + x + x + 1)(x + 1)(x - x 120 纠错码的代数理论 + x - x + 1)(x + 1)(x - x + x - x + 1) 。 可知上式右边只有最后的 8 次多项式应当再分解成两个 4 次不可约多项式的乘 5 x -1 4 3 2 4 3 2 积。由 x + x + x + x+ 1= ,可知 x + x + x + x + 1 的根均是 5 阶元 x -1 x5 + 1 4 12 16 8 4 3 2 素 ,即根为等价类{α ,α ,α ,α } 。 同样地 ,x - x + x - x + 1 = 的根均 x+ 1 是 10 阶元素 ,从而对应等价类{α2 ,α6 ,α18 ,α14 } 。 设 8 6 4 2 x - x + x - x + 1 = g(x)h(x) , 3 其中 g(x)和 h(x)是F 3 [x]中 4 次首 1 不可约多项式 ,则它们的根分别为{ α ,α , 9 7 11 13 19 17 -1 -3 -9 -7 α ,α }和{α ,α ,α ,α } = {α ,α ,α ,α } 。 即 3 9 7 4 3 2 g(x) = (x - α)(x - α )(x - α )(x - α ) = x + c1 x + c2 x + c3 x + c4 , 2 2 8 6 4 2 h(x) = (x - α )(x - α )(x - α )(x - α ) , 其中 c4 = α · α3 · α9 · α7 = α20 = 1 。 由于 g(x)和 h(x)的根互为倒数(g(β) = 0 骋 -1 2 h(β ) = 0) ,可知 h(x)为 g ( x )的“反向” 多项式 ,即 h( x ) = 1 + c1 x + c2 x + 3 4 c3 x + c4 x 。 于是 8 6 4 2 x - x + x - x +1 = g(x)h(x) 4 3 2 4 3 2 = (x + c1 x + c2 x + c3 x + 1)(x + c3 x + c2 x + c1 x + 1) 比较两边 x 的系数 ,可知 0 = c1 + c3 。 于是 8 6 4 2 x - x + x - x +1 = (x4 + a x 3 + bx 2 - a x + 1)(x4 - a x 3 + bx 2 + a x + 1) (a ,b ∈ F 3 ) -1 -3 -9 -7 = (x + bx + 1) - (a x - a x ) 4 2 2 2 2 2 2 = (x + bx + 1) - a (x - 1) x , 4 即 2 2 3 2 y4 - y3 + y2 - y + 1 = (y2 + by + 1)2 - a2 (y - 1)2 y 。 2 比较两边 y 和 y 的系数 ,可知 2 - 1 = 2b - a , 2 从而 2 = 2 - 2b + b , 2 2 1 = 2+ b - a , 2 从而 b = 0 或 2 。 当 b = 2 时 ,a = 5 = 2 在F 3 中无解 ,于是 b = 0 而 a = ± 1 。 即 8 6 4 2 4 3 4 3 x - x + x - x + 1 = (x + x - x + 1)(x - x + x + 1) 。 从而 20 2 4 3 2 4 3 x - 1 = (x - 1)(x + 1)(x + 1)(x + x + x + x + 1)(x - x 2 4 3 4 3 + x - x + 1)(x + x - x + 1)(x - x + x + 1) , 60 而 x - 1 在F 3 [x]中分解成上式右边 7 个不可约多项式的三次方之乘积 。 附录 A :有限域 121 本节最后介绍有限域上多项式的周期特性 ,设 f ( x) = an x + … + a1 x + a0 n 是F q [x]中多项式 ,常数项 a0 = f (0)不是零 ,即 0 不为 f (x)的根 ,我们要证明存 在某个正整数 l ,使得 f (x)|x - 1 。 这样的多项式 f (x)叫作是具有周期的 。 l 定义 A .2 .4 F q [x]中多项式 f (x)若是具有周期的 ,则满足 f (x)|x - 1 的 引理 A .2 .5 设 f (x)为F q [ x ]中具有周期的多项式 。 则对每个正整数 n , l 最小正整数 l 叫作是多项式 f (x)的周期(period) ,表示成 per( f ) 。 f (x)|x - 1 当且仅当 per( f )|n 。 n 证明 记 l = per( f ) 。 如果 l|n ,则 f (x)|x l - 1 |x n - 1 。 反之若 f ( x)|x n - 1 ,用 l 除 n 有带余除法 n = ql + r , q ,r ∈ Z , 0 ≤ r ≤ l - 1 。 于是 f (x)|(x - 1 ,x - 1) = (x - 1 ,x - 1) 。 从而 f (x)|x - 1 。 由于 l 是 f (x) l n l r r 的周期而 0 ≤ r ≤ l - 1 ,可知 r = 0 ,即 l|n ,证毕 。 下面定理表明F q [x]中每个常数项不为零的多项式都是具有周期的 ,并且 给出决定周期的方法 。 定理 A .2 .6 设 f (x) ∈ Fq [ x ] ,f (0 ) ≠ 0 (即 x 祰 f ( x )) ,deg f ( x) ≥ 1 。 q = p ,其中 p 为素数 ,m ≥ 1 。 则 f (x)是具有周期的 。 具体地说 , m deg f q (1) 若 f (x)在F q [x]中不可约 ,则 per ( f )为 f 的每个根的阶 ,于是per( f )| -1 。 (2) 若 f (x) = g(x) ,其中 g(x)为Fq [x]中不可约多项式 ,b ≥ 1 。 令 t 是满 b 足 p ≥ b 的最小整数 ,则 per( f ) = p · per(g) 。 t t (3) 设 f (x) = f 1 (x) f 2 (x) … f s (x) ,其中 f 1 ,… ,f s 为F q [x]中两两互素的 多项式 ,deg f i ≥ 1(1 ≤ i ≤ s) 。 则 per f = [per( f 1 ) ,… ,per( f s )] 。 证明 以下记 l = per( f ) 。 n q (1) 若 f (x)为F q ( x )中 n( ≥ 1 )次不可约多项式 ,则 f (x ) |x - x 。 再由 f (0) ≠ 0 可知 x 祰 f (x) 。 于是 f (x)|(x q n - x)/x = x n q -1 - 1 。 于是 l |q - 1 。 进 n 而 ,对 f (x)的每个根 α ,f (x)|x - 1 骋 (x - α)|x - 1 骋 α = 1 。 可知 f (x)的周期 s s s l 即是 α 的阶(特别地 ,l = q - 1 当且仅当 f (x)为本原多项式) 。 n 122 纠错码的代数理论 (2) 记 per(g) = e 。 由 g(x)|x - 1 和 b ≤ p 可知 t t t b p e p ep f (x) = g(x) | g(x) | (x - 1) = x - 1 。 t d 因此 l = per( f )|e p 。 另一方面 ,记 d = deg ( g(x)) ,则 e |q - 1 ,从而 (e ,p) = 1 。 l t λ 由 g|f 可知 g |x - 1 。 于是 e = per(g)|per ( f ) = l |ep 。 这表明 l = ep (0 ≤ λ ≤ λ λ b ep e p e t) 。 于是 f = g(x) |x - 1 = (x - 1) 。 由于 g(x)和 x - 1 都没有重根 ,必然 λ t b ≤ p 。 再由 t 的定义可知 λ ≥ t 。 于是 λ= t ,即 per( f ) = l = e p 。 (3) 由于 f 1 ,… ,f s 两两互素 ,可知对每个正整数 n , e t f (x) | x - 1 骋 f i (x) | x - 1 n (1 ≤ i ≤ s) n 骋 per( f i ) | n (1 ≤ i ≤ s) 骋 [per( f 1 ) ,… ,per( f s )] | n per( f ) = [per( f 1 ) ,… ,per( f r )] 。 因此 例6 解 求F 2 [x]中多项式 f (x) = (x + x + 1) (x + x + 1)的周期 。 2 3 4 x + x + 1 是F 2 [x]中不可约多项式 ,周期为 3 ,x + x + 1 为F 2 [ x]中本 2 4 原多项式 ,周期为 2 - 1 = 15 。 由定理 A .2 .6 可 知 ( x + x + 1 ) 的 周 期 为 3 · 22 = 12 。 而 f (x)的周期为[12 ,15] = 60 。 4 2 3 列出 F 5 [ x ]中所有 2 次首 1 不可约多项式 ,其中哪些是本原多 习题 4 项式 ? 习题 5 将 x + 1 在F 2 [x]中分解成不可约多项式的乘积 。 习题 6 证明当 n ≥ 3 时 ,x2 + x + 1 在F 2 [x]中可约 。 习题 7 证明 x - x + 1 是F 3 [x]中本原多项式 。 21 n 5 习题 8 设 f (x)是F q [x]中 n 次不可约多项式 ,对每个正整数 k ,令 d = (n ,k) 。 n 证明 f (x)是Fqk [x]中 d 个 次不可约多项式之积 。 d 习题 9 x p-1 + x 设 p 为奇素数 ,2 模 p 的阶为 s 。 证明 s|p - 1 ,并且多项式 + … + x + 1 在F2 [x]中是 p-2 习题 10 p -1 个 s 次不可约多项式的乘积 。 s p 设 f (x)是F q [x]中首 1 多项式 ,f (0) ≠ 0 ,deg f ( x) = d ≥ 1 。 证明 per ( f ) ≤ q - 1 。 并且 per( f ) = q - 1 当且仅当 f 为本原多项式 。 d x -1 = x -1 d 附录 A :有限域 123 A .3 有限域上的幂级数环 通信中一个信息序列可以表达成一个 q 元序列 (an ∈ F q ) , α = (a0 ,a1 ,… ,an ,… ) 它等同于一个“形式”幂级数 α(x) = a0 + a1 x + a2 x + … + an x + … = n 2 ∞ ∑ n= 0 an x 。 n 所有这种幂级数组成的集合记成F q [[x]] 。 上述幂级数 α(x)和 β( x) = ∞ ∑ n= 0 bn x n 相等 ,当且仅当 an = bn (对每个 n ≥ 0) ,也就是 α 和 β = (b0 ,b1 ,… ,bn ,… )是同一 个序列 。 我们在F q [[x]]中引入自然的加法和乘法运算 : ∞ ∑ α(x) + β(x) = n= 0 (an + bn )x , n ∞ ∞ ∞ α(x)β(x) = ( ∑ an x )( ∑ bm x ) = n n= 0 ∑ λ= 0 其中 cλ = ∑ n ,m ≥ 0 n+ m = λ ( ∑ m= 0 ∞ = m ∑ n ,m ≥ 0 n+ m = λ n ,m = 0 ∞ an b m )x = λ an b m x n+ m cλ x , λ ∑ λ= 0 an b m 。 容易验证Fq [[x]]对于这些运算形成含幺交换环 ,叫作Fq 上的幂级数环 ,零元素 0 即对应全零序列 (0 ,0 ,… ,0 ,… ) ,幺元素 1 对应于序列 (1 ,0 ,0 ,… ,0 ,… ) 。 Fq 上的每个多项式 f (x) = a0 + a1 x + … + an x 对应于有限 n 序列(a0 ,a1 ,… ,an ) ,它可看成是幂级数的特殊情形(当 l ≥ n + 1 时 ,al = 0 ) ,即看 成是序列(a0 ,a1 ,… ,an ,0 ,… ,0 ,… ) 。 于是Fq 上的多项式环Fq [x]是Fq [[x ]]的 一个子环 。 × 多项式环Fq [x]的单位群(乘法可逆元素全体)为Fq 。 下面引理表明 ,幂级 数环有更多的乘法可逆元素 ,从而可以比在Fq [x]中更自由地做除法 。 引理 A .3 .1 a0 ≠ 0 。 F q [[x]] 中的幂级数 α(x) = ∞ ∑ an x 是乘法可逆的当且仅当 n n= 0 ∞ 证明 若 α(x) 可逆 ,则存在幂级数 β(x) = ∑ n= 0 bn x (bn ∈ Fq ) 使得 n 124 纠错码的代数理论 ∞ 1 = α(x)β(x) = ∑ n= 0 cn x , cn = n ∑ λ+ μ = n λ ,μ ≥ 0 aλ b μ 于是 1 = a0 b0 ,从而 a0 ≠ 0 。反之若 a0 ≠ 0 ,我们考察是否存在幂级数 β( x) = ∞ ∑ n= 0 bn x 使得 α(x)β(x) = 1 。 这相当于 b0 ,b1 ,… ,bn ,… 满足 n a0 b0 = 1 , a1 b0 + a0 b1 = 0 , … an b0 + an - 1 b1 + … + a1 bn - 1 + a0 bn = 0 , … 由于 a0 ≠ 0 ,我们可以依次取 b0 = a0- 1 , b1 = - a0 a1 b0 , -1 … bn = - a0- 1 (an b0 + an - 1 b1 + … + a1 bn - 1 ) , … ∞ 这样得到的 β(x) = ∑ n= 0 bn x 就是 α(x) 的逆 n 1 。 α(x) 特别地 ,对于F q [x]中每个多项式 f (x) ,如果常数项不为 0 ,即 f (0) ≠ 0 ,则 f (x)为F q [x]中的可逆元素 ,即 则 1 n ∈ F q [[ x]] ,例如 f ( x) = 1 - x f (x) (n ≥ 1 ) , 1 n 为幂级数 。 事实上 , 1-x n n n n 1 1 - x x 1 1+ x n n = n + n = 1 + x · n = 1 + x 1 - x 1 - x 1 - x 1 - x 1 - x n = 1+ x + x n 2n + x 3n + … 。 它对应于周期序列(10 … 010 … 010 … 0 … ) ,即 1 后面有 n - 1 个 0 ,然后周期地重复 。 定义 A .3 .2 F q 上序列 α = (a0 ,a1 ,… ,an ,… )叫作周期序列 ,是指存在某个 正整 数 l ,使 得 ai + l = ai ( i = 0 ,1 ,2 ,… ) 。 这 时 ,此 序 列 ( a0 ,… ,al - 1 ,a0 ,… , al - 1 ,… )也表示成 α= (痹a0 ,… ,痹al - 1 ) 。 满足此条件的最小正整数 l 叫作序列 α 的 周期 。 附录 A :有限域 125 习题 1 设 α= (a0 ,a1 ,… ,an ,… )是F q 上的周期序列 ,周期为 l 。 则对每个 正整数 m ,条件 ai + m = ai (i = 0 ,1 ,2 ,… )成立当且仅当 l|m 。 现在我们来刻画F q 上的周期序列 。 定理 A .3 .3 ∞ 级数 α(x) = ∑ n= 0 (1) F q 上序列 α = (a0 ,a1 ,… ,an ,… ) 是周期序列 ,当且仅当幂 an x 为 真 分 式 n deg f (x)) 并且 f (0) ≠ 0 。 (2) 若 g(x) (即 g(x) ,f (x) ∈ F q [x] ,deg g(x) < f (x) g(x) 是既约真分式 ,即 g( x ) ,f ( x ) ∈ F q [ x ] ,deg g( x) < deg f ( x ) , f (x) f (0) ≠ 0 并且(g(x ) ,f ( x)) = 1 。 则对应序列的周期等于多项式 f ( x )的周期 per ( f )(见定义 A .2 .4) 。 证明 ∞ α(x) = ∑ n= 0 (1) 若 α= (a 0 ,… ,a l - 1 )是F q 上周期序列 ,则 · · an x = (a0 + a1 x + … + al -1 x n = (a0 + a1 x + … + al - 1 x = a0 + a1 x + … + al - 1 x l 1 - x l-1 l-1 ) + x (a0 + a1 x + … + al - 1 x l l -1 )+ … )(1 + x + x + … ) l 2l l-1 (1) 这是真分式 ,并且分母的常数项不为零 。 反之 ,若 g(x) 为真分式 ,g(x) ,f ( x) ∈ f (x) F q [x] ,并且 f (0) ≠ 0 。 则由定理 A .2 .6 ,存在正整数 l ,使得 f ( x) |1 - x l 。 令 1 - x l = f (x)h(x) ,其中 h(x) ∈ F q [x] ,则 g(x) g(x)h(x) = , l f (x) 1 - x 其中右边仍是真分式 ,即 deg (g(x)h(x)) ≤ l - 1 。 记 g(x)h(x) = a0 + a1 x + … + al - 1 xl - 1 ,(ai ∈ F q ) ,则 a0 + a1 x + … + al - 1 x g(x) = l f (x) 1 - x l-1 , 由(1)式即知它对应于周期序列(痹a0 ,… ,痹al - 1 ) 。 (2) 设 g(x) 为既约真分式 ,即 g( x ) ,f ( x ) ∈ F q [ x ] ,f (0 ) ≠ 0 ,deg g( x) < f (x) deg f (x) ,并且( f (x) ,g(x)) = 1 。 令 g(x) 对应的周期序列的周期为 l 。 我们要 f (x) 126 纠错码的代数理论 g(x) 对应的序列有形式 f (x) (痹a0 ,… ,痹aper( f ) - 1 ) 。 于是 l|per ( f )(习题 1 ) 。 另一方面 ,由于序列的周期为 l ,由 g(x) h(x) l (1)中证明可知 = 。 于是 f (x)|(1 - x ) g(x) 。 由于 f ( x)和 g( x)互 f (x) 1 - x l l 素 ,从而 f (x)|1 - x ,这表明 per( f )|l(引理 A .2 .5) 。 于是 l = per( f ) 。 证 l = per( f ) 。 由于 f (x)|1 - x per( f ) ,由(1 )中证明可知 1 + x2 3 5 所对应的周期序列 。 1+ x+ x + x 2 3 5 2 3 5 解 (1 + x ,1 + x + x + x ) = 1 + x ,1 + x = (1 + x)(1 + x) ,1 + x + x + x = 1+ x 3 4 3 (1 + x)(1 + x + x ) 。 于是 α(x) = 这是既约真分式 。 f (x) = 1 + x + 3 4 , 1+ x + x x4 是F2 [x]中本原多项式 ,周期为 15 。 所以 α(x)对应的序列 α是周期为 15 的二元 序列 ,由于 15 3 4 3 4 6 8 9 10 11 1 + x = (1 + x + x )(1 + x + x + x + x + x + x + x ) , 于是 3 4 6 8 9 10 11 + x + x + x + x + x + x ) α(x) = (1 + x)(1 + x 15 1+ x 例7 求F 2 [[x]]中真分式 α(x) = 1+ x+ x + x + x + x + x + x 15 1+ x 3 = 5 6 · 7 8 12 , · 所以 α(x)对应的序列为(110101111000100 ) 。 例 8 对于以 f (x) = (x + x + 1 ) 为分母的真分式 ,可以对应多少二元周 期序列 ? 它们的周期是多少 ? g(x) (即 g( x ) ∈ F 2 [ x ] , 解 以 f (x)为分母的真分式 α( x ) = 3 2 (x + x + 1) 6 deg g(x) ≤ 5)共有 2 = 64 个 ,从而共有 64 个二元周期序列 。 当 g( x) = 0 时 ,对 · h(x) 应一个周期为 1 的全零序列(0 )(α(x) = 0) 。 当 α(x)为既约分式 3 时 ,由 x + x+ 1 3 3 于 x + x + 1 为F 2 [x]中本原多项式 ,周期为 7 。 这样的既约分式共 2 - 1 = 7 个 (即要求 deg h(x) ≤ 2 ,h(x) ≠ 0) ,对应 7 个周期为 7 的二元序列 。 其余 64 - 1 - 7 = g(x) 3 2 56 个α(x) = 3 根据定理 A .2 .6 ,(x + x + 1 ) 的周期 2 是既约真分式 , (x + x + 1) 为 14 ,所以这 56 个二元序列的周期为 14 。 3 习题 2 2 以 f (x) = (x + x + 1)(x + x + 1)为分母的真分式 ,可以对应多少 3 2 附录 A :有限域 127 二元周期序列 ? 它们的周期是多少 ? 习题 3 设 f (x) ,g(x) ∈ F q [x] ,f (0) ≠ 0 。 如果 deg g(x) ≥ deg f ( x) ,试问 g(x) 分式 对应的F q 上序列有什么特性 ? f (x) 将F q 上周期序列表示成真分式的好处是 :我们常可以把周期序列表示成一 些简单的周期序列之和 ,这要利用下面结果 。 引理 A .3 .4 设 f (x) = f 1 (x) f 2 (x) … f s (x) ,其中 f i (x)(1 ≤ i ≤ s)是F q [x] g(x) f (x) Fq [x] ,deg g(x) < deg f (x))可以惟一地表示成 s 个真分式之和 : g1 (x) g2 (x) gs (x) g(x) = + + … + f (x) f 1 (x) f 2 (x) f s (x) 中两两互素的多项式 ,deg f i (x) ≥ 1 (1 ≤ i ≤ s) 。 则每个真分式 (g(x) ∈ (gi (x) ∈ F q [x] ,deg gi (x) < deg f i (x)) 。 证明 我们只证明 s = 2 的情形 (一般情形用数学归纳法 ) 。 设 f ( x ) = f 1 (x) f 2 (x) ,f 1 (x) ,f 2 (x) ∈ F q [x] ,( f 1 ,f 2 ) = 1 。 由于F q [ x]是主理想整环 ,主 理想( f1 (x)) = f1 (x)F q [x]和( f 2 (x)) = f 2 (x)F q [x]之和为主理想(( f 1 ,f 2 )) = (1) = F q [x] ,即 f 1 F q [x] + f 2 F q [x] = F q [x] , 所以对于 g(x) ∈ F q [x] ,deg g(x ) < deg f ( x) ,存在 A ( x) ,B( x) ∈ F q [x ] ,使得 A (x) f 1 (x) + B(x) f 2 (x) = g(x) 。 于是 A (x) f 1 (x) + B(x) f 2 (x) g(x) B(x) A (x) = = + f (x) f 1 (x) f 2 (x) f 1 (x) f 2 (x) 作带余除法 B(x) = b(x) f 1 (x) + g1 (x) , A (x) = a(x) f 2 (x) + g2 (x) , 其中 b(x) ,a( x) ,g1 ( x) ,g2 ( x ) ∈ F q [ x ] ,deg g1 ( x ) < deg f 1 ( x ) ,deg g2 ( x ) < deg f 2 (x) 。 则 g(x) = b(x) + a(x) + g1 (x) + g2 (x) 。 f (x) f 1 (x) f 2 (x) g(x) 由于左边是真分式 ,可知 b(x) + a(x) = 0 。 因此 表示成两个真分式之和 : f (x) g1 (x) g2 (x) g(x) = + 。 f (x) f 1 (x) f 2 (x) 128 纠错码的代数理论 令 deg f (x) = d ,deg f 1 (x) = d1 ,deg f 2 ( x) = d2 ,则 d = d1 + d2 。 以 f ( x)为 分母的真分式共 q 个 ,以 f 1 (x)和 f 2 ( x)为分母的真分式分别有 q 1 和 q 2 个 。 d d d 所以上式右边也有 q 1 · q 2 = q 个可能性 。 这就表示分解是惟一的 ,即 g1 ( x ) d d d 和 g2 (x)由 g(x)所决定 。 · 例9 · 考虑周期为 21 的二元序列 α = (1 00011001010111110000 )对应的真 4 5 8 10 12 13 14 15 16 1+ x + x + x + x + x + x + x + x + x ,用辗转相除法算 分式为 α(x) = 21 1+ x 1 出分子和分母的最大公因子为分子多项式 。 由此得到 α(x) = 4 5 。 由于 1+ x + x 4 5 2 3 2 3 1 + x + x = (1 + x + x )(1 + x + x ) ,其中 (1 + x + x )和 (1 + x + x )分别是 F 2 [x]中周期为 3 和 7 的本原多项式 。 根据引理 A .3 .4 ,我们可把 α( x)惟一地 分解为 g1 (x) g2 (x) 1 α(x) = 4 5 = 2 + 3 1+ x + x 1+ x+ x 1+ x+ x (g1 (x) ,g2 (x) ∈ F 2 [x] ,deg g1 (x) ≤ 1 ,deg g2 (x) ≤ 2) 。 于是 1 = g1 (x)(1 + x + x ) + g2 (x)(1 + x + x ) 。 利用同余式方法 ,得到 3 2 g1 (x)(1 + x + x ) ≡ 1 (mod 1 + x + x ) 。 3 2 因此 g1 (x) ≡ 1 1 x + x2 3 ≡ 2 3 ≡ 2 3 1+ x+ x x + x x + x 2 ≡ 1 ≡ x+ x ≡ 1+ x (mod 1 + x + x ) 。 x x 从而 g1 (x) = 1 + x ,而 3 g2 (x) 1 1+ x 1 + (1 + x)(1 + x + x ) + 3 = 2 3 2 = 2 3 1+ x+ x (1 + x + x )(1 + x + x ) 1 + x + x (1 + x + x )(1 + x + x ) 2 x x + x + x = 2 3 3 , (1 + x + x )(1 + x + x ) 1 + x + x 2 = 3 4 2 因此 1+ x x 1+ x x + x + x + x 。 2 + 3 = 3 + 7 1+ x+ x 1+ x+ x 1+ x 1+ x 2 α(x) = 2 从而 · · · · α = (101 ) + (0011101 ) 。 2 3 4 6 附录 A :有限域 129 A .4 有限域的加法特征 定义 A .4 .1 有限域加法群Fq 到非零复数乘法群C 的群同态 λ :Fq → C 叫 定理 A .4 .2 对每个 b = (b1 ,… ,bm ) (bi ∈ F p ) ,映射 × × 作有限域F q 的一个加法特征 ,换句话说 ,λ 为 F q 的加法特征 ,是指对任意 a ,b ∈ F q ,均有 λ(a+ b) = λ(a)λ(b) 。 m 我们来决定有限域Fq 的全部加法特征 。 设 q = p ,其中 p 为素数 ,m ≥ 1 ,则 F q 是F q 上 m 维向量空间 ,取F q 的一组F p 唱基 v 1 ,… ,v m ,则F q 中元素可表示成向量 a = a1 v1 + … + am v m = (a1 ,… ,am ) (ai ∈ Fp ) 。 λb :F q → C × , λb (a) = ζp a1 b1 + … + am b m (ζp = e p ) 2πi 是Fq 的加法特征 ,并且当 b 过全部向量时 ,λb 给出Fq 的全部 p = q 个不同的加法 特征 。 m 证明 记 a1 b1 + … + am b m = (a ,b) ∈ F p ,则 ( a+ a′ ,b) ( a ,b)+ ( a′ ,b) ( a ,b) ( a′ ,b) λb (a + a′) = ζ p = ζp = ζp ζ p = λb (a)λb (a′) , 可知 λb 是F q 的加法特征 。 另一方面 ,设 λ 是F q 的一个加法特征 ,由于 λ 是群同 态 ,可知 λ(0) = 1 。 对每个基元 v i ,p v i = 0 ,从而 1 = λ(0) = λ(p v i ) = λ(v i ) 。 这 b 就表明 λ(v i )是 p 次单位根 ,于是 λ(v i ) = ζp i (1 ≤ i ≤ m) 。 可认为 bi ∈ F p 。 于 是对F q 中每个元素 a = a1 v1 + … + am v m = (a1 ,… ,am ) , (ai ∈ Fp ) χ(a) = χ(a1 v1 + … + am v m ) = χ(a1 v1 ) … χ(am v m ) p a a a b + … +a b m m = χ(v1 ) 1 … χ(v m ) m = ζ p1 1 = χb (a) , 从而F q 的每个加法特征 χ 都可表成 χ b ,最后证 q 个加法特征 χ b (b = (b1 ,… ,bm ) m ∈ F p )彼此不同 。 设 b′ = (b′1 ,… ,b′m ) ,如果 b ≠ b′ ,则存在某个 i(1 ≤ i ≤ m) ,使 得 bi 厨 b′i (mod p) ,于是 ζ pi ≠ ζ p i 。 所以 χb (v i ) = ζ pi ≠ ζ p i = χb′ (v i ) ,即 χb ≠ χb′ 。 这就完成了定理 A .4 .2 的证明 。 b b′ b b′ 对于F q 的两个特征 λ 和 λ′ ,定义(λλ′)(a) = λ(a)λ′(a)(a ∈ F q ) ,易知 λλ′也是 ^q 成为群 ,叫F q 的加法特征 F q 的加法特征 。 从而F q 的全部加法特征组成的集合F -1 群 。 幺元素为 λ0 ,它将F q 中每个元素均映成 1 。 容易验证 λa λb = λa+ b 。 而 λb = ^q 同构于F q 的加法群 。 由于 λ - b 。 这表明特征群F ( a ,b) -1 ( a ,- b) -1 λb (a) = λ - b ( a) = ζp = 珔ζp = 珔λb ( a)(珔ζp = ζp 为 ζp 的复共轭 ) ,从而 130 纠错码的代数理论 -1 λb = 珔λb ,珔λb 叫 λb 的共轭特征 。 现在给出F q 的加法特征的另一种表达方式 。 定义 A .4 .3 设 m ≥ 1 ,定义映射 T = TFqm /Fq :F qm → F q m -1 T (a) = a + a + a + … + a (a ∈ F qm ) 叫作有限域F qm 对于子域 F q 的迹映射 (trace mapping ) 。 注意对每个 a ∈ F qm , q m q q 2 m -1 a = a 。 于是 T(a) = (a+ a + … + a ) = a + a + … + a m T(a) ∈ F q 。 所以 T 是从F q 到F q 的映射 。 q q q q q q q q 2 m -1 + a = T (a) ,即 定理 A .4 .4 (1) 定义 A .4 .3 中的迹映射 T 是加法群的满同态 ,并且是F q唱 线性映射 ,即对于 c ∈ Fq ,a ∈ Fqm ,T(ca) = cT (a) 。 (2) 设 q = p ,其中 p 为素数 ,m ≥ 1 ,T 是F q 对于F p 的迹映射 ,ζp = e p 。 则对每个 b ∈ F q ,映射 ab) ηb :F q → C × , ηb (a) = ζT( (a ∈ F q ) p 是F q 的加法特征 ,并且 ηb (b ∈ F q )给出F q 的全部 q 个加法特征 。 进而 ,ηb + b′ = ηb η b′ 。 m 证明 2πi (1) 对于 a ,a′ ∈ F qm ,c ∈ F q ,则 c = c 。 因此 q T(a + a′) = T(ca) = m -1 ∑ i= 0 m-1 ∑ i= 0 i c a q i (a + a′) = q q i m-1 = ∑ i= 0 ca q i m-1 ∑ i= 0 i i (a + a′ ) = T(a) + T(a′) , q q = cT (a) , 所以 T 是加法群同态 ,并且是Fq唱线性映射 。 进而 ,对每个 a ∈ Fqm ,a ∈ Ker T 骋 a+ a + … + a q |Ker T | ≤ q q m-1 m -1 = 0 。 由于 x + x + … + x q q m -1 在 Fqm 中至多有 q ,由群同态 T 给出单射F q /Ker T → Fq ,所以 m q = |Fq |≥ |I m T |= |Fqm /Ker T |= q /|Ker T | ≥ q /q 这就表明 |I m T |= q = |Fq | ,所以 T 是满射 。 (2) 对于 b ,a ,a′ ∈ Fq ,令 T 是Fq 对Fp 的迹映射 ,则 m m m-1 m-1 个根 ,所以 = q。 ηb (a+ a′) = ζp = ζp = ηb (a)ηb (a′) , 可知 ηb 是Fq 的加法特征 ,我们只需再证当 b 和 b′是Fq 中不同元素时 ,ηb 和 ηb′ 是Fq T(b( a + a′)) T(b a) + T(b a′) -1 的不同加法特征 ,容易验证 ηb ηb′ = ηb + b′ ,从而 ηb ≠ ηb′ 相当于 1 ≠ ηb ηb′ = ηb η - b′ = ηb - b′ 。 所以我们只需证明 :当 0 ≠ c ∈ Fq 时 ,ηc ≠ 1 (即不为恒取值为 1 的加法特 征) 。 由于 T 是满射 ,所以有 d ∈ Fq ,使得 0 ≠ T(d) ∈ Fp ,于是 ηc (c -1 d) = ζp T(c c -1 d) = 附录 A :有限域 131 T( d) ζp ≠ 1 ,这就表明 ηc ≠ 1 ,所以 ηb (b ∈ Fq )给出Fq 的全部 q 个不同的加法特征 。 作为迹映射的一个应用 ,我们现在给出Fq 上周期序列的另一种表达方式 。 定理 A畅 4畅 5(Fq 上周期序列的迹表达式) ∞ 的周期序列 ,α(x) = ∑ n= 0 设 α = (a0 ,a1 ,… ,an ,… ) 是Fq 上 n an x = g(x) 为真分式 ,其中 g(x) ,f (x) ∈ Fq [x] ,f (0) ≠ f (x) 0 ,又设 f (x) 没有重根 ,于是 f (x) = f 1 (x) f 2 (x) … f s (x) , 其中 f i (x)(1 ≤ i ≤ s)为Fq [x]中两两不同的不可约多项式 ,deg f i (x) = di ≥ 1 ,取 f i (x)的一个根 αi ,于是 F q (αi ) = Fq di (1 ≤ i ≤ s) 。 令 T i 为 F q di 对于 F q 的迹映射 (1 ≤ i ≤ s) ,则存在由序列 α 惟一决定的 s 个元素 βi ∈ Fq di (1 ≤ i ≤ s) ,使得 s an = T i (βi αi ) -n ∑ i= 1 (n = 0 ,1 ,2 ,… ) 。 先证 s = 1 的情形 ,即 f ( x)是 F q [ x]中 d 次不可约多项式 ,令 α 为 证明 f (x)的一个根 ,由 f (0) ≠ 0 可知 α ≠ 0 ,并且F q (α) = F q d 。 由于 f ( x)的全部根为 q q α ,α ,… ,α d -1 ,并且不妨设 f (x)的常数项为 1 ,从而 f (x) = (1 - α 将真分式 α(x) = -1 x)(1 - α x )(1 - α -q -q 2 x) … (1 - α -q d-1 x) i g(x) 在幂级数环F q d [[x]]中可以分解成以 (1 - α - q x )(0 ≤ i ≤ f (x) d - 1)为分母的一些真分式之和 : d-1 βi α(x) = ∑ i -q i= 0 1 - α x (β0 ,β1 ,… ,βd - 1 ∈ F q d ) 。 (2) 将此式两边取 q 次方 , d-1 βi i -q 1 -α x ∑ i= 0 ∞ q α(x) = ∑ n= 0 d-1 q ∑ = an x n i= 0 q q βi , i+ 1 1 - α- q xq ∞ = ∑ n= 0 ax q n ∞ nq = ∑ n= 0 (3) an (x ) q 式(3)和式(4)的右边应当相等 ,将 x 改为 x ,则得到 q d-1 α(x) = ∑ i= 0 q βi i+ 1 -q 1-α x (α -q d n (由于 an ∈ F q ) 。 -1 = α )。 (4) (5) 但是 α(x)的两个分解式(2)和式(5)应当一样 ,所以有 βi + 1 = βi (0 ≤ i ≤ d - 2) 。 q 132 纠错码的代数理论 i 记 β0 = β ,则 βi = β (0 ≤ i ≤ d - 1) 。 于是 q ∞ ∑ n= 0 an x = α(x) = n = d-1 ∑ i= 0 ∞ d-1 ∑ ∑ n= 0 i= 0 q i β = i -q 1-α x d-1 ∑ i= 0 i (βα - n )q x n = β ∞ ∑ n= 0 q i ∞ ∑ n= 0 (α -q i x) n T(βα - n )x n , 所以 an = T(βα )(n = 0 ,1 ,2 ,… ) ,其中 T 是F q d 对F q 的迹映射 。 对于一般情形 , gs (x) g(x) g1 (x) α(x) = = + … + , f (x) f 1 (x) f s (x) gi (x) gi (x) 其中 (1 ≤ i ≤ s)都是真分式 ,将上面的证明用于每个 ,即得到定理中的 f i (x) f i (x) -n 一般结果 。 最后 ,由于每个 βi ∈ F q di 有 q i 个取法 ,所以{β1 ,… ,βs }共有 q 1 q 2 … q s = d d d d s 种取法 。 另一方面 ,deg f ( x ) = d1 + d2 + … + ds ,而真分式 α( x ) = q1 1 g(x) d + d + … + ds 也有 q 1 2 个 ,所以{ β1 ,… ,βs }的不同取法给出不同的序列 α = ( a0 , f (x) a1 ,… ,an ,… ) ,即{β1 ,… ,βs }由序列 α 所决定 。 d + d + … + d 习题 1 设 q = p ,其中 p 为素数 ,m ≥ 1 ,f (x)为F q [x]中的不可约多项式 , f (0) ≠ 0 ,α 是 f (x)在Fq 的某个扩域中的一个根 。 设 α = (a0 ,a1 ,… ,an ,… )是F q m 上的序列对应于以 f (x)为分母的真分式 ,对于正整数 k ,以 f k (x)表示 α 在Fq 上 k 的最小多项式(即 f k (x)是以 α 为根的Fq [x]中不可约首 1 多项式) ,证明序列 α 的“ k唱采样”序列 (k) α = (a0 ,ak ,a2 k ,… ,an k ,… ) 对应于以 f k (x)为分母的真分式 。 k 习题 2(拉格朗日插值公式) 设 f (x)是Fq [x]中 n 次首 1 多项式 ,f (x)在Fq 中有 n 个不同根 a1 ,a2 ,… ,an ,则对每个 g(x) ∈ Fq [x] ,deg g(x) < n , g(x) = f (x) n ∑ i= 1 bi , x - ai 其中 g(ai ) g(ai ) ∈ Fq , = i 1 i i - 1 )(ai - ai + 1 ) … (ai - an ) (a - a ) … (a - a f′(ai ) 而 f′(x)为 f (x)的微商多项式 。 bi = 附 录 B :线性 移存 器序 列 线性移存器序列与本书中的循环码有密切联系 ,在这个附录中我们只介绍 线性移存器序列与纠错码理论有关的一些内容 。 B畅 1 线性移存器序列 F q 上的一个 k 位线性移位寄存器(linear shif t唱registor ,以下简称线性移存 器)如下图所示(k ≥ 1 ,a1 ,a2 ,… ,ak ∈ F q ) : c = (c0 ,c1 ,c2 ,… ) (移位寄存部分) (计算反馈部分) 它由两部分组成 : (1) 移位寄存部分 。 有 k 个存储单位 ,存放F q 中元素 ,开始时存入(c0 ,c1 ,… , ck - 1 ) ∈ F q ,叫作初始状态 。 (2) 计算反馈部分 。 将寄存部分的内容 ( x0 ,x1 ,… ,x k - 1 )输入 ,并作线性 计算 f (x0 ,x1 ,… ,x k - 1 ) = ak x 0 + ak - 1 x1 + … + a1 x k - 1 ∈ F q 。 例如把初始状态(c0 ,c1 ,… ,ck - 1 )输入 ,计算出 ck = f (c0 ,c1 ,… ,ck - 1 ) = ak c0 + ak - 1 c1 + … + a1 ck - 1 。 k 在下一时刻 ,寄存部分的内容均向左移一位 ,c0 输出 ,而计算值 ck 反馈到空出的 最右边那一位 ,所以寄存部分的状态成为(c1 ,c2 ,… ,ck ) ,将这个状态输入到计算 部分 ,算出 ck + 1 = f (c1 ,c2 ,… ,ck ) = ak c1 + ak - 1 c2 + … + a1 ck 。 在下一时刻 ,输出 c1 ,其他位向左移 ,将 ck + 1 反馈 ,状态变为 (c2 ,c3 ,… ,ck + 1 ) ,然 134 纠错码的代数理论 后计算 ck + 2 = f (c2 ,c3 ,… ,ck + 1 ) 。 如此继续下去 ,我们便得到输出序列 c = (c0 ,c1 ,… ,cn ,… )(cn ∈ F q ) ,其中 (c0 ,… ,ck - 1 )为初始状态 ,而当 l ≥ k 时 ,依次得到 cl = ak c l - k + ak - 1 cl - k + 1 + … + a1 cl - 1 (l = k ,k + 1 ,… ) 。 (1) 线性移存器由它的位数 k 和联接系数 a1 ,a2 ,… ,ak ∈ F q 所完全决定 ,我们把 f (x) = 1 - a1 x - … - ak x ∈ F q [x]叫作此线性移存器的联接多项式 ,并且这个 线性移存器表示成 LSR( f ) ,若 ak = 0 ,则这个线性移存器本质上是一个 k - 1 位 k 的线性移存器 ,所以今后总假设 ak ≠ 0 ,这时联接多项式 f ( x)的次数为 k ,并且 f (0) = 1 ,这个线性移存器的初始状态(c0 ,c1 ,… ,ck - 1 )有 q 个可能 ,所以 LSR ( f ) k 共可产生 q 个序列 ,这些序列组成的集合表示成 V ( f ) 。 k 定理 B畅 1畅 1 (1) 以 f (x)为联接多项式的 k 位线性移存器 LSR( f )产生的 k q 个序列所对应的幂级数 ,恰好是以 f (x)为分母的 q 个真分式 ,特别地 ,线性 移存器序列都是周期序列 。 (2) V ( f )是F q 上的 k 维线性空间 。 k 证明 ∞ 设 c(x) = ∑ n= 0 cn x ∈ V ( f ) 。考虑 n f (x)c(x) = (1 - a1 x - a2 x - … - ak x )(c0 + c1 x + … + cn x + … ) k 2 ∞ = ∑ l= 0 bl x , l n (2) 其中 b0 = c0 , b1 = c1 - c0 a1 , … bk - 1 = ck - 1 - ck - 2 a1 - … - c0 ak - 1 。 而当 l ≥ k 时 ,由(1)式可知 bl = cl - cl - 1 a1 - … - cl - k ak = 0 , 所以式(2)右边为多项式 g(x) = k-1 ∑ l= 0 bl x ,而 c(x)为真分式 l (3) g(x) 。这样的真分式 f (x) 共 q 个 ,对应于 V ( f ) 中全部序列 ,以 f (x)为分母的全部真分式形成F q唱 线性空 间 ,维数为 k ,所以 V ( f )也是如此(也可由序列的线性递归关系(1) 推出V ( f ) 是 F q唱 线性空间) 。 k 附录 B :线性移存器序列 注记 1 可以有多种方法取 V ( f )的一组F q唱基 。 一种方法是取 e1 = (10 … 0) ,e2 = (010 … 0) ,… ,ek = (00 … 01) ∈ F q ,则以 ei (1 ≤ i ≤ k)为初始状态的 k 个周 期序列形成 V ( f )的一组F q唱基 ,以(c0 ,c1 ,… ,ck - 1 )为初态的序列所对应的真分 g(x) k-1 式 ,g(x) = b0 + b1 x + … + bk - 1 x 的诸系数 bi 可以由式(3)算出 ;另一种方 f (x) k-1 1 x x 法是 :真分式 , ,… , 对应的 k 个序列形成 V ( f )的一组F q唱基 ,而 f (x) f (x) f (x) b0 + b1 x + … + bk - 1 x k - 1 一般地 , 对应的 V ( f )中序 列 ,其 初始状态 (c0 ,c1 ,… , f (x) ck - 1 )可由公式(3)给出 ,即 c0 = b0 , c1 = b1 + c0 a1 , … ck - 1 = bk - 1 + ck - 2 a1 + … + c0 ak - 1 。 而当 l ≥ k 时 ,cl 可由线性递归式(1)给出 。 k g(x) ∈ f (x) F q [[x]] ,所以可以用附录 A 中方法研究 V ( f )中的序 列 ,例 如 ,若 f ( x ) = f 1 (x) f 2 (x) ,其中 f 1 ( x)和 f 2 (x )是 F q [ x ]中互素的多项式 ,则引理 A畅 3畅 4 是 说 ,V ( f )中每个序列惟一地表示成 V ( f 1 )和 V ( f 2 )中序列之和 ,又如 ,当 f (x)没 有重根时 ,V ( f )中序列有迹表达式(定理 A畅 4畅 5) 。 注记 2 LSR ( f )产生的序列均是周期序列 ,并且对应着真分式 关于 V ( f )中序列的周期 ,我们有以下结果 。 定理 B畅 1畅 2 设 f ( x ) = 1 - a ,x - … - ak x k ∈ F q [ x ] ,ak ≠ 0 ,珟f ( x ) = - ak- 1 f (x)(即 珟f (x)是与 f (x)相差一个非零常数因子的首 1 多项式) 。 则 (1) V ( f )中序列的周期均不超过 q - 1 ,并且 V ( f )中有序列周期为 q - 1 当且仅当 珟f (x)是F q [x]中的 k 次本原多项式 。 (2) 若 f (x)是F q [x]中不可约多项式 ,则 V ( f )中每个非零序列的周期均为 f (x)的周期 per( f ) 。 特别地 ,若 f (x)是F q [x]中本原多项式 ,则 V ( f )中非零序 k k 列的周期都为 q - 1 。 k 证明 · (1) 若线性移存器 LSR ( f )的初态为 (0 ,0 ,… ,0) ,则生成全零序列 (0 )(周期为 1) ;若初态(c0 ,… ,ck - 1 ) ≠ (0 ,… ,0) ,则生成序列 c = (c0 ,c1 ,… ,cn ,… ) 135 136 纠错码的代数理论 的每个状态(cl ,cl + 1 ,cl + k - 1 )(l = 0 ,1 ,2 ,… )均不为(0 ,0 ,… ,0 ) 。 非零状态一共有 q - 1 个可能 ,所以必存在 l 和 l′ ,0 ≤ l < l′ ≤ q - 1 ,使得 (cl ,cl + 1 ,… ,cl + k - 1 ) = (cl′ ,cl′ + 1 ,… ,cl′ + k - 1 ) ,然后由线性递归关系(1)可知对每个 i ≥ 0 ,均有 cl + i = cl′ + i 。 由于 c 是周期序列 ,由此可知对每个 i ≥ 0 均有 cl′ - l + i = ci 。 从而序列 c 的周期不 k k 超过 l′ - l ,1 ≤ l′ - l ≤ q - 1 ,这就表明 k 位线性移存器生成序列的周期不超过 k q -1 。 或者从另一个角度 ,V ( f )中序列的周期均是 f (x)的周期 per( f )的因子 ,利用 定理 A畅2畅6 可以证明 :f 的周期 per( f ) ≤ qk - 1(k = deg f ) ,并且 per( f ) = qk - 1 当 且仅当 珘f (x)为F q [x]中 k 次本原多项式(A畅2 中习题 10) ,由此证明了定理中的(1) 。 g(x) (2) V ( f )中每个非零序列 c 对应于真分式 ,其中 g(x) ∈ F q [x] ,g(x) ≠ f (x) 0 ,deg g(x) < deg f (x) ,如果 f (x)不可约 ,则( f (x) ,g(x)) = 1 ,于是 c 的周期等于 f 的周期 per( f ) 。 k 定义 B畅1畅3 设 f (x) = 1 - a ,x - … - ak x ∈ F q [x] ,k ≥ 1 ,ak ≠ 0 ,并且珘f (x) = k - ak f (x)是F q [x]中本原多项式 ,则 V ( f )中非零序列叫作 q 元 k 级 m唱序列 。 -1 于是 ,q 元 k 级 m唱序列是F q 上周期为 q - 1 的序列 ,由于F q [x]中 k 次本原 k k k φ(q - 1) φ(q - 1) 多项式共有 个 ,从而共有 个 k 位线性移存器可生成 q 元 k 级 k k m唱序列 。 这些序列不仅周期长 ,而且有很好的统计平衡性质 (见下面定理 ) ,所 以用来作为保密通信中的密钥将信息加密 。 定理 B畅 1畅 4 设 c = (c0 ,c1 ,… ,cn ,… )是 q 元 k 级 m唱序列 。 (1) 存在F qk 中一个本原元素 α ,和 β∈ F q k ,使得 cn = T(βα ) k 其中 T 是F q 对于F q 的迹映射 。 n (n = 0 ,1 ,2 ,… ) , (2) 设 1 ≤ l ≤ k ,每连续 l 位(ci c i + 1 … ci + l - 1 )(i = 0 ,1 ,… ,q - 2 )叫作 m唱序列 c = (c0 ,c1 ,… ,cn ,… ) = (痹c0 c1 … 痹cqk - 2 )的一个 l唱游程 ,则对每个 (0 ,0 ,… ,0) ≠ (b1 , k b2 ,… ,bl ) ∈ F q ,上述 q - 1 个 l唱游程中恰有 q l k k- l 是(0 ,0 ,… ,0) ,特别地(取 l = 1) ,{c0 ,c1 ,… ,cq k 个是(b1 ,… ,bl ) ,恰有 q -1 k- l }当中恰有 q k-1 -1 个 - 1 个为 0 ,而对 Fq 中每个非零元素 b ,恰有 q 个 ci (0 ≤ i ≤ q - 1)为 b 。 (3) V ( f )中任意两个非零序列都是平移等价的 ,即若 (a0 ,a1 ,… ,an ,… )和 (b0 ,b1 ,… ,bn ,… )是 V ( f )中两个非零序列 ,则存在非负整数 t ,使得 bn = an + t (n = k-1 k 0 ,1 ,2 ,… ) 。 从而 V ( f )就是全零序列和任一非零序列的全部 q - 1 个平移序列 k 附录 B :线性移存器序列 所组成的集合 。 证明 (1)和(3) ,由于 珟f (x)是F q [x]中 k 次本原多项式 ,从而 f (x)的根 α -1 为Fqk 中本原元素 ,于是 α 也是Fqk 中本原元素 ,由定理 A畅 4畅 5 ,V ( f )中的序列 c = (c0 ,c1 ,… ,cn ,… )有迹表达式 cn = T(βα ) n (n = 0 ,1 ,2 ,… ) , 并且 β过F q 中不同元素时 ,给出 V ( f )的全部 q 个不同的序列 ,c 为全零序列当 k k 且仅当 β = 0 ,而F q 中非零元素惟一表示成 α (0 ≤ s ≤ q - 2 ) ,因为 α 是F qk 中本原 s k 元素 ,若(a0 ,a1 ,… ,an ,… )和(b0 ,b1 ,… ,bn ,… )为 V ( f )中非零序列 ,则 an = T(βα ) , bn = T(β′α ) n 其中 β ,β′ ∈ F × k q n (n = 0 ,1 ,2 ,… ) , 。 设 β= α ,β′ = α ,其中 0 ≤ s ≤ s′ ≤ q - 2 。 则 s s′ bn = T(α n+ s′ = an+ t k ) = T(α s+ n+ t (t = s′ - s) ) (n = 0 ,1 ,… ) 。 从而这两个序列是平移等价的(注意 an = bqk - 1 - t + n (n = 0 ,1 ,2 ,… )) 。 对于V ( f ) 中任一个非零序列(c0 ,c1 ,… ,cn ,… ) = (c 0 ,… ,c qk - 2 ) ,它的连续 qk - 1 个状态 · · (ci ,ci + 1 ,… ,ci + k - 1 )(0 ≤ i ≤ q - 2)彼此不同 ,从而是所有可能的非零状态 。 以这 k q - 1 个状态分别作为 LSR( f )的初态 ,得到 V ( f )中 q - 1 个彼此不同但平移 k k 等价的非零序列 ,再加上全零序列就组成 V ( f ) 。 (2) m唱序列( c 0 ,c1 ,… ,c qk - 2 ) ∈ V ( f )的连续 q - 1 个状态恰好是每个可 能的非零状态出现一次 ,所以 ,我们对于 l = k 的情形证明了论断 ,因为每个状 k 态都是序列的 k唱游程 ,现在对于任意 l ,1 ≤ l ≤ k - 1 ,序列连续 q - 1 个 l唱游程 · k · (ci c i + 1 … ci + l - 1 )(0 ≤ i ≤ q - 2)恰好是连续 q - 1 个状态 (ci c i + 1 … ci + k - 1 )(0 ≤ i ≤ k k q - 2)的前 l 位 ,而后者是 q - 1 个所有可能的非零状态 。 当(0 ,… ,0) ≠ (b1 ,… , k k bl ) ∈ F q 时 ,共有 q l k- l 个非零状态以(b1 ,… ,bl )为它的前 l 位 。 此外 ,共有 q k- l -1 个非零状态前 l 位均为零 ,由此即得(2)中结论 。 例1 令 f (x) = 1 + 2 x + x ,这是F 3 [x]中本原多项式 ,从而 V ( f )中 8 个非 3 零序列均是 3 元 3 级 m唱序列 ,周期为 3 - 1 = 26 ,这个线性移存器 LSR( f )如下 3 所示 : 137 138 纠错码的代数理论 给了初态(c0 ,c1 ,c2 ) ∈ F 3 ,生成序列(痹c0 ,c1 ,… ,痹c25 )可如下递归算出 cn = cn - 1 + 2cn - 3 (n = 3 ,4 ,… ) 。 3 取初态(c0 c1 c2 ) = (001) ,则生成 V ( f )中 m唱序列 · · c = (0 0111021121010022201221202 ) 。 而 V ( f )中 26 个非零序列即是 c 的所有平移序列 。 在序列 c 的连续 26 个数字(1 唱游程)中 ,0 出现 8 次 ,而 1 和 2 均出现 9 次 。 在连续 26 个 2唱游程 00 ,01 ,11 ,… ,02 ,20 当中 ,00 出现 2 次 ,而每个(b1 b2 ) ≠ (00)均出现 3 次 。 在连续 26 个 3唱游程 001 ,011 ,111 ,… ,202 ,020 ,200 当中每个非零 (b1 ,b2 , b3 )均出现 1 次 。 这个 m唱序列 c 所对应的真分式为 x 3 ∈ F 3 [[x]] 。 1 + 2x + x 2 习题 1 构作一个 2 元 4 级 m唱序列 。 习题 2 构作全部 2 元 3 级 m唱序列和 3 元 2 级 m唱序列 。 习题 3 设 f (x)是F q [x]中 k 次多项式(k ≥ 1) ,f (0) = 1 ,V ( f )中 q 元序列 g(x) c = (c0 ,c1 ,… ,cn ,… )对应于真分式 ,序列 c 的周期为 l ,对每个整数 t ,0 ≤ f (x) l- t t ≤ l - 1 ,用 f (x)去除 x g(x)得到 l- t x g(x) = q(x) f (x) + r(x) , q(x) ,r(x) ∈ F q (x) , deg r(x) < k 。 r(x) 证明 c 的平移序列(ct ,ct + 1 ,ct + 2 ,… )对应的真分式为 。 f (x) 习题 4 设(痹a0 a1 … 痹al - 1 )是 q 元 k 级 m唱序列(l = q - 1) ,s 是与 q - 1 互素的 正整数 ,证明(痹a0 as a2 s … 痹a( l - 1 )s )也是 q 元 k 级 m唱序列 。 k k 附录 B :线性移存器序列 B畅 2 线性移存器的综合算法 假如从某个信道中截获了连续 N 个 q 元信号 a0 a1 … aN - 1 (ai ∈ F q ) 。 我们想 猜出它是由何种线性移存器生成的 。 显然它可由一个 N 级的任意移存器生成 , 取(a0 a1 … aN - 1 )为初始状态即可 。 我们的问题是 : 试求出一个级数最小的线性移存器 ,使得它可生成一个二元周期序列 ,其前 N 位为 a0 ,a1 ,… ,aN - 1 。 也就是说 ,我们希望求出一个Fq [t]中的多项式 l f (t) = 1 + c1 x + … + cl x (ci ∈ F q ,ct 不必为 1) (l < N) , 使得以 f (t)为联接多项式的线性移存器(以下将它记为枙 f (t) ,l枛)可生成一个序 列 ,前 N 位为 a0 ,a1 ,… ,aN - 1 ,即以(a0 a1 … al - 1 )为初始状态时 , - ak = c1 ak - 1 + c2 ak - 2 + … + cl c k - l (k = l ,l + 1 ,… ,N - 1) 。 并且使 l 为满足此条件的最小正整数 ,即枙 f (t) ,l枛是生成序列 (a0 a1 … aN - 1 )的最 短线性移存器 。 这叫作线性移存器的综合问题 ,在通信中有重要意义 。 本节介绍 J .L .M assey 于 1969 年给出的一种迭代算法 ,解决这个综合问 题 。 这个算法实质上就是 E .R .Berlekamp 所建议的 BC H 码纠错译码的算法 (见第 3 章) ,所以通常也叫作 Berlekamp唱M assey 算法 。 这个算法的要点是归纳地依次求出一系列线性移存器 枙 f n (t) ,ln 枛 ,deg f n ≤ ln , n = 1 ,2 ,… ,N , 使得每 个 线 性 移 存 器 枙 f n ( t) ,ln 枛 均 是 生 成 给 定 序 列 ( a0 a1 … aN - 1 ) 前 n 位 (a0 a1 … an - 1 )的最短线性移存器 。 从而枙 f N (t) ,lN 枛即为所求 。 我们先介绍这个算法并给出例子 ,然后证明此算法的正确性 。 我们约定 0 级线性移存器的联接多项式为 f (t) = 1 ,并且生成全零序列 。 B唱M 算法(线性移存器综合算法) (1) 存在 n0 ≥ 0 ,使得 a0 = … = an0 - 1 = 0 , an0 ≠ 0 。 此时定义 d0 = … = dn0 - 1 = 0 , dn0 = an0 , f 1 (t) = … = f n0 (t) = 1 , l1 = … = ln0 = 0 。 并且任取枙 f n0 + 1 (t) ,ln0 + 1 枛 。 为确定起见 ,现在取 n +1 f n0 + 1 (t) = 1 - dn0 t 0 , ln0 + 1 = n0 + 1 。 139 140 纠错码的代数理论 (2) 假设对某个 n ,n0 < n < N ,已求出枙 f i (t) ,li 枛(1 ≤ i ≤ n) ,其中 l1 = … = ln0 < ln0 + 1 ≤ ln0 + 2 ≤ … ≤ ln , f n (t) = 1 + cn ,1 t + … + cn ,l n t n 。 l 计算 dn = an + cn ,1 an - 1 + cn ,2 an - 2 + … + cn ,l n an - l n 。 ① 若 dn = 0 ,令 f n + 1 (t) = f n (t) , ② 若 dn ≠ 0 ,这时有 m(1 ≤ m < n)使得 ln + 1 = ln 。 lm < lm + 1 = lm + 2 = … = ln 。 令 f n+ 1 (t) = f n (t) - dn d m t f m (t) , ln+ 1 = max{ ln ,n + 1 - ln } 。 由此算法得到的枙 f N (t) ,lN 枛就是生成 (a0 a1 … aN - 1 )的一个最短的线性移 存器 。 -1 n- m 例2 用上述综合算法求生成二元序列 (a0 ,a1 ,… ,a10 ) = (00100011101) 的最短线性移存器 。 解 (1) a0 = a1 = 0 ,a2 = 1 。 因此 d0 = d1 = 0 , f 1 (t) = f 2 (t) = 1 , l1 = l2 = 0 , d2 = 1 , f 3 (t) = 1 + t3 , l3 = 3 。 (2) d3 = a3 + a0 = 0 ,d4 = a4 + a1 = 0 ,d5 = a5 + a2 = 1 。 于是 f 4 (t) = f 5 (t) = 1 + t , l4 = l5 = 3 , 3 f 6 (t) = f 5 (t) + t 5 -2 d6 = a6 = 1 ,于是 f 7 (t) = f 6 (t) + t 6 -2 d7 = a7 + a3 = 1 ,于是 f 8 (t) = f 7 (t) + t 7 -6 f 2 (t) = 1 , l6 = max{ l5 ,5 + 1 - l5 } = 3 。 f 2 (t) = 1 + t , l7 = max{ l6 ,6 + 1 - l6 } = 4 。 4 f 6 (t) = 1 + t + t , l8 = max{ l7 ,7 + 1 - l7 } = 4 。 4 d8 = a8 + a7 + a4 = 0 ,于是 f 9 (t) = f 8 (t) = 1 + t + t , l9 = l8 = 4 。 4 d9 = a9 + a8 + a5 = 1 ,于是 f10 (t) = f 9 (t) + t 9 -6 f 6 (t) = 1 + t + t + t , l10 = max{ l9 ,9 + 1 - l9 } = 6 。 d10 = a10 + a9 + a7 + a6 = 1 ,于是 3 4 附录 B :线性移存器序列 f 11 (t) = f 10 (t) + t 10 - 9 f 9 (t) = 1 + t + t + t + t , 2 3 4 5 l11 = max{ l10 ,10 + 1 - l10 } = 6 。 于是 ,枙1 + t + t + t + t ,6枛就是生成 (00100011101 )的一个最短的线性移 2 3 4 5 存器 。 现在我们证明 B唱M 算法给出的枙 f N ,lN 枛是生成 q 元序列(a0 ,… ,aN - 1 )的一 个最短线性移存器 。 事实上 ,我们将证明对每个 n ,1 ≤ n ≤ N + 1 ,B唱M 算法中给 出的枙 f n (x) ,ln 枛都是生成此序列前 n 位的一个最短线性移存器 。 首先需要一个 预备性结果 。 引理 B畅 2畅 1 设(a0 a1 … an )是 q 元序列 。 (1) 如果存在枙 f (t) ,l枛生成(a0 a1 … an - 1 ) ,但不能生成(a0 a1 … an - 1 an ) ,则每 个可生成(a0 a1 … an )的线性移存器级数均 ≥ n + 1 - l 。 (2) 对每个 i(1 ≤ i ≤ n) ,以 li 表示生成(a0 a1 … ai - 1 )的线性移存器的最短级 数 ,则 l1 ≤ l2 ≤ … ≤ ln , li ≤ i 。 并且若对 某 个 i (1 ≤ i ≤ n - 1 ) 可 生 成 ( a0 a1 … ai - 1 ) ,而 不 能 生 成 ( a0 a1 … ai - 1 ai ) ,则 证明 li + 1 ≥ max{ li ,i + 1 - li } 。 (1) 记 a( t) = a0 + a1 t + … + an - 1 tn - 1 。 用幂级数的表达方式 ,可 知 :枙 f (t) ,l枛生 成 ( a0 a1 … an - 1 )相 当 于 存 在 g ( t) ,f ( t) ∈ F q [ t] ,deg f ≤ l , f (0) = 1 ,deg g(t) ≤ l - 1 ,使得 g(t) ≡ a(t) f (t) (mod tn ) 。 而枙 f (t) ,l枛不能生成(a0 a1 … an - 1 an ) 。 即指 g(t) n ≡ a(t) + b t f (t) (mod t n+ 1 ), (4) 其中 b ∈ F q (t) ,b ≠ 0 。 现在设有枙 f′(t) ,l′枛生成(a0 a1 … an - 1 an ) 。 则指存在 f′(t) ,g′(t) ∈ Fq [t] , deg f′ ≤ l′ , f′(0) = 1 , deg g′(t) ≤ l′ - 1 , 使得 g′(t) ≡ a(t) f′(t) (mod t n+ 1 )。 (5) 141 142 纠错码的代数理论 由式(4)和式(5)得到 g(t) g′(t) n n+ 1 - ≡ bt (mod t ) 。 由 f (0) = f′(0) = 1 ,可知 f (t) f′(t) g(t) f′(t) - g′(t) f (t) ≡ b t (mod t n n+ 1 )。 (6) 如果 l′ ≤ n - l ,则 deg (g f′) ≤ l - 1 + l′ ≤ n - 1 ,deg (g′f ) ≤ l′ - 1 + l ≤ n - 1 。 从而式(6)左边为次数 ≤ n - 1 的多项式 ,但是右边为 n 次单项式 (b ≠ 0 ) 。 所以 同余式(6)不可能成立 。 这就表明必然有 l′ ≥ n - l + 1 。 (2) 由定义即知 l1 ≤ l2 ≤ … ≤ ln ,li ≤ i 。 而最后一论断由(4)式给出 。 现在我们证明下面的定理 。 定理 B畅 2畅 2 (1) 在 B唱M 算法中 ,对每个 n(1 ≤ n ≤ N) ,枙 f n (t) ,ln 枛都是生成(a0 a1 … an - 1 ) 的一个最短线性移存器 。 (2) 当 1 ≤ n ≤ N - 1 时 ,若枙 f n (t) ,ln 枛可以生成 (a0 a1 … an ) ,则 ln + 1 = ln 。 若 枙 f n (t) ,ln 枛不能生成(a0 … an - 1 an ) ,则 ln + 1 = max{ ln ,n + 1 - ln } 。 证明 对 n 归纳 。 由算法第(1)步 ,a0 = … = an0 - 1 = 0 ,an0 ≠ 0 。 f 1 (t) = … = f n0 (t) = 1 ,l1 = … = ln0 = 0 。 已约定 0 级线性移存器生成零序列 。 从而定理的论 断(1)对 n ≤ n0 成立 ,论断(2)对 n ≤ n0 - 1 成立 。 由算法有 f n0 + 1 (t) = 1 - dn0 t 0 n +1 , ln0 + 1 = n0 + 1(dn0 = an0 ) 。 可知枙 f n0 + 1 ,ln0 + 1 枛生成 ( a0 … an0 ) ,而级数 ≤ n0 的任何线性移存器均不能生成 (a0 … an0 ) = (0 … 0 an0 )( an0 ≠ 0 ) ,从而定理论断 (1 )对 n = n0 + 1 成立 。 进而由 ln0 = 0 和 max{ ln0 ,n0 + 1 - ln0 } = max {0 ,n0 + 1} = n0 + 1 = ln0 + 1 ,可知定理论断 (2)对 n = n0 成立 。 现在设 n0 < n < N ,并且定理对 1 ,2 ,… ,n 均成立 ,要证对 n + 1 也成立 。 首 先有 l1 ≤ … ≤ ln ,而由综合算法有 dn = an + cn ,1 an - 1 + … + cn ,l n an - l n 。 当 dn = 0 时 ,由综合算法有 f n + 1 (t) = f n (t) ,ln + 1 = ln 。 由归纳假设 ,枙 f n (t) ,ln 枛是 生成(a0 … an - 1 )的最短线性移存器 ,而 dn = 0 ,则枙 f n (t) ,ln 枛也生成(a0 … an - 1 an ) 。 从而枙 f n + 1 (t) ,ln + 1 枛 = 枙 f n (t) ,ln 枛是生成(a0 … an - 1 an )的一个最短线性移存器 ,这 时 ln + 1 = ln 。 附录 B :线性移存器序列 当 dn ≠ 0 时 ,由算法有 m(1 ≤ m < n) ,lm < lm + 1 = lm + 2 = … = ln ,于是 dm ≠ 0 ,而 f n + 1 (t) = f n (t) - dn d m t -1 n- m f m (t) ,ln + 1 = max{ ln ,n + 1 - ln } 。 我们有 deg f n + 1 ≤ max{deg f n ,n - m + deg f m } ≤ max{ ln ,n - m + lm } 。 由归纳假 设 lm + 1 = max{ lm ,m + 1 - lm } 。 而 lm < lm + 1 = ln ,从而 ln = lm + 1 = m + 1 - lm 。 于是 deg f n + 1 ≤ max{ ln ,n + 1 - ln } = ln + 1 。 这表明枙 f n + 1 (t) ,ln + 1 枛为 ln + 1 级的线性移存器 。 由于枙 f n (t) ,ln 枛生成(a0 … an - 1 ) , 而枙 f m (t) ,lm 枛生成(a0 … am - 1 ) ,因此 ak + l n+ 1 ∑ i= 1 cn+ 1 ,i ak - i = ak + = ln ∑ i= 1 cn ,i ak - i - dn d -1 m ak - n+ m + lm ∑ i= 1 cm ,i ak - n+ m - i 对 ln+ 1 ≤ k ≤ n - 1 , 0, dn - dn d d m = 0 , 对 k = n 。 -1 m 从而枙 f n + 1 ( t) ,ln + 1 枛 生 成 ( a0 … an - 1 an ) 。 由 于 dn ≠ 0 ,枙 f n ( t ) ,ln 枛 不 生 成 (a0 … an - 1 an ) 。 由引 理 B畅 2畅 1 知 生 成 ( a0 … an - 1 an )的 线 性 移 存 器 的 级 数 ≥ max{ ln ,n + 1 - ln } = ln + 1 。 从而枙 f n + 1 (t) ,ln + 1 枛为生成 ( a0 … an - 1 an )的一个最短 线性移存器 。 即定理对 n + 1 成立 。 下面是最短线性移存器的惟一性 。 定理 B畅 2畅 3 设 lN 是生成F q 中序列 ( a0 a1 … aN - 1 )的线性移存器的最短级 数 ,并且 2 lN ≤ N ,则这个最短级数线性移存器是惟一的 。 证明 记 a(t) = a0 + a1 t + … + aN - 1 tN - 1 。 设枙 f (t) ,lN 枛和枙 f′(t) ,lN 枛均是生 成(a0 … aN - 1 )的线性移存器 ,则 g(t) g′(t) ≡ ≡ a(t) f (t) f′(t) (mod t ) , N (7) 其中 g(t) ,g′(t) ,f (t) ,f′(t) ∈ F q [t] ,f (0) = f′(0 ) = 1 ,deg g ≤ lN - 1 ,deg g′ ≤ lN - 1 ,deg f ≤ lN ,deg f′ ≤ lN 。 并且由 l N 的最短性知(g ,f ) = (g′ ,f′) = 1 。 由式 (7)可知 gf′ ≡ g′f (mod t ) 。 N 由于 deg g f′ ,deg g′f 均 ≤ 2 lN - 1 < N 。 从而 g f′ = g′f 。 再由(g ,f ) = (g′ ,f′) = 1 可知 f′|f ,并且 f |f′ 。 最后由 f (0) = f′(0) = 1 知 f = f′ 。 这就证明了定理中 143 144 纠错码的代数理论 所述的惟一性 。 习题 1 求一个最短的线性移存器 ,使其生成F 3 上的序列(11012200021) 。 习题 2 设 ( a0 a1 … aN - 1 )为 q 元序列 。 对于每个 n(1 ≤ n ≤ N ) ,设生成 (a0 a1 … an - 1 )的线 性 移 存 器 最 短 级 数 为 ln ,假 设 2 lN > N ,并 且 lm < lm + 1 = lm + 2 = … = lN 。如果枙 f N ( t) ,l N 枛 是由 B唱M 综合算 法 求 出 的 一 个 生 成 ( a0 a1 … aN - 1 )的线性移存器 ,枙 f m (t) ,lm 枛是由 B唱M 综合算法求出的生成(a0 a1 … am - 1 )的 线性移存器 。 证明 :生成(a0 a1 … aN - 1 )的所有 lN 级线性移存器的联接多项式为 { f N (t) + g(t)t N-m f m (t)|g(t) ∈ F q [t] ,deg g(t) < 2 lN - N} 。 参 考 文 献 1畅 关于经典纠错码的书有很多 ,参考和引用较多的有以下两本 : [1] M acWilliams F . J . and Sloane N . J . A . T he T heory of Error唱Correcting Codes . Amsterdam :North唱Holland ,1977 [2] van Lint J H . Introduction to Coding T heory . 3th edition . Berlin : Springer唱 Verlag ,2000 其中[1]的内容比较详细 ,[2]是研究生教科书 ,叙述简洁 ,更为数学化 ,其他书籍还有 : [3] Berlekamp E R .Algebraic Coding T heory .New York :M cGraw唱Hill ,1968 [4] Peterson W W and Weldon E J .Error唱Correcting Codes .2nd edition .Cambridge ,M a唱 ss .,M IT Press ,1972 [5] Pretzel O .Error唱Correcting Codes and Finite Fields .Oxford :Oxford U niversity Press , 1992 [6] 万哲先 .代数与编码 .北京 :科学出版社 ,1976 2畅 本书未涉及代数几何码 ,对代数几何码有兴趣的可参见 : [7] Goppa V D .Geometry and Codes .Dordrecht :Kluw er ,1988 [8] M oreno C J ,Algebraic Curves over Finite Fields .Cambridge T racts in M ath .,vol .97 . Cambridge :Cambridge U niversity Press ,1991 [9] Niederreiter H and Xing C .Rational Points on Curves over Finite Fields .London M ath . Society Lecture Notes Series 285 .Cambridge :Cambridge U niversity Press ,2001 [10] Pretzel O .Codes and Algebraic Curves .Oxford :Oxford U niversity Press ,1998 [11] Stichtenoch H .Algebraic Function Fields and Codes .U niversitext .Berlin :Springer唱 Verlage ,1993 [12] T sfasman M A and Vladut S G ,Algebraic唱Geometric Codes .Dordrecht :Kluw er ,1991 3畅 量子纠错码 目前还没有这方面的专门著作 ,重要文献为 [13] Calderbank A R ,Rains E M ,Shor P W ,and Sloane N J A ,Quantum error correction via codes over GF(4) .IEEE T rans ,1998 ,IT唱44 :1369唱1387 以及 1998 年以来在上述杂志上发表的量子码文章(和它们的参考文献) 。