首先我们来看看为书上是怎么写的
# 定理 2.18
如果我们要解方程 f(x)≡0(modpk+1),由之前的知识可知,这个方程的解一定可以从 f(x)≡0(modpk) 中筛选出来
即假设 x≡xk(modpk) 是方程 f(x)≡0(modpk) 的一个特解,那么 x=xk+pkt,t∈Z 都是这个方程的解
那么 f(x)≡0(modpk+1) 的解一定是通过约束 t 之后的 x=xk+pkt
我们可以把解 x=xk+pkt 带入 f(x)≡0(modpk+1) 中,找到 t 的范围,让这个等式成立即可
⇒f(xk+pkt)≡0(modpk+1)
由泰勒公式展开得
f(xk)+f′(xk)pkt+i=2∑ni!fi(xk)pikti≡0(modpk+1)
显然 i!∣fi(xk),对于 i≥2,pk+1∣pik,所以 ∑i=2ni!fi(xk)pikti 这一项就可以被消掉了
式子就变成
f(xk)+f′(xk)pkt≡0(modpk+1)
我们来尝试化简这个式子
首先将这个同余式转换成等式①
f(xk)+f′(xk)pkt=m⋅pk+1−−①
其中,m 是整数
又因为 f(xk)≡0(modpk),我们可以得到等式②
f(xk)=n⋅pk−−②
其中, n 是整数
那么由 等式 ① 和等式 ② 我们可以得到
n⋅pk+f′(xk)pkt=m⋅pk+1⇒n+f′(xk)t=m⋅p⇒f′(xk)t=−n+m⋅p
将 n=pkf(xk) 带入,得到
f′(xk)t≡−pkf(xk)(modp)
我们要求解方程
f(x)≡0(modpk+1)
它的解是
x=xk+pkt
t 的约束条件是
f′(xk)t≡−pkf(xk)(modp)
x≡xk(modpk) 是方程 f(x)≡0(modpk) 的一个解,那么在这个剩余类中:
-
如果 (f′(xk),p)=1,那么同余式 f(x)≡0(modpk+1) 有唯一解
x=xk−f(xk)((f′(xk))−1(modp))(modpk+1)
-
如果 p∣f′(xk)
- f(xk)≡0(modpk+1) 时,无解
- f(xk)≡0(modpk+1) 时,有 p 个解,即 x=xk+pkt(modpk+1),t=0,1,...,p−1
# 推论
由刚刚的证明可知 ,上述的 x 即表示 x_
所以 ,在 (f′(xk),p)=1 的情况下,x≡xk(modpk) 剩余类的解为
xk+1=xk−f(xk)((f′(xk))−1(modp))(modpk+1)