简介
-
Chinese remainder theorem(CRT)
\text{Chinese remainder theorem(CRT)}
Chinese remainder theorem(CRT),中国古代求解一次同余式组的方法。
是数论中一个重要定理,又称孙子定理。
公式
-
如果有一个一元线性同余方程组 ( S ) : { x ≡ a 1 ( m o d m 1 ) x ≡ a 2 ( m o d m 2 ) ⋮ x ≡ a n ( m o d m n ) (S):\begin{cases} x \equiv a_1 \pmod{m_1}\\ x \equiv a_2 \pmod{m_2}\\ \quad\vdots\\ x \equiv a_n \pmod{m_n}\\ \end{cases} (S):⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧x≡a1(modm1)x≡a2(modm2)⋮x≡an(modmn)
用现代数学的语言来说明的话,中国剩余定理给出了 ( S ) (S) (S) 有解的判定条件,并用构造法给出了在有解情况下解的具体形式。 -
说明:
如果整数 m 1 , m 2 , … , m n m_1,m_2,\dots,m_n m1,m2,…,mn 两两互质,则对任意的整数 a 1 , a 2 , … , a n a_1,a_2,\dots,a_n a1,a2,…,an ,方程组有解,并且通解可以用如下方式构造得到:- 设 M = m 1 × m 2 × ⋯ × m n = ∏ i = 1 n m i M=m_1×m_2×\cdots×m_n=\prod\limits_{i=1}^nm_i M=m1×m2×⋯×mn=i=1∏nmi,即为整数 m 1 , m 2 , … , m n m_1,m_2,\dots,m_n m1,m2,…,mn 的乘积;
- 设 M i = M m i , ∀ i ∈ { 1 , 2 , … , n } M_i=\dfrac M{m_i},\forall i\in\{1,2,\dots,n\} Mi=miM,∀i∈{1,2,…,n},是除了 m i m_i mi 之外的 n − 1 n-1 n−1 个整数的乘积;
- 设 t i t_i ti 为 M i M_i Mi 膜 m i m_i mi意义下的逆元,即 M i t i ≡ 1 ( m o d m i ) , ∀ i ∈ { 1 , 2 , … , n } M_it_i\equiv1\pmod{m_i},\forall i\in\{1,2,\dots,n\} Miti≡1(modmi),∀i∈{1,2,…,n}
- 方程组
(
S
)
(S)
(S) 的通解形式为:
x = a 1 t 1 M 1 + a 2 t 2 M 2 + ⋯ + a n t n m n + k M = ∑ i = 1 n a i t i M i + k M , k ∈ Z x=a_1t_1M_1+a_2t_2M_2+\cdots+a_nt_nm_n+kM=\sum\limits_{i=1}^na_it_iM_i+kM,k\in\Z x=a1t1M1+a2t2M2+⋯+antnmn+kM=i=1∑naitiMi+kM,k∈Z
在膜 M M M 的意义下,方程组 ( S ) (S) (S) 只有一个解: x ≡ ∑ i = 1 n a i t i M i ( m o d M ) x\equiv\sum\limits_{i=1}^na_it_iM_i\pmod M x≡i=1∑naitiMi(modM)
证明
从假设可知,对于
∀
i
∈
{
1
,
2
,
⋯
 
,
n
}
∀i∈\{1,2,\cdots,n\}
∀i∈{1,2,⋯,n} ,由于
∀
j
∈
{
1
,
2
,
⋯
 
,
n
}
,
j
≠
i
,
gcd
(
m
i
,
m
j
)
=
1
∀j∈\{1,2,\cdots,n\},j\ne i,\text{gcd}(m_i,m_j)=1
∀j∈{1,2,⋯,n},j̸=i,gcd(mi,mj)=1,所以
gcd
(
m
i
,
M
i
)
=
1
\text{gcd}(m_i,M_i)=1
gcd(mi,Mi)=1 。
这说明存在整数
t
i
t_i
ti 使
t
i
M
i
≡
1
(
m
o
d
m
i
)
t_iM_i\equiv1\pmod{m_i}
tiMi≡1(modmi) 。
∴
a
i
t
i
M
i
≡
a
i
⋅
1
≡
a
i
(
m
o
d
m
i
)
∴a_it_iM_i\equiv a_i · 1\equiv a_i\pmod{m_i}
∴aitiMi≡ai⋅1≡ai(modmi),
∀
j
∈
{
1
,
2
,
⋯
 
,
n
}
,
j
≠
i
,
a
i
t
i
M
i
≡
0
(
m
o
d
m
j
)
\quad ∀j∈\{1,2,\cdots,n\},j≠i,a_it_iM_i\equiv 0\pmod{m_j}
∀j∈{1,2,⋯,n},j̸=i,aitiMi≡0(modmj)
∴
x
=
∑
i
=
1
n
a
i
t
i
M
i
∴x=\sum\limits_{i=1}^na_it_iM_i
∴x=i=1∑naitiMi时
∀
i
∈
{
1
,
2
,
⋯
 
,
n
}
,
\quad∀i∈\{1,2,\cdots,n\},
∀i∈{1,2,⋯,n},
x
=
a
i
t
i
M
i
+
∑
j
≠
i
a
j
t
j
M
j
≡
a
i
t
i
M
i
+
∑
j
≠
i
0
≡
a
i
(
m
o
d
m
i
)
\quad\begin{aligned} x &=a_it_iM_i+\sum\limits_{j≠i}a_jt_jM_j \\ &\equiv a_it_iM_i+\sum\limits_{j≠i}0 \\ &\equiv a_i\pmod{m_i} \end{aligned}
x=aitiMi+j̸=i∑ajtjMj≡aitiMi+j̸=i∑0≡ai(modmi)
这说明
x
x
x 就是方程组
(
S
)
(S)
(S) 的一个解。
假设
x
1
,
x
2
x_1,x_2
x1,x2 都是方程组
(
S
)
(S)
(S) 的解
易知
∀
i
∈
{
1
,
2
,
⋯
 
,
n
}
,
x
1
−
x
2
≡
0
(
m
o
d
m
i
)
∀i∈\{1,2,\cdots,n\},x_1-x_2\equiv 0 \pmod{m_i}
∀i∈{1,2,⋯,n},x1−x2≡0(modmi)
∵
m
1
,
m
2
,
…
,
m
n
∵m_1,m_2,\dots,m_n
∵m1,m2,…,mn 两两互质
∴
M
=
∏
i
=
1
n
m
i
∴M=\prod\limits_{i=1}^nm_i
∴M=i=1∏nmi 整除
x
1
−
x
2
x_1-x_2
x1−x2
∴
∴
∴ 方程组
(
S
)
(S)
(S) 的任意两个解都相差
M
M
M 的整数倍
又
∵
x
=
∑
i
=
1
n
a
i
t
i
M
i
∵x=\sum\limits_{i=1}^na_it_iM_i
∵x=i=1∑naitiMi 是一个解
∴
∴
∴ 方程组
(
S
)
(S)
(S) 所有的解的集合就是:
{
k
M
+
∑
i
=
1
n
a
i
t
i
M
i
;
k
∈
Z
}
\quad \{kM+\sum\limits_{i=1}^na_it_iM_i; \quad k∈\Z\}
{kM+i=1∑naitiMi;k∈Z}
下一篇:拓展中国剩余定理