|
第5回 素数定理を紐解く 〜後編〜大野 泰生・谷口 隆(共著) 「素数定理」とよばれる定理がある. $x$ 以下の素数の個数を $\pi(x)$ で表すと, $\displaystyle \lim_{x\to\infty}\dfrac{\pi(x)}{x/\log x}=1 \tag{1}$
だという定理である.ただし $\log$ は自然対数である.第4回(前編)に引き続き,この素数定理について考えていこう. 緩慢な収束
第4回では,いくつかの $x$ で, $\pi(x)$ と $x/\log x$ の値を見比べてみた.もう一度, $x=10^6$, $10^8$, $10^{10}$(それぞれ $100$ 万, $1$ 億, $100$ 億)での両方の値を比べて表にしてみよう.
($x/\log x$ の方は,小数点以下は四捨五入している.)
先月は触れなかったけれど,誤差について気になった読者がおられたかも知れない.確かに誤差はだんだん小さくなっている.しかし,その小さくなり具合は,何だかエライゆっくりではなかろうか.表中の誤差 $8.4$ %, $6.1$ %, $4.8$ %は,順に小さくなってはいる.比はどこまでも $1$ に近づくという素数定理の,状況証拠だということはできる.しかし $x$ が $1$ 億で $6$ %程の誤差, $100$ 億でも $5$ %弱の誤差,というのでは法則としては今ひとつ力強さに欠けるのではないか.「いつになったら $1$ %を切るんだい?」と言いたくなる.実際, $x=10^{20}$ でもまだ $2.3$ %ぐらいの誤差があるのだ. これが正しい関数だ! いろいろな関数が提案されたが,最終的に数学者の間で広く公認されることになったのは,次の関数である. ${\rm Li}(x) =\displaystyle \int_2^x\dfrac{1}{\log t}\,dt$ 先ほどと同じく $x=10^6$, $10^8$, $10^{10}$ で, $\pi(x)$ の値と比べてみよう.
差に注目してほしい.例えば $x=10^6$ なら差は $129$ だ. $7$ 万 $8000$ 個ぐらいを $130$ 程度の差で見積もっているというわけだ. $x=10^8$, $10^{10}$ のときの差もみてほしい.それぞれ実際の個数と $800$, $3000$ 程度の差である.誤差の $0.16$ %, $0.013$ %, $0.00068$ %も,先ほどの $8.4$ %, $6.1$ %, $4.8$ %とは文字通り桁違いで, $0$ に近づいていくスピードも断然速い. $\label{eq:pnt-li} \displaystyle \lim_{x\to\infty} \dfrac{\pi(x)}{{\rm Li}(x)}=1 \tag{2}$
と書き換えることができる(これについては補遺で簡単に説明することにした).以降は素数定理といえば式 $(2)$ を考えることにしよう. 素数率?
上の表でみたように, ${\rm Li}(x)$ の近似精度は目を見張るほどよい.このことの意味を少し考えておこう.そもそも関数 ${\rm Li}(x)$ にはどんな意味があるのだろうか. 『整数 $n$ が $t$ ぐらいの大きさのとき,確率 $\dfrac{1}{\log t}$ で $n$ に起きる事象 $P$』 があると考えてみよう.このとき $2$ から $x$ までの範囲にある整数のうちで事象 $P$ が起きるものの個数は,およそ $\displaystyle \int_2^x\dfrac{1}{\log t}\,dt$ で見積もられる――ところで,これこそ先の ${\rm Li}(x)$ である.つまり,『$x$ 以下の素数の個数を数えるとほぼ ${\rm Li}(x)$ になっている』ということは,
ということと解釈できる.この解釈にはちょっと面白い発展性があるので,また回を改めて話してみたい. 素数定理の証明
このように,まずデータを集め,そこから統計的視点で法則や意味を見出すことは興味深い.でも,それで素数定理が証明できるかというと,これはまた別の問題である.
などを証明した.しかし,素数定理の証明は依然として困難をきわめた. $\zeta(s) %=\sum_{n=1}^\infty\dfrac{1}{n^s} =1+\dfrac{1}{2^s}+\dfrac{1}{3^s}+\dfrac{1}{4^s} +\dfrac{1}{5^s}+\dfrac{1}{6^s}+\cdots$
で,変数 $s$ を実数だけでなく複素数の範囲に広げると,関数 $\pi(x)$ と緊密な繋がりがあることを発見したのだ.リーマンは,微積分は実数だけでなく複素数でも考えることに大きな可能性があることを見出し,理論を作り上げた人物のひとりである.リーマンのこの研究により, $\zeta(s)$ は彼の名を冠してリーマンのゼータ関数と呼ばれるようになった.約40年後,素数定理は“複素数の微積分”を使い, $\zeta(s)$ の研究から証明された.リーマンが見抜いた通りの筋書きだった. エピローグ
整数の研究で素数の問題なのに複素数でしかも微積分だなんて,なんかとっても不思議だろう.でも $x$ が大きくなると, $\pi(x)$ の値は,素数を直接数えるよりもゼータ関数を調べて間接的に計算する方が効率よく求まることが分かってきた.最近,ゼータ関数を使って $\pi(10^{24})$ が計算された. $10^{24}$ とは $1$ 億の $1$ 億倍の $1$ 億倍で,それ以下の素数の個数が求められたのだ.せっかくなので ${\rm Li}(10^{24})$ とどれぐらい近いかも,あわせて見ておこう.
13桁合ってますネ.誤差で考えると $0.0000000000093$ %ぐらい.やっぱり ${\rm Li}(x)$ は精度抜群です.
(2016/1/13掲載)
【補遺】 $\displaystyle \lim_{x\to\infty} \dfrac{x/\log x}{{\rm Li}(x)}=1$ となることは比較的容易に分かる.例えば部分積分を使うか,あるいはロピタルの定理を使うと早い.だから,もし式 $(1)$ が正しいとすると, $\displaystyle \dfrac{\pi(x)}{{\rm Li}(x)} = \dfrac{\pi(x)}{x/\log x} \cdot \dfrac{x/\log x}{{\rm Li}(x)} \underset{x\to\infty}\longrightarrow1\cdot1=1$
となって式 $(2)$ も成り立つことが分かる.同じようにして,式 $(2)$ が正しければ式 $(1)$ も成り立つことが分かる.これは確かめてみてほしい.したがって式 $(1)$ と式 $(2)$ は同一の内容である.
(2016/1/13掲載) ※ 次回(第6回)は2月3日(第1水曜日)に掲載いたします.どうぞお楽しみに! ご感想を電子メールでお送りいただければ幸いです.送付先アドレス info@shokabo.co.jp
「数学者的思考回路」 Copyright(c) 大野泰生・谷口 隆,2016
著作権法上の例外を除き,無断で本Webページの全部または一部を転写・複製等することはできません. |
裳華房の本 |
自然科学書出版 裳華房 SHOKABO Co., Ltd.