近世代数

近世代数理论基础40:BCH码

2019-03-18  本文已影响4人  溺于恐

BCH码

纠错码

数字信息传输过程中可能受干扰导致出错,为了正确传送信息,采用抗干扰编码的方法,在信息传输之前进行一次抗干扰编码然后再发送编码后的信息,收信者收信后可根据编码的功能进行检错和纠错,该编码称为纠错码

线性码

线性码是最常用的一类纠错码

一个线性码\mathcal{C}F_2上n维向量空间F_2^n中一个k(\lt n)维子空间,也可用一般的有限域F_q代替F_2,但数字通信中常用F_2

\mathcal{C}中的每个向量称为码字,设c=(c_0,c_1,\cdots,c_{n-1})(c_i\in F_2)\mathcal{C}中的一个码字,它的非零分量根叔定义为重量,记作w(c),即w(c)=\#\{c_i|c_i\neq 0,0\le i\le n-1\}

定义\mathcal{C}的最小重量维d(\mathcal{C})=min\{w(c)|c\in \mathcal{C},c\neq 0\},\forall c,c’\in \mathcal{C},定义c,c’的距离为d(c,c’)=w(c-c’)

\mathcal{C}是线性码,故d(\mathcal{C})=min\{w(c-c’)|c,c’\in\mathcal{C},c\neq c’\},d(\mathcal{C})也称为\mathcal{C}的最小距离

d(\mathcal{C})是决定\mathcal{C}的纠错功能的重要参数,d(\mathcal{C})越大,\mathcal{C}的纠错功能越强

设计线性码时,希望它的最小重量能达到一定要求

利用有限域设计BCH码

BCH码是一类线性码

n=2^m-1,F_2上任一n维向量c=(c_0,c_1,\cdots,c_{n-1}),c_i\in F_2,对应F_2上一个次数不超过n-1的多项式c(x)=c_0+c_1x+\cdots+c_{n-1}x^{n-1}\in F_2[x]

故一个码字也可用一个多项式表示

\betaF_{2^m}的一个本原元,d\in Z_+,d\le n

定义\mathcal{C}=\{c(x)\in F_2[x]|deg c(x)\le n-1,c(\beta^i)=0,1\le i\le d-1\}

c(x),c’(x)\in \mathcal{C},则显然c(x)+c’(x)\in \mathcal{C},\mathcal{C}对应F_2^n中的一个线性子空间,是一个线性码

定义F_{2^m}上一个(d-1)\times n矩阵

H=\begin{pmatrix}1&\beta&\beta^2&\cdots&\beta^{n-1}\\ 1&\beta^2&\beta^{2\cdot 2}&\cdots&\beta^{2\cdot(n-1)}\\ \vdots&\vdots&\vdots& &\vdots\\ 1&\beta^{d-1}&\beta^{(d-1)\cdot 2}&\cdots&\beta^{(d-1)\cdot(n-1)}\end{pmatrix}

c(x)=c_0+c_1x+\cdots+c_{n-1}x^{n-1}\in \mathcal{C}\Leftrightarrow (c_0,c_1,\cdots,c_{n-1})\cdot H^T=0

其中H^T表示H的转置矩阵

\beta是本原元,故\beta,\beta^2,\cdots,\beta^{d-1}(d\le n)互不相同

H的任意d-1列所决定的子矩阵的行列式是一个非取零值的Vandermonde行列式

H的任意d-1列都线性无关

\forall c\in \mathcal{C},有w(c)\ge d

\mathcal{C}的最小重量d(\mathcal{C})\ge d,d称为\mathcal{C}的设计距离

g_i(x)\beta^iF_2上的极小多项式,g(x)g_1(x),g_2(x),\cdots,g_{d-1}(x)的最小公倍式

g_i(x)|x^n-1,x^n-1无重根,n为奇数,故g(x)|x^n-1

线性码\mathcal{C}也可定义为\mathcal{C}=\{f(x)g(x)(mod\;x^n-1)|f(x)\in F_2[x]\}\\=\{f(x)g(x)|deg\;f(x)\lt n-deg\;g(x),f(x)\in F_2[x]\}

理解为g(x)在环F_2[x]/(x^n-1)中生成的理想

c=(c_0,c_1,\cdots,c_{n-1})\mathcal{C}的一个码字

x\cdot c(x)=x(c_0+c_1x+\cdots+c_{n-1}x^{n-1})

\equiv c_{n-1}+c_0x+\cdots+c_{n-2}x^{n-1}(mod\; x^n-1)

(c_{n-1},c_0,\cdots,c_{n-2})也是\mathcal{C}的一个码字

具有该性质的纠错码称为循环码,BCH码是循环码

例:设n=31,m=5,d=8,令\betaF_{32}的一个本原元,定义BCH码\mathcal{C}=\{c(x)\in F_2[x]|deg\;c(x)\le 30,c(\beta^i)=0,1\le i\le 7\}

\mathcal{C}的设计距离为8,令g_i(x)(1\le i\le 7)\beta^iF_2上的极小多项式

g(x)g_1(x),g_2(x),\cdots,g_7(x)的最小公倍式,则

g_1(x)=(x-\beta)(x-\beta^2)(x-\beta^4)(x-\beta^8)(x-\beta^{16})

g_2(x)=(x-\beta^3)(x-\beta^6)(x-\beta^{12})(x-\beta^{24})(x-\beta^{17})

g_5(x)=(x-\beta^5)(x-\beta^{10})(x-\beta^{20})(x-\beta^9)(x-\beta^{18})

g_7(x)=(x-\beta^7)(x-\beta^{14})(x-\beta^{28})(x-\beta^{25})(x-\beta^{19})

g(\beta^i)=0,1\le i\le 10,故码\mathcal{C}的最小距离至少为11

上一篇 下一篇

猜你喜欢

热点阅读