进行一个数的学

费马小定理

 (a,p)=1p  ap11(modp)

可以使用剩余系的唯一性来证明。

欧拉定理

欧拉函数

定义 φ(x) 表示在小于等于 x 的数中与 x 互质的数字的个数。

x=picip 为素数,有 φ(x)=x×(11pi)

证明

引理:若 p 为素数,有 φ(pc)=pcpc1=pc1×(p1)

  由于 p 是质数,所以在 1~pc 的数里面只有 p 的倍数不与其互质。

  而这样的数一共有 pc1 个。

证明:首先可以根据其是积性的拆分成

φ(x)=φ(pici)=pici1×(pi1)=pici×(11pi)=n×(11pi)


是积性函数,即 φ(ab)=φ(a)φ(b),其中 (a,b)=1

欧拉定理

 (a,p)=1 aφ(p)1(modp)

可以使用简化剩余系的唯一性进行证明。

特别地,当 p 为素数时,带入 φ(p)=p1 可以立即得到费马小定理。

扩展欧拉定理

是对于 (a,p)1 的情况的处理。

 a,b ab{abmodφ(p)(a,p)=1,ab(a,p)1b<φ(p),a(bmodφ(p))+φ(p),(a,p)1b>φ(p).

可以感性理解一下,就是对于 ab,我们一定会存在一个 sr,使得除去 b 的前 r 个之后,abmodp 的值每 s 个循环一次。

至于为什么循环节的长度是 φ(m) 或者其因数,可以去看 oi-wiki 的证明,懒得写了。

狄利克雷卷积

对于两个函数 fg,定义其狄利克雷卷积 fg 满足:

fg(n)=dnf(d)×g(nd)

有一些性质。

狄利克雷卷积的单位元是 ε(ε(x)=[x=1])

定义 f 的逆元 g 满足 fg=ε

狄利克雷卷积满足交换律、结合律和分配率。

同时 f=g 的充要条件是 fh=gh,其中 hh(1)0 的函数。

证明

必要性:显然。

充分性:如果 fg,我们找到最小的 x 使得 f(x)g(x),同时设 r=fhgh=(fg)h

r(x)=dx(f(d)g(d))×h(xd)=(f(x)g(x))×h(1)0

即不满足 fh=gh,所以假设不成立。


两个积性函数的卷积也是积性函数。

证明

fg=h

以及 ab 满足 (a,b)=1

h(a)×h(b)=d1af(d1)×g(ad1)d2bf(d2)×g(bd2)=dabf(d)×g(abd)=h(ab)


一个积性函数的逆元也是积性函数。

证明

fg=ε,并且不妨设 f(1)=1

同时有 ab(a,b)=1

考虑归纳法。

ab=1 时,结论显然成立。

ab>1 时,有

0=dabf(d)×g(abd)g(ab)=dab,d1f(d)×g(abd)=d1a,d2b,d1d21f(d1d2)×g(abd1d2)=d1a,d2b,d1d21f(d1)×f(d2)×g(ad1)×g(bd2)=f(1)×f(1)×g(a)×g(b)d1a,d2bf(d1)×f(d2)×g(ad1)×g(bd2)=g(a)×g(b)ε(ab)=g(a)×g(b)


莫比乌斯反演

莫比乌斯函数

定义莫比乌斯函数 μ(x)={1x=10,x (1)k,x k 

莫比乌斯函数是积性函数。

莫比乌斯函数是常函数 I (I(x)=1) 在狄利克雷卷积意义下的逆元,即 μI=ε,也就是 dxμ(d)=[x=1]

证明

考虑所有能够产生贡献的因子,也就是没有平方因子的因子。

所以设 x=picix=pi

dxμ(d)=dxμ(d)=i=0k(ki)(1)i=(1+(1))k

这样就很明了了,当 k=0 也就是 x=1 的时候值为 1,否则值为 0


φI=id (id(x)=x)

莫比乌斯反演(变换)
  • 形式一:若有 f(n)=dng(d),则有 g(n)=dnf(d)×μ(nd)

  • 形式二:若有 f(n)=ndg(d),则有 g(n)=ndf(d)×μ(dn)

证明

首先考虑形式一。

首先可以对其进行一些操作变换:

dnf(d)×μ(nd)=dnμ(d)×f(nd)=dnμ(d)kndg(k)=kng(k)dnkμ(d)=kng(k)ε(nk)=g(n)

或者利用卷积,实际上也是操作变换。原式可以看成是 fI=g

两边同时卷上一个 μ

可以得到 f=gμ

也就是我们的式子。

形式二可以仿照形式一倒推的方法。


原根

由欧拉定理可得,如果 (a,p)=1,一定存在一个 b 使得 ab1(modp)

我们称最小的这样的 bap 的阶,记作 δp(a)

一些性质。

aa2a3aδp(a) modp 两两不同余。

证明

否则就有 aij1(modp),不满足最小性。


如果有 ab1(modp),那么 δp(a)b

证明

假设 b 除去 δp(a) 的余数为 r,那么将原本的指数拆开,可以得到:

ar+kδp(a)1(modp)

消去之后可以得到 ar1(modp),不满足最小性。


δp(ab)=δp(a)δp(b) 的充分必要条件是 (δp(a),δp(b))=1

δp(ak)=δp(a)(δp(a),k)

可以通过一些整除之间的转化证出,感觉实际上并没有很大用处。

另外,这里的转化一般都是最大公约数,或者最小公倍数以及幂次之间的一些转化。

原根

(g,p)=1,并且 δp(g)=φ(p),称 gp 的一个原根。

特别地,当 p 为质数的时候,gbb(0,p) 的时候取到 (0,p) 的所有值。

原根判定定理

对于 p3g 是它的原根的充要条件是对于 φ(p) 的每一个因子 x,都有 gφ(p)x1(modp)

证明

必要性:显然。

充分性:依旧考虑反证。假设对于所有因子都满足 gφ(p)x1(modp),而存在一个 t<φ(p) 使得 gt1(modp)

根据裴蜀定理,at+bφ(p)=(t,φ(p)) 一定存在一组解。

又根据欧拉定理,gφ(p)1(modp)

然后就有 g(t,φ(p))gat+bφ(p)1(modp)

又因为 (t,φ(p))φ(p)

同时 (t,φ(p))t<φ(p)

所以 (t,φ(p))<φ(p),所以一定存在一个因子 x 使得 (t,φ(p))φ(p)x

那么 gφ(p)xg(t,φ(p))1(modp)

与条件不符,所以假设不成立。


二项式反演

形式 0:利用容斥原理得到的式子。

f(n)=i=0n(1)i(ni)g(i)g(n)=i=0n(1)i(ni)f(i)

形式 1:通过初步推导得到的式子。

f(n)=i=0n(ni)g(i)g(n)=i=0n(1)ni(ni)f(i)

证明

第一种证法,在形式 0 中设 h(n)=(1)ng(n),这样有:

f(n)=i=0n(ni)h(i)h(n)(1)n=i=0n(1)i(ni)f(i)

移项后注意到 (1)2i=1,然后就是形式 1。

或者可以将右式代入左式,经过整理就能够证明。


形式 2:最常用的式子。

f(n)=i=nm(in)g(i)g(n)=i=nm(1)in(in)f(n)

证明也是类似于形式 1 的代入方法。

posted @   curly_6  阅读(57)  评论(7编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示