积性函数与Dirichlet卷积 学习小记
前言
首先感謝 XHM 大佬的悉心指導,我懂得了不少~。
鏈一下他關于這方面的見解、博客——XHM 的Dirichlet卷積 學習小記
一些定義
回歸正題,這次我學習了一下狄利克雷卷積方面的知識。
先給一波定義:(這里也感謝 skywalkert大佬的精心講解)
數論函數的定義
- 若 f(n)f(n) 的定義域為 正整數域,值域為 復數,即 f:Z+→Cf:Z+→C ,則稱 f(n)f(n) 為 數論函數 。
積性函數的定義
若 f(n)f(n) 是 數論函數,且 f(1)=1f(1)=1 ,對于 互質 的正整數 p,qp,q ,有:
f(p?q)=f(p)?f(q)f(p·q)=f(p)·f(q)則稱 f(n)f(n) 為 積性函數 。
完全積性函數的定義
若 f(n)f(n) 為 積性函數 ,且對于 任意 正整數 p,qp,q 都有:
f(p?q)=f(p)?f(q)f(p·q)=f(p)·f(q)則稱 f(n)f(n) 為 完全積性函數 。
狄利克雷卷積的定義
定義 數論函數 ff 和 gg 的 狄利克雷卷積 為 hh ,則:h(n)=∑d|nf(d)?g(nd)h(n)=∑d|nf(d)·g(nd)
記作:h=f?gh=f?g 。
一些性質
DirichletDirichlet 卷積滿足交換律、結合律,對加法滿足分配律(如:(f+g)?h=f?h+g?h(f+g)?h=f?h+g?h)。
兩個 積性函數 的 狄利克雷卷積 依舊為 積性函數 。
一些常見的數論函數
- 常值函數:n(i)=nn(i)=n (就是總是返回一個固定值的函數)。
一些常見的積性函數
單位元函數:e(n)=[n=1]e(n)=[n=1] ,它卷上任意的數論函數仍為原數論函數,既滿足:
f?e=f=e?ff?e=f=e?f冪函數:idk(n)=nkidk(n)=nk ,完全積性。
恒等函數:I(n)=1I(n)=1 (也是常值函數,只是比較特殊),完全積性,相當于 id0id0。
單位函數:id(n)=nid(n)=n ,完全積性,相當于 id1id1。
莫比烏斯函數 μ(n)μ(n) ,在狄利克雷卷積的乘法中與 恒等函數I(n)=1I(n)=1 互為 逆元,即有:
μ?I=eμ?I=e且 μ(1)=1μ(1)=1,對于無平方因子數 n=∏ti=1pin=∏i=1tpi 有 μ(n)=(?1)tμ(n)=(?1)t ,
對于有平方因子數 nn 有 μ(n)=0μ(n)=0 。
歐拉函數:φ(n)=∑ni=1[(n,i)=1]?1φ(n)=∑i=1n[(n,i)=1]?1 ,表示小于等于 nn 與 nn 互質的數的個數。
另外有: ∑ni=1[(n,i)=1]?i=n?φ(n)+[n=1]2∑i=1n[(n,i)=1]?i=n?φ(n)+[n=1]2 ,且對于正整數 n>2n>2 來說 φ(n)φ(n) 是偶數。
除數函數: σk(n)=∑d|ndkσk(n)=∑d|ndk ,表示 nn 的約數的 kk 次冪和,注意 σk(n)σk(n) 與 σk(n)σk(n) 是不同的。
約數和函數:σ(n)=σ1(n)=∑d|ndσ(n)=σ1(n)=∑d|nd ,表示 nn 的約數之和(∑)。
約數個數函數: τ(n)=σ0(n)=∑d|n1τ(n)=σ0(n)=∑d|n1 ,表示 nn 的約數個數,一般也寫為 d(n)d(n) 。
一些常用的狄利克雷卷積
說在前面,因為:∑d|nμ(d)=[n=1]∑d|nμ(d)=[n=1] ,有①:I?μ=eI?μ=e (即 II 和 μμ 互為逆元)。
怎么證明呢?考慮有值(非零)的 μ(n)μ(n) 對答案的貢獻。
當 n=1n=1 時,即 μ(1)=1μ(1)=1 ,此時 (I?μ)(1)=I(1)?μ(1)=1=e(1)(I?μ)(1)=I(1)·μ(1)=1=e(1) 。
而當 n>1n>1 時,令 n=∏ki=1Pin=∏i=1kPi ,其中 PiPi 為互不相同的質數。
此時:
∑i=0kμ(i)?Cik=∑i=0kμ(i)?Cik?I(k?i)∑i=0kμ(i)·Cki=∑i=0kμ(i)·Cki·I(k?i)=∑i=0k(?1)i?Cik?1k?i=∑i=0k(?1)i·Cki·1k?i=(1?1)k=0?(二項式定理)=(1?1)k=0(二項式定理)所以 n>1n>1 后面的值之和為零,則命題 I?μ=eI?μ=e 得證。
②:μ?id=φμ?id=φ ,將歐拉函數的通式展開即可得到此式。
③:I?id=σI?id=σ ,證明如下:
(I?id)(n)=∑d|nid(d)?I(nd)(I?id)(n)=∑d|nid(d)?I(nd)=∑d|nd?1=σ(n)=∑d|nd·1=σ(n)④:I?I=τI?I=τ ,證明跟上面同理。
以上①②③④都是非常常用的狄利克雷卷積。
莫比烏斯反演
而且我們也能夠通過簡單的狄利克雷卷積運算輕易地證出莫比烏斯反演。
設 F(n)=∑d|nf(d)F(n)=∑d|nf(d) ,補上一項:F(n)=∑d|nf(d)?I(nd)F(n)=∑d|nf(d)?I(nd) (等價)
則有:F=I?fF=I?f ,兩邊同時卷上 μμ ,即:μ?F=μ?I?fμ?F=μ?I?f
由于①:μ?I=eμ?I=e ,單位元函數可以直接抹去,那就相當于:f=μ?Ff=μ?F
于是得證:
f(d)=∑d|nμ(d)?F(nd)f(d)=∑d|nμ(d)·F(nd)
幾個結論
結論①:n=∑d|nφ(d)n=∑d|nφ(d) ,證明:
id=id?e=id?(μ?I)=(id?μ)?I=φ?Iid=id?e=id?(μ?I)=(id?μ)?I=φ?I則:
n=id(n)=∑d|nφ(d)?I(nd)=∑d|nφ(d)n=id(n)=∑d|nφ(d)?I(nd)=∑d|nφ(d)結論②:σ(n)=∑d|nτ(d)?φ(nd)σ(n)=∑d|nτ(d)?φ(nd) ,證明:
σ=σ?e=(I?id)?(I?μ)=(I?I)?(id?μ)=τ?φσ=σ?e=(I?id)?(I?μ)=(I?I)?(id?μ)=τ?φ
二項式反演
- 由 Ai=∑ij=0Cji?BjAi=∑j=0iCij·Bj ,反演得:Bi=∑ij=0(?1)j?Cji?AjBi=∑j=0i(?1)j·Cij·Aj
總結
狄利克雷卷積讓我們開闊了不少眼界,也讓我們做題的思路打開了很多。
如結合杜教篩、拉格朗日插值法、莫比烏斯反演等算法可以更輕易地攻克更多題目。
總結
以上是生活随笔為你收集整理的积性函数与Dirichlet卷积 学习小记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JZOJ 5660. 【HNOI2018
- 下一篇: JZOJ 5669. 【GDSOI201