欢迎光临散文网 会员登陆 & 注册

Reed-Muller 码-第三种构造方法 - 生成矩阵

2023-02-13 09:04 作者:乐吧的数学  | 我要投稿

这篇文章介绍 Reed-Muller 码的第三种构造方法,通过计算出生成矩阵来做编码。这个方法通过递推的方式来计算生成矩阵,可以看成是一种递推方法(Recursive).

视频在:https://www.bilibili.com/video/BV1k14y1c7xG/

 Reed-Muller 码是记为 R(r,m),对应的生成矩阵,记为 G(r,m),则计算生成矩阵的递推公式为:

G(r%2Cm)%3D%5Cbegin%7Bbmatrix%7D%0AG(r%2Cm-1)%20%26%20G(r%2Cm-1)%20%5C%5C%0A0%20%26%20G(r-1%2Cm-1)%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%201

公式 (1) 中的递推的结束条件是有两种,一个是碰到 R(r=m,m) 的生成矩阵 G(r=m,m),另外一个是碰到 R(0,m) 的生成矩阵 G(0,m).

在前面的文章中我们分析过,R(m,m) 这个编码器,其输入的比特数量等于输出的比特数量,都是 2%5Em,所以相当于没有编码,那么,没有编码的 "编码器",其对应的生成矩阵就是一个单位矩阵,维度是 2%5Em%20%5Ctimes%202%5Em

G(m%2Cm)%20%3D%20%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%20%5Ccdots%20%26%200%20%5C%5C%0A0%20%26%201%20%26%20%5Ccdots%20%26%200%20%5C%5C%0A%26%5Ccdots%20%5C%5C%0A0%20%26%200%20%26%20%5Ccdots%20%26%201%20%5C%5C%0A%5Cend%7Bbmatrix%7D_%7B2%5Em%20%5Ctimes%202%5Em%7D


一个长度为 2%5Em 的输入向量,乘以 G(m,m),得到的还是输入的向量。



而对于 R(0,m) 这个编码器,是输入一个符号,输出重复的 2%5Em 个符号,则其生成矩阵为一个全 1 的行向量,长度为 2%5Em


G(0%2Cm)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1%20%26%201%20%26%20%5Ccdots%20%26%201%0A%5Cend%7Bbmatrix%7D_%7B1%5Ctimes%202%5Em%7D


输入比特 0,乘以 G(0,m)  得到一个全 0 的长度为2%5Em 的序列;输入比特 1, 乘以 G(0,m)  得到一个全 1 的长度为 2%5Em 的序列,所以这是一个重复码。



我们下面举个例子来说明这个过程,我们以 R(2,4) 为例子,这样可以与前面文章(本系列文章的第二个:第二种构造方法)中得到的生成矩阵做对比。

根据 (1) 的递推,我们有:


G(2%2C4)%3D%5Cbegin%7Bbmatrix%7D%0AG(2%2C3)%20%26%20G(2%2C3)%20%5C%5C%0A0%20%26%20G(1%2C3)%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%202

继续递推公式 (2) :

G(2%2C3)%3D%5Cbegin%7Bbmatrix%7D%0AG(2%2C2)%20%26%20G(2%2C2)%20%5C%5C%0A0%20%26%20G(1%2C2)%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%203以及

G(1%2C3)%3D%5Cbegin%7Bbmatrix%7D%0AG(1%2C2)%20%26%20G(1%2C2)%20%5C%5C%0A0%20%26%20G(0%2C2)%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%204

再继续递推公式 (3) (4)

G(1%2C2)%3D%5Cbegin%7Bbmatrix%7D%0AG(1%2C1)%20%26%20G(1%2C1)%20%5C%5C%0A0%20%26%20G(0%2C1)%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%205

公式 (5) 中的:

G(1%2C1)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%20%5C%5C%0A0%20%26%201%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%206以及:
G(0%2C1)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1%20%26%201%20%20%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%207

把公式 (6) (7) 代入公式 (5) 有:
G(1%2C2)%3D%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%20%26%20%261%20%26%200%5C%5C%0A0%20%26%201%20%26%20%26%20%260%20%26%201%20%5C%5C%0A%5C%5C%0A0%20%26%200%20%26%20%26%20%26%201%20%26%201%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%208公式 (4) 中的
G(0%2C2)%20%3D%5Cbegin%7Bbmatrix%7D%0A1%20%26%201%20%26%201%26%201%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%209

把公式 (8) (9) 代入公式 (4) 有:

G(1%2C3)%3D%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%201%20%26%200%20%26%26%26%201%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%201%20%26%200%20%26%201%20%26%26%26%200%20%26%201%20%26%200%20%26%201%5C%5C%0A0%20%26%200%20%26%201%20%26%201%20%26%26%26%200%20%26%200%20%26%201%20%26%201%20%5C%5C%0A%5C%5C%0A0%20%26%200%26%200%20%26%200%20%20%26%26%26%20%201%20%26%201%20%26%201%20%26%201%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%20%7B10%7D公式 (3)  中的:
G(2%2C2)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%200%20%26%200%20%20%5C%5C%0A0%20%26%201%20%26%200%20%26%200%20%20%5C%5C%0A0%20%26%200%20%26%201%20%26%200%20%20%5C%5C%0A0%20%26%200%20%26%200%20%26%201%20%20%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%20%7B11%7D把公式 (11) 和公式 (10) 代入公式 (3)有:

%0AG(2%2C3)%3D%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%200%20%26%200%20%20%26%26%26%201%20%26%200%20%26%200%20%26%200%5C%5C%0A0%20%26%201%20%26%200%20%26%200%20%20%26%26%26%200%20%26%201%20%26%200%20%26%200%5C%5C%0A0%20%26%200%20%26%201%20%26%200%20%20%26%26%26%200%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%200%20%26%200%20%26%201%20%20%26%26%26%200%20%26%200%20%26%200%20%26%201%20%5C%5C%0A%5C%5C%0A%0A0%20%26%200%20%26%200%20%26%200%20%20%26%26%26%201%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%20%26%26%26%200%20%26%201%20%26%200%20%26%201%20%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%20%26%26%26%200%20%26%200%20%26%201%20%26%201%0A%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%20%7B12%7D


把公式 (12)(10) 代入公式 (2) :

%0AG(2%2C4)%3D%5Cbegin%7Bbmatrix%7D%0A1%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%26%26%261%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%5C%5C%0A0%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%26%26%260%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%5C%5C%0A0%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%26%26%260%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%26%26%260%20%26%200%20%26%200%20%26%201%20%26%200%20%26%200%20%26%200%20%26%201%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%201%20%26%200%26%26%260%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%201%26%26%260%20%26%200%20%26%200%20%26%200%20%26%200%20%26%201%20%26%200%20%26%201%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%201%20%26%201%26%26%260%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%201%20%26%201%5C%5C%0A%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%26%26%261%20%26%200%20%26%201%20%26%200%20%26%201%20%26%200%20%26%201%20%26%200%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%26%26%260%20%26%201%20%26%200%20%26%201%20%26%200%20%26%201%20%26%200%20%26%201%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%26%26%260%20%26%200%20%26%201%20%26%201%20%26%200%20%26%200%20%26%201%20%26%201%5C%5C%0A0%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%20%26%200%26%26%260%20%26%200%20%26%200%20%26%200%20%26%201%20%26%201%20%26%201%20%26%201%0A%5Cend%7Bbmatrix%7D%20%20%5Ctag%20%7B13%7D

在前面的文章中,我们通过第二种构造方法也得出了一个生成矩阵,如下:


%0AG(2%2C4)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1111%5C%201111%5C%201111%5C%201111%20%5C%5C%0A0101%5C%200101%5C%200101%5C%200101%20%20%5C%5C%0A0011%5C%200011%5C%200011%5C%200011%20%5C%5C%0A0000%5C%201111%5C%200000%5C%201111%20%5C%5C%0A0000%5C%200000%5C%201111%5C%201111%20%5C%5C%0A0001%5C%200001%5C%200001%5C%200001%20%20%5C%5C%0A0000%5C%200101%5C%200000%5C%200101%20%20%5C%5C%0A0000%5C%200000%5C%200101%5C%200101%20%20%5C%5C%20%20%0A0000%5C%200011%5C%200000%5C%200011%20%20%5C%5C%0A0000%5C%200000%5C%200011%5C%200011%20%20%5C%5C%0A0000%5C%200000%5C%200000%5C%201111%20%20%5C%5C%0A%5Cend%7Bbmatrix%7D_%7B11%5Ctimes16%7D%20%20%5Ctag%7B14%7D

表面上看 (13) 与 (14) 的结果不同,但是,其实都是 16 维空间中 的 11 维子空间中的基,只是选取的基不同。 (13) 式可以通过适当的行变换,得到 (14).

我们把公式 (13) 中矩阵的各个行,记为 [1] [2],...., [11],则 (14) 的矩阵就是:


%0AG(2%2C4)%20%3D%0A%5Cbegin%7Bbmatrix%7D%0A1111%5C%201111%5C%201111%5C%201111%20%3D%26%5B1%5D%2B%5B2%5D%2B%5B3%5D%2B%5B4%5D%5C%5C%0A0101%5C%200101%5C%200101%5C%200101%20%3D%26%5B2%5D%2B%5B3%5D%20%20%5C%5C%0A0011%5C%200011%5C%200011%5C%200011%20%3D%26%5B3%5D%2B%5B4%5D%20%5C%5C%0A0000%5C%201111%5C%200000%5C%201111%20%3D%26%5B5%5D%2B%5B6%5D%20%5C%5C%0A0000%5C%200000%5C%201111%5C%201111%20%3D%26%5B8%5D%2B%5B9%5D%20%5C%5C%0A0001%5C%200001%5C%200001%5C%200001%20%3D%26%5B4%5D%20%5C%5C%0A0000%5C%200101%5C%200000%5C%200101%20%3D%26%5B6%5D%20%5C%5C%0A0000%5C%200000%5C%200101%5C%200101%20%3D%26%5B9%5D%20%20%5C%5C%20%20%0A0000%5C%200011%5C%200000%5C%200011%20%3D%26%5B7%5D%20%5C%5C%0A0000%5C%200000%5C%200011%5C%200011%20%3D%26%5B10%5D%20%5C%5C%0A0000%5C%200000%5C%200000%5C%201111%20%3D%26%5B11%5D%20%5C%5C%0A%5Cend%7Bbmatrix%7D_%7B11%5Ctimes16%7D%20%20%5Ctag%7B15%7D


所以,这两个生成矩阵是等价的,虽然输入相同的数据,得到的是不同的输出,但是,他们在性能上,结构上是完全等价的。

Reed-Muller 码-第三种构造方法 - 生成矩阵的评论 (共 条)

分享到微博请遵守国家法律