费马小定理学习整理
PS:费马小定理碰到了好几次了,决心在此刻把它解决。若有问题请私信或者评论区留言,我都会给予回复。
定理展示
假如是一个整数,
是一个质数,那么
就是
的倍数。我们可以记为:
这个式子其实就是,如果
不是
的倍数的话,即
那么我们还可以写为:
其中用的最多的就是式,为什么呢?我们两边再同时除以
,即可得到
,这个式子自然可以表示为在取余的情况下,
的倒数可以等价于
。(这个在组合数学中用的非常多,组合问题求解
)
是不是感到很疑惑?这个费马小定理为什么可以这样?别急,我们来看证明。
定理证明
预备知识:
- 若
不能整除
,存在
,且
和
互质(
),那么
也就不能整除
。
- 完全剩余系:从模n的每个剩余类中各取一个数,得到一个由n个数组成的集合,叫做模n的一个完全剩余系。完全剩余系常用于数论中存在性证明。这个完全剩余系其实就是
,因为这个特性是这个完全剩余系的任意两个数对
取余都不相等。
证明开始:
我们现在已知一个整数,和一个质数
,其中
。我们可以设
为
的完全剩余系,让
,即
中的每个元素都乘以
,我们知道
是质数,那么
中的任意两个元素之差都不可能被
整除,则
也同样如此。集合
共
个数,我们对
进行取余。得到的余数为
,这个余数其实就是
重排列,因为这是因为对于任两个相异
而言
,其差不是p的倍数(所以不会有相同余数),且任一个
亦不为
的倍数(所以余数不为0)。则有如下:
那么我们整理一下即可得到:
应用场景
- 组合大数取余
我们知道求解为:
,若有个题目是这样要求的,求
在
下的余数。我们该怎么办?我们只知道乘法间接取余不会影响结果(即
,针对许多数相乘结果依然成立(除法运算不满足还请读者自己去思考))。那么我们就会想到进行费马小定理来转换了,即利用
(使用条件限制为
为质数),那么我们就可以对其进行转换:
那么这个结果自然可以得解。 - 指数爆炸部分求解
例如有一个这样的题,要你求解:对13取余的结果。你会怎么做?直接让计算机去跑吗?又或者利用快速幂?这些都行。当然,在这里我们肯定是介绍费马小定理来解决这个问题。
我们知道是一个质数,那么我们找到一个与
互质的整数
,尝试去构建
,这个自然好办,这里的底数为
,指数为
,
为13,我们则需要寻找
这样的数。那么我们的步骤即是如下:
:
:
:
:
:
是不是感觉很神奇,没错,费马小定理就是这么强大,它虽然出现的比较少,但是一旦出现如果你不了解的话,可是很做出来的哦!