线性码
编码理论中,线性码是一种纠错码,满足其任何码字的线性组合也是其码字。传统上,线性码分为分组码和卷积码两大类,尽管涡轮码可以看作是这两种类型的混合。 [1]线性码的编码和解码可以有比其他码更有效的算法(参见伴随式解码)。[2]
线性码用于前馈纠错,用于在通信信道上传输符号(例如,比特),以使在通信中出现错误时,消息块的接收者可以纠正或检测到一些错误。线性分组码的码字是一种符号块,这种符号块使用比要发送的原始值更多的符号进行编码。[3]长度为n的线性码传输包含n个符号的块。例如,[7,4,3]汉明码是一种线性二进制码,使用7位码字表示4位消息。两个不同的码字至少有三位不同。因此,每个码字最多可以检测到两个错误,同时可以纠正一个错误。[4]此代码包含 24=16个码字。
定义和参数
[编辑]长度为n且维度为k的线性码是向量空间中维度为k的线性子空间C,其中是具有q个元素的有限域。[5]这样的线性码称为q-ary码。如果q=2或q=3,则分别称其为二进制码、三进制码。 C中的向量称为码字。线性码的大小是指码字的数量,即qk 。
码字的权重(weight)是码字中非零元素的个数,两个码字之间的距离(distance)是指它们之间的汉明距离,即它们之间不同的元素个数。线性码的距离d是其非零码字的最小权重,其等效于不同码字之间的最小距离。长度为n、维度为k、距离为d的线性码称为[n, k, d]码(或更准确地说,码)。
我们希望赋予标准基,因为每个向量坐标代表一个“比特”,该“比特”通过“噪声信道”传输,并且以小概率存在一些传输错误(二进制对称信道)。如果使用其他基,则无法使用该模型,并且汉明度量不能像我们所希望的那样测量传输中的错误数量。
生成矩阵和校验矩阵
[编辑]作为的线性子空间,整个线性码组C (可能非常大)可以表示为一组长度为的码字(在线性代数中称为基)的线性组合。这些基码字通常被整理成矩阵G的行,该矩阵称为码C的生成矩阵。当G具有分块矩阵形式(其中表示单位矩阵,P是矩阵)时,我们称G具有标准形式。[6]
表示线性函数,核为C的矩阵H称为C的校验矩阵(有时也称奇偶校验矩阵)。上述表述等价于H是一个零空间为C的矩阵。设C是一个码组,其生成矩阵G为标准形式,则 , 则是C的校验矩阵。由H生成的码称为C的对偶码。可以验证G是矩阵,而H是矩阵。
线性保证码字c0与任何其他码字c≠c0之间的最小汉明距离d与c0无关。这从以下性质可以看出:C中两个码字的差c−c0也是一个码字(即子空间C的一个元素),且d ( c ,c 0 ) = d ( c−c0 ,0)。由上述性质可得
换而言之,为了找出线性码的码字之间的最小距离,只需要查看非零码字。具有最小权重的非零码字与零码字的距离最小,从而决定了代码的最小距离。
线性码C的距离d也等于校验矩阵H的线性相关列的最小数量(列向量最小线性无关组的秩)。
证明:因为 , 等价于,其中 是的第列。除去使的项,使的线性相关。是故,不小于线性相关的列的最小个数。又,考虑线性相关列的最小集 ,其中是列指标的集合。。考虑满足时候的向量。注意到由于,,是故,有,后者是 之中线性相关的行的最小数目。 上述性质得证。
示例:汉明码
[编辑]汉明码作为首类为纠错目的而开发的线性码,在数字通信系统中得到了广泛的应用。对于任何正整数 ,存在一个汉明码。由于 ,此类汉明码可以纠正1位错误。
例:具有以下生成矩阵和奇偶校验矩阵的线性分组码是汉明码。
示例:阿达马码
[编辑]阿达马码是线性码,能够纠正诸多误码。 阿达马码可以逐列构建: 第列是整数的二进制表示 ,如下例所示。 阿达马码的最小距离为,因此可以纠正错误。
例:具有以下生成矩阵的线性分组码是阿达玛码: 。
阿达马码是里德-穆勒码的一个特例。如果我们从中抽出第一列(全零列),我们可以得到单纯形码,是汉明码的对偶码。
最近邻算法
[编辑]参数d与码的纠错能力密切相关。以下构造/算法说明了这一点(称为最近邻解码算法):
输入:接收到的中的向量v
输出:在中最接近的一个码字(如果有)。
- 从开始 ,重复以下两个步骤。
- 枚举(汉明)半径为,以待编码为中心的球的包含的元素 ,表示为 。
- 对于每个中的 ,检查是否在中。如果是,则返回作为解决方案。
- 增加 。仅当时因失败终止。枚举已完成,但尚未找到解决方案。
如果对于每个中的最多有一个码字在中,称线性码是-纠错的。
常用记号
[编辑]码通常用字母C表示,长度为n且秩为k的码(即,其基中有n个码字,其生成矩阵中有k行)通常称为 (n, k) 码。线性分组码通常表示为 [n, k, d] 码,其中d表示码中任意两个码字之间的最小汉明距离。
([n, k, d] 符号不应与 (n, M, d)符号混淆,后者用于表示长度为n 、大小为M(即具有M 个码字)且最小汉明距离为d 的非线性码。)
辛格尔顿界
[编辑]引理(辛格尔顿界):每个线性 [n,k,d] 码C满足 。
参数满足k+d=n+1的代码C称为最大距离可分(Maximum Distance Separable)的或MDS 。如果这样的代码存在,那么从某种意义上来说,它们就是最好的。
设C1和C2是两个长度为n的代码,且对称群Sn中存在置换p ,当且仅当(cp (1) ,... , cp (n) ) 在C2中时,( c1 ,..., cn ) 在C1中,则称C1与C2是置换等价的。更一般地,如果存在单项式矩阵使得C1同构于C2 ,那么称C1和C2是等价的。
引理:任何线性码都等价于标准形式的码的置换。
博尼索利定理
[编辑]对于一个码字,当且仅当存在某个常数d,使得该码中任意两个不同码字之间的距离等于d时,其可以称为等距码。 [7] 1984 年,阿里戈·博尼索利 (Arrigo Bonisoli) 确定了有限域上线性单重码的结构,并证明了每个等距线性码都是与汉明码对偶的序列。 [8]
示例
[编辑]线性码的一些示例包括:
推广
[编辑]在非域字母表上的汉明空间同样受到关注,尤其是有限环上的情形,其中最显著的是Z4上的伽罗瓦环。由此导出的是模结构而非向量空间结构,对应的环线性码(由子模定义)取代了传统线性码。此类空间通常采用李氏距离作为度量。研究发现:配备汉明距离的 (即 GF(22m ))与配备李距离的 (亦记作 GR(4,m))之间存在格雷等距映射。该映射的核心价值在于:它能将上某些环线性码的像,对应于上具有优良性质却非线性的编码。[9][10][11]
有些作者也将环上的此类码简称为线性码。 [12]
参见
[编辑]参考文献
[编辑]- ^ William E. Ryan and Shu Lin. Channel Codes: Classical and Modern
. Cambridge University Press. 2009: 4. ISBN 978-0-521-84868-8.
- ^ Martínez, Consuelo; Molina, Fabián. The syndromes decoding algorithm in group codes. Finite Fields and Their Applications. 2023-08-01, 89 [2025-07-05]. ISSN 1071-5797. doi:10.1016/j.ffa.2023.102206.
- ^ MacKay, David, J.C. Information Theory, Inference, and Learning Algorithms (PDF). Cambridge University Press. 2003: 9. Bibcode:2003itil.book.....M. ISBN 9780521642989.
In a linear block code, the extra bits are linear functions of the original bits; these extra bits are called parity-check bits
- ^ Thomas M. Cover and Joy A. Thomas. Elements of Information Theory. John Wiley & Sons, Inc. 1991: 210–211. ISBN 978-0-471-06259-2.
- ^ Grossman, Jay. Coding theory: introduction to linear codes and applications. (PDF). Insight: River Academic Journal. 2008, 4 (2) [2025-07-05].
- ^ Grossman, Jay. Coding theory: introduction to linear codes and applications. (PDF). Insight: River Academic Journal. 2008, 4 (2) [2025-07-05].
- ^ Etzion, Tuvi; Raviv, Netanel. Equidistant codes in the Grassmannian. arXiv:1308.6231
[math.CO].
- ^ Bonisoli, A. Every equidistant linear code is a sequence of dual Hamming codes. Ars Combinatoria. 1984, 18: 181–186.
- ^ Marcus Greferath. Massimiliano Sala; Teo Mora; Ludovic Perret; Shojiro Sakata; Carlo Traverso , 编. An Introduction to Ring-Linear Coding Theory. Springer Science & Business Media. 2009. ISBN 978-3-540-93806-4.
- ^ Encyclopedia of Mathematics. www.encyclopediaofmath.org.
- ^ J.H. van Lint. Introduction to Coding Theory
3rd. Springer. 1999. Chapter 8: Codes over ℤ4. ISBN 978-3-540-64133-9.
- ^ S.T. Dougherty; J.-L. Kim; P. Sole. https://books.google.com/books?id=psrXBgAAQBAJ&pg=PA80
|chapterurl=
缺少标题 (帮助). Steven Dougherty; Alberto Facchini; Andre Gerard Leroy; Edmund Puczylowski; Patrick Sole (编). Open Problems in Coding Theory. American Mathematical Soc. 2015: 80. ISBN 978-1-4704-1032-2.
参考书目
[编辑]- J. F. Humphreys; M. Y. Prest. Numbers, Groups and Codes 2nd. Cambridge University Press. 2004. ISBN 978-0-511-19420-7. Chapter 5 contains a more gentle introduction (than this article) to the subject of linear codes.
外部链接
[编辑]- q-ary code generator program
- Code Tables: Bounds on the parameters of various types of codes, IAKS, Fakultät für Informatik, Universität Karlsruhe (TH)]. Online, up to date table of the optimal binary codes, includes non-binary codes.
- The database of Z4 codes Online, up to date database of optimal Z4 codes.