欧拉函数与欧拉定理

欧拉函数

定义

φ(p) 为小于 p 且与 p 互质的数的个数。

性质

  1. 积性
    积性定义: φ(ab)=φ(a)φ(b) (a,b互质时)

    具有积性的函数叫积性函数。

    如果 a,b 不互质时仍然是积性,那就是完全积性函数。

    欧拉函数积性的证明:
    n=pici
    φ(n) = n(11pi) 其中 中每一项表示因数pi不出现的频率
    "ab = n并且a,b互质" 可以转化成 "把一部分因数 pici 分给a,另一部分分给b." 所以等式成立,证毕。

  2. p 为质数,φ(p)=p1

  3. 对于 n>2φ(n) 是偶数。

  4. dnφ(d)=n,或写为 (φ1)(n)=n,这里的 表示范德蒙卷积,这个式子在莫反中相当有用。

求欧拉函数的方法

  1. 因为是积性的,所以可以用线性筛。O(n)
  2. φ(n) = $n * \prod \frac{p_i-1}{p_i} O(\sqrt n)$
  3. 用杜教筛,但筛出来的是前缀和。O(n23)

欧拉定理

gcd(a,p)=1,则 acacmodφ(p)(modp)

p 是质数的时候等价于费马小定理。

证明:

aφ(p)
令比 p 小且与 p 互质的集合为 {x1,x2xφ(p)}

因为 a,p 互质,所以集合 {ax1,ax2,axφ(P)} 中的数仍然与 p 互质,且对 p 取模后互不相同。

(对前面结论的证明)因为 ax 中都无 p 的因子,所以与 p 互质。如果两数相同,则 a(xixj)0,a 没有 p 的因子,后面一项比 p 小,所以同余式不成立,所以得出对 p 取模后互不相同。

所以两边集合在排序后完全等价。

两边集合乘起来:

axixi(modp)aφ(p)xixi(modp)0Πxafine(p)1

xp 互质,∴809057aφ(p)1是p的倍数

afine(p)1modp)

acacmodφ(p)(modp)

拓展欧拉定理( ap 不用互质)

ac{acmodφ(p)gcd(a,m)=1acgcd(a,m)1c<φ(p)acmodφ(p)+φ(p)gcd(a,m)1cφ(p)(modp)

oi-wiki.org/math/number-theory/images/fermat.svg

感性证明:对于 acmodm 的值只在 [0,m) 中,而且 acac1a,那么对于任意一个数 (ac1) ,那么很容易就能知道它的 后继 (ac),在有限的空间内这一定会形成一个循环。可以证明,这个环的长度是 φ(p) 的因子。形式化的证明点这里

这可能是一个混循环(环的后面跟一个尾巴的形式),所以先走 φ(p) 步进入环,再把剩余的步数对环的长度的倍数 φ(p) 取模。写出来就是 acacmodφ(p)+φ(p)

注意:当 c<φ(p) 时,这个余数可能还没有进入环,所以只能暴力地去跑快速幂。(也就是公式的第二行)

posted @   花子の水晶植轮daisuki  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
https://blog-static.cnblogs.com/files/zouwangblog/mouse-click.js
点击右上角即可分享
微信分享提示