【发布时间】:2018-07-01 00:40:03
【问题描述】:
我已经搜索了几个小时,但没有找到答案。我正在使用多项式以另一个多项式为模(所以ZZ_pE 对象)。当我使用方法inv(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 或类似的方法。如何检查多项式是否可逆?
【问题讨论】:
-
这不是编程问题。这是一道数学题。
-
@Peter 如果正在使用的软件库提供了一种方法,则不会。
-
@aschepler - OP 提到 NTL 中没有这种方法。这意味着他正在寻找一种算法。这使它成为一道数学题。