gfdiv
ガロア体の要素の除算
構文
quot = gfdiv(b,a)
quot = gfdiv(b,a,p)
quot = gfdiv(b,a,field)
説明
メモ
この関数は、p が素数のとき、GF(pm) の計算を行います。GF(2m) で実行するには、ガロア配列に ./
演算子を適用します。詳細は、例:除算を参照してください。
関数 gfdiv
はガロア体の要素を除算します (ガロア体の多項式を除算するには、gfdeconv
を代わりに使用します)。
quot = gfdiv(b,a)
は、GF(2) の要素ごとに b
を a
で除算します。a
と b
は、同じサイズのスカラー、ベクトル、または行列です。a
と b
の各エントリは GF(2) の要素を表します。a
と b
のエントリは、0 または 1 です。
quot = gfdiv(b,a,p)
は、GF(p
) で b を a で除算し、商を返します。p
は素数です。a
と b
が同じサイズの行列の場合、この関数は各要素を個別に処理します。b
、a
、および quot
のすべてのエントリは、0 ~ p
-1 の間です。
quot = gfdiv(b,a,field)
は、GF(pm) の b
を a
で除算し、商を出力します。p は素数で、m は正の整数です。a
と b
が同じサイズの行列の場合は、関数は各要素を個別に処理します。b
、a
、および quot
のすべてのエントリは、GF(pm) の原始元に対応する GF(pm) の要素の指数形式です。field
は、同じ原始元に対応して配置された GF(pm) のすべてのエントリをリストする行列です。これらの形式の説明は、ガロア体の元の表現を参照してください。
すべての場合において、体の 0 要素で除算しようとすると、"商" は NaN
になります。
例
以下のコードは、GF(5) と GF(25) の乗法的な逆の一覧を表示します。列ベクトルを gfdiv
の入力として使います。
% Find inverses of nonzero elements of GF(5). p = 5; b = ones(p-1,1); a = [1:p-1]'; quot1 = gfdiv(b,a,p); disp('Inverses in GF(5):') disp('element inverse') disp([a, quot1]) % Find inverses of nonzero elements of GF(25). m = 2; field = gftuple([-1:p^m-2]',m,p); b = zeros(p^m-1,1); % Numerator is zero since 1 = alpha^0. a = [0:p^m-2]'; quot2 = gfdiv(b,a,field); disp('Inverses in GF(25), expressed in EXPONENTIAL FORMAT with') disp('respect to a root of the default primitive polynomial:') disp('element inverse') disp([a, quot2])
バージョン履歴
R2006a より前に導入