我已经搜索了几个小时并没有找到答案。我正在使用多项式模另一个多项式(所以ZZ_pE
对象)。当我使用 methodinv(ZZ_pE poly)
时,结果要么是相反的(如果存在),要么是以下错误消息:
ZZ_p: division by non-invertible element
Abort trap: 6
我尝试使用 try/catch:
while(1)
{
random(f);
f = 2*f + 1;
try{
inv(fi, f);
break;
}
catch(...) {
// f not invertible
// Do nothing
}
}
但错误消息仍然会停止程序。据我所知,没有isInvertible
或类似的方法。如何检查多项式是否可逆?