跳转至

同余方程

定义

同余方程

对正整数 m 和一元整系数多项式 f(x)=∑i=0naixi,其中未知数 x∈Zm,称形如

(1)f(x)≡0(modm)

的方程为关于未知数 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 为方程

(2)f(x)≡0(modpe−1)

的解,则:

  1. 若 f′(x0)≢0(modp),则存在整数 t 使得

    (3)x=x0+pe−1t

    是方程

    (4)f(x)≡0(modpe)

    的解.

  2. 若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则对 t=0,1,…,p−1,由式 (3) 确定的 x 均为方程 (4) 的解.

  3. 若 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)

于是

(5)tf′(x0)≡−f(x0)pe−1(modp)
  1. 若 f′(x0)≢0(modp),则关于 t 的方程 (5) 有唯一解 t0,代入式 (3) 可验证其为方程 (4) 的解.
  2. 若 f′(x0)≡0(modp) 且 f(x0)≡0(modpe),则任意 t 均能使方程 (5) 成立,代入式 (3) 可验证其均为方程 (4) 的解.
  3. 若 f′(x0)≡0(modp) 且 f(x0)≢0(modpe),则方程 (5) 无解,从而不能由式 (3) 构造方程 (4) 的解.

进而我们有推论:

推论 1

对定理 1 的 p,e,f(x),x0,

  1. 若 s 是方程 f(x)≡0(modp) 的解,且 f′(s)≢0(modp),则存在 xs∈Zpe,xs≡s(modp) 使得 xs 是方程 (4) 的解.
  2. 若方程 f(x)≡0(modp) 与 f′(x)≡0(modp) 无公共解,则方程 (4) 和方程 f(x)≡0(modp) 的解数相同.

从而我们可以将素数幂模同余方程化归到素数模同余方程的情况.

素数模同余方程

以下令 p∈P,整系数多项式 f(x)=∑i=0naixi,其中 p∤an,x∈Zp.

定理 2

若方程

(6)f(x)≡0(modp)

有 k 个不同的解 x1,x2,…,xk (k≤n),则

f(x)≡g(x)∏i=1k(x−xi)(modp),

其中 deg⁡g=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=2k(x−xi)(modp)

    其中 deg⁡g=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)≡an∏i=1n(x−xi)(modp)

令 x=xn+1,则

0≡f(xn+1)≡an∏i=1n(xn+1−xi)(modp)

而右侧显然不是 p 的倍数,因此假设矛盾.

推论 3

若同余方程 ∑i=0nbixi≡0(modp) 的解数大于 n,则

(∀i=0,1,…,n),  p∣bi.
定理 4

方程 (6) 若解的个数不为 p,则必存在满足 deg⁡r<p 的整系数多项式 r(x) 使得 f(x)≡0(modp) 和 r(x)≡0(modp) 的解集相同.

证明

不妨设 n≥p,对 f(x) 做多项式带余除法

f(x)=g(x)(xp−x)+r(x)

其中 deg⁡r<p.

由 Fermat 小定理 知对任意整数 x 有 xp≡x(modp),从而

  • 若 r(x)≡0(modp),则由推论 2 可知 f(x) 有 p 个不同的解.
  • 若 r(x)≢0(modp),则由 f(x)≡r(x)(modp) 可知 f(x) 和 r(x) 的解集相同.

我们可以通过这个定理对同余方程降次.

定理 5

设 n≤p,则方程

(7)xn+∑i=0n−1aixi≡0(modp)

有 n 个解当且仅当存在整系数多项式 q(x),r(x) (deg⁡r<n) 使得

(8)xp−x=f(x)q(x)+pr(x).
证明
  • 必要性:由多项式除法知存在整系数多项式 q(x),r1(x) (deg⁡r1<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.

    又由于 deg⁡q=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,则方程

(9)xn≡a(modp)

有解当且仅当

ap−1n≡1(modp).

而且,若 (9) 有解,则解数为 n.

Note

方程 (9) 解集的具体结构可参见 k 次剩余.

证明
  • 必要性:若方程 (9) 有解 x0,则

    ap−1n≡(x0n)p−1n≡1(modp)
  • 充分性:若 ap−1n≡1(modp),则

    xp−x=x(xp−1−1)=x((xn)p−1n−ap−1n+ap−1n−1)=(xn−a)P(x)+x(ap−1n−1)

    其中 P(x) 是某个整系数多项式,因此由定理 5 可知方程 (9) 有 n 个解.

高次同余方程(组)的求解方法

首先我们可以借助 中国剩余定理 将求解 同余方程组 转为求解 同余方程,以及将求解模 合数 m 的同余方程转化为求解模 素数幂次 的同余方程.之后我们借助 定理 1 将求解模 素数幂次 的同余方程转化为求解模 素数 的同余方程.

结合模素数同余方程的若干定理,我们只需考虑方程

xn+∑i=0n−1aixi≡0(modp)

的求法,其中 p 是素数,n<p.

我们可以通过将 x 代换为 x−an−1n 来消去 xn−1 项,从而我们只需考虑方程

(10)xn+∑i=0n−2aixi≡0(modp)

的求法,其中 p 是素数,n<p.

参考资料

  1. Congruence Equation -- from Wolfram MathWorld
  2. Lagrange's theorem (number theory) - Wikipedia
  3. 潘承洞,潘承彪.初等数论.
  4. 冯克勤.初等数论及其应用.
  5. 闵嗣鹤,严士健.初等数论.