【信安数基】数论篇(二):同余

【信安数基】数论篇(二):同余

0x00 同余的概念和性质

1. 符号的定义

给定一个正整数m,如果两个整数a和b对m取模结果相同,则称a和b模m同余,记作
a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ } m) ab(mod m)
否则,称a和b模m不同余

a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ } m) ab(mod m)称作模m的同余式,简称同余式

同余也可以看作是在描述两个整数 a , b a, b a,b之间的关系。同余有以下两个充要条件,或者说有以下两种表述:

  • m ∣ a − b m|a-b mab
  • 存在整数k,使得 a = b + k m a = b + km a=b+km

2. 同余符号本身的性质

同余有以下性质:

  • 自反性: a ≡ a ( m o d   m ) a\equiv a(\mathrm{mod}\text{ }m) aa(mod m)
  • 对称性:若 a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m),则 b ≡ a ( m o d   m ) b\equiv a(\mathrm{mod}\text{ }m) ba(mod m)
  • 传递性:若 a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m) b ≡ c ( m o d   m ) b\equiv c(\mathrm{mod}\text{ }m) bc(mod m),则 a ≡ c ( m o d   m ) a\equiv c(\mathrm{mod}\text{ }m) ac(mod m)

3. 同余式之间的关系

a. 总纲

设:
f ( t ) = ∑ i = 0 n a i t i , g ( t ) = ∑ i = 0 n b i t i f(t)=\sum_{i=0}^{n}a_it^i,g(t)=\sum_{i=0}^{n}b_it^i f(t)=i=0naiti,g(t)=i=0nbiti
如果 a i ≡ b i , i = 0 ( m o d   m ) , 1 , 2 , … , n a_i\equiv b_i,i=0(\mathrm{mod}\text{ }m),1,2,\dots,n aibi,i=0(mod m),1,2,,n

则对于 x ≡ y ( m o d   m ) x\equiv y(\mathrm{mod}\text{ }m) xy(mod m),有: f ( x ) ≡ g ( y ) ( m o d   m ) f(x)\equiv g(y)(\mathrm{mod}\text{ } m) f(x)g(y)(mod m)

这个关系实际上就描述了许多模相同的同余式之间的关系

b. 推论式

a 1 , a 2 , b 1 , b 2 a_1, a_2, b_1, b_2 a1,a2,b1,b2四个整数,如果:
a 1 ≡ b 1 ( m o d   m ) , a 2 ≡ b 2 ( m o d   m ) a_1\equiv b_1(\mathrm{mod}\text{ }m),a_2\equiv b_2(\mathrm{mod}\text{ }m) a1b1(mod m),a2b2(mod m)
则有:

  • a 1 x + a 2 y ≡ b 1 x + b 2 y ( m o d   m ) a_1x+a_2y\equiv b_1x+b_2y(\mathrm{mod}\text{ }m) a1x+a2yb1x+b2y(mod m)
  • a 1 a 2 ≡ b 1 b 2 ( m o d   m ) a_1a_2\equiv b_1b_2(\mathrm{mod}\text{ }m) a1a2b1b2(mod m)
  • a 1 n ≡ b 1 n ( m o d   m ) , n > 0 a_1^n\equiv b_1^n(\mathrm{mod}\text{ }m),n>0 a1nb1n(mod m),n>0

3. 模的变化

条件可推知
a c ≡ b c ( m o d   m ) ac\equiv bc(\mathrm{mod}\text{ }m) acbc(mod m),且 ( c , m ) = d (c,m)= d (c,m)=d a ≡ b ( m o d   m d ) a\equiv b(\mathrm{mod}\text{ }\frac{m}{d}) ab(mod dm)
a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m) a k ≡ b k ( m o d   m k ) ak\equiv bk(\mathrm{mod}\text{ }mk) akbk(mod mk)
a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m), d ┃ m d┃m dm a ≡ b ( m o d   d ) a\equiv b(\mathrm{mod}\text{ }d) ab(mod d)
a ≡ b ( m o d   m i ) , i = 1 , 2 , … , m n a\equiv b(\mathrm{mod}\text{ }m_i), i = 1,2,\dots,m_n ab(mod mi),i=1,2,,mn a ≡ b ( m o d   [ m 1 , m 2 , … , m n ] ) a\equiv b(\mathrm{mod}\text{ }[m_1,m_2,\dots,m_n]) ab(mod [m1,m2,,mn])
a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m) ( a , m ) = ( b , m ) (a,m)=(b,m) (a,m)=(b,m)

0x01 剩余类和欧拉定理

1. 剩余类

[定义] C r C_r Cr为所有与整数 r r r m m m同余的整数所组成的集合,这样的 C r C_r Cr就叫做模m的一个剩余类,一个剩余类中的任意一个数叫做这个类的代表元
C r = { a ∣ a ∈ Z , a ≡ r ( m o d   m ) } = { … , r − 2 m , r − m , r , r + m , r + 2 m , …   } C_r=\{a|a\in Z,a\equiv r(\mathrm{mod\text{ }m)}\}=\\\{\dots,r-2m,r-m,r,r+m,r+2m,\dots\} Cr={aaZ,ar(mod m)}={,r2m,rm,r,r+m,r+2m,}

例如,当m取2时,r取1时, C r C_r Cr就是全体奇数的集合。

剩余类有以下性质:

设m是一个正整数, C 0 , C 1 , … , C m − 1 C_0,C_1,\dots,C_{m-1} C0,C1,,Cm1都是m的剩余类,则有:

  • 任意整数恰好包含在一个 C r C_r Cr中( 0 ≤ r ≤ , m − 1 0\le r\le ,m - 1 0r,m1
  • C a = C b C_a=C_b Ca=Cb的充要条件为 a ≡ b ( m o d   m ) a\equiv b(\mathrm{mod}\text{ }m) ab(mod m)
  • C a C_a Ca C b C_b Cb的交集为空集的充要条件是a和b模m不同余

注意:这里的 C C C的下标虽然可以取非负整数,但是无论取什么值,它一定与 C 0 , C 1 , … , C m − 1 C_0,C_1,\dots,C_{m-1} C0,C1,,Cm1中的一个相等。

例如,当m取2时, C 0 C_0 C0就是全体偶数的集合, C 1 C_1 C1就是全体奇数的集合,两个集合取并集就是整数集。

2. 完全剩余系

[定义] 在m的剩余类 C 0 , C 1 , … , C m − 1 C_0,C_1,\dots,C_{m-1} C0,C1,,Cm1中各取一个代表元 a i ∈ C i , i = 0 , 1 , … , m − 1 a_i\in C_i,i=0,1,\dots,m-1 aiCi,i=0,1,,m1,则这m个数称作m的一个完全剩余系

显然, 0 , 1 , 2 , … , m − 1 0, 1, 2, \dots, m - 1 0,1,2,,m1就是模m的一个完全剩余系

m个整数 a 0 , a 1 , … , a m − 1 a_0,a_1,\dots,a_{m-1} a0,a1,,am1是m的一个完全剩余系的充要条件是它们两两模m不同余

有以下几种特殊的完全剩余系

  • 0 , 1 , … , m − 1 0,1,\dots,m-1 0,1,,m1是m的一个完全剩余系,称作m的最小非负完全剩余系
  • 1 , 2 , … , m − 1 , m 1,2,\dots,m-1,m 1,2,,m1,m称作m的最小正完全剩余系
  • − ( m − 1 ) , … , − 1 , 0 -(m-1),\dots,-1,0 (m1),,1,0称为m的最大非正完全剩余系
  • − m , − ( m − 1 ) , … , − 1 -m,-(m-1),\dots,-1 m,(m1),,1称为m的最大负完全剩余系
完全剩余系的性质

假设 a ⃗ = ( a 0 , a 1 , … , a m − 1 ) \vec{a}=(a_0,a_1,\dots,a_{m-1}) a =(a0,a1,,am1)是m的一个完全剩余系,则 k a ⃗ + b k\vec{a}+b ka +b也是m的一个完全剩余系

x i ( i = 0 , 1 , … , m 1 − 1 ) x_i(i=0,1,\dots,m_1-1) xi(i=0,1,,m11)是模 m 1 m_1 m1的完全剩余系

y j ( j = 0 , 1 , … , m 2 − 1 ) y_j(j=0,1,\dots,m_2-1) yj(j=0,1,,m21)是模 m 2 m_2 m2的完全剩余系

( m 1 , m 2 ) = 1 (m_1,m_2)=1 (m1,m2)=1,则:

m 2 x i + m 1 y i ( i = 0 , 1 , … , m 1 − 1 , j = 0 , 1 , … , m 2 − 1 ) m_2x_i+m_1y_i(i=0,1,\dots,m_1-1,j=0,1,\dots,m_2-1) m2xi+m1yi(i=0,1,,m11,j=0,1,,m21)是模 m 1 m 2 m_1m_2 m1m2的完全剩余系

3. 欧拉函数

与模m互素的剩余类的个数记作 ϕ ( m ) \phi(m) ϕ(m),这个 ϕ ( m ) \phi(m) ϕ(m)就称作欧拉函数

也就是说, ϕ ( m ) \phi(m) ϕ(m)是在序列 1 , … , m − 1 1, \dots, m-1 1,,m1中与m互素的整数的个数

推论:如果 m m m是素数,则 ϕ ( m ) = m − 1 \phi(m)=m-1 ϕ(m)=m1

欧拉函数的性质

m 1 , m 2 m_1,m_2 m1,m2为互素的两个正整数,则: ϕ ( m 1 m 2 ) = ϕ ( m 1 ) ϕ ( m 2 ) \phi(m_1m_2)=\phi(m_1)\phi(m_2) ϕ(m1m2)=ϕ(m1)ϕ(m2)

-+设m的标准分解式为 m = p 1 α 1 p 2 α 2 … p s α s , a i > 0 , i = 1 , 2 , … , s m=p_1^{\alpha_1}p_2^{\alpha_2}\dots p_s^{\alpha_s},a_i>0,i=1,2,\dots,s m=p1α1p2α2psαs,ai>0,i=1,2,,s

则:
ϕ ( m ) = m ∏ i = 1 s ( 1 − 1 p i ) \phi(m)=m\prod_{i=1}^s(1-\frac{1}{p_i}) ϕ(m)=mi=1s(1pi1)

4. 缩系

在与模m互素的 ϕ ( m ) \phi(m) ϕ(m)个剩余类中,各取一个代表元 a 1 , a 2 , … , a ϕ ( m ) a_1,a_2,\dots,a_{\phi(m)} a1,a2,,aϕ(m)

他们组成的集合叫做模m的一个缩剩余系,简称缩系

缩系的性质

a 1 , a 2 , … , a ϕ ( m ) a_1,a_2,\dots,a_{\phi(m)} a1,a2,,aϕ(m) ϕ ( m ) \phi(m) ϕ(m)个与m互素的整数,则 a 1 , a 2 , … , a ϕ ( m ) a_1,a_2,\dots,a_{\phi(m)} a1,a2,,aϕ(m)是模m的一个缩系的充要条件是这几个数两两模m不同余

如果 a a a满足 ( a , m ) = 1 (a,m)=1 (a,m)=1 a 1 , a 2 , … , a ϕ ( m ) a_1,a_2,\dots,a_{\phi(m)} a1,a2,,aϕ(m)是m的一个缩系,则 a a 1 , a a 2 , … , a a ϕ m aa_1,aa_2,\dots,aa_{\phi{m}} aa1,aa2,,aaϕm也是m的一个缩系(注意这里没有“一次函数”中的b)

5. 欧拉定理与费马小定理

如果a满足 ( a , m ) = 1 (a,m)=1 (a,m)=1,则存在整数c, 1 ≤ c < m 1\le c < m 1c<m,且 ( c , m ) = 1 (c,m)=1 (c,m)=1,使得 a c ≡ 1 ( m o d   m ) ac\equiv 1(\mathrm{mod}\text{ }m) ac1(mod m)

欧拉定理

设m是大于1的整数,若a是满足 ( a , m ) = 1 (a,m)=1 (a,m)=1的整数,则 a ϕ ( m ) ≡ 1 ( m o d   m ) a^{\phi(m)}\equiv 1(\mathrm{mod}\text{ }m) aϕ(m)1(mod m)

推论:如果m是素数,则 ϕ ( m ) = m − 1 \phi(m) =m-1 ϕ(m)=m1

费马小定理

如果p是素数,则对于任意整数a,有:
a p ≡ a ( m o d   p ) a^p\equiv a(\mathrm{mod}\text{ }p) apa(mod p)

6. 其他相关定理

  • 如果p是素数,则对于任意整数a,有 a p = a ( m o d   p ) a^p=a(\mathrm{mod}\text{ }p) ap=a(mod p)

  • m 1 , m 2 m_1,m_2 m1,m2是互素的两个正整数,如果 x 1 , x 2 x_1,x_2 x1,x2分别遍历模 m 1 m_1 m1 m 2 m_2 m2的缩系,则 m 2 x 1 + m 1 x 2 m_2x_1+m_1x_2 m2x1+m1x2遍历 m 1 m 2 m_1m_2 m1m2的缩系

注意这里”遍历“的意思,实际上和程序设计中的遍历意思差不多。

书中有这样一句话:

x 遍历模 m 的非负最小剩余系中的缩系时, ax也遍历模 m 的一个缩系.

这就是说,假如m的非负最小剩余系中的缩系是 0 , 1 , … , k 0, 1,\dots,k 0,1,,k,x遍历了这k + 1个数,ax遍历的时候,实际上遍历出来的是 0 , a , … , a k 0, a, \dots,ak 0,a,,ak,而这也是模m的缩系。

在这个地方,我们可以表述为:

m 1 m_1 m1的一个缩系为 α 1 , α 2 , … , α x \alpha_1,\alpha_2,\dots,\alpha_x α1,α2,,αx

m 2 m_2 m2的一个缩系为 β 1 , β 2 , … , β y \beta_1,\beta_2,\dots,\beta_y β1,β2,,βy

m 1 , m 2 m_1,m_2 m1,m2的缩系可以表示为:
[ m 2 α 1 + m 1 β 1 … m 2 α x + m 1 β 1 ⋮ ⋮ m 2 α 1 + m 1 β y … m 2 α x + m 1 β y ] \begin{bmatrix} m_2\alpha_1+m_1\beta_1 &\dots &m_2\alpha_x+m_1\beta_1\\ \vdots&&\vdots\\ m_2\alpha_1+m_1\beta_y&\dots&m_2\alpha_x+m_1\beta_y \end{bmatrix} m2α1+m1β1m2α1+m1βym2αx+m1β1m2αx+m1βy
(这里其实不用管矩阵,构成缩系的只是矩阵中的元素,并不需要写出来矩阵,只需要把矩阵中的元素给列出来即可,用矩阵只是为了方便表示)

0x02 线性同余方程

1. 同余方程

设多项式
f ( x ) = ∑ i = 0 n a i x i f(x)=\sum_{i=0}^na_ix^i f(x)=i=0naixi
m > 0 m>0 m>0,则同余式 f ( x ) ≡ 0 ( m o d   m ) f(x)\equiv 0(\mathrm{mod}\text{ }m) f(x)0(mod m)称为模m的同余方程

如果 a n a_n an不能被m整除,则称n是 f ( x ) f(x) f(x)次数,记作 deg ⁡ f ( x ) \deg f(x) degf(x)

如果 x 0 x_0 x0满足 f ( x 0 ) ≡ 0 ( m o d   m ) f(x_0)\equiv0(\mathrm{mod}\text{ }m) f(x0)0(mod m)

x ≡ x 0 ( m o d   m ) x\equiv x_0(\mathrm{mod}\text{ }m) xx0(mod m)叫做同余方程的

如果 y 0 ≡ x 0 ( m o d   m ) y_0\equiv x_0(\mathrm{mod}\text{ }m) y0x0(mod m),那么必然有 f ( y 0 ) ≡ f ( x 0 ) ≡ 0 ( m o d   m ) f(y_0)\equiv f(x_0)\equiv 0(\mathrm{mod} \text{ }m) f(y0)f(x0)0(mod m),因此不同的解指的是互不同余的解。

之后基本上都在讨论线性同余方程的求解问题(也就是一次的同余方程)

2. 线性同余方程的求解

线性同余方程就是一阶同余方程,其形式为: a x ≡ b ( m o d   m ) ax\equiv b(\mathrm{mod}\text{ }m) axb(mod m)

( a , m ) = 1 (a,m)=1 (a,m)=1,则同余方程 a x ≡ b ( m o d   m ) ax\equiv b(\mathrm{mod}\text{ }m) axb(mod m)的有唯一解 x ≡ b a ϕ ( m ) − 1 ( m o d   m ) x\equiv ba^{\phi(m)-1}(\mathrm{mod}\text{ }m) xbaϕ(m)1(mod m)

( a , m ) = d (a,m)=d (a,m)=d,则线性同余方程有解的充要条件是 d ∣ b d|b db,且有d个不同的解,且已知特解 x ≡ x 0 ( m o d   m x\equiv x_0(\mathrm{mod}\text{ }m xx0(mod m),其d个解分别为:
x ≡ x 0 + m d i ( m o d   m ) , i = 0 , 1 , … , d − 1 x\equiv x_0+\frac{m}{d}i(\mathrm{mod}\text{ }m),i=0,1,\dots,d-1 xx0+dmi(mod m),i=0,1,,d1
总结:求解线性同余方程的步骤

  • ( a , m ) = d (a,m)=d (a,m)=d中的 d d d
  • 求解线性同余方程 a d x ≡ b d ( m o d   m d ) \frac{a}{d}x\equiv \frac{b}{d}(\mathrm{mod}\text{ }\frac{m}{d}) daxdb(mod dm),求解出 x ≡ x 0 ( m o d   m d ) x\equiv x_0(\mathrm{mod}\text{ }\frac{m}{d}) xx0(mod dm)
  • 显然,求解出 x ≡ x 0 ( m o d   m d ) x\equiv x_0(\mathrm{mod}\text{ }\frac{m}{d}) xx0(mod dm)成立,则 x ≡ x 0 ( m o d   m ) x\equiv x_0(\mathrm{mod}\text{ }{m}) xx0(mod m)成立,这就是线性同余方程的特解
  • 最后,线性同余方程的d个解: x ≡ x 0 + m d i ( m o d   m ) , i = 0 , 1 , … , d − 1 x\equiv x_0+\frac{m}{d}i(\mathrm{mod}\text{ }m),i=0,1,\dots,d-1 xx0+dmi(mod m),i=0,1,,d1

x ≡ b d ( a d ) ϕ ( m d ) − 1 + m d i ( m o d   m ) , i = 0 , 1 , … , d − 1 x\equiv \frac{b}{d}(\frac{a}{d})^{\phi(\frac{m}{d})-1}+\frac{m}{d}i(\mathrm{mod}\text{ }m),i=0,1,\dots,d-1 xdb(da)ϕ(dm)1+dmi(mod m),i=0,1,,d1

或者写成:
x ≡ b a ( a d ) ϕ ( m / d ) + m d i ( m o d   m ) , i = 0 , 1 , … , d − 1 x\equiv \frac{b}{a}(\frac{a}{d})^{\phi (m/d)}+\frac{m}{d}i(\mathrm{mod}\text{ }m),i=0,1,\dots,d-1 xab(da)ϕ(m/d)+dmi(mod m),i=0,1,,d1

3. 逆元

对于互质的正整数m与整数a,存在唯一一个m的剩余类,从中选取任意整数 a ′ a' a,都有 a a ′ ≡ 1 ( m o d   m ) aa'\equiv1(\mathrm{mod}\text{ }m) aa1(mod m)

这时的 a ′ a' a称作a的模m逆元,记作 a − 1 ( m o d   m ) a^{-1}(\mathrm{mod}\text{ }m) a1(mod m)

推论:

线性同余方程 a x ≡ b ( m o d   m ) ax\equiv b(\mathrm{mod}\text{ }m) axb(mod m)的全部解为:
x ≡ b d ( ( a d ) − 1 ( m o d   m d ) ) + m d t ( m o d   m ) x\equiv \frac{b}{d}((\frac{a}{d})^{-1}(\mathrm{mod}\text{ }\frac{m}{d}))+\frac{m}{d}t(\mathrm{mod}\text{ }m) xdb((da)1(mod dm))+dmt(mod m)
计算逆元的方法:

a和m是互质的,也就是说存在整数 k 1 , k 2 k_1,k_2 k1,k2,使得 ( a , m ) = 1 = k 1 a + k 2 m (a,m)=1=k_1a+k_2m (a,m)=1=k1a+k2m

1 − k 1 a = k 2 m 1-k_1a=k_2m 1k1a=k2m m ∣ 1 − k 1 a m|1-k_1a m1k1a k 1 a ≡ 1 ( m o d   m ) k_1a\equiv 1(\mathrm{mod}\text{ }m) k1a1(mod m)

只需要利用辗转相除法的回代求出 k 1 k_1 k1即可, k 1 k_1 k1就是所求逆元

0x03 孙子定理与同余方程组

1. 孙子定理(中国剩余定理)

m 1 , m 2 , … , m k m_1,m_2,\dots,m_k m1,m2,,mk是k个两两互素的正整数,如果使
m = ∏ i = 1 k m i , M i = m m i m=\prod_{i=1}^k m_i,M_i=\frac{m}{m_i} m=i=1kmi,Mi=mim
则对于任意整数 b 1 , … , b k b_1,\dots,b_k b1,,bk,同余方程组
{ x ≡ b 1 ( m o d   m 1 ) x ≡ b 2 ( m o d   m 2 ) … x ≡ b k ( m o d   m k ) \begin{cases} x\equiv b_1(\mathrm{mod}\text{ }m_1)\\ x\equiv b_2(\mathrm{mod}\text{ }m_2)\\ \dots\\ x\equiv b_k(\mathrm{mod}\text{ }m_k) \end{cases} xb1(mod m1)xb2(mod m2)xbk(mod mk)
有唯一解:
x ≡ ∑ i = 1 k M i ′ M i b i ( m o d   m ) M i ′ M i ≡ 1 ( m o d   m i ) x\equiv \sum_{i=1}^kM_i'M_ib_i(\mathrm{mod}\text{ }m)\\ M_i'M_i\equiv1(\mathrm{mod}\text{ }m_i) xi=1kMiMibi(mod m)MiMi1(mod mi)
这里的m还有如下性质:

如果 b 1 , b 2 , … , b k b_1,b_2,\dots,b_k b1,b2,,bk遍历 m 1 , m 2 , … , m k m_1,m_2,\dots,m_k m1,m2,,mk的完全剩余系,则 ∑ i = 1 k M i ′ M i b i \sum_{i=1}^k M_i'M_ib_i i=1kMiMibi遍历m的完全剩余系

此处“遍历”的含义请参照前文,实际上间接包含了一种集合与排列组合的含义

2. 同余方程组模数不互质的情况

同余方程组
{ x ≡ b 1 ( m o d   m 1 ) x ≡ b 2 ( m o d   m 2 ) \begin{cases} x\equiv b_1(\mathrm{mod}\text{ }m_1)\\ x\equiv b_2(\mathrm{mod}\text{ }m_2) \end{cases} {xb1(mod m1)xb2(mod m2)
有解的充要条件是 ( m 1 , m 2 ) ∣ b 1 − b 2 (m_1,m_2)|b_1-b_2 (m1,m2)b1b2,而且是对 [ m 1 , m 2 ] [m_1,m_2] [m1,m2]有唯一解

因此,在面对模数未必互质的方程组时,求解过程如下:
{ x ≡ b 1 ( m o d   m 1 ) x ≡ b 2 ( m o d   m 2 ) … x ≡ b k ( m o d   m k ) \begin{cases} x\equiv b_1(\mathrm{mod}\text{ }m_1)\\ x\equiv b_2(\mathrm{mod}\text{ }m_2)\\ \dots\\ x\equiv b_k(\mathrm{mod}\text{ }m_k) \end{cases} xb1(mod m1)xb2(mod m2)xbk(mod mk)
可以先求解前两个方程构成的方程组,解得 x ≡ b 2 ′ ( m o d   [ m 1 , m 2 ] ) x\equiv b_2'(\mathrm{mod}\text{ }[m_1,m_2]) xb2(mod [m1,m2]),然后用这个式子替换掉原来方程组中的前两个方程,并按照这个步骤递归求解整个方程。如果其中一步不满足上面揭示的有解的充要条件,那么整个方程组就是无解的。

3. 同余方程对同余方程组的等价变换

m 1 , m 2 , … , m k m_1,m_2,\dots,m_k m1,m2,,mk是k个两两互素的正整数,令 m = m 1 m 2 … m k m=m_1m_2\dots m_k m=m1m2mk,测同余方程 f ( x ) ≡ 0 ( m o d   m ) f(x)\equiv0(\mathrm{mod}\text{ }m) f(x)0(mod m)等价于:
{ f ( x ) ≡ 0 ( m o d   m 1 ) f ( x ) ≡ 0 ( m o d   m 2 ) … f ( x ) ≡ 0 ( m o d   m k ) \begin{cases} f(x)\equiv0(\mathrm{mod}\text{ }m_1)\\ f(x)\equiv0(\mathrm{mod}\text{ }m_2)\\ \dots\\ f(x)\equiv0(\mathrm{mod}\text{ }m_k)\\ \end{cases} f(x)0(mod m1)f(x)0(mod m2)f(x)0(mod mk)
且如果用 T i T_i Ti表示同余方程 f ( x ) ≡ 0 ( m o d   m i ) f(x)\equiv0(\mathrm{mod}\text{ }m_i) f(x)0(mod mi)的解数,则 T = T 1 T 2 … T k T=T_1T_2\dots T_k T=T1T2Tk

0x04 高次同余方程

1. 模数为素数的整数次幂的情形

这种情形的方程形式如下:
f ( x ) = ∑ i = 0 n a i x i ≡ 0 ( m o d   p α ) f(x)=\sum_{i=0}^n a_ix^i\equiv0(\mathrm{mod}\text{ }p^\alpha) f(x)=i=0naixi0(mod pα)
其中, p p p是素数

x ≡ x 1 ( m o d   p ) x\equiv x_1(\mathrm{mod}\text{ }p) xx1(mod p)是同余方程 f ( x ) ≡ 0 ( m o d   p ) f(x)\equiv0(\mathrm{mod}\text{ }p) f(x)0(mod p)的一个解,

且满足 ( f ′ ( x 1 ) , p ) = 1 (f'(x_1),p)=1 (f(x1),p)=1,则同余方程 f ( x ) ≡ 0 ( m o d   p α ) f(x)\equiv0(\mathrm{mod}\text{ }p^\alpha) f(x)0(mod pα)有解 x ≡ x a ( m o d   p α ) x\equiv x_a(\mathrm{mod}\text{ }p^\alpha) xxa(mod pα)

其中:
{ x i ≡ x i − 1 + p i − 1 t i − 1 ( m o d   p i ) t i − 1 ≡ − f ( x i − 1 ) p i − 1 ( f ′ ( x 1 ) − 1 ( m o d   p ) ) ( m o d   p ) \begin{cases} x_i\equiv x_{i-1}+p^{i-1}t_{i-1}(\mathrm{mod}\text{ }p^i)\\ t_{i-1}\equiv-\frac{f(x_{i-1})}{p^{i-1}}(f'(x_1)^{-1}(\mathrm{mod}\text{ }p))(\mathrm{mod}\text{ }p) \end{cases} {xixi1+pi1ti1(mod pi)ti1pi1f(xi1)(f(x1)1(mod p))(mod p)

2. 模数为素数且多项式系数与模数互素的情形

多项式的辗转相除法

这种方程的一般情形如下:
f ( x ) = ∑ i = 0 n a i x i ≡ 0 ( m o d   p ) , p ∤ a n f(x)=\sum_{i=0}^n a_ix^i\equiv0(\mathrm{mod}\text{ }p),p\not{|}a_n f(x)=i=0naixi0(mod p)pan
**【拉格朗日定理】**这个方程最多有n个解

假如 f ( x ) ≡ 0 ( m o d   p ) f(x)\equiv0(\mathrm{mod}\text{ }p) f(x)0(mod p)有n个以上的解,那么就可以推知所有整系数都可以被p整除的项目

设以下两个整系数多项式:
f ( x ) = ∑ i = 0 n a i x i g ( x ) = x m + ∑ i = 0 m − 1 b i x i f(x)=\sum_{i=0}^na_ix^i\\ g(x)=x^m+\sum_{i=0}^{m-1}b_ix^i f(x)=i=0naixig(x)=xm+i=0m1bixi
其中, g ( x ) g(x) g(x)被称作“首一整系数多项式”

则存在整系数多项式 q ( x ) q(x) q(x) r ( x ) r(x) r(x),使得: f ( x ) = g ( x ) q ( x ) + r ( x ) f(x)=g(x)q(x)+r(x) f(x)=g(x)q(x)+r(x)

其中, deg ⁡ r ( x ) < deg ⁡ g ( x ) \deg r(x) <\deg g(x) degr(x)<degg(x)deg就是最高次数)

其中,如果 n < m n<m n<m,则可以取 q ( x ) = 0 , r ( x ) = f ( x ) q(x)=0,r(x)=f(x) q(x)=0,r(x)=f(x)使得上述等式成立

对于同余方程 f ( x ) ≡ 0 ( m o d   p ) f(x)\equiv 0(\mathrm{mod}\text{ }p) f(x)0(mod p),如果有 f ( x ) = g ( x ) q ( x ) + r ( x ) f(x)=g(x)q(x)+r(x) f(x)=g(x)q(x)+r(x),那么 r ( x ) r(x) r(x)的次数可以小于p,且 r ( x ) ≡ 0 ( m o d   p ) r(x)\equiv0(\mathrm{mod}\text{ }p) r(x)0(mod p) f ( x ) ≡ 0 ( m o d   p ) f(x)\equiv0(\mathrm{mod}\text{ }p) f(x)0(mod p)等价

如果最开始提到的那个方程有k个不同解 x ≡ x i ( m o d   p ) , i = 1 , 2 , … , k , 1 ≤ k ≤ n x\equiv x_i(\mathrm{mod}\text{ }p),i=1,2,\dots,k,1\le k\le n xxi(mod p),i=1,2,,k,1kn,则对于任意整数x,有:
f ( x ) ≡ ( x − x 1 ) ( x − x 2 ) … ( x − x k ) f k ( x ) ( m o d   p ) f(x)\equiv (x-x_1)(x-x_2)\dots(x-x_k)f_k(x)(\mathrm{mod}\text{ }p) f(x)(xx1)(xx2)(xxk)fk(x)(mod p)

对于素数 p p p与正整数 n n n n ≤ p n\le p np,同余方程 f ( x ) = x n + a n − 1 x n − 1 + ⋯ + a 1 x + a 0 ≡ 0 ( m o d   p ) f(x)=x^n+a_{n-1}x^{n-1}+\dots+a_1x+a_0\equiv 0(\mathrm{mod}\text{ }p) f(x)=xn+an1xn1++a1x+a00(mod p)

有n个解的充要条件是 x p − x x^p-x xpx f ( x ) f(x) f(x)除所得余式的所有系数都能被p整除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值