Main Content

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) の要素ごとに ba で除算します。ab は、同じサイズのスカラー、ベクトル、または行列です。ab の各エントリは GF(2) の要素を表します。ab のエントリは、0 または 1 です。

quot = gfdiv(b,a,p) は、GF(p) で b を a で除算し、商を返します。p は素数です。ab が同じサイズの行列の場合、この関数は各要素を個別に処理します。ba、および quot のすべてのエントリは、0 ~ p-1 の間です。

quot = gfdiv(b,a,field) は、GF(pm) の ba で除算し、商を出力します。p は素数で、m は正の整数です。ab が同じサイズの行列の場合は、関数は各要素を個別に処理します。ba、および 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 より前に導入