tsujimotterのノートブック

日曜数学者 tsujimotter の「趣味で数学」実践ノート

保型形式(モジュラー形式)を勉強するとこんなにも楽しい(導入編)

保型形式 という数学用語を聞いたことはあるでしょうか?

数学好きの方の中には、フェルマーの最終定理の証明で楕円曲線と保型形式が役に立った、という話を聞いたことがある方もいるでしょう。


私が保型形式に出会ったのは、数学ガール「フェルマーの最終定理」という本でした。

この本の最終章では、保型形式の具体例を計算して、楕円曲線と保型形式の深い関係について、その入口の部分を体感できます。この本を読んで「なんだか面白そう」と思った方も多いのではないかと思います。私もその一人です。


一方で、さわりの部分だけでは物足りない、もっと保型形式のその先を勉強してみたい、と思う方も多いのではないかと思います。

今回の記事は、そんな「あなた」のための記事です。


この記事を通して詳しく解説しますが、保型形式とはたとえばこんな感じの関数です(現時点でこれが分からなくても大丈夫です)

 \displaystyle G_{2k}(z) = \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{1}{(mz+n)^{2k}}
 \displaystyle \Delta(z) = e^{2\pi i z} \prod_{n=1}^{\infty}(1-e^{2\pi i n z})^{24}

保型形式は端的に言うと「きわめて多くの対称性を持った特殊な関数」です。対称性からさまざまな良い性質が導かれ、これにより数学の多様な分野と関わることができます。


また保型形式は(上にあげたものだけには留まらない)多様な関数が集まった、とても広いクラスを表す概念です。そのため、全容を学ぼうとするととても大変ですし、私自身もよくわかっていません。

そこで今回は、保型形式のあくまで一部分である モジュラー形式 を紹介したいと思います。保型形式とモジュラー形式は、以下のベン図に示すような包含関係にあります:


真面目にモジュラー形式を勉強しようとすると難しいですが、今回の記事の目的はあくまでその魅力を伝えることです。言いかえると モジュラー形式を勉強するとこんなにも楽しい ということを紹介したいと思います。


記事の構成ですが、前半の「導入編」と後半の「応用編」に分けたいと思います。別記事にして、後半の応用編は明日投稿したいと思います。

前半の「導入編」では、魅力をお伝えするのに必要な 最低限の知識だけを紹介 します。

後半の「応用編」では、導入編で得た知識を活用して、モジュラー形式の魅力的な応用事例を「これでもか」というぐらい紹介したいと思います。応用編が特におすすめです!

導入編の目次(この記事です!)


応用編の目次(次回の記事

  • 応用①:「関数」の間の非自明な関係式が得られる(難易度:★★)
  • 応用②:「数列」の間の非自明な関係式が得られる(難易度:★★)
  • 応用③:ヘッケ作用素と2次のゼータ(難易度:★★★)
  • 応用④:素数を表現する2次形式(難易度:★★★★★)
  • 応用⑤:楕円曲線とフェルマーの最終定理(難易度:★★★★)


 

導入①:三角関数のおさらい

モジュラー形式に段階的に進んでいくために、まずは高校数学で習った 三角関数 から話を始めようと思います。

三角関数とは、たとえば

 \sin(x), \;\; \cos(x)

のような関数でした。

みなさんよくご存知の通り、これらの関数には 周期 があります。波打つ曲線が、一定間隔で無限に繰り返すような構造を持っているわけですね。

 \sin x \cos x は、周期  2\pi を持つ関数となっています。そのため、位相を  2\pi ずらすと同じ関数になります:

 \cos(x + 2\pi) = \cos(x), \;\; \sin(x + 2\pi) = \sin(x)


周期  2\pi だと分かりにくいので、 x 軸をぐーっと縮小させて周期を  1 にしてみましょう。つまり、 \cos(x), \sin(x) の代わりに

 f(x) = \cos(2\pi x),  \;\;\; g(x) = \sin(2\pi x)

を考えることにするのです。

このようにすると

 f(x + 1) = f(x), \;\;\; g(x + 1) = g(x)

が成り立つことがわかります。(このような修正を加えても、本質的な部分は何もかわりません。)


言い換えると、三角関数  f(x), g(x)

変換  T x x+1 に置き換える

に対して値が変わらない(不変な)関数であるというわけです。この変換は以降も使うので、 T という名前をつけておきましょう。

単なる言い換えに見えるかもしれませんが、これがモジュラー形式を理解する上でも、とても重要な考え方の変化です。一種のパラダイムシフトですね。


三角関数についてもう一つ思い出したいのは オイラーの公式 です。ここから大学数学に入りますが、三角関数は指数関数を使って

 e^{ix} = \cos(x) + i \sin(x)

のように表せるのでした。

この関数も、右辺が三角関数なので周期を持ちます。同じように、変数  x 2\pi x に置き換えておいて

 f(x) = e^{2\pi ix} = \cos(2\pi x) + i \sin(2\pi x)

としておきます。

ここで、 f(x) に対して「変換  T x x+1 に置き換える」を適用すると

 \begin{align*} f(x+1) = e^{2\pi i (x+1)} &= \cos(2\pi (x+1)) + i\sin(2\pi (x+1)) \\
&= \cos(2\pi x) + i\sin(2\pi x) \\
&= e^{2\pi i x} = f(x) \end{align*}

が成り立ちます。つまり、 f(x+1) = f(x) が成り立つわけです。


 e^{2\pi i x} も広い意味で見れば三角関数の仲間です。このように考えると

 \sin(2\pi x), \;\; \cos(2\pi x), \;\; e^{2\pi i x}

のような三角関数の特徴は

変換  T x x+1 に置き換える)に対して不変な関数

ということができそうですね。


導入②:モジュラー形式とは?

さて、いよいよモジュラー形式を導入したいと思います。

三角関数では

変換  T x x+1 に置き換える

という変換を考えました。この変換によって不変な関数を三角関数と言うのでした。


以下では、変換  T を含むような、より一般的な変換を考えます。

まず、2×2の行列

 \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix}

を考えます。行列  \gamma の係数  a, b, c, d整数 であって、行列式が  ad - bc = 1 であるとします。

行列  \gamma に対して次のような

変換  \gamma  x \displaystyle \frac{ax + b}{cx + d} に置き換える

を考えたいと思います。

毎回

 a, b, c, d整数であって、行列式が  ad - bc = 1 を満たす行列  \gamma

というのは大変なので、このような行列全体のなす集合を フルモジュラー群 といい、 \Gamma(あるいは  \operatorname{SL}_2(\mathbb{Z}))と書く表す約束にしましょう。この記事の中では一貫して  \Gamma を使います。


行列として特に

 T = \begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix}

を考えると、 T の係数は整数で、行列式は  1\cdot 1 - 1\cdot 0 = 1 を満たします。

一方、行列  T に対応する変換は

変換  T  x \displaystyle x + 1 に置き換える

となり、これは変換  T とまったく同じですね。したがって、フルモジュラー群  \Gamma は、変換  T に対応する行列を含んでいるとわかります。


モジュラー形式とは、「不正確さを承知の上でいえば」フルモジュラー群  \Gamma に属する任意の行列  \gamma に対する変換で不変な関数  f(x) のことです。フルモジュラー群  \Gamma変換  T に対応する行列を含んでいるので、三角関数よりずっと対称性が高い関数を考えたいということですね。


「不正確さを承知の上でいえば」と書いたのは、より正確には以下のように修正が必要だからです。

①まず、 f(x) としては  x を複素数とする 複素関数 を考える必要があります。慣習に従って、 x の代わりに複素数の変数  z を用いて  f(z) と表すことにします。

また、 f(z)正則関数 でなければいけません。正則な領域としては、複素数平面の中で特に虚部が正の領域( \operatorname{Im}(z) > 0)であればよいです。

このような領域のことを上半平面といいます。 f(z) は上半平面で正則、すなわち微分可能な関数でなければなりません。直感的には、無限大に発散するポイントが存在しない(極を持たない)ということです。複素関数の正則性というのはとても強い制約であり、これにより条件を満たす関数がかなり限られてきます。

②さらに、 f(z) z \to i\infty に対して極限を取ります。あまりなじみがないかもしれませんが、変数の虚軸方向に大きくしたときの極限ということです。

このような極限を考えたときに  f(z) z\to i\infty において正則 であるという条件がつきます。 \lim_{z \to i\infty} f(z) が無限大に発散せず、ちゃんとした値を持つということですね。


これで一通りの条件が出揃いました。以上をまとめるとこうなります:

 f(z) は上半平面で正則な複素関数
 f(z) z \to i \infty で正則
③ フルモジュラー群  \Gamma に属する任意の行列  \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix} に対する変換で  f(z) は不変
 \displaystyle f\left(\frac{az+b}{cz+d}\right) = f(z)


以上①〜③を満たす関数がモジュラー形式の定義です・・・、といいたいですが、違います。

実は、①〜③をすべて満たす関数は定数関数しかありません。(だめじゃん!!)

これは、今考えている定義域は「コンパクトリーマン面」だと思えることと、有名な定理「コンパクトリーマン面上の正則関数は定数に限られる」から導くことができます。

というわけで、このままでは定数だけしか扱えない、という非常に残念なことになります。


条件が厳しすぎたので、もう少し条件を緩めたいですね。

①、②の条件はできれば変えたくありません。そこで、③を修正したいと思います。

新しい条件③'は次の通りです:

③' フルモジュラー群  \Gamma に属する任意の行列  \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix} に対して  f(z) は以下の等式を満たす:
 \displaystyle f\left(\frac{az+b}{cz+d}\right) = (cz+d)^k\,f(z)


 f\left(\frac{az+b}{cz+d}\right) = f(z) とするのではなく、 f\left(\frac{az+b}{cz+d}\right) = (cz+d)^k\, f(z) (cz+d)^k 倍が余計についた形にするのですね。

ここで  k は非負の整数で、 f(z)重さ(ウェイト) といいます。


「変換に対して不変」としていたところを「 (cz+d)^k 倍のずれ」を許容することで、定義した関数が定数だけになってしまうのを回避するわけです。いやー、絶妙ですね。


これでようやく モジュラー形式 が次のように定義できます:

定義(モジュラー形式)
 f(z) が非負の整数  k に対して以下の①②③'を満たすとき、 f(z) を重さ  kモジュラー形式という。

 f(z) は上半平面で正則な複素関数
 f(z) z \to i \infty で正則
③' フルモジュラー群  \Gamma に属する任意の行列  \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix} に対して  f(z) は以下の等式を満たす:

 \displaystyle f\left(\frac{az+b}{cz+d}\right) = (cz+d)^k\,f(z)


このモジュラー形式の重さという概念はきわめて重要で、応用編で大変役に立つので覚えておいてください。

なお、①②の性質を「正則性」といい、③'の性質を「保型性」といいます。

補足:モジュラー形式とモジュラー関数
Wikipediaで「モジュラー形式」を調べると、同じページに「モジュラー関数」というのが出てきて混乱するかと思います。

モジュラー形式では、最初の条件①〜③のうち③を③'に置き換えることで定義されたのでした。実はもう一つ拡張の方向性はあって、それは①②の正則性を諦めてしまうことです。正則関数ではなく、有理型関数 という条件にしてしまうわけですね。有理型関数とは「極」という無限大に発散する点を許容するような関数です。詳しいことは複素関数論を読んでください。

定義(モジュラー関数)
 f(z) が以下の①'②'③を満たすとき、 f(z)モジュラー関数という。
①'  f(z) は上半平面で有理型な複素関数。
②'  f(z) z \to i\infty でも有理型
③ フルモジュラー群  \Gamma に属する任意の行列  \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix} に対して  f(z) は以下の等式を満たす:
 \displaystyle f\left(\frac{az+b}{cz+d}\right) = f(z)

モジュラー関数も大変面白い対象ではあるし、言いたいことはたくさんあります。一つだけ言っておくと、私のブログの一番上にある画像の数式が、モジュラー関数の代表例です。それぐらいお気に入りの関数です。


フルモジュラー群  \Gamma

 \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix}  ( a, b, c, d は整数、 ad-bc = 1

と表される行列全体でした。実は、これは次の3つの行列(および逆行列)を繰り返し掛け合わせることによって表すことができます:

 T = \begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix}, \;\; S = \begin{pmatrix} 0 & 1 \\ -1 & 0 \end{pmatrix}, \;\; I = \begin{pmatrix} -1 & 0 \\ 0 & -1 \end{pmatrix}

 f(z) の重さを  k としたとき、 T, S, I に対応する保型性は次のようになります:

  • 変換  T に対する保型性:  f\left(z + 1\right) = f(z)
  • 変換  S に対する保型性:  f\left(\frac{1}{-z}\right) = (-z)^k \,f(z)
  • 変換  I に対する保型性:  f(\frac{-z}{-1}) = (-1)^k\, f(z)

最後の変換  I は要するに  f(z) = (-1)^k\, f(z) ということです。 k が奇数のときは  f(z) = -f(z) から  f(z) = 0 が自動的に導かれます。偶数なら  f(z) = f(z) なので単なる恒等式です。

奇数だと  f(z) = 0 にしかならない件は、応用編①でまた言及することになります。

 T, S, I の組み合わせからフルモジュラー群  \Gamma のすべての行列を表すことができるので、この3つの保型性だけチェックすればすべての保型性が示されることになります。この事実は保型性のチェックをするのに大変便利なので、後ほど積極的に使っていきます。



さて、これにてモジュラー形式を定義することに成功したわけですが、上で定義したものは実は「フルモジュラーな」モジュラー形式というタイプのもので、モジュラー形式すべてを定義できたわけではありません。

もう少し変換のための行列を減らしたものも「モジュラー形式の仲間」として認めてあげようというわけです。


具体的には、ある固定した正の整数  N に対して

 \gamma = \begin{pmatrix} a & b \\ c & d \end{pmatrix}  ( a, b, c, d は整数、 ad-bc = 1 c \equiv 0 \pmod{N}

で表される行列全体を考えます。下線部がフルモジュラー群のときと異なる箇所で「 c N で割り切れるもの」だけ考えるということですね。つまり、フルモジュラー群の一部分だけを考えるということです。(群論の言葉を使うと、フルモジュラー群  \Gamma の部分群を考えることになります。)

このような任意の行列に対して保型性

 \displaystyle f\left(\frac{az+b}{cz+d}\right) = (cz + d)^k\, f(z)

を持つ関数  f(z) を考えます。これを レベル  N のモジュラー形式と言います。

なお、レベル  N のモジュラー形式は、上と異なるタイプのもの(たとえば、さらに  d\equiv 1 \pmod{N} を課すもの)など、いくつかバリエーションが存在します。

こんな風に拡張していくことで、どんどんモジュラー形式のバリエーションを増やすことができるわけです。


他にも、「重さ  k」として半整数のものを考えることもあります。これは半整数ウェイトのモジュラー形式といいます。


上記のような拡張したものもひっくるめて モジュラー形式 といいます。さらに、これをもっと拡張したような、とても一般化した概念が保型形式ということですね。


今回は、基本的にはフルモジュラーなモジュラー形式を扱うことになります。なので、特に断りがなければフルモジュラーだと思ってください。

応用④と応用⑤のところだけ、例外的にレベル  N のモジュラー形式が登場します。


導入③:これだけは覚えて欲しい2つのモジュラー形式

モジュラー形式が定義できたので、モジュラー形式の具体例を紹介したいと思います。

今回は、2種類の代表的なモジュラー形式を紹介します。一つはアイゼンシュタイン級数で、もう一つはラマヌジャンのデルタです。実はこれらは記事の冒頭で既に紹介しているものです。

教科書だと「私、ただの具体例ですけど」みたいにしれっと出てくるのですが、よーく注意してください。この2種類は極めて重要な具体例 です。


まずは、アイゼンシュタイン級数です。 k 2 以上の整数として、重さ  2k のアイゼンシュタイン級数  G_{2k}(z) は次のように定義されます:

 \displaystyle G_{2k}(z) = \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{1}{(mz+n)^{2k}} \tag{1}

パラメータとして  2k が入っているので、アイゼンシュタイン級数は一個だけではありません。たとえば、 k = 2 のときは  G_4(z)、同様に

 G_4(z), G_6(z), G_{8}(z), G_{10}(z), G_{12}(z), G_{14}(z), \ldots

のすべてがアイゼンシュタイン級数です。
(導入④では、これを単に定数倍しただけの「正規化されたアイゼンシュタイン級数」が登場します。)



定義式  (1) を観察すると、右辺が無限個の項を足す級数の形になっています。

和の取り方としては「 (m, n) = (0, 0) 以外の整数  m, n の組み合わせ全部」についての和を考えています。 m = 1, n = 0 のときは  \frac{1}{(mz)^{2k}} になりますし、 m = 2, n = -1 のときは  \frac{1}{(2z-1)^{2k}} になります。これらの無限の組み合わせを全部足し合わせるわけですね。これで一個の  z に対する値が決まるのです。

 (m, n) = (0, 0) が抜けているのはなぜかわかるでしょうか。もし  (m, n) = (0, 0) を足し合わせるとなると、その項は  \frac{1}{0} になってしまいます。このままでは値が定義できないので、この項を除いておく必要があるのですね。


アイゼンシュタイン級数  G_{2k}(z) は、重さが  2k のモジュラー形式 となっています。

補足:アイゼンシュタイン級数の保型性
導入②で議論したように、行列  T = \begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix} と行列  S = \begin{pmatrix} 0 & 1 \\ -1 & 0 \end{pmatrix} に対する保型性を確認すれば十分です。

行列  S を適用すると、次のようになります:

 \displaystyle \begin{align*} G_{2k}(-\frac{1}{z}) &= \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{1}{(m(-\frac{1}{z}) + n)^{2k}}  \\
&= \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{(-z)^{2k}}{(-nz + m)^{2k}}  \\
&= (-z)^{2k} \cdot \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{1}{(-nz + m)^{2k}}  \\
&= (-z)^{2k} \cdot \sum_{(m, n) \in \mathbb{Z}^2\setminus \{(0, 0)\}} \frac{1}{(mz + n)^{2k}}   \end{align*}

最後はちょっとトリッキーな変形に見えるかもしれません。以下の2つを使っています:

  •  -n n を入れ替えても和の取り方は変わらない
  •  m n を記号的に入れ替えても和の取り方は変わらない

行列  T に対する保型性(  G_{2k}(z+1) = G_{2k}(z))は簡単に確認できるので、ぜひ考えてみてください。

アイゼンシュタイン級数の和の取り方の「対称性」によって、モジュラー形式の性質を満たされているわけですね。


続いて、重さ  12 のモジュラー形式の例として、ラマヌジャンのデルタ を紹介します。アイゼンシュタイン級数と違って、こちらは1つの関数です:

 \displaystyle \Delta(z) = e^{2\pi i z} \prod_{n=1}^{\infty}(1-e^{2\pi i n z})^{24} \tag{2}

一見ごちゃごちゃした形に見えますね。しかしながら、よくよく観察すると、これが  e^{2\pi i z} を基本パーツとして構成されていることがわかります。

これに着目して

 \displaystyle \Delta(z) = (e^{2\pi i z}) \prod_{n=1}^{\infty}(1-(e^{2\pi i z})^n)^{24}

と置いてあげると、少し見やすくなるかもしれません。

右辺は、無限積 と呼ばれるもので、シグマ記号の「積」バージョンです。 n = 1, 2, 3, \ldots の各  n に対して  (1-(e^{2\pi i z})^n)^{24} を計算して、これらをすべて掛け合わせるというものです。

実際、次のような式を考えているということですね:

 \Delta(z) = (e^{2\pi i z}) \times (1-(e^{2\pi i z}) )^{24} \times (1-(e^{2\pi i z})^2)^{24} \times (1-(e^{2\pi i z})^3)^{24} \times \cdots


このラマヌジャンのデルタのパーツは  e^{2\pi i z} なのでした。そして、三角関数のときにやったように、 e^{2\pi i z} は行列  T に対する保型性(不変性)が成り立つ なのでした:

 e^{2\pi i (z+1)} = e^{2\pi i z}

よって、ラマヌジャンのデルタ全体としても、行列  T による変換に対して不変になるのです。面白いですね!!

あとは、行列  S に対しての保型性を言えばいいのですが、この証明は簡単ではありません。


ここでは結果を述べるだけに留めますが、ラマヌジャンのデルタは行列  T, S に対して次のような「保型性」を満たします:

 \begin{cases} \Delta(z+1) = \Delta(z) \\
\Delta(-\frac{1}{z}) = (-z)^{12}\Delta(z) \end{cases}

よって、ラマヌジャンのデルタは重さ  12 のモジュラー形式というわけですね。


導入④:q-展開とカスプ形式

モジュラー形式の表現形式として  q-展開 というものがあります。これはぜひ知っておくべきことです。


先ほどのラマヌジャンのデルタは、 e^{2\pi i z} というパーツで構成されていたことを思い出しましょう。見やすくするために

 q = e^{2\pi i z} \tag{3}

という新しい変数を用意して、ラマヌジャンのデルタを書き直しましょう:

 \displaystyle \Delta(z) = q \prod_{n=1}^{\infty}(1-q^n)^{24}

これでラマヌジャンのデルタが  q に依存して値が決まることが分かりやすくなりました。


さて、右辺は無限積の形になっていますが、これを和の形に変えてみましょう。

 n = 1 まで掛け合わせると、右辺は

 \displaystyle q \times (1-q)^{24} = q - 24q^2 + \cdots

となります。
(思い切り省略していますが、全部の項を展開するのはとても大変な作業です。)

 n = 2 まで掛け合わせると

 \displaystyle q \times (1-q)^{24} \times (1-q^2)^{24} = q - 24q^2 + 252q^3 - \cdots

となります。

以降、繰り返すと

 \displaystyle \Delta(z) =  q - 24q^2 + 252q^3 - 1472q^4 + 4830q^5 - 6048q^6 + \cdots \tag{4}

のように係数が確定していきます。


ラマヌジャンのデルタが  q のべき級数の形で展開できたわけですが、これを  q-展開 といいます。


一般に、(フルモジュラーな)モジュラー形式は行列  T による変換に対して不変です。ということは、三角関数と同じ周期性を持っているわけですね。

ここで、フーリエ級数展開 を思い出すと、周期  1 の周期性を持つ関数  f(z)

 \displaystyle f(z) = \sum_{n = -\infty}^{\infty} a_n(f) \,e^{2\pi i n z}

のように表すことができます。

 q = e^{2\pi i z} と置き換えると

 \displaystyle f(z) = \sum_{n = -\infty}^{\infty} a_n(f) \,q^{n}

となります。あとは、負のべきの項が消えれば、 q-展開の形になりますね。


ここで、モジュラー形式の定義にあった条件②「 f(z) z\to i\infty において正則」を思い出しましょう。 z \to i\infty のとき、 iz \to -\infty なので

 q = e^{2\pi (iz)} \xrightarrow{iz \to -\infty} 0

となります。

負べきの項は  q^{-n} という形になっているので、 q \to 0 のとき  q^{-n} \to \infty になってしまいます。よって、モジュラー形式であるためには、負べきの項に関する係数はすべて  0 でなければなりません。


以上によって、任意の(フルモジュラーな)モジュラー形式は

 \displaystyle f(z) = \sum_{n = 0}^{\infty} a_n(f)\, q^{n} \tag{5}

と表せるわけですね。これをモジュラー形式  f(z) q-展開といいます。また、 a_n(f) f  q-係数といいます。


関連して、カスプ形式 という概念を紹介します。今定義した  q-展開を明示的に表すと

 f(z) = a_0(f) + a_1(f) \,q + a_2(f) \,q^2 + a_3(f) \,q^3 + \cdots

と書けます。このとき、特に定数項が  a_0(f) = 0 であるものをカスプ形式といいます。つまり

 f(z) = a_1(f) \,q + a_2(f) \,q^2 + a_3(f)\, q^3 + \cdots

のように  q 1 次以降から始まるものをカスプ形式というわけですね。

なお、 z \to i\infty の極限を考えると  f(z) a_0 に収束するので

 \displaystyle \lim_{z \to i\infty} f(z) = 0

をカスプ形式の条件であると言い換えることもできます。

カスプ形式かどうかというのは「ささいな違い」に見えるかもしれませんが、応用編で度々活用されるように極めて重要な条件となっています。


例:ラマヌジャンのデルタの  q-展開:
ラマヌジャンのデルタは

 \displaystyle \Delta(z) =  q - 24q^2 + 252q^3 - 1472q^4 + 4830q^5 - 6048q^6 + \cdots \tag{4}

のように  q 1 次から始まっていますので、カスプ形式の一例です。

応用編その③で使うので、ラマヌジャンのデルタの  q-係数を、特別に  \tau(n) := a_n(\Delta) と置いておくことにしましょう。これをラマヌジャンのタウ関数といいます。

 \tau(1) = 1
 \tau(2) = -24
 \tau(3) = 252
 \tau(4) = -1472
 \tau(5) = 4830
 \tau(6) = -6048

のように続いてきます。


例:アイゼンシュタイン級数の  q-展開:
アイゼンシュタイン級数  G_{2k}(z)カスプ形式ではありません。この  q-展開は次のように表されます:

 \displaystyle G_{2k}(z) = 2\zeta(2k)\left(1 - \frac{4k}{B_{2k}} \sum_{n=1}^{\infty} \sigma_{2k-1}(n)\,q^n \right) \tag{6}

ここで、 \zeta(2k) はリーマン・ゼータ関数の  2k における値、 B_{2k} はベルヌーイ数の  2k 番目の値です。これは  2k に対して決まってしまう定数の値なので、特に気にする必要はありません。(リーマン・ゼータやベルヌーイ数が出てくるのは大変興味深いですが!)

定数項  2\zeta(2k) が非零なので、カスプ形式ではないと言う分けですね。


 q^n の係数についている  \sigma_{2k-1}(n) は( 2k-1 乗の)約数関数と呼ばれるもので、 n の正の約数をすべて  2k-1 乗してから足し合わせるという関数です。数論的にはしばしば見かける関数ですね。


上の式  (6) を見ると、アイゼンシュタイン級数  G_{2k}(z) を最初から  1/( 2\zeta(2k) ) 倍してあげたほうがよさそうに思えます。

つまり

 \displaystyle E_{2k}(z) := \frac{G_{2k}(z)}{2\zeta(2k)} = 1 - \frac{4k}{B_{2k}} \sum_{n=1}^{\infty} \sigma_{2k-1}(n)\,q^n \tag{7}

ということです。この  E_{2k}(z)正規化されたアイゼンシュタイン級数といいます。 q-展開の定数項が  1 に正規化されるというわけですね。

こうしておけば、正規化されたアイゼンシュタイン級数が「約数関数の母関数」だと思うことができて、いっそう綺麗に思えます。

正規化されたアイゼンシュタイン級数の  q-展開を計算すると、次のようになります:

 \displaystyle E_{4}(z) = 1 + 240\sum_{n=1}^{\infty} \sigma_{3}(n)\,q^n
 \displaystyle E_{6}(z) = 1 - 504\sum_{n=1}^{\infty} \sigma_{5}(n)\,q^n
 \displaystyle E_{8}(z) = 1 + 480\sum_{n=1}^{\infty} \sigma_{7}(n)\,q^n
 \displaystyle E_{10}(z) = 1 - 528\sum_{n=1}^{\infty} \sigma_{9}(n)\,q^n
 \displaystyle E_{12}(z) = 1 + \frac{65520}{691}\sum_{n=1}^{\infty} \sigma_{11}(n)\,q^n
 \vdots


次回予告!

以上で、モジュラー形式に関する最低限の事項はすべて説明し終わりました。キリが良いところなので、導入編はこの辺で終わりたいと思います。

今回はモジュラー形式の定義を紹介し、重さ  2k のモジュラー形式としてアイゼンシュタイン級数  G_{2k}(z) を、重さ  12 のカスプ形式としてラマヌジャンのデルタ  \Delta(z) を紹介しました。これらの具体例は次回も出てくるので、ぜひ親しんでおいてください。

また、 q-展開を導入して、 G_{2k}(z)(あるいは正規化されたアイゼンシュタイン級数  E_{2k}(z))と  \Delta(z) q-展開を紹介しました。


これにて準備ができたということで、明日公開の記事では 「モジュラー形式を勉強するとこんなにも楽しい」 という話をしていきたいと思います。

具体的には 5つ の話を紹介したいと思います。

  • 応用①:「関数」の間の非自明な関係式が得られる(難易度:★★)
  • 応用②:「数列」の間の非自明な関係式が得られる(難易度:★★)
  • 応用③:ヘッケ作用素と2次のゼータ(難易度:★★★)
  • 応用④:素数を表現する2次形式(難易度:★★★★★)
  • 応用⑤:楕円曲線とフェルマーの最終定理(難易度:★★★★)

上記のリストは、私が保型形式を勉強する中で 本当に感動したものだけを厳選したもの となっています。明日の記事をお楽しみに!

それでは、今日はこの辺で!


「応用編」公開しました!

tsujimotter.hatenablog.com


今回の分の参考文献

数学ガール「フェルマーの最終定理」は今回挙げた本の中で一番おすすめしたい本です。気軽に読める本でありながら、楕円曲線と保型形式の関係を紹介する最終章はたいへん深くて数学好きにも満足できる内容になっているかと思います。ぜひご一読ください。


また、保型形式についての議論はこちらが基本的な文献となっています。第3章が「保型形式」についての章となっていて、他の章とは独立して読むことができるのがありがたいです。

私自身は、ざっと目を通した程度なのですが、ちゃんと読んでいるわけではありませんので、よろしければこちらを合わせて参照されるとより良いかと思います。


まったく目を通せていないのですが、セールによる下記の本の第7章がおすすめだと聞きます。


最近出た「数理科学2021年2月号」では「保型形式」の特集が組まれました。その中で金子先生が執筆された「1変数保型形式の数論入門」という記事が大変わかりやすく参考になるかと思います。