category theory」タグアーカイブ

圏論の入門書(2018年版)

以前(2014年ごろ)このブログに「圏論の本」という記事を書いたが、あれ以降いろいろな本が出てきたようだ。特に、和書が増えた。

というわけで、この記事では2018年時点で手に入る圏論の本を独断と偏見で紹介する。ここで紹介するのは入門書、和書が中心となり、より専門的な話題に特化した本は省く。

圏論の入門書と一口に言っても、書き方や内容は著者によって様々である。読者にも代数学をやりたい人、プログラミングやロジックをやりたい人、色々いるだろうが、読者のバックグラウンドや興味の方向によって読むべき本は変わる。

読者が適切な本を選択する為に、この記事が(十分なガイドとまではならなくとも)なんらかのヒントを提供できれば幸いである。

適宜、Web上で他の方が書いた書評にリンクを貼る。 続きを読む

アプリカティブ関手ってなに?モノイド圏との関係は?調べてみました!

この記事は Category Theory Advent Calendar 2018 7日目 かつ Haskell (その2) Advent Calendar 2018 7日目の記事です。

Category Theory Advent Calendar 2018の6日目はcorollary2525さんの「随伴は あらゆるところに 現れる」、8日目は空席、9日目はt_uemura669101さんの「トポスと高階論理」です。

Haskell (その2) Advent Calendar 2018の6日目は空席、8日目はtakoeight0821さんの「Type defaultingについての初級的な解説」です。

この記事はどういう記事か

圏論の方から来た人向け:

デカルト積やテンソル積の一般化である「モノイド積」の話と、「内部ホム」の話をします。文献によっては内部ホムはモノイド積の右随伴として導入されますが、ここではモノイド構造を仮定せずに内部ホムの定式化(閉圏)をします。

Haskellの方から来た人向け:

この記事ではHaskellにおけるアプリカティブ関手の使い方は解説しません。Haskellの方から来た読者はすでにアプリカティブ関手をある程度知っており、圏論的な話にチョット興味がある、と仮定します。

これを読めば、「モナドは自己関手の圏におけるモノイド対象だよ、何か問題でも?」と同じノリで「アプリカティブ関手はモノイド圏における強laxモノイド関手だよ、何か問題でも?」と言って他人を煙に巻くことができます。 続きを読む

微分の連鎖律と関手性

最近(ここ半世紀くらい)圏論が流行りですね。しかし圏論は抽象的で、具体例や圏論の言葉を使うことによるメリットが見えないと、なかなかとっつき難いかもしれません。

この記事では、高校数学に出てくるアレが、実は圏論の言葉でスッキリ(?)表せることを見てみます。

予備知識:高校数学、若干の圏論、あとは多変数の微分の知識があればなお良い 続きを読む

豊穣圏の教科書

最近、豊穣圏(enriched category)という概念に触れることがあって、それの標準的な教科書って何かなあと思ったら、G.M.Kelly “Basic Concepts of Enriched Category Theory”というのがそれっぽくて、しかも無料でPDFをダウンロードできるらしい。

MacLaneのCWMには豊穣圏の名前といくつかの例は出てくるけどちゃんとした定義は出てこない。まあ、ちゃんとした定義を書こうとするとモノイド圏(monoidal category)の定義をしてうんたらしないといけないようだが。

豊穣圏というのは(今の自分の理解で)大雑把に言うと、圏のhom-setに単なる「集まり」以上の構造が入ったものである。例えば、加群の圏には、それぞれのhom-setにアーベル群の構造が入っているので、アーベル群の圏 Ab でenrichされた圏の例となっている。

別の例を挙げると、各hom-setにゼロ射が入っている圏は、それぞれのhom-setに点つき集合の構造(ゼロ射が基点)が入っているとみなせる。つまり、ゼロ射を持つ圏は、点つき集合の圏 Set* でenrichされた圏と言える。

各hom-setに構造が入っていればいいというものではなくて、Ab-enriched categoryだと射の合成が双線形、Set*-enriched categoryだとゼロ射(hom-setの基点)を合成するとゼロ射、という風に、合成の方にも条件が付いてくる。この辺の条件を表現するのに、モノイド圏の構造が必要になる。

Union Typesは直和型ではない

【2017年12月18日 追記】この記事は古いTypeScript (2.0以前) を念頭に置いている。もちろん、現在のTypeScriptにも当てはまる記事はあるだろうし、TypeScript以外の言語における合併型 (union types) についてもある程度読み替えられるかもしれない。ただしElmとは “Union Types” の用法が完全に相入れないのでElmユーザーの方はお帰りください。


TypeScript 1.4について、 TypeScript 1.4.1 変更点 – Qiita という記事が目に留まった。で、その中の
直和型(Union Types)
という項目に引っかかりを感じた。:

なぜ引っかかりを感じたかというと、TypeScriptに今回導入されたUnion Typesと、巷に言う直和型というのは、異なる概念であるからだ。

注意:以下の話は型理論の専門家でもないフツーの学生が適当に書いた程度の信憑性しかありません。

続きを読む

アーベル圏を勉強している

せっかく作ったブログをいつまでも放置するのもアレなので、最近勉強していることを書くことにする。

先学期の授業で登場したけど全然理解しないまま終わったホモロジーとかを理解したくて、どうせやるならと思ってアーベル圏の勉強をしている。本はCWMの、アーベル圏の章を進めている。

アーベル圏というのはどういう圏のことを言うのかというと、単純なものから順に定義を書いておくと

Preadditive category (前加法圏)

各 hom-set にアーベル群の構造が入っていて、射の合成が bilinear になっている圏を preadditive category という。CWMでは Ab-category と呼んでいる。

Kernel, cokernel や biproduct などの概念を定義することができる(kernel, cokernel は preadditive category でなくても、ゼロ射さえあれば定義できる)。

Additive category (加法圏)

Preadditive category であって、ゼロ対象と biproduct (直和) をもっている圏を additive category という。

Abelian category (アーベル圏)

Additive category であって、全ての射が kernel と cokernel を持っていて、全ての monic 射が kernel であり、全ての epi 射が cokernel である圏を abelian category という。

Abelian category では、射の image や coimage の概念を定義することができる。また、完全列の概念も定義できる。

…という風になる。

アーベル圏で完全列を定義できるということは、five lemma とか snake lemma を定式化できるということである。この辺のレンマの証明は、CWMではアーベル圏の章のセクション4に書かれている。

このセクションの最初の方にアーベル圏 A の短完全列の圏 Ses A が加法圏であるとさらっと書かれているが、最初に読んだときに Ses A もアーベル圏なんだと勘違いして証明を考えるのに数週間費やしてしまった。おかげで図式の扱いには慣れた気がするし、短完全列の射のカーネル、コカーネルがどうなるのかという話はスネークレンマに繋がってくるとはいえ、とんだ時間の浪費だった。

アーベル圏を勉強する前は、授業などでこれらの補題の証明にいわゆる “diagram chase” を使っているのを見て(加群の圏上ではあったが)、
「元を取ってdiagram chaseなんてしたら圏論的な証明にならないのでは!?」
と思っていたが、蓋を開けてみたら、一般のアーベル圏上で「元」に相当する概念を定義して、その「元」に対して monic や epi がそれぞれ普通の単射、全射と同じような振る舞いをすることを証明し、five lemma や snake lemma などの補題の証明では元を取って証明していたのだった。もちろん、圏論的な証明であるから、「dual を取って証明の半分を省略する」というようなことはできる。

圏論の本

【2018年12月 追記】新しい記事を書きました:圏論の入門書(2018年版)

【2018年9月8日 追記】この記事の情報は2014年2月時点のものであり、古くなっています。この記事以降、和書でも圏論の本がいくつか出てきました(中には「焚書すべき」と言われるほど酷いものもあるようですので注意してください)。最新の情報が知りたかったら、ググって出てきたより新しいページを参考にするなり、この記事のコメント欄に書き込むなりしてください。【追記終わり】

圏論について書かれた本について、私が知っているものをいくつか紹介してみる。ただし、私自身でちゃんと読んだことのないものについては中身の紹介はできない。このうちのいくつかは、知人やTwitterのフォロワーさんに教えていただいた。

  • Steve Awodey, Category Theory, 2nd ed., Oxford University Press, 2010
    • Amazon.co.jp
    • 入門向き。
    • ラムダ計算に触れている。ほか、論理式にも触れている(量化子と随伴の関係など)。
    • 随伴がこの本のラスボス的立ち位置。随伴の章の後にMonadとAlgebraの章がある。
  • F. W. Lawvere and S. H. Schanuel, Conceptual Mathematics: A First Introduction to Categories, 2nd ed., Cambirdge University Press, 2009
    • Amazon.co.jp
    • (ちゃんと読んだことはないが)入門向きだと思う。
  • S. Mac Lane, Categories for the Working Mathematician, 2nd ed., Springer, 1998
    • Amazon.co.jp
    • 中・上級者向け。
    • 圏論を勉強している人なら、読んだことはなくても名前ぐらいは聞いたことがあるだろう。
    • このブログ中ではCWMと略している。
    • 以前の記事で書いたように、SpringerのサイトでDRMなしのPDF版が買える。
  • S. マックレーン「圏論の基礎」三好 博之・高木 理 訳, 丸善出版, 2005年
    • Amazon.co.jp
    • 上記Categories for the Working Mathematicianの邦訳。書店などで手に取った方も多いだろう。
    • 原著と比べて書名以外に大きな違いがあるのかは私は知らない。
  • 竹内 外史「層・圏・トポス」日本評論社, 1978年
    • Amazon.co.jp
    • 日本語で書かれた本で書名に「圏」が入っているため、書店などで手に取った方も多いだろう。私もその一人である。
    • しかし、圏論自体の入門には向かない。私がそのように感じた理由は以下のとおり:
      • 具体的な圏の例が少ない。
      • 圏論の概念と、数学で使われている概念との対応があまり深く書かれていない。
      • 集合論的な基礎づけ(large, smallの別など)に触れていない。
    • トポスとかロジックに興味があるのであれば読む価値はあるかもしれないが、圏論についてまったくの初心者が1冊目に読む本ではないと思う。

当たり前の話だが、大学に所属している人は、買う前に図書館で見てみる・借りてみるのが良いだろう。

それぞれの本に貼ってあるAmazon.co.jpのリンクはAmazonアソシエイトのものなので、そういうのが気になる方は注意。

SpringerでCWMのPDFを買った

SpringerのCategories for the Working Mathematicianのページから、eBookとして同書のPDF版を購入した。以下、気づいた点など。

  • 購入するにはSpringerのアカウントが必要になる。アカウントはその場で作れる。
  • 支払い方法は、クレジットカード数社のほか、PayPalも利用できる。
  • ダウンロードしたPDFファイルには、各ページの下に、Springerのアカウントとして使ったメールアドレスが書き込まれている。”digitally watermarked”ということだろう。ファイルの属性かなにかとして購入者の情報が入っているかは確かめていない。
  • PDFはどうやらスキャンしたものにOCRを施したもののようだ。しおりは設定されていない。
  • PDFファイルの変更やもろもろは制限されていない。Acrobatなどのソフトウエアを持っていれば自分でしおりを設定できそう。