歐拉函數線性求解以及莫比烏斯反演(Mobius)

前言

咕咕了很久終於來學習莫反了
要不是不讓在機房誰會發現數學一本通上有這麼神奇的東西
就是沒有性質的證實
而後花了兩節數學課證實了一遍
舒服~
前置知識:歐拉函數,二項式定理(組合數)
會歐拉函數的能夠直接看\(Mobius\)函數

歐拉函數

含義

\(\phi (n)\) 表示比\(n\)小的數中與\(n\)互質的數的個數學習

引理1

  • \(n\)爲質數,\(\phi(n) = n - 1\)
  • \(n=a*b\)\((a, b) = 1\),則\(\phi(n) = \phi(a) * \phi(b)\)
  • 對於一個質數\(n\)\(a\)次方 \(\phi(n^a) = (n - 1) * p^{n-1}\)

現對於第三條性質給出證實ui

  • \(n^a\)小的數有\(n^a - 1\)
  • 其中能整除的表示爲\(n* t (t = 1, 2, ... n ^{a-1}-1)\)
  • 總計有\(n^{a-1}-1\)個數能被整除
  • 則與其互質的數的個數爲\(\phi(p^a) = (n^a-1) - (p^{a-1}+1) = p^a - p^{a-1} = (p-1) * p^{a-1}\)

引理2

對於質數\(n\),惟一分解定理 \(n = {p_1}^{c_1} * {p_2} ^{c_2}...{p_k}^{c_k}\)
\(\phi(n) = n * (1- \frac 1 {p_1}) * (1- \frac 1 {p_2}) ... (1- \frac 1 {p_k})\)
\(a\)\(m\)互質,\(a^{\phi(m)} \equiv 1 (mod \; m)\)spa

線性篩

根據上述性質,推出code

  • \(p\)爲質數,\(\phi (p) = p - 1\)
  • \(if(i \% p == 0) \:\ \phi(i*p)=p*\phi(i)\)
  • \(if(i \% p \; != 0) \:\ \phi(i*p)=\phi(i)*(p -1)\)

code

inline void pre(int n){
	phi[1] = 1;
	for(int i = 2; i <= n; i++){
		if(!vis[i]){
			prime[++cnt] = i;
			phi[i] = i - 1;
		}
		for(int j = 1; j <= cnt && i * prime[j] <= n; j++){
			vis[i * prime[j]] = 1;
			if(i % prime[j] == 0){
				phi[i * prime[j]] = phi[i] * prime[j];
				break;
			}
			else phi[i * prime[j]] = phi[i] * (prime[j] - 1);
		}
	}
}

莫比烏斯反演(Mobius)

定義

對於非負整數集合上的兩個函數\(F(n)\)\(f(n)\),若知足條件\(F(n)=\sum_{d|n}f(d)\)
$$f(n)=\sum_{d|n}\mu(d)F(\frac n d)$$數學

\(\mu\)函數

定義以下class

  • \(d=1\)\(\mu(d)=1\)
  • \(d=p_1p_2p_3...p_k\)均爲互異質數,則\(\mu(d)=(-1)^k\)
  • 其餘狀況\(\mu(d)=0\)

性質一

\[ \sum_{d|n}\mu(d) = \begin{cases} 1, & \text n=1 \\ 0, & \text n>1 \end{cases} \]

證實:
\(n\)爲質數,顯然\(sum=0\)
\(n\)爲合數,根據惟一分解定理im

\[n = {p_1}^{c_1} * {p_2} ^{c_2}...{p_k}^{c_k} \]

\(n\)的因子\(d\)只能是\(p_1p_2,p_1p_3,p_3p_k\)諸如此類
能夠發現\(d\)的構造來自於\(k\)個質因子中選取了\(i\)集合

  • \(k\)爲奇數即\(n\)中包含奇數個質因子
    \(k\)中選出奇數個因子,\(\mu\)值爲-1,對答案貢獻爲\(-\sum_{i=1}^kC_k^i(i+=2)\)
    \(k\)中選出偶數個因子,\(\mu\)值爲1,對答案共享爲\(\sum_{i=2}^{k-1}C_k^i(i+=2)\)
    兩種狀況加和化簡得\(-C_k^k=-1\)
    \(sum = -1 + \mu(1)=-1+1=0\)
    得證
  • k爲偶數即\(n\)中包含偶數個質因子
    同理可得\(sum=0\)

性質二

\[ \sum_{d|n} \frac {\mu(d)} {d} = \frac {\phi(n)} {n} \]

證實:
同上將\(n\)質因數分解,同時將等號右側di

\[\frac {\phi(n)} n = (1- \frac 1 {p_1}) * (1- \frac 1 {p_2}) ... (1- \frac 1 {p_k}) \]

\[= \frac {(p_1-1)(p_2-1)...(p_k-1)} {p_1p_2...p_k} \]

一樣的,對\(k\)的奇偶性分類討論

  • \(k\)爲奇數
    • 從分子中選取奇數個質因子組成相似於\(p_1p_2p_3\)
      因爲剩下了奇數-奇數=偶數個括號,那麼在多項式展開式中該項的常數項(不包含其餘質因子)係數必定爲\(1\)
      與分母約分獲得\(\frac {1}{\text {偶數個質因子的積}}\)
      根據\(\mu\)函數的性質能夠知道,該化簡式等於\(\frac {\mu(\text 分母)} {\text 分母}\)
    • 同理,從中選取偶數個質因子獲得的化簡結果爲
      \(\frac {1}{\text {奇數個質因子的積}}\)
      該化簡式也等於\(\frac {\mu(\text 分母)} {\text 分母}\)
    • 固然,分子展開式當中必包含一項\(p_1p_2...p_k=\text 分母\)
      約分結果顯然爲\(1=\mu(1)/1\)

綜上所述$$\frac {\phi(n)}{n}= (1- \frac 1 {p_1}) * (1- \frac 1 {p_2}) ... (1- \frac 1 {p_k})$$

\[=\frac {(p_1-1)(p_2-1)...(p_k-1)} {p_1p_2...p_k} \]

\[=1+\frac {\mu(d)} {d}(d\neq 1,d|n) \]

\[=\frac {\mu(1)}{1} +\frac {\mu(d)} {d}(d\neq 1,d|n) \]

\[= \sum_{d|n} \frac {\mu(d)}{d} \]

原命題得證

  • \(k\)爲偶數
    同理便可證實

\[\frac {\phi(n)}{n}= (1- \frac 1 {p_1}) * (1- \frac 1 {p_2}) ... (1- \frac 1 {p_k})= \sum_{d|n} \frac {\mu(d)}{d} \]

原命題得證

反演證實

目標性質$$f(n)=\sum_{d|n}\mu(d)F(\frac n d)$$
證實:
\(F(n)\)\(f(n)\)的關係\(F(n)=\sum_{d|n}f(d)\)將等式推導:

\[\sum_{d|n}\mu(d)F(\frac n d)=\sum_{d|n}\mu(d)\sum_{d'|\frac n d}f(d') \]

\[=\sum_{d|n}\sum_{d'|\frac n d}\mu(d)f(d') \]

可見只有知足\((d*d')|n\)時,函數對答案有貢獻
那麼不妨交換\(d\)\(d'\)的位置(理解成範圍也行)

\[=\sum_{d'|n}\sum_{d|\frac n {d'}}\mu(d)f(d') \]

\[=\sum_{d|\frac n {d'}}\mu(d)\sum_{d'|n}f(d') \]

再觀察式子,根據\(\mu(d)\)\(1\)\(0\)的性質,來考慮\(d'\)爲什麼值時對答案有貢獻
可見當且僅當\(d'=n\)\(d=\frac {n}{d'}=1\)時,\(\mu(d)=1\)該式不爲\(0\)
不然式子值爲\(0\)對答案無貢獻

\[=1*\sum_{n|n}f(n) \]

\[=f(n) \]

綜上所述

\[\sum_{d|n}\mu(d)F(\frac n d)=f(n) \]

原命題得證!

小結

關於\(Mobius\)的性質紙上推導了兩天,建議多手模 思惟量不小~

相關文章
相關標籤/搜索