乘法逆元

前置芝士

欧几里得算法

欧几里得算法又称辗转相除法,用于计算两个正整数的最大公约数。

定理: \(gcd(a,b)=gcd(b,a\) \(mod\) \(b)\) \((\) 设 \(a>b\) 且 \(r=a\) \(mod\) \(b,r\) 不为 \(0)\)

证明1:

设 \(a=kb+r\) \((a,b,k,r\) 皆为正整数,且 \(r<b)\),则 \(r=a\) \(mod\) \(b\)。

假设 \(d\) 是 \(a,b\) 的一个公约数,记作 \(d|a,d|b\)。

而 \(r=a-kb\),两边同时除以 \(d\),\(r/d=a/d-kb/d=m\),由等式右边可知 \(m\) 为整数,因此 \(d|r\)。

因此d也是b,a mod b的公约数。

假设d是b,a mod b的公约数, 则d|b,d|(a-k*b),k是一个整数。

进而d|a。因此d也是a,b的公约数。

因此(a,b)和(b,a mod b)的公约数是一样的,其最大公约数也必然相等,得证。

乘法逆元的定义

对于两个数 \(a\),\(p\),若 \(gcd(a,p)=1\) 则一定存在另一个数 \(b\),使得 \(ab≡1(mod\) \(p)\),并称此时的 \(b\) 为 \(a\) 关于 \(1\) 模 \(p\) 的乘法逆元。我们记此时的 \(b\) 为 \(inv(a)\) 或 \(a^{-1}\)。

求解乘法逆元

费马小定理

上一篇:pscp 从win10远程传输文件到centos7


下一篇:根据文件大小自动判断单位B,KB,MB,GB