圏論的モダリティ(categorical modality)は、圏の対象に構造を持たせるメカニズムです。ただし、構造の素材が関手や自然変換とは限りません。モダリティは、圏の射と整合しない付加的構造を対象に導入する方法だとも言えます。
「モダリティ」という言葉は耳慣れないかも知れませんが、線形論理の意味論や微分圏では、"exponential modality", "storage modality", "resource modality", "coalgebra modality" といった言葉を使います*1。ここでは、線形論理特有のニュアンスは取り除いて、一般的な広い意味で「モダリティ」を使います*2。
僕がモダリティに興味を持つ動機については最後の節に書いてあります。
内容:
集合圏の付点モダリティ
集合圏Setにおいて、その対象(つまり集合)で添字付けられた射(写像)の族 θX:1→X を考えます。ここで、1 = {0} はSetの終対象である単元集合です。圏Setと、射の族 θ = (θX | X∈|Set|, X≠) を一緒にした(Set, θ)を考えます。
集合Xに対する θX:1→X により、Xの一点θX(0)が定まるので、空でないすべての集合が付点集合(pointed set)の構造を持ちます。ここで大事なことは、θが自然変換ではないことです。
θが自然変換 θ::(1への定数関手)⇒IdSet:Set→Set なら、任意の f:X→Y in Set に対して次の図式が可換になるはずです。
1 -(θX)→ X | |f ↓ ↓ 1 -(θY)→ Y
しかし、すべてのfに対して f(θX(0)) = f(θY(0)) なわけではありません。つまり、θは自然変換にはなりません。
θのような、自然変換とは限らない射の族を圏論的モダリティ(categorical modality)、混乱の恐れがなければ単にモダリティと呼びます(後でもっと正確な定義を述べます)。θは、各対象に付点集合の構造を与えるので付点モダリティ(pointed-set modality)と呼ぶことにします。
f(θX(0)) = f(θY(0)) であるようなfを考えることはできます。そのようなfを付点モダリティθと整合する(consistent)射と呼びましょう。θと整合する射の全体は圏Setの部分圏を定義します。その部分圏に限定するならば、先の図式は可換となるので、θは部分圏においては自然変換となります(空集合の扱いに注意が必要ですが)。
θと整合する射の全体からなる圏は、付点集合の圏PtSetとは違います。例えば、集合{0, 1}を考えると、この集合を台集合(underlying set)とする付点集合は ({0, 1}, 0), ({0, 1}, 1) の2つがあります。どちらもPtSetの対象となります。しかし、集合{0, 1}に対するモダリティ(の成分)θ{0, 1}はひとつしかありません。θ{0, 1}で導入される付点集合は、({0, 1}, 0)か({0, 1}, 1)のどちらか一方です。
集合圏Setに付点モダリティを付けることは、空でない各集合からその要素を1個選び出す究極の選択関数の存在を仮定して、そのような選択関数を1個指定することです。
ユークリッド空間のあいだのなめらかな写像の圏のベクトル空間モダリティ
初等的な多変数微分を扱う舞台となるような圏を定義しましょう。C∞(Rn, Rn) は、ユークリッド空間Rnで全域的に定義されて、Rmに値を取るなめらか(無限回微分可能)な写像の全体とします。
有限次元ユークリッド空間を対象とする圏を考えたいのですが、Rn←→n と1:1対応するので、n次元ユークリッド空間の代わりに単なる整数n(n≧0)を使うことにします。その前提で、圏ESmoothを次のように定義します。(EはEuclideanのつもり。)
集合圏の場合と同様に付点モダリティθを定義します。今回のθは、次のような非常にハッキリした定義を持ちます。
- θn:0→n in ESmooth
- その実体は、関数 θn:R0→Rn
- R0 = {0} なので、θn(0) = (Rnのゼロ) と定義する。
θ以外に、ψ = (ψn:(n + n)→n in ESmooth | n∈N), τ = (τn:n→n in ESmooth | n∈N), μ = (μn :(1 + n)→n in ESmooth | n∈N) も定義します。
- ψn:(n + n)→n の実体は、Rn×Rn→Rn の足し算。
- τn:n→n の実体 Rn→Rn は、反ベクトル(xに対する-x)を対応させる写像。
- μn :(1 + n)→n の実体は、R×Rn→Rn の(左からの)スカラー乗法。
(θ, ψ, τ, μ)は、ESmoothの各対象n(実体はRn)の上に、標準的なベクトル空間の構造を与えます。(θ, ψ, τ μ)を、圏ESmooth上のベクトル空間モダリティ(vector space modality)と呼びます。モダリティを定義するために、複数の“射の族”を使ってもかまいません。ベクトル空間モダリティでは、4つの族を使っています。
明白に書いていませんが、(θ, ψ, τ, μ)は、すべてのn(あるいはRn)において、ベクトル空間の公理を満たす必要があります(実際に満たします)。モダリティには、公理を添えてもいいのです(というか、ほとんど場合に公理も付きます)。
ESmoothの射は任意のなめらかな写像なので、ベクトル空間モダリティと整合するとは限りません。ベクトル空間モダリティと整合する射は、ユークリッド空間のあいだの線形写像です。ベクトル空間と整合する射が作るESmoothの部分圏は、行列の圏と圏同値(より強く圏同型)です。
圏論的モダリティの定義
自然変換に似ていても自然性(naturality)を持たないものを考え、それを使って改めてモダリティの定義をします。
Cを圏として、Mor(C)はCの射の集合とします。写像 ξ:|C|→Mor(C) を仮に非自然変換(non-natural transformation)と呼びましょう。これは、Cの対象で添字付けられた射の族です。S(X) := dom(ξX), T(X) := cod(ξX) と置くと、ξX:S(X)→T(X) と書けます。もちろん、S, Tは関手ではなく、関手に拡張する必要もありません。S, Tは関手である必要はありませんが、部分的に定義された関手のようなものです。さらに、ξ:|C|→Mor(C) に部分写像(未定義部分があってもいい)を許したときは、部分非自然変換(partial non-natural transformation)と呼びます。
[追記]非自然変換の定義について、別エントリー「非全域関手と非自然変換」に詳しく書きました。[/追記]
例えば、集合圏Set上の付点モダリティの θX:1→X は部分非自然変換(のX成分)です。X = に対するθ∅は定義されてないのでθは部分的です。一方、ESmooth上で定義されたθ, ξ, τ, μはいずれも全域的な非自然変換です。
圏C上で定義されたいくつかの非自然変換/部分非自然変換と、等式や可換図式で記述されたいくつかの公理(法則)を一緒にしたものを、圏Cの圏論的モダリティ、あるいは単にモダリティと呼びます。
モダリティが部分非自然変換を含む集まりで定義されているとき、そのことを強調したいなら部分モダリティ(partial modality)と呼びます。全域非自然変換だけで作られるモダリティは全域モダリティ(total modality)です。集合圏Setの付点モダリティは、空集合では定義されないので部分モダリティです。一方、ユークリッド空間のあいだのなめらかな写像の圏ESmoothの付点モダリティは全域モダリティです。
対称モノイド圏の余可換コモノイド・モダリティ
モダリティの重要な例として、対称モノイド圏の余可換コモノイド・モダリティ(cocommutative comonoid modality)を紹介します。余可換コモノイド・モダリティは、対称モノイド圏のすべての対象に余可換コモノイド構造を与えるものです。圏の射が余可換コモノイド・モダリティと整合する必要はありません。言い方を換えると、圏の射が余可換コモノイド構造に対する準同型になることは要求しないのです。
C = (C, , I, α, λ, ρ, σ) を対称モノイド圏とします。α, λ, ρはそれぞれ、結合律子(associator)、左単位律子(left unitor)、右単位律子(right unitor)、対称(symmetry)です(律子に関しては「律子からカタストロフへ」を参照)。対称モノイド圏Cの余可換コモノイド・モダリティの素材は、次の2つの全域非自然変換です。
- δX:X→XX in C
- εX:X→I in C
δXは余乗法、εXは余単位です。これらは余可換コモノイドの公理を満たします。以下で、idXを単にXと書いています。
- [余結合律] δX;(δXX) = δX(XδX)
- [左余単位律] δX;(εXX) = X
- [右余単位律] δX;(XεX) = X
- [余可換性] δX;σX = δX
対称モノイド圏Cが、余可換コモノイド・モダリティ(δ, ε)を持つとき、Cの対象はすべて余可換コモノイド構造を持つことになります。しかし、Cの射が余可換コモノイド構造の準同型になることは全く保証されません。余乗法δXや余単位εXを保存(preserve, respect)しない射がたくさんあるかも知れないのです。
[追記]余可換コモノイド・モダリティの説明はコチラにもあります。[/追記]
僕のモダリティ経験
セリンガー(Peter Selinger)の1999年の論文"Categorical Structure of Asynchrony"に、対角付き(対称)モノイド圏(monoidal category with diagonals)という概念が出てきます。これは余可換コモノイド・モダリティを持つ圏と同じものです。セリンガー論文を読んだのは随分と前ですが、自然変換とはならない(かも知れない)射の族を使う方法は印象に残っています。
最近読んだ長健太(Kenta Cho)/バルト・ヤコブス*3(Bart Jacobs)の論文"Disintegration and Bayesian Inversion, Both Abstractly and Concretely"に、セリンガーの“対角”と同じ余可換コモノイド・モダリティが出てきます。
「ンン? 非同期通信/処理とベイズ確率って何か関係あるのだろうか?」と疑問に思いました。共通点があるとすれば、部分性(partiality)や非決定性(nondeterminism)です。試しに、非負実数係数のテンソルの圏に余可換コモノイド・モダリティを入れてみると、そのモダリティと整合する部分圏として部分性と確率的非決定性の両方がうまく定義できるようです。これが分かったとき、僕にとってはA-ha momentでした。
モダリティは、“対象達が持つ構造”の圏論的な定式化のひとつです。自然性を持たず、射を準同型として扱うことは出来ませんが、非自然であり部分的かも知れないことに注意すればとても便利な概念です。
*1:例えば、Robin Cockettの"Seely categories revisited"(http://pages.cpsc.ucalgary.ca/~robin/talks/seely.pdf)、Blute, Cockett, Seelyの"Differential categories"(http://aix1.uottawa.ca/~rblute/difftl.pdf)。
*2:モダリティの本来の意味については、例えば https://ncatlab.org/nlab/show/modality 参照。
*3:英語読みなら「バート・ジェイコブス」が近いかも知れません。