费马小定理与逆元

费马小定理

假设p是质数,a是整数,且a与p互质,那么,a的(p-1)次方除以p的余数恒为1,即a^(p-1) ≡ 1(mod p)。

简单表示即

if(p is prime number &&gcd(a,p) == 1)
       pow(a,p-1)%p == 1 (true);

同余证法

假设p等于质数13,取整数1,2,3,4,5,6,7,8,9,10,11,12,让它们同时乘以与13互质的数,如3,得3,6,9,12,15,18,21,24,27,30,33,36,再同时余13,得3,6,9,12,2,5,8,11,1,4,7,10,可得这些从1--12都有,只是顺序不同。

从上面可得,对于质数p,他的所有余数乘以与p互质的数,整体不变,只是顺序改变。

可用反证法证明:(自己想的,不知道对不对)

设质数p的所有余数为a1,a2,a3...a(p-1),使i,j∈[1,p-1]且i ≠ j,那么取一个整数c与p互质

假设c * ai  ≡ c * aj (mod p), 可化为(c mod p) * (ai mod p)  ≡ (c mod p) * (aj mod p)   (mod p)。

因为c与p互质,所以c mod p 不等于0,可以同时去掉 (c mod p),得ai ≡ aj(mod p),这显然不符合题意,证毕。

好了,继续上面的例子

使1,2,3,4,5,6,7,8,9,10,11,12相乘,得12的阶乘12!

使3,6,9,12,15,18,21,24,27,30,33,36相乘,取出其中的公因数3,得3^12 * 12!

联立可得

3^12 * 12! ≡ 12! (

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值