資料・アプリへ戻る

数学記事・メモ

MacWilliams恒等式で学ぶシリーズ第5回 / 全12回

MacWilliams恒等式で学ぶアソシエーションスキーム入門

MacWilliams恒等式の五つの証明系統のうち,直交多項式・アソシエーションスキーム系に着目し,関係分割,隣接行列,Bose–Mesner代数,原始冪等元,Hammingスキーム,内部分布・双対分布を導入する.
公開:
更新:
読了目安:
43分 (約25,218字)
Tagscoding theoryMacWilliams identityassociation schemesBose-Mesner algebraHamming schemeKrawtchouk polynomialsfinite fieldsexpository note
PDF ダウンロード

はじめに

符号理論における基本定理の一つに,MacWilliams恒等式があります. EE を座標集合,n=En = \card{E} とし,有限体 Fq\F_{q} 上の線形符号 CFqEC\leq \F_{q}^{E} に対して,その双対符号

C={uFqE:uc=0 for all cC}C^{\perp} = \{ u \in \F_{q}^{E} : u \cdot c = 0 \text{ for all } c \in C \}

を考えます.ここで

uc=eEueceu \cdot c = \sum_{e \in E} u_{e} c_{e}

です.

まず,線形符号 CC重み多項式 (weight enumerator) を

WC(X,Y)=cCXnwt(c)Ywt(c)W_{C}(X,Y) = \sum_{c \in C} X^{n - \wt(c)} Y^{\wt(c)}

で定めます. また,重み分布 (weight distribution) を

Ai(C)={cC:wt(c)=i}(0in)A_{i}(C) = \card{\{ c \in C : \wt(c) = i\}} \qquad (0 \leq i\leq n)

と書きます. このとき

WC(X,Y)=i=0nAi(C)XniYiW_{C}(X, Y) = \sum_{i = 0}^{n} A_{i}(C) X^{n - i} Y^{i}

です.

MacWilliams恒等式は,双対符号の重み多項式が,CC の重み多項式から次のように計算できるという公式です:

WC(X,Y)=1CWC(X+(q1)Y,XY).W_{C^{\perp}}(X, Y) = \frac{1}{\card{C}} W_{C}\bigl( X + (q - 1)Y, X - Y \bigr).

これがMacWilliams恒等式です.

この連載では,MacWilliams恒等式の証明を手掛かりに, 周辺分野・周辺概念への入門を試みます. そのため,本連載では以下のような読者を対象としています:

符号理論の初歩,具体的には

  • (有限)体とは何か

  • 有限体上の線形符号とは何か

  • Hamming重みとは何か

  • 双対符号とは何か

程度は既知であることを前提としています (MacWilliams恒等式の証明は知らなくても問題ありません).

本稿は,第1回〜第4回を前提にしません. 途中で Krawtchouk 多項式,テンソル積,加法指標が現れますが, 本稿で必要な範囲はその都度説明します. 第4回を読んでいれば見通しはよくなりますが,未読でも読める構成にします.

この連載では,MacWilliams恒等式の証明手法を大きく次の五つの系統に分けて眺めます.

  1. Fourier・指標・Poisson系.

  2. Möbius反転・束論・短縮穿孔系.

  3. 直交多項式・アソシエーションスキーム系.

  4. マトロイド・Tutte多項式系.

  5. モーメント・二重数え上げ系.

本稿では,このうち「直交多項式・アソシエーションスキーム系」に着目します. Krawtchouk多項式を使って書けば,MacWilliams恒等式は

重み分布に対するKrawtchouk変換

として現れます. ここでいう Krawtchouk 変換とは,

(ai)i=0n(i=0naiKj(i))j=0n(a_{i})_{i=0}^{n} \longmapsto \left( \sum_{i = 0}^{n} a_{i} \Kraw_{j}(i) \right)_{j=0}^{n}

の形の変換です. ここで添字の読み方を先に述べておきます. Ki(w)\Kraw_{i}(w) と書けば,距離 ii の隣接行列が第 ww 固有空間上で持つ固有値を表します. 一方,MacWilliams変換では双対側の重みを jj,元の重みを ii と書くため, 係数は Kj(i)\Kraw_{j}(i) の形で現れます. 同じKrawtchouk多項式ですが,どちらの添字が距離側で, どちらが固有空間側かを文脈で読む必要があります. この点は,Hammingスキームの固有空間を導入した後でもう一度整理します. 本稿では,そのKrawtchouk多項式がなぜHamming空間に自然に付随するのかを, アソシエーションスキームの言葉で説明します. 言い換えると,本稿の目標は,係数 Kj(i)\Kraw_j(i) が Hammingスキームの固有値として自然に現れることを説明することです. 今回の目標は,MacWilliams恒等式の証明を案内役として, アソシエーションスキーム,特にHammingスキームとBose–Mesner代数に入門することです.

アソシエーションスキームは,有限集合上の二項関係をいくつかの種類に分け, その関係たちが十分に規則的に振る舞う状況を抽象化したものです. Hamming空間では,二つの語 x,yFqEx, y \in \F_{q}^{E} の関係を

dist(x,y)=0,1,,n\dist(x, y) = 0, 1, \dots, n

のどれであるかによって分類します. ここで dist(x,y)=wt(xy)\dist(x, y) = \wt(x - y) はHamming距離です. この距離関係から隣接行列を作り,それらが張る可換代数を見ると, その固有値としてKrawtchouk多項式が現れます.

今回の流れは次のようになります.

関係分割 → 隣接行列 → アソシエーションスキーム → Bose–Mesner代数 → 原始冪等元 → 内部分布・双対分布 → MacWilliams恒等式

アソシエーションスキーム的な符号理論の古典的な出発点は Delsarte [Del73] です. 距離分布,MacWilliams変換,線形計画法まで含めて, アソシエーションスキームと符号理論の関係を概観する文献としては Delsarte–Levenshtein [DL98] があります. アソシエーションスキームの体系的な文献としては Bannai–Ito [BI84] が標準的です. また,距離正則グラフとの関係も含めた詳しい解説として Brouwer–Cohen–Neumaier [BCN89] があります. 符号理論におけるMacWilliams恒等式とKrawtchouk多項式については MacWilliams–Sloane [MS77, Chapter 5] も古典的な標準文献です. 符号理論で使うアソシエーションスキームの基本事項については, Camion [Cam98] も有用です.

有限集合上の関係を行列で見る

アソシエーションスキームに入る前に,有限集合上の関係を行列で表す方法を見ます.

Ω\Omega を有限集合とします. Ω\Omega の元を頂点だと思うと,Ω×Ω\Omega\times \Omega の部分集合 RΩ×ΩR \subseteq \Omega \times \Omega は,向き付きの辺の集合と見ることができます. (x,y)R(x,y)\in R であるとは,xx から yy へ関係 RR がある,という意味です.

定義2.1.

有限集合 Ω\Omega 上の関係 RΩ×ΩR\subseteq \Omega\times \Omega に対して, Ω\Omega で行と列を添字づけた行列 AR\mathsf{A}_R

(AR)x,y={1,(x,y)R,0,(x,y)R(\mathsf{A}_R)_{x,y} = \begin{cases} 1, & (x,y)\in R,\\ 0, & (x,y)\notin R \end{cases}

で定める. これを RR隣接行列 (adjacency matrix) という.

この定義は,グラフの隣接行列の一般化です. 普通の単純グラフでは,二つの頂点が辺で結ばれているかどうかを 0011 で記録します. ここでは,関係 RR に属するかどうかを行列で記録しているだけです.

CΩ\C^{\Omega} を,Ω\Omega 上の複素数値関数全体とします. あるいは,Ω\Omega の各元 xx に対応する基底ベクトル exe_x を持つ複素ベクトル空間と見ても構いません. 行列 AR\mathsf{A}_RCΩ\C^{\Omega} 上の線形写像として作用します. 関数 f ⁣:ΩCf\colon \Omega\to\C に対して

(ARf)(x)=yΩ(x,y)Rf(y)(\mathsf{A}_R f)(x) = \sum_{\substack{y\in \Omega\\(x,y)\in R}} f(y)

です. つまり,AR\mathsf{A}_R は「xx と関係 RR で結ばれている yy たちの値を足す」作用素です.

例2.2(完全グラフの一座標関係).

Ω=Fq\Omega=\F_q とする. 二つの関係

R0={(a,a):aFq},R1={(a,b):a,bFq,ab}\begin{aligned} R_{0} &= \{ (a, a) : a \in \F_{q} \},\\ R_{1} &= \{ (a, b) : a, b \in \F_{q},\, a \neq b\} \end{aligned}

を考える. R0R_{0} の隣接行列は単位行列 II であり,R1R_{1} の隣接行列は JIJ - I である.ここで JJ はすべての成分が 11 の行列である. これは完全グラフ KqK_{q} の隣接行列である.

以下,IIJJ は,作用している空間に応じたサイズの単位行列・すべての成分が 11 の行列を表します. 例えば上の例では,Fq\F_{q} で添字づけられた q×qq\times q 行列です. 一方,後で Ω=FqE\Omega=\F_{q}^{E} 上の作用素として現れる IIJJ は, Ω\Omega で添字づけられた qn×qnq^{n}\times q^{n} 行列です. 必要な箇所では,一座標上の作用素か,多座標上の作用素かを明示します.

複数の関係を同時に扱うとき,重要なのはそれらが Ω×Ω\Omega\times \Omega を分割している場合です.

定義2.3.

有限集合 Ω\Omega 上の関係 R0,R1,,RdΩ×ΩR_{0}, R_{1}, \dots, R_{d} \subseteq \Omega \times \OmegaΩ×Ω\Omega\times \Omega関係分割であるとは,

Ω×Ω=R0R1Rd\Omega\times \Omega=R_0\sqcup R_1\sqcup\cdots\sqcup R_d

となることをいう.

関係分割は,任意の二点 x,yΩx, y \in \Omega の関係を,ちょうど一つの色で塗ることに対応します. このため,アソシエーションスキームは「辺に色を塗った完全グラフ」と言われることがあります. ただし,厳密には対角成分 (x,x)(x, x)R0R_{0} という色で塗っているので, ループを含めた完全グラフを色分けしていると思うのが自然です. ただし,ただ色を塗ればよいわけではありません. 色の付き方に強い規則性を要求します.それが次節の定義です.

アソシエーションスキーム

本稿では,最も基本的で符号理論に十分な対称アソシエーションスキームを扱います. 一般には非対称なものもありますが,Hammingスキームは対称なので,まずはこの場合に限るのが見通しやすいです.

定義3.1.

有限集合 Ω\Omega と,空でない関係 R0,R1,,RdΩ×ΩR_{0}, R_{1}, \dots, R_{d} \subseteq \Omega \times \Omega による Ω×Ω\Omega\times \Omega の関係分割

Ω×Ω=R0R1Rd\Omega \times \Omega = R_{0} \sqcup R_{1} \sqcup \dots \sqcup R_{d}

対称アソシエーションスキーム (symmetric association scheme) であるとは, 次の条件を満たすことをいう:

  1. R0={(x,x):xΩ}R_{0} = \{ (x, x) : x \in \Omega \} である.

  2. ii について,(x,y)Ri(x, y) \in R_{i} ならば (y,x)Ri(y, x) \in R_{i} である.

  3. 任意の 0i,j,kd0 \leq i, j ,k \leq d に対して, (x,y)Rk(x, y) \in R_{k} を満たす x,yΩx, y \in \Omega を取ると,

    {zΩ:(x,z)Ri, (z,y)Rj}\card{\{ z \in \Omega : (x, z) \in R_{i},\ (z, y) \in R_{j} \}}

    xx, yy の取り方によらず,ii, jj, kk のみによって定まる.

RkR_{k} を空でないと仮定しているので, 条件 (A3) で (x,y)Rk(x, y)\in R_{k} を取ることに曖昧さはありません.

条件 (A3) に出てくる数を pijkp_{ij}^{k} と書き,交叉数 (intersection number) と呼びます.

この定義の意味を言葉で言うと,次のようになります. 二点 xx, yy の関係が RkR_{k} であるとします. このとき,xx から見て RiR_{i} の位置にあり,かつ yy から見て RjR_{j} の位置にある点 zz の個数が, 具体的な xx, yy に依存せず,関係の種類 ii, jj, kk だけで決まる,ということです. つまり,関係の色分けが非常に均一であることを要求しています.

隣接行列で書くと,この条件はとても自然に見えます. RiR_{i} の隣接行列を AiARi\mathsf{A}_{i} \coloneqq \mathsf{A}_{R_{i}} と書きます.すると,行列積 AiAj\mathsf{A}_{i}\mathsf{A}_{j}(x,y)(x, y) 成分は

(AiAj)x,y=zΩ(Ai)x,z(Aj)z,y(\mathsf{A}_i\mathsf{A}_j)_{x,y} = \sum_{z\in \Omega}(\mathsf{A}_i)_{x,z}(\mathsf{A}_j)_{z,y}

です.これは,(x,z)Ri(x, z) \in R_{i} かつ (z,y)Rj(z, y) \in R_{j} を満たす zz の個数を数えています. したがって,アソシエーションスキームの条件は,行列積が再び同じ隣接行列たちの線形結合で書けることを意味します.

定理3.2.

対称アソシエーションスキームの隣接行列は

AiAj=k=0dpijkAk\mathsf{A}_{i} \mathsf{A}_{j} = \sum_{k=0}^{d}p_{ij}^{k}\mathsf{A}_{k}

を満たす.

証明

両辺の (x,y)(x,y) 成分を比較する. (x,y)Rk(x,y)\in R_{k} であるとする. 左辺の (x,y)(x,y) 成分は, (x,z)Ri(x,z)\in R_{i} かつ (z,y)Rj(z,y)\in R_{j} を満たす zz の個数である. アソシエーションスキームの定義より,これは pijkp_{ij}^{k} に等しい. 一方,右辺の (x,y)(x,y) 成分は,(x,y)(x,y) が属する関係が RkR_{k} であるため,

=0dpij(A)x,y=pijk\sum_{\ell=0}^{d}p_{ij}^{\ell}(\mathsf{A}_{\ell})_{x,y} = p_{ij}^{k}

である.よって両辺の成分は一致する.

証明終わり

つまり,交叉数条件は「関係 RiR_i をたどってから関係 RjR_j をたどる」という操作が, 再び元の関係 R0,,RdR_0,\dots,R_d の線形結合として表せることを保証しています. このため,関係分割は単なる分類ではなく,隣接行列のなす行列代数を作ります.

また,関係が Ω×Ω\Omega \times \Omega を分割しているので,

A0+A1++Ad=J\mathsf{A}_{0} + \mathsf{A}_{1} + \dots + \mathsf{A}_{d} = J

です.ここで JJ はすべての成分が 11 の行列です. さらに R0R_0 は対角関係なので A0=I\mathsf{A}_{0} = I です.

Bose–Mesner代数

アソシエーションスキームの隣接行列たちは,行列の積で閉じています. そこで,これらの行列が張るベクトル空間を考えます.

定義4.1.

対称アソシエーションスキーム (Ω,{Ri}i=0d)(\Omega, \{R_{i} \}_{i = 0}^{d}) の隣接行列を A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} とする. これらが張る複素ベクトル空間

A=SpanC{A0,A1,,Ad}MatΩ(C)\mathcal{A} = \Span_{\C}\{\mathsf{A}_0,\mathsf{A}_1,\dots,\mathsf{A}_d\} \subseteq \Mat_{\Omega}(\C)

を,このスキームのBose–Mesner代数 (Bose–Mesner algebra) という.

定理 3.2 により, A\mathcal{A} は行列の積で閉じています. また,A0=I\mathsf{A}_0=I なので単位元を持ちます. さらに,R0,,RdR_0,\dots,R_dΩ×Ω\Omega\times \Omega の分割なので, A0,,Ad\mathsf{A}_0,\dots,\mathsf{A}_d は互いに重ならない位置にだけ 11 を持ちます. したがって,もし

c0A0++cdAd=0c_{0} \mathsf{A}_{0} + \dots + c_{d}\mathsf{A}_{d} = 0

なら,(x,y)Rk(x, y) \in R_{k} である成分を見ることで ck=0c_{k} = 0 が得られます. ゆえに A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} は線形独立であり, dimCA=d+1\dim_{\C} \mathcal{A} = d + 1 です. 対称アソシエーションスキームでは,Ai\mathsf{A}_i は実対称行列であり, さらに互いに可換です. ただし,一般に実対称行列どうしが可換とは限りません. ここで可換性が成り立つのは, 定理 3.2 により

AiAj=k=0dpijkAk\mathsf{A}_i\mathsf{A}_j = \sum_{k=0}^{d}p_{ij}^{k}\mathsf{A}_k

と書け,右辺が対称行列の線形結合だからです. 実際,

AiAj=(AiAj)T=AjTAiT=AjAi\mathsf{A}_i\mathsf{A}_j = (\mathsf{A}_i\mathsf{A}_j)^T = \mathsf{A}_j^T\mathsf{A}_i^T = \mathsf{A}_j\mathsf{A}_i

となります. したがって,A\mathcal{A} は実対称で互いに可換な隣接行列 A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} によって張られる可換な複素行列代数であり, これらの隣接行列は線形代数の意味で同時対角化できます. この同時対角化から,Bose–Mesner代数のもう一つの基底である原始冪等元が得られます. 以下では,この事実を有限次元の線形代数だけで確認します.

定理4.2.

対称アソシエーションスキームのBose–Mesner代数 A\mathcal{A} には, 行列 E0,E1,,EdA\mathsf{E}_{0}, \mathsf{E}_{1}, \dots, \mathsf{E}_{d} \in \mathcal{A} が存在して,次が成り立つ:

  1. ErEs=0\mathsf{E}_{r} \mathsf{E}_{s} = 0 (rsr \neq s).

  2. Er2=Er\mathsf{E}_{r}^{2} = \mathsf{E}_{r}

  3. E0+E1++Ed=I\mathsf{E}_{0} + \mathsf{E}_{1} + \dots + \mathsf{E}_{d} = I

  4. E0,E1,,Ed\mathsf{E}_{0}, \mathsf{E}_{1}, \dots, \mathsf{E}_{d}A\mathcal{A} の基底である.

  5. Ai\mathsf{A}_{i} は,それぞれの Er\mathsf{E}_{r} の像の上でスカラー倍として作用する.

  6. Er\mathsf{E}_{r} は,A\mathcal{A} の中でこれ以上非自明な直交冪等元の和に分解できない.

これらの Er\mathsf{E}_{r}原始冪等元 (primitive idempotents) という.

証明

上で見たように,A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} は互いに可換な実対称行列である. したがって,線形代数の同時対角化定理により, CΩ\C^{\Omega} はこれらの行列の共通固有空間の直交直和に分解する.

共通固有値の組をすべて集めた集合を Λ\Lambda と書く. つまり,λΛ\lambda \in \Lambda

λ=(λ0,λ1,,λd)Cd+1\lambda = (\lambda_{0}, \lambda_{1}, \dots, \lambda_{d}) \in \C^{d+1}

という形の組であり,対応する共通固有空間

Wλ={vCΩ:Aiv=λiv for all 0id}W_{\lambda} = \{ v \in \C^{\Omega}: \mathsf{A}_{i} v = \lambda_{i} v \text{ for all } 0 \leq i \leq d\}

00 でないものとする. 同時対角化より

CΩ=λΛWλ\C^{\Omega} = \bigoplus_{\lambda\in\Lambda} W_{\lambda}

という直交直和分解が得られる.

λΛ\lambda \in \Lambda に対して, WλW_{\lambda} への直交射影を Fλ\mathsf{F}_{\lambda} と書く.

射影の基本性質

直交直和分解から,

FλFμ=0(λμ),Fλ2=Fλ,λΛFλ=I\mathsf{F}_{\lambda}\mathsf{F}_{\mu} = 0 \quad(\lambda \neq \mu), \qquad \mathsf{F}_{\lambda}^{2} = \mathsf{F}_{\lambda}, \qquad \sum_{\lambda \in \Lambda} \mathsf{F}_{\lambda} = I

が成り立つ. また,各 Ai\mathsf{A}_{i}WλW_{\lambda} 上で λi\lambda_{i} 倍として作用するので,

Ai=λΛλiFλ\mathsf{A}_{i} = \sum_{\lambda \in \Lambda} \lambda_{i} \mathsf{F}_{\lambda}

と書ける.

次に,各 Fλ\mathsf{F}_{\lambda} が実際に A\mathcal{A} に属することを示す.

FλA\mathsf{F}_{\lambda} \in \mathcal{A} であること

λΛ\lambda \in \Lambda を固定する. μΛ\mu \in \Lambdaμλ\mu \neq \lambda なら, 共通固有値の組として異なるので,ある添字 i=i(μ)i = i(\mu) が存在して λi(μ)μi(μ)\lambda_{i(\mu)} \neq \mu_{i(\mu)} となる. そこで,多項式

pλ(X0,,Xd)=μΛμλXi(μ)μi(μ)λi(μ)μi(μ)p_\lambda(X_{0}, \dots, X_{d}) = \prod_{\substack{\mu \in \Lambda \\ \mu \neq \lambda}} \frac{X_{i(\mu)}-\mu_{i(\mu)}}{\lambda_{i(\mu)}-\mu_{i(\mu)}}

を考える.

この多項式を,可換な行列 A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} に代入する. WλW_{\lambda} 上では,各 Ai\mathsf{A}_{i}λi\lambda_{i} 倍として作用するので, pλ(A0,,Ad)p_\lambda(\mathsf{A}_{0}, \dots, \mathsf{A}_{d})WλW_{\lambda} 上で 11 倍として作用する. 一方,νλ\nu \neq \lambda のとき,WνW_{\nu} 上では, 積の中の μ=ν\mu = \nu に対応する因子が 00 になる. したがって pλ(A0,,Ad)p_\lambda(\mathsf{A}_{0}, \dots, \mathsf{A}_{d})WνW_{\nu} 上で 00 倍として作用する.

よって

pλ(A0,,Ad)=Fλp_\lambda(\mathsf{A}_{0}, \dots, \mathsf{A}_{d}) = \mathsf{F}_{\lambda}

が成り立つ. 左辺は A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} の和と積で作られている. A\mathcal{A} は行列積で閉じているので, FλA\mathsf{F}_{\lambda} \in \mathcal{A} が従う.

続いて,Λ\Lambda の元の個数を調べる.

共通固有値の組の個数は d+1d+1 個であること

Λ\Lambda の元の個数を mm とする. まず,上で示したように, Fλ\mathsf{F}_{\lambda} たちは A\mathcal{A} に属する非零な直交冪等元である. 特に,これらは線形独立である.実際,

λΛcλFλ=0\sum_{\lambda \in \Lambda} c_{\lambda}\mathsf{F}_{\lambda} = 0

として,両辺を WμW_{\mu} 上に制限すると cμ=0c_{\mu} = 0 が従う.よって

mdimCAm \leq \dim_{\C} \mathcal{A}

である.

逆向きの不等式を示す. 任意の MA\mathsf{M} \in \mathcal{A}

M=c0A0++cdAd\mathsf{M} = c_{0}\mathsf{A}_{0} + \dots + c_{d}\mathsf{A}_{d}

の形で表せる. このとき,WλW_{\lambda} 上で M\mathsf{M}c0λ0++cdλdc_{0}\lambda_{0} + \dots + c_{d}\lambda_{d} 倍として作用する. したがって,M\mathsf{M} の作用は, 各 WλW_{\lambda} 上での固有値によって完全に決まる.

そこで,写像 Φ ⁣:ACΛ\Phi \colon \mathcal{A} \to \C^{\Lambda}

Φ(M)(M が Wλ 上で持つ固有値)λΛ\Phi(\mathsf{M}) \coloneqq \bigl( \text{$\mathsf{M}$ が $W_\lambda$ 上で持つ固有値} \bigr)_{\lambda\in\Lambda}

で定める. もし Φ(M)=0\Phi(\mathsf{M}) = 0 なら,M\mathsf{M} はすべての WλW_{\lambda} 上で 00 として作用する. 直交直和分解

CΩ=λΛWλ\C^{\Omega} = \bigoplus_{\lambda \in \Lambda} W_{\lambda}

より,これは M\mathsf{M} が零行列であることを意味する. したがって Φ\Phi は単射であり,

dimCAm\dim_{\C} \mathcal{A} \leq m

である.

以上より

m=dimCAm = \dim_{\C} \mathcal{A}

である. すでに A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} は線形独立であることを見たので,

dimCA=d+1\dim_{\C} \mathcal{A} = d + 1

が成り立つ.以上により m=d+1m = d + 1 が示された.

したがって,Λ\Lambda の元を λ(0),λ(1),,λ(d)\lambda^{(0)}, \lambda^{(1)}, \dots, \lambda^{(d)} と番号づけることができる. ここで

ErFλ(r)(0rd)\mathsf{E}_{r} \coloneqq \mathsf{F}_{\lambda^{(r)}} \qquad (0 \leq r \leq d)

と定める.

定理の列挙事項の確認

Er\mathsf{E}_{r} は直交射影なので, Er2=Er\mathsf{E}_{r}^{2} = \mathsf{E}_{r} である. また,異なる共通固有空間への直交射影なので,

ErEs=0(rs)\mathsf{E}_{r} \mathsf{E}_{s} = 0 \qquad (r \neq s)

である. 共通固有空間の直和が全空間なので,

E0+E1++Ed=I\mathsf{E}_{0} + \mathsf{E}_{1} + \dots + \mathsf{E}_{d} = I

も成り立つ.

さらに,E0,,Ed\mathsf{E}_{0}, \dots, \mathsf{E}_{d}A\mathcal{A} に属する d+1d + 1 個の線形独立な元である. 一方,dimCA=d+1\dim_{\C} \mathcal{A} = d + 1 なので,これらは A\mathcal{A} の基底である.

また,各 Ai\mathsf{A}_{i}Wλ(r)=Er(CΩ)W_{\lambda^{(r)}} = \mathsf{E}_{r}(\C^{\Omega}) 上で λi(r)\lambda_{i}^{(r)} 倍として作用する. したがって,各 Ai\mathsf{A}_{i} はそれぞれの Er\mathsf{E}_{r} の像の上でスカラー倍として作用する.

最後に,これらの冪等元が A\mathcal{A} の中で原始的であることを確認する.

原始性

ある rr について, Er=G+H\mathsf{E}_{r} = \mathsf{G} + \mathsf{H} の形で,A\mathcal{A} に属する二つの直交冪等元 G,H\mathsf{G},\mathsf{H} の和に分解されたとする. つまり

G2=G,H2=H,GH=0\mathsf{G}^{2} = \mathsf{G}, \qquad \mathsf{H}^{2} = \mathsf{H}, \qquad \mathsf{G}\mathsf{H} = 0

とする.

G\mathsf{G}H\mathsf{H}A\mathcal{A} に属するので, 各共通固有空間 Wλ(s)W_{\lambda^{(s)}} 上でスカラー倍として作用する. G\mathsf{G}Wλ(s)W_{\lambda^{(s)}} 上での固有値を gsg_{s}H\mathsf{H}Wλ(s)W_{\lambda^{(s)}} 上での固有値を hsh_{s} と書く. G\mathsf{G}H\mathsf{H} は冪等元なので,

gs2=gs,hs2=hsg_{s}^{2} = g_{s}, \qquad h_{s}^{2} = h_{s}

である.したがって gs,hs{0,1}g_{s}, h_{s} \in \{ 0, 1 \} である.

一方,Er=G+H\mathsf{E}_{r} = \mathsf{G} + \mathsf{H} である. srs \neq r のとき,Er\mathsf{E}_{r}Wλ(s)W_{\lambda^{(s)}} 上で 00 として作用するので, gs+hs=0g_{s} + h_{s} = 0 である. gs,hs{0,1}g_{s}, h_{s} \in \{ 0, 1 \} だから,

gs=hs=0g_{s} = h_{s} = 0

となる.

s=rs = r のとき,Er\mathsf{E}_{r}Wλ(r)W_{\lambda^{(r)}} 上で 11 として作用するので, gr+hr=1g_{r} + h_{r} = 1 である. したがって

(gr,hr)=(1,0)または(gr,hr)=(0,1)(g_{r}, h_{r}) = (1, 0) \quad\text{または}\quad (g_{r}, h_{r}) = (0, 1)

である.

以上より,G\mathsf{G}H\mathsf{H} の一方は Wλ(r)W_{\lambda^{(r)}} 上でだけ 11 として作用し,それ以外では 00 として作用する. つまり一方は Er\mathsf{E}_{r} である. もう一方はすべての共通固有空間上で 00 として作用するので,零行列である.

したがって

{G,H}={Er,0}\{ \mathsf{G}, \mathsf{H} \} = \{ \mathsf{E}_{r}, 0 \}

である.つまり,Er\mathsf{E}_{r}A\mathcal{A} の中でこれ以上非自明な直交冪等元の和に分解できない.

以上で定理が証明された.

証明終わり

まず,この番号づけが自然であることを確認しておきます. 対称アソシエーションスキームでは,各隣接行列 Ai\mathsf{A}_{i} の行和は一定です. 実際,xΩx\in\Omega に対して (x,x)R0(x,x)\in R_{0} なので,交叉数 pii0p_{ii}^{0} の定義から

pii0={zΩ:(x,z)Ri, (z,x)Ri}p_{ii}^{0} = \card{\{z\in\Omega:(x,z)\in R_{i},\ (z,x)\in R_{i}\}}

です. 対称性より (z,x)Ri(z,x)\in R_{i}(x,z)Ri(x,z)\in R_{i} と同値なので,

pii0={zΩ:(x,z)Ri}p_{ii}^{0} = \card{\{z\in\Omega:(x,z)\in R_{i}\}}

となります. 右辺は Ai\mathsf{A}_{i}xx 行の和であり,交叉数は xx に依存しません. したがって Ai\mathsf{A}_{i} の行和は一定です. このため,定数関数空間はすべての Ai\mathsf{A}_{i} の共通固有空間になります.

以後,定数関数全体からなる一次元空間への射影を E0\mathsf{E}_{0} と番号づけます. この射影は

E0=1ΩJ\mathsf{E}_{0} = \frac{1}{\card{\Omega}}J

です. 実際,JJ はすべての成分が 11 の行列なので, Ω1J\card{\Omega}^{-1}J は定数関数空間への直交射影です. また

J=A0+A1++AdJ= \mathsf{A}_{0} + \mathsf{A}_{1} + \dots + \mathsf{A}_{d}

であるため,この射影も A\mathcal A に属します.

冪等元とは,二乗して自分自身に戻る元のことです. 一般の冪等行列は,ある直和分解に沿った射影を表しています. 今回の原始冪等元は実対称,つまり自己随伴でもあるので,標準内積に関する直交射影になっています. したがって,原始冪等元は,Bose–Mesner代数が見ている自然な固有空間への直交射影です. ここで「原始」とは,Bose–Mesner代数の中でこれ以上非自明な直交冪等元の和に分解できない,という意味です. 行列としてランク 11 であるという意味ではありません. 実際,共通固有空間は一般に一次元とは限りません.

隣接行列と原始冪等元は,どちらもBose–Mesner代数の基底になります. したがって,互いに線形結合で表せます. 具体的な係数は Hammingスキームの節で書き下します.

つまり,アソシエーションスキームでは,次の二つの基底を行き来します.

関係を表す基底:A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} ↔ 固有空間への射影を表す基底:E0,,Ed\mathsf{E}_{0}, \dots, \mathsf{E}_{d}.

MacWilliams恒等式のアソシエーションスキーム的証明では, この「関係側」と「固有空間側」の行き来が本質になります. 符号の重み分布は関係側で定義され,双対分布は固有空間側への射影で定義されます. 本節で扱ったBose–Mesner代数や原始冪等元の線形代数的な扱いについては, Godsil [God93] も参照しやすいです.

Hammingスキーム

ここから,符号理論に現れる最も重要なアソシエーションスキームであるHammingスキームを見ます.

座標集合 EE を有限集合とし,n=En = \card{E} とします. 後で出てくる原始冪等元 Ej\mathsf{E}_j とは別の記号であり,字体で区別します. 頂点集合を ΩFqE\Omega \coloneqq \F_{q}^{E} とします. つまり,頂点は長さ nnqq 元語です. 二つの語 x,yΩx, y \in \Omega のHamming距離を

dist(x,y)wt(xy)\dist(x, y) \coloneqq \wt(x - y)

で定めます.

定義5.1.

0in0\leq i\leq n に対して

Ri{(x,y)Ω×Ω:dist(x,y)=i}R_{i} \coloneqq \{ (x, y) \in \Omega \times \Omega : \dist(x, y) = i \}

と定める. この関係分割から得られるアソシエーションスキームを Hammingスキーム (Hamming scheme) と呼び,H(n,q)H(n, q) と書く.

RiR_{i} の隣接行列を Ai\mathsf{A}_{i} と書きます. つまり,Ai\mathsf{A}_{i} は,距離が ii である二つの語を結ぶ行列です.

定理5.2.

H(n,q)H(n,q) は対称アソシエーションスキームである.

証明

R0R_{0} は対角関係であり,Hamming距離は対称なので RiR_{i} も対称である. また,任意の二つの語 xx, yy はちょうど一つの距離 0,1,,n0, 1, \dots, n を持つので, R0,,RnR_{0}, \dots, R_{n}Ω×Ω\Omega \times \Omega を分割する. 各 RiR_{i} が空でないことも分かる. 実際,零語 0FqE0 \in \F_{q}^{E} と,ちょうど ii 個の座標でだけ非零な語 yy を取れば dist(0,y)=i\dist(0, y) = i である.

交叉数の条件を確認する. dist(x,y)=k\dist(x, y) = k とする. zΩz\in \Omega

dist(x,z)=i,dist(z,y)=j\dist(x, z) = i, \qquad \dist(z, y) = j

を満たす個数を数えたい. dist(x,y)=k\dist(x, y) = k なので,xe=yex_{e} = y_{e} である座標は nkn - k 個, xeyex_{e} \neq y_{e} である座標は kk 個ある.

各座標での寄与は,次の表にまとめられる. ここで Δx\Delta_xΔy\Delta_y は,それぞれ dist(x,z)\dist(x, z)dist(z,y)\dist(z, y) への一座標分の寄与を表す:

状況(Δx,Δy)(\Delta_x, \Delta_y)選び方の数
xe=ye, ze=xe=yex_{e} = y_{e},\ z_{e} = x_{e} = y_{e}(0,0)(0, 0)11
xe=ye, zexex_{e} = y_{e},\ z_{e} \neq x_{e}(1,1)(1, 1)q1q - 1
xeye, ze=xex_{e} \neq y_{e},\ z_{e} = x_{e}(0,1)(0, 1)11
xeye, ze=yex_{e} \neq y_{e},\ z_{e} = y_{e}(1,0)(1, 0)11
xeye, zexe,yex_{e} \neq y_{e},\ z_{e} \neq x_{e}, y_{e}(1,1)(1, 1)q2q - 2

したがって,ssdist(x,z)\dist(x, z) を,ttdist(z,y)\dist(z, y) を記録すると, 表の前二行から,xe=yex_{e} = y_{e} の一座標寄与母関数は

1+(q1)st1 + (q - 1)st

であり,後三行から,xeyex_e\neq y_e の一座標寄与母関数は

s+t+(q2)sts + t + (q - 2)st

である. 各座標での選択は独立なので,全体の個数はこれらの一座標母関数の積で与えられる. ここで ss の指数が dist(x,z)\dist(x,z) への寄与を記録し, tt の指数が dist(z,y)\dist(z,y) への寄与を記録している. よって,dist(x,z)=i\dist(x,z)=i かつ dist(z,y)=j\dist(z,y)=j を満たす zz の個数は例えば

[sitj](1+(q1)st)nk(s+t+(q2)st)k\lbrack s^{i} t^{j} \rbrack \bigl( 1 + (q - 1)st \bigr)^{n - k} \bigl( s + t + (q - 2)st \bigr)^{k}

と書ける. ここで [sitj]\lbrack s^{i} t^{j} \rbrack は,展開した多項式の中の sitjs^{i} t^{j} の係数を取り出す記号である. また q=2q = 2 の場合には q2=0q - 2 = 0 なので,「どちらとも異なる」という選択肢が存在しないことを表している. これは xx, yy の具体的な値ではなく,nn, qq, ii, jj, kk のみに依存する. したがって交叉数の条件が成り立つ.

証明終わり

この証明では交叉数の明示公式は使いませんでした. 重要なのは,二点 xx, yy の具体的な位置ではなく,距離 kk だけが数え上げを支配することです. これがHamming空間の均質性です.

Ai\mathsf{A}_{i} の各行の和は,固定した語から距離 ii にある語の数です. これは

vi=(ni)(q1)iv_{i} = \binom{n}{i}(q-1)^{i}

です.この viv_{i} を関係 RiR_{i}分岐指数 (valency) と呼びます. 距離 ii の座標を選ぶ方法が (ni)\binom{n}{i} 通りあり, それぞれの座標で元の値と異なる値を q1q - 1 通りに選べるからです.

Hammingスキームの固有空間

HammingスキームのBose–Mesner代数を理解するには, 隣接行列 A0,,An\mathsf{A}_{0}, \dots, \mathsf{A}_{n} を同時対角化する必要があります. ここでKrawtchouk多項式が現れます.

まず一座標から始めます. 一座標の関数空間を U=CFqU = \C^{\F_q} とします. UU の中には,定数関数全体からなる一次元部分空間 U0=C1U_{0} = \C\one があります. また,値の和が 00 になる関数全体を

U1={fU:aFqf(a)=0}U_{1} = \left\{ f \in U : \sum_{a \in \F_{q}} f(a) = 0 \right\}

とおきます. 標準内積に関して U=U0U1U = U_{0} \oplus U_{1} という直交分解が成り立ちます.

一座標で「異なる値へ移る」隣接行列を N=JIN = J - I とします. これは完全グラフ KqK_{q} の隣接行列です. NNU0U_{0} 上では固有値 q1q - 1 で作用し,U1U_{1} 上では固有値 1-1 で作用します. 実際,定数関数では各点から q1q - 1 個の別の点へ行くので固有値 q1q - 1 です. 一方,fU1f \in U_{1} なら

(Nf)(a)=baf(b)=bFqf(b)f(a)=f(a)(Nf)(a) = \sum_{b \neq a} f(b) = \sum_{b \in \F_{q}}f(b) - f(a) = -f(a)

です.

本稿で使うテンソル積は,各座標の一変数関数を掛け合わせて多座標の関数を作る操作, および一座標の作用素を各座標に独立に作用させる操作だと思えば十分です. テンソル積の一般論は,この記事の理解には不要です.

多座標空間は

CΩ=CFqEeEU\C^{\Omega} = \C^{\F_{q}^{E}} \cong \bigotimes_{e \in E} U

です. 各 eEe \in E に一座標関数 feUf_{e} \in U を選ぶと, 純テンソル eEfe\bigotimes_{e \in E} f_{e}

x=(xe)eEeEfe(xe)x = (x_{e})_{e \in E} \longmapsto \prod_{e \in E} f_{e}(x_{e})

という関数を表します. また,一座標作用素 Te ⁣:UUT_{e} \colon U \to U のテンソル積 eETe\bigotimes_{e \in E} T_{e} は,各座標の成分にそれぞれ TeT_{e} を独立に作用させるものだと考えてください. 例えば E={1,2}E = \{ 1, 2 \} のとき,f1f2f_{1} \otimes f_{2}

(a,b)f1(a)f2(b)(a, b) \longmapsto f_{1}(a)f_{2}(b)

という二変数関数を表します.また T1T2T_{1} \otimes T_{2}

(T1T2)(f1f2)=(T1f1)(T2f2)(T_{1} \otimes T_{2})(f_{1} \otimes f_{2}) = (T_{1} f_{1}) \otimes (T_{2} f_{2})

と作用するので,第一座標に T1T_{1},第二座標に T2T_{2} を掛ける作用素です. 一般の EE でも,これを各座標へ拡張しているだけです. 各座標で U=U0U1U = U_{0} \oplus U_{1} と分解すると,

CΩ=SE(eSU1eSU0)\C^{\Omega} = \bigoplus_{S\subseteq E} \left( \bigotimes_{e\in S}U_1 \otimes \bigotimes_{e\notin S}U_0 \right)

という直交分解が得られます. ここで,SS は「非定数方向を選んだ座標集合」を表しています.

定義6.1.

0wn0 \leq w \leq n に対して

Vw=SES=w(eSU1eSU0)V_w = \bigoplus_{\substack{S\subseteq E\\ \card{S} = w}} \left( \bigotimes_{e\in S}U_1 \otimes \bigotimes_{e\notin S}U_0 \right)

と定める.

すると

CΩ=V0V1Vn\C^{\Omega} = V_{0} \oplus V_{1} \oplus \dots \oplus V_{n}

です. 各 S=w\card{S}=w に対する直和成分の次元は (dimU1)w=(q1)w(\dim U_{1})^{w} = (q - 1)^{w} であり, そのような SS(nw)\binom{n}{w} 個あるので,

dimVw=(nw)(q1)w\dim V_{w} = \binom{n}{w}(q - 1)^{w}

です. 直感的には,VwV_{w} は「ww 個の座標で非定数方向を持つ成分」です. この分解が,Hammingスキームの固有空間分解になります.

次に,距離行列 Aj\mathsf{A}_j をまとめた母関数を考えます. 右辺に現れる IINN は,一座標空間 U=CFqU = \C^{\F_{q}} 上の作用素です. 一方,左辺の Aj\mathsf{A}_{j} は多座標空間 CΩ=CFqE\C^{\Omega} = \C^{\F_{q}^{E}} 上の作用素です. テンソル積を取ることで,一座標の作用を全座標へ独立に拡張しています. 一座標では,同じ値を保つ作用が II,異なる値へ移る作用が N=JIN = J - I です. したがって,多座標では

j=0nAjzj=eE(I+zN)(6.1)\sum_{j=0}^{n}\mathsf{A}_{j} z^{j} = \bigotimes_{e \in E}(I + zN) \tag{6.1}

が成り立ちます. 右辺を展開すると,zjz^{j} の係数は,ちょうど jj 個の座標で値を変え, 残りの座標では値を保つ作用だからです.

定義6.2.

0wn0 \leq w \leq n に対して,数 K0(w),,Kn(w)\Kraw_{0}(w), \dots, \Kraw_{n}(w)

j=0nKj(w)zj=(1+(q1)z)nw(1z)w(6.2)\sum_{j=0}^{n}\Kraw_{j}(w)z^{j} = \bigl( 1 + (q - 1)z \bigr)^{n - w}(1 - z)^{w} \tag{6.2}

によって定める. これを,qq 元Hammingスキームに付随するKrawtchouk多項式の値と呼ぶ.

母関数を展開すると,

Kj(w)==0j(1)(q1)j(w)(nwj)\Kraw_j(w) = \sum_{\ell=0}^{j} (-1)^\ell (q-1)^{j-\ell} \binom{w}{\ell} \binom{n-w}{j-\ell}

となる. ここで二項係数は範囲外では 00 とみなしている.

この定義は,Krawtchouk多項式を「母関数で定義した多項式」として導入しているようにも見えますが, ここでの意味は少し違います. 式 (6.2) は,Hammingスキームの隣接行列の固有値母関数です.

定理6.3.

0j,wn0 \leq j, w \leq n とする. Hammingスキームの隣接行列 Aj\mathsf{A}_{j} は,固有空間 VwV_{w} 上で Kj(w)\Kraw_{j}(w) 倍として作用する.

証明

VwV_w の元は,ww 個の座標で U1U_{1} 方向,残りの nwn - w 個の座標で U0U_{0} 方向を持つテンソルの和である. 一座標の行列 NN は,U0U_{0} 上で q1q - 1 倍,U1U_{1} 上で 1-1 倍として作用した. したがって,jAjzj\sum_{j} \mathsf{A}_{j} z^{j}VwV_{w} 上で

(1+(q1)z)nw(1z)w\bigl( 1 + (q - 1)z \bigr)^{n - w}(1 - z)^{w}

倍として作用する. zjz^{j} の係数を比較すると,Aj\mathsf{A}_{j} の固有値は Kj(w)\Kraw_{j}(w) である.

証明終わり

この定理により,Krawtchouk多項式は次のように解釈できます.

Krawtchouk多項式は,Hammingスキームの距離 jj の隣接行列が, 第 ww 固有空間 VwV_{w} 上で持つ固有値である.

先に述べたように,添字の役割をここで整理しておきます. Ai\mathsf{A}_{i} の添字 ii は距離側の番号であり, VwV_{w} や後で出てくる Ew\mathsf{E}_{w} の添字 ww は固有空間側の番号です. したがって Ki(w)\Kraw_{i}(w) は,距離 ii の隣接行列 Ai\mathsf{A}_{i} が 第 ww 固有空間 VwV_w 上で持つ固有値を表しています. 一方,後で

Ej=1qni=0nKj(i)Ai\mathsf{E}_{j} = \frac{1}{q^{n}} \sum_{i=0}^{n} \Kraw_{j}(i) \mathsf{A}_{i}

と書くときは,jj が固有空間側,ii が距離側です. Hammingスキームでは,この二つの側がKrawtchouk多項式によって結ばれます.

特に j=1j = 1 の場合,

K1(w)=(q1)(nw)w=(q1)nqw\Kraw_{1}(w) = (q - 1)(n - w) - w = (q - 1)n - qw

であり,w=0,1,,nw = 0, 1, \dots, n に対して互いに異なる値を取ります. したがって V0,V1,,VnV_{0}, V_{1}, \dots, V_{n} は,少なくとも A1\mathsf{A}_{1} によってすでに区別されます. そのため,これらはHammingスキームのBose–Mesner代数に対する共通固有空間であり, 対応する直交射影が原始冪等元になります. 実際,A1\mathsf{A}_{1} の固有値が V0,,VnV_{0}, \dots, V_{n} 上で相異なるので,Lagrange補間により

Ew=u=0uwnA1K1(u)IK1(w)K1(u)\mathsf{E}_{w} = \prod_{\substack{u = 0 \\ u \neq w}}^{n} \frac{\mathsf{A}_{1} - \Kraw_{1}(u)I}{\Kraw_{1}(w)-\Kraw_{1}(u)}

と書けます. これは VwV_{w} への射影を A1\mathsf{A}_{1} の多項式として取り出している式です. したがって Ew\mathsf{E}_{w} は Bose–Mesner代数に属します. この意味で,Hammingスキームについては一般の半単純代数論に依存しなくても,原始冪等元を具体的に理解できます.

この見方が,アソシエーションスキーム的な見方の核心です. 多項式が先にあるのではなく,距離関係から作った行列代数を同時対角化すると, その固有値としてKrawtchouk多項式が現れます.

原始冪等元を具体的に書く

VwV_{w} への直交射影を Ew\mathsf{E}_{w} と書きます. すると E0,E1,,En\mathsf{E}_{0}, \mathsf{E}_{1}, \dots, \mathsf{E}_{n} はHammingスキームのBose–Mesner代数の原始冪等元です. つまり

ErEs=δr,sEr,r=0nEr=I\mathsf{E}_{r}\mathsf{E}_{s} = \delta_{r, s} \mathsf{E}_{r}, \qquad \sum_{r=0}^{n}\mathsf{E}_{r} = I

であり,各 Aj\mathsf{A}_{j}Ew\mathsf{E}_{w} の像の上で Kj(w)\Kraw_{j}(w) 倍として作用します. 像はちょうど VwV_w であり,

dimEw(CΩ)=dimVw=(nw)(q1)w\dim \mathsf{E}_w(\C^{\Omega}) = \dim V_{w} = \binom{n}{w}(q-1)^{w}

です. したがって,Hammingスキームの原始冪等元も一般にはランク 11 ではありません.

この射影を,隣接行列 Ai\mathsf{A}_i の線形結合として具体的に書くことができます. そのために,一座標の射影を見ます. U0U_{0} への直交射影を Π0\Pi_{0}U1U_{1} への直交射影を Π1\Pi_{1} とします. すると

Π0=1qJ,Π1=I1qJ\Pi_{0} = \frac{1}{q}J, \qquad \Pi_{1} = I - \frac{1}{q}J

です. 成分で書くと,a,bFqa, b \in \F_{q} に対して

Π0(a,b)=1qΠ1(a,b)={q1q,a=b,1q,ab\Pi_{0}(a, b) = \frac{1}{q} \qquad \Pi_{1}(a,b) = \begin{cases} \dfrac{q-1}{q}, & a = b,\\[4pt] -\dfrac{1}{q}, & a \neq b \end{cases}

です.

SES\subseteq E に対して,SS の座標では Π1\Pi_1,それ以外では Π0\Pi_0 を掛けた射影を考えます. S=w\card{S} = w のものをすべて足すと Ew\mathsf{E}_{w} になります. この成分を計算すると,Krawtchouk多項式が再び現れます.

定理7.1.

Hammingスキーム H(n,q)H(n,q) の原始冪等元は

Ej=1qni=0nKj(i)Ai(7.1)\mathsf{E}_j = \frac{1}{q^n} \sum_{i=0}^{n}\Kraw_j(i)\mathsf{A}_i \tag{7.1}

と書ける.

証明

x,yΩ=FqEx,y\in \Omega=\F_q^E を取り,dist(x,y)=i\dist(x,y)=i とする. Ej\mathsf{E}_j(x,y)(x,y) 成分を計算する. Ej\mathsf{E}_j は,S=j\card{S}=j である SES\subseteq E について, SS の座標で Π1\Pi_1,それ以外で Π0\Pi_0 を掛けた射影の和である.

母関数としてまとめると,

j=0nqn(Ej)x,yzj=eE(qΠ0(xe,ye)+qΠ1(xe,ye)z).\begin{aligned} \sum_{j=0}^{n} q^n(\mathsf{E}_j)_{x,y}z^j &= \prod_{e\in E} \left(q\Pi_0(x_e,y_e)+q\Pi_1(x_e,y_e)z\right). \end{aligned}

もし xe=yex_e=y_e なら

qΠ0(xe,ye)=1,qΠ1(xe,ye)=q1q\Pi_0(x_e,y_e)=1, \qquad q\Pi_1(x_e,y_e)=q-1

である. もし xeyex_e\neq y_e なら

qΠ0(xe,ye)=1,qΠ1(xe,ye)=1q\Pi_0(x_e,y_e)=1, \qquad q\Pi_1(x_e,y_e)=-1

である. xxyy が異なる座標は ii 個,同じ座標は nin-i 個なので,

j=0nqn(Ej)x,yzj=(1+(q1)z)ni(1z)i=j=0nKj(i)zj.\sum_{j=0}^{n} q^n(\mathsf{E}_j)_{x,y}z^j = \bigl(1+(q-1)z\bigr)^{n-i}(1-z)^i = \sum_{j=0}^{n}\Kraw_j(i)z^j.

よって

(Ej)x,y=1qnKj(i).(\mathsf{E}_j)_{x,y} = \frac{1}{q^n}\Kraw_j(i).

これは,距離が ii のところで成分が qnKj(i)q^{-n}\Kraw_j(i) であることを意味する. 一方,

1qni=0nKj(i)Ai\frac{1}{q^n}\sum_{i=0}^{n}\Kraw_j(i)\mathsf{A}_i

は,Ai\mathsf{A}_i が距離 ii の場所だけに 11 を持つことから, 距離が ii の成分にちょうど qnKj(i)q^{-n}\Kraw_j(i) を置く行列である. したがって

Ej=1qni=0nKj(i)Ai\mathsf{E}_j = \frac{1}{q^n}\sum_{i=0}^{n}\Kraw_j(i)\mathsf{A}_i

となる.成分がすべて一致するので,行列として等しい.

証明終わり

この式は非常に重要です. 左辺は固有空間への射影です. 右辺は距離関係を表す隣接行列の線形結合です. つまり,Krawtchouk多項式は,

関係側の基底 Ai\mathsf{A}_i と,固有空間側の基底 Ej\mathsf{E}_{j} を結ぶ係数

になっています.

ここで一般論との対応を整理しておきます. 一般のアソシエーションスキームでは

Ai=r=0dPr(i)Er,Er=1Ωi=0dQr(i)Ai\mathsf{A}_i = \sum_{r=0}^{d}P_r(i)\mathsf{E}_r, \qquad \mathsf{E}_r = \frac{1}{\card{\Omega}} \sum_{i=0}^{d}Q_r(i)\mathsf{A}_i

と書くときの係数を,それぞれ第一固有行列 PP,第二固有行列 QQ と呼びます. 本稿の Hammingスキームの記法では

Ai=w=0nKi(w)Ew,Ej=1qni=0nKj(i)Ai\mathsf{A}_i=\sum_{w=0}^{n}\Kraw_i(w)\mathsf{E}_w, \qquad \mathsf{E}_j=\frac{1}{q^n}\sum_{i=0}^{n}\Kraw_j(i)\mathsf{A}_i

なので,Pw(i)=Ki(w)P_w(i)=\Kraw_i(w)Qj(i)=Kj(i)Q_j(i)=\Kraw_j(i) に対応しています.

Hammingスキームでは,この二方向の基底変換に同じ型のKrawtchouk多項式が現れます. ただし,一般に Kj(i)=Ki(j)\Kraw_{j}(i) = \Kraw_{i}(j) という単純な対称性が成り立つわけではありません. 正確には,価数 vi=(ni)(q1)iv_{i} = \binom{n}{i}(q-1)^{i} を用いると

viKj(i)=vjKi(j)v_{i} \Kraw_{j}(i) = v_{j}\Kraw_{i}(j)

という重み付き対称性が成り立ちます.

内部分布:符号を関係側から見る

ここから符号に戻ります. アソシエーションスキームでは,有限集合 Ω\Omega の部分集合 DΩD\subseteq \Omega に対して, その部分集合の中の二点がどの関係で結ばれているかを数えます. これが内部分布です. 内部分布や双対分布は,Delsarteのアソシエーションスキーム的符号理論で基本的な役割を果たす量です [Del73; Cam98]

ここで似た記号を一度整理しておきます. Ai\mathsf{A}_i は距離 ii の隣接行列, Ai(C)A_i(C) は線形符号 CC の重み ii の符号語数, ai(D)a_i(D) は部分集合 DD の内部分布です.

定義8.1.

部分集合 DΩD\subseteq \Omega に対して,DD特性ベクトル

1D=xDexCΩ\one_D = \sum_{x\in D}e_x \in \C^{\Omega}

で定める.

標準内積を

f,g=xΩf(x)g(x)\langle f,g\rangle = \sum_{x\in \Omega}f(x)\overline{g(x)}

とします. 隣接行列 Ai\mathsf{A}_i を使うと,DD の中で距離 ii にある順序付きペアの数は Ai1D,1D\langle \mathsf{A}_{i} \one_{D}, \one_{D} \rangle です.

定義8.2.

DΩD\subseteq \Omega を空でない部分集合とする. DD内部分布 (inner distribution) を

ai(D)=1DAi1D,1D(0in)a_i(D) = \frac{1}{\card{D}} \langle \mathsf{A}_i\one_D,\one_D\rangle \qquad (0\leq i\leq n)

で定める.

この正規化では,a0(D)=1a_0(D)=1 です. 実際,A0=I\mathsf{A}_0=I なので

a0(D)=1D1D,1D=1a_{0}(D) = \frac{1}{\card{D}} \langle \one_{D}, \one_{D} \rangle = 1

です. また,

i=0nai(D)=1Di=0nAi1D,1D=1DJ1D,1D=D\sum_{i=0}^{n}a_i(D) = \frac{1}{\card{D}} \left\langle \sum_{i=0}^{n}\mathsf{A}_i\one_D,\one_D \right\rangle = \frac{1}{\card{D}}\langle J\one_D,\one_D\rangle = \card{D}

なので,この正規化では確率分布ではありません. ai(D)a_i(D) は,DD の一点を基準に見たとき,関係 RiR_i にある DD の点の平均個数と考えるとよいです. Hammingスキームでは,「距離 ii にある DD の点の平均個数」と読めます.

線形符号の場合,内部分布は通常の重み分布と一致します.

定理8.3.

CFqEC \leq \F_{q}^{E} を線形符号とする. 通常の重み分布を Ai(C)={cC:wt(c)=i}A_{i}(C) = \card{\{ c \in C : \wt(c) = i \}} と書く. このとき ai(C)=Ai(C)a_{i}(C) = A_{i}(C) が成り立つ.

証明

Ai1C,1C\langle \mathsf{A}_i\one_C,\one_C\rangle は,

x,yC,dist(x,y)=ix,y\in C, \qquad \dist(x,y)=i

を満たす順序付きペア (x,y)(x,y) の個数である. CC は線形符号なので,差 yxy-x は再び CC に属する. また,dist(x,y)=wt(yx)\dist(x,y)=\wt(y-x) である.

重み ii の符号語 dCd\in C を一つ固定すると, yx=dy-x=d を満たすペア (x,y)C2(x,y)\in C^2 は,xCx\in C を任意に選んで y=x+dy=x+d とすればよいので, ちょうど C\card{C} 個ある. 重み ii の符号語は Ai(C)A_i(C) 個あるから,

Ai1C,1C=CAi(C).\langle \mathsf{A}_i\one_C,\one_C\rangle = \card{C}A_i(C).

したがって ai(C)=Ai(C)a_{i}(C) = A_{i}(C) である.

証明終わり

この定理は,アソシエーションスキームの言葉が符号理論の重み分布を含んでいることを示しています. 一般の部分集合 DΩD\subseteq \Omega では,ai(D)a_{i}(D) は「DD 内の距離分布」です. 線形符号では,差を取ることで通常の重み分布に戻ります.

双対分布:符号を固有空間側から見る

内部分布は,隣接行列 Ai\mathsf{A}_i を使って定義しました. これは関係側の情報です. アソシエーションスキームでは,もう一つ,原始冪等元 Ej\mathsf{E}_j を使って定義される分布があります. これが双対分布です.

定義9.1.

DΩD\subseteq \Omega を空でない部分集合とする. DD双対分布 (dual distribution) を

aj(D)=ΩD2Ej1D,1D(0jn)a_j^{\ast}(D) = \frac{\card{\Omega}}{\card{D}^2} \langle \mathsf{E}_j\one_D,\one_D\rangle \qquad (0\leq j\leq n)

で定める.

ここで

Ej1D,1D=Ej1D,Ej1D\langle \mathsf{E}_j\one_D,\one_D\rangle = \langle \mathsf{E}_j\one_D,\mathsf{E}_j\one_D\rangle

は,特性ベクトル 1D\one_DVjV_j 成分のノルム二乗です. ただし,この量をそのまま使うと,線形符号の場合の双対符号の重み分布とは尺度が合いません. そこで係数 ΩD2\displaystyle \frac{\card{\Omega}}{\card{D}^2} を掛けて,D=CD=C が線形符号であるとき aj(C)=Aj(C)a_j^{\ast}(C)=A_j(C^\perp) になるように正規化しています.

この正規化では,a0(D)=1a_0^{\ast}(D)=1 です. 実際,定数関数空間への射影は E0=Ω1J\mathsf{E}_0=\card{\Omega}^{-1}J なので

E01D,1D=D2Ω\langle \mathsf{E}_0\one_D,\one_D\rangle = \frac{\card{D}^2}{\card{\Omega}}

である. また,

j=0naj(D)=ΩD2j=0nEj1D,1D=ΩD\sum_{j=0}^{n}a_j^{\ast}(D) = \frac{\card{\Omega}}{\card{D}^2} \left\langle \sum_{j=0}^{n}\mathsf{E}_j\one_D,\one_D \right\rangle = \frac{\card{\Omega}}{\card{D}}

となる. したがって,双対分布もこの正規化では確率分布ではありません. 線形符号 CC の場合,これは C=Ω/C\card{C^{\perp}}=\card{\Omega}/\card{C} に対応し, 双対符号の重み分布の総和と一致する. 一般の部分集合 DΩD\subseteq \Omega には通常の意味での双対符号 DD^{\perp} はありません. それでも,Bose–Mesner代数の固有空間側から見た分布 aj(D)a_j^{\ast}(D) は定義できます. 非負性は,Ej\mathsf{E}_j が直交射影であることから分かります.

注意として,一般の部分集合 DD では,aj(D)a_j^{\ast}(D) は整数とは限らず, 何かの元の個数を直接数えているわけでもありません. これは,特性ベクトル 1D\one_D の固有空間成分の大きさを, 線形符号の場合に双対符号の重み分布と一致するように正規化した量です.

この定義は少し抽象的に見えるかもしれません. しかし,意味は単純です. 特性ベクトル 1D\one_D を,Hammingスキームの固有空間 V0,V1,,VnV_{0}, V_{1}, \dots, V_{n} へ分解し,その各成分の大きさを見るのです. Ej\mathsf{E}_jVjV_j への直交射影なので,

Ej1D,1D=Ej1D,Ej1D0\langle \mathsf{E}_j\one_D,\one_D\rangle = \langle \mathsf{E}_j\one_D,\mathsf{E}_j\one_D\rangle \geq 0

です. したがって双対分布は非負です.

一般の部分集合 DD に対しては,aj(D)a_j^{\ast}(D) はDelsarteの意味での双対分布です. 線形符号の場合,これは本当に双対符号の重み分布になります. この事実が,アソシエーションスキーム的証明と通常の符号理論を結びます.

次の定理では,一度だけ加法指標を使います. 目的は,アソシエーションスキームで定義した双対分布が, 線形符号の場合には通常の双対符号 CC^\perp の重み分布と一致することを確認するためです. したがって,ここで必要なのは指標論全体ではなく, 有限体の加法指標の基本的な直交関係だけです.

定理9.2.

CFqEC \leq \F_{q}^{E} を線形符号とする. このとき aj(C)=Aj(C)a_{j}^{\ast}(C) = A_{j}(C^{\perp}) が成り立つ.

証明

有限体の非自明な加法指標 ψ ⁣:FqC×\psi \colon \F_{q} \to \C^{\times} を一つ固定する. 例えば q=pmq=p^m のとき,

ψ(a)=exp(2π1pTrFq/Fp(a))\psi(a) = \exp\left(\frac{2\pi \sqrt{-1}}{p}\Tr_{\F_q/\F_p}(a)\right)

と定めると非自明な加法指標が得られる. ただし,本稿ではこの構成の詳細には立ち入らない. 以下では,非自明な加法指標の基本的な直交関係

aFqψ(ta)={q,t=0,0,t0\sum_{a\in\F_q}\psi(ta) = \begin{cases} q, & t=0,\\ 0, & t\neq 0 \end{cases}

を用いる. uFqEu\in\F_q^E に対して

χu(x)=ψ(ux)(xFqE)\chi_u(x)=\psi(u\cdot x) \qquad (x\in\F_q^E)

とおく.これは

χu(x)=ψ(ux)=eEψ(uexe)\chi_u(x) = \psi(u\cdot x) = \prod_{e\in E}\psi(u_ex_e)

と座標ごとに分解できる. したがって,一座標で見ると ue=0u_e=0 のときは定数方向に入り, ue0u_e\neq 0 のときは値の和が 00 になる方向に入ることが自然に見える. このことが,後で χuVj\chi_u\in V_jwt(u)=j\wt(u)=j が対応する理由である. 加法指標の値は絶対値 11 の複素数なので,

ψ(vx)=ψ(vx)\overline{\psi(v\cdot x)}=\psi(-v\cdot x)

であることも使う. この関数たちは正規化すれば CΩ\C^{\Omega} の正規直交基底になる. 実際,u,vFqEu,v\in\F_q^E に対して

χu,χv=xFqEψ((uv)x)=eExeFqψ((ueve)xe)\begin{aligned} \langle \chi_u,\chi_v\rangle &= \sum_{x\in\F_q^E}\psi((u-v)\cdot x)\\ &= \prod_{e\in E} \sum_{x_e\in\F_q}\psi((u_e-v_e)x_e) \end{aligned}

である. したがって u=vu=v のときこの積は qnq^n であり, uvu\neq v のときはどこかの座標で ueve0u_e-v_e\neq 0 なので,対応する因子が 00 になる. したがって

{qn/2χu:uFqE}\{q^{-n/2}\chi_u:u\in\F_q^E\}

CΩ\C^{\Omega} の正規直交基底である.

一座標で見ると,ue=0u_e=0 のとき xeψ(uexe)x_e\mapsto\psi(u_ex_e) は定数関数であり, ue0u_e\neq0 のときは値の和が 00 になる関数である. したがって,χu\chi_uVjV_j に属することと wt(u)=j\wt(u)=j であることが同値である. よって Ej\mathsf{E}_j は,重み jj の指標たちが張る空間への射影である.

いま,1C\one_C の重み jj 成分のノルムを計算する. 正規直交基底によるParsevalの等式より,

Ej1C,1C=uFqEwt(u)=j1C,qn/2χu2.\begin{aligned} \langle \mathsf{E}_j\one_C,\one_C\rangle &= \sum_{\substack{u\in\F_q^E\\ \wt(u)=j}} \left\lvert \left\langle \one_C,q^{-n/2}\chi_u\right\rangle \right\rvert^2. \end{aligned}

ここで

1C,qn/2χu=qn/2cCψ(uc).\left\langle \one_C,q^{-n/2}\chi_u\right\rangle = q^{-n/2}\sum_{c\in C}\overline{\psi(u\cdot c)}.

右辺は qn/2Suq^{-n/2}\overline{S_u} である.ここで

SucCψ(uc)S_u\coloneqq\sum_{c\in C}\psi(u\cdot c)

とおく. uCu\in C^{\perp} なら uc=0u\cdot c=0 がすべての cCc\in C で成り立つので,

Su=CS_u=\card{C}

である. 一方,uCu\notin C^{\perp} なら cucc \mapsto u \cdot cCC 上の非零な Fq\F_q 線形写像なので Fq\F_q へ全射であり, 各値はちょうど C/q\card{C}/q 回ずつ現れる. したがって

Su=CqaFqψ(a)=0S_u = \frac{\card{C}}{q}\sum_{a\in\F_q}\psi(a) = 0

である. したがって

Ej1C,1C=C2qn{uC:wt(u)=j}=C2qnAj(C).\langle \mathsf{E}_j\one_C,\one_C\rangle = \frac{\card{C}^2}{q^n} \card{\{u\in C^{\perp}:\wt(u)=j\}} = \frac{\card{C}^2}{q^n}A_j(C^{\perp}).

いま Ω=qn\card{\Omega}=q^n なので,双対分布の定義から

aj(C)=qnC2Ej1C,1C=Aj(C)a_j^{\ast}(C) = \frac{q^n}{\card{C}^2} \langle \mathsf{E}_j\one_C,\one_C\rangle = A_j(C^{\perp})

を得る.

証明終わり

この定理の中で指標が一瞬だけ現れました. しかし,その役割は「Hammingスキームの固有空間側が,線形符号の場合には通常の双対符号を見ている」ことを確認するためです. アソシエーションスキーム的な視点では,CC^{\perp} はまず双対分布として現れます. 線形符号の場合に,その双対分布が通常の双対符号の重み分布に一致する,という構造になっています.

係数レベルのMacWilliams恒等式

ここまでの準備により,MacWilliams恒等式はほとんど証明されています. まず,一般の部分集合に対する変換公式を書きます.

命題10.1.

DΩD\subseteq \Omega を空でない部分集合とする. このとき

aj(D)=1Di=0nai(D)Kj(i)(10.1)a_j^\ast(D) = \frac{1}{\card{D}} \sum_{i=0}^{n}a_i(D)\Kraw_j(i) \tag{10.1}

が成り立つ.

証明

双対分布の定義より

aj(D)=ΩD2Ej1D,1Da_j^\ast(D) = \frac{\card{\Omega}}{\card{D}^2} \langle \mathsf{E}_j\one_D,\one_D\rangle

である. ここに 定理 7.1 を代入すると, Ω=qn\card{\Omega}=q^n より

aj(D)=qnD21qni=0nKj(i)Ai1D,1D=1D2i=0nKj(i)Ai1D,1D=1Di=0nKj(i)ai(D).\begin{aligned} a_j^\ast(D) &= \frac{q^n}{\card{D}^2} \left\langle \frac{1}{q^n}\sum_{i=0}^{n}\Kraw_j(i)\mathsf{A}_i\one_D, \one_D \right\rangle\\ &= \frac{1}{\card{D}^2} \sum_{i=0}^{n}\Kraw_j(i)\langle \mathsf{A}_i\one_D,\one_D\rangle\\ &= \frac{1}{\card{D}} \sum_{i=0}^{n}\Kraw_j(i)a_i(D). \end{aligned}
証明終わり

線形符号 CC の場合には, 定理 8.3定理 9.2 により

ai(C)=Ai(C),aj(C)=Aj(C)a_i(C)=A_i(C), \qquad a_j^\ast(C)=A_j(C^\perp)

なので,この一般公式がそのまま係数レベルのMacWilliams恒等式になります.

定理10.2(係数レベルのMacWilliams恒等式).

CFqEC\leq\F_q^E を線形符号とする. Ai=Ai(C)A_i=A_i(C)Bj=Aj(C)B_j=A_j(C^{\perp}) とおく. このとき

Bj=1Ci=0nAiKj(i)(10.2)B_j = \frac{1}{\card{C}} \sum_{i=0}^{n}A_i\Kraw_j(i) \tag{10.2}

が成り立つ.

証明

この証明の構造を整理すると,次の三段階です.

  1. 重み分布は,関係側の量

    Ai1C,1C\langle \mathsf{A}_i\one_C,\one_C\rangle

    として表される.

  2. 双対符号の重み分布は,固有空間側の量

    Ej1C,1C\langle \mathsf{E}_j\one_C,\one_C\rangle

    として表される.

  3. Ej\mathsf{E}_jAi\mathsf{A}_i の線形結合として展開すると,係数としてKrawtchouk多項式が現れる.

つまり,MacWilliams恒等式は,

Bose–Mesner代数の二つの基底,隣接行列基底と原始冪等元基底の変換公式

として現れています.

多項式形のMacWilliams恒等式

係数レベルの公式から,通常の多項式形のMacWilliams恒等式を導きます.

定理11.1(MacWilliams恒等式).

CFqEC\leq\F_q^E を線形符号とする. このとき

WC(X,Y)=1CWC(X+(q1)Y,XY)W_{C^{\perp}}(X,Y) = \frac{1}{\card{C}} W_C\bigl(X+(q-1)Y,X-Y\bigr)

が成り立つ.

証明

Ai=Ai(C)A_i=A_i(C)Bj=Aj(C)B_j=A_j(C^{\perp}) とおく. 定理 10.2 より

WC(X,Y)=j=0nBjXnjYj=1Cj=0ni=0nAiKj(i)XnjYj=1Ci=0nAij=0nKj(i)XnjYj.\begin{aligned} W_{C^{\perp}}(X,Y) &= \sum_{j=0}^{n}B_jX^{n-j}Y^j\\ &= \frac{1}{\card{C}} \sum_{j=0}^{n} \sum_{i=0}^{n}A_i\Kraw_j(i)X^{n-j}Y^j\\ &= \frac{1}{\card{C}} \sum_{i=0}^{n}A_i \sum_{j=0}^{n}\Kraw_j(i)X^{n-j}Y^j. \end{aligned}

Krawtchouk多項式の母関数

j=0nKj(i)zj=(1+(q1)z)ni(1z)i\sum_{j=0}^{n}\Kraw_j(i)z^j = \bigl(1+(q-1)z\bigr)^{n-i}(1-z)^i

の両辺に XnX^n を掛け,zjz^jXjYjX^{-j}Y^j と読めば,

j=0nKj(i)XnjYj=(X+(q1)Y)ni(XY)i\sum_{j=0}^{n}\Kraw_j(i)X^{n-j}Y^j = \bigl(X+(q-1)Y\bigr)^{n-i}(X-Y)^i

を得る. これは多項式恒等式としての計算であり,XX を数として割っているわけではない. したがって

WC(X,Y)=1Ci=0nAi(X+(q1)Y)ni(XY)i=1CWC(X+(q1)Y,XY).\begin{aligned} W_{C^{\perp}}(X,Y) &= \frac{1}{\card{C}} \sum_{i=0}^{n}A_i \bigl(X+(q-1)Y\bigr)^{n-i}(X-Y)^i\\ &= \frac{1}{\card{C}} W_C\bigl(X+(q-1)Y,X-Y\bigr). \end{aligned}

これでMacWilliams恒等式が証明された.

証明終わり

この証明で,変数変換

XX+(q1)Y,YXYX\mapsto X+(q-1)Y, \qquad Y\mapsto X-Y

は,Hammingスキームの固有値母関数から出てきました. つまり,変数変換は単なる代数的な偶然ではなく, 距離関係を表す行列たちの固有値をまとめたものです.

小さな例:H(2,2)H(2,2) と二元反復符号

最後に,小さな例でアソシエーションスキーム的な見方を確認します. Ω=F22\Omega=\F_2^2 とし,Hammingスキーム H(2,2)H(2,2) を考えます. 頂点は

00,01,10,1100,01,10,11

の四つです. 関係は距離によって

R0={(x,x):xΩ},R1={(x,y):dist(x,y)=1},R2={(x,y):dist(x,y)=2}\begin{aligned} R_0&=\{(x,x):x\in \Omega\},\\ R_1&=\{(x,y):\dist(x,y)=1\},\\ R_2&=\{(x,y):\dist(x,y)=2\} \end{aligned}

に分かれます. 頂点を 00,01,10,1100,01,10,11 の順に並べると,対応する隣接行列は

A0=I,A1=(0110100110010110),A2=(0001001001001000)\mathsf{A}_0=I, \qquad \mathsf{A}_1= \begin{pmatrix} 0&1&1&0\\ 1&0&0&1\\ 1&0&0&1\\ 0&1&1&0 \end{pmatrix}, \qquad \mathsf{A}_2= \begin{pmatrix} 0&0&0&1\\ 0&0&1&0\\ 0&1&0&0\\ 1&0&0&0 \end{pmatrix}

です.

q=2q=2, n=2n=2 のKrawtchouk表は

w=0w=1w=2j=0111j=1202j=2111\begin{array}{c|rrr} & w=0 & w=1 & w=2 \\ \hline j=0 & 1 & 1 & 1 \\ j=1 & 2 & 0 & -2 \\ j=2 & 1 & -1 & 1 \end{array}

です. これは,Aj\mathsf{A}_j が固有空間 VwV_w 上で持つ固有値の表です. 行の jj が距離側,列の ww が固有空間側です.

二元反復符号

C={00,11}F22C=\{00,11\}\leq\F_2^2

を考えます. この符号は自己双対です. 重み分布は

(A0,A1,A2)=(1,0,1)(A_0,A_1,A_2)=(1,0,1)

です. 係数レベルのMacWilliams恒等式は

Bj=1Ci=02AiKj(i)B_j = \frac{1}{\card{C}} \sum_{i=0}^{2}A_i\Kraw_j(i)

でした. いま C=2\card{C}=2A0=A2=1A_0=A_2=1A1=0A_1=0 なので,

Bj=12(Kj(0)+Kj(2))B_j = \frac{1}{2}\bigl(\Kraw_j(0)+\Kraw_j(2)\bigr)

です. 上の数表に現れた値を用いると

B0=12(1+1)=1,B1=12(22)=0,B2=12(1+1)=1.B_{0} = \frac{1}{2}(1 + 1) = 1, \qquad B_{1} = \frac{1}{2}(2 - 2) = 0, \qquad B_{2} = \frac{1}{2}(1 + 1) = 1.

したがって

(B0,B1,B2)=(1,0,1)(B_{0}, B_{1}, B_{2}) = (1, 0, 1)

となり,確かに C=CC^{\perp} = C の重み分布と一致します. アソシエーションスキーム的には,

a(C)=(1,0,1),a(C)=(1,0,1)a(C)=(1,0,1), \qquad a^\ast(C)=(1,0,1)

となっているということです. 後者は,1C\one_CV0,V1,V2V_0,V_1,V_2 に射影した成分の大きさから得られる双対分布です. 実際,頂点順を 00,01,10,1100,01,10,11 とすると

1C=(1,0,0,1)\one_{C} = (1,0,0,1)

であり,

1C=12(1,1,1,1)+12(1,1,1,1)\one_{C} = \frac{1}{2}(1,1,1,1) + \frac{1}{2}(1,-1,-1,1)

と分解できます. 第一成分は定数ベクトルなので V0V_0 に属します. 第二成分は

(1,1,1,1)=(1,1)(1,1)(1,-1,-1,1) = (1, -1) \otimes (1, -1)

と書けるので V2V_{2} に属し,V1V_{1} 成分は 00 です. それぞれの成分のノルム二乗は 1,0,11,0,1 に対応するので, 双対分布が (1,0,1)(1,0,1) になることは Krawtchouk 変換だけでなく, この射影分解からも直接に見えます.

アソシエーションスキーム的には,この計算は次のように見えます. まず,CC 内の二点の距離分布が,隣接行列 A0,A1,A2\mathsf{A}_0,\mathsf{A}_1,\mathsf{A}_2 によって測られます. 次に,特性ベクトル 1C\one_C を固有空間 V0V_{0}, V1V_{1}, V2V_{2} へ射影し, その射影成分の大きさを見ます. その二つの情報を結ぶ変換係数が,表に現れたKrawtchouk値です.

この証明でアソシエーションスキームは何をしていたか

証明の中でアソシエーションスキームが担っていた役割を整理しておきます.

第一に,アソシエーションスキームは,Hamming空間の距離構造を行列代数に変えました. 距離 ii の関係から隣接行列 Ai\mathsf{A}_i を作り,それらが張るBose–Mesner代数を考えました. この代数は,Hamming空間の距離構造を圧縮して持っています.

第二に,Bose–Mesner代数の二つの基底が現れました. 一つは距離関係を表す隣接行列基底 A0,,An\mathsf{A}_{0}, \dots, \mathsf{A}_{n} です. もう一つは固有空間への射影を表す原始冪等元基底 E0,,En\mathsf{E}_{0}, \dots, \mathsf{E}_{n} です. MacWilliams恒等式は,この二つの基底変換として現れました.

第三に,Krawtchouk多項式は固有値として現れました. 隣接行列 Aj\mathsf{A}_{j} は,固有空間 VwV_{w} 上で Kj(w)\Kraw_j(w) 倍として作用しました. つまり,Krawtchouk多項式は,Hammingスキームの固有値を記録する表です.

第四に,符号の重み分布は内部分布として現れました. 線形符号 CC では,内部分布

ai(C)=1CAi1C,1Ca_{i}(C) = \frac{1}{\card{C}}\langle \mathsf{A}_{i} \one_{C}, \one_{C} \rangle

が通常の重み分布 Ai(C)A_{i}(C) と一致しました.

第五に,双対符号の重み分布は双対分布として現れました. 原始冪等元を使って

aj(C)=qnC2Ej1C,1Ca_{j}^{\ast}(C) = \frac{q^{n}}{\card{C}^{2}} \langle \mathsf{E}_{j} \one_{C}, \one_{C} \rangle

と定義すると,線形符号では aj(C)=Aj(C)a_{j}^{\ast}(C) = A_{j}(C^{\perp}) が成り立ちました.

したがって,今回の証明の要点は次の一文にまとめられます.

MacWilliams恒等式は,HammingスキームのBose–Mesner代数における, 隣接行列基底と原始冪等元基底の基底変換である.

この回で見た概念

この回では,MacWilliams恒等式の証明を目標にしながら, アソシエーションスキームの基本的な道具を導入しました. 整理すると次のようになります.

関係分割

有限集合 Ω\Omega 上で,Ω×Ω\Omega\times \Omega をいくつかの関係 R0,R1,,RdR_{0}, R_{1}, \dots, R_{d} に分割することです. Hammingスキームでは,二つの語の距離が 0,1,,n0, 1, \dots, n のどれであるかによって分割します.

隣接行列

関係 RiR_{i}00-11 行列として表したものです. 関係を行列にすることで,線形代数の道具が使えるようになります.

アソシエーションスキーム

関係分割が十分に規則的であり,交叉数 pijkp_{ij}^{k} が定まる状況です. 行列で言えば,隣接行列たちが積に関して閉じている状況です.

Bose–Mesner代数

隣接行列 A0,,Ad\mathsf{A}_{0}, \dots, \mathsf{A}_{d} が張る行列代数です. 対称アソシエーションスキームでは,実対称で互いに可換な隣接行列たちがこれを生成するので, それらの隣接行列は同時対角化できます. 抽象代数の言葉では,可換な半単純代数です.

原始冪等元

Bose–Mesner代数の共通固有空間への射影です. Hammingスキームでは,V0,,VnV_{0}, \dots, V_{n} への射影 E0,,En\mathsf{E}_{0}, \dots, \mathsf{E}_{n} として現れます.

Hammingスキーム

Ω=FqE\Omega = \F_{q}^{E} 上で,二つの語のHamming距離によって関係を分けるアソシエーションスキームです. 符号理論と最も直接に結びつく例です.

Krawtchouk多項式

Hammingスキームの隣接行列 Aj\mathsf{A}_{j} が,固有空間 VwV_{w} 上で持つ固有値です. 母関数は

j=0nKj(w)zj=(1+(q1)z)nw(1z)w\sum_{j=0}^{n} \Kraw_{j}(w) z^{j} = \bigl( 1 + (q - 1)z \bigr)^{n - w}(1 - z)^{w}

です.

内部分布

部分集合 DΩD\subseteq \Omega の中で,二点が各関係 RiR_{i} にある回数を数える分布です. 線形符号では通常の重み分布と一致します.

双対分布

特性ベクトルを原始冪等元で射影し,各固有空間成分の大きさを測る分布です. 線形符号では,通常の双対符号の重み分布と一致します.

アソシエーションスキームの見方では,符号は単なる線形部分空間ではなく, Hamming空間という距離構造を持つ有限集合の部分集合として扱われます. その部分集合の距離分布と,Bose–Mesner代数の固有空間分解が結びつくところに, MacWilliams恒等式が現れます.

今回の系統の振り返り

冒頭で述べたように,今回の証明は

直交多項式・アソシエーションスキーム系

に属します. 表面的には,Hamming距離から作った隣接行列とBose–Mesner代数を使った証明です. 深いところでは,Hamming空間の距離構造が可換な行列代数を作り, その固有値理論が重み分布の変換を支配しています.

Krawtchouk多項式を前面に出して見ると,MacWilliams恒等式は

重み分布に対するKrawtchouk変換

です. アソシエーションスキームの見方では,さらに一段階深く,

Krawtchouk変換は,HammingスキームのBose–Mesner代数における基底変換である

と理解できます.

この見方の利点は,MacWilliams恒等式をより広い枠組みに置けることです. Hammingスキームだけでなく,Johnsonスキーム,Grassmannスキーム,dual polarスキームなど, 多くのアソシエーションスキームにおいて, 内部分布,双対分布,固有値,線形計画法境界といった概念が同じ形式で現れます. 符号理論に現れるDelsarteの線形計画法も,このアソシエーションスキーム的な見方から自然に導かれます. この広い枠組みについては, Delsarte [Del73] および Delsarte–Levenshtein [DL98] を参照してください.

今回の証明の要点は,次の一文です.

Hamming距離で色分けした完全グラフのBose–Mesner代数を対角化すると, その固有値としてKrawtchouk多項式が現れ, 関係側の分布と固有空間側の分布を結ぶ公式としてMacWilliams恒等式が得られる.

次回へ

次回は,MacWilliams恒等式をモーメント恒等式の側から見ます.

今回の証明では,重み分布そのものを,Hammingスキームの隣接行列や原始冪等元を使って変換しました. 次回は,重み分布を直接変換するのではなく,まず

i=0nAi(C)iri=0nAi(C)(ir)\sum_{i=0}^{n} A_{i}(C) i^{r} \quad\text{や}\quad \sum_{i=0}^{n} A_{i}(C) \binom{i}{r}

のようなモーメントに注目します.

重み分布のモーメントは,符号語と座標集合の組を二通りに数えることで計算できます. そこからPlessのpower moment identitiesが現れます. 十分多くのモーメント恒等式を集めると,重み分布全体のMacWilliams変換を復元できます.

つまり次回の主役は,

重み分布 → モーメント → 二重数え上げ → MacWilliams恒等式

です. 同じMacWilliams恒等式であっても, 今回のような固有値・行列代数の見方とはかなり違った,数え上げ的な姿が見えてきます.

参考文献

  1. [Del73] P. Delsarte. An algebraic approach to the association schemes of coding theory. Philips Res. Rep. Suppl., no. 10, pp. vi+97, 1973 ↩1 ↩2 ↩3
  2. [DL98] Philippe Delsarte and Vladimir I. Levenshtein. Association schemes and coding theory. IEEE Trans. Inform. Theory, vol. 44, no. 6, pp. 2477–2504, 1998. doi:10.1109/18.720545 ↩1 ↩2
  3. [BI84] Eiichi Bannai and Tatsuro Ito. Algebraic combinatorics. I. The Benjamin/Cummings Publishing Co., Inc., Menlo Park, CA, pp. xxiv+425, 1984
  4. [BCN89] A. E. Brouwer, A. M. Cohen, and A. Neumaier. Distance-regular graphs. Springer-Verlag, Berlin, vol. 18, pp. xviii+495, 1989. doi:10.1007/978-3-642-74341-2
  5. [MS77] F. J. MacWilliams and N. J. A. Sloane. The theory of error-correcting codes. I. North-Holland Publishing Co., Amsterdam-New York-Oxford, vol. Vol. 16, pp. i–xv and 1–369, 1977
  6. [Cam98] Paul Camion. Codes and association schemes: basic properties of association schemes relevant to coding. Handbook of coding theory, Vol. I, II, pp. 1441–1566, 1998 ↩1 ↩2
  7. [God93] C. D. Godsil. Algebraic combinatorics. Chapman & Hall, New York, pp. xvi+362, 1993

この連載

MacWilliams恒等式で学ぶシリーズ · 第5回 / 全12回

連載一覧へ戻る

免責事項

当サイトの記事は、運営者個人の理解・調査・研究メモに基づいて作成しています。内容については正確であるよう努めていますが、誤りや不十分な記述が含まれる可能性があります。正確性・完全性・有用性・最新性を保証するものではありません。

当サイトの情報の利用は、利用者ご自身の判断と責任において行ってください。当サイトの情報を利用したこと、または利用できなかったことにより生じた損害、損失、不利益等について、運営者は法律上許される範囲において責任を負いません。

ただし、記事内容の誤り、不明確な記述、リンク切れ、出典の不備等にお気づきの場合は、運営者までご連絡いただけると幸いです。内容を確認し、必要に応じて訂正・追記・削除等の対応を行います。