我有一个多项式P,我想找到y,使P(y)= 0 modulo 2 ^ r。
我尝试了Hensel提升的方法,但我不知道这是否可行,因为通常情况f'(y mod 2)!= 0 mod 2,这通常不是真的。< / p>
是否有不同的算法可用?或者Hensel提升的变化可以起作用吗?
提前致谢
答案 0 :(得分:1)
假设您有一个a
解决方案f(a) = 0 mod 2^p
。要进行Hensel提升以获得解决方案mod 2^(p+1)
,您最终需要解决
f'(a)*t = -f(a)/2^(p+1) mod 2
代表t
。
如果f'(a) = 0 mod 2
,有两种可能性:
如果2没有划分f(a)/2^(p+1)
,那么就没有解决方案mod 2^(p+1)
(或任何解决方案)
由a
的这个值产生的2的更高功率。
如果2除以f(a)/2^(p+1)
,则0和1都作为t的可接受值,如果您希望找到所有解mod 2^r
,您将需要为每个值单独提升
请注意,a
在每个步骤的[0,2^p)
范围内,因此当您解决t
时,您正在评估f(x)
和f'(x)
at x=a
,而非x=a mod 2
。