don't need to recompute degree of r

This commit is contained in:
Ahmet Inan 2023-04-21 09:35:04 +02:00
commit 9f07a27eaf

View file

@ -403,13 +403,16 @@ GaloisFieldReference<M, POLY, TYPE> rcp(GaloisFieldReference<M, POLY, TYPE> a)
++d;
return d;
};
int j = M - degree(r);
int k = degree(r);
int j = M - k;
newr ^= r << j;
newt ^= t << j;
while (newr != 1) {
int j = degree(newr) - degree(r);
int l = degree(newr);
int j = l - k;
if (j < 0) {
j = -j;
k = l;
std::swap(newr, r);
std::swap(newt, t);
}