说明:本文中乘法证明参考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
由二项式定理:
由于存在c的项均可以被c整除,所以(a^m)%c = (R^m)%c
因为R为余数,所以(a^m)%c = ((a%c)^m)%c