圏論にLAも位相も解析も入れたらフュージョン音楽だ
1.ホモロジー群とコホモロジー群
このページはマス旅の一部です。
日本では、YMOが活動する前、フュージョン音楽が盛んだった。
ジャズとロックとラテンが混ざり合い、
バブルはまだはじけずに明るい未来を信じながら、
データの多様性ではなく、個性と文化がぶつかり、融合する本当の多様性が生まれた時代だった。
19世紀までは、天才数学者がさまざまな分野を開拓することが多かった。
数学にも20世紀の前半に、まさにこの「数学分野のフュージョン」が起こっている。
解析学、トポロジー(位相幾何学)、そして代数学(圏論)。
一見すると別々のジャンルで奏でられていた数学の「音」たちが、
一つのステージに集まって激しくクロスオーバーしたのだ。
今回は、位相空間の歴史を振り返りながら「圏論×LA(代数)ビル」に位相空間を招き入れ、
(コ)ホモロジー群と解析学の奇跡的な融合を探っていこう。
<位相空間の歴史>
平面上にあるN角形では、オイラー指標=点数ー辺数+面数=N-N+1=1。
Nを無限に多くしてもオイラー指標が1のままだから、円とN角形が同相になることがわかる。
正4面体のオイラー指標=点数ー辺数+面数=4-6+4=2。
正6面体のオイラー指標=点数ー辺数+面数=8-12+6=2。
面を無限に多くしていって球にしてもオイラー指標=2となる。
そして、穴が1つあると0、穴が2つだとー2、。。。となることから、
「閉じたコンパクトな曲面のオイラー指標(標数)=2-2g(gは曲面の穴数で種数という)」
というオイラーの法則が見つかったことは有名だね。
これをポアンカレはさらに発展させた。
オイラー指標=0単体数ー1単体数+2単体数ー3単体数+…と単体数の交代和になると気づいた。
さらに、n次のホモロジー群の基底数をn次ベッチ数βnとかくと、
「図形Xのオイラー標数はχ(X)=β0ーβ1+β2-β3+.....」と表現できることもポアンカレは気付いた。
三角関数でおなじみのサインとコ・サインの双対ペアと同様に、
位相空間ではホモロジー群の双対ペア、コ・ホモロジー群を作ると便利なことがある。
三角関数でサインだけ研究することが少ないように、
位相空間でもホモロジー群とコホモロジー群は関連して研究されている。
面白いのは、図形を三角形に分けたり、もっと細かく胞体に分けたりするだけではなく、
多様体を定義することで、面の曲がり方などどうでもよかったはずの位相空間論が、
ガウスの曲率や微分と連動できるようになった。
20世紀から現在まで、リーマン多様体・微分幾何など想像を超えた融合発展が進んでいる。
話しが進みすぎたので、もとに戻しましょう。
<ポアンカレ的にホモロジー群をイメージしよう>
n次のホモロジー群というのは、図形をn次の基底の加群としてみたものだ。
トーラスと球のホモロジー群を、加群の意味からイメージしてみよう。
1次のホモロジー群の基底はループだ。
ループを整数倍したり、たしたりできると加群と言える。
トーラスT^2の面にそって、ループを作ってみよう。泡のよう小さくなって消せるループもあるけれど、
穴をかこむように1周するループaは消せない。
トーラスを管と見立てたときの管の円周となるループbも消せない。
ループaとループbの交わる点Aを通ってもとに戻る斜めなループはa+bなどと表せるでしょう。
ループaをスライドしてとなりコピーして1つとしてみれば、ループ2aができる。
ループは回転を逆にして、負のループとする。
加群のイメージがつかめたでしょうか。
実際にループaとループbでトーラスを切断して広げると、長方形AAAAができて対角線がcになる。
cはa+bで表すことができるので、独立していない。
これから、トーラスの1次のホモロジー群H_1は2つの基底a,bの加群だから、β1=dim(H_1)=2となるね。
それに対して、球の場合は表面に穴がないためループは点と同相だから、ループはない。β1=0だ。
結論、β1は面上の独立なループ数。
0次のホモロジー群の基底は点だ。
トーラスも球も表面の異なる2点は連続する線でつなぐくとができる。
点の基底を1つ決めると、それをずらすだけですべての点になるから、H_0はZと同型ということだから、β0=1となるね。
また、穴のあるなしに関係なく、1つのかたまり、島になっているからβ0=1と言い換えることもできる。だから、2つに分離されているときはβ0=2となるね。
2個のゴムボールが1点でくっついているならば、その1点を通って、表面を行き来できるから、
その場合はβ0=1だね。
結論、β0は点の連結した島数。
2次のホモロジー群の基底は面だ。
球もトーラスも表面しか見えない。裏面は解体しないと見えない。
ということは面に向きがあるということだ。たとえば、表面を基底にすると、裏面はそれをマイナス1倍すれば、表現できる。面に向きつけができるので、H_2はZと同型で、β2=1だね。
しかし、メビウス帯は面が1つあるように見えるけれど向きがつけられない。裏と表が同じ、T=-TになるからT=0となる。だから、ホモロジー群の視点ではメビウス帯には面の基底はないのでβ2=0。
結論、β2は向きつけ可能な面数。
課題:次の図形のホモロジー群をイメージすることで、ベッチ数列を脳内で検証しよう。
トーラスは{β0,β1,β2}={1,2,1}
球は{β0,β1,β2}={1,0,1}
円柱側面(アニュラス)は{β0,β1,β2}={1,1,0}
メビウス帯{β0,β1,β2}={1,1,0}
位相空間の用語や計算法などの確認はこちら、https://www.geogebra.org/m/twxxx3yq#chapter/1204515
<1F 圏(箱と射など)>
箱:図形C*をq次の鎖群C_q(自由加群)という小箱たちの系列にする。C*がn次元ならC_{n+1}={0}
射:小箱の次元下げするn次元境界演算子∂_n(たとえば、∂_2:C_2→C_1と∂_1:C1→C_0)がある。
射の連続によって箱の系列ができるのが複体。0→C_n→…→C_2→C_1→C_0→0
C*がトーラスの場合は2次元曲面だから、0→C_2→C_1→C_0→0という鎖系列ができる複体。
射でできる小箱の中の箱:
射によって部分群(ミニ箱)ができます。
q次のサイクル群(ループ群)Z_qは、q次の鎖群C_qのうち∂_q(Z_q)=0のように、境界がないもの。
q次の境界群B_qは、q+1次の鎖群C_{q+1}の境界∂_q(C_{q+1})のことで、C_qの部分になる。
境界をとることをバケツリレーすると、三角形→3辺の1周→0、円盤→円周→0と2回すると0次元で0になる。当たり前ですよね。ホモロジー群はバケツリレーではありません。
たとえば、
∂_2:面→境界群B_1, ∂_1:ループ群Z1→0と1次元の鎖群C_1を舞台に左右から挟み撃ちするのですね。
ループ輪体Ker(∂_1) = Z_1の中に、面のふち境界群B_1 = Im(d_2)が入るから、
関係「B_1 ⊂ Z_1 ⊂ C_1」が生まれます。
複体ならば2回境界をとると0になるのです。
B_q(C*) ⊂ Z_1(C*) ⊂ C_q(C*)
<2F ファンクター>
ファンクターは2種類ある。
共変ファンクターと反変ファンクターだ。
「共変ファンクター」
関係「B_n ⊂ Z_n ⊂ C_n」の関係性から、Z_nをB_nから見た残余を考えます。
共変ファンクターは境界演算子∂_kたちできる小箱の次数下げの系列C_2→C_1→C_0に対して、
2つの射∂_2の像(B_1)と∂_1の核(Z_1)の商の箱「Z_1/B_1」という類別によって、
ホモロジー群H_1という類別空間を作るのです。
商といいながら剰余のイメージの空間です。B割ることによって、ZをBと共通する部分を消し去るのです。
一般化すると、境界 B_k = Im(∂_{k+1})、ループ群Z_k = Ker(∂_k)とするとき、H_k = Z_k / B_k 。
ベッチ数βn=rank(H_n)=dim(Z_n/B_n)=dimZ_n-dimB_nとします。
「反変ファンクター」
最初に、
1Fの鎖 C_k(図形パーツ集)の双対空間(余鎖 C^k、パーツを測定する関数(値)集)を作ります。
すると、境界演算子d_kたちもひっくり返り、余境界演算子 d^kたちができるね。
余境界演算子d^kたちで,小箱の系列C^0→C^1→C^2という次数上げの系列ができる。
2つの射d^0の像B^1とd^1の核Z^1の商の箱Z^1/B^1によって、
コホモロジー群H^1という類別空間を作る。
一般的に、
余境界 B^k = Im(d^{k-1})、余ループ群Z^k = Ker(d^k)とするとき、H^k = Z^k / B^k 。
線形代数の知識から、双対写像がもとの射の転置行列になることは容易にわかりますね。
<複体の作り方は様々>
図形Xを調べるとき、ホモロジー群H_q (C*)は単体の分割で定まる複体C*には依存しません。
三角形分割をしても、もっと細かく点と線をかく胞体分割をしても複体は作れます。
q次単体を整数係数の加群で作っているということだけわかるようにH_q(X,Z) とかくことがあります。
もっとゆるいやり方があります。
q次単体をXの中に綺麗にはめ込まなくても、連続的にXに写像したものを特異q次単体ρ^qとして、
それの加群としての特異鎖S_q(X)の系列で複体を表現します。
そうして、特異(コ)ホモロジー群を作るというやり方もあります。
これは図形のパーツというよりも、
サランラップの破片をへたくそにしわになってもいいから貼ったものを基底にした群です。
きれいに貼れるという結果は問わないので、位相空間向きでしょう。
鎖の定義をゆるくしたことによって、逆に強く、同相の判定ができます。ホモトピータイプの判定ができるようになりました。ただし、計算も証明も複雑です。ただ、「完全系列」を使うと、特異ホモロジー群の計算は簡単になります。(詳細は省略します。)
2.物理とつながる(コ)ホモロジー群
<解析学との融合:測定器としてのコホモロジー>
特異鎖 S_q(X) は単体分割ではないにしろ、鎖だから図形パーツの小箱の一種であり、
鎖の系列から複体になる。
その双対である特異余鎖 S^q(X) は、図形パーツの次元ごとの測定パーツだ。
位相空間は開集合で位相を決めた点集合だけど、開集合の連続関数を微分可能なものにすることで、微分できる多様体、という図形的なデータ空間ができる。
この可微分多様体の上で、次元ごとの図形パーツである鎖系列に対する測定パーツである余鎖は
微分形式(Differential Form)というものだ。
0形式(0次の余鎖)C^0: スカラー場 f(x,y,z)
1形式(1次の余鎖)C^1: ベクトル場に対応(線要素)
2形式(2次の余鎖)C^2: 面要素
3形式(3次の余鎖)C^3: 体積要素
「ぐにゃぐにゃ変形しても同相な」位相空間に「微分できる滑らかな測定器」を載せることで、オイラー・ポアンカレ的世界とガウス・リーマン的世界が重なりあう。
この余鎖の系列を逆向きにつなぐ反変ファンクターをかけよう。
<余境界作用素 dの正体は「外微分」>
コホモロジーの世界で次元を上げる射「余境界作用素 d」の登場だ。これを微分形式の世界で計算すると、なんと解析学でおなじみの「外微分」 dそのものになる。
0形式→1形式: 勾配 {grad}(値(勾配)からベクトルを作る)
1形式→2形式 : 回転 {rot}(ベクトル(渦)から面要素を作る)
2形式→3形式 : 発散 {div}(面要素から体積変化量を作る)
念のために、3つの関数のpythonコードを載せておきます。
def grad(w,vars): #スカラー場wの勾配はベクトル
return Matrix([diff(w, i) for i in vars])
def rot(F, vars):#回転はcurlとすることが多い。日本ではrot
F0,F1,F2 = F
return Matrix([diff(F2,vars[1]) - diff(F1,vars[2]),diff(F0,vars[2]) - diff(F2,vars[0]),diff(F1,vars[0]) - diff(F0,vars[1])])
def div(v,vars): #ベクトル場vの発散はスカラー
return sum([diff(v[i],vars[i]) for i in range(len(vars))])
そして、
複体の根本ルールである d◦ d = 0(2回作用させるとゼロ)
を解析学の言葉で書き直してみると……
rot(grad f) = 0 (勾配の場の回転はゼロ)
div(rot A) = 0 (回転の場の発散はゼロ)
これらは解析学の基本公式だね。
この基本公式が実は「鎖複体(Chain Complex)の構造 d ◦ d = 0」の言い換え(代数的な必然)
だったことが判明する。
これだけではありません。
「グリーンの定理」は閉曲線Cが平面領域Dを囲むときに、
∫_D(∂b/∂x-∂a/∂y)dxdy=∫_∂D(adx+bdy)で、
1形式ω=adx+bdyとすると、
外微分dω=da∧dx+db∧dy=(∂b/∂x-∂a/∂y)dx∧dyと定義すれば、
∫_D dω=∫_∂D ωとかける。
これを3次元空間のべクトル場に置き換えたものが「ストークスの定理」で、
∫_D((∂c/∂y-∂b/∂z)dydz+(∂a/∂z-∂c/∂x)dzdx+(∂b/∂x-∂a/∂y)
dxdy)=∫_∂D(adx+bdy+cdz)だ。
1形式ω=adx+bdy+cd
外微分dω=da∧dx+db∧dy+dc∧dzとすれば、
∫_D dω=∫_∂D ωとかける。
閉曲面Sに囲まれた空間領域Dで「ガウスの定理」だった。
∫_D(∂b/∂x+∂b/∂y+∂c/∂z)dxdydz=∫_∂D(adxdz+bdydx+cdxdz)だ。
2形式ω=ady∧dz+bdz∧dx+cdx∧dy
外微分は3形式dω=da∧dy∧dz+db∧dz∧dx+dc∧dx∧dyとすれば、
∫_V dω=∫_∂V ω
この3つの定理がすべて同じ形式(一般化されたストークスの定理)
∫_D dω=∫_∂D ω
となる。
ωが全微分ならばω=adx+bdy+cdzとおき、dω=0となる。
dω=Ωとすると、dΩ=0となることがわかるので、結局は、d(dω)=0
外微分は2回やると必ずゼロになるのだ。
外微分dを2回やることの双対の世界では、境界をとる∂を2回やることだった。
だから、ここにも双対の世界からくる必然性があったのだね。
中抜きの定理たちという共通性の直観が当たっていることになる。
くわしくはこちら。https://www.geogebra.org/m/twxxx3yq#material/ujjc7jcn
ベクトル解析の学習者からは、意味不明なただの計算結果と思われがちな公式が
当然の結果として納得できることは素晴らしいことです。
この素晴らしさの締めはド・ラームの定理ですね。
「ド・ラームの定理」
解析的ド・ラームコホモロジー群 H^k(X)は、特異鎖で測った位相的コホモロジー群 H^k(X,R)と同型だ。
ド・ラームの定理は,多様体上の微分形式の定量的性質が多様体の位相的性質で決定されることを表す深遠な公式だね。(コ)ホモロジー群を直接微積分を用いて計算することは容易でない場合に、対応する位相的に(コ)ホモロジー群に置き換えて計算できるという実用性もある。
<振り返り:幾何が宇宙を決める>
アインシュタインが「時空の幾何学的な曲がり(トポロジーや重力)」が物質や場の動きを決定することを見抜いたように、数学の世界でも「空間のトポロジー(穴の構造)が、そこに存在する物理的な場のあり方を根本から縛っている」
課題:Geogebraで「ストークスの定理」の中抜きイメージを視覚化する。
#ストークスの定理は ∫_S (rot f)・ dS=∫_∂s f ・dr
#垂直成分をつぶして視覚化しよう。
#左辺は面Sにできる渦の合計、右辺は面の境界での値の合計。
#面の渦(2形式)をつぶして、周の流れ(1形式)に落とす
#というストークスの定理の本質を、最小単位の 4 点と 2 つの三角形で表現しよう。
タイトルは「ストークスの定理」
#0単体
A=(0,3)
B=(-3,0)
C=(0,-3)
D=(3,0)
#1単体
#△ABCの辺
AB=Vector(A,B)
BC=Vector(B,C)
CA=Vector(C,A)
#△ACDの辺
AC=Vector(A,C)
CD=Vector(C,D)
DA=Vector(D,A)
#2単体(Segmentという名の辺が自動作成されるので非表示にしよう)
ABC=Polygon(A,B,C)
ABD=Polygon(A,C,D)
# S = ABC+ACD
#∫_S rotA=∂(ABC)+∂(ACD)
sumatS=AB+BC+CA+AC+CD+DA
#∫∂S A
sumatC=AB+BC+CD+DA
sumatS==sumatC
"ストークスの定理の垂直成分\\をつぶして単純化しよう"#LaTex数式をチェックする
"面の渦の合計sumatS="+sumatS+""
"周の流れsumatC="+sumatC+""
""+e +"" #文字サイズを多くする。
連続的な微積分の世界の極限が点と線となり、
面積分が周囲の積分となり、左辺も右辺もゼロベクトルになる。
つまり、2回の外微分が0になることがわかるね。