ゴッパ符号

提供: testwiki
ナビゲーションに移動 検索に移動

ゴッパ符号(ゴッパふごう、テンプレート:Lang-en-short)または代数幾何符号(だいすうきかふごう、テンプレート:Lang-en-short)は、有限体 𝔽q 上の代数曲線 X を使って構築される線型符号である。V. D. Goppa が考案した。場合によっては、興味深い極値特性(extremal property)を示すことがある。

ゴッパ符号は、𝔽q 上で定義された非特異の代数多様体 X のいくつかの有理点

P1, P2, ..., Pn

を使って構築でき、X 上の因子 GPi とは互いに素な有理点からのみ得られる。リーマン=ロッホの定理によれば、因子 G に対応して、一意な有限次元のベクトル空間 L(G) が存在する。このベクトル空間は X の関数空間の部分空間である。

このような情報を使って構築されるゴッパ符号には、2種類のものが存在する。

関数型符号

曲線 X、因子 G、有理点群 Pi から構築される関数型符号は以下の通りである。

𝔽q 上の L(G) の固定基底

f1, f2, ..., fk

について、対応する 𝔽qn 内のゴッパ符号は、

(fi(P1), fi(P2), ..., fi(Pn))

というベクトルによって 𝔽q 上に分布する。等価的に

α:L(G)𝔽n

の像としても定義され、ここで ff(f(P1),,f(Pn)) で定義される。

上記で定義された Pi を使って因子を D=P1+P2++Pn とする。通常ゴッパ符号は C(D,G) と記述される。

次に、C 上の因子 D と符号のパラメータの関係を示す。l(D) という記法は L(D) の次元を意味する。

命題 ゴッパ符号 C(D,G) の次元は

k=l(G)l(GD)

であり、2つの符号語間の最小ハミング距離

dndeg(G)

である。

証明

C(D,G)L(G)/ker(α)

なので、次が成り立つことを示さなければならない。

ker(α)=L(GD)

fker(α) と仮定する。すると f(Pi)=0,i=1,,n なので、div(f)>D である。従って fL(GD) である。逆に fL(GD) と仮定する。すると

Pi<G,i=1,,n

なので

div(f)>D

である(GD で問題を解かないので、代わりに f でそれをする必要がある)。従って

f(Pi)=0,i=1,,n

となる。dndeg(G) を示すため、α(f)ハミング重みd とする。これはつまり、nd 個の Pi (例えば Pi1,,Pind)について f(Pi)=0 であることを意味する。従って fL(GPi1Pind) であり、

div(f)+GPi1Pind>0

である。

deg(div(f))=0

であることに着目して両辺の次数をとると

deg(G)(nd)0

が得られる。従って

dndeg(G)

である。Q.E.D.

留数型符号

留数型符号は関数型符号の双対として定義されるか、Pi における何らかの関数の留数として定義される。

応用

暗号理論において、ゴッパ符号はマックエリス暗号で使われている。

一般にゴッパ符号は性質の良い線型符号と見なされ、

(nklog2n)

の誤りを訂正可能である。また復号も簡単で、ユークリッドの互除法ベールカンプ=マッシー法を使えばよい。

関連図書

  • Henning Stichtenoth、新妻弘(訳):「代数関数体と符号理論」、共立出版、ISBN 978-4-320-11045-8 (2013年8月25日).

外部リンク