同余
之前在学习素数时,看到了Matrix67大佬的一篇文章,里面说了很多很有意思的素数的特点,不过在最后一个费马小定理的证明时出现了同余(然而我都忘光了),,,所以今天来看看同余这个东西、、、
一般见到同余时,多是看到这样的式子:
a≡b(modm)
a
≡
b
(
m
o
d
m
)
意思是a 和 b 除以 m 得到的余数相同,可以念作对于m,a同余b 或 a和b同余
首先同余有这样的等价:
a≡b(modm)⇔m|(a−b)⇔a−b=m(q1−q2)
a
≡
b
(
m
o
d
m
)
⇔
m
|
(
a
−
b
)
⇔
a
−
b
=
m
(
q
1
−
q
2
)
第二个式子可以这样理解,,因为a,b 同余 m,所以 a=m×q1+mod a = m × q 1 + m o d , b=m×q2+mod b = m × q 2 + m o d 、、那么a - b其实减掉的是 m 的倍数 和一个余数,所以m可以整除a - b
第三个例子同上
接下来看看同余的一些运算法则:
a≡b(modm),c≡d(modm)⇔a+c≡b+d(modm)
a
≡
b
(
m
o
d
m
)
,
c
≡
d
(
m
o
d
m
)
⇔
a
+
c
≡
b
+
d
(
m
o
d
m
)
a+c≡b(modm)⇔a≡b−c(modm) a + c ≡ b ( m o d m ) ⇔ a ≡ b − c ( m o d m )
a≡b(modm)⇔a±km≡b(modm)
a
≡
b
(
m
o
d
m
)
⇔
a
±
k
m
≡
b
(
m
o
d
m
)
,其中
k为任意整数
a≡b(modm),c≡d(modm)⇔ac≡bd(modm) a ≡ b ( m o d m ) , c ≡ d ( m o d m ) ⇔ a c ≡ b d ( m o d m )
其中性质4可以继续扩展:
如果有
a≡b(modm)
a
≡
b
(
m
o
d
m
)
且 a 与 b 有相同的因子,
a=xd,b=yd
a
=
x
d
,
b
=
y
d
,则因子可以被除掉,即
x≡y(modm)
x
≡
y
(
m
o
d
m
)
同余还有一些其他的性质:
比如同余式中两边的数和mod数可以同时乘以一个常数
若
a≡b(modm)
a
≡
b
(
m
o
d
m
)
则
ka≡kb(modkm)
k
a
≡
k
b
(
m
o
d
k
m
)
,然后此条可以推到下一条:
同余式两边的数和模可以同时被它们任一公约数除。
若
a≡b(modm)
a
≡
b
(
m
o
d
m
)
,且
a=a1d,b=b1d,m=m1d
a
=
a
1
d
,
b
=
b
1
d
,
m
=
m
1
d
,则
a1≡b1(modm1)
a
1
≡
b
1
(
m
o
d
m
1
)
接着又得到:如果同余式一边上的数和模能被某个数除尽,则同余式的另一边的数也能被这个数除尽:若 a≡b(modm) a ≡ b ( m o d m ) ,且 k|a,k|m k | a , k | m ,则 k|b k | b
同余式一边上的数与模的最大公约数,等于另一边上的数与模的最大公约数。
若
a≡b(modm)
a
≡
b
(
m
o
d
m
)
则
(a,m)=(b,m)
(
a
,
m
)
=
(
b
,
m
)
如果同余式对于模m成立,那么它对于m的任意约数d也成立。
若
a≡b(modm),m=m1d
a
≡
b
(
m
o
d
m
)
,
m
=
m
1
d
,则
a≡b(modd)
a
≡
b
(
m
o
d
d
)
费马小定理
证明同样是在Matrix67dalao那里看到的
费马小定理内容如下:
若p是一个素数,且a是一个小于p的数,则有
a(p−1)≡1(modp)
a
(
p
−
1
)
≡
1
(
m
o
d
p
)
首先有一个结论:如果p是一个素数的话,那么对任意一个小于p的正整数 a,2a,3a,…,(p−1)a a , 2 a , 3 a , … , ( p − 1 ) a 除以p的余数正好是一个1到p-1的排列。例如,5是素数,3, 6, 9, 12除以5的余数分别为3, 1, 4, 2,正好就是1到4这四个数。
用同余式表达,即
(p−1)!≡a∗2a∗3a∗...∗(p−1)a(modp)
(
p
−
1
)
!
≡
a
∗
2
a
∗
3
a
∗
.
.
.
∗
(
p
−
1
)
a
(
m
o
d
p
)
得到:
(p−1)!≡(p−1)!∗a(p−1)(modp)
(
p
−
1
)
!
≡
(
p
−
1
)
!
∗
a
(
p
−
1
)
(
m
o
d
p
)
所以
a(p−1)≡1(modp)
a
(
p
−
1
)
≡
1
(
m
o
d
p
)