24
大学数学基礎解説
文献あり

リーマン予想って結局何が嬉しいの?

10549
1

はじめに

 この記事では最も有名な数学の未解決問題の一つ、だけどみなさん知ってるようで知らない「結局、リーマン予想って何なの?」という話について紹介していきます。
 なおこの記事は前半部分では「リーマン予想から何がわかるのか」という話を、具体的にどういう操作によって色々な事実が取り出されるのかに重点を置いて多少端折りながら紹介し、後半部分では前半で端折った部分の補足や余談など詳細な解説をする感じの構成になっています。

リーマン予想とは

 まずリーマン予想とは次のような主張のことを言うのでした。

リーマン予想

 リーマンゼータ関数ζ(s)の非自明な零点は全てRe(s)=12上にある。

 これがどういうことなのか、ということについては先人たちが良い解説動画や記事を数多く残しているので皆さんも大方理解していることでしょうし、ここでは大分端折りながら説明します。

リーマンゼータ関数

 リーマンゼータ関数ζ(s)Re(s)>1なる複素数sに対して
ζ(s)=n=11ns
と定義されます。しかしこの級数による表示ではRe(s)>1でしか意味を持たない(収束しない)ので、「(s=1を除く)複素数平面全域で定義される良い関数(正則関数)f(s)で、Re(s)>1においてはf(s)=n=11nsが成り立つようなものを持ってきて、このf(s)を改めてζ(s)とみなす」という操作(解析接続)をします。例えば
ζ(s)=πs2Γ(s2)(1(ts21+t1s21)Ψ(t)dt1s(1s))=1121sn=012n+1m=0n(1)m(nm)(m+1)s
のような表示があります(正則という条件によりこの右辺はそれぞれ同じ関数を定めることになります)。
 ただしΓ(s),Ψ(t)はそれぞれ
Γ(s)=0ts1etdt,Ψ(t)=n=1eπn2t(Re(s)>0,t>0)
としました(この関数Ψ(x)ψ(x)と表すことも多いですが、下で出てくるチェビシェフ関数との混同を避けるために大文字で表しています)。

自明な零点 非自明な零点

 ゼータ関数は素因数分解によるオイラー積表示
ζ(s)=n=11ns=p:primek=01pks=p11ps
によってRe(s)>1においては0にならないことがわかり、また解析接続の際に得られる関数等式
ζ(s)=π1s2Γ(1s2)ζ(1s)πs2Γ(s2)=2sπs1sin(πs2)Γ(1s)ζ(1s)
によってRe(s)<0においてはsin(πs/2)0となる点、つまりs=2n(n=1,2,3,)においてのみζ(s)0になることになります。
 こうして得られる零点s=2n(n=1,2,3,)のことをゼータ関数の自明な零点といい、またRe(s)>1における挙動と関数等式からは観測できない0Re(s)1の領域に存在する零点のことを非自明な零点といいます。
 リーマン予想はこの非自明な零点の実部が全て12であることを主張しています。
 ちなみにこの非自明な領域0Re(s)1のことをクリティカルストリップ(臨界帯)、その中心線Re(s)=12のことをクリティカルライン(臨界線)といいます(Re(s)=0,1には非自明な零点が存在しないことが知られていることから0<Re(s)<1をクリティカルストリップとすることも少なくありません)。

 これは個人的な感覚なのですが、ゼータ関数は
πs2Γ(s2)ζ(s)=π1s2Γ(1s2)ζ(1s)
というs1s間の対称性とζ(s)=ζ(s)というss間の対称性とを合わせてs1s間の対称性が考えられて、そういう意味でこの変換s1sの対称軸であるRe(s)=12という直線はゼータ関数にとってのド真ん中といった具合の意味を持っていると感じられます。ちなみにこれらの対称性から、s=ρがゼータ関数の非自明な零点であるときs=ρ,1ρ,1ρもまた非自明な零点であることがわかります。

ゼータ関数と素数を繋ぐ式

 リーマン予想の主張を見ただけでは「で、この妙な関数の零点が一直線に並んでるとして、何なの?」と思うことかと思います。それでもってまた「リーマン予想は素数の分布を明らかにする」だとか「素数の法則を示す」だとかいった話も耳にしたことがあると思います。そうして出てくる「一体何がどうなってあの妙な関数の零点素数なんてものに繋がるんだ?!」という疑問の真相を以下で解き明かしていこうと思います。

オイラー積表示

 ゼータ関数と素数の関係を語るうえでまず次の式は紹介しなくてはなりません。
ζ(s)=p11ps(Re(s)>1)
この式はゼータ関数のオイラー積表示と言って、ゼータ関数が素数の関数の積に分解されているのが見て取れます。この式は上でも見たように素因数分解のアイデアから容易に導かれるシンプルな式ではあるのですが、実はこの式がゼータ関数と素数の関係の全てを物語っています。しかしこのままではその関係がはっきりとは見えないので少し変形していきましょう。
 まず積のままでは扱いにくいので対数を取って和の形に分解して色々変形していきます。
logζ(s)=plog(1ps)=pn=11npns=n=11nppnsxs+1dx=sn=11n0(pnx1)xs1dx=s0n=11n(px1n1)xs1dx
まあまあややこしい見た目になりましたが
π(x)=px1,Π(x)=n=11nπ(x1n)n=11n(px1n1)
とおくことで
logζ(s)s=0Π(x)xs1dx
と書き換えることができます。これはゼータ関数から素数の情報を抜き出すために非常に重要な式となっています。と言われても、この式を見ただけじゃゼータ関数が依然として素数の関数を使って表されているのはわかっても、全然素数の情報を抜き出せる気がしません。一体どういうことなのでしょうか。

逆メリン変換

 とりあえず先の式の積分を少し変形してみましょう。sを実部σと虚部tに分けてs=σ+itとしてx=e2πyと変数変換します。
0Π(x)xs1dx=Π(e2πy)e2πσy2πity2πy(2πe2πy)dy=(2πΠ(e2πy)e2πσy)e2πitydy
ちょっとややこしいですが、この右辺は
f(x)e2πitxdx(f(x)=2πΠ(e2πx)e2πσx)
という形になっています。見たことある人はあると思いますが、これはフーリエ変換と言ってf(x)の情報を保存する積分となっています。f(x)の情報を保存するとはどういうことかというと、次のような対応によってこの積分からf(x)を取り出すことができるというわけなのです。
f^(t)=f(x)e2πitxdxf(x)=f^(t)e2πitxdt
となるとさっきの積分からは2πΠ(e2πx)e2πσxを取り出すことができて、それをまたゴニョゴニョすることでΠ(x)を次のように表すことができます。
Π(x)=12πiσiσ+ilogζ(s)sxsds(σ>1 は任意)
大分らしくなってきましたね。こうしてゼータ関数から素数の情報を引き出す式が作れましたが、この式ではゼータ関数のRe(s)>1の情報しか使っていないのでまだ0Re(s)1にある零点と関係があるとは思えません。ではこの式に零点がどう関係してくるのでしょうか。

ゼータ関数の因数分解

 多項式f(x)について方程式f(x)=0を考えたとき、f(x)はその方程式の解x=α,β,γ,を用いてf(x)=(xα)(xβ)(xγ)のように因数分解できました。これと似たようなことは(ある程度性質の良い)一般の関数にも適用できて、ゼータ関数もその例外ではありません。ただ零点が無限にあるとなると収束性とかの問題を適当に解消する必要があるので、そこら辺を考慮した結果ゼータ関数は次のように因数分解されることになります。
ζ(s)=1s1exp(logπ+γ2slog2)ρ(1sρ)n=1(1+s2n)es2n
(ただしγはオイラー定数γ=limn(k=1n1klogn)で、ρはゼータ関数の非自明な零点全体を(虚部の絶対値が小さい順に)渡るものとした。)
 ちょっとごちゃごちゃしていますが
ζ(s)=πs2s(s1)Γ(s2)ρ(1sρ)
と表すと少しすっきりするでしょうか。何はともあれこの式によって零点の情報からゼータ関数の情報を引き出せることがわかりました。そしてこの式と先のΠ(x)の式を組み合わせることでいよいよゼータ関数の零点と素数の関数が直接結びつくことになります。

リーマンの素数公式

 さて上で示したΠ(x)の式ではゼータ関数にlogがかかっていたのでゼータ関数の因数はそれぞれ
12πiσiσ+ilog()sxsds
の形に分解されることになります。そしてそのそれぞれの因数はこの積分によって次のように変換されます。
1s1Li(x)exp(logπ+γ2slog2)log2ρ(1sρ)ρLi(xρ)n=1(1+s2n)es2nn=1xt2n1logtdt=xdtt(t21)logt
ただし
Li(x)=0xdtlogt=limε0+(01εdtlogt+1+εxdtlogt)
としました。つまるところ
Π(x)=Li(x)ρLi(xρ)+xdtt(t21)logtlog2
が成り立つというわけです。これがかのリーマンの素数公式というやつです。こうしてようやく素数とゼータ関数の零点が結びつきました!この式からリーマン予想が成り立つとなると、・・・?どうなるんでしょう。結局よくわかりませんね。この式とリーマン予想から一体何がわかるのか、もう少し議論が必要みたいです。とうことで以下でリーマン予想とΠ(x)の関係について見ていくことにしましょう。(一般的にゼータ関数周りの話をするときはπ(x)ψ(x)を引き合いに出すことが普通ですが、話を円滑にするためにその辺は 別の記事 で総括するとして、以下ではΠ(x)を中心に話を進めていきます。)

リーマン予想とΠ(x)

 リーマンの素数公式から、ゼータ関数の非自明な零点の挙動がわかればその分Π(x)の挙動も把握することができる、ということが考えられますが、その把握できるΠ(x)の挙動というのはもっぱら近似という形で観測(考察)されることが多いです。そしてリーマン予想から導かれるΠ(x)の近似は次のように表されます。
Π(x)=Li(x)+O(xlogx)
これを言い換えると、ある定数C>0があって十分大きい任意のx
|Π(x)Li(x)|<Cxlogx
が成り立つ。ということになります。つまるところΠ(x)Li(x)との誤差の増大する速さがxlogxと同じかそれより遅い、ということです。

 ここでΠ(x)Li(x)との「誤差」と言ったのは
limxΠ(x)Li(x)=1
(これを素数定理と言うのはまた後で話します)というのを暗黙の了解としてのことだったのですが、このことは
limxLi(x)xlogx=1
が成り立つことからさっきの不等式と合わせて
limx|Π(x)Li(x)1|limxCxlogxxlogxxlogxLi(x)=Climxlog2xx=0
とわかります(なんと、リーマン予想から素数定理が示された!)。

 人によっては「なんだ、それだけ?」と思う方もいるかもしれませんが、素数という非常に非自明な対象がこのような初等的で簡潔な法則を持つというのはかなり強く、また美しい主張なのではないかと思います。そしてこの近似式の興味深いところはそれだけではなく、この近似が成り立てばリーマン予想も成り立つという結果が知られていることにもあります。より正確に言うと、非自明な零点の実部が常にΘ以下であることと
Π(x)=Li(x)+O(xΘlogx)
が成り立つことは同値となります。それは一体どういうことなのか、以下で見ていくことにしましょう。
 なおLi(x)の漸近挙動については この記事 などを参照してください。

リーマン予想からの帰結

 リーマンの素数公式において最後の二項は
xdtt(t21)logt2dtt(t21)logt=0.322385log2=0.693147
と非常に小さいので第一項Li(x)と第二項ρLi(xρ)が支配的になります。
 ここでLi(x)
Li(x)xlogx
と近似できるので第二項は
|ρLi(xρ)||ρxρlogxρ|1logx(|Im(ρ)|x2xRe(ρ)|ρ|+||Im(ρ)|>x2xρρ|)
と評価できます。このとき複雑な議論によって
|Im(ρ)|x21|ρ|=O(log2x),||Im(ρ)|>x2xρρ|=O(log2x)
が成り立つことがわかるので結局
ρLi(xρ)1logx(xΘO(log2x)+O(log2x))=O(xΘlogx)
ということになります。特にリーマン予想が成り立つときはΘが取り得る値の最小値として12が取れるので
Π(x)=Li(x)+ρLi(xρ)+O(1)=Li(x)+O(x12logx)
が成り立つというわけです。

近似式からの帰結

 少し話は遡りますが、Π(x)の情報からゼータ関数の情報を取り出すには
logζ(s)=s0Π(x)xs1dx(Re(s)>1)
という式があったのでした。そしてまた
12πiσiσ+ilog(1s1)sxsds=Li(x)
という関係をひっくりかえすことで
log(1s1)=s0Li(x)xs1dx
がわかります。これをさっきの式から引くと
log((s1)ζ(s))=s0(Π(x)Li(x))xs1ds
という式が得られます。ζ(s)s=1における極(発散する点)をs1をかけることで削除しているので、この式の両辺は共に良い性質(正則性)を持つことになり、その結果あるσ01があって右辺がRe(s)>σ0で収束すればこの等式もRe(s)>σ0で成立することになります。
 ここでΠ(x)=Li(x)+O(xΘlogx)の仮定より任意にε>0を取って
|Π(x)Li(x)|<Cxlogx<CxΘ+ε(x>a)
となるようなa,Cを取ると上式の右辺は
|a(Π(x)Li(x))xs1ds|a|Π(x)Li(x)|xRe(s)1dxaxΘ+εRe(s)1dx=[xΘ+εRe(s)Θ+εRe(s)]a=aΘ+εRe(s)Θ+εRe(s)
Re(s)>Θ+εで収束し、ε>0は任意だったので結局Re(s)>Θで収束することになります。
 以上によりlog((s1)ζ(s))Re(s)>Θで良い関数(正則関数)を定めることになりますが、もしΘ<Re(s)1においてある非自明な零点ρがあるとするとsρにおいてlog((s1)ζ(s))log0は発散することになり矛盾します。すなわち非自明な零点の実部は常にΘ以下であることになります。
 また「ρが非自明な零点ならば1ρも非自明な零点」という性質により0Re(s)<1Θにも非自明な零点が存在しないことになるので、特にΘ=12であるとき非自明な零点の実部は常に12となる、つまりリーマン予想が成り立つことになります。

おわりに

 さてリーマン予想がどのようにして素数と関わっているのか、そしてリーマン予想は素数分布の挙動の解明に大きな役割を果たしているのだということは実感していただけたでしょうか。とはいっても上で見てもらった通りリーマン予想から素数についてわかることは(素数の持つ深さに比べて)とても多いというわけではないので、それによって素数の全てが解明されてRSA暗号が危うくなる!なんてことはないことも理解していただけたと思います。
 とりあえず「リーマン予想から何がわかるのか」を紹介するというこの記事の目的は達成したので話は一旦終わりになりますが、余談として以下にもう少しお話が続きます。

リーマンの夢

 上での議論によりΠ(x)=Li(x)+O(xlogx)であることとリーマン予想が成り立つことは同値であることがわかりましたが、このことが示されたのは1901年に出版されたコッホの論文でのことで、これはリーマンの生きた時代(1826-1866)よりも先の話になります。となるとその事実なしにリーマンはゼータ関数の非自明な零点が一直線に並ぶことに関心を寄せていたわけになる(と思う)のですが、一体それは何を見据えてのことだったのでしょうか。
 よく知られている説によるとその関心は素数定理を示すことにあったと言われています。ここで素数定理とは
Π(x)Li(x)xlogx
つまり
limxΠ(x)Li(x)=limxΠ(x)xlogx=1
が成り立つことを言うのでした。ただ、素数定理の証明にはリーマン予想のような強い仮定は必要なくRe(s)=1上に非自明な零点が存在しないことがわかっていれば十分であって、リーマンが素数定理を証明できなかったのはリーマン予想の解決に固執していてそのことに気付かなかったためだったと言われています。一応以下でリーマン予想を用いない素数定理の証明について見てみましょう。
 とはいっても話は単純でRe(ρ)1つまりRe(ρ)<1という仮定により
limx|Li(xρ)Li(x)|=limx|xρlogxρxlogx|=limx1|ρ|x1Re(ρ)=0
なので
limxΠ(x)Li(x)=limx1Li(x)(Li(x)+ρLi(xρ)+O(1))=1+ρlimxLi(xρ)Li(x)+0=1
となる。といった感じです。ただこの級数と極限の交換は正当化できないので厳密には少し工夫する必要があります。

素数定理の誤差

 リーマン予想からはΠ(x)=Li(x)+O(xlogx)がわかると言いましたが、この誤差項O(xlogx)についてはxlogxより遅いオーダーで増大すること以外詳しいことは教えてくれないのでした。このまま「よくわからん」で終わらせるのはちょっと寂しいので誤差項の挙動をイメージする手助けとしてリトルウッドの証明した次の定理を紹介しておきましょう。

リトルウッドの定理

任意のR>0に対してあるx>Rが存在して
Π(x)Li(x)>13xlogxlogloglogx
が成り立ち、またあるx>Rが存在して
Π(x)Li(x)<13xlogxlogloglogx
が成り立つ。

 この定理からわかるのは誤差項Π(x)Li(x)は無限回符号を変え(つまり振動する)、その振幅はxlogxlogloglogxよりも速いオーダーで増大する、ということになります。それだけでも十分面白いのですが、特に興味深いのがxという因子になります。リーマン予想からわかる近似式では任意の実数ε>0に対して
Π(x)=Li(x)+O(x12+ε)
が成り立つことになりますが、リトルウッドの定理からはいかなる実数ε>0に対しても
Π(x)=Li(x)+O(x12ε)
成り立たないということになります。このことからリーマン予想から得られる近似式はそれなりに精度が高い(気がする)こともわかるので中々に面白いですね。
 またリーマン予想からわかる近似式
|Π(x)Li(x)|<Cxlogx(C>0,x0)
におけるCの値は割と小さくできて、具体的には
|Π(x)Li(x)|<18πxlogx(x0)
が成り立つことが知られています。つまるところ誤差項の大きさ、というより振幅は13xlogxlogloglogx以上18πxlogx以下であるということになります。ここまでわかっていると誤差項の輪郭が大分はっきりしてきますね。(あくまで上からの評価はリーマン予想が成り立つことを仮定したうえでの話ではありますが。)

もう一つの素数公式

チェビシェフ関数

 上ではΠ(x)の挙動とリーマン予想との関係について考察してきましたが、Π(x)の素数公式(特にLi(x)の挙動)が少し扱いにくいだけに若干アヤしい議論をせざるを得ませんでした。このように素数計数関数Π(x)は数論的には重要な関数なのですが、解析的には不向きな関数となっており、より解析的に扱いやすい関数としてチェビシェフ関数ψ(x)というものがあります。
 チェビシェフ関数とは
ϑ(x)=pxlogp,ψ(x)=n=1ϑ(x1n)=n=1px1nlogp
と定義される関数であり、素数計数関数π(x),Π(x)とは この記事 で紹介したように密接な関係を持ちます。
 またこれはゼータ関数と
ζ(s)ζ(s)=s1ψ(x)xs1dx
という関係を持ち、これを逆メリン変換することで
ψ(x)=xρxρρ12log(1x2)log2π
という素数公式が得られます。Π(x)の素数公式
Π(x)=Li(x)ρLi(xρ)+xdtt(t21)logtlog2
と比べてみても非常に扱いやすい形となっていることがわかりますね。

リーマン予想とψ(x)

 リーマン予想と同値な近似式
Π(x)=Li(x)+O(xlogx)
はチェビシェフ関数ψ(x)についての式に書き換えると
ψ(x)=x+O(xlog2x)
となります。この近似式もやはりリーマン予想と同値になります。
 同値性についてはΠ(x)のときと全く同様で、リーマン予想が成り立てば
|ψ(x)x||Im(ρ)|x2xΘ|ρ|+||Im(ρ)|>x2xρρ|+12|log(122)|+|log2π|=xΘO(log2x)+O(log2x)+0.143841+1.83787=O(xΘlog2x)
においてΘ=12とできるので
ψ(x)=x+O(xlog2x)
が成り立ち、逆にこれが成り立てば
ddslog((s1)ζ(s))=1s1(ψ(x)x)xs1dx
の右辺はRe(s)>12で収束することになり、非自明な零点はRe(s)=12の外には存在しないことがわかります。

はしがき

 この記事では単に「リーマン予想からなにがわかるのか」を示すだけではなくて、「どうして」「どのようにして」その点と点が繋がっていくのかまで紹介することに重点を置いていた(つもりな)のですが、かといって内容が難しすぎても仕方がないので複素解析周りの議論は極力はぐらかしつつ、かといって謎を謎のまま放り投げるのも後味が悪いからあれも書こうこれも書こうと色々詰め込んだ結果、初心者向きというにはやや小難しくてまたなんだか長い記事になってしまいました。でも書きたいことは書けたので、まあいっかなと思います。自己満足のついでに誰かの役に立ってたら嬉しいなという感じで。
 あと途中で「複雑な議論によって」とはぐらかしたところについては後日詳細な解説記事を書く予定です。リーマンの素数公式やゼータ関数の因数分解の導出について詳しく知りたい人は私の過去の記事などをご覧ください。

では

参考文献

投稿日:2021826
更新日:2024122
OptHub AI Competition

この記事を高評価した人

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

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

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

子葉
子葉
1069
262477
主に複素解析、代数学、数論を学んでおります。 私の経験上、その証明が簡単に探しても見つからない、英語の文献を漁らないと載ってない、なんて定理の解説を主にやっていきます。 同じ経験をしている人の助けになれば。最近は自分用のノートになっている節があります。

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. はじめに
  2. リーマン予想とは
  3. ゼータ関数と素数を繋ぐ式
  4. リーマン予想と$\Pi(x)$
  5. リーマン予想からの帰結
  6. 近似式からの帰結
  7. おわりに
  8. リーマンの夢
  9. 素数定理の誤差
  10. もう一つの素数公式
  11. チェビシェフ関数
  12. リーマン予想と$\psi(x)$
  13. はしがき
  14. 参考文献