巡回符号(cyclic code)とは、有限体 $\mathbb F_q$ の上の長さ $n$ の線形符号で、符号語の文字を巡回的に 1 つずらしてもまた符号語になるものである。語を次数 $n-1$ 以下の多項式とみなすと、巡回符号は剰余環 $\mathbb F_q[x]/(x^n-1)$ のイデアルと同じもので、$x^n-1$ を割り切るモニック多項式 $g$(生成多項式)の倍数の全体として書け、次元は $n-\deg g$、双対符号も巡回符号になる。$n$ と $q$ が互いに素なら符号は $g$ の根の集合で決まり、1 の原始 $n$ 乗根の連続した $\delta-1$ 個の冪を根にもつと最小距離は $\delta$ 以上になる(BCH の限界)。Hamming 符号・BCH 符号・Reed–Solomon 符号はその例である。
線形符号のうち、符号語の文字を 1 つずつ右へずらし、はみ出した最後の文字を先頭に回しても、また符号語になるものを 巡回符号(cyclic code)という。語 $(c_0,\dots,c_{n-1})$ を多項式 $c_0+c_1x+\dots+c_{n-1}x^{n-1}$ と思うと、このずらしは $x^n=1$ とみなして $x$ を掛けることに当たる。そのため巡回符号は剰余環 $\mathbb F_q[x]/(x^n-1)$ のイデアルと同じものになり、$x^n-1$ を割り切る 1 つの多項式(生成多項式)で決まる。符号化は多項式の掛け算、符号語かどうかの判定は割り算で済み、生成多項式の根を調べると最小距離の下からの評価が得られる。
この記事では、巡回符号がイデアルであること(prop-cyc-ideal)、巡回符号と $x^n-1$ のモニックな約数が 1 対 1 に対応すること(thm-cyc-generator)、双対符号も巡回符号で生成多項式が検査多項式の逆順で与えられること(thm-cyc-dual)、$n$ と $q$ が互いに素なら巡回符号が生成多項式の根の集合で決まること(thm-cyc-zeros)、連続した冪を根にもつと最小距離が下から押さえられること(BCH の限界、thm-cyc-bch)を証明する。
以下、$q$ は素数冪、$\mathbb F_q$ は位数 $q$ の 有限体、$n\ge1$ とし、語・重み・最小距離・双対符号は 線形符号 の記事の意味で使う。この記事では語の座標の番号を $0$ から始め、語 $c=(c_0,c_1,\dots,c_{n-1})\in\mathbb F_q^n$ に次数 $n-1$ 以下の多項式
$$
c(x)=c_0+c_1x+\dots+c_{n-1}x^{n-1}
$$
を対応させる。剰余環 $R_n:=\mathbb F_q[x]/(x^n-1)$ の各元は次数 $n-1$ 以下の多項式でただ 1 通りに代表される(多項式環 の定理「除法の原理」)ので、$c\mapsto c(x)\bmod(x^n-1)$ は $\mathbb F_q$ の線形空間としての同型 $\mathbb F_q^n\cong R_n$ である。以下、この同型で $\mathbb F_q^n$ の部分集合と $R_n$ の部分集合を同一視し、語と次数 $n-1$ 以下の多項式を同じ記号で書く。
語の 巡回シフト を $\sigma(c_0,c_1,\dots,c_{n-1}):=(c_{n-1},c_0,\dots,c_{n-2})$ と定める。$\mathbb F_q^n$ の線形部分空間 $C$(線形符号)が $\sigma(C)\subset C$ を満たすとき、$C$ を長さ $n$ の 巡回符号 という。
$\sigma$ は単射な線形写像で、$\sigma^n$ は恒等写像である。$\{0\}$ と $\mathbb F_q^n$ は巡回符号である。
1:$x\,c(x)=c_{n-1}x^n+\sum_{i=0}^{n-2}c_ix^{i+1}$ で、$x^n\equiv1\pmod{x^n-1}$ だから $x\,c(x)\equiv c_{n-1}+c_0x+\dots+c_{n-2}x^{n-1}$ であり、右辺は $\sigma(c)$ の多項式である。
2:$C$ がイデアルなら、$c\in C$ について $x\,c(x)\in C$ なので 1 により $\sigma(c)\in C$ である。逆に $C$ が巡回符号なら、1 を繰り返して $x^jc(x)\in C$($j\ge0$)である。$R_n$ の任意の元は $\sum_ja_jx^j$ と書けるので、$C$ が線形であることから $\bigl(\sum_ja_jx^j\bigr)c(x)=\sum_ja_j\,x^jc(x)\in C$ となる。$C$ は加法について閉じているので $R_n$ のイデアルである。$\square$
二元の場合は Jud25 Theorem 22.2.3(p. 415)にある。この命題により、巡回符号を調べることは $R_n$ のイデアルを調べることと同じになる。
$C\neq\{0\}$ を長さ $n$ の巡回符号とする。
以下、次数 $n-1$ 以下の多項式 $m\,g$($\deg m\le n-r-1$)について、$m\,g=\sum_jm_j\,x^jg$ の各項 $x^jg$ は次数 $j+r\le n-1$ の多項式で、$\sigma^j(g)$ に対応する(prop-cyc-ideal の 1 で $x^n$ の項が現れない)ことを使う。
1:$C\ne\{0\}$ なので $0$ でない符号語があり、次数が最小のもの $c$ をとって最高次の係数で割れば、モニックで同じ次数の符号語 $g$ が得られる。同じ次数のモニックな符号語 $g'$ がほかにあれば、$g-g'$ は次数がより小さい $0$ でない符号語になり、最小性に反する。
3:$\deg m\le n-r-1$ なら、上の注意と $C$ の線形性から $m\,g\in C$ である。逆に $c\in C$ を $g$ で割って $c=m\,g+s$($s=0$ または $\deg s< r$)とする(多項式環 の定理「除法の原理」)。$\deg(m\,g)\le\max(\deg c,\deg s)\le n-1$ なので $\deg m\le n-r-1$ で、$m\,g\in C$ だから $s=c-m\,g\in C$ である。$r$ の最小性から $s=0$ である。基底について:$x^jg$($0\le j\le n-r-1$)は次数が相異なるので一次独立で、上で示したことから $C$ を張る。
2:$x^{n-r}g$ は次数 $n$ のモニック多項式なので、$x^{n-r}g=(x^n-1)+s$($s=0$ または $\deg s\le n-1$)と書ける。$s\equiv x^{n-r}g\pmod{x^n-1}$ なので、prop-cyc-ideal により $s$ は $C$ の符号語である。3 により $g\mid s$ で、$x^n-1=x^{n-r}g-s$ も $g$ で割り切れる。
4:$x^n-1=g\,h$ とする。右辺を $C_g$ とおくと、線形部分空間であることは明らかである。$m\,g\in C_g$ について、$\deg m\le n-r-2$ なら $x\,m\,g\in C_g$ である。$\deg m=n-r-1$ で $x\,m$ の最高次の係数を $a$ とすると、$R_n$ で $x\,m\,g\equiv x\,m\,g-a(x^n-1)=(x\,m-a\,h)\,g$ で、右辺は次数 $n-1$ 以下の $g$ の倍数なので $C_g$ に入る。よって prop-cyc-ideal により $C_g$ は巡回符号である。$C_g$ の $0$ でない元は $g$ の倍数で次数 $r$ 以上なので、1 の意味の多項式は $g$ である。
最後の主張は、1・2 で $C\mapsto g$ が定まり、3 により $g$ から $C$ が復元でき、4 によりどの約数も現れることから従う。$\square$
この $g$ を $C$ の 生成多項式 という。二元の場合の イデアル による説明は Jud25 §22.2.1(p. 415)にあり、そこでは 単項イデアル整域 の性質($\mathbb F_q[x]$ のイデアルはすべて単項)と剰余環のイデアルの対応から同じ結論を得ている。上の証明はそれを割り算だけで直接示したものである。
3 の基底を並べた $(n-r)\times n$ 行列
$$
G=\begin{pmatrix}g_0&g_1&\cdots&g_r&&&\\&g_0&g_1&\cdots&g_r&&\\&&\ddots&&&\ddots&\\&&&g_0&g_1&\cdots&g_r\end{pmatrix}\qquad(g=g_0+g_1x+\dots+g_rx^r)
$$
は $C$ の生成行列で、情報 $m=(m_0,\dots,m_{k-1})$($k=n-r$)の符号化は多項式の積 $m(x)g(x)$ になる。
| 生成多項式 | 符号 | パラメータ |
|---|---|---|
| $1$ | $\mathbb F_2^3$ 全体 | $[3,3,1]_2$ |
| $x+1$ | 重みが偶数の語 $000,110,011,101$ | $[3,2,2]_2$ |
| $x^2+x+1$ | 反復符号 $000,111$ | $[3,1,3]_2$ |
| $x^3-1$ | $\{0\}$ |
$C\neq\{0\}$ を生成多項式 $g$(次数 $r$)の巡回符号とし、$k:=n-r$、$x^n-1=g\,h$ とする。$h$ は次数 $k$ のモニック多項式で、$C$ の 検査多項式 という。
次数 $n-1$ 以下の多項式 $c$ について、$c\in C$ であることと $c\,h\equiv0\pmod{x^n-1}$ は同値である。
$c=m\,g$ なら $c\,h=m(x^n-1)$ である。逆に $c\,h=(x^n-1)s=g\,h\,s$ なら、$\mathbb F_q[x]$ は整域で $h\neq0$ なので $c=g\,s$ であり、thm-cyc-generator の 3 により $c\in C$ である($\deg s=\deg c-r\le n-r-1$)。$\square$
双対符号の生成多項式は、$h$ の係数を逆に並べた多項式で与えられる。$x^n-1=g\,h$ の定数項を比べると $g(0)h(0)=-1$ なので $h(0)\ne0$ であり、$h$ の 逆順多項式 $\tilde h(x):=x^kh(1/x)=h_k+h_{k-1}x+\dots+h_0x^k$($h=\sum_lh_lx^l$)は次数がちょうど $k$ で、最高次の係数は $h(0)$ である。
$1\le k\le n-1$ とする。$C$ の双対符号 $C^\perp$ は巡回符号で、その生成多項式は $h(0)^{-1}\tilde h$ である。
$\tilde g(x):=x^rg(1/x)$ とおくと、$x^n-1=g\,h$ の $x$ に $1/x$ を代入して $x^n$ を掛けることで $1-x^n=\tilde g\,\tilde h$ を得る。よって $h(0)^{-1}\tilde h$ は $x^n-1$ の次数 $k< n$ のモニックな約数で、thm-cyc-generator の 4 と 3 により、これを生成多項式とする巡回符号 $D$ があり、その次元は $n-k=r$ である。線形符号 の命題「双対符号の次元」により $\dim C^\perp=n-k$ でもあるので、$D\subset C^\perp$ を示せばよい。そのためには、$C$ の基底 $x^ig$($0\le i\le k-1$)と $D$ の基底 $x^j\tilde h$($0\le j\le r-1$)が直交することを示せば十分である。
語 $x^ig$ の第 $p$ 座標は $g_{p-i}$、語 $x^j\tilde h$ の第 $p$ 座標は $h_{k+j-p}$ である(添字が範囲外の係数は $0$ とする)。$p-i=l$ とおくと、2 つの語の内積は
$$
\sum_{p}g_{p-i}\,h_{k+j-p}=\sum_{l}g_l\,h_{s-l},\qquad s:=k+j-i
$$
で、これは $g\,h=x^n-1$ の $x^s$ の係数である。$0\le i\le k-1$、$0\le j\le r-1$ から $1\le s\le k+r-1=n-1$ なので、この係数は $0$ である。$\square$
$\mathbb F_2$ の上で $D$ の生成行列($C$ の検査行列)を $h$ の係数で書いたものが Jud25 Proposition 22.2.5(p. 416)で、そこでは証明は演習とされている。上の証明はその一般の $q$ の場合である。
$\mathbb F_2$ の上で $g=x^3+x+1$ なら $h=(x^7-1)/g=x^4+x^2+x+1$、$\tilde h=x^4+x^3+x^2+1$ である。$C^\perp$ は $\tilde h$ の生成する $[7,3]_2$ の巡回符号で、その $0$ でない $7$ 個の符号語は $\tilde h$ の語 $1011100$ の $7$ 個の巡回シフトであり($7$ は素数で、この語は定数でないので、$7$ 個のシフトは相異なる)、どれも重み $4$ である。
この節では $\gcd(n,q)=1$ と仮定する。$q$ の $n$ を法とする位数を $m$ とすると $n\mid q^m-1$ である。位数 $q^m$ の有限体 $\mathbb F_{q^m}$ は位数 $q$ の部分体をただ 1 つもつので(有限体 の定理「有限体の存在と一意性」と命題「有限体の部分体」)、$\mathbb F_q\subset\mathbb F_{q^m}$ とみなす。乗法群 $\mathbb F_{q^m}^\times$ は位数 $q^m-1$ の巡回群(有限体 の定理「有限体の乗法群の構造」)なので、位数がちょうど $n$ の元 $\beta$ がある。これを 1 の原始 $n$ 乗根 という。$\beta^0,\beta^1,\dots,\beta^{n-1}$ は相異なる $x^n-1$ の根なので、$\mathbb F_{q^m}[x]$ で
$$
x^n-1=\prod_{i=0}^{n-1}(x-\beta^i)
$$
と相異なる 1 次式の積に分解する。以下、番号 $i$ は $n$ を法として考える。
$C\ne\{0\}$ を生成多項式 $g$ の巡回符号とする。$Z(C):=\{i\in\mathbb Z/n\mathbb Z : g(\beta^i)=0\}$ を $C$ の($\beta$ に関する)零点の集合 という。
$g$ は $x^n-1$ の約数なので、一意分解(多項式環 の定理「体上の一意分解」)により $g=\prod_{i\in Z(C)}(x-\beta^i)$ であり、$\deg g=\lvert Z(C)\rvert$、$\dim C=n-\lvert Z(C)\rvert$ である。
$\gcd(n,q)=1$ とし、$C\neq\{0\}$ を長さ $n$ の巡回符号とする。
1:$c\in C$ なら $c=m\,g$ なので $c(\beta^i)=m(\beta^i)g(\beta^i)=0$ である。逆に $c(\beta^i)=0$($i\in Z(C)$)なら、因数定理(多項式環 の系「剰余定理と因数定理」)を相異なる根 $\beta^i$ について繰り返して、$\mathbb F_{q^m}[x]$ で $g=\prod_{i\in Z(C)}(x-\beta^i)$ が $c$ を割り切る。$c$ を $g$ で $\mathbb F_q[x]$ の中で割った余りは、$\mathbb F_{q^m}[x]$ の中で割った余りでもあり(除法の原理の一意性)、それは $0$ である。よって $g\mid c$ で、$\deg c\le n-1$ だから thm-cyc-generator の 3 により $c\in C$ である。
2:$\varphi(a):=a^q$ は $\mathbb F_{q^m}$ の環準同型で、$\mathbb F_q$ の元を動かさない(有限体 の命題「Frobenius写像の性質」と系「有限体における $x^q=x$」)。$g$ の係数は $\mathbb F_q$ にあるので $g(\beta^{qi})=g\bigl(\varphi(\beta^i)\bigr)=\varphi\bigl(g(\beta^i)\bigr)=0$ である。
3:$P:=\prod_{i\in Z}(x-\beta^i)$ の係数に $\varphi$ を施した多項式は $\prod_{i\in Z}(x-\beta^{qi})$ である。$\gcd(q,n)=1$ なので $i\mapsto qi$ は $\mathbb Z/n\mathbb Z$ の単射で、$q$ 倍で閉じた有限集合 $Z$ の全単射になるから、この多項式は $P$ に等しい。よって $P$ の係数 $a$ は $a^q=a$ を満たす。$x^q-x$ の根は高々 $q$ 個で、$\mathbb F_q$ の $q$ 個の元がすでに根なので、$a\in\mathbb F_q$ である。$P$ は $\mathbb F_{q^m}[x]$ で $x^n-1$ を割り切り、$x^n-1$ を $P$ で $\mathbb F_q[x]$ の中で割った余りは $\mathbb F_{q^m}[x]$ の中での余り $0$ に等しい(除法の原理の一意性)ので、$P$ は $\mathbb F_q[x]$ での $x^n-1$ の次数 $n$ 未満のモニックな約数である。よってthm-cyc-generator の 4 によりそれを生成多項式とする巡回符号があり、その零点の集合は $P$ の根の番号の集合 $Z$ である。$\square$
$q$ 倍で閉じた最小の集合 $\{i,qi,q^2i,\dots\}$ を $i$ を含む 円分剰余類(cyclotomic coset)という。$\mathbb Z/n\mathbb Z$ は円分剰余類に分かれ、$q$ 倍で閉じた集合は円分剰余類の和集合である。thm-cyc-generator と thm-cyc-zeros から、$\gcd(n,q)=1$ なら長さ $n$ の巡回符号は $2^N$ 個($N$ は円分剰余類の個数。$\{0\}$ を含める)ある。円分剰余類 1 つに対応する多項式 $P$ は、その番号の $\beta^i$ の 最小多項式 である。実際、$\beta^i$ の最小多項式は $P$ を割り切り、2 の証明と同じ理由で剰余類のすべての $\beta^{q^ji}$ を根にもつので、次数が $\deg P$ 以上である。
$q=2$、$n=7$ とすると $m=3$ で、$\beta$ は $\mathbb F_8$ の 1 の原始 $7$ 乗根、すなわち $\mathbb F_8^\times$ の生成元である。円分剰余類は $\{0\}$、$\{1,2,4\}$、$\{3,6,5\}$ の 3 つで、長さ $7$ の二元巡回符号が $2^3=8$ 個あることと合う(ex-cyc-small)。$\beta$ を $x^3+x+1$ の根にとると、$g=x^3+x+1$ の根は $\beta,\beta^2,\beta^4$ で(係数が $\mathbb F_2$ にあるので $g(\beta^2)=g(\beta)^2=0$ など)、符号 $C$ の零点の集合は $\{1,2,4\}$ である。係数が $\mathbb F_2$ の語 $c$ では $c(\beta^2)=c(\beta)^2$、$c(\beta^4)=c(\beta)^4$ なので、thm-cyc-zeros の 1 により、$c\in C$ であることは $c(\beta)=\sum_ic_i\beta^i=0$ だけと同値である。$\mathbb F_8$ を $\mathbb F_2^3$ と同一視して $\beta^0,\dots,\beta^6$ を列に並べた $3\times7$ 行列を $H$ とすると、$c(\beta)=0$ は $Hc^{\mathsf T}=0$ と同じである。$\beta$ は $\mathbb F_8^\times$ の生成元なので、$H$ の列は $\mathbb F_2^3$ の $0$ でない元のすべてであり、$C$ は長さ $7$ の二元 Hamming符号 である(定義の検査行列の列の並べ方を 1 つ選んだもの)。
$\gcd(n,q)=1$ とし、$C\ne\{0\}$ を長さ $n$ の巡回符号とする。整数 $b$ と $\delta\ge2$ について
$$
\{b,\ b+1,\ \dots,\ b+\delta-2\}\subset Z(C)
$$
($n$ を法として)ならば、$C$ の最小距離は $\delta$ 以上である。
重み $w$ が $1\le w\le\delta-1$ の符号語 $c$ があったとして矛盾を導く。$c$ の台を $\{i_1,\dots,i_w\}$(相異なる $0\le i_l\le n-1$)とし、$\gamma_l:=\beta^{i_l}$ とおく。$\beta$ の位数は $n$ なので $\gamma_1,\dots,\gamma_w$ は相異なる $0$ でない元である。$0\le s\le w-1$ について $b+s\in Z(C)$ なので、thm-cyc-zeros の 1 により
$$
0=c(\beta^{b+s})=\sum_{l=1}^wc_{i_l}\gamma_l^{\,b+s}=\sum_{l=1}^w\gamma_l^{\,s}\cdot\bigl(\gamma_l^{\,b}c_{i_l}\bigr)\qquad(s=0,1,\dots,w-1)
$$
である。係数行列 $(\gamma_l^{\,s})_{0\le s\le w-1,\ 1\le l\le w}$ は相異なる $\gamma_1,\dots,\gamma_w$ を節点とする Vandermonde 行列(の転置)なので、Vandermondeの行列式 の命題「正則性の判定」により正則である。よって $\gamma_l^{\,b}c_{i_l}=0$ で、$\gamma_l\ne0$ から $c_{i_l}=0$($l=1,\dots,w$)となり、$c$ の台のとり方に反する。$\square$
二元の場合は Jud25 Theorem 22.2.8(pp. 417–418)にある。この限界から、望む最小距離 $\delta$ を先に決めて符号を作ることができる。$\{b,b+1,\dots,b+\delta-2\}$ を含む $q$ 倍で閉じた最小の集合を零点の集合とする巡回符号を、設計距離 $\delta$ の BCH 符号 という($b=1$ のとき狭義の BCH 符号という)。thm-cyc-bch により、その最小距離は $\delta$ 以上である。
| 外す条件 | 反例 | 成り立たなくなること |
|---|---|---|
| 線形であること(prop-cyc-ideal) | $\{000,100,010,001\}\subset\mathbb F_2^3$ | $R_3$ のイデアルであること |
| 巡回シフトで閉じること(thm-cyc-generator) | $\{00,10\}\subset\mathbb F_2^2$ | $x^n-1$ のモニックな約数の倍数の全体として書けること |
| $\gcd(n,q)=1$(thm-cyc-zeros の 1) | $q=2$、$n=4$、$g=x^2+1$ | 符号語が $g$ の根での値が $0$ の語として決まること |
| 零点の番号が連続すること(thm-cyc-bch) | $q=2$、$n=7$、$g=x^3+x+1$($Z(C)=\{1,2,4\}$) | $\lvert Z(C)\rvert=3$ から最小距離 $4$ 以上が従うこと |
各行の反例は、外した条件のほかの仮定を満たす。
1 行目:巡回シフトで閉じているが、$100+010=110$ を含まないので線形でなく、加法について閉じていないのでイデアルでない。
2 行目:線形符号だが $\sigma(10)=01$ を含まない。$0$ でない元は $1$(多項式として)だけなので、次数最小のモニックな元は $1$ である。しかし $1$ の倍数で次数 $1$ 以下のものの全体は $\mathbb F_2^2$ で、$C$ と異なる。$x^2-1=(x+1)^2$ のモニックな約数 $1$、$x+1$、$(x+1)^2$ の倍数(次数 $1$ 以下)の全体はそれぞれ $\mathbb F_2^2$、$\{00,11\}$、$\{00\}$ で、どれも $C$ と異なる。
3 行目:$x^4-1=(x+1)^4$ で、$g=(x+1)^2$ の生成する巡回符号は $\{0000,1010,0101,1111\}$ の $4$ 語である。$g$ の根は $1$ だけだが、$c(1)=0$ を満たす語は重みが偶数の $8$ 語あり、符号と一致しない。$\gcd(4,2)\ne1$ なので 1 の原始 $4$ 乗根はどの $\mathbb F_{2^m}$ にもない。
4 行目:ex-cyc-hamming の符号の最小距離は $3$ である。連続した零点は $\{1,2\}$ の 2 個で、thm-cyc-bch が与えるのは $\delta=3$ までである。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する