定义
同余方程
对正整数 m 和一元整系数多项式 f(x)=∑i=0naixi,其中未知数 x∈Zm,称形如
f(x)≡0(modm)(1)
的方程为关于未知数 x 的模 m 的一元 同余方程(Congruence Equation).
若 an≡0(modm),则称上式为 n 次同余方程.
类似可定义同余方程组.
关于一次同余方程与方程组的相关内容请参见 线性同余方程 与 中国剩余定理.
本文首先研究同余方程的可解性和解集结构,之后会简要介绍高次同余方程的解法.
由 中国剩余定理 可知,求解关于模合数 m 的同余方程可转化为求解模素数幂次的情况.故以下只介绍素数幂模同余方程和素数模同余方程的相关理论.
素数幂模同余方程
以下假设模数 m=pe (p∈P, e∈Z>1).
注意到,若 x0 是方程
f(x)≡0(modpe)
的解,则 x0 是方程
f(x)≡0(modpe−1)
的解.这启发我们尝试通过较低的模幂次的解去构造较高的模幂次的解.我们有如下定理:
定理 1(Hensel 引理)
对素数 p 和整数 e>1,取整系数多项式 f(x)=∑i=0naixi (pe∤an),令 f′(x)=∑i=1niaixi−1 为其导数.令 x0 为方程
f(x)≡0(modpe−1)(2)
的解,则:
-
若 f′(x0)≡0(modp),则存在整数 t 使得
x=x0+pe−1t(3)
是方程
f(x)≡0(modpe)(4)
的解.
-
若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则对 t=0,1,…,p−1,由式 (3) 确定的 x 均为方程 (4) 的解.
-
若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则不能由式 (3) 构造方程 (4) 的解.
证明
我们假设式 (3) 是方程 (4) 的解,即
f(x0+pe−1t)≡0(modpe)
整理后可得
f(x0)+pe−1tf′(x0)≡0(modpe)
于是
tf′(x0)≡−pe−1f(x0)(modp)(5)
- 若 f′(x0)≡0(modp),则关于 t 的方程 (5) 有唯一解 t0,代入式 (3) 可验证其为方程 (4) 的解.
- 若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则任意 t 均能使方程 (5) 成立,代入式 (3) 可验证其均为方程 (4) 的解.
- 若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则方程 (5) 无解,从而不能由式 (3) 构造方程 (4) 的解.
进而我们有推论:
推论 1
对 定理 1 的 p,e,f(x),x0,
- 若 s 是方程 f(x)≡0(modp) 的解,且 f′(s)≡0(modp),则存在 xs∈Zpe,xs≡s(modp) 使得 xs 是方程 (4) 的解.
- 若方程 f(x)≡0(modp) 与 f′(x)≡0(modp) 无公共解,则方程 (4) 和方程 f(x)≡0(modp) 的解数相同.
从而我们可以将素数幂模同余方程化归到素数模同余方程的情况.
素数模同余方程
以下令 p∈P,整系数多项式 f(x)=∑i=0naixi,其中 p∤an,x∈Zp.
定理 2
若方程
f(x)≡0(modp)(6)
有 k 个不同的解 x1,x2,…,xk (k≤n),则
f(x)≡g(x)i=1∏k(x−xi)(modp),
其中 degg=n−k 且 [xn−k]g(x)=an.
证明
对 k 应用数学归纳法.
-
当 k=1 时,做多项式带余除法,有 f(x)=(x−x1)g(x)+r,其中 r∈Z.
由 f(x1)≡0(modp) 可知 r≡0(modp),从而 f(x)≡(x−x1)g(x)(modp).
-
假设命题对 k−1(k>1) 时的情况成立,现在设 f(x) 有 k 个不同的解 x1,x2,…,xk,则 f(x)≡(x−x1)h(x)(modp),进而有
(∀i=2,3,…,k), 0≡f(xi)≡(xi−x1)h(xi)(modp)
从而 h(x) 有 k−1 个不同的解 x2,x3,…,xk,由归纳假设有
h(x)≡g(x)i=2∏k(x−xi)(modp)
其中 degg=n−k 且 [xn−k]g(x)=an.
因此命题得证.
推论 2
对素数 p,
- (∀x∈Z), xp−1−1≡∏i=1p−1(x−i)(modp).
- (Wilson 定理)(p−1)!≡−1(modp).
定理 3(Lagrange 定理)
方程 (6) 至多有 n 个不同解.
证明
假设 f(x) 有 n+1 个不同解 x1,x2,…,xn+1,则由 定理 2,对 x1,x2,…,xn 有
f(x)≡ani=1∏n(x−xi)(modp)
令 x=xn+1,则
0≡f(xn+1)≡ani=1∏n(xn+1−xi)(modp)
而右侧显然不是 p 的倍数,因此假设矛盾.
推论 3
若同余方程 ∑i=0nbixi≡0(modp) 的解数大于 n,则
(∀i=0,1,…,n), p∣bi.
定理 4
方程 (6) 若解的个数不为 p,则必存在满足 $\deg r [!note]+ 证明
不妨设 n≥p,对 f(x) 做多项式带余除法
f(x)=g(x)(xp−x)+r(x)
其中 degr由[Fermat小定理](/knowledge−pages/math−number−theory−fermat)知对任意整数x有x^p\equiv x\pmod p$,从而
- 若 r(x)≡0(modp),则由 推论 2 可知 f(x) 有 p 个不同的解.
- 若 r(x)≡0(modp),则由 f(x)≡r(x)(modp) 可知 f(x) 和 r(x) 的解集相同.
我们可以通过这个定理对同余方程降次.
定理 5
设 n≤p,则方程
xn+i=0∑n−1aixi≡0(modp)(7)
有 n 个解当且仅当存在整系数多项式 q(x),r(x) (degr<n) 使得
xp−x=f(x)q(x)+pr(x).(8)
证明
-
必要性:由多项式除法知存在整系数多项式 q(x),r1(x) (degr1<n) 使得
xp−x=f(x)q(x)+r1(x).
若方程 (7) 有 n 个解,则 r1≡0(modp) 也有 n 个相同的解,进而由 推论 3 可知存在整系数多项式 r(x) 满足 r1(x)=pr(x),从而命题得证.
-
充分性:若式 (8) 成立,则由 Fermat 小定理 可知,对任意整数 x,
0≡xp−x≡f(x)q(x)(modp).
即方程 f(x)q(x)≡0(modp) 有 p 个解.
设方程 (7) 的解数为 s,则由 Lagrange 定理 可知 s≤n.
又由于 degq=p−n,则由 Lagrange 定理 可知 q(x)≡0(modp) 的解数不超过 p−n,而方程 f(x)q(x)≡0(modp) 的解集是 f(x)≡0(modp) 解集和 q(x)≡0(modp) 解集的并集,故 s+(p−n)≥p,有 s≥n.
因此 s=n.
对于非首一多项式,由于 Zp 是域,故可以将其化为首一多项式,从而适用该定理.
定理 6
设 n∣p−1,p∤a,则方程
xn≡a(modp)(9)
有解当且仅当
anp−1≡1(modp).
而且,若 (9) 有解,则解数为 n.
Note
方程 (9) 解集的具体结构可参见 k 次剩余.
证明
-
必要性:若方程 (9) 有解 x0,则
anp−1≡(x0n)np−1≡1(modp)
-
充分性:若 anp−1≡1(modp),则
xp−x=x(xp−1−1)=x((xn)np−1−anp−1+anp−1−1)=(xn−a)P(x)+x(anp−1−1)
其中 P(x) 是某个整系数多项式,因此由 定理 5 可知方程 (9) 有 n 个解.
高次同余方程(组)的求解方法
首先我们可以借助 中国剩余定理 将求解 同余方程组 转为求解 同余方程,以及将求解模 合数 m 的同余方程转化为求解模 素数幂次 的同余方程.之后我们借助 定理 1 将求解模 素数幂次 的同余方程转化为求解模 素数 的同余方程.
结合模素数同余方程的若干定理,我们只需考虑方程
xn+i=0∑n−1aixi≡0(modp)
的求法,其中 p 是素数,n<p.
我们可以通过将 x 代换为 x−nan−1 来消去 xn−1 项,从而我们只需考虑方程
xn+i=0∑n−2aixi≡0(modp)(10)
的求法,其中 p 是素数,n<p.
-
若 n=1,则求法参见 线性同余方程.
-
若 n=2,则求法参见 二次剩余.
-
若方程 (10) 可化为
xn≡a(modp),
则求法参见 k 次剩余.
参考资料
- Congruence Equation -- from Wolfram MathWorld
- Lagrange's theorem (number theory) - Wikipedia
- 潘承洞,潘承彪.初等数论.
- 冯克勤.初等数论及其应用.
- 闵嗣鹤,严士健.初等数论.