我们经常在做题时会看到这样一句话:由于答案较大,请输出答案mod m的结果。(其中m一般为一个大质数)
我们经常会使用以下几个等式:
但是很容易发现,这三个等式中并没有除法。
那我们怎样处理除法呢? 这里就要使用到逆元。
我们定义若
b×b1modc=1
,则称b1为b模c的乘法逆元。
并且有
(a÷b)modc=(a×b1)modc
。(其中
a÷b
为整除)
证明(反证法):
假设
b×b1
,则
(a÷b)modc≠(a×b1)
令,
a÷b=k1×c+y1
,
a×b1=k2×c+y2
<=>若
b×b1modc=1
,则
y1≠y2
两式相减,则
a÷b−a×b1=(k1−k2)×c+(y1−y2)
设
k=k1−k2
,
y=y1−y2
有,
a÷b−a×b1=k×c+y
左右乘以b,有
a×(1−b×b1)=k×b×c+b×y
左右模上c,
左边
=a×(1−b×b1)modc
=(a×(1modc−b×b1modc))modc
=0
右边
=(k×b×c+b×y)modc
=b×ymodc
a÷b
为整除,b显然不会是0,那么y必须是0,这与命题矛盾,证毕