公開コピー誌
高校生のための
なんでも複素化!
暗黒通信団
●
1
はじめに
「数学は嫌い」という人は多い。なぜか? 難しいし、面倒くさいから だ。数学の授業というのは基本的に演習中心で問題を解かされる。問 題が簡単なら優越感に浸れるが、大抵そんなことはない。どうせ問題 集の巻末に答えが載ってるくせに、何を好んで問題と格闘しないとい けないのか。試験だってそうだ。習った公式を当てはめられるよう な問題は出ないし、制限時間はあるし、電卓も使わせてくれないし、 証明といえば、余りに技巧的で騙されたようだし、問題を解いたから 何か世の中で役に立つとも思えないし、そもそも理系などオタクの廃 人ばかりだ。だから数学なんて大嫌い、と、こう来る人が実に多い。 しかし、ちょっと待て。数学というのはそもそも問題を解くだけの 学問ではない。数学の面白さは、問題を解くことよりも、むしろ問題 を作る方にある。中世ヨーロッパで道楽的に数学をやっていた連中 も、問題の出し合いで楽しんでいた。これは難問を考えてパズル雑 誌に投稿するのと何ら変わらない。学校の数学も本当は同じだろう。 面倒な計算はパスして、試験問題を作る側にしてくれたら、どんなに 楽しいことか。大体、このIT社会において、手作業の計算をさせる 方が時代遅れというものだ。 さて、本稿はそんな方々のために、数学を裏側から楽しむための、 一つの道筋を示したものだ。といっても、面白い問題を作るのは簡単 ではない。例えば、問題集に出てる問題の数字だけを変えたとして も、面白くも何ともないだろう。問題作成には、それなりに体系化し た思考と訓練が必要で、がむしゃらに考えても、大抵の場合は、ろく な問題にならない。 そこで本稿では、もっとそれ以前、問題のベースとなる基本的な考 え方自体を作ることを目指してみた。そもそも数学の場合、重要な点 は「一般化」という言葉で表されるように思う。一般化とは、人々に 広く知らしめることではなくて、概念を拡げて様々に適用できるよ うにすることだ。話を複素数に絞るなら、普通の高校数学でやるよう に、整数を広げて実数にして、それから複素数を導入するというのが オードソックスな一般化だ。しかし、一般化には様々なやり方があっ て、なにも数の種類を拡張するだけが能ではない。整数から一足飛び に複素整数を考えるとか、常識として整数でしかあり得ないと思わ れてる概念を無理矢理複素数にするとか、複素数という枠組みの中 でも、色々とやり方がある。そして、そういう脱線話は、忙しい学校 では教えてくれない。試験にも入試にも出ないので、塾でも教えない し、参考書にも出てこない。 本稿の前身は、筆者が高校の教壇に立っていた頃、数学がつまらな いと愚痴を言ってきた生徒に向けて書いたものだ。数学では自分の世 界を自分で作れる。いわば壮大なファンタジーの設定書を書くよう なものだ。後半は少し難しいかもしれないが、極力、概念とキーワー ドだけをちりばめることにして、深入りはしないようにするから、安 心して突入しよう。●
2
自然数概念の複素化
◆
1 平面 複素数というのは、要するに「実数」と「虚数」という二種類の数で 出来ている数のことだ*1。実数というのは「1」とか「2」とか「√3」 とか「π」といった、横向きの数直線上にある普通の数である。対し て「虚数」は縦向き数直線の上にある数だ。実に怪しい。虚数は普 通、縦向きであることを表すために、縦向きの単位「i」を付けて表 す。「1i」とか「2i」とか「√3i」とか「πi」といった具合だ。この 「i」を、業界では虚数単位といって、その正体は2乗すると−1にな る数である*2。もともと2次方程式の「普通じゃない」答えを表すた めに作った人工的な数だが、これがなかなか使い勝手がよい。複素数 とは、この実数と虚数を一つづつセットにして「+」や「−」で結合 したものである。だから複素数は「3 + 4i」とか「π− ei」といった 複雑な表記になる。これ以上簡単には表せない。 この時点で既に脱落してしまったら、次のようなものだと思えばい い。「普通の数は直線的に並んでいるだけだが、これを無理矢理平面 的に並べられるように拡張したらどうなるか」という遊びの成果だ。 この「無理矢理」さが、常識を打破するには重要だ。当然ながら、軸 をもう一本追加して、数を立体的に並べたらどうか、というのも立派 な数学なのだが、実は数を3次元的に並べても、あまり使い勝手がよ くないことが既に知られている。ちなみに更に次元をあげて(軸を追 加して)、4次元的に並べると、これはそこそこ使い勝手がよいこと が知られていて、「ハミルトンの4元数体」と呼ばれる。これはこれ で深遠な世界なのだが、本稿では「2」というものに話の主軸を置き たいから、軸は2本で我慢することにしよう。注意すべき点は、この *1複素数が作る代数構造は、数学者の間で「虚二次体」と呼ばれる。もし専門書を読んで、そういう単語に出くわしても、怖がらずに「なんだ複素数みたい なやつのことか」と笑い飛ばす根性が大事だ。 *2つまり、x2+ 1 = 0 という式の解である。この世には x2+ x + 1 = 0 の解を扱う理論もあり、こちらはアイゼンシュタイン数といわれる。もっと他に、 例えば√2 や√3 を縦軸にとるような理論もたくさん作られている。こういうのは大学の代数学という授業に出てくる。2次元の2という数も「実数」である点だ。 とりあえず、数を2次元に拡張する。2次元には縦軸と横軸が必要 だ。そこで横軸は普通の実数を表すとして、縦軸は虚数なるものを表 すとする。そう決めてしまう。この怪しい平面は「複素平面」と呼ば れていて、この上に点を一つ打てば、その座標は実数と虚数のペアに なる。こうしてペアで表した数を「複素数」というわけだ。複素整数 というのは、この座標の値が整数になるようなものである。 さて昔、ガウスという数学者がいて、ある時天啓を受けてこう叫ん だ*3。「iを掛けるというのは、点を(原点中心に)左向きに90度回 転することだ!」なるほど、(1,0)にiを掛けると(i,0)になるが、こ れは(1,0)を90度回した状態になっている。(i,0)に更にiを掛ける と、i2は−1なので、(−1, 0)になる。つまり(1,0)を原点まわりに 180度回転したことに対応する。このアイデアは大変に素晴らしかっ たので、今では複素平面を「ガウス平面」とも呼ぶ。 と、ここまでは高校の話。が、教育課程というのは片手落ちだか ら、せっかく数の概念を2次元に拡張しても、それが本当はどんな 世界を拓くのかということは教えてくれない。実際、これは深淵なの だ。単に「二次方程式がちゃんと解けた、ラッキー」といって終わら せてはくれない。それを次に見てみよう。
◆
2 1を拡張せよ ∼4つの1 数直線の中で特別な点は何だろうか。多分「0」だ。なぜなら、「0」 に何を掛けても「0」だからだ。あるいは「0」に何を足しても、その 数になってしまうと言ってもいい。数直線は「0」を中心として対称 的になっている。数直線を拡張して数平面にしても、この対称はその ままだ。つまり「0」は数平面(複素平面)の原点で、すべての平面は 原点を中心に広がっている。おそらく、更に拡張して3次元や4次 元の空間にしてみても、やはり原点は原点で、「0」は「0」であり続 けるだろう。 では数直線上で0と並んで特別な点は何か。多くの人は「1」と答 えるはずだ。なぜなら、どんな数に1を掛けても、値は変わらないか らだ。しかし、「1」を平面に拡張すると、今度は話が違ってくる。 「掛けても変わらない」という性質だけを考えれば、「1」はそれ以 上、拡張のしようがない。負の数だろうが、怪しげな複素数だろう が、それを掛けて変わらない数といえば、実数の「1」以外はない。こ の方向で押し通してもよいが、数学というのは実は美学だから、対称 というのが大事だ。2方向に無限に広がる複素平面で、原点に対して 右側にだけ特別な点があるというのは、対称が悪いではないか。軸は 原点から右だけではなく上にも広がっているのだ。上の方の点(i,0) は一体何なのだろうか。 2つの軸が対等だという前提に立てば、縦方向のiだって1の一種 だろう。軸が2本に増えてしまった時点で、1も二つに増殖せざる得 ない。もしあなたが善良な高校生で、ベクトルというものを忘れてい ないなら、2次元の空間を表すには2つの単位ベクトルが必要だと 習ったことと思う。実数であれ虚数であれ、数を量として扱うために は単位が必要であり、1というのは、この単位に当たる。本来なら、 iと対応するように、実数にも(例えば)rなどという単位をつけて、 複素数を3r + 4iなどと表すべきなのだ。複素平面上の点を表すに は、1とiという二つの単位ベクトルが必要で、その意味において1 とiは対等である*4。 こう書けば、大抵の人は「ふぅん、そんなものかね」と思って妥協 してしまうものだが、話はそこで終わってくれない。聡明な読者はこ う言うだろう。「1の重要な性質は『掛けても値が変わらない』って ことじゃないのか?なのにあんたはさっき、iを掛けるのが反時計回 りの90度回転を意味すると言ったじゃないか。だったらiと1は違 うものだろう?一緒になるわけないじゃないか」 これは実に正当な疑問だ。平面の対称性からいけば、1とiは対等 であるはずなのに、その演算上の機能は全く違う。この折り合いをど うつけたらいいか。実にこれが、数を拡張する上での、最初の問題で ある。 複素数に対して実数や虚数を掛けた場合、複素平面上では何が起こ るのだろうか。これは簡単に実験してみればすぐに分かる。例えば 3 + 4iに3を掛ければ、9 + 12iだ。実数を掛けるということは、原 点を中心に値を拡大することである。同じく3 + 4iに3iを掛けれ ば、−12 + 9iになる。これは3を掛けてからiを掛けることで、つ まり、原点中心に値を拡大してから反時計回りに90度回転すること になる*5。複素平面上での演算は要するに、拡大と回転と、その合成 に帰着する。 話を戻そう。iを掛けるということは、どう転んでも、90度の反時 計回り回転をしてしまう。ということは、iを1と同等と見なしたい ということは、90度の回転をしてしまった世界と元の世界を同一と みなせ、ということに他ならない。 ならば、そう見なせばいいのだ。つまり例えば、複素平面の右上の 部分しか考えないことにして、その他の部分は、右上の部分の回転コ ピーでしかないと考える。例えば、1 + 2iを90度づつ反時計方向に 回転させていくと、−2 + i、−1 − 2i、2− iという3つの複素数が *3これはよく言われる話だが、数学史に詳しい人は嘘だと見抜いてしまうかもしれない。複素平面の歴史はガウスより古く、ヴィッセルやウォリスに遡る。 *4この類推から行けば、3 次元空間には 3 つに拡張された 1 があり、n 次元空間には n 個の 1 があるだろう。でもそれは本当だろうか?*5では複素数を掛けるとどうなるか。(2 + 3i)(4 + 5i) = 8− 15 + 12i + 10i = −7 + 22i…これだけでは、何が起こってるのか分からない。そこで、表記
方法を少し変えてみる。複素数を、実数軸からの角度と、原点からの距離で表し—いわゆる極座標表示にして—、計算してみよう。詳細は類書をあされば 出てくるだろうが、加法定理を使ってやると、r1(cos θ1+ i sin θ1)· r2(cos θ2+ i sin θ2) = r1r2{cos(θ1+ θ2) + i sin(θ1+ θ2)} となる。これを見る
と「二つの点の原点からの距離を掛けたものが、新しい点の原点からの距離になり」「二つの点の実数軸からの角度を足したものが、新しい点の実数軸か らの角度になる」ことがわかる。
出てくるが、これらは皆、元の1 + 2iと同じ数だと見なしてしまう のだ。そうすれば、1を掛けてもiを掛けても、数は「変わらない」 ことになる。この結果、1は4つに拡大される。1とiと−iと−1 である*6。これらは「無理矢理」みんな同じ1と見なしてしまうの だ*7。無理矢理さは大事だ。 何だか強引で騙されたような感じだし、これをそのまま試験答案に 書いたらバツにされるだろうが、この話は本稿の中で、かなり大事な 部分である。
◆
3 2を拡張せよ ∼2は素数じゃない 「1」でこれだけ手こずったのだ。次の「2」はさぞや酷いことにな るだろう。と思いきや、それほどではない。ただし2では、1とは 違った話題が待っている。実は、複素数の世界では、「2は素数では ない」のである。次の因数分解を見れば一発で分かる。 2 = (1 + i)(1− i) 一応、複素数の計算を復習しておくと、ポイントはi2 =−1 とい う式だ。だから、(1 + i)(1− i) = 12− i2= 12− (−1) = 2 になる。 素数というのは、それ以上因数分解できない数のことである。2は 複素世界では因数分解できてしまう。とんでもない話だ。偶数か奇 数を判定する数が解体されてしまった結果、複素世界では、従来の偶 奇概念がいきなり崩壊してしまう。しかもよく見よう。1 + i、1− i という二つの数は、互いに90度ずれてる。これは実に「同じ数」で ある。そしてもう一つ、1 + iには特筆すべき性質がある。1 + iは 1(当然4種類あるが)を除く数で割り切れないのだ。これは、1 + i が「複素数世界における最小の素数」であることを意味する。 これは重要だ。もし2なる数を「最小の素数」と言い換えるなら、 1 + iは2が拡張された姿そのものである。2をこうして定義できる と、複素世界でも失われた偶数の概念が復活する。1 + iで割り切れ れば偶数、割り切れなければ奇数、というわけだ。では、どんな数が 割り切れるのか。これは逆に、1 + iに色々と適当に複素整数を掛け てみて、どんな数が1 + iを因数に含んでいるか—つまり複素偶数で あるか—を調べればいい。具体的には、適当な複素整数をa + biだ として、このa, bに色々な整数を入れてみて、出てきた数が複素偶数 である。 (1 + i)(a + bi) = a− b + (a + b)i (−1 + i)(a + bi) = −a − b + (a − b)i (−1 − i)(a + bi) = −a + b + (−a − b)i (1− i)(a + bi) = a + b + (−a + b)i
コンピュータに計算させてみた結果を載せておこう*8。黒い部分が 複素偶数である*9。見事に全複素整数の半分が複素偶数になってい る*10。 -40 -20 0 20 40 b -40 -20 0 20 40 a ということは、2を1 + iと見立てたことは、それほど間違ってい たわけでもないらしい*11。こうなると自信がつく。それでは実数世 界の3は複素数世界では何に対応するのか。4は? 5は? しかし、 飛躍する前に、もっと大事なことを書いておこう。それは複素数の世 界で「素数」がどうなるか、という点だ。
◆
4 素数 実数界の整数論ではとりわけ「素数」が大事だ。どうしてかという と、全ての自然数は、順序を無視すれば ただ一通りの 素因数分解が できるからだ。この性質を業界では格好良く「一意分解性」という。 逆に言えば、あらゆる合成数は一通りの素数の掛け算で書けるわけだ から、当然、素数について調べることが大事になる。 実は複素整数の世界でも同じことが言えて、1,−1, i, −iを同じ数 だとみなせば、あらゆる複素整数は、ただ一通りの複素素数の掛け算 で書ける*12。当然、複素世界でも、複素世界なりの素数が大事にな *6こういう拡張された 1 を、代数の世界では「単数」と呼ぶ。 *7専門家の人には、かなりまどろっこしい書き方だろう。通常、単数は、逆数が整数となるような数として導入される。a + bi にかかる制限が a2+ b2= 1 であることから、上記の 4 つの数が導出される。 *8こうして証明抜きで色々と遊んでみるのは楽しい。それは大抵コンピュータのお世話になるのだけど。 *9複素奇数には次の性質がある。1. 複素奇数の 2 乗≡± 1(mod 4)、2. 複素奇数の 4 乗≡ 1(mod 8) 。 *10詳細に見ると、実部と虚部が共に偶数または奇数であれば、複素偶数であるわけだ。 *11厳密に言えば、実数世界における 2 の様々な性質を列挙して、それが 1+i でどう拡張されるのかについて詳細に論じる必要がある。ただし、それは割愛 だ。例えば、2 + 2 = 2× 2 = 22なんていう性質は 1 + i では成り立たない。 *12玄人向けに格好良く書くと、「ガウス整数環はユークリッド整域で、単数の違いを除いて一意分解的である」となる。でも玄人はこんなインチキ同人誌は 読んでないだろうから、極力こういう変な言い回しはやめよう。 *13実数と複素数の他に一意分解性が成立する構造はあるのか、というのはまっとうな疑問だ。√−n を新しい軸として構成したものでは、n = 1 の他、 n = 2, 3, 7, 11, 19, 43, 67, 163 の場合に一意分解性が成り立つことが知られている。ベイカー・シュタルクの定理という。るわけだ*13。それでは、複素世界の素数とは一体なんだろう? 2が因数分解されてしまった背景には、複素世界で(a + bi)(a− bi) という形の分解が成り立つという事情がある。同じ論法で、他にどん な数が「素数でなくなる」のかを調べてみよう。これはコンピュータ で簡単に探すことができる。 (1 + 2i)(1− 2i) = 5 (1 + 4i)(1− 4i) = 17 (1 + 6i)(1− 6i) = 37 (2 + 3i)(2− 3i) = 13 (2 + 5i)(2− 5i) = 29 (2 + 7i)(2− 7i) = 53 (4 + 5i)(4− 5i) = 41 ここで頑張って規則性を見つける。どうやら、実数軸上において 「4で割ると1余る素数」は複素世界で素数にはなれないらしい。逆 に「4で割ると3余る素数」は、複素世界でも素数になるようだ*14。 加えて、実数界には存在しなかった1 + iなどという数が、新たに素 数として加わる。では最終的に、素数はどう拡張されるのか? ここ に偉大な定理がある*15。 ある複素整数が複素素数であるということは、 1) 4で割ると3余る実数軸上の素数か、 2)複素整数の大きさ(ノルム)が素数であるか のどちらかである 「4で割ると3余る」というのは分かる。が、2)の「大きさ」とは何 だろうか。天下りだが、複素数の大きさ(ノルムという)は、a + biに 対してa2+ b2で決められる*16。つまり原点からの距離の2乗だ*17。 この定理で算出してやった複素素数を表示したのが次図だ。「ガウス の絨毯」などと呼ばれている。複素世界の素数論は、この図を眺める ところからスタートする。 100 80 60 40 20 0 b 100 80 60 40 20 a 複素素数の性質を列挙してみよう。まず、複素素数は無限にある。 これは当たり前だ。複素整数のノルムは無限に大きくなっていくし、 実数軸上の素数も無限にたくさんあるからだ。次に気づくのは、上の 定理が示すように、複素素数が大きく分けて2つに分類される点だ。 奇妙なのは、2)のパターン「ノルムが素数になっているもの」であ る。何度も書くが、ノルムというのはそもそも複素数の原点からの距 離を2乗したもの だ。実数軸上の素数の大きさは、2乗なんてしな い。数字そのままが大きさだ。複素整数の世界では、「原点からの距 離」と「大きさ(ノルム)」が一致してないことになる。「それはノル ムの決め方がまずいんじゃないのか?」という声が聞こえてきそうだ が、確かにノルムが素数である複素整数は、複素素数なのだ。 こうなると、ある一つの実数軸上の素数に対して、2)型の複素素 数がいくつくらいあるのかが気になる。これを調べるためには、ある 実数軸上素数が「a2+ b2」という形に分解できるパターンはいくつ くらいあるかが分からないといけない。2以外の実数軸素数は奇数だ から、a, bは偶数と奇数の組み合わせになる。50までの素数だと次 のような感じだ。 2 = 12+ 12 5 = 12+ 22= 22+ 12 13 = 22+ 32= 32+ 22 17 = 12+ 42= 42+ 12 29 = 22+ 52= 52+ 22 37 = 12+ 62= 62+ 12 41 = 42+ 52= 52+ 42 検証数が少ないが、実はこのパターンの素数は2通りにしか分解 できないことが知られている。2)型の複素素数は、「4で割って1余 る実数軸上の素数」の一部だが、これが素数全体に対してどのくらい の割合で出現するのかは分からない。ここでは仮に割合aとしよう。 実数軸上素数の出現頻度は色々と研究されていて、だいたいは以下の 関数に近いことが知られている*18。 x以下の実数軸上素数の総数∼ x log x 仮に、実数軸上の素数で「4で割って1余る」ものと「4で割って 3余る」ものが同じくらいの数あるとすると、ノルムがxまでの複素 素数の数は、「4で割って3余る」素数が √ x 2 log√x個、ノルムが素数 になる複素素数は、2ax log x 個程度だ。これらを合計すると、複素素数 の数は、 √ x + 2ax log x 個くらいとなる。実際にコンピュータで複素素 数の数を数えてaを出してみると、aはxの値に依らず、0.46程度 になる。「個数なんか分かって何が嬉しいんだ」という声もあるだろ う。しかし、かのガウスも素数を考えるときに、まず素数の数を数え ることから始めたそうだ。馬鹿にしてはいけない。 もっとも、素数の話はまだまだ奥深いが、あまり深入りしても難し くなるばかりだから、この辺で打ちきりにしよう。自分で色々調べて みてほしい。 *14「4 で割ると 2 余る数」は、2 以外はそもそも素数ではない。 *15証明はされてるが、省略。 *16これは、a + bi に a− bi を掛けた結果に対応する。この a − bi を共役複素数という。 *17ピタゴラスの定理、というやつだ。 *18この種の関数は色々とあるのだが、一番簡単なものを示してみた。こういうのは一般に素数定理という。
◆
5 完全数 素数ついでに約数についても触れておこう。「約数の和が元の数と 一致するような数は何か」というのは数学史上古くからの問題だっ た。数学的にどんな意味があるかはさておき、ここで難しいのは、 「じゃあ、具体的にどうやって約数を求めたらいいか」という点だ。 実数の世界だったら、元の数をそれより小さな数で順番に割って、約 数かどうかを調べればいいが、複素数だと本当に「それより小さな 数」でいいのか、そもそも「それより小さな数」とは何かが分からな い。だいたい、複素数を順番に並べることなんてできそうにないじゃ ないか。答えは「ノルム」にある。(a + bi)(c + di) = (ac− bd) + (ad + bc)i
という式があったとき、a + biのノルムはa2+ b2
、c + diのノルム はc2+ d2
、(ac− bd) + (ad + bc)iのノルムは頑張って計算すると
(a2+ b2)(c2+ d2) になる。ということは、逆にある数の約数を求め たければ、その数のノルムの約数をノルムにするような複素整数を探 せばいいわけだ。 本題に戻ろう。「約数の和が元の数と一致するような数」は「完全 数」と呼ばれる。正確には「A自身を除くAの全ての約数の和が Aになってるような数A」のことである。実数の世界では、例えば 6(= 1 + 2 + 3)や28(= 1 + 2 + 4 + 7 + 14)が完全数だ。他にも 496、8128、33550336、8589869056、137438691328…と続く。無限 に続くかどうかは分かっていないが、現在のところなぜか偶数ばかり で、それは素数に関係していることが知られている。ユークリッドの 『原論』という本には「2n− 1(= M) が素数なら、M (M + 1) 2 は偶 数の完全数」という関係が載っている。(2n− 1) という形の素数は メルセンヌ素数と言われていて、偶数の完全数はメルセンヌ素数から 作られるものに限られる*19。メルセンヌ素数は、現在もGIMPSと いうネット団体が精力的に探索中だ*20。 では、試しにこれを複素数に拡張したらどうか。アルゴリズムは実 に単純だ。約数の一覧を出して、足し合わせ、元の数になるかどうか を調べる。とりあえず原稿の息抜きにちょっとa, b < 40を計算した ところ、そこには発見できなかったことだけを述べておく。 この方面の問題では、他に「友愛数」(1を含む約数の和が互いに相 手の数になっているペアの数)や「婚約数」(1を含まない約数の和が 互いに相手の数になっているペアの数)が有名である。
●
3
3以降の拡張
飛躍に戻ろう。2の次は3以降の複素拡張だ。結論からいくと、実 数軸上の3に対応する複素整数は存在しない。なぜか? 素数の話の一番のキモは「複素素数のノルムが実数軸上素数に対応 する」という点だったと思う。実はこの対応は素数に限らない。例え ば複素整数の1+0iはノルムが1なので、実数の1に対応がつく。逆 に言い換えると、実数の1は12+ 02 という分解ができるからこそ、 複素整数のノルム1、すなわち1+0iに対応づけられる。実数の2も 12+ 12 という分解ができた結果、1+iという複素整数に対応した。 では実数の3はどうかというと、a、bが整数である限り、どう頑張っ てもa2+ b2 という形に分解できない。だから、対応する複素整数が 存在できないのだ。これは4でも同じである。5になると、12+ 22 という分解ができるため、1+2iと2+iという二つの複素整数が対応 する*21。というわけで、なんとなく全貌が見えてきたようだ。実数 軸上の整数はa2+ b2 と分解できるものだけが複素整数に対応する。 しかも、必ずしも一つづつの対応にならない。だから3や4は拡張 できないのだ。 ただ、できないと言ってそのまま終わらせるのは癪だ。どうせ飛躍 してるのなら、いっそ整数という制限を取っ払ってみたらどうだろう か。実数軸上のある整数nに対して、もしa, bが好きな実数をとれ るのなら、n = a2+ b2 という分解は無数に可能だ。こうして作った 点a + biをグラフにしてみると、半径が√nの円周上に乗っている ことが分かる。つまり、実数軸上の整数を複素整数に拡張できるかど うかは、半径√nの円周が格子点を持つかどうかに依るわけだ。そし て、その格子点の数だけ、対応する複素整数が存在することになる。 格子点が複数存在しうる、というのは単に拡張ができないだけでは 済まない。それでは複素整数を順番に並べることができない。例え ば1 + 2iと2 + iのどちらが先でどちらが後かを決められるわけがな い。そもそも複素数は平面的に広がってるから、一列に並べようとす る自体が無理だ。これは、数が順番に並べられることを当然の前提と して発展してきた実数世界の整数問題が、そのままの形で複素数に拡 張することが難しいことを意味する。 もっとも、実は数える順番の規則を付け加えれば、平面を直線に対 応づけること自体はできる*22。例えば、数学の世界で「順番」という のは、「順序公理」というものを満たすかどうかで決められる*23が、 この公理を満たす順番付けは可能で、例えば、a + biのaを優先し て、「大きい」ということを「aが大きい。同じ場合にはbが大きい」 *19オイラーが証明した。 *20実数軸上の素数がどう分類されるかというと、まず大まかには、4 で割って 1 余るか 3 余るかである。3 余る素数は複素素数であり、その一部はメルセン ヌ素数 (2n− 1) だ。1 余るほうはどうかというと、この中にはフェルマー素数 (22n+ 1) というのがあって、正 n 角形の作図問題に深く関係している。 これらの分類に無関係なものとして、例えば双子素数(二つの素数が偶数を挟んで並んでいる状態。無限にあるかどうかは未解決)や、正則素数(2 を除 いて、Bernoulli 数いずれの分子も割り切らない素数)がある。正則素数はクンマーの理想数論を経て、イデアルや類体論という分野に発展した。 *21対応するのはいいが、今度は困ったことに、この二つは 90 度回転しても重ならないので、別個の複素整数である。 *22無限濃度について書かれた啓蒙書で、平面を作る点の数と直線を作る点の数は等しいんだ、という時の証明にはよくこの発想が登場する。 *23此処でいう順序公理とは、反射律と推移律と反対称律、および完全律を満たすことだ。と決めればいい。が、これを元に現実の計算をしようとすると、たち どころに困難が噴出する。例えば、a + biより小さい全ての数につい て何かを論じようとするときに、普通の自然数ならaより小さい数 はa− 1個くらいだから、頑張ってしらみつぶしに調べ上げればいい が、複素自然数の世界では、a + biより小さい数が無数にあるため計 算機でちょっと調べるというわけにいかない*24。加えて、どうして 「a」が優先されないといけないのかが説明できない。説明も何も、そ れは全く人為的に適当に決めたからだ。 二つの軸に対して対等になるような順序公理、となるとなかなか見 つからない。無節操に身勝手な規則を付け加えると、大概はもとの整 数が持っていた単純な規則を乱して、ろくな結果を生まない*25。数 学には「無理矢理」が大事だが、もう一つ「美学」も大事だ。 どうやっても順番づけはうまくいかないのだろうか? 色々とあが いてみるのは大事だ。例えば、前節で実数軸上の「n」が「半径が√n の円周上」に対応すると書いたが、これがもし「√n」ではなくて、そ れよりももう少しだけ小さかったり大きかったりしたらどうだろう。 「√n」というのは「n1/2」であるが、これが「n1/1.99」とか「n1/2.01」 だったらどうなるだろう。これは「2次元の複素数」の「2」を整数で はない数にするわけだ。あるいは新しい数j = (−1)1/1.99を導入し てもいい。しかし整数でない次元とは何か? そもそも「次元」とは 何だろう?もしも、次元が「2」でなかったら…?
●
4
離散概念の複素化
前節では実数軸上の整数を複素化する話を紹介した。これはこれ で楽しいのだが、実は本稿の目的は単純に整数を2次元化しようと いうだけではない。常識的に当然の前提として裏に隠されてきた「整 数」的な概念をあぶり出し、片っ端から複素化の舞台に引きずり出し てやろうと考えるのである。面白さにとって、常識は敵だ。 例えば「次元」そのものだ。本稿の最初の方で書いた「3次元」の 3というのは、当然整数で、4.1次元とかπ次元といった概念は、よ く分からないものとして、あまり話題に上らない。こういうのを複素 化したら何が起きるだろうか?あるいは「3」角形、「2」階微分等々、 整数を離れると直観的にイメージしにくい概念を複素化できないか と考えるのが、本当に楽しい数学だ。 こうした概念は、まず実数にしてから複素化すると簡単だ*26。実 数化は複素数と同じくらいに直観的に分かりにくい*27が、そのぶん 楽しさも倍増だ。それでは、数学世界の「陰に隠れた整数」をあぶり 出してみよう。◆
1 指数の複素化 何にせよ、武器を揃えないといけない。離散概念に正面攻撃を掛け る前に、広く知られている簡単な例として、指数の複素化を考えてみ る。実は複素数の世界には「多価性」という厄介な代物がある。これ は複素数のありとあらゆるところに出現する話だから、注意しないと いけない。 ax はxが自然数ならx回掛けることを意味する。当たり前だ。と ころが高校ではxが実数の場合も出てくる。「実数回掛ける」という のは、かなりイメージしにくいが、学校では自然数から実数へ何の疑 問もなく拡張してしまうのだから、ここでも何も考えずに複素数に拡 張してしまおう。 ここで、複素世界最強の公式を紹介しておく。オイラーの式と言わ れているものだ*28。実数xは、複素平面で実数軸から反時計回りに はかった角度に相当している。 eix= cos x + i sin x 複素数a + biがあったとき、ea+bi= ea· ebiは、上の公式を使う と、ea+bi= ea· (cos b + i sin b)となる。指数は指数的に演算ができ*24なぜなら、例えば実数部が a− 1 なら、虚数部が何であっても小さい数と決められるからだ。「a + bi より小さい数」について何か調べようとしたら、お よそ無限個の数について検証しないといけない。 *25コンピュータと数学は違うかもしれないが、某マ●クロソフト社が定めた怪しげな仕様の数々を思い出すがいい。あれのせいで、どれほどのプログラマが 泣いていることか。 *26多くの概念は、実数にまで拡大してやれば、複素数にするのは難しくない。単に記号を読み替えるだけで済んでしまう。 *27人の脳は、ある連続的な対象を把握する際に、それを分離可能な塊に分けて把握するようにできている。だから人は、本質的にとびとびの整数しか認知で きない。実数も、整数で近似することでしか直観的な把握ができない。次元とか回数といった概念は、まさに直観に結びついているから、容易に実数化す ることがはばかられるわけだ。 *28証明は、両辺をテーラー展開すると良い。高校生でも強引にやれば何とかなる。
ないといけない。つまりeα· eβ = eα+βにならないといけない。そ こで、もう一つの複素数c + diを用意して、これをeの肩にのせて 掛けてやる。つまりec+di = ec· (cos d + i sin d)を作って、掛け合 わせてみよう。
ea+bi· ec+di
= ea+c(cos b + i sin b)(cos d + i sin d)
= ea+c(cos(b + d) + i sin(b + d))
= e(a+bi)+(c+di) こうなる。途中は積和の公式だ。つまり、実数*29が底なら、指数 が複素数の場合でも実数の場合と全く同じに扱いができる。 そこで、次に底も複素数にしてみよう。実数の世界には底の変換 公式というのがある。底が e以外の実数なら、ax = ex log a にな る。これは学校で習う式だ。同じ発想で、Aを複素数としたときに、 Ax= ex log Aとなれば美しい。そのためには、肩に乗せるlog Aが 何かを考えないといけない。つまり、底の複素拡張というのは、実は 対数の複素拡張に直結している。 それには、a + bi = ex+yiという、同じ複素数を二つの方法で表し た式を使う。この両辺の対数をとれば、log(a + bi) = x + yiという 形でlogが定義できる。となれば要するにxをaで表し、yをbで 表せられればOKだ。これには、多少技巧的だが、次のような変換 をする。この式は右と左から見ていき、真ん中の二つの項を見比べれ ばいい。
ex+yi= ex(cos y + i sin y)
=√a2+ b2(a/√a2+ b2+ ib/√a2+ b2) = a + bi
ま ず 、ex に 対 応 す る の が √a2+ b2 だ 。だ か ら x = log(√a2+ b2)。y の ほ う は cos y = a/√a2+ b2、sin y =
b/√a2+ b2 を満たす実数になる。このyは一つに決まらないが、 その一つをy0とおくとy = y0+ 2mπとなる。mは整数だ。ここま でくればすぐだ。ex+yi= ex(cos y + i sin y) = a + biの対数をとっ て、右辺のx, yに上の結果を代入する。
x + yi = log(a + bi) = log(√a2+ b2 ) + i(sin y0+ 2mπ), mは整数 …となる。要するに、log(a + bi)は、mとy0が一つに定まらない と一つの値にならない「多価関数」なのだ。mを0にし、y0を0∼ 2πに制限すれば(=主値をとれば)値は初めて一つに定まる。本稿 ではこれから先、多価関数についてはm = 0、0≤ yi < 2πとして 扱う。 ここまで準備すると、色々と面白い計算ができるようになる。2つ の例を見てみよう。
▷ 例1:log i = log 1 + πi/2(主値)
▷ 例2:ii= ei(πi/2)= e−π/2(主値) 以上、最初から何だか計算がたくさん出てきて疲れたかもしれない が、ここに出てきたオイラーの公式とか、いくつかの小技は、強力な 武器だから、覚えておくとカッコイイ(と思う)。
◆
2 階数の複素化 前節の話は、大学で「複素関数論」という授業をとると、みっちり と教えてくれる。だが、本稿は同人誌だ。このあたりで教科書的な話 題は卒業して、同人誌らしくなろう。 nの階乗というのは、n× (n − 1) × (n − 2)…× 1を意味し「!」 記号で表される。例えば「3!」とは、3× 2 × 1 = 6である。では、 (1/2)!とか、π!といった概念はどうしたら定義できるだろうか。 実は、この問題に関しては答えも広く知られている。それは積分を使 う*30。 Γ(n) = (n− 1)!= ∫ ∞ 0 xn−1e−xdx 初めて見るといきなり解く気力が失せるが、部分積分を駆使してや ると、Γ(n) = (n− 1)Γ(n − 1)という関係式が出てくる。実際に1 とか2を代入して振る舞いを見てみると、階乗になっていく感じが分 かる。この積分はガンマ関数と呼ばれていて、nには(実部が)正で あればどんな複素数を入れてもいいから、連続的なグラフも書くこと ができる*31。ちなみにn = 2.46付近に最小値があり、Γ(1/2)の値 は√πだ。Γ(π)は簡単にはならなく、およそ2.288である。複素数 を与えた場合としては、例えばΓ(1 + i) = 0.498− 0.155iといった 形で綺麗にはならない。 *29注意点としては、ここまでは底が自然対数の底 e である必要は全くない点だ。 *30この式はオイラーによって作られたが、それにしても、どうして階乗がこんな不気味な積分で表現されるのだろうか。ガンマ関数の設計思想は、 ∫∞ 0e−axdx = 1/a という式をベースにしている。これはラプラス変換と呼ばれるワザの一種で、e−axの部分に様々な関数を掛けた形で出現する。解
き方はだいたい部分積分で、例えば、 ∫∞ 0 xe−axdx = 1/a2となる。なんと、ラプラス変換した結果同士では、元の関数の微分が、割り算になってし まっているわけで、これを利用して、微分方程式(そういう難しいのがある)を普通の代数方程式として解いてしまう手法まであったりする。これはヘビ サイドの演算子法と言われる。複雑な実用計算に溢れかえってる工学界では、ラプラス変換は必須アイテムだ。 *31なお、n に実部が 0 以下の値を入れるのは良くない。ガンマ関数は、n が 0 やマイナスだと、あらゆる整数で発散する。
5
4
3
2
1
0
Gamma(n)
3.0
2.5
2.0
1.5
1.0
0.5
0.0
n
さて、階乗の複素数化というのは、つまり掛け算する回数を複素数 化しようとしたわけだ。では、他にも「階数」を複素数化してやれな いだろうか。…例えば、n回微分のnを複素数にしたらどうなるか。 普通の微分というのは、要するにxn の微分に帰着する。xn を1 回微分するとnxn−1になる。三角関数や指数関数や、その他の何だ かよく分からない関数でも、大概のものは無限級数に展開できるか ら*32、各項に対して上記の変換をかけてやれば、大概の関数が微分 できるものだ。では、これを拡張しよう。0.5回微分したり、1.3i回 微分するにはどうしたらいいか。 微分の複素化には、何通りかの方法がある。例えば、今出てきた ガンマ関数を直接使うのは簡単だ。これは次のような発想による。 xn の 1回微分はnxn−1 だが、これをもう一度微分してやると、 n(n− 1)xn−2になる。係数として出てきたn(n− 1)を見るとnと 1減ったn− 1が掛けられているわけで、何となく階乗の予感がす る。さらにもう一度微分してやると、n(n− 1)(n − 2)xn−3となっ て、確かに係数の部分は階乗そのものになっている。そこで、微分の 係数部分をガンマ関数を使って書き直してやると、次のような式にな る。ここで、aが整数なら普通の微分だが、aはガンマ関数の引数と して与えられるので、好き勝手な複素数をとれる。 xnのa回微分= Γ(n + 1) Γ(n + 1− a)· x n−a もっと別の方法でガンマ関数を使うこともできる。相手が周期関 数の場合、それはsin関数とcos関数に展開できることも知られて いる*33。sin(n)の1階微分はcos(n)になるが、これは実数軸上の sinを−π/2(−90度)ずらしただけの、同じ図形だ。ちなみにcos の微分でも同じである。「1階微分で−π/2」というのがポイントだ。 だったら、0.5階なら半分の−π/4だろうと考えてやる。一般的には 「a階で−aπ/2」だけ軸上をずらせばa階の微分が実現できそうだ。 この論法はaを複素数にするとわけが分からないが、aが実数なら分 かりやすい。ずらすだけだから。 では、これら二つの拡張は本当に対応するのだろうか?sin(n)を 使って考えてみよう。sin(n)は次のように展開できる。 sin(n) = ∞ ∑ x=0 (−1)x n 2x+1 (2x + 1)! = n−n 3 6 + n5 120− n7 5040+ n9 362880+… これを1回微分すると次のようになる。 d1sin(n) dn = cos(n) = ∞ ∑ x=0 (−1)x n 2x (2x)! = 1−n 2 2 + n4 24− n6 720+ n8 40320+… 分母に階乗が出てくるのがポイントだ。階乗は馬鹿の一つ覚えみ たいにΓ関数に置き換えてしまうと複素化できる。ではいよいよ0.5 回微分してみよう。ガンマ関数を使わないバージョンだと−0.5π/2 だけずれてsin(n + π/4)だ。ガンマ関数を使うバージョンでは、次 の式になる。 d0.5sin(n) dn = ∞ ∑ x=0 (−1)x n 2x+1−0.5 Γ(2x + 2− 0.5) 無限項まで足すのは不可能だから、とりあえず100項で打ち止め してパソコンに計算させたのが次のグラフだ*34。nが大きくなると、 二つの拡張はだんだんと近づいていくことが分かる。つまり、周期関 数に展開して軸にそってずらすというのは、微分の拡張としてそれほ ど間違っているわけではないようだ*35。なお、グラフに示しにくい ので割愛するが、aに複素数を入れた場合も、二つの拡張微分はnが 大きくなるにつれて、同じ値を示すようになる。 *32テイラー展開等、いろいろと手法があるが詳細は割愛。 *33フーリエ展開という。ネットで調べれば大量に例が出てくる。 *34グラフで見るくらいならこの程度で十分である。 *35実際問題として、n をもっとどんどん大きくしていくと、あるところで急に差が出てくる。これは計算機のオーバーフローによるものだろう。筆者の計算 機では n = 50 以上では値がメチャメチャになった。-1.0
-0.5
0.0
0.5
1.0
d0.5 sin(n)
10
8
6
4
2
0
n
しかしどうして、出所の違う二つの定義が一緒の結果を与えるの か? これはとても大事な問いだが、ちゃんと答えるのは難しい。そ のヒントはおそらく、微分を複素拡張する第三の方法、演算子法とい うワザにある。これは19世紀にヘビサイドという人が「微分方程式」 というものを解くために編み出した必殺技だ。微分方程式は、方程式 の項の中にdy/dxやそのn階とかn乗が入り込んでいる代物だ。こ の手法の要は「微分方程式を普通の中学生の方程式に置き換えてしま う」点にある。要するに「n回微分」を「nを掛ける」ものとして式 を書き換えてしまうわけだ。で、「nを掛ける」ならnが実数でも虚 数でも何でもいいので、逆に「n回微分」の複素化が可能になる。微 分方程式はさすがに難しいから扱えないが、どうしてこういうことが 可能なのか、という一点だけは、長く温存しておくべき疑問だろうと 思う。◆
3 正複素角形 「正π角形を作図せよ」…我々は以前、これを入団テストに利用し ていた。正n角形のnはだいたい3以上の自然数だと相場が決まっ てるが、幾何学を離れてみれば自然数である根拠などどこにもない。 階乗や微分が複素数にできるなら、初等幾何だって複素数にできるは ずだ、と考えるほうが自然だ。 とりあえず複素数の前に実数化を考えてみよう。問題の本質は作 図よりも、そもそも「正π角形」とは何かという定義のほうにある。 この問いには様々な答えが寄せられたが、面白くないものを除くと、 だいたいが角度を利用する実数化に帰着した。そもそも平面図形に おいて実数となる部分は、辺の長さか角度くらいしかない。 正三角形の内角は弧度法でπ/3だ。正四角形の内角はπ/2、以下、 正n角形の内角はπ− 2π/nとなる。正π角形なら内角は(π− 2)と なるだろう。だから角度(π− 2)ラジアンになるような図形を書いて しまえばいいというのが基本発想である*36。ところが、π− 2を何 倍しても2nπにならないため、実際にある辺から1ラジアンの角度 を付けて順々に辺を描いていくと、角辺は決して自身に戻ってくるこ とがない。つまり正π角形は無限個の「角」を持つ謎の図形、見た目 には真っ黒い円環のようなものになる。nが無理数だと、ほぼすべて が同じような傾向になってしまい、最終的には区別がつかない。 これはこれで答えとして正しいのだろうが、実はもう一段踏み込ん だ答えがある。それは「平面を前提とするからいけない」というもの だ。「正n角形を名乗る以上、図形は最低でも閉じているべきだ」と 考えると、今度は前提となる平面をグニャグニャ曲げて、無理矢理に 正π角形を閉じた図形にできないか、という発想が出てくる。結論か ら言えば、キャンバスとなる平面を歪めてしまえば、どんな実数角形 でも閉じた図形として描ける。例えば、正π角形なら、半径1の球を 描いてその赤道上(大円という)に均等な4点をとるだけでいい。こ のレトリックに満ちた答えは、次のような段階を経る。 1.「そもそも弧度法って何だ」といえば、半径1の円で周の長さ がnになるような角度をnと呼ぶわけだ。平面上の円なら半 径1に対して90度の周の長さはπ/2。 2. 今、半径と周の長さを1:1にしたいので、周の長さはそのまま で、半径のほうをπ/2にするような円を描ければ、それに内 接する正方形が正π角形になる。でもそんなものをどうやっ て描くか? 3. この円が実は球の上に乗っていると考えると、平面が曲がる ことでもとの円の半径が1→π/2になるためには、円がちょ うど半径1の球の半球上に乗っていればいいことになる。 4. 作図してみよう。ほら、半径1の球の赤道に4点をとれば、 それが目的の正π角形だ。 では次に、nを実数から複素数にアップグレードする。最初に結論 を書いておくと、これは筆者の力量では作図できない。が、やってみ ないで放り投げるのは格好良くないから、少し強引に藻掻いてみる。 そもそも、複素化した角度というのがよくわからない。なぜなら虚 数角というのがよく分からないからだ。少なくとも虚数角というのは 虚数軸方向の角度 ではない。困ったら基本に戻ってみることが大事 だ。本稿の最初で、複素平面においてiを掛けることは、反時計回り の90度(π/2ラジアン)回転に相当することを書いた。本当はこれ は、90度だけの話ではない。オイラーの公式を見ると、eixを掛ける ことが角度xの回転に相当している。だからもしiラジアンの回転 をしたければe−1を掛けることになる。これは1未満の単なる実数 (0.368くらいだ)だから、実はiラジアン回転は、そもそも回転では なくて縮小なのだ。虚数角の回転は拡大縮小になってしまう。実は、 大学数学の世界だと、三角関数は引数に虚数をとることが許されてい る。つまり、sin(a + bi)などという計算は普通に登場する。細かい 話は大学向けの本に任せるとして、例えばcos(ix)やsin(ix)は、双 *36後で書くように、これは汎用性のある答えで、正複素角形なら内角は π− 2π/複素数 である。そんなものが描けるかどうかはさておき。曲線(ハイパーボリック)関数といわれて、次のような普通の増加関 数になってしまう*37。 cos(ix) = e −x+ ex 2 = cosh x sin(ix) = e −x− ex 2i = i sinh x そこで、正a + bi角形が何であるかを考えよう。ここでは強引に 普通の幾何学と同じ公式で料理してしまう。つまり、正a + bi角形 の一つの内角は、2πをa + biで割り、πから引けばいい。つまり、 π− 2π/(a + bi)だ。これは当然複素数だ。仮に正a + bi角形が半径 1の単位円上に描かれるとすると、一辺の長さは次の式になる*38。 一辺の長さ= 2 sin ( π a + bi ) 角度も長さも複素数!この時点で既に作図はギブアップだが、ここ までやったなら行けるところまで突き進むのが格好良い。一般に角 度A + Biラジアンというのは、exp (i(A + Bi))を掛けることに対 応し、つまりは図形の一つの辺がAラジアンだけ内側におれて、か つ外側に向かってe−B倍した位置にくることを示す。もっとも、辺 が内側におれることと外側に拡大されることは両立しないから、ここ では思い切って、円が円筒であると考え、外側への拡大は上に上昇す るものと考えよう。こうすると、正複素角形は、(複素数の長さとい う得体の知れないものさえクリアできれば)、螺旋のような形になる わけだ。
◆
4 mod 「当然前提とされていた平面を歪める」というのは画期的なアイデ アだ。歪め方が連続的であるなら、その上で展開されている幾何学の 整数的な要素を実数化、複素数化できる。ではこの「前提を歪める」 発想を、例えば軸自体に適用したらどうなるだろう? 学校で出てく る関数のグラフは、軸が真っ直ぐであることを前提にしているが、ふ にゃふにゃの軸の上で展開される数学はどんなことになるか。これ は深入りすると危険だが、とてもシンプルな入門だけを考えてみる。 modというのは割り算の余りを出す演算だ。「10 mod 3」だった ら、10/3の余りだから1になる。modの後ろには普通、整数が来る ことになっているが、当然実数や複素数が来たって悪くはない。「10 mod 3.3」だったら、0.1という答えが出てくるべきだ。わざわざ拡 張するまでもない。 ところで、10や3を乗せている数直線が、ぐるりと輪になってい たらどうか? 例えば、長さが2の輪になっていたら、横軸は2より 大きな値をとれない。数直線は2と0のところで糊でくっつけられ ているので、2と0は同じ値である。この状況はよく考えると、2以 上の値が2で割った余りの数になっているわけだ。こうした輪の上 で展開される関数は、強制的に周期2の周期関数になってしまう。 「2で割った余りの数」だけが意味を持つ点が大事だ。つまり、こう した円筒世界は横軸の値を全部「mod 2」すればいい。同様にして、 もし横軸が長さ2πの輪だったなら「mod 2π」することになる。多 分その世界では、sin(x)やcos(x)は楕円になってしまうだろう。そ れでは、「mod複素数」というのはどういうことか?順当に行けば、 横軸が複素数の長さを持つような円筒世界である。…なんだそれは? これは頭が痛くなるような概念を含んでいる。そもそも「長さ」と いうのは、一般的には座標の差の絶対値で与えられる。数学の世界の 決まり事では、複素数の絶対値でさえ、実数の、しかも正の値として 定義される*39。長さが複素数なんていうのは、全く気が狂っている 概念だ。 答えは意外なところにある。アインシュタインの相対性理論だ。 「ミンコフスキー空間」といわれる空間が定義されていて、相対性理 論はその上で語られる。詳しい話は専門の本を見てもらうとして、ミ ンコフスキー空間では時間軸が虚数の軸だと考える。この空間の上で は、空間軸をx1, x2, x3とし、時間軸をcx4iとしたとき、距離sが、 次のように書かれる。 s = √ x2 1+ x22+ x23− c2x24 x4のところがマイナスの因子(これはi2=−1から来ている)を持 つため、もしx4が巨大であれば、距離sが虚数になったりもするわ けだ。相対性理論では、現実の宇宙空間で距離が虚数になることがあ り得ないことから、逆に、まともな物体のx4 が巨大ではないこと、 言い換えれば光速を越えられないという制限を導き出してくる*40。 話を戻して「mod 複素数」とは何であるかと考えると、まともに 作図できる円筒ではないものの、言葉の上では表現できる不気味な代 物である、と言える。この円筒の周は時間軸と同じようなものだ。つ まり、この円筒は途方もなく巨大で、宇宙の全存在は、ビッグバンか ら宇宙の終わりまで、時間と共に巨大な虚数軸の円周をゆっくり進ん でいるようなものである。 実際、これを大真面目に考えている学者もいる。複素数の長さは図 に描くことはできないが、数式の上では立派に存在している。◆
5 複素次元 *37これはオイラーの公式の指数 x に ix を放り込んでやったものだ。 *38これは簡単な中学校の幾何学だ。 *39複素数の絶対値はノルムのことである。大学生っぽく書くと、それは共役複素数との積だ。 *40実はこの話には少し先があって、距離 s をよく調べてやると、ミンコフスキー空間の上で、虚数角の回転をしても、s は変わらないという性質が明らかに なる。相対性理論の本に「ローレンツ変換」と書いてあったら、それがこの回転変換のことだ。ここでは割愛するが、これは回転行列を使うとすぐに分か る。虚数距離と虚数角は、実はそういうふうに結びついている。 *41正確には「次数が 1 以上の任意の複素係数一変数多項式」「2」とは、複素数の(実数上の)次元の数である。「代数学の基本定 理」というものがあって、普通の方程式*41の解を表現するには、それ が何次方程式であっても(整数次元であれば)、複素数さえあれば間に 合ってしまう。それにも関わらず、歴史的には、2次元の複素数を4 次元や8次元へ拡張をしようとした猛者がいた。そしてやはり、複素 数ほどにうまくはいかなかった。今では、この方面の拡張努力は無駄 であるということが数学界の一種コンセンサスになっているらしい。 では、4や8ではなく、視点を変えて4iや8iにしたらどうだろう。 つまり(少しややこしいが)「次元の数自体の複素化」を意識して複 素数を拡張しようとしたら、どうだろう。 例によって、まずは実数化から考えてみよう。空間次元の定義には 色々とあるが、大きく分けると「位相次元」とその他に分かれる。位 相次元というのは、普通の整数で決まる次元のことだ。「平面は2次 元だよね」というときの次元は位相次元を意味している。ところが、 似たようなことを考える人はいるもので、20世紀になってから整数 から脱却した次元が定義された。例えば「ハウスドルフ次元」とい うやつだ*42。厳密な定義は複雑で分かりにくいが、もの凄く荒っぽ い書き方をすると「ある図形をa倍に拡大したときに、長さや面積 や体積がan倍になったとすれば、nを次元という」という感じにな る。普通の四角形や球などでは当然nは整数になるが、これが整数 にならないのがフラクタル図形だ。フラクタルでは、最初の線分の 長さ1が、1回の操作でaになった時に、線全体の長さをL(a)を、 L(a) = a1−nと表現したときのn、を「次元」と呼ぶことになって いる。例えばコッホ曲線という図形では、1本の線分が1/3の長さに なったとき、線分全体の長さは4/3になっている。定義式にのせて やると、L(1/3) = (1/3)1−n= 4/3となり、これからnを逆算する と、n = log34 = 1.26186となる。ほら、所詮は線なのに、次元は実 数になっているのだ。 ハウスドルフ次元を複素数にするのは難しくない。前のアナロジー をそのまま使うと、「ある図形をa倍に拡大したときに、長さや面積 や体積がac+bi倍になったとすれば、c + bi次元という」といった感 じになる。イメージできるのかは疑問だが、先ほど「複素数の長さ」 が出てきたのだから、長さがac+bi倍になるというのは、まぁ分から ないでもないだろう。ac+biというのは、cやbに色々な数を入れて みれば、単なる複素数になることが分かる。同じノリで面積や体積 も、それを2乗したり3乗したりすればいい。長さが複素数になる ためには、ミンコフスキー空間とかのちょっと不思議な空間でないと いけないが、現実の宇宙がそうなのだから、怖れるような種類のもの ではない。 ただ、複素次元の話は単に空間次元の話だけではないのだ。そも そも次元とは何だろうか? 普通、次元というと直線とか平面とか立 体とか、図形に関するものを思い浮かべるはずだ。4次元空間といえ ば、宇宙の外側にある何だか凄い世界みたいな感じがする。ところ が、よく考えてみると、2次方程式というときの「2次」も次元みた いな感じで扱われている。次元の数は右肩に小さく書かれる習慣が あって、例えばx3というのは3が次元の数である。空間と方程式、 この二つに何か関係はあるのか? x3というのは、xを3回掛けたものだ。実は3次元の空間も、数 学の世界ではZ3とかR3とかC3と書かれる。それは体積が1次元 の長さを3回掛けた結果だからだ。要するに、次元というのは、何 か掛け算のような計算の「回数」に関係しているらしい。そう考える と、本稿の後半最初で出てきた「n回微分」も、もし「微分する」と いう作業が「掛け算する」みたいな作業だと思えば*43、「n次元微分」 みたいなカッコイイ言い方ができそうだ。 数学の世界では、「掛け算」をもう少し広い意味で考えて、「様々な 値をとりうるNANIKA」を「n回操作」してできる結果全体を「n 次元のNANIKA空間」という。実数を3回掛けてできる結果全体 は、「3次元の実数空間」だし、何かの関数をn回作用してできる解 の結果全体は、「n次元の解空間」だ。なんて格好いい言い方だろう。 他にも色々ある。ある行列に回転変換の行列を「掛け」れば、回転し た行列が出てくる。さしずめ「回転行列空間」か。掛け算自体も足し 算を3回実行したものだと考えれば、3回足すことで、「3次元の足し 算空間」ができる。しかし、これだけでは、ただ格好いい言い方にし ただけで、何も意味がない。ここで大事なことは、「n回操作」という ことが「空間」というキーワードで一括りにできるということ。それ によって様々なアナロジーを利用できるかもしれないということだ。 足し算空間の次元は足し算次元だ。その複素化は単に複素数を掛 けるだけだ。微分空間の次元、すなわち微分次元を複素化するには Γ関数を使った。幾何学的な空間次元ではフラクタル概念を使った。 では、残された「複素次元」は何か?…例えば「多項式」はどうか。 単なるxnなら話は簡単だ。nに複素数を入れるだけだ。本稿でも 何の断りもなく使ってきた。これを多項式にしてみる。まずは整数 次数の複素次方程式。例えば次に載せるのは複素二次方程式である。 x 2i +3xi +5x0i + + + 2x2 +x1 +6x0 = 0 多分学校で出てきたことは一度もないだろう。ちなみに、整数 次数という制限を取っ払うと、もっと病的になる。例えるならば、 a1x2i+ a2x2+ a3x1.99i+ a4x1.99+… という感じで、次数が実数に なるわけだ。この例では2乗と1.99乗の間には何も項がないが、実 際には実数は連続しているから、多項式としてはまったく表記できな い。強いて表記するなら、次数と係数の関係を、実部と虚部を示す2 つの2変数関数で表すしかないだろう。しかも、そうやって係数が関 *42他にも、フラクタル次元だとか、相似性次元、容量次元、情報量次元と色々な呼び方があるが、発想としては似たようなものだ。 *43先ほど書いたヘビサイドの演算子法はまさにそういう発想に基づいている。