MathLabs

算術と数論

素数定理

整数の中で素数の密度が近似的に1/ln(n)として薄くなっていく様子を記述する。

直観素数は本当にどれほど珍しいのか?

最初の10個の整数のうち、44 個が素数——密度 40%40\%。最初の100個のうち、素数はわずか 2525 個——25%25\%。最初の100万個のうち、わずか 78,49878{,}498 個——8%8\% 未満。素数は決して尽きない(ユークリッドが紀元前300年頃に証明した)が、遠くを見るほど希少になっていく。素数定理はその速さを正確に定める:大きな数 xx 付近での素数の密度はおよそ 1/log⁡x1/\log x である。

n個の小区間を持つリーマン和ウィジェットであり、対数積分 $\operatorname{li}(x) = \int_2^x \dfrac{dt}{\log t}$ が $1/\log t$ の下の面積を積み上げていく様子の視覚的な例えとして用いている;$\operatorname{li}(x)$ の実際のプロットではない、この関数はこのウィジェットのプリセット被積分関数に含まれないためである。
1..601..60 上のエラトステネスの篩:各行 1010 マス中の緑の素数を数えると、1..101..10 に 44 個、11..2011..20 に 44 個、以下 2,2,3,22, 2, 3, 2 個となり、素数密度が 1/ln⁡x1/\ln x に従って薄まる様子が見える。

中高素数を数える:関数 π(x)

定義: 素数計数関数

π(x)\pi(x) は p≤xp \le x を満たす素数 pp の個数を表す。例えば π(100)=25\pi(100) = 25:100100 までの素数は 2,3,5,7,…,972,3,5,7,\ldots,97。

π(x)=#{ p≤x:p prime }\pi(x) = \#\{\, p \le x : p \text{ prime} \,\}

1792年、15歳のとき、カール・フリードリヒ・ガウスは素数表を手作業で調べることから、π(x)\pi(x) が対数積分 li⁡(x)=∫2xdtlog⁡t\operatorname{li}(x) = \int_2^x \dfrac{dt}{\log t} によってよく近似されること、同値に、xx 付近の素数の密度が 1/log⁡x1/\log x のように振る舞うことを予想した。正確な漸近的主張は次の通りである:

π(x)∼xlog⁡x\pi(x) \sim \dfrac{x}{\log x}
古典的な2つの推定値と π(x) の比較
xπ(x)x / ln xli(x)
1044.36.8
1002521.730.1
1,000168144.8177.6
10,0001,2291,085.71,246.1

大学初等的な評価と定理全体

θ(x)=∑p≤xlog⁡p\theta(x) = \sum_{p \le x} \log p とする。このとき、すべての整数 n≥1n \ge 1 について θ(n)<(log⁡4) n\theta(n) < (\log 4)\, n。

なぜ正しいのか?

アダマールとド・ラ・ヴァレー・プーサンによる1896年の解析的証明の前に、チェビシェフ(1852年)は二項係数だけを用いて初等的に、素数の個数が x/log x の定数倍の範囲に収まることをすでに示していた。この評価は定理全体のあらゆる証明への後の入力となる重要な初等的要素であり、その中心二項係数の技法はエルデシュによるベルトラン仮説の有名な初等証明の背後にあるものと同じである。

証明

nn に関する強い数学的帰納法を用いる。基底段階 n=1,2n=1,2 は自明:θ(1)=0\theta(1)=0、θ(2)=log⁡2<log⁡4\theta(2)=\log 2 < \log 4。

帰納段階では、nn より小さいすべての正の整数について評価が成り立つと仮定する。n>2n>2 が偶数なら nn は素数でないので、帰納法の仮定を n−1n-1 に適用して θ(n)=θ(n−1)<(log⁡4)(n−1)<(log⁡4)n\theta(n)=\theta(n-1) < (\log4)(n-1) < (\log4)n。

n=2m+1n=2m+1 が奇数の場合、係数 (2m+1m)=(2m+1)!m! (m+1)!\binom{2m+1}{m}=\dfrac{(2m+1)!}{m!\,(m+1)!} を考える。これは (1+1)2m+1(1+1)^{2m+1} の二項展開の 22m+12^{2m+1} 個の項のうち2回現れる((2m+1m)\binom{2m+1}{m} として1回、(2m+1m+1)\binom{2m+1}{m+1} として1回、両者は等しい)ので、2(2m+1m)≤22m+12\binom{2m+1}{m} \le 2^{2m+1}、すなわち (2m+1m)≤4m\binom{2m+1}{m} \le 4^m。

m+1<p≤2m+1m+1 < p \le 2m+1 を満たすすべての素数 pp は分子 (2m+1)!(2m+1)! を割り切るが m!m! も (m+1)!(m+1)! も割り切らない(p>m+1p>m+1 のため)ので、pp は (2m+1m)\binom{2m+1}{m} を割り切る。したがってそのようなすべての素数の積が (2m+1m)\binom{2m+1}{m} を割り切り、∏m+1<p≤2m+1p≤(2m+1m)≤4m\prod_{m+1<p\le 2m+1} p \le \binom{2m+1}{m} \le 4^m、すなわち θ(2m+1)−θ(m+1)≤(log⁡4) m\theta(2m+1)-\theta(m+1) \le (\log 4)\,m。

m+1<nm+1<n に帰納法の仮定を適用すると θ(m+1)<(log⁡4)(m+1)\theta(m+1) < (\log4)(m+1)。足し合わせると θ(n)=θ(2m+1)<(log⁡4)(m+1)+(log⁡4)m=(log⁡4)(2m+1)=(log⁡4)n\theta(n)=\theta(2m+1) < (\log4)(m+1) + (\log4)m = (\log4)(2m+1) = (\log4)n となり、帰納法が完了する。

定理: 素数定理

x→∞x \to \infty のとき、π(x)∼xlog⁡x\pi(x) \sim \dfrac{x}{\log x};同値に π(x)/li⁡(x)→1\pi(x)/\operatorname{li}(x) \to 1。

なぜ正しいのか?

上のチェビシェフの評価は π(x) を x/log x の定数倍の範囲に収めるが、「漸近的に等しい」ははるかに強い主張である:比 π(x)/(x/log x) は有界であるだけでなく、ちょうど1に収束しなければならない。「有界」から「ちょうど1」へとその隔たりを埋めるには、まったく異なる発想——素数の分布がゼータ関数 ζ(s) の複素零点に符号化されているというリーマンの1859年の洞察——が必要だった。

証明

この証明は解析的な道筋の論理的スケッチであり、自己完結した導出ではない——カリキュラムのもっと後で導入される複素解析が必要である(詳細はリーマンゼータ関数のトピックを参照)。論証は三段階からなる。

第1段階(θへの帰着):通常の部分和分による議論により、π(x)∼x/log⁡x\pi(x) \sim x/\log x は θ(x)∼x\theta(x) \sim x と同値であることが示される。ここで θ(x)=∑p≤xlog⁡p\theta(x)=\sum_{p\le x}\log p は上のチェビシェフの評価と同じものである。

第2段階(ζを通じたθの符号化):リーマンの明示公式は θ(x)\theta(x)(より正確には近縁の ψ(x)=∑pk≤xlog⁡p\psi(x)=\sum_{p^k\le x}\log p)を ζ(s)=∑nn−s=∏p(1−p−s)−1\zeta(s)=\sum_n n^{-s}=\prod_p(1-p^{-s})^{-1} の零点を用いてほぼ正確に表す:主要項 xx は ζ\zeta が s=1s=1 に持つ単純極から来て、ζ\zeta の各零点 ρ=β+iγ\rho=\beta+i\gamma はおよそ xβx^{\beta} の大きさの振動する誤差項を寄与する。

第3段階(鍵となる非消失性):ψ(x)∼x\psi(x)\sim x——したがって定理——は、どの零点も β=1\beta=1 を持たない場合、すなわち ζ(1+it)≠0 for all t∈R\zeta(1+it) \ne 0 \text{ for all } t \in \mathbb{R} の場合に限り成り立つ。アダマールとド・ラ・ヴァレー・プーサンは1896年、それぞれ独立に、初等的な三角不等式(3+4cos⁡θ+cos⁡2θ≥03+4\cos\theta+\cos2\theta\ge0)を σ→1+\sigma\to1^+ のときの log⁡∣ζ(σ)3ζ(σ+it)4ζ(σ+2it)∣\log|\zeta(\sigma)^3\zeta(\sigma+it)^4\zeta(\sigma+2it)| に適用してこの非消失性を証明した:1+it1+it に零点があればこの式は −∞-\infty に発散するが、不等式はそれを禁じる。ニューマンの1980年の証明は第3段階の帰結を短いタウバー型論法に凝縮したが、論理的な骨格——11 における極、他所の零点、直線 Re⁡(s)=1\operatorname{Re}(s)=1 上の非消失性——はリーマンとアダマールが示した通りである。

大学実世界での応用と具体例

素数定理は理論だけのものではない:RSA鍵を生成する暗号ソフトウェアや、その鍵を破るのがどれほど難しいかを見積もる暗号解読者は、どちらも与えられた大きさの近くに素数がどれほど密に詰まっているかを知ることに直接依存している。定理の密度推定 1/log(x) は、平均して、素数に行き当たるまでにいくつのランダムな奇数を検査しなければならないかを教えてくれる。

例: 512ビットのRSA素数を見つけるのに何回のランダム試行が必要か?

RSA鍵生成ルーチンはランダムな512ビットの奇数(N=2512N=2^{512} 付近)を選び、素数になるまで各々を素数判定する。素数定理の密度推定を用いると、平均して何個の奇数候補を検査すると期待されるか?

解答

定理により、NN 付近でのすべての整数の中の素数密度は約 1/log⁡N1/\log N。奇数に限るとその密度は2倍になる(22 を除き偶数は決して素数でない)ので、奇数候補の中の密度は約 2/log⁡N2/\log N。

ここで log⁡N=log⁡(2512)=512log⁡2≈512×0.6931≈354.9\log N = \log(2^{512}) = 512\log 2 \approx 512 \times 0.6931 \approx 354.9。よって密度は約 2/354.9≈0.005632/354.9 \approx 0.00563、すなわちこの大きさ付近ではおよそ 177177 個に 11 個の奇数が素数である。

各候補がこの成功確率を持つ独立なベルヌーイ試行だとすれば、最初の成功までの期待試行回数は 1/p≈1771/p \approx 177。これがまさに、実際のRSA実装が(明らかな合成数を先にふるいにかける高速な篩を使いつつ)大きな素数を1つ生成するのに数百回程度の素数判定が必要だと報告する理由である。

例: 半素数を試し割りで因数分解する際のコスト見積もり

暗号解読者が、100桁の困難な半素数 NN(ほぼ等しい2つの素数の積)を、N\sqrt{N} までのすべての素数を検査する試し割りで因数分解する際に、何個の候補約数を検査する必要があるかの大まかな見積もりを知りたいとする。素数定理を用いてその素数の個数を見積もれ。

解答

NN は 100100 桁なので N≈10100N \approx 10^{100}、N≈1050\sqrt{N} \approx 10^{50}。素数定理により π(N)≈N/log⁡N\pi(\sqrt{N}) \approx \sqrt{N}/\log\sqrt{N}。

ここで log⁡N=log⁡(1050)=50log⁡10≈50×2.3026≈115.1\log\sqrt{N} = \log(10^{50}) = 50\log 10 \approx 50 \times 2.3026 \approx 115.1。よって π(N)≈1050/115.1≈8.7×1047\pi(\sqrt{N}) \approx 10^{50}/115.1 \approx 8.7\times10^{47}。

この天文学的に巨大な個数——どんなコンピューターも列挙はおろか検査すら到底できない——こそが、実際の暗号法の合成数に対して試し割りが無用である理由であり、その困難性の証明は知られていないにもかかわらずRSAの安全性が素因数分解の計算不可能性に依拠している理由である。素数定理はまさに「天文学的に巨大」を身振りで示すだけでなく定量化することを可能にするものである。

π(x) ~ x/log x とは正確には何を意味するか?

x = 10,000 での x/ln x を最も近い整数に丸めるといくつか(ln 10000 ≈ 9.210)?

アダマールとド・ラ・ヴァレー・プーサンによる1896年の素数定理の証明はどちらも何の事実に基づいているか?

N 付近の奇数に対する密度推定 2/log⁡N2/\log N によると、2048ビットの奇数のうちおよそどれくらいの割合が素数か(log⁡(22048)≈1419.8\log(2^{2048}) \approx 1419.8)?

参考文献

  1. MacTutor History of Mathematics, University of St Andrews (2021). Prime numbers (history)
  2. Donald J. Newman (1980). Simple analytic proof of the prime number theorem · DOI:10.1080/00029890.1980.11995126