34歳からの数学博士

数学徒・プログラマ・一児の父

トポロジーへの招待 〜 1. 座標も補助線も使わない「やわらかい幾何学」

この記事は 数学とコンピュータⅡ Advent Calendar 11日目の記事です。

こんにちは、佐野です。12月といえば Advent Calendar の季節です🎄思いつきで 数学とコンピュータ Advent Calendar Ⅰ / を立ち上げたところ、嬉しいことに二つともすぐに満員となりました。エントリーして下さった皆さん、ありがとうございます🙇

僕は全3回でトポロジーの考え方と計算手法を、自作のプログラムを使いながら説明していこうと思います。

  1. 座標も補助線も使わない「やわらかい幾何学」 ← イマココ
  2. 切り貼りで作る色々な曲面
  3. ...

このシリーズを通して トポロジーは最高に自由で楽しい数学(の一つ)である ことをお伝えできたら幸いです!

「やわらかい幾何学」って何?

「コーヒーカップを、取っ手の輪っかを残すように変形するとドーナッツの形にできる。従ってコーヒーカップとドーナッツは同じ。」と主張するのがトポロジーです。

f:id:taketo1024:20171211090339p:plain

小学校や中学校で習うユークリッド幾何学では、三角形や四角形などの図形はカチッと固まっており、長さや角度を計ることはあってもグニャグニャと形を変えるようなことはしませんでした。この「硬さ」と対比して、どんな連続的な変形も受け入れるトポロジーは「やわらかい幾何学」だと言われます。

数学といえば厳密だというイメージがあると思います。しかし「コーヒーカップとドーナッツは同じ」などという主張はいかにもいい加減で、数学の土俵に乗ることすら許されないように思われます。その感覚は真っ当で、だからこそユークリッド幾何学からトポロジーの誕生まで 2,000 年以上ものときを要したのだとも言えます。トポロジーでは円や多角形などの「綺麗な図形」だけでなく、歪んだ紐や穴の空いた曲面などの「日常で目にする図形1」も数学として扱うのです。

もし数学が「綺麗な図形」しか扱わない(扱えない)お堅い学問だというイメージをお持ちなら、トポロジーの自由さ(とそれに伴う絶望的な難しさ)を前にその中世的な数学観を喜んで破砕して下さい👊

そもそも「幾何学」とは何か?

19世紀末にトポロジーを創設したアンリ・ポアンカレ「数学とは、異なるものを同じものと見なす技術である」2と言ったそうです。…とだけ言われて「コーヒーカップとドーナッツは同じだ」と受け入れるのは難しいと思うので、少し立ち返って、私たちはどのように図形を「同じ」と見なしているのか観察してみましょう。

ユークリッド幾何学では次の二つの三角形は「同じ」であると考えます。しかし改めて考えると三角形が置かれてる位置や傾きは異なっています。どうしてこれが「同じ」だと言えるのでしょう?(難しい言葉を使わず4歳児に説明するとしたらどう言いますか?)

f:id:taketo1024:20171211090412p:plain

それは、左の三角形を持ち上げて動かせば右の三角形にピタッと重ねることができるからです。このとき二つの三角形は「合同」というのでした。

ユークリッド幾何学にはもう一つ「相似」という関係もあります。これは「合同」よりも広い「同じ」です。長さや面積のような「絶対的な量」でなく、長さのや角度などの「相対的な量」を扱うときに便利な関係です。

f:id:taketo1024:20171211090442p:plain

上の二つの三角形が「相似」であると言えるのは、左の三角形を縦横均等に拡大して移動することで右の三角形にピタッと重ねることができるからです。この拡大縮小が「縦横均等」であることが大切で、横方向にだけビヨーンと伸ばす3ような変形は許されていません。

この二つの例を見るだけでも、私たちは中学校までに二通りの「図形を同じと見なす技術」を学んでいることが分かります。その技術とは「特定の操作で図形を動かして一方を他方にピタッと重ねること」です。

ここで19世紀の数学者クラインによる「幾何学とは何か?4」に対する答えを見てみましょう:

幾何学的性質とは、それに作用する 変換群の作用で不変に保たれる性質 のことである。

「変換群」という難しい言葉が出てきましたが、合同の例では「合同変換(回転・平行移動・鏡映)の全体」、相似の例では「相似変換(合同変換+拡大縮小)の全体」のことです。合同変換で不変に保たれるのは「長さ・面積・体積・角度」などで、相似変換で保たれるのは「長さや面積の比・角度」などです。クラインの立場では、

「ユークリッド幾何学は、合同変換や相似変換によって不変に保たれる性質を調べる学問である」

ということになります。

ではトポロジーは?

「トポロジーとは何か?」に答えるには、トポロジーにおける「同じと見なすための変換」が何かを答えれば良いことになります。それがコーヒーカップをドーナッツに変えるときに行った「連続的な変形5 6」です。ここで図形を一点に潰してしまうような変形まで認めると「全ての図形は一点と同じ」という役立たずな理論が出来上がってしまうので「可逆 = 元に戻せる」ものに限ることにします。

「可逆で、行きも戻りも連続であるような変換」

このような変換(写像)を同相写像と言い、同相写像によって移り合う二つの図形は同相(位相同型)であると言います。すると、

「トポロジーは、同相な図形同士で不変に保たれる性質(位相不変量)を調べる学問である」7

と述べることができるようになりました。つまり「コーヒーカップとドーナッツにおいて共通しているものは何か?」を問うのがトポロジーということです!

f:id:taketo1024:20171211091500p:plain

ところで「同相な図形は同じ」と見なしたいケースとはなんでしょう?その答えはトポロジーの起源とも言われる「ケーニスベルクの問題」で見ることができます。

Konigsberg bridge

「この7つの橋を全て、同じ橋を2度通ることなく渡り、元の所に帰ってくることができるか」という問題です。18世紀の数学者オイラーは、川で囲われた領域を点、橋で繋がっている点同士を辺とするグラフを対応させることで、それは不可能であると証明しました。

問題は「このグラフは一筆書きできるか」となり、その本質はグラフの構造、つまりどの点と点がどの繋がっているかです。実際の町における移動距離や、絵に描いたグラフの辺の長さなどは関係ありません。このケースでは「同相なグラフは同じと見なす」のが正しいアプローチだと分かります。

同相写像で保たれる性質とは?

f:id:taketo1024:20171211090504p:plain

さて、二つの図形を眺めながら、何が共通していると言えるか考えてみましょう。もしこれらが粘土でできており、一方を他方に変形したのなら二つの「体積」は等しいでしょう。しかし一般に同相写像は相似変換も含んでおり、相似変換は自由に大きさを変えてしまうので「体積」は位相不変とは言えません。長さや角度を計ろうとするのも無意味です。もっと素朴に(幼児のように)考えてみましょう。

(1) 連結性

コーヒーカップもドーナッツも「一個のもの」です。コーヒーカップの取っ手の部分を切り離してしまえば図形は二つの部分に分かれます。「切り離す」というのは図形の繋がりを壊す操作ですから連続ではありません。コーヒーカップをドーナッツに変形する過程では「図形が二つ以上のものに分かれる」ことはないので「繋がった状態 = 連結性8」は保たれています。これは一つの位相不変な性質です。

(2) コンパクト性

二つの図形は有限な大きさを持つ閉じた図形です(宇宙のように無限に広がっていません)。このような図形はコンパクトであると言い、コンパクトな図形が連続写像によって無限に広がってしまうことはないので9、これも位相不変な性質です。

(3) 穴の数

ドーナッツには穴があります10。コーヒーカップも、取っ手の部分が輪っかになっているので11穴が空いています。図形を連続的に変形する過程では新たに穴が空いてしまったり埋まってしまったりすることはないので、同相写像によっては「穴の数」は保たれます。「穴の数」は上の二つと違って、数として得られる位相不変量です。

これらの性質や量は対象の図形が簡単であれば見てすぐに分かりますが、もっと複雑な図形の場合はそうは行きません。例えば 4 次元の図形が与えられて、穴が何個空いてるかを見て調べるのは一般人には不可能でしょう。何かしらもっと体系的に位相不変量を取り出す方法が欲しくなります。その本格的な手段は次回説明することにし、今回は導入として、トポロジーが創設される以前から知られていた位相不変量であるオイラー数を紹介します。

オイラー数

f:id:taketo1024:20171211090627p:plain

5つの正多面体があります。下の表にぞれぞれの頂点 (V: Vertex)・辺 (E: Edge)・面 (F: Face) の数が書かれています。多面体ごとにこれらの数は異なります。しかし、これらの数の組に対してある計算をすると、不思議と共通の値が出てきます。

f:id:taketo1024:20171211091206p:plain

V - E + F を計算すると、全て 2 です。

どんな多面体についても V - E + F = 2 となるのでしょうか? 答えは NO です。次の図形について計算してみると、

f:id:taketo1024:20171218100715p:plain

左は V - E + F = 0、右は V - E + F = -2 です。

パターン見えて来ましたね…!どうやら球面に同相な多面体は V - E + F = 2 となり(内側をプクッと膨らませるとどれも球面になりますよね)、穴の数が増えるごとに値が 2 ずつ減っていくようです。つまり穴の数を  g として、

 V - E + F = 2 - 2g

となっているようです。

この量が (多面体の) オイラー数です。こんな単純な式で計算される量が位相不変であるというのは実に不思議です。例えば球面を 4 個の頂点で分割しても 5000兆個 の頂点で分割しても、オイラー数は等しく 2 となるのです。「同相であれば値が等しい」のが位相不変量なので、対偶を取れば「位相不変量が異なれば同相でない」となります。球面とトーラス(ドーナッツの表面)が同相でないという事実は、2 ≠ 0 から直ちに分かってしまう訳です。

では逆に「オイラー数が等しい図形は同相だ」と言えるでしょうか? 答えは NO です。例えばこの変な図形:

f:id:taketo1024:20171211090542p:plain

オイラー数は 0 です(数えて見てください)。どう見ても上に出てきたもの同相ではありません。 以上をまとめると、

  • オイラー数は図形に対して組み合わせ的に定まる量であり、
  • 同相な図形に対してはオイラー数は一致するが、
  • オイラー数が一致するからといって同相とは限らない。

となります。ここで当然の疑問として、

  • V - E + F という数は一体どこから出て来たのか?
  • なぜこの量は位相不変となるのか?

が残ると思います。 次回、単体複体のホモロジー群 を導入し、この数の由来を探って行くことにしましょう。

完全な不変量を求めて

「オイラー数が等しくても同相とは限らない」は、ユークリッド幾何学において「合同な三角形の面積は等しい」は成り立つが「面積の等しい三角形は合同」とは限らないという事情と同じです。

しかし「三角形の合同条件」には「三辺相等」「ニ辺夾角相等」「ニ角夾辺相等」がありました。これは三角形の「辺の長さ」や「角度」などの不変量をうまく組み合わせることで が言えてしまうという強い定理です。

二つの図形の間で変換が作れるかどうかという問題は、いわば無限次元空間の中で「点」を探すことであり、一般にはとても難しいものです。一方で具体的に計算できる不変量を組み合わせることで「同型でない」だけでなく「同型である」までも判定できるとしたら、それは対象の図形がその不変量によって完全に決定されるということです。

オイラー数は位相不変量としては完全ではありませんでした。しかし対象とする図形を制限し、他の不変量と組み合わせることで、特定の図形が完全に分類できるということも次回説明します。お楽しみに!

参考図書

数学専攻でない人がトポロジーに入門するにはこちらがオススメです。特別な前提知識なく読めると思います(恐らく高校生でも)。

トポロジー:柔らかい幾何学

トポロジー:柔らかい幾何学

こちらはもう少し進んだ内容で、行列を使った具体的な計算やホモロジー群の位相不変性なども扱っています。

臨時別冊・数理科学2005年9月トポロジー入門

臨時別冊・数理科学2005年9月トポロジー入門

こちらは古典的なトポロジー(単体的複体のホモロジー群・基本群)の入門書です。

トポロジー【岩波全書】 (岩波オンデマンドブックス)

トポロジー【岩波全書】 (岩波オンデマンドブックス)

さらに進んで学びたい人は、オンラインで入手できる A.Hatcher の "Algebraic Topology" を見てみると良いと思います。


  1. もちろんトポロジーでは「日常で目にする図形」だけでなく「人間には見ることのできない図形」も扱います。

  2. “la mathématique est l'art de donner le même nom à des choses différentes.” Science et Méthode, 1908.

  3. そのような変形は「アフィン変換(線形変換+平行移動)」と呼ばれ、アフィン変換で移り合う図形を同一視する幾何学が「アフィン幾何学」です。

  4. このような「問い」が19世紀になってようやく起きた背景には、ギリシャ時代以来「ユークリッド幾何学」が唯一絶対の幾何学だと信じられてきたのに対し、18世紀以降その公理を満たさない「非ユークリッド幾何学」も成り立つことが明らかになってきたことがあります。

  5. ユークリッド空間における「写像の連続性」を定めるのが  \epsilon\delta 論法です(過去記事)。トポロジーにおいてはより一般の「位相空間(topological space)」を扱いますが、「位相」「連続写像」の厳密な定義は大幅に直観を離れてしまうので、wikipedia へのリンクだけ貼ってここでは述べないことにします。

  6. 正確には二つの図形が「同相」であることと「アイソトピック」であること(ある空間の中で同相を保ちながら一方を他方に変形できること)は異なります。「コーヒーカップとドーナッツ」の例では  \mathbb{R}^3 の中でアイソトピーを作っており、その結果として二つの図形は同相となっています。

  7. トポロジーでは「同相」よりも遥かに広い「ホモトピー同値」という同値関係も扱います。例えば  \mathbb{R}^3 と 1点、円周とメビウスの帯などは互いにホモトピー同値になります。

  8. 連結」「コンパクト」にもちゃんと厳密な定義があります。

  9. 「有界 = 有限の大きさを持っている」だけではダメです。例えば  \mathbb{R}^2 内の半径 1 の円板で境界の円周を除いたもの(開円板)は  \mathbb{R}^2 と同相になります。あるいは長さ 1 の開区間  (0, 1) は実数直線  \mathbb{R} と同相です。面積や長さは等しくても、境界を含んでいるか否か(図形が閉じているか否か)で位相的な性質は決定的に変わってしまいます。

  10. Oxford Dictionary における doughnut の定義 には “Typically in the shape of a ball or ring.” とあるので、「穴が空いてる」ことがその定義に含まれる訳ではないようです。

  11. 取っ手の部分が輪っかになっていない 例外的なカップ もあるようです。

中間報告 〜 勉学と育児の間で

こんにちは、1年ぶりの投稿です。明日からまた学期が始まるので、これまでのことを中間報告としてまとめておきます。

退職しました

昨年の4月、会社の「勉学休職制度」を利用して休職して大学院に入学したのですが、1年経過した今年の3月末に退職しました。理由はお金です。僕が不勉強だったのがいけないのですが、休職中は無収入であっても在職時と同額の社会保険料を支払い続けなければいけないことを知りませんでした。

(参考: 休職中・休業中の社会保険料Q&A

大ヒットした芸能人やスポーツ選手が翌年の税金に苦しむという話はよく耳にするので、一年耐えれば翌年からガクッと下がるものだと思っていたのですが、それは給与から天引きされるうちの住民税であって社会保険料(健康保険料+厚生年金保険料+雇用保険)は別なのでした…

例えば月収が30万の場合は社会保険料は約4万円、50万の場合は約7万円です。これが無給であっても毎月取られ続けるのはかなり厳しい。

毎月会社からメールで「○○万円振り込んで下さい」と指示される額がやたらと高く「なんかおかしいか…?」と気づいたのが昨年の10月。当初の想定と大きく異なる負の勾配で減っていく貯金額に心を揺さぶられ続けました。何度か人事の方とも相談した上で3月末に退職することにしました。

僕としては社会人になってからも仕事を休んで学業に専念する期間を設けるキャリアプランを勧めて行きたかったのですが、これはかなりの障壁です。とりあえず多くの人が進まない道を進もうとする場合その先にどんな穴があるかは自分で調べておかないといけませんね…

1年延長します

在学期間を1年延長することにしました。修士課程は通常2年間なので、3年かけて2019年に修了予定です。このことを決めたのは6月で、理由は基礎的な学力が全然足りておらず、このまま進めたところで満足な研究成果は出せそうになかったためです。

数学徒なら多くの人が知っているであろう佐藤幹雄先生の有名な言葉があります。

「朝起きた時に,きょうも一日数学をやるぞと思ってるようでは,とてもものにならない。数学を考えながら,いつのまにか眠り,朝,目が覚めたときは既に数学の世界に入っていなければならない。どの位,数学に浸っているかが,勝負の分かれ目だ。数学は自分の命を削ってやるようなものなのだ」

「数学は体力だ!」より

これは育児のある身にはつらい。

朝起きて、保育園の登園の準備をしながら娘に朝ごはんを食べさせ、着替えさせ、嫌がったりグズったりするのを上手くやりこめながら(ときには強引に)保育園へ連れていき、諸々のセッティングをした上で娘を保育士さんに預け、電車に乗って登校し、キャンパス内のカフェで「やれやれ、疲れたぜ」とアイスコーヒーを飲んでから「さぁ数学をやるぞ」…と思っているようではとてもものにならない、となってしまう。

一年以上も地に足のついた感覚のないままひたすら知識を詰め込み、毎週行われるゼミでは理解の甘さを詰められ、家族といるときでも「あれをやらないとやばい…」と常に追い詰められたような気持ちでいました。研究テーマは修士2年の夏休み前ぐらいには見えているべきものですがさらさら手応えもない。このまま先生にテーマを与えてもらって修士論文を書き上げたところで何か得られるものはあるだろうか、2年かけて修士号と引き換えに貯金だけでなく数学への情熱まで失ってしまいそうでした。

時間が足りないなら、時間を増やすのが正しい。これも厳しい決断でしたが、先生や妻とも相談の上で一年延長することにしました。

貯金の流出を食い止め、在学期間を延ばしたことで、ようやく安定した気持ちで勉学に取り組めるようになりました。土日は育児に専念しようと割り切れるようにもなり、家庭の雰囲気もよくなりました。

夏休み

入学以来、意識的に技術関係の情報はシャットアウトしていたのですが、夏休みぐらい良いかということで「プロ数LT」と「iOSDC 2017」に登壇することにしました。

プログラマのための数学 LT 会

f:id:taketo1024:20170924181221j:plain

「プログラマのための数学勉強会」は昨年の3月以来開催しておりませんでしたが、LTでも登壇してくれたハトネコエさんが

と、自ら「プログラマのための数学LT会」というスピンオフ企画を立ち上げてくれました。第1回が3月に開催され、第2回が7月に開催されるとのことで、ポチッと応募することにしました。

僕の発表は

www.slideshare.net

線形代数のみを前提知識として、代数トポロジーの面白さをプログラマにも体感してもらおうという試みです。久しぶりの登壇でテンション上がって発表時間を大幅に過ぎてしまいましたが、ホームな気分の中で好きな話ができて楽しかったです。

iOSDC 2017

f:id:taketo1024:20170924181212j:plain

国内最大の iOS 開発者カンファレンス iOSDC。Twitter のタイムラインで CfP 締切り情報が流れてきたので勢いで エイヤ と出してみることにしました。

www.slideshare.net

この発表は1年前に書いた Swift で代数学入門 を元にしています。数学における抽象化と Swift における Protocol-Oriented Programming は綺麗に対応させることができるという内容で、既知の概念を拠り所にして数学の難しい話にも触れられるようにしてみようという試みです。

マニアックな人が数名聞いてくれればいいかなぐらいに思っていたのですが、会場は立ち見が出るほどの満席でした。2日目の昼過ぎで既に場が暖まっていたこともあり、自分がこれまでやってきた中で最高の盛り上がりでめちゃくちゃ楽しかったです。オーディエンスの投票で決まるベストトーク賞の4位を頂くことができました。

エンジニアの勉強会の雰囲気はやっぱ良いものだなと思いました。特に「あの人は本当に楽しそうに数学の話をするなぁ」と言ってもらえるのは、普段黙々と数学の勉強をしているときは分からなくて苦しんでることの方が多いので、「やっぱ俺は数学が好きらしい」と原点に立ち返れるので救われます。

夏休みは他にも北海道へ Applied Algebraic Topology 2017 に参加したり、代数的トポロジー 信州夏の勉強会 に参加したりと、充実した時間を過ごすことができました。

まとめ

まとめると「一年半経ってようやく良い感じになってきた」という感じです。

勉強と育児の両立は大変ですが、子供を授かったことも数学の道に戻ってきたことも自ら望んだことです。それなのに身の周りと比べて自分に子供がいることを足枷のように思ってしまうほど悲しいことはない。実際には、子供ができたからこそ自分の人生を見つめ直し、もう一度数学をやろうと決められたのでした。

これまでの自分は少なからず競争を意識して生きてきましたが、今の環境では競争意識を持とうものなら惨めな思いをすることは明らかです。今は色々な制約のある中でもちゃんとベストを尽くせているか(夜更かしせずにちゃんと寝て毎日ベストコンディションで臨めているか、というレベルのこと)が自己評価の基準の大きな部分を占めるようになってきました。

夏休みの最後の週は家族でゆっくり過ごせたので、また明日から張り切って数学をやっていくぞ💪(と思ってるようでは…?)

「数学は役に立つ/立たない」について思うこと

世は数学ブームのようで近頃「役に立つ数学」といった記事や特集をよく目にします。一方で「数学は役に立たない」「三角関数なんか」といった文句も引き続き定番のようで、そういったシャウトが飛び出ては反論でタイムラインが賑わうのも見慣れた光景です。

僕は「数学は役に立つ」という事実はもちろん肯定しますが、「役に立つから文句言わずにやれ」とも「役に立つ必要なんかない」とも言いたくありません。

「数学が何の役に立つ?」と疑っている人でも、数学が本当に何の役にも立ってないとは思ってないはずです。科学者や技術者が数学を使ってることは知っているだろうし、現代の生活を支える技術に何かしら数学が関わっていることも想像できるはず。

疑っているのは「自分にとって」何の役にも立たないんじゃないかということなので、「○○に役に立つよ」と言ったところでその○○に興味を持てなかったらその気持ちは変わらないでしょう。

そもそもなぜ数学は「役に立つ/立たない」ばかりで語られるのでしょうか。例えば「サッカーは苦手だ」と言う人はいても「ボールを蹴ってゴールに入れるスキルが何の役に立つ?」なんて言う人は見たことありません。それは数学を学ぶべき理由として「役に立つ」ということしか与えられていないからなんじゃないかと思います。

生きていく上では何かしら社会の役に立っていくことは必要なので、「役に立たなくたって良い」なんていうのは大人として無責任だと思います。しかし「役に立つ」スキルを一通り身につければ直ちに社会の役に立つことができるかというと、なかなかそう甘いもんでもないようです。

僕は学部時代(9年前)にこのことでかなり悩んでいました。僕が好きな数学は「役に立つ数学ではない」と思っていましたし、数学を役に立てることにも興味はありませんでした。しかしそんなことを言いながら生きていけるか、充実した人生を送れるかというと全く現実感がない、これはどうしたものかと鬱屈とした日々を送っていました。このままではどうにもならないと、大学院には進学せず逃げるようにして数学から離れました。

その後の9年間、ベンチャー企業から500人規模、5,000人規模の企業で働いて学んだのは「役に立ち方」というのは実に多様で「何のスキルを持っているか」だけで規定されるようなものではないということです。活躍している人はその人なりの芯(アイデンティティ、ユニークネス、ビジョン)があり、やりたいこと/やるべきことを遂行する上で必要な知識やスキルは躊躇なく吸収し体得して行く。そしてそのプロセスを楽しんでいる。「役に立つ/立たない」なんて曖昧な判断基準で悩んだりしていないようです。

僕もソフトウェアエンジニアとして働く中で、数学が直接仕事に役に立ったことはほとんどありません。しかし数学によって培われた思考力(忍耐力)や美的感覚は開発や設計において常に活きていたと思います。「俺は数学をやってきたんだ」という自負も自分を強く支えてくれるものでした。

「数学は役に立つ」というと、その知識が直接仕事に使えなければならないような気になりますが、その狭い意味において数学が役に立つ仕事は限られています。より広い意味での「役に立つ」については、数学に限らず、何かを深く学んだ経験全てについて言えることなんだろうと思います。

「役に立つ知識」は大切ですが、そればかりだとつまらないし、皆同じような働き方になっては個人としても集団としてもユニークな「役に立ち方」はできなくなるんじゃないかと思います。

もし将来子供(現在2歳)が「数学って何の役に立つの」と退屈そうな顔で聞いてきたら、「そりゃまぁ色々あるけど、それが見つかってからでないとやる気しないんなら、それを見つけることを優先したらいいよ」とでも答えるのがいいかなと思ってます。

大学は今日から後期スタートです。 (追記: 来週からでしたw)


追記: レスポンスを頂きました。ありがとうございます!