楕円積分、楕円関数、楕円曲線の関係についてのメモ

  1. 名前の由来
  2. 楕円積分、楕円関数、楕円曲線の関係
  3. 楕円積分リーマン面
  4. リーマン面楕円曲線
  5. 楕円積分と楕円関数
  6. 楕円モジュラー関数J(τ)

目次

名前の由来

まず「楕円積分」、楕円関数」「楕円曲線」の名前の由来。

  • ルジャンドルが、現在「楕円積分」と呼ばれているものを、楕円の弧長に関係することから「楕円関数」と呼んだ。("Mémoire Sur Les Transcendantes Elliptiques" 1792年)
  • 1827年からアーベルとヤコビが楕円関数についての研究を発表する(すでに研究していたガウスは未発表)。この過程でヤコビが、現在のように積分逆関数の方を「楕円関数」と呼び、積分の方を「楕円積分」と呼んだ。(1828年)
  • リーマンの研究(1857年〜)により代数曲線との関係も考察され、3次曲線などの楕円関数によるパラメータ表示も行われた(クレブシュ)。誰が「楕円曲線」という言葉を使いだしたのかは分からなかった。(初出は1901年?)

「楕円積分」「楕円関数」の言葉のいきさつについては、高瀬正仁のいくつかの文章にくわしく書いてあったはず。(『アーベル(後編)/楕円関数論への道』?と他にも書かれていたような気がする)

楕円積分、楕円関数、楕円曲線の関係

まず代数関数、リーマン面、代数曲線のいわゆる「三位一体」を考えて、それとの関係で楕円積分、楕円関数、楕円曲線を位置づけると次の図のようになる。

この図で特にリーマン面・代数曲線の種数が1の場合、①⇒楕円積分、②⇒楕円関数、③⇒楕円曲線となる。
しかし種数1の場合の特殊事情がある。
種数1でのヤコビ多様体(1次元ヤコビ多様体)はリーマン面になり、しかも元のリーマン面と同型になる。そして楕円関数もリーマン面上の有理型関数なので代数関数体になり、こちらも元の代数関数体と同型になる。(「三位一体」により、リーマン面の同型⇔代数関数体の同型が成り立つ)。
つまり種数1の場合、ヤコビ多様体(複素トーラス)、アーベル関数(楕円関数)の部分も「三位一体」の内側に組み込まれてしまう。そのため図は(少し省略して)次のようになる。

同型の部分が増えて多くのものを同一視できるようになった。(のだけど、同一視できる部分が増えたということは、場合によっては混乱しやすくなるということでもある)。
f(z)を3次または4次の多項式として、√f(z)についての楕円積分を考える場合、次のように対応する。

関係する図形(リーマン面、代数曲線) 関係する代数関数
楕円積分 リーマン球面(複素平面+無限遠点)に2つ切れ目を入れたものを2個に複製してそれを貼り合せたリーマン面R。
zと√f(z)の有理式の積分(楕円積分)はR上で考える。
zと√f(z) の有理式で表される関数。 
楕円関数 周期平行四辺形の対辺を貼り合せた複素トーラスℂ/Λ。
ℂ/Λ上の関数=ℂ上の関数で周期Λを持つ関数(で有理型)が楕円関数
周期Λを持つ楕円関数全体。 (楕円積分逆関数φ(u)とその導関数φ'(u) の有理式で表すことができる)
楕円曲線 y2 = f(x) で定義される代数曲線C 。 xとyの有理式全体。ただしC上同じ値を取るものを等しいと考える。
共通する性質 全単射が成り立ち、図形の繋がり方はトーラスと同じ(種数1) 代数関数体が同型になる:
(√f(z))2 = f(z)
φ'(u)2 = f(φ(u))
y2 = f(x)

楕円積分リーマン面

楕円積分

3次または4次の多項式 f(z) を取った時、zと √f(z) の有理式 q(z,√f(z)) の積分
\int q(z,\sqrt{f(z)})\, dz
のことを「楕円積分」という。これは代数関数体 K = ℂ(z,√f(z))「zと√f(z)の有理関数全体」に含まれる関数の積分、と言うこともできる。

もっとも簡単な楕円積分は、第1種楕円積分と呼ばれる
\int \frac{dz}{\sqrt{f(z)}}
の形の積分。ファニャノ、オイラーガウスらはレムニスケート積分\normalsize{\int \frac{dz}{\sqrt{1-z^4}}}をまず扱った。またルジャンドル・ヤコビの標準形での第1種楕円積分\normalsize{\int \frac{dz}{\sqrt{(1-z^2)(1-k^2z^2)}}} という形。

  1. 歴史的には実数関数の積分として加法定理や積分の変換が研究された。
  2. 実数範囲での積分u=\normalsize{\int^z \frac{dz}{\sqrt{f(z)}}}逆関数 z=φ(u)を考えて、(加法定理などを使って)複素平面全体に定義域を広げると、複素平面の2方向に周期を持つ関数(2重周期を持つ関数)になることが明らかになった。(基本となる2周期の取り方は無数にあるので「2方向」という言い方は不正確かもしれない)。ここで現れたような2重周期を持つ関数のことを「楕円関数」と呼ぶ。
  3. 楕円積分複素数の範囲で考えるようになったのは楕円関数の研究が進んでから。
複素関数での楕円積分

ここでは初めから、複素数の範囲で楕円積分を考える。
楕円積分複素数で考えたとき、\sqrt{f(z)}の多価性が問題となる。複素数zを取った時、\sqrt{f(z)}の値は(平方根を考えているので)2つある。たとえ\sqrt{f(z)}をどちらかの値に決めたとしても、適当な経路にそって関数の値を連続的に変えていくと元の位置に戻った時にもう一方の値 -\sqrt{f(z)}になってしまう。
例えば f(z)= √z という関数を考えて f(1)=1 と決めても、z=1 を出発点にして z=e (0≦θ≦2π) の円を移動していくと1周して戻った時に f(z)= -1になってしまう。

リーマン面無限遠

関数の多価性を解決するために(それだけのためではないけど)リーマン面を導入する。「リーマン面」というのは、おおまかには「複素平面(の断片)をいくつか貼り合せたもの」と説明される。
例えば、2枚の複素平面「平面1」「平面2」を用意して、「平面1」の点z1と「平面2」の点z2で z1 = 1/ z2 の関係にある点同士を対応させ貼り合せると、閉曲面が得られる。
複素平面という「大きなもの」同士を貼り合せるのが感覚的に分かりにくいなら、複素平面の0周辺だけを適当に切り取って、例えば「円盤1 ( |z1| < 2)」「円盤2 ( |z2| < 2)」を考えて、それらを z1 = 1/ z2 で貼り合せると考えてもいい。(円盤の半径は別に2でなくてもよく、のりしろ部分をもっと小さくしても大きくしてもいい)。

このようにして作ったリーマン面は、複素平面無限遠点を追加したものと考えることができ、また面の繋がり方としては球面と同じになるので「リーマン球面」と呼ばれる。

「三位一体」では「閉」リーマン面が扱われるので、多価を扱う場合でも無限遠点を追加したリーマン面を考える。

リーマン面による多価の扱い

ではリーマン面を考えると、多価関数はどう扱われるか。
複素数zに対して √f(z) は2つの値±aを持つ。リーマン面を考えた場合は、関数がzで2つの値を持つのではなく、2枚の複素平面(の断片)がパラレルワールドのように重なっていて、片方の面の点z(1)ではa、もう一方の面の点z(2)では-aを取るのだと考える。そして適当な経路を取って戻ってくるともう一方の値になる現象は、aとなる点z(1)から連続的に移動していくと途中でもう一方に面に移って点z(2)に来たからと説明される。(「もう一方の面に移る」というのは説明上の表現で、リーマン面は連続的に繋がっているので本当はどこかで別の面に移るわけではない)。

楕円積分の場合に特化して考える。
f(z)は3次か4次の多項式だったので √f(z) が2つの値を取らない点( √f(z)=0となる点)は3点または4点ある。これらの点では、対応するリーマン面の点は1つだけになり「分岐点」と呼ばれる。また f(z)が3次多項式の場合、リーマン球面の「無限遠点」も分岐点になる。(z=1/w によってwに変数変換して考えるとf(z)が3次の場合 w=0では多価性が生じない。f(z)が4次の場合は無限遠点でも多価性が生じる)。
よってf(z)が3次・4次どちらの場合でも4点の分岐点 e1、e2、e3、e4を持つ。この4点の分岐点以外の点では、それぞれリーマン面の2点が対応する。
そこで、リーマン球面を2つ用意し、両方のリーマン球面の分岐点 e1、e2、e3、e4に印をつける。この4点は2つのリーマン球面のどちらでも同一の点を表している。次にそれぞれのリーマン球面のe1からe2と、e3からe4に切れ目を入れる。

そして切れ目の入ったリーマン球面を(面を交差させて、あるいは球面をゴムボールにように伸び縮みさせて)切れ目同士で繋ぎ合わせる。そうすると、片方のリーマン球面の切れ目を通過すると、もう一方のリーマン球面の切れ目の部分から出てくることになる。こうして閉曲面のリーマン面Rが出来あがる。

こうしてできたリーマン面Rの図形の繋がり方を考える。
球面に2つの切れ目を入れると図形の繋がり方としては「筒」と同じ形になる。そして2つの筒の端の閉曲線(切れ目の部分)同士を繋ぎ合わせてリーマン面Rができているので、曲面の繋がり方としてはトーラス(浮き輪の形)と同じものになる。
このリーマン面Rが、楕円積分を考える時のリーマン面(代数関数体 K=ℂ(z,√f(z)) に対応するリーマン面)ということになる。


それから、この後使うために、リーマン面R上の点zを元の複素数値に戻す写像をpで表すことにする。(projectionのpのつもり)。上の例でのリーマン面R上の点z(1)とz(2)は、Rの点としては別の点 z(1)≠z(2) だけど、ただの複素数としては等しい p(z(1)) = p(z(2)) 。
ただし文脈的にどちらで考えているかだいたい分かったりどちらで考えているかがあまり重要じゃない場合も多いで、pは省略されるかもしれない。

リーマン面楕円曲線

リーマン面楕円曲線の対応

リーマン面の考え方では、√f(z)の2つの値 ±√f(z) に応じて、別の面上に点z(1)と点z(2)があると考えた。
ここで、2点が別の複素平面上にあると考える代わりに、ℂ×ℂ空間上に

  • (x,y) = (z、√f(z))
  • (x,y) = (z、-√f(z))

という2点を取ってみる。(ただし√f(z) = 0の時は(z,0)の1点になる)。そして全てのz∈ℂについて(z、√f(z))、(x,y)=(z、-√f(z))を取っていく。そうすると、y2 = f(x) という代数曲線が得られる。
ここでリーマン面Rの点と楕円曲線Cの点は次のように対応している。
R∋ z → (p(z), √f(z)) ∈ C
ここで「p(z)」は上で導入した写像で、リーマン面の点zを元の複素数にする写像。またzはリーマン面上の点なので√f(z)は多価ではなく値が1つに決まる)。


さらに、リーマン面を考えた時に無限遠点を含めて考えたように、代数曲線を考える時も「無限遠点」を含めて考える。(射影平面内の曲線(射影曲線)と考える。標準的には斉次座標系を使って考える。あるいはリーマン面の時のように別の座標x'=1/xやy'=1/yでの曲線を考えて張り合わせると考えることもできる)。無限遠点を含めて考えると、f(z)の次数が3か4かに応じて1点または2点の無限遠点が曲線に追加される。
こうして得られた代数曲線は、特異点以外の点ではリーマン面の構造を入れることができる。また特異点についてもより高い次元の空間を考えて特異点を無くすことができ、やはりリーマン面の構造が入る。
結局、非特異(特異点のない)射影(無限遠点まで考えた)代数曲線には閉リーマン面の構造が入り、曲線の点がもとのリーマン面の点と1対1に対応することになる。
ここまで考えてきた y2 = f(x) の場合、対応するリーマン面の繋がり方がトーラスと同じなので、代数曲線 y2 = f(x) もトーラスの繋がり方(種数1)になる。(座標が複素数値なので形をイメージできないけど)。

そして、このような種数1の非特異射影代数曲線のことを「楕円曲線」と呼ぶ。

楕円曲線上の関数

前節で閉リーマン面の点と代数曲線の点が全単射で対応することが分かった。それだけでなく、閉リーマン面から得られる代数関数体と代数曲線から得られる代数関数体も同じものとなる。

関数zと関数wの間に多項式の関係 F(z,w) = 0 があるとき、zとwは互いに相手の代数関数であるという。そして互いに代数関数である2つの関数z、wの有理関数(有理式で表される関数)になるもの全体を「代数関数体 」と呼び ℂ(z,w)と表記する。
楕円曲線C: y2 = f(x) 上の関数として、xとyの有理式で表される関数全体を取る。ただし代数曲線上のどの点でも同じ値を取る関数は同じ関数と見なす。
そうすると y2という関数と f(x) という関数は、曲線の方程式から明らかなようにC上で常に同じ値を取るので、等しい関数になる。これは「関数xと関数yの間に y2 - f(x) = 0 」の関係があるということになるので、関数xと関数yは互いに代数関数となっていることが分かる。

よってxとyの有理式で表される関数全体ℂ(x,y)は楕円曲線C上の代数関数体となる。
しかもxとyの間に成り立つ関係「y2 - f(x) = 0」は、リーマン面上の代数関数体 ℂ(z,√f(z)) のzとw=√f(z)の間に成り立つ関係「w2 - f(z) = 0」と同じ式なので、ℂ(z,√f(z))とℂ(x,y)は同型となる。

「三位一体」

代数積分楕円曲線の場合に限らず一般的に、代数関数体があれば(関数の多価に応じた複数の点を用意して、あるいはもっと抽象的な仕方で)閉リーマン面を考えることができ、逆に閉リーマン面があればその面上の有理型関数が存在して代数関数体になる。また代数関数体の2つの関数の間に成り立つ関係式から(非特異射影)代数曲線が得られ、この曲線上の関数全体も代数関数体となり元の代数関数体と同型になる。また得られた代数曲線には閉リーマン面の構造を入れることができ……というように、代数関数体、閉リーマン面、(非特異射影)代数曲面は互いに結びついている。

代数体との類似

代数関数体は体なので、体の拡大(ガロア理論)を考えられる。代数関数体とリーマン面の対応を見てみると、代数関数体を不分岐拡大した時、リーマン面の方では面の被覆(不分岐被覆)が生じ被覆に対するガロア理論が考えられ、底空間の基本群がガロア群になる。
ここで代数体と代数関数体の類似(≒整数と多項式が似ている)を踏まえて、代数体の不分岐アーベル拡大の性質を予想したのがヒルベルトの(不分岐)類体論(→ドラクエと類体論)。

楕円積分と楕円関数

ふたたび楕円積分に戻る。(そもそもリーマン面を考えたのは楕円積分を考えるためだった)。
第1種楕円積分u=\normalsize{\int^z \frac{dz}{\sqrt{f(z)}}}逆関数 z = φ(u) を考えると楕円関数が得られるのだった。
まず、なぜ一般の楕円積分\normalsize{\int q(z,\sqrt{f(z)})\, dz}ではなく第1種楕円積分なのか。
これはリーマン面Rとの関係で説明される。代数関数体 ℂ(z,√f(z))に含まれる関数をリーマン面R上で積分をしようとした時、Rの任意の点(無限遠点も含む)で正則になる積分(正則微分形式)が第1種楕円積分とその定数倍しかないため、他の形の積分ではなく第1種楕円積分を考える。
第1種楕円積分は分母が0になる点で正則ではなくなるようにも見えるけど、分母が0になる点をaとしてt2=z-aと変数変換すると発散せず積分できることが分かる。またz=1/wで変数変換してみると、w=0(無限遠点)でも発散せず積分が考えられる。第1種楕円積分以外で積分\normalsize{\int q(z,\sqrt{f(z)})\, dz}を考えると、分母が0になる点のいずれかまたは無限遠点で(あるいは両方で)必ず発散する。

周期

リーマン面R上に始点Pを適当に決めて、終点Qまでの積分
\int_{P}^Q \frac{dz}{\sqrt{f(z)}}
を考える。そうすると、始点P・終点Qが同じでも、途中の積分経路によって積分値が違ってくる。
これはリーマン面Rの面の繋がり方に原因がある。
リーマン面Rの面の繋がり方はトーラスと同じだった。そのため複素平面の時とは違って、閉曲線で正則な積分をしたとき必ずしも積分値が0になるとは限らない。リーマン面Rには連続的に伸び縮みさせても1点に縮まない閉曲線(下図のAとB)があるので、その閉曲線について積分してみる。(こうしたリーマン面と閉曲線についての考察がホモロジーの起源のひとつになった→ホモロジーとコホモロジー)。


積分すると、どちらの閉曲線でも0でない積分値ω1、ω2が得られる。
\oint_{A} \frac{dz}{\sqrt{f(z)}} \,=\, \omega_1 ,\quad\quad\quad\oint_{B} \frac{dz}{\sqrt{f(z)}} \,=\, \omega_2
このため積分の始点Pと終点Qが同じでも、その途中で閉曲線Aをm回、閉曲線Bをn回回ると、積分値はmω1 + nω2 だけ変化する。そこで、Λ = {mω1 + nω2 | m、n∈ℤ} という集合を考える。この集合を「周期」「周期加群」「格子」「格子点」などと呼ぶ。

そして、複素平面ℂに対して周期Λのいずれかだけズレている点同士を同一視したℂ/Λを考える。これは基本周期 (ω1, ω2) を2辺とする平行四辺形を考えて、その向かい合った辺同士を繋ぎ合わせたものと考えられる。そのためこれはトーラスとなるので、このℂ/Λを「複素トーラス」と呼ぶ。(複素トーラスはヤコビ多様体と呼ばれるものだけど、複素平面の断片を繋ぎ合わせたものなのでリーマン面でもある)。
ここで、同じ周期Λに対して、基本となる周期 (ω1, ω2) の取り方は1つではない。
一般的にαδ-βγ=±1 となる整数α、β、γ、δによって
 \left(\begin{array}{c}\omega_2' \\ \omega_1'\end{array}\right)=  \left(\begin{array}{cc}\alpha & \beta \\ \gamma & \delta \end{array}\right) \left(\begin{array}{c}\omega_2 \\ \omega_1\end{array}\right)
が成り立つ場合に、(ω1, ω2) と (ω'1, ω'2) は同じ周期Λを与える。このとき (ω1, ω2)と (ω'1, ω'2) は同値であるという。(行列の式で添え字の順番が2、1の順になっているのは、周期比τ = ω21 を考えるときとの兼ね合いでω2を上に置きたいから)。

どの基本周期 (ω1, ω2) で平行四辺形を考えて辺を繋ぎ合わせても図形としては同じものになる。

楕円関数

第1種楕円積分u=\normalsize{\int_{P}^{z} \frac{dz}{\sqrt{f(z)}}}リーマン面Rから複素トーラスℂ/Λへの関数だと考えると、ちょうど全単射になっている。つまりリーマン面Rと複素トーラスℂ/Λはリーマン面として同型ということになる。(Rもℂ/Λも繋がり方としてはトーラスだった)。
全単射なので、複素トーラスℂ/Λ からリーマン面Rへの逆関数が考えられる。
ℂ/Λ ∋ u → z ∈ R
さらに逆関数で得られたリーマン面R上の点zを2点に分かれる前の元の複素数p(z)だと思えば、複素トーラスℂ/Λから複素数への関数となる。
φ(u): ℂ/Λ ∋ u → p(z) ∈ ℂ

これは複素平面ℂ上で周期Λを持つ複素関数とも見なせる。
φ(u): ℂ ∋ u → p(z) ∈ ℂ (uを周期Λずらしても関数値は同じ)
こうして第1種楕円積分逆関数から楕円関数(2重周期を持つ関数)が得られる事情が分かった。
またリーマン面R上の点は、4つの分岐点を例外として、2点がリーマン球面(複素平面+無限遠点)の1点に対応するので、この楕円関数 φ(u)は分岐点以外の複素数値cを、基本周期領域(基本平行四辺形)のちょうど2点で取ることになる。(位数2の楕円関数になる)。
つまりcがRの分岐点でなければ ℂ/Λのちょうど2点 u1、u2 でφ(u1) = φ(u2) = c となり、cが分岐点ならℂ/Λのちょうど1点でφ(u) = c となる。

リーマン面Rと複素トーラスℂ/Λの対応

リーマン面Rと複素トーラスℂ/Λはリーマン面として同型になった。ということは、対応する代数関数体も同型になる。 次のような対応関係がある。

R ℂ/Λ
z u
関数その1 z 楕円関数 φ(u)
関数その2 w = √f(z) 楕円関数 φ'(u)
代数関係 w2 = f(z) φ'(u)2 = f(φ(u))
正則な積分(正則な微分形式) \normalsize{\int \frac{dz}{\sqrt{f(z)}}} \normalsize{\int du}
複素トーラスℂ/Λ と楕円曲線Cの対応

リーマン面Rは楕円曲線Cとも1対1に対応していた。なので、ℂ/Λ からRへの関数とRからCへの関数を合わせると、複素トーラスℂ/Λ から楕円曲線Cへの全単射写像が得られる。
リーマン面Rから楕円曲線Cへの写像が、R∋ z → (p(z), √f(z)) ∈ Cで、逆関数微分から φ'(u) = √f(z) なので、
ℂ/Λ ∋ u → z → (p(z), √f(z)) = (φ(u), φ'(u)) ∈C
となる。よって、
ℂ/Λ ∋ u → (φ(u), φ'(u)) ∈C
全単射写像となる。(Cが特異点を持たない場合)。

楕円モジュラー関数J(τ)

リーマン面がいつ同型になるかを考える。
2つの複素トーラスℂ/Λ1とℂ/Λ2が同型になるかどうかは、片方の周期Λ1に適当な定数aをかけてもう一方の周期Λ2になるかどうかで決まる。これは双方の周期平行四辺形を取って相似になれば同型とも言える。平行四辺形が相似かどうかは、平行四辺形の2辺の比 τ=ω21 が等しいかどうかで決まる。
ただし基本周期ω1、ω2の取り方は無数にあり周期平行四辺形も無数にあるので、τ=ω21は1通りには決まらない。
必要なら ω1、ω2の順番を入れ替えて、ω21の虚部 > 0 となる (ω1、ω2)だけを基本周期とすると、
αδ-βγ=1 となる整数α、β、γ、δがあって、
 \left(\begin{array}{c}\omega_2' \\ \omega_1'\end{array}\right)=  \left(\begin{array}{cc}\alpha & \beta \\ \gamma & \delta \end{array}\right) \left(\begin{array}{c}\omega_2 \\ \omega_1\end{array}\right)
となるとき、(ω'1、ω'2) も基本周期になる。このとき周期の比は
 \tau' =  \frac{\alpha \tau + \beta}{\gamma \tau + \delta}
となる。この関係があるときτとτ'は同値であるという。
そうすると、リーマン面ℂ/Λ1リーマン面ℂ/Λ2が同型になるかどうかは、それぞれから周期の比τを取ったときに同値になるかどうかで決まる。

次にリーマン球面2つから作ったリーマン面Rの同型を考えると、こちらでは4つの分岐点e1、e2、e3、e4の非調和比
\lambda =\frac{(e_3-e_1)(e_4-e_2)}{(e_3-e_2)(e_4-e_1)}
が同型かを決める量になる。ただし非調和比は点の順番の選び方で6通りの値λ、1-λ、1/λ、1/(1-λ)、(λ-1)/λ、λ/(λ-1)を取るので、6つの値から対称式を作って\normalsize{J=\frac{4}{27}\frac{(\lambda^2-\lambda+1)^3}{\lambda^2(\lambda-1)^2}}とする。そうするとリーマン面が同型になるかどうかは、分岐点から決まる値Jが等しいかどうかで決まる。

このようにリーマン面が同型かどうかを決める値としてτ(の同値類)とJが得られた。
そこで、リーマン面ℂ/Λ2の周期比がτに対して、同型なリーマン面Rの分岐点から得られるJを与える関数を考えると、楕円モジュラー関数J(τ)となる。
周期比τとτ'が同値、つまりαδ-βγ=1 となる整数α、β、γ、δで \normalsize{\tau' =  \frac{\alpha \tau + \beta}{\gamma \tau + \delta}}の場合、リーマン面は同型なので対応するJの値も等しくなり J(τ) = J(τ') となることが分かる。(関連:楕円モジュラー関数 J(τ)とλ(τ))

文献

だいたい佐武一郎『現代数学の源流 (下)』の7章「複素曲面(リーマン面)」、8章「代数関数論概説」に載っていたはず。他に三宅克哉『楕円関数概観』など。