模运算法则的证明

2 篇文章 0 订阅
2 篇文章 0 订阅

 说明:本文中乘法证明参考Modular multiplication (article) | Khan Academy,加法、减法、次幂的运算是由本人证明(受乘法证明的启发)。我只是新手,该博客是为了记录学习,这大佬勿喷。

基础知识: 

商数(quotient)和余数(remainder)的关系:被除数/除数 = 商数 ······ 余数,我们用字母表示A/B=Q······R,可以写成A-R = BQ


目标:证明 (a*b)%c = [(a%c)*(b%c)]%c

由商数与余数的关系,可以得到:  a = cQ+R, b = cQ`+R`

a,b代入(a*b)%c,得到:(a*b)%c=[(cQ+R)(cQ`+R`)]%c=(cQQ`+cRQ`+cR`Q+RR`)%c

由于cQQ`,cRQ`,cR`Q均可以被c整除,所以(a*b)%c = (RR`)%c

因为R,R`为余数,所以(a*b)%c = [(a%c)*(b%c)]%c


目标:证明(a+b)%c = [(a%c)+(b%c)]%c 

由商数与余数的关系,可以得到:  a = cQ+R, b = cQ`+R`

a,b代入(a+b)%c,得到:(a+b)%c = (cQ+R+cQ`+R`)%c

由于cQ,cQ均可以被c整除,所以(a+b)%c = (R+R`)%c

因为R,R`为余数,所以(a+b)%c = [(a%c)+(b%c)]%c


目标:证明(a-b)%c = [(a%c)-(b%c)]%c 

由商数与余数的关系,可以得到:  a = cQ+R, b = cQ`+R`

a,b代入(a-b)%c,得到:(a+b)%c = (cQ+R-cQ`-R`)%c

由于cQ,cQ均可以被c整除,所以(a-b)%c = (R-R`)%c

因为R,R`为余数,所以(a-b)%c = [(a%c)-(b%c)]%c


目标:证明(a^m)%c = [(a%c)^m]%c 

由商数与余数的关系,可以得到:  a = cQ+R

a代入(a^m)%c,得到:[(cQ+R)^m]%c 

由二项式定理:(cQ+R)^m=\sum_{r=0}^{m} C_{m} ^{r} (cQ)^{m-r}(R)^{r} = C_{m}^{0}(cQ)^mR^0 + C_{m}^{1}(cQ)^{m-1}R^1 + ...... + C_{m}^{m}(cQ)^{0}R^m

由于存在c的项均可以被c整除,所以(a^m)%c = (R^m)%c

因为R为余数,所以(a^m)%c = ((a%c)^m)%c

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值