数論的関数、乗法的関数とは何か:約数関数を例に

どうも、木村(@kimu3_slime)です。

今回は、数論的関数、乗法的関数とは何か、約数関数を例に紹介します。

 



数論的関数とは

各桁の数の和が3の倍数であるとき、それは3の倍数であるという性質は有名です。例えば、\(12345\)の各桁の数の和は\(15\)なので、\(123\)は\(3\)の倍数です。

ここで各桁の数の和を、関数によって表しましょう。例えば、\(F_{10}(12345)=1+2+3+4+5=15\)といったように。整数を\(x=\sum _{k=0}^{\ell} x_{k} 10^{k}\)と十進法で各桁の数を表した時、\(F_{10} (x) =\sum _{k=0}^{\ell} x_{k}\)とすれば良いです。\(F_{10}\)を桁の和関数(sum of digits function)と呼びます。「桁の和が~~である」といった条件が簡単に書けるようになりますし、この関数自体がどんな性質を持つのか、といった探求もできるようになります。

 

数の性質を調べる整数論では、正の整数\(n\)を変数とする関数が多く登場し、それは数論的関数(number theoretic function)、算術関数(arithmetic function)と呼ばれます。

桁の和関数\(F_{10}\)は、数論的関数の例です。他にも数多くの例があります。正の整数\(n\)に対し、その正の約数の和を\(\sigma (n)\)、その正の約数の個数を\(\tau (n)\)、としたものがそうです。\(\sigma\)は約数の和関数(sum of divisors function)、\(\tau \)は約数カウント関数(divisor counting function)と呼ばれます。

素数の個数を返す関数\(\pi(n)\)は、素数カウント関数(prime counting function)と呼ばれ、その近似について素数定理が知られています。他にも、オイラーの\(\phi\)関数、メビウス関数\(\mu\)といった数論的関数も有名です。最大公約数\(\mathrm{gcd}(a,b)\)は、2変数の数論的関数と言えるでしょう。

実数\(x\)に対し\(x\)より小さい最大の整数を返す関数は、\(\lfloor x\rfloor\)と表され、床関数(floor function)、ガウス記号、最大整数関数(greatest integer function)と呼ばれています。床関数は厳密には数論的関数ではないのですが、数論においてよく登場するので仲間扱いされていることが多いようです。

 

乗法的関数とは、約数関数を例に

今回は、約数関数\(\sigma,\tau\)の性質を調べてみましょう。\(\sigma\)は約数を足し、\(\tau\)は約数をカウントすれば良いです。

\(1,2,\dots,10\)までの値を見てみます。何か規則性はあるでしょうか?

\[ \begin{aligned}\sigma(1)=1,\sigma(2)=3,\sigma(3)=4,\sigma(4)=7,\sigma(5)=6\end{aligned} \]

\[ \begin{aligned}\sigma(6)=12,\sigma(7)=8,\sigma(8)=15,\sigma(9)=13,\sigma(10)=18\end{aligned} \]

\[ \begin{aligned}\tau (1)=1,\tau(2)=2,\tau(3)=2,\tau(4)=3,\tau(5)=2\end{aligned} \]

\[ \begin{aligned}\tau (6)=4,\tau(7)=2,\tau(8)=4,\tau(9)=3,\tau(10)=4\end{aligned} \]

\(n\)が増えるごとに、全体としては増加している傾向が見られますが、少なくとも単調に増加しているわけではないことがわかります。

わかりやすいのは、\(n\)が素数のときですね。素数\(p\)は、正の約数が\(1,p\)のみの整数です。したがって、\(\sigma(p)=p+1\)、\(\tau(p)=2\)です。(逆に、\(\sigma(n)=n+1\)ならば\(n\)は素数、\(\tau(n)=2\)ならば\(n\)は素数ですね。)

 

では、\(n\)が合成数のときは何か言えないのでしょうか?

\(4=2\cdot 2 \)ですが、\(\sigma(2)=3,\sigma (4)=7\)の間に何か関係がありそうには見えません。一方で、\(6=2\cdot3 \)について考えると、\(\sigma(2)\sigma(3)=3\cdot 4 = 12 =\sigma(6)\)という関係が成り立っています。\(\tau\)についても、\(\tau(2)\tau(3)=2\cdot 2 =4 =\tau(6)\)が成り立っています。試してみると、\(n=8\)は積について良い性質がありませんが、\(n=10\)では\(\sigma(10)=\sigma(2)\sigma(5)\)、\(\tau(10)=\tau(2)\tau(5)\)といった性質があります。

 

この積の性質を、一般的に表してみましょう。\(f\)を数論的関数とします。すべての正の整数\(m,n\)に対し、それらが互いに素(\(\mathrm{gcd}(m,n)=1\))ならば、\(f(mn)=f(m)f(n)\)が成り立つとき、\(f\)を乗法的関数(multiplicative function)と呼びます。

約数関数\(\sigma,\tau\)は、乗法的関数であることが知られています。

互いに素であることの条件を抜いて、すべての正の整数\(m,n\)に対し、\(f(mn)=f(m)f(n)\)が成り立つ数論的関数\(f\)を、完全乗法的関数(completely multiplicative function)と呼びます。

約数関数は、完全乗法的関数ではありません。なぜなら、\(\sigma(2)^2=9\neq 7=\sigma (4)\)、\(\tau(2)^2=4\neq 3 = \tau(4)\)だからです。

 

約数関数\(\sigma,\tau\)は、乗法的関数であることの証明を、簡単に紹介しましょう。

簡単なケースとして、\(n\)が素数\(p,q\)、\(p\neq q\)によって、\(n=pq\)、\(n=p^2\)のように表されるときを考えます。

\(pq\)の正の約数はなんでしょうか。それは\(1,p,q,pq\)です(それ以外に約数を持ったら、\(p,q\)が素数であることに反します)。したがって、\(\sigma(pq)=1+p+q+pq\)、\(\tau (pq)=4\)です。一方、\(\sigma(p)\sigma(q)=(p+1)(q+1)=1+p+q+pq\)、\(\tau(p)\tau(q)=2\cdot 2=4\)なので、乗法的であることがわかります。

\(p^2\)の正の約数はなんでしょうか。それは\(1,p,p^2\)です。したがって、\(\sigma(p^2)=1+p+p^2\)、\(\tau (p^2)=3\)です。\(p^3\)の約数は、\(1,p,p^2,p^3\)です。したがって、\(\sigma(p^3)=1+p+p^2+p^3=\frac{p^4-1}{p-1}\)、\(\tau (p^3)=4\)です。

 

これを一般化すると、次のことが示せます。

\(n=p_1^{k_1}p_2^{k_2}\cdots p_r^{k_r}\)と素因数分解されたとする。このとき、約数関数は次のように表される。

\[ \begin{aligned}\sigma(n)=\frac{p_1^{k_1+1}-1}{p_1-1}\frac{p_2^{k_2+1}-1}{p_2-1} \cdots \frac{p_r^{k_r+1}-1}{p_r-1}\end{aligned} \]

\[ \begin{aligned}\tau (n)=(k_1+1)(k_2+1)\cdots(k_r+1)\end{aligned} \]

この表示式を用いれば、約数関数が乗法的であることが示せます。

\(m=p_1^{k_1}p_2^{k_2}\cdots p_r^{k_r}\)、\(n=q_1^{\ell_1}q_2^{\ell_2}\cdots q_s^{\ell_s}\)と素因数分解されたとしましょう。\(m,n\)は互いに素なので、\(p_1,\dots ,p_r\)と\(q_1,\dots,q_s\)には共通する素数は存在しません。したがって、\(mn=p_1^{k_1}p_2^{k_2}\cdots p_r^{k_r} q_1^{\ell_1}q_2^{\ell_2}\cdots q_s^{\ell_s}\)は素因数分解されています。そのため、表示式を使って計算できます。

\[ \begin{aligned}   \sigma(mn)&= \frac{p_1^{k_1+1}-1}{p_1-1}\frac{p_2^{k_2+1}-1}{p_2-1}\cdots \frac{p_r^{k_r+1}-1}{p_r-1} \\ &\frac{q_1^{\ell_1+1}-1}{q_1-1}\frac{q_2^{\ell_2+1}-1}{q_2-1} \cdots \frac{q_s^{\ell_s+1}-1}{q_s-1} \\&=\sigma(m)\sigma(n)\end{aligned} \]

\[ \begin{aligned}   \tau(mn)&=(k_1+1)(k_2+1)\cdots(k_r+1) \\ & (\ell_1+1)(\ell_2+1)\cdots(\ell_s+1) \\ &=\tau(m)\tau(n) \end{aligned} \]

 

以上、数論的関数とは何か例を交えて紹介し、約数関数に注目した上で、乗法的関数について紹介しました。

数論的関数は定義できるものの、個々の値を求めたり、規則性を見つけるのが難しいこともあります。しかし例えば乗法的関数であることがわかるケースでは、性質を使って計算できるわけです。

数の世界の法則を調べるために、約数のような数の性質同士の関係を調べる、すなわち数論的関数について調べる、という視点を考えるのは面白いですね。

木村すらいむ(@kimu3_slime)でした。ではでは。

 

Elementary Number Theory

Elementary Number Theory

posted with AmaQuick at 2021.02.16
Burton(著)
(2012T)
4.6outof5stars
¥5,437

 

はじめての数論 原著第3版 発見と証明の大航海‐ピタゴラスの定理から楕円曲線まで
Joseph H. Silverman(著), 鈴木 治郎(翻訳)
丸善出版 (2014-05-13T00:00:01Z)
4.4outof5stars
¥3,740

 

こちらもおすすめ

3の倍数の判定法・証明 各桁の和が3の倍数となるか?

フェルマーの小定理、フェルマーテスト、擬素数とは何か