このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

2-二重圏: 随伴系達の圏

基礎圏〈台圏〉を指定しないすべてのモナド達の圏をMnd、すべての随伴系〈adjunction | adjoint system〉達の圏をAdjと書くことは多いですが、MndAdjが何を意味するかは人によりバラバラです。バラバラなのはしょうがないのですが、様々な定義を記述したり比較したりするときに、基準となるような定義があると便利です。

そこで、随伴系達の圏Adjに対するひとつの定義をここで与えます。僕としては標準として使いたい定義ですね。(ここで定義する)Adjは、おおむね二重圏〈double category〉ですが、単なる二重圏よりは少し複雑で2-圏とみなすこともできます。

二重圏でもあり2-圏でもあるので、ベタに2-二重圏〈2-double category〉と呼ぶことにします。2-二重圏としての随伴系達の圏を、標準的Adjとして採用したいのです。必要に応じて、標準的Adjの一部を取ったり拡張したりする心づもりです。$`\newcommand{\vto}{\rightsquigarrow}\newcommand{\dto}{\looparrowright}\newcommand{\cat}[1]{\mathcal{#1}}\newcommand{\For}{\mbox{For }}\newcommand{\hyp}{\mbox{-}}\newcommand{\In}{\mbox{ in }}`$

内容:

2-二重圏

二重圏〈double category〉は知っているものとして、次のように記法の約束をします。二重圏の2-射〈2-セル〉をここでは二重射〈double morphism〉と呼ぶことにします。

  1. 横射〈水平射 | horizontal morphism〉は、ラテン文字大文字 F, G などで表す。
  2. 縦射〈垂直射 | vertical morphism〉は、ラテン文字小文字 f, g などで表す。
  3. 二重射は、ギリシャ文字小文字 α, β などで表す。

プロファイルに関しては:

  1. 横射のプロファイルはクネクネ矢印 F:A $`\vto`$ B で表す。
  2. 縦射のプロファイルは普通の矢印 f:A → B で表す。
  3. 二重射のプロファイルは二重矢印 α::F ⇒ G で表す。(コロン2個で2次元的射であることを示す。)

演算記号に関しては:

  1. 横射、二重射の横結合〈horizontal composition〉の図式順記号は '*' を使う。
  2. 縦射、二重射の縦結合〈vertical composition〉の図式順記号は ';' を使う。

二重射が次の形だとします。

$`\xymatrix{
*{A} \ar@{~>}[rr]^{F} \ar[d]_{f} & {} \ar@{=>}[d]|{\alpha} & *{B} \ar[d]^g \\
%
*{C} \ar@{~>}[rr]_{G} & {} & *{D}
}
`$

このとき、次の書き方をします。

  1. dom(α) = top(α) = F, cod(α) = bottom(α) = G
  2. left(α) = f, right(α) = g

2-二重圏〈2-double category〉は、二重圏の垂直射〈縦射〉の圏〈垂直圏〉が2-圏になっているものです。D が2-二重圏のとき、両端(域と余域)を共有する垂直射のあいだに2-射が存在します。この2-射はどう書き表すか? ウーム、困ったな。

f:A → B, f':A → B in D のときの2-射(二重射ではない!)を τ::f ⇒ f':A → B in D と、2-圏のときと同じに書けば分かりやすいですが、これだと二重射と区別が付きません。とりあえず τ::f ⇒t f':A → B in D と矢印の肩に't'を付けておきます。't'は、後述の transversal からです。矢印の肩に飾りは、XyJaxでは使えないので変更するかも知れません。

垂直圏のなかの2-射の“方向”は垂直とは言い難いですね。垂直方向に走る垂直射〈垂直1-射〉と“直交する”ように思えるからです。この事情で、垂直圏の2-射の方向を横断方向〈transversal direction〉と呼びましょう。方向は次のように略称します。

  1. 横方向 = h-方向 = horizontal direction
  2. 縦方向 = v-方向 = vertical direction
  3. 横断方向 = t-方向 = transversal direction

横断方向に走る垂直圏の2-射は横断2-射〈transversal 2-morphism〉と呼ぶことにします。2つの横断2-射の横断方向への結合は横断結合〈transversal composition〉です。横断結合の図式順結合記号は ';;'〈コロン2個〉にします。

注意すべきは、横断2-射は垂直圏のなかで見れば縦方向の2-射なので、次のような食い違いが生じることです。

2-二重圏内で見ると 垂直圏内で見ると
垂直射 1-射
垂直射の縦結合 ; 1-射の結合 *
横断2-射 2-射
横断2-射の横断結合 ;; 2-射の縦結合 ;
横断2-射の縦結合 ; 2-射の横結合 *

特に、「横断2-射の縦結合は2-射の横結合」はややこしいです。上下左右や方向の錯綜は、高次圏を扱うときには常につきまとう問題なので致し方ないですが、ご注意ください。

なお、3つの方向を持つ圏に関しては、次の論文が参考になります。

[補足]
上記の定義では、二重圏の垂直圏のほうに2-射を加えていますが、水平圏の側に2-射を加えることもできます。そもそも、水平/垂直の区別も根拠なき選択です。根拠がなくても、とにかく決めないといけないので、垂直射のあいだに横断2-射が在ると決めたわけです。

水平射〈横射〉のあいだに横断2-射が在るとしたほうが、記法の約束が若干簡単になる気もしますが、特に注目したい射を横射に選ぶ習慣もあるので、今回は「主役を横射にする」方針で縦横を決めました。
[/補足]

随伴系とその1-圏

サイズの問題を避けたいので、随伴系を小さい圏の圏Catのなかで考えることにして、随伴系Fの構成素を次のように書くことにします。「モナド達の上のモナド: ストリート・モナド」で参照したバヴロヴィック/ヒューズの論文にならっています。

  • F* : Fの左関手
  • F* : Fの右関手
  • ηF : Fの単位
  • εF : Fの余単位
  • LF := dom(F*) : Fの左関手の域
  • RF := dom(F*) : Fの右関手の域

LFを、随伴系Fの左域〈left domain〉、RFを、随伴系Fの右域〈right domain〉と呼ぶことにします。

念のため、構成素のプロファイルを書いておくと:

  • F*:LF → RF in Cat
  • F*:RF → LF in Cat
  • ηF::IdLF ⇒ F**F*:LF → LF in Cat
  • εF::F**F* ⇒ IdRF:RF → RF in Cat

随伴系Fの構成素をまとめて書くときは、F = (F* -| F*, ηF, εF)/(LF, RF) とします。

随伴系の圏の多様性」において、1AdjL(K), 1AdjR(K) という記法を使っています。左下添字の「1」は1-圏(普通の圏)であることを示します。右下添字の L, R は、1-圏の射としての随伴系の方向に取り方で次のとおりです。

  • 1AdjL(K) : 射としての随伴系の方向は左関手の方向に合わせる。
  • 1AdjR(K) : 射としての随伴系の方向は右関手の方向に合わせる。

随伴系の1-圏を使う人は多いですが、随伴系は対称性が高いので、射方向の選び方は完全に恣意的になります。そこで、デフォルトを決めずに左〈Left〉か右〈Right〉か明示的に書く方針でした。ですが、やっぱりデフォルト方向を決めようかな。左関手の方向にします -- 理由は何もありません。以下では、単に 1Adj(K) と書いたら 1AdjL(K) のことです。

もうひとつのデフォルトとして、随伴系達が居る2-圏K*1Catのときは次のように書きます。

  • 1Adj := 1Adj(Cat) = 1AdjL(Cat)

現実に現れる随伴系を扱うには、小さい圏の2-圏Catではなくて、小さくない圏も認めるCATのほうがいいですが、今日のところはCatをデフォルトにしておきます。

これで、1-圏(普通の圏) 1Adj の意味は定まりました。

随伴系達の2-二重圏

1-圏 1Adj の対象は圏で、射は随伴系です。つまり F:A → B in 1Adj の意味は:

  • Fは随伴系である。
  • 随伴系Fの左域(左関手の域)はAである。F*:A → B in Cat
  • 随伴系Fの右域(右関手の域)はBである。F*:B → A in Cat

これから、1Adj を水平圏とする二重圏を作ります。その二重圏を dAdj とします。二重圏 dAdj の縦射〈垂直射〉は関手だとします。次の図で、f:A → C, g:B → D が関手だということです。

$`\xymatrix{
*{A} \ar@{~>}[rr]^{F} \ar[d]_{f} & {} \ar@{=>}[d]|{\alpha} & *{B} \ar[d]^g \\
%
*{C} \ar@{~>}[rr]_{G} & {} & *{D}
}
`$

問題は「二重射 α が何であるか?」です。二重射の構成は「随伴系の二重圏」に書いているのですが、多様性を強調してゴチャゴチャしているので、端的に結論だけをここに書きます。

二重射 α は、Catにおける可逆な2-射 α::f*G* ⇒ F**g in Cat です。必要に応じてαの逆 α-1::F**g in ⇒ f*G* in Cat、αのメイト α::F**f ⇒ g**G* も使います。逆とメイトから作られる4つ組 (α, α-1, α, (α)-1) が一体となって二重射を形成するのだと思ったほうがいいでしょう。4つ組は無条件ではなくて、制約がありますが、今日は割愛します。

次の論文では、二重射を2種類に分類して、左二重射の二重圏と右二重射の二重圏(どっちが左か右かは知らない)の二種の二重圏を構成してます。これは煩雑すぎると思うので一体化させました。([追記]やっぱり二種類の二重圏が必要か?[/追記]

二重射の縦射まで含めてテキストで書くときは、α::F ⇒ B:(f, g) 、4つの対象まで含めるときは、α::F ⇒ B:(f:A → C, g:B → D) としましょう。テキストでの横向き矢印は、図では縦向き矢印です。

2-二重圏 Adj は、二重圏 dAdj に横断方向の2-射〈横断2-射〉を付け加えたものです。横断2-射 τ::f ⇒t f':A → B in Adj は関手 f から関手 f' への自然変換(Catの2-射)です。横断結合は自然変換の縦結合、横断2-射としての縦結合は自然変換の横結合です。

縦横の入れ替えがややこしいだけで、概念的には単純です。二重射 α 以外に、横断2-射も加えて絵(ショボいけど)に描くと次のようになります。

$`\xymatrix{
*{A} \ar@{~>}[rr]^{F} \ar@/^13pt/[dd]^{f} \ar@/_13pt/[dd]_{f'} \ar@{}[dd]|{\Leftarrow}
& {} \ar@{=>}[dd]|{\alpha}
& *{B} \ar[dd]^g \\
{} & {} & \\
*{C} \ar@{~>}[rr]_{G}
& {}
& *{D}
}`$

2-二重圏Adjには、4種類の射があり、6種類の結合があります。それらの結合の計算法則を列挙すると長いリストになりますが、要するに「結合的・単位的な結合がうまく計算できる」ということです。

この2-二重圏Adjが随伴系とモナドの議論をするときの基盤になってくれると期待しています。

*1:2-指標のモデルのターゲット2-圏です。