udiv, urem, urembymul, urembymul_precomp, ugcdudiv は商, urem, urembymul は剰余,
ugcd は GCD を返す.
これらは, 密な一変数多項式に対する高速化を図ったものである.
urembymul は, p2 による剰余計算を, p2 の
冪級数としての逆元計算および, 乗算 2 回に置き換えたもので,
次数が大きい場合に有効である.
urembymul_precomp は, 固定された多項式による剰余
計算を多数行う場合などに効果を発揮する.
第 3 引数は, あらかじめ ureverse_inv_as_power_series() に
より計算しておく.
[177] setmod_ff(2^160-47); 1461501637330902918203684832716283019655932542929 [178] A=randpoly_ff(200,x)$ [179] B=randpoly_ff(101,x)$ [180] cputime(1)$ 0sec(1.597e-05sec) [181] srem(A,B)$ 0.15sec + gc : 0.15sec(0.3035sec) [182] urem(A,B)$ 0.11sec + gc : 0.12sec(0.2347sec) [183] urembymul(A,B)$ 0.08sec + gc : 0.09sec(0.1651sec) [184] R=ureverse_inv_as_power_series(B,101)$ 0.04sec + gc : 0.03sec(0.063sec) [185] urembymul_precomp(A,B,R)$ 0.03sec(0.02501sec)
uinv_as_power_series, ureverse_inv_as_power_series.
Go to the first, previous, next, last section, table of contents.