1
高校数学解説
文献あり

素数計数関数の恒等式の反転 後編

41
0
$$$$

はじめに

 pridから考えてきた素数計数関数の恒等式の代表的な応用例を図1に示します。
素数計数関数と3種の近似式の比較 素数計数関数と3種の近似式の比較

詳細は後述しますが、素数計数関数$\pi(N)$を近似する新たな3つの式が自然に得られます。
特に$\pi_{1/2}(N)$$\pi(N)$を滑らかにした関数のように見えます。
ここから素数の個数は、反転係数の総和$S_\ell(N)$を調べればよいことが分かります。
 構成としては、$\mu_{1m}$と第1種,第2種ベルヌーイ数の関係を示した後、この応用例について説明します。
最後に、次回の準備として$s$乗に一般化した恒等式の反転係数を求めます。

第1,2種ベルヌーイ数との関係

 前回prin-part1、素数計数関数の恒等式の反転係数$\mu_{1m}$について計算しました。
その計算結果を表1に再掲します。

                  表1 : $\mu_{1m}$の計算結果

$m$$\mu_{1m}$$m$$\mu_{1m}$$m$$\mu_{1m}$$m$$\mu_{1m}$$m$$\mu_{1m}$
1+1
$ p_1 $-1/2
${p_1}^2$-1/12$p_1p_2$+1/6
${p_1}^3$-1/24${p_1}^2p_2$+1/24$p_1p_2p_3$0
${p_1}^4$-19/720${p_1}^3p_2$+1/45${p_1}^2{p_2}^2$+1/120${p_1}^2p_2p_3$-1/180$p_1p_2p_3p_4$-1/30

               
今回は$\mu_{1m}$と第1,2種ベルヌーイ数との関係を明らかにしていきます。    

第1種ベルヌーイ数との関係

$n \ge 1$に対し、$m_n=p_1\cdots p_n$と定義する。
ここで、$p_1,\dots,p_n$はそれぞれ相異なる素数である。
また$m_0=1$と定める。
そのとき、素数計数関数の恒等式の反転係数$\mu_{\ell,m}$について
$\mu_{1,m_n}=B_n$
が成り立つ。ここで、$B_n$第1種ベルヌーイ数である。

 素数計数関数の恒等式の反転係数$\mu_{1m}$
\begin{equation} \sum_{d | m}\mu_{1d}\eta_{1\frac{m}{d}}= \begin{cases} 1 & \text{if $m=1$,} \\ 0 & \text{otherwise,} \end{cases} \end{equation}
を満たす。ひとまず$n\ge1 $を考える。
約数$d=m_k$の個数は$\begin{pmatrix}    n\\  k \end{pmatrix}$個ある。ここで、
\begin{align} \begin{pmatrix}    n\\  k \end{pmatrix} \equiv\frac{n!}{k!(n-k)!} \end{align}
と定義され、二項係数である。
素数計数関数の展開係数は$\eta_{1,m}=1/(\Omega(m)+1)$なので、
\begin{equation} \sum_{k=0}^n \begin{pmatrix}    n\\  k \end{pmatrix} \frac{\mu_{1,m_k}}{\Omega(m/m_k)+1}=0 \end{equation}
と書ける。$\Omega(m/m_k)=n-k$であり、
二項係数の関係式
\begin{equation} \frac{1}{n-k+1} \begin{pmatrix}    n\\  k \end{pmatrix} =\frac{1}{n+1} \begin{pmatrix}    n+1\\   k  \end{pmatrix} \end{equation}
を使って、
\begin{equation} \frac{1}{n+1} \sum_{k=0}^n \begin{pmatrix}    n+1\\  k \end{pmatrix} \mu_{1,m_k}=0 \end{equation}
となる。両辺に$n+1$を掛け、$n\to n-1$とすると、
\begin{equation} \sum_{k=0}^{n-1} \begin{pmatrix}    n\\  k \end{pmatrix} \mu_{1,m_k}=0 \end{equation}
を得る。ここで、BellmathApostolのp.265より第1種ベルヌーイ数$B_n$
\begin{equation} \sum_{k=0}^{n-1} \begin{pmatrix}    n\\  k \end{pmatrix} B_k=0 \end{equation}
を満たす。比較して、$\mu_{1,m_n}=B_n$を得る。
 $n=0$の場合も、$\mu_{11}=B_1=1$が成立する。

第2種ベルヌーイ数との関係

$n \ge 1$に対し、$m_n={p_1}^n$と定義する。
ここで$p_1$は任意の素数である。
そのとき、素数計数関数の恒等式の反転係数$\mu_{\ell,m}$について
$\mu_{1,m_n}=(-1)^nG_n$
が成り立つ。ここで、$G_n$第2種ベルヌーイ数である。

$m>1$に対して、素数計数関数の恒等式の反転係数$\mu_{1m}$
\begin{equation} \sum_{d | m}\mu_{1d}\eta_{1\frac{m}{d}}=0 \end{equation}
を満たす。
約数$d=m_k$の個数は1個なので、
\begin{equation} \sum_{k=0}^n \frac{\mu_{1,m_k}}{\Omega(m/m_k)+1}=0 \end{equation}
と書ける。$\Omega(m/m_k)=n-k$であり、$\mu_{1,m_n}$について解くと
\begin{equation} \mu_{1,m_n}=- \sum_{k=1}^{n-1} \frac{\mu_{1,m_k}}{n+1-k}-\frac{\mu_{11}}{n+1} \end{equation}
となる。ここで、Gregorywikiより第2種ベルヌーイ数$G_n$
\begin{equation} |G_n|=- \sum_{k=1}^{n-1} \frac{|G_k|}{n+1-k}+\frac{1}{n+1} \end{equation}
で計算される。比較して、$\mu_{1,m_n}=-|G_n|=(-1)^nG_n$を得る。

それぞれ表1の右端、左端に対応しています。
$n=4$までの第1種ベルヌーイ数、第2種ベルヌーイ数を表2に示します。

 表2 : $n=4$までの第1,2種ベルヌーイ数

$n$1234
$B_n$-1/2+1/60-1/30
$(-1)^nG_n$-1/2-1/12-1/24-19/720

この表から、表1の結果と一致していることが確認できました。
 一般の整数$m$についても、次のことが言えます。

命題1,2

素数計数関数の恒等式の反転係数$\mu_{1m}$は、第1種ベルヌーイ数と第2種ベルヌーイ数の線形和で表すことが出来る。

素数計数関数の恒等式の反転係数$\mu_{1 m}$
\begin{equation} \mu_{1m}=\sum_{\substack{d|m\\d\neq m}}-\mu_{1d}\eta_{1,m/d} \end{equation}
で計算される。命題1,2より$m$が相異なる素数の積では第1種ベルヌーイ数、ある素数の累乗では第2種ベルヌーイ数で表せる。
したがって、任意の整数$m$に対し、$\mu_{1m}$は第1種ベルヌーイ数と第2種ベルヌーイ数の線形和で書ける。

反転係数$\mu_{\ell m}$の中で最も簡単な$\ell=1$の場合は、第1種、第2種ベルヌーイ数で表せることが分かりました。
第1種ベルヌーイ数が素数と関連することは知られていますが、
素数計数関数の恒等式から自然に導かれるのは驚くべきことです。

反転係数の応用

 私達は前回prin-part1、素数計数関数の恒等式を反転させ、
\begin{equation} \pi(N)=\displaystyle \sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \mu_{\ell m} \Bigl( \Bigl\lfloor \sqrt[\ell]{N/m} \Bigr\rfloor -1\Bigr),  \end{equation}
を得ました。この式は正確な素数の個数を与えますが、計算がやや面倒です。
 ところで実数$x$に対する床関数$\lfloor x \rfloor$
\begin{equation} x-1 < \lfloor x \rfloor \le x \end{equation}
を満たします。これを踏まえ、$\lfloor x \rfloor $$x,x-1,x-1/2$で近似したものを、それぞれ$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$と定義します。
これらの近似式は、次のように書けます。

$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$の表式

2以上の実数$N$に対し、$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$は以下のように表せる。
\begin{align} \pi_0(N)&=\sum_{\ell=1}^{\lfloor \log_2{N} \rfloor}\biggl(S_\ell\biggl( \frac{N}{2^\ell}\biggr)\sqrt[\ell]{\frac{N}{2^\ell}}+\frac{1}{\ell}\int_{1}^{ N/2^\ell }S_\ell(t)t^{1/\ell-1}dt\biggr), \\ \pi_1(N)&=\sum_{\ell=1}^{\lfloor \log_2{N} \rfloor}\frac{2}{\ell}\int_{1}^{ N/2^\ell }S_\ell(t)t^{1/\ell-1}dt, \\ \pi_{1/2}(N)&=\frac{\pi_0(N)+\pi_1(N)}{2}, \end{align}
ここで、$S_\ell(x)$
\begin{equation} S_\ell(x)\equiv\sum_{m=1}^{\lfloor x \rfloor} \frac{\mu_{\ell m}}{\sqrt[\ell]{m}} \end{equation}
で定義される。

$\pi_0(N)$は定義から
\begin{align} \pi_0(N)&=\displaystyle \sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \Biggl( \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \frac{\mu_{\ell m}}{\sqrt[\ell]{m}}\sqrt[\ell]{N}-\sum_{m=1}^{\lfloor N/2^\ell \rfloor} \mu_{\ell m} \Biggr) \\ &=\sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \Biggl( S_\ell\biggl(\frac{N}{2^\ell}\biggr)\sqrt[\ell]{N}-\sum_{m=1}^{\lfloor N/2^\ell \rfloor} \mu_{\ell m} \Biggr) \end{align}
と表せる。ここで、2項目$\mu_{\ell m}$の総和にアーベルの総和公式を用いる。
Apostolのp.77,p.78より任意の数論的関数$a(n)$に対し、
\begin{equation} A(x)=\sum_{n\le x}a(n) \end{equation}
とする。ここで$x<1$では$A(x)=0$である。
$0< y< x$のとき、$f$$[y,x]$の範囲で連続な導関数を持つと仮定して、
\begin{equation} \sum_{y< n\le x}a_nf(n)=A(x)f(x)-A(y)f(y)-\int_y^xA(t)f'(t)dt \end{equation}
が成り立つ。初項を分離してから適用することで、
\begin{equation} \sum_{m=1}^{\lfloor N/2^\ell \rfloor}\mu_{\ell m}=\mu_{\ell1}+\sum_{1< m\le \lfloor N/2^\ell \rfloor}\frac{\mu_{\ell m}}{\sqrt[\ell]{m}}\cdot\sqrt[\ell]{m}=S_\ell\biggl(\frac{N}{2^\ell}\biggr)\sqrt[\ell]{\frac{N}{2^\ell}}-\frac{1}{\ell}\int_1^{N/2^\ell }S_\ell(t)t^{1/\ell-1}dt \end{equation}
と書ける。代入し、$\pi_0(N)$の表式を得る。
同様にして、$\pi_1(N),\pi_{1/2}(N)$の表式も得た。

すなわち$\lfloor N \rfloor$の近似によって、$\pi(N)$の計算が反転係数の総和$S_\ell(N)$の計算に帰着できます。
実際に$N=[2,128)$で3種の近似式を計算し、素数計数関数$\pi(N)$と比較したものを図2に示します。
これは冒頭に示した図と同じです。

素数計数関数と3種の近似式の比較 素数計数関数と3種の近似式の比較

この図から、$\pi_{1/2}(N)$$\pi(N)$をより滑らかにした良い近似式であることが読み取れます。
逆に、$S_\ell(N)$の計算によって$\pi(N)$を見積もることが可能と言えます。
Titchのp.15より、$\lfloor N \rfloor$フーリエ級数展開すると
\begin{equation} \lfloor N \rfloor = N -\frac12+\sum_{n=1}^\infty\frac{\sin(2n\pi x)}{n\pi} \end{equation}
となります。これは整数でない$N$について成り立ちます。
つまり$\pi_{1/2}(N)$$\lfloor N \rfloor$の振動成分を無視した近似であり、3種の中で最も良い近似になっていることの説明を与えます。
 また$\pi_0(N),\pi_1(N)$に関して、次のことが予想されます。

$N\ge10$において素数計数関数$\pi(N)$は、$\pi_0(N)$$\pi_1(N)$の間に存在する。

 $\pi(N)が\pi_0(N)$$\pi_1(N)$と一致する場合を考える。
$\lfloor x \rfloor =x$が成り立つのは$x=n$($n$:整数)で、
$x\to n-0$としたとき$\lfloor x \rfloor \to x-1$となる。
よって$\pi(N)=\pi_0(N)$のみを考えればよい。
 $N \in [2,4)$の場合、$\lfloor N \rfloor =N$を満たせばよい。
すなわち整数である$N=2,3$で成り立つ。
 $N \in [4,6)$の場合、$\lfloor N/2 \rfloor=N/2$かつ$\bigl\lfloor \sqrt{N} \bigr\rfloor =\sqrt{N}$も満たす必要がある。
それぞれ2の倍数、平方根が条件であり、$N=4$で成り立つ。
 $N \in [6,8)$の場合、$\lfloor N/3 \rfloor =N/3$を満たせばよい。
上記の条件に加えて、3の倍数である数は存在しない。
8以上の$N$についても同様のことが言えるため、
$\pi(N)=\pi_0(N)$が成り立つのは、$N=2,3,4$のみである。
その3点でしか一致しないにも関わらず、
図2では$N\in[10,128)$$\pi_0(N)<\pi(N)<\pi_1(N)$が成り立っている。
 また反転係数の正負によって$\pi_0(N)$$\pi_1(N)$の大小関係、
$\pi(N)$がこの範囲に存在する理由は非自明である。

 図2の$\pi_0(N)$$\pi_{1/2}(N)$はギザギザしていますが、$\pi_1(N)$は滑らかです。$\pi_1(N)$は計算を進めることができ、別の表式が得られます。

$\pi_1(N)$の別表式

2以上の実数$N$に対し、$\pi_1(N)$
\begin{equation} \pi_1(N)=2\sum_{\ell=1}^{\lfloor \log_2{N}\rfloor} \Biggl(\sum_{m=1}^{\lfloor N/2^\ell \rfloor}S_\ell(m)\cdot\bigl(\sqrt[\ell]{m+1}-\sqrt[\ell]{m}\bigr)+S_\ell\biggl(\biggl\lfloor\frac{N}{2^\ell}\biggr\rfloor\biggr)\cdot\Biggl(\sqrt[\ell]\frac{N}{2^\ell}-\sqrt[\ell]{\biggl\lfloor\frac{N}{2^\ell}\biggr\rfloor}\Biggr)\Biggr) \end{equation}
と表される。

定理3の$\pi_1(N)$の式を少し書き換える。
\begin{align} \pi_1(N)&=\sum_{\ell=1}^{\lfloor \log_2{N} \rfloor}\frac{2}{\ell}\int_{1}^{ N/2^\ell }S_\ell(t)t^{1/\ell-1}dt \\ &=\sum_{\ell=1}^{\lfloor \log_2{N} \rfloor}\frac{2}{\ell}\biggl(\int_{1}^{ \lfloor N/2^\ell \rfloor }S_\ell(t)t^{1/\ell-1}dt+\int_{\lfloor N/2^\ell \rfloor }^{N/2^\ell}S_\ell(t)t^{1/\ell-1}dt\biggr). \end{align}
$S_\ell(x)$$x$が整数のときのみ値が変わり、それ以外は定数である。
2項目は$S_\ell(t)=S_\ell(\lfloor N/2^\ell \rfloor)$と定数になるため、
\begin{equation} S_\ell\biggl(\biggl\lfloor \frac{N}{2^\ell} \biggr\rfloor\biggr)\cdot\ell \Biggl(\sqrt[\ell]{\frac{N}{2^\ell}}-\sqrt[\ell]{\biggl\lfloor\frac{N}{2^\ell}\biggr\rfloor}\Biggr) \end{equation}
と計算される。1項目は整数で区間を分割し、それらを足し上げ
\begin{align} &\sum_{m=1}^{\lfloor N/2^\ell \rfloor}S_\ell(m)\int_{m}^{m+1}t^{1/\ell-1}dt \\ &=\sum_{m=1}^{\lfloor N/2^\ell \rfloor}S_\ell(m)\cdot \ell\bigl(\sqrt[\ell]{m+1}-\sqrt[\ell]{m}\bigr) \end{align}
となる。これらの結果を代入して整理すると、目的の式が得られる。

 図2から反転係数の総和$S_\ell(x)$について調べることで、素数計数関数$\pi(N)$を推定できると分かりました。
そこで、$S_\ell(x)$にはどのような関数が適当なのでしょうか?
証明は出来ていませんが、今後の展望とモチベーションのため、経験則に基づく簡単なモデルを提示します。

$S_1(N)$の近似

$S_1(N)$について、次のことを仮定する。
\begin{equation} S_1(N)\approx \frac{1}{\ln(2N)}. \end{equation}
そのとき、$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$はそれぞれ
\begin{align} \pi_0(N)&\approx\frac12\biggl(\frac{N}{\ln N}+\mathrm{Li}(N)\biggr)+(\ell \ge2\text{の項}),\\ \pi_1(N)&\approx\mathrm{Li}(N)+(\ell \ge2\text{の項}), \\ \pi_{1/2}(N)&\approx\frac14\frac{N}{\ln N}+\frac34\mathrm{Li}(N)+(\ell \ge2\text{の項}), \end{align}
となる。ここで$\mathrm{Li}(x)$補正対数積分関数であり、
\begin{align} \mathrm{Li}(x)&\equiv\mathrm{li}(x)-\mathrm{li}(2), \\ \mathrm{li}(x)&\equiv \int_{0}^{x}\frac{dt}{\ln t} \end{align}
で定義される。

 素数定理から$S_1(N)\approx 1/\ln(2N)$と近似する。
この近似の妥当性を確かめるため、$S_1(N)$$1/\ln(2N)$を比較したものを図3に示す。
!FORMULA[186][1731313890][0]の近似の検証 $S_1(N)$の近似の検証
図3より、この近似は$S_1(N)$より少し小さいが、概ね妥当と言える。
 定理3の式に$S_1(N)=1/\ln(2N)$を代入する。
\begin{equation} \pi_0(N)\approx\frac12\frac{N}{\ln N}+\int_1^{N/2}\frac{1}{\ln 2t}dt+(\ell \ge2\text{の項}). \end{equation}
第2項は$s=2t$と置換することで、
\begin{equation} =\frac12\frac{N}{\ln N}+\int_2^{N}\frac12\frac{ds}{\ln s}+(\ell \ge2\text{の項}) \end{equation}
となり、補正対数積分関数$\mathrm{Li}(N)$を用いて、目的の式を得る。
 $\pi_1(N)$$\pi_{1/2}(N)$の場合も同様に求められる。

$S_1(N)$の近似による誤差

 $S_1(N)\approx1/\ln(2N)$と近似し、定理3の式に代入しました。
しかしアーベルの総和公式$S_\ell(N)$が離散的な場合の式であり、連続関数にもそのまま適用できる保証はありません。
 ここでは$S_1(N)$の近似が3種の近似式$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$に及ぼす影響と、その誤差を示します。それぞれ図4、図5としました。

!FORMULA[200][1731313890][0]の近似による3種の近似式!FORMULA[201][1998620284][0]への影響 $S_1(N)$の近似による3種の近似式$(\ell=1)$への影響
!FORMULA[202][1731313890][0]の近似によって生じる誤差 $S_1(N)$の近似によって生じる誤差
図4では$S_1(N)$を近似して計算したものを点線、元の関数を実線で示しています。
この図から、$S_1(N)$の近似をしたものは元の関数と挙動が似ているが、どれも値が小さくなっていることが読み取れます。
図5では誤差=近似後-近似前とし、3種の近似式について示しました。
$N$が大きくなると誤差も大きくなっていることが分かります。どれも$N=128$$-6$程度の誤差が生じています。

$S_1(N)=1/\ln(2N)$の近似から、$N/\ln N$$\mathrm{Li}(N)$が現われました。これらの関数は素数定理と密接に関連しています。

素数定理

任意の関数$f(x), g(x)(\ne0)$に対して、記号「$\sim$」を
\begin{equation} f(x) \sim g(x) \Leftrightarrow \lim_{x\to \infty}\frac{f(x)}{g(x)}=1 \end{equation} 
と定義する。そのとき、primethmathApostolのp.74より
\begin{align} \pi(N)&\sim \frac{N}{\ln N}, \\ \pi(N)&\sim \mathrm{Li}(N), \end{align}
が成り立つ。

既存の素数定理と繋がることが分かりました。
 これからは$S_1(N)$の近似の導出に加え、$\lfloor N \rfloor$の近似による誤差、$S_1(N)$の近似による誤差、$\ell \ge2$の項の影響などを調べる必要があります。
逆に、素数定理と繋がるよう与えた$S_1(N)$の関数形は、非常にシンプルで興味深いものになっています。
一連の流れを通して、反転係数の総和$S_\ell(N)$の重要性が分かると思います。

$s$乗に一般化された恒等式の反転係数

 これまでは素数計数関数の恒等式の反転係数について議論してきました。
prid-exでは、素数計数関数の恒等式を複素数の$s$乗に一般化しました。
結果は、与えられた2以上の実数$N$について
\begin{equation} H_s(N)-1=\displaystyle \sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \frac{\eta_{\ell m}}{m^s}q_{\ell s} \Bigl(\sqrt[\ell]{N/m} \Bigr),\quad \eta_{\ell m}=\frac{1}{\Omega(m)+\ell}, \end{equation}
が成り立つことでした。そこで、この式を反転させ$q_{s}(N)$$\bigl(H_{\ell s}\bigl(\sqrt[\ell]{N/m}\bigr)-1\bigr)$の線形和で表します。
この反転式について次の命題が成り立ちます。

$s$乗に一般化された恒等式の反転式

2以上の実数$N$について、$q_s(N)$
\begin{equation} q_s(N)=\displaystyle \sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \frac{\mu_{\ell m}}{m^s}\Bigl(H_{\ell s} \Bigl(\sqrt[\ell]{N/m} \Bigr)-1\Bigr) \end{equation}
で表せる。ここで、$\mu_{\ell m}$は素数計数関数の恒等式の反転係数である。

 $q_s(N)$$\bigl(H_{\ell s}\bigl(\sqrt[\ell]{N/m}\bigr)-1\bigr)$で展開した係数を$\mu'_{\ell m}$と定義する。
$\mu'_{11}=\mu_{11}/1^s=1$であり、それ以外の$\ell,m$について考える。
 簡単な例として、$\mu'_{1m}$について考える。まず恒等式を書き換えて
\begin{equation} q_s(N)=H_s(N)-1-\displaystyle \sum_{\substack{\ell=1\\(\ell,m)\neq(1,1)}}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \frac{\eta_{\ell m}}{m^s}q_{\ell s} \Bigl(\sqrt[\ell]{N/m} \Bigr) \end{equation}
とする。これを自身に代入していき、反転させる。そこで$q_s(N/m)$の係数の変化を考える。
寄与があるのは$m$の約数$d$の項であり、$\mu'_{1d} q_s(N/d)$に代入すると、
\begin{align} \mu'_{1d}q_s(N/d)=\mu'_{1d}\biggl(H_s(N/d)-1-\frac{\eta_{12}}{2^s}q_s(N/2d)-\cdots&-\frac{\eta_{1,m/d}}{(m/d)^s}q_s(N/m)-\cdots \\ &-\frac{\eta_{2,m/d}}{(m/d)^s}q_{2s}\Bigl(\sqrt{N/m}\Bigr)-\cdots\biggr) \end{align}
となる。すなわち$d$の項によって係数が$-\mu'_{1d}\eta_{1,m/d}/(m/d)^s$変化する。
自身の項の影響は受けないことを考慮して、$\mu'_{1m}$の計算式
\begin{equation} \mu'_{1m}=\sum_{\substack{d|m\\d\neq m}}-\mu'_{1d}\frac{\eta_{1,m/d}}{(m/d)^s} \end{equation}
を得る。ところで、素数計数関数の恒等式の反転係数$\mu_{1m}$
\begin{equation} \mu_{1m}=\sum_{\substack{d|m\\d\neq m}}-\mu_{1d}\eta_{1,m/d} \end{equation}
で計算される。比較して$\mu'_{1m}=\mu_{1m}/m^s$が分かる。
 次に$\mu'_{2m}$すなわち$q_{2s}\bigl(\sqrt{N/m}\bigr)$の係数の変化について考える。
上の$\mu'_{1d}q_s(N/d)$の代入によって、係数が$-\mu_{1d}\eta_{2,m/d}/m^s$変化する。
その他に$\mu'_{2d}q_{2s}\bigl(\sqrt{N/d}\bigr)$の寄与もある。
$q_{2s}(N)$$s\to2s$として
\begin{equation} q_{2s}(N)=H_{2s}(N)-1-\displaystyle \sum_{\substack{\ell=1\\(\ell,m)\neq(1,1)}}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \frac{\eta_{\ell m}}{m^{2s}}q_{2\ell s} \Bigl(\sqrt[\ell]{N/m} \Bigr) \end{equation}
で書けるため、$\mu'_{2d}q_{2s}\bigl(\sqrt{N/d}\bigr)$に代入すると
\begin{equation} \mu'_{2d}q_2\Bigl(\sqrt{N/d}\Bigr)=\mu'_{2d}\Biggl(H_{2s}\Bigl(\sqrt{N/d}\Bigr)-1-\frac{\eta_{12}}{2^{2s}}q_{2s}\Bigl(\sqrt{N/2^2d}\Bigr)-\cdots-\frac{\eta_{1,\sqrt{m/d}}}{\bigl(\sqrt{m/d}\bigr)^{2s}}q_{2s}\Bigl(\sqrt{N/m}\Bigr)-\cdots\Biggr) \end{equation}
となる。すなわちこの項への代入で、係数が$-\mu'_{2d}\eta_{1,\sqrt{m/d}}/(m/d)^s$変化する。
$\mu'_{2m}q_{2s}\bigl(\sqrt{N/m}\bigr)$への代入は除外して、$\mu'_{2m}$の計算式
\begin{equation} \mu'_{2m}=\sum_{d|m}-\frac{\mu_{1d}\eta_{2,m/d}}{m^s}+\sum_{\substack{d|m\\d\neq m}}-\frac{\mu'_{2d}\eta_{1,\sqrt{m/d}}}{(m/d)^s} \end{equation}
を得る。一方で、素数計数関数の恒等式の反転係数$\mu_{2m}$
\begin{equation} \mu_{2m}=\sum_{d|m}-\mu_{1d}\eta_{2,m/d}+\sum_{\substack{d|m\\d\neq m}}-\mu_{2d}\eta_{1,\sqrt{m/d}} \end{equation}
で計算される。比較して$\mu'_{2m}=\mu_{2m}/m^s$が分かる。
 最後に$\mu'_{\ell m}$すなわち$q_{\ell s} \bigl(\sqrt[\ell]{N/m}\bigr)$の係数の変化について考える。
$\ell$の約数$d'$として、$q_{d's}\bigl(\sqrt[d']{N/d}\bigr)$の寄与を考えると、
\begin{align} \mu'_{d'd}q_{d's}\Bigl(\sqrt[d']{N/d}\Bigr)=\mu'_{d'd}\biggl(H_{d's}\Bigl(\sqrt[d']{N/d}\Bigr)-1-&\cdots-\frac{\eta_{1,\sqrt[d']{m/d}}}{(m/d)^s}q_{d's}\Bigl(\sqrt[d']{N/m}\Bigr)-\cdots \\ &\cdots-\frac{\eta_{2,\sqrt[d']{m/d}}}{(m/d)^s}q_{2d's}\Bigl(\sqrt[2d']{N/m}\Bigr)-\cdots \\ &\cdots-\frac{\eta_{\ell/d',\sqrt[d']{m/d}}}{(m/d)^s}q_{\ell s}\Bigl(\sqrt[\ell]{N/m}\Bigr)-\cdots\biggr) \end{align}
となる。すなわちこの項への代入で、係数が$-\mu'_{d'd}\eta_{\ell/d',\sqrt[d']{m/d}}/(m/d)^s$変化する。
$\mu'_{\ell m}q_{\ell s}\bigl(\sqrt[\ell]{N/m}\bigr)$への代入は除外して、$\mu'_{\ell m}$の計算式
\begin{equation} \mu'_{\ell m}=\sum_{\substack{d'|\ell \\ (d',d)\neq(\ell,m)}}\sum_{d|m} \frac{-\mu'_{d'd}\eta_{\ell/d',\sqrt[d']{m/d}}}{(m/d)^s} \end{equation}
を得る。ここで$(d',d)=(\ell,m)$を除いて、総和が取られている。
素数計数関数の恒等式の反転係数$\mu_{\ell m}$
\begin{equation} \mu_{\ell m}=\sum_{\substack{d'|\ell \\ (d',d)\neq(\ell,m)}}\sum_{d|m} -\mu_{d'd}\eta_{\ell/d',\sqrt[d']{m/d}} \end{equation}
で計算される。比較して$\mu'_{\ell m}=\mu_{\ell m}/m^s$が分かる。
以上より、$s$乗に一般化された恒等式の反転式を得た。

これが素数計数関数の恒等式の反転式の拡張になっていることは、ただちに確かめられます。

命題7

2以上の実数$N$について、$\pi(N)$
\begin{equation} \pi(N)=\displaystyle \sum_{\ell=1}^{\lfloor \log_2{N} \rfloor} \sum_{m=1}^{\lfloor N/2^\ell \rfloor} \mu_{\ell m} \Bigl( \Bigl\lfloor \sqrt[\ell]{N/m} \Bigr\rfloor -1\Bigr),  \end{equation}
と表される。これは素数計数関数の恒等式の反転式である。

命題7の反転式に、$s=0$を代入する。そして、$H_0(N)=\lfloor N \rfloor$$q_0(N)=\pi(N)$であることを使用する。

 $s$乗に拡張すると、展開係数$\eta_{\ell m}$$1/m^s$倍されますが、反転係数も同じく$1/m^s$倍されています。
反転係数の計算は複雑にもかかわらず、$s$乗に拡張した結果が対称的に現れており、何らかの規則性を感じます。

おわりに

 まず素数計数関数の恒等式の反転係数$\mu_{1m}$と第1,2種ベルヌーイ数の関わりを明らかにしました。
これまでの議論の応用として、反転式の床関数$\lfloor x \rfloor$を近似し、3種の近似式$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$を得ました。
振動成分を無視した$\pi_{1/2}(N)$$\pi(N)$をよく近似し、$\pi_0(N),\pi_1(N)$は素数の範囲を与える可能性を秘めています。
逆に、図2の計算結果から反転係数の総和$S_\ell(N)$について知ることが、素数の個数を知るのに有効と分かりました。
また素数定理に繋げるためには、$S_1(N)\approx1/\ln(2N)$と近似すればよく、非常にシンプルで結果に即していました。
最後に、$s$乗に一般化した恒等式の反転式を求め、反転係数が展開係数と同様に$1/m^s$倍されることを明らかにしました。
 ところで、この素数計数関数の恒等式の理論には、離散的で有限という特徴があります。
この性質のおかげで高校生でも計算できますが、理論としては扱いづらく、既存の理論との相性も悪いです。
以降はこの理論を連続性や無限と接続させることを目標とします。
 次回は、最後の$s$乗に一般化した反転係数を考察し、積分や測度の概念に繋げる予定です。

数値計算のプログラム(Fortran90)

$N=[2,128)$$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$の値を計算するプログラム

        program hanten
  implicit none
  real*8 :: a(63),b(31),c(15),d(7),e(3),f(1)
  real*8 :: N,sa1,sa2,pa1,pa2,sb1,sb2,pb1,pb2,pc1,pc2,sc1,sc2 &
  ,sd1,sd2,pd1,pd2,se1,se2,pe1,pe2,sf1,sf2,pf1,pf2,p1,p2,p
  integer :: i,j
  open(10,file='mu1m2.dat',status='old')
  do i=1,63
    read(10,*) a(i)
  enddo
  close(10)
  open(11,file='mu2m2.dat',status='old')
  do i=1,31
    read(11,*) b(i)
  enddo
  close(11)
  open(12,file='mu3m2.dat',status='old')
  do i=1,15
    read(12,*) c(i)
  enddo
  close(12)
  open(13,file='mu4m2.dat',status='old')
  do i=1,7
    read(13,*) d(i)
  enddo
  close(13)
  open(14,file='mu5m2.dat',status='old')
  do i=1,3
    read(14,*) e(i)
  enddo
  close(14)
  open(15,file='mu6m2.dat',status='old')
  read(15,*) f(1)
  close(15)
  !print *,a
  !print *,b
  !print *,c
  !print *,d
  !print *,e
  !print *,f

  N=2d0
  do j=0,2519
    sa1=0d0
    sa2=0d0
    do i=1,int(floor(N/2d0))
      sa1=sa1+a(i)/dble(i)
      sa2=sa2+a(i)
    enddo
    pa1=sa1*N-sa2
    pa2=sa1*N-2d0*sa2

    if(N.ge.4d0) then
      sb1=0d0
      sb2=0d0
      do i=1,int(floor(N/4d0))
        sb1=sb1+b(i)/dsqrt(dble(i))
        sb2=sb2+b(i)
      enddo
      pb1=sb1*dsqrt(N)-sb2
      pb2=sb1*dsqrt(N)-2d0*sb2
    else
      pb1=0d0
      pb2=0d0
    endif
    
    if(N.ge.8d0) then
      sc1=0d0
      sc2=0d0
      do i=1,int(floor(N/8d0))
        sc1=sc1+c(i)/(dble(i)**(1d0/3d0))
        sc2=sc2+c(i)
      enddo
      pc1=sc1*N**(1d0/3d0)-sc2
      pc2=sc1*N**(1d0/3d0)-2d0*sc2
    else
      pc1=0d0
      pc2=0d0
    endif

    if(N.ge.16d0) then
      sd1=0d0
      sd2=0d0
      do i=1,int(floor(N/16d0))
        sd1=sd1+d(i)/(dble(i)**(1d0/4d0))
        sd2=sd2+d(i)
      enddo
      pd1=sd1*N**(1d0/4d0)-sd2
      pd2=sd1*N**(1d0/4d0)-2d0*sd2
    else
      pd1=0d0
      pd2=0d0
    endif

    if(N.ge.32d0) then
      se1=0d0
      se2=0d0
      do i=1,int(floor(N/32d0))
        se1=se1+e(i)/(dble(i)**(1d0/5d0))
        se2=se2+e(i)
      enddo
      pe1=se1*N**(1d0/5d0)-se2
      pe2=se1*N**(1d0/5d0)-2d0*se2
    else
      pe1=0d0
      pe2=0d0
    endif

    if(N.ge.64d0) then
      sf1=0d0
      sf2=0d0
      do i=1,int(floor(N/64d0))
        sf1=sf1+f(i)/(dble(i)**(1d0/6d0))
        sf2=sf2+f(i)
      enddo
      pf1=sf1*N**(1d0/6d0)-sf2
      pf2=sf1*N**(1d0/6d0)-2d0*sf2
    endif

    p1=pa1+pb1+pc1+pd1+pe1+pf1
    p2=pa2+pb2+pc2+pd2+pe2+pf2
    p=(p1+p2)/2d0
    write(*,*) N,p1,p2,p
    N=N+0.05d0
  enddo
  stop
  end
    

 まず$\ell=$1~6までの反転係数$\mu_{\ell m}$の配列を、それぞれa(i),b(i),...,f(i)に格納した。
sa1に$\mu_{1m}/m$の総和、sa2に$\mu_{1m}$の総和を計算させた。それを基に$\pi_0(N),\pi_1(N)$$\ell=1$部分を計算させ、結果をpa1,pa2とした。
同様のことを$\ell=6$のf(i)まで行い、最後にそれらを合計した。$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$はそれぞれp1,p2,p(=p1とp2の平均)に対応する。
これを$N=2$から+0.05ずつ128まで繰り返し、$N$と計算結果を出力させた。
 gnuplotを用いて、素数計数関数のデータファイルと重ねて表示させた。

$N=$1~63での$S_1(N)$を出力するためのプログラム

        program kinji
  implicit none
  real*8 :: a(63)
  real*8 :: N,sa1
  integer :: i
  open(10,file='mu1m2.dat',status='old')
  do i=1,63
    read(10,*) a(i)
  enddo
  close(10)
  !print *,a
  
  sa1=0d0
  do i=1,63
    sa1=sa1+a(i)/dble(i)
    write(*,*) i,sa1
    N=N+1d0
  enddo
  stop
  end
    

 1つ前のソースファイルをa(i)だけ残して、sa1だけ取り出すように改造した。
なお$\mu_{1m}/m$の総和を求めるだけなので、$N=1$から+1ずつ63まで繰り返した。
 gnuplotを用いて、$1/\ln(2x)$と重ねてプロットした。

$N=[2,128)$$S_1(N)$を近似した$\pi_0(N),\pi_1(N),\pi_{1/2}(N)$$\ell=1$部分を計算し、誤差を出力するプログラム

        program kinji
  implicit none
  real*8 :: a(63)
  real*8 :: N,sa1,sa2,pa1,pa2,pa,l1,l2,l,e1,e2,e
  integer :: i,j
  open(10,file='mu1m2.dat',status='old')
  do i=1,63
    read(10,*) a(i)
  enddo
  close(10)
  !print *,a

  N=2d0
  do j=0,125
    sa1=0d0
    sa2=0d0
    do i=1,int(floor(N/2d0))
      sa1=sa1+a(i)/dble(i)
      sa2=sa2+a(i)
    enddo
    pa1=sa1*N-sa2
    pa2=sa1*N-2d0*sa2
    pa=(pa1+pa2)/2d0

    !hikaku
    l1=(li(N)+N/dlog(N))/2d0
    l2=li(N)
    l=3d0/4d0*li(N)+1d0/4d0*N/dlog(N)
    e1=l1-pa1
    e2=l2-pa2
    e=l-pa

    write(*,*) N,pa1,pa2,pa,l1,l2,l,e1,e2,e
    N=N+0.05d0
  enddo
  
  contains
    real(8) function li(x)
      implicit none
      real(8),intent(in) :: x
      integer :: i,n
      real(8) :: a,b,h,t,s
      if(x<=2d0) then
        li=0d0
        return
      endif
      n=2000 !even
      a=2d0
      b=x
      h=(b-a)/n
      s=1d0/dlog(a)+1d0/dlog(b)
      do i=1,n-1
        t=a+i*h
        if (mod(i,2)==0)then
          s=s+2d0/dlog(t)
        else
          s=s+4d0/dlog(t)
        endif
      enddo
      li=h*s/3d0
    end function li
  end program kinji
    

 $\pi_0(N),\pi_1(N),\pi_{1/2}(N)$を計算するプログラムをa(i)だけ残したものである。l1,l2,lに命題5で得た結果を代入した。
近似後-近似前を誤差とし、それぞれe1,e2,eとした。なお対数補正積分関数$\mathrm{Li}(N)$は合成シンプソン法を用いて計算した。
これを$N=2$から+0.05ずつ128まで繰り返し、$N$と計算結果を出力させた。
 gnuplotを用いて、図4では2列目~7列目、図5では8列目~10列目をプロットした。

参考文献

投稿日:19日前
数学の力で現場を変える アルゴリズムエンジニア募集 - Mathlog served by OptHub

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。

投稿者

LAJQ
5
314

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中