## 數論函數/算術函數 (Arithmetic Function)
指的是定義域在正整數 $\mathbb{Z^+}$, 對應域在複數 $\mathbb{C}$ 的函數:
$$
f:\mathbb{Z^+} \rightarrow \mathbb{C}
$$
值得注意的是,它的定義域為正整數,**所以算術函數關注的主要是整數的整除性、因數關係、質因數對於函數本身的影響**,這句話聽起來非常數論,所以算術函數又稱為數論函數(我亂掰的)。
## 積性函數 (Multiplicative Function)
如果一個算術函數 $f$ 滿足以下性質,則稱 $f$ 是積性函數:
$$
\begin{align}
&1. \ \ f(1)=1 \\
&2. \ \ \text{if} \ \ \gcd(a,b)=1, \ \text{then} \ \ f(ab)=f(a)f(b)
\end{align}
$$
根據算術基本定理
$$
n=\prod_{i=1}^{r}{p_{i}^{k_i}}, \ \ p_i: \text{primes}
$$
因為 $p_{i}^{k_i}$ 兩兩互質,若要計算 $f(n)$,可用積性性質分解:
$$
f(n)=\prod_{i=1}^{r}{f(p_{i}^{k_i})}=f(p_{1}^{k_1})f(p_{2}^{k_2})...f(p_{r}^{k_r})
$$
## 一些常見的積性函數
### 1. $\gcd(k,n)$, 當 $k$ 為定值
:::spoiler 積性
欲證明:
$$
\text{If } \gcd(n,m) = 1, \text{ then for any fixed } k \in \mathbb{Z}, \ \gcd(k,ab)=\gcd(k,a)\gcd(k,b)
$$
根據 $\text{Bézout's identity (gcd 的線性組合)}, \ 我們有$
$$
\begin{align}
&\exists \ u,v, \in \mathbb{Z}\ \ \ \text{s.t.} \ \ \gcd(k,a)=uk+va \\
&\exists \ \alpha,\beta \in \mathbb{Z}\ \ \ \text{s.t.} \ \ \ \gcd(k,b)=\alpha k+\beta b
\end{align}
$$
將 $\gcd(k,a)$ 與 $\gcd(k,b)$ 相乘:
$$
\begin{align}
\gcd(k,a)gcd(k,b) &= (uk+va)(\alpha k+\beta b) \\
&= u \alpha k^2+uk \beta b+va \alpha k+ va \beta b \\
&= (u \alpha k+ u \beta b + va \alpha)k + (v \beta)(ab)
\end{align}
$$
因為$\gcd(k,a)\gcd(k,b)$ 存在於 $k$ 與 $ab$ 的線性組合中,通過簡單的計算,可以得到 $(1)$ 的結論:
$$
\because \ \gcd(k,a)gcd(k,b) \in \{ xk+y(ab) \ | \ x,y \in \mathbb{Z} \}
$$
$$
\begin{align}
\because \ xk+y(ab) &= x(p \cdot \gcd(k,ab))+y(q \cdot \gcd(k,ab)) \ \text{for some } p, q \in \ \mathbb{Z} \\
&= \gcd(k,ab) \cdot (xp+yq)
\end{align}
$$
$$
\begin{align}
\therefore \ \gcd(k,ab) \ | \ \gcd(k,a)\gcd(k,b) \ --------(1)
\end{align}
$$
再來,根據 $\gcd$ 的定義,有
$$
\begin{align}
&\gcd(k,a) \ | \ k \ , \ \gcd(k,b) \ | \ k\\
&\gcd(k,a) \ | \ a \ , \ \gcd(k,b) \ | \ b
\end{align}
$$
$$
\begin{align}
&\because \gcd(a,b)=1\\
&\therefore \gcd(\gcd(k,a), \gcd(k,b))=1 \\
&\because \gcd(\gcd(k,a), \gcd(k,b))=1 \ \ \text{and} \ \ \gcd(k,a) \ | \ k \ , \ \gcd(k,b) \ | \ k\\
&\therefore \gcd(k,a)\gcd(k,b) \ | \ k \ --------------(2) \\\\
&\because \gcd(k,a) \ | \ a \ , \ \gcd(k,b) \ | \ b\\
&\therefore \gcd(k,a)\gcd(k,b) \ | \ ab \ -------------(3)\\
\end{align}
$$
$\text{By (2)(3),}$
$$
\gcd(k,a)\gcd(k,b) \ | \ \gcd(k,ab) \ --------(4)
$$
$\text{By (1)(4),}$
$$
\gcd(k,ab)=\gcd(k,a)\gcd(k,b) \ \ \blacksquare
$$
:::
### 2. 歐拉函數 $\varphi(n)$
$\varphi(n)$ : 小於等於 $n$ 的正整數中與 $n$ 互質的數字個數
顯然的,當 $p$ 為質數, $\varphi(p) = p-1$
:::spoiler 積性
欲證明
$$
\text{if} \ \gcd(a,b)=1, \ \text{then} \ \varphi(ab)=\varphi(a)\varphi(b)
$$
我們可以先把 $1, 2, ..., ab$ 數字全部列出來,建立一個 $a*b$ 的表格:
$$
\begin{array}{|c|c|c|c|}
\hline
1 & 2 & 3 & ... & b \\
\hline
b+1 & b+2 & b+3 & ... & 2b \\
\hline
\vdots & \vdots & \vdots & \ddots & \vdots \\
\hline
(a-2)b+1 & (a-2)b+2 & (a-2)b+3 & ... & (a-1)b \\
\hline
(a-1)b+1 & (a-1)b+2 & (a-1)b+3 & ... & ab \\
\hline
\end{array}
$$
<br><br>
首先來看 $\varphi(b)$ 的部分,我們要引入一個好用的性質:
$$
\gcd(a,b)=\gcd(a,b+ma)=\gcd(a+nb,b), \ \forall m,n \in \mathbb{Z}
$$
根據 $\varphi(b)$ 的定義,第一個row,也就是 $1,2,3,...,b$ 中共有 $\varphi(b)$ 的數字與 $b$ 互質,我們假設其中一個數字為 $k$ ,使用上述性質,有
$$
\gcd(k,b)=\gcd(k+nb,b)=1, \ \forall n \in \mathbb{Z}
$$
意即,共有 $\varphi(b)$ 個cloumn 與 $b$ 互質。
<br><br>
接著來看 $\varphi(a)$ 的部分,首先介紹完全剩餘系的概念:
$$
\mathbb{Z}_n = \{ 0,1,...,n-1 \}
$$
稱模 $n$ 的完全剩餘系,也就是任意整數除以 $n$ 所有可能的餘數集合,而他有如下性質:
$$
\text{If } \gcd(n,m) = 1, \text{ then for any fixed } k \in \mathbb{Z}, \
\{\, (k + m a) \bmod n \mid a \in \mathbb{Z}_n \,\} = \mathbb{Z}_n
$$
也就是說,當 $\gcd(n,m)=1$ ,你對 $\mathbb{Z}_n$ 做伸縮(乘以 $m$ 倍)和平移(加 $k$ ),模 $n$ 後的集合仍然是 $\mathbb{Z}_n$ 。
有了以上知識,很明顯可以看出,表格中每一個column都是 $\mathbb{Z}_a$ 乘 $b$ 加 $k$ 的結果,因為 $\gcd(a,b)=1$ ,所以可以把每個column看成 $\mathbb{Z}_a = \{ 0,1,...,a-1 \}$ 就好。
根據 $\varphi(a)$ 的定義, $0,1,...,a-1$ 中共有 $\varphi(a)$ 個數字與 $a$ 互質,意即,有 $\varphi(a)$ 個row與 $a$ 互質。
<br><br>
有 $\varphi(a)$ 個row與 $a$ 互質,並且有 $\varphi(b)$ 個cloumn 與 $b$ 互質,把row視為橫線,column視為直線,橫線與直線的交點不正是同時與 $a、b$ 兩數互質的數字嗎,假設該數字為 $k$
$$
\gcd(k,a)=1, \ \gcd(k,b)=1 \ \Longrightarrow \ \gcd(k,ab)=1
$$
這是很明顯的事實,因此橫線與直線的交點數量 $\varphi(a)\varphi(b)$ 即為 $1,2,...,ab$ 中與 $ab$ 互質的數字數量 $\varphi(ab)$。
$$
\varphi(ab) = \varphi(a)\varphi(b) \ \ \blacksquare
$$
:::
:::spoiler 質數冪次取值
當 $p$ 為質數時,我們可以輕鬆求出 $\varphi(p^k)$。
因為 $p^k$ 只有 $p$ 這一個質因數,因此除了 $p$ 的倍數外,其他數都與 $p^k$ 互質。
$$
\varphi(p^k) = p^k-\frac{p^k}{p}=p^k-p^{k-1}=(p-1)p^{k-1}
$$
:::
<br>
歐拉函數有以下公式:
$$
\varphi(n) = n \prod_{i=1}^r{(1-\frac{1}{p_i})}, \ \ p_i:\text{prime factors of } n
$$
:::spoiler 公式推導
運用算術基本定理
$$
n=\prod_{i=1}^{r}{p_{i}^{k_i}}, \ \ p_i: \text{primes}
$$
因為 $p_i^{k_i}$ 兩兩互質,因此使用積性性質:
$$
\varphi(n)=\prod_{i=1}^{r}{\varphi(p_{i}^{k_i})}
$$
再利用質數冪次取值的技巧:
$$
\varphi(n)=\prod_{i=1}^{r}{p_i^{k_i-1}(p_i-1)}
$$
整理一下,最後得:
$$
\varphi(n) = n \prod_{i=1}^r{(1-\frac{1}{p_i})} \ \ \blacksquare
$$
:::
<br>
計算 $\varphi(n)$ 看似需要對 $n$ 做質因數分解,但我們其實可以用線性篩以 $O(n)$ 時間建表。
:::spoiler 線性篩
:::
線性篩的基本思想是利用 **最小質因數** 來篩數字,要找 $\varphi(n)$ ,我們首先找出 $\varphi(n)$ 和其最小質因數 $p$ 的關係,我們分成三個case。
### 3. 莫比烏斯函數 $\mu(n)$
### 4. 常數函數 $1(n)$
### 5. 恆等函數 $\text{id}(n)$