ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

gfadd

ガロア体上の多項式を加算

構文

c = gfadd(a,b)
c = gfadd(a,b,p)
c = gfadd(a,b,p,len)
c = gfadd(a,b,field)

説明

    メモ:   この関数は、p が素数のとき、GF(pm) の計算を行います。GF(2m) で実行するには、同じサイズのガロア配列に + 演算子を適用します。詳細は、「例: 加算と減算」を参照してください。

c = gfadd(a,b) は 2 つの GF(2) 多項式 (ab) を加算します。ab が同じ方向のベクトルで長さが異なる場合、短い方のベクトルには 0 が付加されます。ab が行列の場合、2 つの行列は同じサイズでなければなりません。

c = gfadd(a,b,p) は 2 つの GF(p) 多項式を加算します (p は素数です)。ab、および c は、昇べきの順で対応する多項式の係数を与える行ベクトルです。各係数の範囲は、0 ~ p-1 です。ab が同じサイズの行列の場合、この関数は各行を個別に処理します。

c = gfadd(a,b,p,len) は、前の構文と同様に行ベクトル ab を加算しますが、長さ len の行ベクトルを返す点が異なります。出力 c は、和の切り捨てられた表現または拡張された表現です。和に対応する行ベクトルの要素が len より少ない (0 を含む) 場合は、余分な 0 が最後に付加されます。len 要素よりも多い場合は、最後の要素から取り除かれます。

c = gfadd(a,b,field) は、2 つの GF(pm) 要素を加算します。ここで、m は正の整数です。ab は、GF(pm) の原始元に対応する 2 つの要素の指数形式です。field は、同じ原始元に対応して配置された GF(pm) の全要素をリストする行列です。c は、同じ原始元に対応する和の指数形式です。これらの形式の説明は、「ガロア体の元の表現」を参照してください。ab が同じサイズの行列の場合、この関数は各要素を個別に処理します。

以下のコードにおいて、sum5 は GF(5) 上の 2 + 3x + x2 と 4 + 2x + 3x2 の和であり、linpartsum5 の次数 1 の部分です。

sum5 = gfadd([2 3 1],[4 2 3],5)
linpart = gfadd([2 3 1],[4 2 3],5,2)

出力は以下のようになります。

sum5 =

     1     0     4


linpart =

     1     0

以下のコードは A2 + A4 = A1 を示します。ここで、A は GF(9) の原始多項式 2 + 2x + x2 の根です。

p = 3; m = 2;
prim_poly = [2 2 1];
field = gftuple([-1:p^m-2]',prim_poly,p);
g = gfadd(2,4,field)

出力は以下のようになります。

g =

     1

その他の例は、「ガロア体の演算」にあります。

参考

| | | | |

この情報は役に立ちましたか?