多変量正規分布 2: アフィン空間の位相的・測度的性質

前回の記事「多変量正規分布 1: アフィン空間」で、「次は二次形式」と書きましたが、その前に、アフィン空間の位相構造と測度構造について触れておきます。

Rn上の正規分布だけを考えるなら、標準的な位相と測度を意識する必要はありません。一般的な(有限次元)アフィン空間の場合でも、「Rnと同じだ」と思っていて問題はないです。が、この記事では念のために確認します。

内容:

有限次元アフィン空間の位相

多変量正規分布 1: アフィン空間 // アフィン空間」で約束したように、ベクトル空間はR上に有限次元なものだけ考えます。

標準的な有限次元ベクトル空間であるRnの位相は、実数直線Rの位相の直積位相として定義できます。あるいは、Rnユークリッドノルム〈二乗ノルム〉を入れて距離位相を考えてもいいです。他のノルム(最大値ノルムや総和ノルムなど)からでも距離位相が入ります。どの方法を採用しても、得られる位相は同じです。

なので、Rn上にはThe・位相があると言えます。通常、Rnの位相について、ことさらに言及はしません。代数的な話しかしてないこともあるでしょうが、暗黙にThe・位相を仮定していることが多いでしょう。

Vが有限次元ベクトル空間なら、有限基底の存在から、線形同型写像 Rn→V があります。線形同型写像は集合のあいだの同型写像全単射〉を与えるので、Rnの位相(べき集合の部分集合)を、Vの位相にそのまま持っていけます。こうして得られるV上の位相は、位相の転送に使った線形同型写像に依存しません。つまり、V上にも一意的なThe・位相が存在します。

特に何もしなくても、すべての有限次元ベクトル空間にThe・位相が決まり、すべての線形写像連続写像になります。この状況は次のように言えます。

  • 有限次元ベクトル空間と線形写像に関しては、位相と連続性が確実にタダで手に入る

アフィン空間 A = (A, V, α) があると、a∈A を固定した v \mapsto α(a, v) : V→A は集合のあいだの同型写像全単射〉です。この同型写像により、V上の位相をA上に転送できます。得られるA上の位相は、位相の転送に使ったa(に対応する写像)に依存しません。ここでも、一意的なThe・位相が存在します。

  • 有限次元アフィン空間とアフィン線形写像に関しては、位相と連続性が確実にタダで手に入る

ボレル測度空間

位相空間を X = (X, ΟX) と書くことにします。ここで、Xは、記号の乱用で位相空間とその台集合の両方を表します。ΟXは、Xの開集合族(=Xの位相)です。

位相空間Xに対して、ΟXを含む最小のσ代数が定まります。これを ΣΟX と書くことにします。すると、可測空間 (X, ΣΟX) ができます。位相構造のほうを忘れてしまうわけではないので、(X, ΟX, ΣΟX) と書いたほうがよいかも知れません。

ΟXから作られたΣΟXを、位相空間Xのボレルσ代数〈Borel σ-algebra〉と呼びます。「位相から作られた」という意味で、形容詞「ボレル〈Borel | Borelian〉」を使います。

ボレルσ代数の要素である集合を、ボレル可測集合〈Borel measurable set〉またはボレル集合〈Borel set〉といいます。ボレルσ代数上で定義された測度はボレル測度〈Borel measure〉です。ボレル測度は、測度としての条件は特にないので、一点測度〈ディラック測度〉のような測度もボレル測度です。人により、ボレル測度に、位相構造に関わる条件を要求することもあります。

「ボレル」=「位相から作られた」と言いましたが、「ボレル空間〈Borel space〉」は特殊な可測空間を意味することがあるので注意してください。ここでは、ボレル測度空間〈Borel measure space〉は、位相から作られた (X, ΟX, ΣΟX) にボレル測度 μ:ΣΟXR≧0∪{∞} を添えた測度空間 (X, ΟX, ΣΟX, μ) のことを意味します。ボレルσ代数は位相から一意的に決まりますが、測度の選択肢は多様なので、位相空間に対するThe・ボレル測度空間は決まりません

ボレル測度空間は、下部構造に位相構造を持っているので、位相に関する性質と測度に関する性質の両方を持ちます。例えば、位相的に「ハウスドルフな」「第二可算な」ボレル測度空間を考えることができます。測度的に「有限な」「σ-有限な」ボレル測度空間を考えることもできます。

困ってしまうのは、位相と測度で同じ形容詞が使われているときです。

  • 位相が局所コンパクト: 任意の点に対してコンパクトな近傍がとれる。
  • 測度が局所コンパクト: コンパクト集合Kの測度μ(K)が有限。

「台位相空間が局所コンパクトであるボレル測度空間」とか「局所コンパクト測度を持つボレル測度空間」とか言うしかないですね。

有限次元アフィン空間のハール測度

Vを有限次元ベクトル空間とすると、Vには標準的な位相(The・位相)がタダで付いてきます。その位相空間を V = (V, ΟV) と書きます。さらに、ΟVからのボレルσ代数もタダで付いてきます。これは、V = (V, ΟX, ΣΟV) 。

位相付き可測空間 V = (V, ΟX, ΣΟV) 上の測度は一意的ではありませんでした。が、Vの足し算と相性がいいタチのよい測度は、ほぼ一意的に決まります。

まず、タチのよいボレル測度の条件として次を要求します。

  1. 非自明である: 「任意の S∈ΣΟVに対して μ(S) = 0 となるゼロ測度」ではない。
  2. 任意のボレル集合が、測度的に、開集合で外から近似可能: S∈ΣΟV ならば、µ(S) = inf {µ(U) | S⊆U, U∈ΟV} 。
  3. 任意の開集合が、測度的に、コンパクト集合で内から近似可能: U∈ΟV ならば、µ(U) = sup {µ(K) | K⊆U, Kはコンパクト} 。
  4. 任意のコンパクト集合の測度が有限(測度的な局所コンパクト性): Kがコンパクトならば、μ(K) < ∞ 。

S⊆V, v∈V として、Sをvにより足し算(平行移動)した集合を S + v と書くことにします。このような平行移動で集合の測度が変わらないことは次のように書けます。

  • 任意の S∈ΣΟX と任意の v∈V に対して、μ(S) = μ(S + v) 。(平行移動不変性)

この平行移動不変性と、先のタチのよいボレル測度の条件を満たすような測度は、スカラー倍を除いて一意的に存在します。

有限次元ベクトル空間に限らず、位相的に局所コンパクトな群上に左作用不変(または右作用不変)な測度が存在し、群のハール測度〈Haar measure〉と呼ばれます。ハール測度は、台となる位相空間のハウスドルフ性なしで構成できます。構成法は例えば:

  • Title: ON THE EXISTENCE AND UNIQUENESS OF INVARIANT MEASURES ON LOCALLY COMPACT GROUPS
  • Author: SIMON RUBINSTEIN-SALZEDO
  • Pages: 7p
  • URL: http://simonrs.com/HaarMeasure.pdf

有限次元ベクトル空間はハウスドルフで足し算は可換なので、一般的構成より簡単な方法でハール測度を作れるでしょう(僕はよく知らんけど)。加法群としてのRn上のハール測度は、ルベーグ測度のスカラー倍になります。

というわけで、A = (A, V, α) を有限次元アフィン空間とすると、V上にはスカラー倍を除いて一意なハール測度(平行移動不変な測度)が存在します。特定のハール測度をひとつ選べば、v  \mapsto a + v : V→A でA上にハール測度を前送りできます。こうして作ったA上の測度を、アフィン空間のハール測度とします。これは、Aにおける平行移動不変な測度です。

特定のハール測度を載せたアフィン空間は、(A, ΟA, ΣΟA, λA) と書くことにします。λAが特定されたハール測度です。同一のアフィン空間上の、ハール測度による測度空間は、スカラー倍(正の実数)だけの自由度(選択肢)があります。

アフィン空間上の確率測度

アフィン空間A上の確率測度を考えましょう。確率測度は確率密度関数で定義するとします。fが確率密度関数だとすれば、部分集合〈事象〉S⊆A に対して、次の積分を計算する必要があります。

  •  \int_{x\in S}f(x)dx

この積分を計算するには、事前にA上に測度が載っている必要があります。つまり、単なるアフィン空間ではなくて、測度付きのアフィン空間でないと、密度関数による確率測度を定義できないのです。

アフィン空間A上のハール測度λAを明示的に書くならば、先の積分は次のようになります。

  •  \int_{x\in S}f(x)\lambda_A(dx)

正規分布は、密度関数で定義される確率測度なので、その舞台として“ハール測度が特定されているアフィン空間”が必要です。

線形近似としての微分係数: フレシェ微分

関数fの点aにおける微分係数は、a近辺でfを良く近似する線形写像(正確にはアフィン線形写像の線形部分)とみなせます。線形近似としての微分の一般的な形はフレシェ微分〈Fréchet {derivative | differential}〉といいます。

フレシェ微分の枠組みでは、“一実数変数・実数値の関数”でも“(無限次元でもよい)ノルム空間のあいだの写像”でも扱いは変わらないので、一般的な話をしてみます。もちろん、一実数変数・実数値の関数でも通用する話です。

内容:

はじめに

この記事は2回の続き物を予定しています。次回がいつか分かりませんが(苦笑)。なぜ2回に分けようとしたかを説明します。

一実数変数・実数値の関数を扱う場合でも、f:RR という関数だけではなくて、XをRの開区間として f:X→R、あるいはYもRの開区間として f:X→Y という形の関数も対象にします。R全体ではなくて、Rの部分集合で定義されている関数も必要なのです。

ところが、「全体ではなくて部分集合で」だと、話が面倒になってしまうところがあります。そこで今回は、「全体で」定義された関数に話を限定します。「部分集合で」は次回にします。微分公式もチェーン法則〈chain rule | 合成関数の微分公式〉だけを取り上げ、その他の微分公式は次回にします。

一般的な設定で話をしますが、「ノルム空間」という言葉が出てきたらそれを「実数全体の集合(=R)」に置き換え、「ノルム」を「絶対値」に置き換えて読めば、一実数変数・実数値のケースになります。一般的な場合と簡単(一実数変数・実数値)な場合の対応は:

一般的な場合 簡単な場合
ノルム空間 実数全体の集合
ノルム 絶対値
線形写像 正比例関数
アフィン線形写像 1次関数

フレシェ微分については、ジョーダン・ベルの論説に要領よくまとまっています。

アフィン線形近似

U, V はノルム空間〈normed spaces〉とします。ノルム空間を知らなければ、U = V = R と考えてください。f:U→V は連続写像とします。以下、連続写像しか考えません。なお、「写像」と「関数」という言葉は完全な同義語として使い、どっちを使うかは気分次第です。

A:U→V は線形写像とします。線形写像も連続なものだけを考えます(無限次元のノルム空間では、連続でない線形写像も存在します)。線形写像Aに関しては、A(x) を単に Ax とも書きます。線形写像に大文字を使ったのは、行列をイメージすればいいからです。U, V が Rn, Rm のケースでは、線形写像Aは、m行n列の行列と同一視できます。n = m = 1 なら、Aは1個の数(スカラー)による掛け算(=正比例関数)です。

次の形の写像 ℓ:U→V をアフィン線形写像〈affine linear map〉、または単にアフィン写像〈affine map〉と呼びます。

  • x∈U に対して、ℓ(x) = b + A(x - a)
  • a∈U, b = ℓ(a) ∈V, A:U→V は(連続な)線形写像

x - a を uと置くと、u = x - a, x = a + u なので:

  • u∈U に対して、ℓ(a + u) = b + Au
  • a∈U, b = ℓ(a) ∈V, A:U→V は(連続な)線形写像

この状況で、xは点を表す変数、aは定点を表す定数、uはa周辺の変位ベクトルを表す変数と考えます。

一般の連続写像 f:U→V を、アフィン線形写像 ℓ:U→V で近似することを考えます。雰囲気的には:

  • f(x) ≒ ℓ(x) = b + A(x - a)

あるいは、

  • f(a + u) ≒ ℓ(a + u) = b + Au

アフィン線形写像の定数項bをf(a)にとれば、f(a) = ℓ(a) になるので、b = f(a) とします。

近似アフィン線形写像ℓともとの写像fの差をとります。

  • p(u) := f(a + u) - ℓ(a + u)

aの周辺だけを問題にしているので、近似誤差を表す関数pの変数はxではなくてu(aのまわりを動く局所的な変数)を使います。p(0) = f(a) - ℓ(a) = f(a) - b = 0 なので、u = 0 (x = a)においてfとℓの値は一致しています。つまり、0次近似は完全に(誤差なく)出来ています。

“近似関数ℓ”と“もとの関数f”との“a周辺での差”であるpは、"remainder"と呼ばれます。"remainder"は「剰余項」と訳されるようですが、割り算の余りのイメージが強いので、残余項、または単に残余とします。良い近似とは、残余が小さい近似ということになります。

スモールオー関数

良い近似は残余が小さい近似です。ここで「小さい」をハッキリさせます。「小さい」は、雰囲気的には「ゼロに近い/ほとんどゼロ/無いに等しい」とか言ってもいいでしょう。この雰囲気は、次のスモールオー関数により定式化できます。

p:U→V がスモールオー〈small-o | little-o〉であるとは:

  1. pは連続関数
  2. p(0) = 0
  3. |u| → 0 のとき、|p(u)|/|u| → 0

ベクトル(ノルム空間の要素)のゼロもスカラーRの要素)のゼロも同じ'0'で書いているので注意してください。三番目の条件は、極限に関するもので、uのノルム(普通の絶対値記号を使っています)が0に近づくとき、p(u)のノルムとuのノルムの比が0に近づくことを意味します。f(x) = x2 : RR はスモールオーな関数で、f(x) = x : RR はスモールオーな関数ではありません。

「近づく」は不正確に思えますが、次の論理式の略記だと思えば厳密な意味を持ちます。(R>0は、正の実数の集合です。)

  • ∀δ∈R>0.∃δ∈R>0.(|u| < ε ⇒ |p(u)|/|u| < δ)

極限・収束に関するこのような表現方法については、次の記事を参照してください。

'∀'と'∃'に慣れてなかったら、次の記事を読むといいでしょう。

スモールオーという呼び名は、ランダウのスモールオー記号にちなんだものです。pがスモールオーであるとは、値p(u)が変数uよりも速くゼロに近づくことです(雰囲気は)。さらに雰囲気的で古臭い言い方をするなら、「uが無限小のとき、p(u)は“高位の無限小”である」となります。「無限小」や「高位の無限小」は意味不明ですが、無限小自体を合理化しようとは意図してないので気にしないでください。

冒頭の節で紹介したベルの論説では、スモールオー関数を残余〈remainder〉と呼んでますが、ちょっと混乱しそう*1なので、スモールオーであることと残余(近似関数ともとの関数の差)であることは区別します。

有界線形写像

この節は、無限次元のノルム空間の場合の話で、U = Rn, V = Rm のときは気にする必要がないので飛ばしてもかまいません。ただし、線形写像 A:RnRm のノルムの定義だけは必要です(すぐ下に書きます)。

線形写像 A:RnRm に対して、単位球体 {x∈Rn | |x| ≦ 1} の像集合 {y∈Rm | ∃x∈Rn.(|x| ≦ 1 かつ y = Ax)} の“最大半径”をAのノルム〈norm of A〉と呼び、|A| と書きます。|A| = α と置くと、次が成立します。

  • |u| ≦ 1 ならば、|Au| ≦ α
  • 0 < β < α であるβ(そういうβがあれば)に対して、|u| ≦ 1 かつ |Au| > β となるuが存在する。

これが、「単位球体の像の最大半径」の実質的な意味です。

n = m = 1 で、A:RR のとき、線形写像Aのノルム|A|は、正比例関数Aの比例定数の絶対値です。

さて、有限次元とは限らないノルム空間での話をします。ノルム空間Uの、aを中心として半径αの開球体を B(U, a, α) と書くことにします。開球体〈open ball〉でも閉球体〈closed ball〉でもどっちでもいいのですが、開球体だと別の目的(位相の開基)でも使えるので、開球体を使います。開球体/閉球体の別により、不等式のイコールの部分がちょっと違ってきます。

  • B(U, a, α) := {x∈U | |x - a| < α}

開球体の中心が原点(ゼロベクトル)0のときは、単に B(U, α) とも書きます。

  • B(U, α) := B(U, 0, α)

線形写像 A:U→V が有界〈bounded〉とは、単位開球体 B(U, 1) のAによる像が有界なことです。つまり、適当な正実数定数βがあって、B(U, 1)のAによる像がVの原点から距離β以内に収まることです。

  • ∀u∈U.(|u| < 1 ⇒ |Au| < β)

AによるB(U, 1)の像を A*(B(U, 1)) と書けば、次でも同じです。

  • A*(B(U, 1)) ⊆ B(V, β)

Aが有界なので、実数の集合 {β∈R | A*(B(U, 1)) ⊆ B(V, β)} は空ではありません。なので、下限〈infimum | 最大下界 | greatest lower bound〉が存在します。その下限がAのノルムです。

  • |A| := inf {β∈R | A*(B(U, 1)) ⊆ B(V, β)}

UからVへの有界線形写像の全体を BL(U, V) とすると、BL(U, V) の足し算/スカラー倍と共に今定義したノルムを考えると、BL(U, V) は実際にノルム空間になります。

各種の関数空間

U, V をノルム空間として、UからVへの写像の全体 Map(U, V) は、写像の足し算/スカラー倍でベクトル空間になります。Map(U, V) は一般的過ぎてあまり意味がないのですが、有用な関数からなる部分空間があります。

  1. C(U, V) -- UからVへの連続写像の全体
  2. BL(U, V) -- UからVへの有界線形写像の全体
  3. o(U, V) -- UからVへのスモールオー関数の全体

これらはどれも、ベクトル空間になっています。つまり、足し算とスカラー倍で閉じています。BL(U, V) は前節で述べたようにノルム空間になっています。

s:U→V が安定関数〈stable function〉であることを次のように定義します。

  1. sは連続写像
  2. s(0) = 0
  3. 適当な正実数 ε, γ があって、|u| < ε ⇒ |s(u)| < γ|u| が成立する。

三番目は、|u|を十分小さくすれば、比 |s(u)|/|u| を定数γで抑えられることを意味します。sは、原点〈ゼロベクトル〉付近で伸縮率が矢鱈に大きくなるような写像ではありません。原点から離れた所での挙動は特に規定されていません。s(0) = 0 である連続写像でも、安定でないものがあります。例えば、f(x) = x×sin(1/x) : RR は安定ではありません。

UからVへの安定関数の全体を Stbl(U, V) と書きます。Stbl(U, V) もベクトル空間になります。

C(U, V), BL(U, V), o(U, V), Stbl(U, V) がどんな関係かを、証明は後回しで述べておきます。スモールオー関数と安定関数の定義から、

  • o(U, V) ⊆ C(U, V)
  • Stbl(U, V) ⊆ C(U, V)

は自明に言えます。定義から直接は言えませんが、次も証明できます。

  • BL(U, V) ⊆ C(U, V)
  • C(U, V)∩L(U, V) = BL(U, V) (L(U, V) は、UからVへの連続かどうか分からない線形写像の全体)

したがって、o(U, V), Stbl(U, V), BL(U, V) は、ベクトル空間 C(U, V) の部分ベクトル空間です。次の包含関係があります。

  • o(U, V) ⊆ Stbl(U, V)

これを示しましょう。p:U→V をスモールオー関数とします。正実数δをどう選んでも、εをうまく選べば、|u| < ε ⇒ |p(u)| < δ|u| と出来ます。最初に選んだδをγと置けば、これは、安定関数の三番目の条件を満たすことになります。一番目と二番目の条件は定義から明らかです。よって、スモールオー関数sは安定関数です。

次の包含関係もあります。

  • BL(U, V) ⊆ Stbl(U, V)

これも示しましょう。A:U→V を有界線形写像で、|A| = α とすれば、|u| < 1 ⇒ |Au| < α が成立します。w = (1/α)u, u = αw と置けば、|αw| < 1 ⇒ |A(αw)| < α と書けます。|αw| < 1 ⇔ |w| < 1/α 、|A(αw)| < α ⇔ |Aw|α < α ⇔ |Aw| < 1 なので、|w| < 1/α ⇒ |Aw| < 1 が成立します。これは、ε = 1/α, γ = 1 と置いた安定関数の三番目の条件です。一番目と二番目の条件は定義から明らかなので、有界線形写像Aは安定関数です。

o(U, V) も BL(U, V) も Stbl(U, V) の部分ベクトル空間空間であることが分かりました。o(U, V) と BL(U, V) は、Stbl(U, V) 内で全然異なった部分空間になっています。このことを正確に言うと:

  • o(U, V)∩BL(U, V) = {0}

p:U→V がスモールオー関数で、有界線形でもあるとします。有界線形なので、ノルム |p| = α が定まり、|u| < 1 ⇒ |p(u)| < α が成立します。αがゼロでないと仮定して矛盾を導きましょう。

αがAのノルムであることから、0 < β < α であるβに対して、|u| < 1 かつ β < |p(u)| となる u∈U をとれます。そのようなuはゼロでないので(u = 0 だと β < |p(u)| とはならない)、β/|u| < |p(u)|/|u| 。正の実数εに対する εu というベクトルを考えて、ε → 0 とすると、|εu| → 0 だが、|p(εu)|/|εu| は β/|εu| = (β/ε)|u| より大きくなって0に収束することが出来ません。これは、pがスモールオーであることに矛盾します。

よって、α = |p| = 0 であり、p = 0 が結論できます。

部分ベクトル空間 o(U, V) と BL(U, V) は、ベクトル空間 Stbl(U, V) のなかで原点(ゼロベクトル=ゼロ写像)しか共通部分がなく、異なった方向に広がっています。

良い線形近似とその一意性

U, V をノルム空間、f:U→V を連続写像、a∈U とします。ℓ:U→V を、ℓ(x) = f(a) + A(x - a) で定義されるアフィン線形写像とします。A:U→V は有界線形写像です。有界線形写像Aをデタラメに選ぶと、fとℓは似てないことになります。ℓがfを良く近似〈good approximate〉していることを、残余 p(u) = f(a + u) - ℓ(a - u) がスモールオーであることだと定義します。

  • p(u) = f(a + u) - ℓ(a - u)
  • f(a + u) = f(a) + Au + p(u)
  • p:U→V はスモールオー

このとき、(有界な)近似線形写像 A:U→V を点aにおけるfの微分係数〈differential coefficient〉と呼びます。

以上の定義だと、良い近似線形写像微分係数の一意性は分かりません。異なる2つの微分係数があるかも知れません。

実際には一意的であることを示しましょう。A, B:U→V を2つの良い近似線形写像微分係数だとすると:

  • f(a + u) = f(a) + Au + p(u), p∈o(U, V)
  • f(a + u) = f(a) + Bu + q(u), q∈o(U, V)

この2つの等式を引き算すると:

  • f(a) + Au + p(u) - (f(a) + Bu + q(u)) = 0

これより、

  • (A - B)u = (q - p)(u)

uはU上を任意に動けるので、

  • A - B = q - p

BL(U, V) も o(U, V) もベクトル空間だったので、(A - B)∈BL(U, V), (q - p)∈o(U, V) 。A - B = q - p より、(A - B)∈o(U, V) 。ところが、前節の結果より、BL(U, V)∩o(U, V) = {0} だったので、(A - B) = 0、つまり A = B 。

良い線形近似は一意に定まります。ですから、最良の線形近似〈best {approximate | approximation}〉と言ってもいいことになります。

スモールオー関数と安定関数の結合〈合成〉

U, V, W をノルム空間とします。p, q, s, t を次のような関数だとします。

  1. p∈o(U, V)
  2. q∈p(V, W)
  3. s∈Stbl(U, V)
  4. t∈Stbl(V, W)

これらを結合〈合成〉すると、次のような関数ができます。スモールオーの'o'と、写像の反図式順結合記号'\circ'が紛らわしいので注意してください。

  1. q\circp:U→W
  2. t\circs:U→W
  3. t\circp:U→W
  4. q\circs:U→W

これらの結合関数〈合成関数〉が、再びスモールオー関数または安定関数になるでしょうか? 結論を言えば:

  1. q\circp∈o(U, W)
  2. t\circs∈Stbl(U, W)
  3. t\circp∈o(U, W)
  4. q\circs∈o(U, W)

表にまとめると次のようです。

結合 o Stbl
o o o
Stbl o Stbl

あるいは、次のようにも書けます。結合が反図式順なので左右が不自然で、スモールオー'o'と結合記号'\circ'がほんとに紛らわしいけど*2

  1. o(V, W)\circo(U, V) ⊆ o(U, W)
  2. Stbl(V, W)\circStbl(U, V) ⊆ Stbl(U, W)
  3. Stbl(V, W)\circo(U, V) ⊆ o(U, W)
  4. o(V, W)\circStbl(U, V) ⊆ o(U, W)

これらの証明は後回しにして、応用としてチェーン法則〈合成関数の微分公式〉を示してみます(次節)。

チェーン法則

U, V, W はノルム空間で、f:U→V, g:V→W は連続写像とします。fは a∈V で最良線形近似 A を、gは b = f(a) ∈V で最良線形近似 B を持つとします。つまり:

  • f(a + u) = f(a) + Au + p(u) , p∈o(U, V)
  • g(b + v) = g(b) + Bv + q(v) , q∈o(V, W)

r(u) := Au + p(u) と置きます。A∈BL(U, V), BL(U, V) ⊆ Stbl(U, V) から A∈Stbl(U, V) 、p∈o(U, V), o(U, V) ⊆ Stbl(U, V) から p∈Stbl(U, V) 。Stbl(U V) はベクトル空間(足し算で閉じている)ので、r = A + p ∈Stbl(U, V) です。

b = f(a), v = r(u) を、g(b + v) = g(b) + Bv + q(v) に代入すれば:

  • g(f(a) + r(u)) = g(f(a)) + Br(u) + q(r(u))

[追記]ここから先何行かで、「p」と書くべきところが「r」になってました。修正しましたが、単に文字を置換しただけなので、消し線は使っていません。[/追記]

この等式の左辺は、g(f(a) + r(u)) = g(f(a) + Au + p(u)) = g(f(a + u)) = (g\circf)(a + u) 。右辺に出現する r(u) の一箇所を展開すると:

  • (g\circf)(a + u) = (g\circf)(a) + BAu + Bp(u) + q(r(u))

Bp(u) + q(r(u)) が o(U, W) に入ることが分かれば、この等式は g\circf の最良線形近似が BA であることを示します。

Bp(u) = (B\circp)(u), q(r(u)) = (q\circr)(u) なので、Bp(u) + q(r(u)) = (B\circp + q\circr)(u) 。B∈BL(V, W) ⊆ Stbl(V, W), p∈o(U, V) に、前節の結合に関する法則を適用して、B\circp∈o(U, W)。同様に、q\circr∈o(U, W) も言えるので、(B\circp + q\circr)∈o(U, W) です。

以上より、t := B\circp + q\circr とおいて、次のように書けます。

  • (g\circf)(a + u) = (g\circf)(a) + BAu + t(u), t∈o(U, W)

[追記]ここまで[/追記]

これで、g\circfの点aにおける最良線形近似が BA:U→W であることが確認できました。f'(a) = A, g'(b) = g'(f(a)) = B というよく使われる記法によれば:

  • (g\circf)'(a) = g'(f(a))f'(a)

お馴染みのチェーン法則です。

省略した証明

後回しにした証明をここでするのか、というと、しません。どんなことが後回しになっていたかだけ記しておきます。U, V, W はノルム空間です。

  1. UからVへの連続写像の空間 C(U, V) がベクトル空間になること。
  2. UからVへのスモールオーな関数の空間 o(U, V) がベクトル空間になること。
  3. UからVへの有界線形写像の空間 BL(U, V) がベクトル空間、そしてノルム空間になること。
  4. UからVへの安定な関数の空間 Stbl(U, V) がベクトル空間になること。
  5. BL(U, V) ⊆ C(U, V)
  6. C(U, V)∩L(U, V) = BL(U, V)
  7. p∈o(V, W), q∈o(V, W) ⇒ q\circp∈o(U, W)
  8. s∈Stbl(U, V), t∈Stbl(U, V) ⇒ t\circs∈Stbl(U, W)
  9. p∈o(V, W), t∈Stbl(U, V) ⇒ t\circp∈o(U, W)
  10. s∈Stbl(U, V), q∈o(V, W) ⇒ q\circs∈o(U, W)

登場した関数空間に慣れるのによい練習問題かと思います。

*1:「残余が残余であることを証明する」とか言うことになります。

*2:図式順結合記号';'を使うなら、o(U, V);o(V, W) ⊆ o(U, W) のように自然な形に書けます。

多変量正規分布 1: アフィン空間

確率モデルのひとつであるガウス/マルコフ・モデルを理解したいのですが、その前に、多変量〈多次元〉正規分布を理解しないといけないようです。なので、多変量正規分布を調べています。

多変量正規分布を理解するための予備知識を何回かに分けて書くつもりです。今回はアフィン空間の話しかしてないので、この記事単独でアフィン空間に関する記事として読めます。アフィン空間上に載る正規分布の話は(いつか分からないが)次回以降です。

内容:

はじめに

多変量正規分布は、たいていRn上の確率密度関数を使って定義します。「Rnを使う」ってことは、基底(あるいは座標)を固定していることになります。基底〈座標〉に依存するのが、なんかイヤだなー、って気がします。

多変量正規分布が載る空間は、通常、n次元のベクトル空間ですが、正規分布を平行移動しても正規分布なので、台空間はベクトル空間つうよりアフィン空間でしょう。アフィン空間をベクトル空間で代用しても特に問題はないですが、原点を固定して扱うのが若干気持ち悪い。

上記ニ点の「イヤだなー」「気持ち悪い」を解消するために、アフィン空間上で、基底〈座標〉によらないスタイルで多変量正規分布を定義したいと思います。以下、多変量のケースを扱うので、単に「正規分布」と言ってもそれは多変量正規分布を意味します。1変量〈1次元〉のときはその旨断ります。

目的は概念をハッキリさせることなので、「できるだけ少ない予備知識で」は諦めます。具体的に言えば、測度論の概念は使います。確率統計的な概念がハッキリしない/モヤッとしている原因の相当な部分が「測度論を避ける」ことに起因してると思うので、ハッキリさせたいなら測度論的な議論は避けられないと思います。

基底〈座標〉を使った具体的な計算はしません。これは、主義主張とは無関係で、僕がそういう計算が苦手だから、という理由だけです。細かい議論が省略されていたら、それも僕がよく分かってないか、横着してるんだ、と思ってください。

アフィン空間

ベクトル空間は、R上の有限次元ベクトル空間だけを考えます。以下、単に「ベクトル空間」と言ったらR上の有限次元ベクトル空間です。

Xを集合、Vをベクトル空間(今したお約束で、R上に有限次元)とします。Xの要素を点、Vの要素をベクトルと呼び、x, y∈X, u, v∈V などの文字を使います。X, V と、写像 α:X×V→X を一緒にした (X, V, α) がアフィン空間〈affine space〉だとは、次の性質を持つことです*1

  1. αは、VのXへの作用〈action〉になっている*2。つまり:
    1. For x∈X, u, v∈V, α(x, u + v) = α(α(x, u), v)
    2. For x∈X, α(x, 0) = x
  2. For x, y∈X, α(x, v) = y となる v∈V が一意的に存在する。

α(x, v) を、足し算記号を流用して a + v と書くことにします。Vの足し算と演算子オーバーロード〈多義的使用〉になるので注意してください。オーバーロードされた足し算記号を使うと、上記の二つの等式は次のように書けます。

  • x + (u + v) = (x + u) + v
  • x + 0 = x

「α(x, v) = y となるv」は、引き算記号を流用して、v = y - x と書くことにします。オーバーロードされた引き算記号を使うと:

  • x + (y - x) = y
  • (y - x) + (z - y) = z - x
  • x - x = 0

などが成立します。

v∈V に対して、x \mapsto x + v : X→X という写像は、vによる平行移動〈parallel {translation | displacement | moving}〉*3といいます。一方、a∈X を選んで固定すると、v \mapsto (a + v) : V→X という写像が定義され、これは集合の同型〈全単射〉になります。この写像の逆写像は x \mapsto (x - a) : X→V です。

  • (a + v) - a = v
  • a + (x - a) = x

オーバーロードされていることに注意さえすれば、足し算記号/引き算記号はうまく働きます。

a∈X を選んで固定すると、XとVを同一視できることが、アフィン空間の代わりにベクトル空間Vだけを考えても差し支えない理由です。が、a(原点)を固定する時点で恣意的な選択が入ります。恣意性を構造に入れたくないなら、ベクトル空間ではなくてアフィン空間を使うことになります。

アフィン空間をAで表すとき、A = (XA, VA, αA) と書きます。例によって記号を乱用して A = (A, VA, αA) とも書きます。A = (A, V, α), B = (B, W, β) のような書き方も使います。

アフィン写像

A = (A, V, α), B = (B, W, β) を2つのアフィン空間とします。集合のあいだの写像 f:A→B と線形写像 ℓ:V→W の組 (f, ℓ) で、次を満たすものをアフィン線形写像〈affine linear map〉、または単にアフィン写像〈affine map〉といいます。

  • For x∈A, v∈V, f(α(x, v)) = β(f(x), ℓ(v))

足し算記号を使ったほうが分かりやすいでしょう。

  • For x∈A, v∈V, f(x + v) = f(x) + ℓ(v)

f:A→B は点のあいだの写像、ℓ:V→W はベクトルのあいだの写像で、平行移動を(ℓを通して)保存する性質を持ちます。

また記号の乱用で、アフィン写像 (f, ℓ) を、f = (f, ℓ) のように書きます。アフィン写像全体と点の写像をどちらもfで表します。ℓはアフィン写像fの一部なので、f = (f, ℓf) とも書きます。

f = (f, ℓf) :A→B, g = (g, ℓg) :B→C が2つのアフィン写像のとき、結合〈合成〉 f;g = (f;g, ℓf;ℓg) :A→ C も再びアフィン写像になります。また、idA = (idA, idVA) :A→A もアフィン写像です。

これらのことを一言でいえば、アフィン空間の全体と、それらのあいだのアフィン写像の全体は圏をなします。この圏をAffと置けば:

  • 圏の対象: |Aff| = Obj(Aff) := (すべてのアフィン空間のクラス)
  • 圏のホムセット: For A, B∈|Aff|, Aff(A, B) = (AからBへのアフィン写像の全体である集合)

アフィン枠とアフィン座標

Vがn次元ベクトル空間であるとき、Vの基底に順番を付けたリスト (v1, ..., vn) をベクトル空間の枠〈frame of a vector space〉、または線形枠〈linear frame〉といいます。A = (A, V, α) がアフィン空間のとき、Aの要素〈点〉aと、Vの線形枠 (v1, ..., vn) を一緒にした (a, v1, ..., vn) をアフィン線形枠〈affine linear frame〉またはアフィン枠〈affine frame〉といいます。

ベクトル空間の線形枠 v = (v1, ..., vn) があると、それに伴う線形同型写像 φ:Rn→V が誘導されます。

  • φ(ξ1, ..., ξn) := v1ξ1 + ... + vnξn

線形枠vと線形同型写像φは1:1に対応するので、あまり区別しないで、写像φのことも線形枠と呼びます写像としての線形枠 φ:Rn→V の逆写像 φ-1:V→Rn を、Vの線形座標〈linear {coordinates | coordinate system}〉と呼びます。

アフィン空間Aのアフィン枠 (a, v) に対しても、アフィン写像 f = (f, ℓf) が誘導されます。

  • f:Rn→A, f(ξ1, ..., ξn) := a + v1ξ1 + ... + vnξn
  • f:Rn→V, ℓf1, ..., ξn) := v1ξ1 + ... + vnξn

アフィン枠 (a, v) とアフィン写像 f = (f, ℓf) も1:1に対応するので、アフィン枠から誘導されるアフィン写像もアフィン枠と呼びます
写像としてのアフィン枠 f:Rn→V, ℓf:Rn→V の逆写像(の組) (f-1, (ℓf)-1) を、Aのアフィン座標〈affine {coordinates | coordinate system}〉と呼びます。

アフィン空間Aのアフィン枠(原点と線形枠)を固定すると、A = (A, V, α) は、Rn上の標準的アフィン構造 Rn = (Rn, Rn, (+)) と同一視できます。ここで、(+):Rn×RnRn は標準的な足し算です。

具体的な計算をしたいときは、アフィン枠を固定して、A = (A, V, α) を Rn = (Rn, Rn, (+)) で表現します。アフィン写像 f:A→B は、Aのアフィン枠 (a, v1, ..., vn) とBのアフィン枠 (b, w1, ..., wm) により、RnRm写像を定めます。fの線形パートℓfを表現するm行n列の行列と、f(a)∈B を表すm行縦ベクトル〈1列行列〉でfを表示できます。この行列と縦ベクトルは、当然にアフィン枠の取り方に依存して変わります。


今日はアフィン空間を定義しただけです。次回はたぶん、アフィン空間上の二次形式の話をします。二次形式は、正規分布の密度関数において“指数の肩に乗せる量”として必要です。

*1:ベクトル空間の加法群を一般の位相群Gにして、条件を若干ゆるめると、Gの等質空間〈homogeneous space〉という構造になります。

*2:正確には右作用です。ベクトルの足し算は可換なので、右作用でも左作用でも同じですが、右作用のほうが見やすいと思います。

*3:"parallel transport"というと、微分幾何における平行移動を意味するようです。

「従う」の使用例:正規分布とカイ二乗分布

昨日の記事「確率変数が分布に「従う」とは」で、「従う」という言葉の使い方を説明しました。この記事では、その使用例をひとつ挙げます。


「確率変数が分布に従う」という言い方の例として、こんなのがあります。

独特の言い回しに不案内だった僕は、この文言が「いかなる状況において、いかなる事態を記述しているのか?」皆目サッパリ理解出来ませんでした。

まず、記述が少し雑なので補足すると; ここでの確率変数は実数値の確率変数です。つまり、可測写像 X1, X2 の余域は実数の集合Rになります。独立といっているので、これらの可測写像の域は同一な集合(確率空間の台集合)Aです。また、正規分布として標準的なパラメータを持つ N(0, 1) を採用します。

先の文言「確率変数X1とX2」が記述する状況は、確率空間 A = (A, ΣA, μA) があり、Rを台とする標準的な可測空間*1 R = (R, ΣR) への2つの可測写像 X1, X2:A→R がある状況です。

X1, X2 が独立であることから、デカルトペア <X1, X2>:A→R×R により、R2 = R×R 上に同時確率分布を構成できます。νをその同時確率分布とすると、次が成立します。

  1. ν = <X1, X2>*A)
  2. X1が N(0, 1) に従うので、(X1)*A) = N(0, 1)
  3. X2も N(0, 1) に従うので、(X2)*A) = N(0, 1)
  4. νは、2つの独立な周辺分布 N(0, 1) の同時分布だから、ν = (X1)*A)\otimes(X2)*A) = N(0, 1)\otimesN(0, 1) (記号'\otimes'は、2つの測度の直積測度を表します。)

独立性、同時分布、周辺分布については次の記事を見てください。

q:R2R を q(x1, x2) := x12 + x22 と定義します。<X1, X2>:A→R2 は可測写像(確率変数とは単なる可測写像のこと)で、q:R2R も可測写像なので、その結合〈合成〉 Y := <X1, X2>;q : A→R も可測写像、つまり確率変数です。

確率変数 Y:A→R による確率測度 μA の前送りは、R2上の確率測度 ν = N(0,1)\otimesN(0, 1) のqによる前送りと同じです。

  • Y*A) = (<X1, X2>;q)*A) = q*(<X1, X2>*A)) = q*(ν) = q*(N(0, 1)\otimesN(0, 1))

「Yはカイ二乗分布に従う」は、「Yの分布はカイ二乗分布だ」と言っても同義なので、Y*A) = q*(N(0, 1)\otimesN(0, 1)) がカイ二乗分布だと言っていることになります。

結局、R2上の分布 N(0, 1)\otimesN(0, 1)(これは2次元の正規分布になります)を、q:R2R で前送りしたR上の分布としてカイ二乗分布が定義されます。状況と事態に関する情報の多くが、暗黙の前提に含まれていたのですね。

*1:Rの標準的な位相から導かれるボレル可測空間です。

確率変数が分布に「従う」とは

確率統計に出てくる「よく分からない言葉」を、多少は「分かる言葉」にしようと詮索した記事を、過去に幾つか書きました。そのリストはこの記事の最後に載せることにして、扱った「よく分からない言葉」は:

  • 確率変数
  • 分布
  • 母集団
  • 標本

これらは「意味不明な用語の四天王」と言えます(「超曖昧語「母集団」「標本」にケリをつける」)。

四天王の2つを含むフレーズに「確率変数が分布に従う」という言い回しがあります。これはどんな意味なのでしょう?

内容:

実例は:

復習:確率変数と確率分布

過去記事を参照しなくて済むように、手みじかに復習します。確率測度、可測写像、確率空間の定義はハッキリしているので、これらをもとにして、意味不明な用語を解釈することにします。目的は意味をハッキリさせることで、教育的配慮とかは無視します。

確率空間は、A = (ΩA, ΣA, μA) のように書きます。ここで、

  • ΩA は、台集合。単なる集合。
  • ΣA は、集合ΩA上のσ代数。
  • μA は、可測空間 (ΩA, ΣA) 上の確率測度。

記号の乱用で、A = (A, ΣA, μA) とも書きます。

Aを確率空間、V = (V, ΣV) を可測空間として、(ここでは)確率変数とは、f:A→V という可測写像です。fにより、A上の確率測度 μA は前送りできるので、前送りされた測度を f*A) と書きます。

(V, ΣV, f*A)) は確率空間になります。f*A) を μV と置くと、確率変数 f:A→V は、(A, ΣA, μA)→(V, ΣV, μV) という確率空間のあいだの準同型写像(確率測度を保存する可測写像)とみなせるので、「確率変数とは確率空間のあいだの準同型写像だ」という定義も(必要に応じて)使います。

確率分布は、基本的には確率測度のことです。すべての確率測度ではなくて、その一部分だけを考えるときに、「測度」より「分布」を使う傾向があるようです。例えば、密度関数を持つ確率測度だけを考えるなら、「確率分布=確率密度関数」となります。離散確率測度だけを考えるなら、「確率分布=確率質量関数」となります。「確率分布」という言葉には、暗黙の制約が含まれているわけです。

また、確率変数 f:A→V に対して、fによる前送り測度 f*A) を、fの確率分布と呼びます。この場合は、可測写像fと、その余域上の確率測度の関係を「確率分布」という言葉で表現しています。ここでも、「確率分布」という言葉が背後にある確率変数を暗示していることになります。

混乱の恐れがなければ、確率分布を単に分布といいます。これは、単に横着した略称に過ぎず、特別な意味はないです。

「従う」とは

「確率変数fが分布νに従う」という言い方に特に新しい意味はなくて、次の言い方と同じです。

  • 確率変数fの分布はνである。
  • 確率変数fによる前送り測度はνである。
  • f:(A, ΣA, μA)→(V, ΣV, μV) は確率空間のあいだの準同型写像で、ν = μV = f*A)

ただし、特定の分布(確率測度)νを出さずに、モヤッと「従う」を使うことがあります。「確率変数fが正規分布に従う」のような言い方です。このときは、特定の正規分布ではなくて、正規分布の族に「従う」ということになります。

「族」は「集合」のことですが、パラメータ表示される集合を「族」と呼ぶ傾向があります。実数Rを台集合とする正規分布の族は、R×R>0 = {(μ, δ)∈R2 | δ > 0} でパラメータ表示されます。

  • NR:R×R>0→Meas(R)

Meas(R)は、R上の(標準的な可測構造に関する)測度の全体です。パラメータ (μ, δ) は、平均と分散の組です。通常は、なぜかδの正平方根をσとして、NR(μ, σ2) と書かれます(そういう習慣)。

パラメータ表示 NR:R×R>0→Meas(R) の像集合が、正規分布の集合になります。

と置きます。

さて、確率変数 f:A→R がモヤッと「正規分布に従う」と言った場合、その意味は次のことでしょう。

  • f*A)∈ND

集合NDにはパラメータ表示があったので、次のように言えます。

  • f*A) は、適当なパラメータ (μ, σ2)∈R×R>0 により、f*A) = NR(μ, σ2) と書ける。

多くの場合、背後にある確率空間 (A, ΣA, μA) に明示的には言及しないので、結局のところ、「R上で、とある正規分布(と呼ばれる確率測度)を考えましょう」と言っているのと同じです。

もともと意味不明な用語法なので、「ほんとのところ」は分かりませんが、「従う」という特殊な言葉を使うのは、言及してない背後の構造の存在を暗示しているのかも知れません。

関連する過去記事

「確率変数」について:

「分布」について:

「母集団」「標本」について:

論理の限量子の使い方が嫌でも分かってしまう話

論理の限量子 -- つまり全称限量子(記号は'∀')と存在限量子(記号は'∃')-- の使い方が分からない、という質問・相談を受けることがあります。なかでも、「∀と∃の順序を交換してイイの? それともダメなの?」はFAQ〈Frequently Asked Question〉でして、ここ1年でも4回聞かれた気がする。

内容:

like関係

論理式の意味や使い方を、日常生活や自然言語の比喩的事例を使って説明するのはヨロシクナイと僕は思っています。しかし、最初のとっかかりに関しては、比喩的事例も致し方ないですね。人間関係の記述を例題にします。

A, B, C, D の4つの要素を持つ集合Xを考えます。

  • X = {A, B, C, D}

A, B, C, D は4人の人だと思ってください。集合Xは、サークルとか家族とか会社の部署とか、人間の集団です。そう思うとリアルで生々しくなるでしょ。でも、別に生々しくなくてもいい方は、単なる集合と要素だと思ってください。

集合Xの2つの要素のあいだの関係として、love〈愛している〉とかを出すと生々しさが過ぎるので、like〈好き〉という関係にしましょう。x, y∈X について、like(x, y) の意味は「xさんはyさんを好きである」だとします。「自分を好き」も意味を持つので、like(x, x) もあります。「好き」は対称的な関係ではないので、like(x, y) と like(y, x) は同じではありません。

現実世界では、好き(like(x, y) が真)か好きでないか(like(x, y) が偽、¬like(x, y) が真)をハッキリ決めるのは難しいですが、ここでは、x, y∈X に対して like(x, y) が完全に確定しているとします。この確定したlike関係を記述・表現するために3つの方法を使います。

  1. 有向グラフ
  2. 表〈テーブル〉
  3. 碁盤目

like関係の記述・表現

有向グラフ

A, B, C, D を平面内の4点(有向グラフのノード)として描きます。like(x, y) が真のとき、xからyへの矢印を描きます。例えば、「AさんはBさんを好き」なら like(A, B) が真なので、点Aから点Bへの矢印を描きます。次は、そうやって描いた有向グラフの一例です。


表〈テーブル〉

like(x, y) を表〈テーブル〉にすることもできます。横方向にx、縦方向にyをとるとして、like(x, y) が真ならマル、偽ならバツを記入することにします。

y↓x→ A B C D
A
B
C
D

表の欄は、直積集合 X×X の要素に対応します。欄が16あるのは、X×X が16要素を持つからです。

  • X×X = {A, B, C, D}×{A, B, C, D} =
     {(A, A), (A, B), (A, C), (A, D), (B, A), (B, B), (B, C), (B, D),
     (C, A), (C, B), (C, C), (C, D), (D, A), (D, B), (D, C), (D, D)}

マルをtrue, バツをfalseと思えば、この表は X×X→{true, false} という関数〈写像〉の値を記述した表です。実際、likeはそのような関数とみなせるので、関数likeを表〈テーブル〉で記述・表現したことになります。

碁盤目

まず、縦に4本、横に4本の線を引いて、16個の交点(格子点)ができるようにします。碁盤目ですね。表の場合と同じように、各格子点が (A, A), (A, B), ..., (D, D) を表します。そして、like(x, y) が真である格子点 (x, y) に色を塗るとかマーカーを付けるとかします。

マークされた点達は、X×X の部分集合になります。この場合は:

  • {(A, A), (A, B), (A, D), (B, C), (B, D), (C, D), (D, D)}

7個の要素からなる部分集合です。表のマルの数も7個だし、有向グラフの辺も7本でした。

碁盤目にマークする描き方は、likeを X×X の部分集合とみなす発想です。集合らしく最初の文字を大文字*1にして Like と書くと、Like ⊆ X×X で、(x, y)∈Like であることを like(x, y) と書くわけです。

他の例も

以上、特定のひとつの例に対して、有向グラフ/表/碁盤目で表現してみました。ここから先でも同じ例を使い続けます。が、他の例はいくらでも作れます。集合を {A, B, C, D} に固定しても、この集合上のlike関係は色々とあります。

例えば、碁盤目の16個の格子点から適当に点を選んでみれば、それが別な事例になります。自分で作った事例を調べてみることが、論理式や限量子に慣れる良い練習になります。

誰からも好かれる人

集合 X = {A, B, C, D} をサークルだと考えましょう。サークルのなかに、

  • 誰からも好かれる人

がいるかも知れません。aさんが誰からも好かれることは、次のように書けます。

  • ∀x∈X.like(x, a)

日本語で言えば:

  • サークルXのメンバーはみんなaさんが好き。

「みんな」を使いましたが、「誰でもが」「全員が」「どんな人も」とかでも同じです。堅苦しい言い方なら「任意のメンバーは」となります。日本語のニュアンスは関係ありません

今出てきた「aさん」は、誰と特定されているわけではないですが「とある誰かさん」という意味です。このような目的で使う変数aは自由変数です。それに対して変数xは全称記号'∀'と結びついて使用されているので束縛変数です。

自由変数/束縛変数にどんな文字を使ってもかまいませんが、ここでは、a, b, c などを自由変数、x, y, z などを束縛変数に使うことにします。これは、単にこの記事でのローカルな習慣で意味はありません。

サークルX内に「誰からも好かれる人」がいることは次のように書けます。

  • ∃y∈X.∀x∈X.like(x, y)

我々の例では、Dさんが実際に誰からも好かれているので、上の命題は真になります。別な例を作れば、同じ命題が偽になるかも知れません。

好きな人はいますか?

前節の命題 ∃y∈X.∀x∈X.like(x, a) の、存在限量子と全称限量子の順序を変えると:

  • ∀x∈X.∃y∈X.like(x, y)

内側の ∃y∈X.like(x, y) は、xさんには好きな人がいることです。xを自由変数aに書き換えてみれば:

  • ∃y∈X.like(a, y)

堅苦しく言えば:

  • サークルXの誰かyさんが存在して、aさんはyさんを好き。

もう少し素直な日本語にすれば:

  • aさんには、サークルXのメンバーで好きな人がいる。

日本語の表現としては、束縛変数の名前は入れないほうが自然ですね。僕が「自然言語(日本語)を使って説明する/理解する」のがあまりヨロシクナイと思うのは、日本語の文法とか表現の多様さ・機微とかに注意が向いてしまい、論理のドライな骨格が見えにくくなるからです。日本語表現に注意を向けるのはやめてね。

さて、∃y∈X.like(a, y) の自由変数aをxに書き換えて全称記号で束縛する(外側に ∀x∈X. を付ける)と:

  • ∀x∈X.∃y∈X.like(x, y)

日本語で言えば、

  • サークルXの全員が、サークルXのメンバーで好きな人がいる。

前節の命題:

  • サークルX内に、誰からも好かれる人がいる。

とはだいぶ違います。

好きな人は一人だけ

∀x∈X.∃y∈X.like(x, y) を否定してみます。限量子に関するド・モルガンの法則で順次変形していくと:

  • ¬∀x∈X.∃y∈X.like(x, y)
  • ∃x∈X.¬∃y∈X.like(x, y)
  • ∃x∈X.∀y∈X.¬like(x, y)

最後の命題を日本語で言うなら:

  • サークルXの誰のことも好きではない人が、サークルX内にいる。

我々の事例でそんな人はいるでしょうか? -- いませんね。では、好きな人が一人しかいない人はどうでしょう? これはいますね。CさんとDさんです。

Cさんは、誰からも好かれているDさんを好きですが、Dさん以外は自分自身も含めて好きではありません。Dさんは、自分しか好きではありません。にも関わらず、誰からも好かれています。不思議だ(フィクションですからね)。

aさんが、好きな人が一人しかいないことを論理式で表すのはけっこう難しいです。aさんが好きな相手をbさんとします。すると:

  • like(a, b)

bさん以外(x≠b)は好きではないので、

  • ∀x∈X.(x≠b ⇒ ¬like(a, x))

内部の含意論理式の対偶をとってもいいです。

  • ∀x∈X.(like(a, x) ⇒ x = b)

こっちは、「好きならばそれはbさん」ってこと。

以上から、aさんはbさんだけを好きなことは:

  • like(a, b)∧∀x∈X.(like(a, x) ⇒ x = b)

bさんの正体が明らかではなくて、そんな人がサークルX内にいる(存在する)よ、ってことなら:

  • ∃y∈X.(like(a, y)∧∀x∈X.(like(a, x) ⇒ x = y))

これで、aさんが“単推し”(一人だけを好き)の人であることが表現できます。ただし、Dさんのように好きな相手が自分であってもかまいません。

自由変数aを束縛変数に変えて、さらに'∃'または'∀'を付けることができます。

  • ∃z∈X.∃y∈X.(like(z, y)∧∀x∈X.(like(z, x) ⇒ x = y))

これは、サークルX内に“単推し”の人がいるよ、です。我々の例では真です。一方、

  • ∀z∈X.∃y∈X.(like(z, y)∧∀x∈X.(like(z, x) ⇒ x = y))

サークルXのメンバーは全員が“単推し”だ、ということで、我々の例では真ではありません。実際、Aさん、Bさんは複数の人を好いています。「誰のことも好きではない人」がいても、この命題は偽になります。

言霊は困るんだけど

日常生活の複雑な事情、日本語表現の多様さや微妙な違いなどは、ドライな判断を惑わしたり、余計な感情を呼び起こすので、論理的に考えたいときは出来るだけ排除したい要素です。

以前、次の記事を書きました。

人に豊かなイメージをもたらす日本語の機能を“言霊”と呼んでいるのですが、これが大変に邪魔になる、という話です。

ですが、そもそも'∀'と'∃'の入り口でモヤモヤしている人は、日常と日本語からのエモーションの力を借りてでも一歩前に進めれば、まっ、いいかな

*1:こういう習慣は何の意味もありませんけどね。集合を小文字で書いても何も悪いことはないので。

ベイズ確率論、ジェイコブス達の新しい風

バート・ジェイコブスとコラボレーター達は、現状のベイズ確率論で使われている概念・用語・記法とは異なる、完全に新しい概念・用語・記法を提案しています。悪しき風習やしがらみを断ち切って、理論をリフォーミュレートしたのです。

従来のやり方に慣れている方は、彼らのスタイルに強い違和感を持つかもしれません。しかし、白紙で考えれば、とても使いやすいものです。僕は、ジェイコブス・スタイルを若干アレンジして使っているのですが、ほんとに気持ちよくて、従来方式に戻る気にはなれません。

今日は、その内容の詳細までは解説しませんが、基本概念だけに絞って雰囲気を紹介します(それでもけっこうな長さになりました)。

内容:

ベイズ確率論を整理して再構成する

ベイズ確率論〈Bayesian probability theory〉は幾つかの起源を持ち、たくさんの応用分野を持ちます。関連する諸分野が多い理論にありがちな事として; 各分野の概念・用語・記法がもとの理論にシッチャカメッチャカになだれ込んで、もとの理論がグチャグチャに見えてしまう事があります。ベイズ確率論もそんな状況です。

そんな状況であっても、後方互換性(あるいは惰性)から、改善されないままに放置される場合がほとんどです。誰かが整理して再構成してみても、惰性の力が強く、新しい方式は受け入れられないことが多いでしょう。

バート・ジェイコブス〈Bart Jacobs〉*1達は、ベイズ確率論に対して「整理して再構成」を試みています。上に述べた事情から、広く受け入れられるのは難しいかも知れませんが、それが優れた方式であるなら、徐々にファンを増やしていくでしょう。そして、ジェイコブス・スタイルは、間違いなく優れた方式です。

ジェイコブス・スタイル -- チャンネル方式〈the channel perspective, the channel approach〉とも呼びます -- に関する論文はたくさんありますが、ひとつだけ挙げると:

必要に応じて、この論文の"References"から他の論文を辿ればいいでしょう。論文が、書籍のひとつの章のように書かれているので、いずれまとまって本になるのかも知れません。

状態変換子と述語変換子

ジェイコブス達が提案している概念・用語・記法は、ベイズ確率論としては斬新なものですが、下敷きにしている既存理論はあります。プログラム意味論、量子論、論理(のモデル論)などです。

特に、プログラム意味論*2における「プログラムに対する双対的な2つの解釈」がジェイコブス・スタイルのバックボーンになっています。

  1. プログラムは、状態変換子〈state transformer〉である。
  2. プログラムは、述語変換子〈predicate transformer〉である。

XとYが集合だとして、プログラムの実行が写像 f:X→Y で表されるとします(X = Y のことが多いです)。X, Yの要素を状態〈state〉と呼ぶと、写像(プログラムの実行)fは、事前の状態〈pre-state〉xを事後の状態〈post-state〉f(x)に変換します。よって、プログラムは状態変換子です。

B = {0, 1} を二値ブール値の集合とします(0がfalseで、1がtrue)。述語〈predicate〉とは、B値の関数*3のことで、何らかの条件〈condition〉を表します。写像(プログラムの実行)fは、Y上の述語〈post-condition | 事後条件〉をX上の述語〈pre-condition | 事前条件〉に引き戻す働きを持ちます。この見方をすれば、プログラムは述語変換子です。

集合X上の述語(B値関数)の全体からなる集合を Pred(X) = Map(X, B) = BX とします。写像の結合〈合成〉の図式順記号は';'〈セミコロン〉を使います。この約束のもとで:

  1. f:X→Y による変換: 状態 x∈X \mapsto 状態 f(x)∈Y
  2. f*:Pred(Y)→Pred(X) による変換: 述語 (q:Y→B) \mapsto 述語 (f*(q) = f;q : X→B)

記号のフレーバーを揃えるために、State(X) := X, f* := f と置きます。すると:

  1. 状態変換子 f*:State(X)→State(Y)
  2. 述語変換子 f*:Pred(Y)→Pred(X)

状態変換子 f* と述語変換子 f*逆方向であることに注意してください。

プログラム意味論の経験から得られた強いポリシーは:

  • 状態変換子と述語変換子の2つを常に一緒に考えよ。

です。現状のベイズ確率論はこのポリシーに従っていません。そこで、「このポリシーに沿って整理・再構成すべし」というミッションが生まれます*4

確率的状態

話を簡単にするために、ここから先では、X, Yなどの集合は有限集合だとします。(無限集合を扱うには、測度論の難しい議論が必要になります。)

前節で、State(X) = X 、つまりX上の状態とはXそのものだと言いました。これを変更します。Xは有限集合ですが、これは離散有限な“位置”を表すとします。例えば、X = {1, 2, 3, 4} ならば、4つの位置があります。

ここで物理的な発想をして、とある粒子がX上にいるとします。粒子がいる位置(1, 2, 3, 4 のどれか)が粒子の状態だとすれば、Xは粒子の状態の集合ともいえます。粒子がどの位置にいるかを特定はできなくて、存在する位置の確率分布だけが与えられているとします。例えば:

  • 位置1にいる確率 = 1/4
  • 位置2にいる確率 = 1/2
  • 位置3にいる確率 = 1/4
  • 位置4にいる確率 = 0

この確率分布は、粒子の確率的状態〈probabilistic state〉だといえます。別な解釈として、総質量が1になる物質(離散有限だから質点系)がX上にあり、その物質の質量分布が確率的状態だと思ってもかまいません。

確率的状態を書き表すために、次の記法を使います。

  •  \sum_{x\in X} \: \alpha_x \left< x \right>

今の例だと X = {1, 2, 3, 4} なので、

  •  \sum_{x\in \{1, 2, 3, 4\}} \: \alpha_x \left< x \right> = \alpha_1 \left<1\right> + \alpha_2 \left<2\right> + \alpha_3 \left<3\right> + \alpha_4 \left<4\right>

先の例の確率的状態は次のようになります。

  •  \frac{1}{4}\left< 1 \right> + \frac{1}{2}\left< 2 \right> + \frac{1}{2}\left< 3 \right> + 0\left< 1 \right>

確率的状態は、Xの要素の形式的線形結合〈formal linear combination〉ですが、確率を表すので、次の制限が付きます。

  • すべての x∈X に対して、αx ≧ 0
  •  \sum_{x\in X}\: \alpha_x = 1 (係数をすべて足したら 1)

この制限を満たす線形結合を凸結合〈convex combination〉と呼びます。この言葉を使うと:

  • X上の確率的状態は、Xの要素の凸結合である。

ここから先では、単に「X上の状態」と言ったら、それは確率的状態を意味します。“X上の状態=確率的状態”全体の集合を State(X) と書きます。前節とは、State(X)の意味が変わっています。

  • State(X) = (Xの要素の凸結合の集合)

State(X) の幾つかの要素に対してその凸結合を計算できるので、State(X)は凸結合演算を備えた集合になります。このような構造を凸空間〈convex space〉、または凸代数〈convex algebra〉と呼びます。凸空間に関しては「二点しかない離散空間に長さ1の線分を描けるか?」に書いてあります。

a∈X に対して、1\left< a \right> は状態です。この形の状態を一点状態〈one-point state〉と呼びます。前節の状態は一点状態のことでした。a∈X に対して一点状態 1\left< a \right>∈State(X) を対応させることにより、X⊆State(X) とみなすことができます。State(X)の部分集合とみなしたXは、凸結合によりState(X)を生成します。ベクトル空間の基底と同じ意味で、XはState(X)の基底〈basis〉(凸独立な生成系)になります。

[補足]
ジェイコブス達の記法では、 \frac{1}{4}\left< 1 \right> + \frac{1}{2}\left< 2 \right> + \frac{1}{2}\left< 3 \right> + 0\left< 1 \right> ではなくて、 \frac{1}{4} | 1 \rangle + \frac{1}{2} | 2 \rangle + \frac{1}{2} | 3 \rangle + 0 | 1 \rangle と、ディラックのブラケット記法(のケット)を使っています。物理の人にはお馴染みでしょう。しかし、初めて見る人には奇異に映ることと、ケットは使ってもブラはほとんど使わないので、Xの要素を山形括弧で囲むことにしました。
[/補足]

確率的状態変換子とチャンネル

2つの有限集合 X, Y に対して、State(X) から State(Y) への写像が状態変換子でした。「状態」は確率的状態の意味です。State(X), State(Y) は凸空間だったので、凸空間の構造を保つ写像だけを考えます。正確に言えば:

  • 写像 F:State(X)→State(Y) で、凸結合を保存する(凸結合を対応する凸結合に移す)写像を、状態変換子と呼ぶ。

いちいち「確率的」という形容詞を付けませんが、常に確率的状況で考えます。状態の全体は凸空間の構造を持ち、状態変換子は凸空間のあいだの準同型写像です。凸空間のあいだの準同型写像を、短く写像〈convex map〉とも呼びます。

状態 凸構造
状態空間 凸空間
状態点=確率分布 点=Xの要素の凸結合
状態変換子 写像
一点状態 基底の要素

状態空間(凸空間)のあいだの状態変換子(凸写像)は、ベクトル空間のあいだの線形写像と同じように考えることができます。線形写像が、基底での値で完全に決まってしまうのと同様に、状態変換子も基底での値で完全に決まります。そして、State(X)の部分集合とみなしたXはState(X)の基底でした。これらのことより、次が言えます。

  • State(X)からState(Y)の状態変換子(凸写像)と、XからStat(Y)への任意の写像は1:1に対応する。

凸空間のあいだの凸写像全体の集合を ConvexMap(V, W) のように書くことにすれば*5

  • ConvexMap(State(X), State(Y)) \stackrel{\sim}{=} Map(X, State(Y))

同型の右辺に出てきた Map(X, State(Y)) は、集合Xから集合State(Y)への勝手な(何の制限もない)写像の集合です。Map(X, State(Y)) の要素、つまり、集合Xから集合State(Y)への写像を、XからYへのチャンネル〈channel〉と呼びます。チャンネルは通常の写像とは区別して、c:X→* Y のように書きます。'→*' がチャンネル用の矢印記号です。

  • (チャンネル X→* Y) ←(同じ)→ (写像 X→State(Y))

XからYへのチャンネルの全体を Chan(X, Y) と書くと、定義から:

  • Chan(X, Y) = Map(X, State(Y))

ひとつ前の同型から:

  • Chan(X, Y) \stackrel{\sim}{=} ConvexMap(State(X), State(Y))

なので、チャンネルと状態変換子(凸写像)は事実上同じものです。が、ここでは、チャンネルをより基本的なものだと考えて、状態変換子はチャンネルから引き起こされるとします。チャンネルcから引き起こされた状態変換子を c*:State(X)→State(Y) と書きます。

  • (チャンネル c:X→* Y) ←(対応)→ (写像 c*:State(X)→State(Y))

チャンネルについてもう少し

ジェイコブス達の発想・方法は、the channel perspective / the channel approach と呼ばれるくらいなので、チャンネルはジェイコブス・スタイルの中核的な概念です。チャンネルの導入により、驚嘆すべき単純さが実現されます。ただし、あまりにも単純だとかえって分かりにくい*6ので、ほどよい複雑さをあえて残すような定式化にはなっています。

チャンネルと同じ概念は既に多くの人々が様々な呼び名で扱っています。「分布から拡散へ: ミシェル・ジリィを巡って // ローヴェアとジリィの定式化」において、同じ概念に付けられた17個の名前を列挙しています。僕はさらに、「拡散」(18個目)という呼び名を追加しています。そして、ジェイコブスは「チャンネル」(19個目)と呼んでいるわけです。

人物 同じ概念を何と呼ぶか
ローヴェア〈Lawvere〉 probabilistic mapping
ジリィ〈Giry〉 transition probability
スターツ〈Sturtz〉 conditional probability
パナンガデン〈Panangaden〉 probabilistic relation / Markov kernel
ドバーカット〈Doberkat〉 stochastic relation
ドールクゥイスト〈Dahlqvist〉 kernel
ジェイコブス〈Jacobs〉 channel

ジェイコブスが別な名前を付けたのは、手垢の付いてない言葉が欲しかったのかも知れません。チャンネルは、写像に似てますが、通常の写像が入力に対して出力を決定性〈deterministic〉に出力するのに対して、確率的〈probabilistic | stochastic〉に出力を吐き出します。実際ローヴェアは、チャンネルを「確率写像」と呼んでいます。

チャンネルは、もともとは情報通信の「通信路」の意味ですが、以下のような対応から確率写像と同じ意味で使っているのです。

通信路 写像
aを通信路cに送り出す aを写像fに入力する
c(a)を通信路cから受け取る f(a)が写像fから出力される
cにノイズが乗る fは確率的である

ノイズがない(通信エラーが起きない)通信路が、決定性の写像に対応します。決定性の写像に対応するチャンネルを決定性チャンネル〈deterministic channel〉と呼びます。

写像の出力が確率的に揺らいでしまうような現象は世の中にいくらでもあります。いくらでもあるからこそ、色々な人々が色々な呼び名で呼んでいるのです。呼び名が問題なのではなくて、そのような現象とその数学的なモデルが問題なのです。ジェイコブスは(理由はハッキリは分かりませんが)たまたま「チャンネル」という呼び名を採用しているだけです。

状態とチャンネルの実例

ここらで、状態とチャンネルの実例を出します。"The Logical Essentials of Bayesian Reasoning" Bart Jacobs and Fabio Zanasi からの例です。

血圧となんらかの病気〈disease〉のあいだに確率的(あるいは統計的)関係があるとします。それを次の表で表します。血圧は、L (low), M (medium), H (high) の3つに分類し、d+ は「病気である」こと、d- は「病気でない」ことを示します。

L M H
d+ 5% 10% 15%
d- 95% 90% 85%

これは血圧ごとの、“病気になりやすさ”を表しているので s (sickness) と呼びます。sは、{L, M, H} →* {d+, d-} というチャンネルです。さらに、B = {L, M, H}、D = {d+, d-} と置けば s:B→* D です。

チャンネルsの表現として、集合Bの要素(血圧)ごとに、集合D上の状態を割り当てることにします。

  • s(L) = 0.05<d+> + 0.95<d->
  • s(M) = 0.1<d+> + 0.9<d->
  • s(H) = 0.15<d+> + 0.85<d->

集合B上を走る変数をb、集合D上を走る変数をdとすると、次のように書けます。

  •  s(b) = \sum_{d\in D} s(b)_d \left< d \right> = s(b)_{d+}\left< d+ \right> + s(b)_{d-}\left< d- \right>

 s(b)_d \left< d \right> のbを L, M, D と動かし、dを d+, d- を動かした全体は、マルコフ行列(成分を縦に足すと1になる行列)として簡潔に表現できます。



 \begin{pmatrix}
0.05 & 0.1 & 0.15 \\
0.95 & 0.9 & 0.85
\end{pmatrix}
 \begin{pmatrix}0.05 & 0.1 & 0.15 \\0.95 & 0.9 & 0.85 \end{pmatrix}

さて、とある会社で健康診断をしたとしましょう。社員の血圧の分布が次のようだったとします。

血圧 比率
L 20%
M 50%
H 30%

これは、社員たちの血圧状態です。この状態に、病気の(確率的)傾向性を示すチャンネルsを作用させると、病気状態が出てきます。実際の計算はチャンネルの行列と状態の縦ベクトルの掛け算で済みます。



\begin{pmatrix}
0.05 & 0.1 & 0.15 \\
0.95 & 0.9 & 0.85
\end{pmatrix}
\begin{pmatrix}
0.2 \\
0.5 \\
0.3
\end{pmatrix}
=
\begin{pmatrix}
0.105 \\
0.895
\end{pmatrix}
\begin{pmatrix}0.05 & 0.1 & 0.15 \\0.95 & 0.9 & 0.85\end{pmatrix}\begin{pmatrix}0.2 \\0.5 \\0.3\end{pmatrix}=\begin{pmatrix}0.105 \\0.895\end{pmatrix}

この会社の社員たちの病気状態は:

  •  0.105\left< d+\right> + 0.895\left< d-\right>

一般に、集合B上の状態(血圧状態)βと、集合D上の状態(病気状態)をδとすると*7、次のように書けます。

  •  \beta = \beta_L\left< L \right>  + \beta_M\left< M \right> + \beta_H\left< H \right>
  •  \delta = \delta_{d+}\left< d+ \right>  + \delta_{d-}\left< d- \right>

βに、チャンネル s:B→* D(血圧ごとの、病気になりやすさ)を作用させたものがδだとするならば、次が成立します。



\begin{pmatrix}
0.05 & 0.1 & 0.15 \\
0.95 & 0.9 & 0.85
\end{pmatrix}
\begin{pmatrix}
\beta_L \\
\beta_M \\
\beta_H
\end{pmatrix}
=
\begin{pmatrix}
\delta_{d+} \\
\delta_{d-}
\end{pmatrix}
\begin{pmatrix}0.05 & 0.1 & 0.15 \\0.95 & 0.9 & 0.85\end{pmatrix}\begin{pmatrix}\beta_L \\\beta_M \\\beta_H\end{pmatrix}=\begin{pmatrix}\delta_{d+} \\\delta_{d-}\end{pmatrix}

これを、βがsによって前送り(sと同じ方向に移動)されてδになったと考えて、次のように書きます。

  • β>>s = δ

演算子記号'>>'は、左から右に移動する“感じ”を表します。チャンネルsから引き起こされた状態変換子は s*:State(B)→State(D) ですが、前送りと状態変換は同じことなので:

  • β>>s = s*(β)

[補足]
割と最近になって気付いたことですが、テクニカルターム自然言語的(国語辞書的)意味に拘る人が少なからずいるようです。「血圧と病気に関する統計的資料を、チャンネル(通信路)と呼ぶのは奇妙過ぎる」とかです。こういうツッコミやコダワリはまったく不毛でナンセンスなので、やめましょうね。
[/補足]

ファジー述語

決定性の状況だと、集合X上の述語とは、X→{0, 1} という写像です。非決定性〈non-deterministic〉、あるいは不確実性〈under uncertainty〉の状況では、中間の真偽値を認めたほうがいいでしょう。{0, 1} ではなくて、閉区間 [0, 1] を真偽値の集合にとります。X→[0, 1] という写像ファジー述語〈fazzy predicate〉と呼びます。ここから先では、単に述語〈predicate〉と言えばファジー述語のことだとして、値が {0, 1} である述語(通常の意味の述語)はシャープ述語sharp predicate〉と呼びます。

ジェイコブス・スタイル〈チャンネル方式〉は、プログラム意味論のポリシーに従うので、状態/状態変換子と共に述語/述語変換子を考えます。常にペアで扱います。これは、ジェイコブス・スタイルに特徴的なことで、従来のベイズ確率論はこの点に注意を払っていません。

従来の方式が述語を無視してきたと言うよりは、述語と状態を混同していたきらいがあります。述語を使うべきところで、(誤って)状態で考えていたり。ジェイコブスは、「状態と述語はまったくの別物だ、混同してはいけない」とくどいくらいに強調しています。この注意とメッセージは、僕にとって衝撃でした。「ウギャーー!」と叫び声を(心の中で)あげてしまいました。まさに僕が誤解と混同をしていたからです。

p:X→{0, 1} がシャープ述語とします。そのとき、{x∈X | p(x)} としてXの部分集合(pの外延)が決まります。逆に、AがXの部分集合のとき、λx∈X.(if (x∈A) then 1 else 0) というシャープ述語(Aの内包)が決まります。このシャープ述語は、部分集合Aの指示関数〈indicator function | characteristic function | 特性関数〉と呼び、χA('χ'はギリシャ文字カイ)と書くことが多いですが、ここでは [∈A] と略記します。

  • [∈A](x) = (if (x∈A) then 1 else 0)

{x∈X | p(x)} も {|p} と短く書くことにします。すると:

  • [∈{|p}] = p
  • {|[∈A]} = A

となり、シャープ述語 ←→ 部分集合 の1:1対応が得られます。この対応のもとで、シャープ述語と部分集合は同一視してもかまいません。

シャープとは限らない述語に対しても、その外延としてファジー部分集合を考えることができます。ただし、ファジー部分集合という概念を新たに導入するのはなくて、(シャープとは限らない)述語の別名として「ファジー部分集合」という言葉の使用を認めるだけです。

状況 述語(内包) 外延
決定性 シャープ述語 部分集合
一般 述語(ファジー ファジー部分集合(言葉だけ)

確率論では、Xの部分集合を事象〈event〉と呼ぶので、ファジー部分集合はファジー事象だともいえます。ここらへんは単に言い回しだけの問題なので、まー、どうでもいいけど。

さて、区間 [0, 1] は実数Rの部分集合なので、色々な演算を持ちます。

  • 足し算: a + b (部分的にしか定義できない)
  • 掛け算: ab
  • 大きい方: max(a, b) (正確には小さくないほう)
  • 小さい方: min(a, b) (正確には大きくないほう)
  • 1との差: 1 - a
  • 逆数: a-1 (0では定義できない)

これらの演算の一部は論理演算とみなせるので、別な記号も割り当てます。

演算 論理的演算記号
掛け算 &
大きい方
小さい方
1との差

連言〈論理AND〉が二種類ありますが、どちらも使います。足し算を選言〈論理OR〉のようにみなすこともあります。逆数は&演算の逆元を与えます。

区間 [0, 1] が豊富な演算を持つので、述語の集合 Pred(X) := Map(X, [0, 1]) = [0, 1]X も、点ごとの演算を定義すれば同じだけの演算を持ちます。点ごとの順序により順序構造も入ります。

  • p, q∈Pred(X) に対して、p ≦ q :⇔ ∀x∈X.(p(x) ≦ p(x))

状態の集合State(X)と述語の集合Pred(X)は、定義が違うので別物なのは当たり前ですが、持っている代数構造がまったく違います。Pred(X)は今述べたような演算と順序により、論理の代数とみなせますが、State(X)で許される演算は凸結合だけです。

台集合Xが有限集合やRnの場合は、State(X)とPred(X)を混同しがちですが、混同すると、僕がそうであったように、トンチンカンでワケワカラナイことになります。

ベイズ論理/ベイズ計算に向けて

以上で、ジェイコブス・スタイルの最も基本的な概念である「状態」「述語」「チャンネル」について一通りは説明しました。従来の用語法との対応をまとめます。

ジェイコブス達 従来方式
状態 確率分布
述語 事象の一般化
シャープ述語 事象
チャンネル 条件付き確率の利用法のひとつ
決定性チャンネル 確率変数
状態変換子 条件付き確率と確率分布の計算法のひとつ
述語変換子 条件付き確率と事象の計算法の一般化

これは、言葉を趣味的に変更した、というものではありません。理論の定式化と構成を新しくしたので、それに伴いラベルも貼り替えた、ということです。

冒頭でも述べたように、ジェイコブス・スタイルは、プログラム意味論の理論構成を下敷きにしています。それ以外に、量子論量子論理にも影響を受けています。量子系の量子状態が、チャンネルを通じて別な量子系の量子状態に転送されるというイメージもあるのでしょう。状態が確率的であるだけでなく、命題も“真偽の度合い”を持ち、ある状態においてある命題の“真偽の度合い”が評価される、という論理的枠組みが採用されています。

ベイズ推定〈Bayesian inference | Bayesian reasoning〉という言葉があるくらいなので、ベイズ確率論は、なんらかの演繹・推論を行う道具だという認識は世間一般にあるのでしょう。しかし、論理システムとしての体裁をなしていません。ジェイコブス達の試みは、ベイズ確率論に論理システムとしての形を与えて、いわばベイズ論理〈Bayesian logic〉を構築しようというものです。

ベイズ確率論の記法には、暗黙の了解事項が多く、曖昧であまり合理的ではない略記が採用されています。計算体系が整備されてないので、これを使って確率の計算を行うのは難儀です。計算ツールとしての機能性・効率性も芳しくない。機能性・効率性に優れたベイズ計算〈Bayesian calculus〉が欲しいですね。それもまたジェイコブス達の目標のひとつです。

ジェイコブス・スタイルでは、下の表のような演算子達を駆使した計算体系が備わっています。従来方式に比べてはるかに機能的・効率的です。(演算子は、図式順記法に変更しているので、オリジナルとは少し違う*8。)

記号 意味
; チャンネルの直列結合〈sequential composition〉
\otimes チャンネルの並列結合〈parallel composition〉
>> 状態の前送り〈pushout | post-composition | forward transform〉
<< 述語の引き戻し〈pullback | pre-composition | backward transform〉
|= 妥当性値〈validity〉
| 条件付け〈conditioning〉
スケーリング〈scaling〉

このなかで、'>>', '<<', '|=' はなくてもよく、';'だけで済みます。状態も述語も特殊なチャンネルとみなせるからです。しかし、あまりに単純化するとかえって分かりにくいので、場合ごとに別な記号を用意しています。

  • '>>' は、状態とチャンネルの順次結合
  • '<<' は、チャンネルと述語の順次結合
  • '|=' は、状態と述語の順次結合

今回述べたように、X, Y などの台集合が有限なら、マルコフ行列/マルコフテンソル(「確率的推論・判断の計算法:マルコフ・テンソル絵算」を参照)で計算ができます。また、ジェイコブス・スタイルは、ストリング図と相性がよく、モノイド圏における絵図計算〈pictorial calculation〉の技法がそのまま使えます。

ジェイコブス達は言及してないようですが、ゴグエン/バーストル〈Joseph Goguen and Rod Burstall〉のインスティチューション〈institutions〉や、ローヴェア〈William Lawvere〉のハイパードクトリン〈hyperdoctrine〉との関連もありそうです。インスティチューション/ハイパードクトリンからの知見を、ベイズ論理/ベイズ計算に活かせるかも知れません。例えば、「順序集合のカン拡張と特徴述語論理」の手法で限量子を定義できそうな気がします。

ベイズ確率論の新しい風を感じたい人、従来の理論にモヤモヤを感じている人は、ジェイコブス・スタイル(「チャンネル理論」と呼ぶべきかな?)に目を向けてはどうでしょう。

*1:"Jacobs"を「ヤコブス」と書いていたのですが、「ジェイコブス」に変更します。

*2:プログラム意味論全般ではなくて、ホーアやダイクストラの流儀です。

*3:関数と写像は区別せずに、同義語として用います。

*4:ベイズ確率論が「なんで違った分野のポリシーに従う必要があるんだよ?」というツッコミは当然にあるでしょう。ベイズ確率論とプログラム意味論は、十分に抽象化したレベルで見ると強い類似性があります。その類似性からすると、プログラム意味論の基本原則がベイズ確率論で尊重されてないのは「どうもマズイだろう」という懸念があるのです。

*5:この同型は、“凸空間の自由生成関手と忘却関手の随伴性”を表す同型の特殊ケースです。

*6:今まで見たことのない単純さなので、多くの人は面食らってしまうでしょう。

*7:ギリシャ文字'δ'は、クロネッカーのデルタやディラックのデルタなどに使われますが、ここでは単に状態を表す変数です。

*8:具体的には、結合記号を図式順の';'に変えてあります。ジェイコブスの前送り f>>α は α>>f と逆順にして、f<<p はそのままです。これで、;, >>, <<, |= がすべて整合的に図式順になります。

フランツによる統計的独立性の定義

統計的独立性と線形独立性を共通に語ることは出来るのか?」では、シンプソン〈Alex Simpson〉による独立性構造を紹介しました。シンプソンの独立性は、かなり広い範囲の“独立性”概念をカバーするものです。もうひとつの独立性であるフランツ〈Uwe Franz〉による独立性は、モノイド積を持つ圏をベースに統計的独立性を定式化したものです。この記事では、フランツの独立性をザッと紹介します。

内容:

確率変数の独立性

確率空間を A = (ΩA, ΣA, μA) のように書きます。ΩAは台集合、ΣAはΩA上のσ代数、μAは確率測度です。記号の乱用で ΩA = A として、A = (A, ΣA, μA) とも書きます。

(A, ΣA, μA) が確率空間、(B, ΣB) が可測空間のとき、可測写像 f:(A, ΣA)→(B, ΣB) を(ここでは)確率変数〈{random | stochastic} variable〉と呼びます。台集合のあいだの写像を同じ文字 f:A→B で表し、逆像を対応させる写像を ΣfB→ΣA または f*B→ΣA と書きます。

確率変数 f:(A, ΣA)→(B, ΣB) があると、B上に前送り測度〈誘導測度〉 f*A) を構成できます。前送りされた測度を使って (B, ΣB, f*A)) を作ると、これは確率空間です。よって、確率変数は、確率空間のあいだの測度を保存する写像 f:(A, ΣA)→(B, ΣB, f*A)) とみなせます。

確率空間と測度を保存する可測写像からなる圏をProbとします。上の議論から、確率変数はProbの射とみなせます。そこで、以下では「確率変数=圏Probの射」だとします。

同一の域〈domain〉を持つ2つの確率変数、つまり2つの射 f:A→B, g:A→C in Prob が(統計的に)独立であることを定義しましょう。確率変数 f, g から、σ代数のあいだの射 f*B→ΣA, g*C→ΣA が誘導されます。f*, g* はσ代数のあいだの準同型写像になります。そして、f*, g* による像 Im(f*)⊆ΣA, Im(g*)⊆ΣA はσ代数ΣAの部分σ代数になります。この状況で:

  • f:A→B, g:A→C in Prob統計的に独立〈statistically independent〉であるとは、σ代数ΣAの部分σ代数 Im(f*) と Im(g*) が確率測度μAに関して独立なこと。

ここで、“部分σ代数の確率測度に関する独立性”概念が必要になります。S, T がσ代数ΣAの部分σ代数だとして、これらが確率測度μAに対して独立〈independent〉だとは:

  • 任意の ξ∈S, η∈T に対して、μA(ξ∩η) = μA(ξ)μA(η) が成立すること。

ここで、ξとηはσ代数の要素なので“事象”です。上で言っていることは、Sの事象とTの事象に関して、“確率の積の公式”が成立することです。

2つの像σ代数 Im(f*), Imf(g*) ⊆ΣA が確率測度μA に関して独立であることを丁寧に述べれば:

  • 任意の β∈ΣB, γ∈ΣC に対して、μA(f*(β)∩g*(γ)) = μA(f*(β))μA(g*(γ)) が成立する。

これは、fとgの統計的独立性の定義です。

確率空間のテンソル

A = (A, ΣA, μA) と B = (B, ΣB, μB) が確率空間、つまり圏Probの対象のとき、そのテンソル積 A\otimesB を定義できます。(以下で、Pow(X) はXのベキ集合です。)

  1. A\otimesB の台集合は、直積集合 A×B とする。
  2. A\otimesB のσ代数は、α∈ΣA, β∈ΣA に対する α×β∈Pow(A×B) から生成される Pow(A×B) の部分σ代数で最小なもの*1として定義する。このσ代数を ΣA\otimesΣB と書く。
  3. A\otimesB の確率測度は、μA⊗B(α×β) = μA(α)μB(β) を満たすように定義された ΣA\otimesΣB 上の測度。この測度を μA\otimesμB と書く。

定義を簡単に書けば:

  • A\otimesB := (A×B, ΣA\otimesΣB, μA\otimesμB)

以上で、Probの対象に対するテンソル積は定義できたので、次に、射に対するテンソル積を定義します。

f:A→B, g:C→D in Prob として、f\otimesg:A\otimesC→B\otimesD in Prob を次のように定義します。

  1. f\otimesg の台写像は、f×g:A×C→B×D in Set、(f×g)(a, b) := (f(a), g(b)) 。
  2. f\otimesg のσ代数準同型写像 f*\otimesg*B\otimesΣD→ΣA\otimesΣC は、ΣB\otimesΣD を生成する β×δ(β∈ΣB, δ∈ΣD)に対して、(f*\otimesg*)(β×δ) := f*(β)×g*(δ) として定義される準同型写像。ここで、'×'は部分集合の直積。

ΣA\otimesΣC 上に載っている確率測度 μA\otimesμC のf\otimesgによる前送り測度 (f×g)*A\otimesμC) が、ΣB\otimesΣD 上の確率測度 μB\otimesμD と一致することは、別に証明が必要です(割愛、比較的簡単)。

Probテンソル単位対象〈モノイド単位対象〉Iは次のように定義します。

  1. Iの台集合は、単元集合 1 = {0} 。
  2. Iのσ代数は、ΣI := {\emptyset, {0}}
  3. Iの確率測度は、μI(\emptyset) = 0, μI({0}) = 1 。

以上で、対象に対する演算 (-\otimes-)、射に対する演算 (-\otimes-)、特定された対象Iが決まりました。これらがProbのモノイド構造であるためには、まだ定義すべきこと/証明すべきことがあります。

  1. (\otimes):Prob×ProbProb が二項関手〈双関手〉であることを示す。
  2. 結合律子(結合律の一貫性同型射の族) αA,B,C:(A\otimesB)\otimesC→A\otimes(B\otimesC) を定義する。
  3. 左単位律子(左単位律の一貫性同型射の族) λA:I\otimesA→A を定義する。
  4. 右単位律子(右単位律の一貫性同型射の族) ρA:A\otimesI→A を定義する。
  5. 結合律子のあいだのマックレーンの五角形等式を示す。
  6. 結合律子/単位律子のあいだのマックレーンの三角形形等式を示す。

これらの作業をすれば、(Prob, \otimes, I, α, λ, ρ) が、テンソル積に関してモノイド圏となることが分かります。面倒ではありますが、やれば出来ることなので省略します*2

射影付きモノイド圏とフランツ独立性

Cを(Probとは限らない)モノイド圏とします。記号の乱用で C = (C, \otimes, I, α, λ, ρ) と書きます。C×C は直積圏だとします。Π1:C×CC, Π2:C×CC は直積の第1成分, 第2成分をとる関手とします。

  • Π1(x, y) = x
  • Π2(x, y) = y

モノイド圏C上の射影系〈projections〉とは、2つの自然変換 π1::(\otimes)⇒Π1:C×CC, π2::(\otimes)⇒Π21:C×CC です。π1, π2 には、自然変換であること以外に特に条件はありません。π1, π2 を成分で書けば:

  • π1A,B:A\otimesB→A
  • π2A,B:A\otimesB→B

射影系を備えたモノイド圏を、射影付きモノイド圏〈monoidal category with projections〉と呼びます。射影付きモノイド圏のよく知られた例は、モノイド積が直積を与えるデカルト・モノイド圏です。デカルト・モノイド圏には、標準的な射影が備わっています。

(C, π1, π1) が射影付きモノイド圏のとき、同じ域を持つ2つの射 f:A→B, g:A→C (スパンと呼ぶ)に対してフランツの意味の独立性を定義できます。fとgがフランツ独立〈Franz independent〉だとは:

  • h:A→B\otimesC が存在して、f = h;π1B,C, g = h;π2B,C が成立すること。

デカルト・モノイド圏では、すべてのスパンがフランツ独立になります。

フランツ独立性に関する注意

フランツ独立性は、任意の射影付きモノイド圏 (C, π1, π2) に関して定義できます。「独立である」の主語は、Cのスパンです。ただし、前節の定義では、2-スパン(同じ域を持つ2本の射)だけが対象物で、一般的なn-スパン(同じ域を持つn本の射)の独立性は定義されません。

n-スパンに対する独立性を定義するには、n個の射影の族 πn1, πn2, ..., πnn が必要になります。n ≧ 3 に対しては、π1 = π21, π2 = π22 を組み合わせて構成できます。例えば:

  • π31A,B,C := π21(A⊗B),C21A,B : (A\otimesB)\otimesC→A
  • π32A,B,C := π21(A⊗B),C22A,B : (A\otimesB)\otimesC→B
  • π33A,B,C := π22(A⊗B),C : (A\otimesB)\otimesC→C

n = 1 に関しては:

  • π11A := idA : A→A

辻褄を合わせるために n = 0 では:

  • π0 := idI : I→I

これらの射影の系があれば、n-スパンのフランツ独立性が定義できます。Aから出る1-スパン f:A→B は常に独立で、Aから出る0-スパンA(対象のみ)は、A→I という射が在れば独立になります。

有限のインデックスセットIを持つn-スパン (fi:A→Bi | i∈I) がフランツ独立であることは、スパンの射達/射影達と可換図式を構成する射hが存在することです。

  • h:A→\bigotimes_{i\in I}Bi

このhを、n-スパンの独立タプル〈independent tuple〉と呼ぶことにします。2-スパンの場合は独立ペア〈independent pair〉です。0-スパンの独立タプルは A→I という射です。

n-スパンが独立でも、その独立タプルが一意的に存在することは保証されません。「存在するなら一意的である」という条件を付けると話が簡単になることもあるので、射影付きモノイド圏が一意存在の性質を持つとき、シャープsharp | 鋭利〉であるということにします。

  • 射影付きモノイド圏 (C, π1, π2) がシャープ :⇔ n-スパンの独立タプルが存在するなら一意的である。

n-スパンには0-スパンも入ります。射影付きモノイド圏がシャープであり、すべてのn-スパンが独立である(独立タプルを持つ)とき、その射影付きモノイド圏はデカルト・モノイド圏になります。デカルト・モノイド圏は、射影付きモノイド圏のなかで、独立タプルの存在と一意性において最も“強い”圏として特徴付けられます。

統計的独立性とフランツ独立性

2-スパンのケースで、最初に述べた確率変数の統計的独立性と、射影付きモノイド圏Probのフランツ独立性が同じであることを示します。

ここで、念の為繰り返し注意をします; (A, ΣA, μA) という書き方は記号の乱用で、ほんとは (ΩA, ΣA, μA) と書くべきです。f:(A, ΣA, μA)→(B, ΣB, μB) の構成素は、ΩfA→ΩB と ΣfB→ΣA ですが、台写像(台集合のあいだの写像)Ωfを単にfと書き、σ代数の準同型写像Σfをf*と書きます(もちろん、記号の乱用で)。

Probには、確率空間のテンソル積(と可測写像テンソル積)によりモノイド構造が入ります。射影 π1A,B:A\otimesB→A, π2A,B:A\otimesB→B in Prob は、台集合の射影(集合圏の射影)と対応するσ代数の準同型写像(部分集合の引き戻し)で定義します。こうして定義された射影が、確率測度を保存することは容易に示せます(つうか、そうなるようにテンソル積を定義している)。

いま定義した射影により、(Prob, π1, π2) は射影付きモノイド圏になります。確率空間にその台集合を対応させる忘却関手 Ω:ProbSet は、Setも射影付きモノイド圏とみなして“射影付き圏のあいだの関手”になります。確率空間のテンソル積を集合の直積に移し、テンソル積確率空間の射影を直積集合の射影に移します。

Probが射影付きモノイド圏になったので、フランツ独立性を定義できます。まず、後で使う補題として、次の等式を示します; f:A→B, g:A→C in Prob に対して、h:A→B\otimesC in Prob がfとgの独立ペア(のひとつ)だとして:

  • [補題] α∈ΣA, γ∈ΣC に対して、h*(β×γ) = f*(α)∩g*(γ)

hがfとgの独立ペアなので、

  1. π1\circh = f : A→B in Prob
  2. π2\circh = g : A→C in Prob

これより、

  1. h*\circ1)* = f* : ΣB→ΣA
  2. h*\circ2)* = g* : ΣC→ΣA

α∈ΣA, γ∈ΣC に対して、

  1. (h*\circ1)*)(β) = f*(β)
  2. (h*\circ2)*)(γ) = g*(γ)

1)*(β) = β×C, (π2)*(γ) = B×γ なので、

  1. h*(β×C) = f*(β)
  2. h*(B×γ) = g*(γ)

h*(β×γ) = h*(β×C ∩ B×γ) = h*(β×C)∩h*(B×γ) に、すぐ上の等式を代入すると:

  • h*(β×γ) = f*(β)∩g*(γ)

これで補題の等式が示せました。

次に、fとgがフランツ独立(独立ペアを持つ)ならば、fとgは、確率変数として統計的に独立なことを示しましょう。

任意の β∈ΣB, γ∈ΣC に対して、μA(f*(β)∩g*(γ)) を計算します。補題から:

  • μA(f*(β)∩g*(γ)) = μA(h*(β×γ))

hが確率測度を保存することから、μA(h*(-)) は μB\otimesC(-) に等しいので、

  • μA(f*(β)∩g*(γ)) = μB\otimesC(β×γ)

μB\otimesCの定義から、μB\otimesC(β×γ) = μB(β)μC(γ) なので、

  • μA(f*(β)∩g*(γ)) = μB(β)μC(γ)

fもgも確率測度を保存することから、μA(f*(β)) = μB(β) かつ μA(g*(γ)) = μC(γ) なので、

  • μA(f*(β)∩g*(γ)) = μA(f*(β))μA(g*(γ))

これは、確率変数fとgが統計的に独立なことです。以上で、フランツ独立性から確率変数の統計的独立性が従うことが分かりました。

逆方向の命題「確率変数fとgが統計的に独立なら、fとgはフランツ独立である」も示す必要がありますが、台写像デカルト・ペア <f, g> : A→B×C in Set を台写像とする確率空間のあいだの射 h:A→B\otimesC を作って、それがfとgの独立ペアになることを示せばOKです。

おわりに

前回の記事「統計的独立性と線形独立性を共通に語ることは出来るのか?」で紹介したシンプソン独立性と、今回の記事のフランツ独立性を一緒に考えて、2つの独立性の関連を探ると、統計的独立性に関する理解が深まると思います。

また、シンプソン独立性/フランツ独立性は、統計的独立性以外の“独立性”概念の分析にも利用できるでしょう。

*1:射影 A×B→A と A×B→B が可測写像になるような最小のσ代数と言っても同じです。

*2:モノイド圏におけるマックレーンの五角形・三角形等式(一貫性制約)については「モノイド圏と加群圏に関するフォークロアとマックレーン五角形・三角形」に書いてあります。

統計的独立性と線形独立性を共通に語ることは出来るのか?

統計的独立性は確率・統計において重要な概念です。「独立」という言葉は色々な分野で使われます。おそらく一番お馴染みな独立性は、統計的独立性ではなくて線形独立性でしょう。単語として「独立」が使われているからといって、統計的独立性と線形独立性が関係するとは考えにくいですよね。

しかし、とある枠組み〈フレームワーク〉のなかでは、二者を統一的に説明することが可能です。

内容:

統計的独立性

確率的な試行をn回するとします。例えば、サイコロを3回ふる(試行=サイコロふり、n = 3)とかです。i回目(1 ≦ i ≦ n)の試行を、確率変数Xiで表現するとして、X1, X2, ..., Xn は、通常は独立だと仮定されます。

幾つかの確率変数が独立であることをチャンと定義するのは、けっこう難しい話になります。が、今は何らかの方法で独立性が定義できたとしましょう。「独立」という言葉は様々な分野で様々な意味で使われるので、サイコロふりなどで現れる独立性は、確率変数の確率的/統計的独立性と呼ぶことにします。ちょっと長すぎるので、次のように省略するのは許します(不用意に「独立性」とは言わない)。

  1. 確率変数の独立性〈independence of random variables〉
  2. 確率的独立性〈stochastic independence〉
  3. 統計的独立性〈statistical independence〉

統計的独立性を定義するために使われる諸々の概念・用語; 「確率変数」、「確率分布」、「母集団」などはだいぶ曖昧で混乱しています。その点については、次の記事とそこから参照されている他の記事を見てください。

フランツの定義とシンプソンの定義

統計的独立性(の一般化)を、圏論的に定義したものとして、ウヴェ・フランツの論文があります。

フランツによる統計的独立性の定義は、2つの確率空間(台集合、σ代数、確率測度の3つ組) (X, ΣX, μX), (Y, ΣY, μY) のテンソル積 (X×Y, ΣX\otimesΣY, μX\otimesμY) に基づいています。フランツの独立性は、必ずしも統計的独立性に限定はされませんが、「テンソル積〈モノイド積〉ありき」から出発します。

統計的独立性の定義が、いつでもテンソル積に基づいているわけではありません。事象の独立性やσ代数の独立性から、確率変数の独立性を定義するのが普通です。むしろ、確率空間のテンソル積を正面から導入するほうが珍しい(あまりやらない)でしょう*1

アレックス・シンプソンも、統計的独立性を含む一般的な独立性概念の圏論的な定式化を提案しています。

シンプソンの独立性は、テンソル積〈モノイド圏のモノイド積〉を使っていません。「個々のケースごとに独立性をどう定義すべきか?」という問題意識ではなくて、「一般的に「独立性」と呼ばれる性質を、できるだけ抽象的に捉えたい」という動機からの定式化です。

この記事では、シンプソンの定義(を多少変更したもの)に基づいて、統計的独立性と線形独立性を一様に説明できる枠組みを構成します。

線形独立性

話を簡単にするために、ベクトル空間は実数体R上の有限次元ベクトル空間に限ります*2。有限次元のR-ベクトル空間と線形写像の圏を FdVectR とします。ベクトル空間のテンソル積(モノイド構造)は考えません。

ベクトル空間Vの部分集合A(A⊆V)の線形独立性はご存知でしょう。単一の部分集合ではなくて、2つの部分集合 A, B⊆V に対して、AとBが線形独立であることを次の条件(すべて満たす)で定義します。

  1. AはV内で線形独立である。
  2. BはV内で線形独立である。
  3. Aが生成するVの部分ベクトル空間と、Bが生成するVの部分ベクトル空間の共通部分はゼロだけ。

この線形独立性の定義をもう少し扱いやすくしましょう。そのために、集合から生成された自由ベクトル空間を使います。集合Aから生成された自由ベクトル空間を R[A]1 とします。この記号のココロは、Aを不定元集合として生成された実係数多項式の集合 R[A] の(同次の)1次式部分ということです。

ベクトル空間Vに対して A, B⊆V ならば、次の写像達が誘導されます。(使っている概念・記号に関しては、この節最後の補足コラムで説明しています。)

  1. 包含写像 i:A→V
  2. 包含写像 j:B→V
  3. iとjのコタプル写像 [i, j]:(A + B)→V
  4. iに伴う線形写像 i#:R[A]1→V
  5. jに伴う線形写像 j#:R[B]1→V
  6. i#とj#のコタプル線形写像 [i#, j#]:R[A]1\oplusR[B]1→V

また、集合AとBの直和を A + B と書けば、次のベクトル空間の同型が成立します。

  • R[A]1\oplusR[B]1 \stackrel{\sim}{=} R[A + B]1

よって、上記の最後のコタプル線形写像は、R[A + B]1→V とみなすこともできます。

さて、A, B⊆V が線形独立であることは、コタプル線形写像を用いて次のように表現できます。

  • コタプル線形写像 [i#, j#]:R[A]1\oplusR[B]1→V が単射である。

より一般に、A1, ..., An⊆V に対して、これらが線形独立であることを次のように定義します。

  • コタプル線形写像 [(i1)#, ..., (in)#]:R[A1]1\oplus ... \oplusR[An]1→V が単射である。

単一の部分集合 A⊆V に対しては、

となり、部分集合の個数に関係せずに、幾つかの部分集合達の線形独立性が定義できます*3

[補足]
集合AとBの直和は、「共通部分〈交わり〉なしの合併」と考えればいいのですが、具体的な定義が欲しいときは:

  • A + B := {(x, i)∈(A∪B)×{1, 2} | (x∈A かつ i = 1) または (x∈B かつ i = 2)}

この具体的な定義を使うことにして、f:A→X と g:B→X のコタプル写像 [f, g]:(A + B)→X は:

  • [f, g](x, i) := if (i = 1) then f(x) else /* i = 2 */ g(x) endif

包含写像とは恒等写像を部分集合に制限したものなので、i, j が包含写像なら:

  • [i, j](x, i) := if (i = 1) then x else /* i = 2 */ x endif

Vはベクトル空間として f:A→V の線形拡張 f#:R[A]1→V は:

  • f#a∈A ξaa) := Σa∈A ξaf(a) (ξaR

線形写像 φ:U→V と ψ:W→V のコタプル線形写像 [φ, ψ]:U\oplusW→V は:

  • [φ, ψ](u, w) := φ(u) + ψ(w)

[/補足]

コスパン独立性

前節で、ベクトル空間Vの部分集合達 A1, ..., An が線形独立であることを定義しました。線形独立性の定義には、n個の線形写像 (i1)#:R[A1]1→V, ..., (in)#:R[An]1→V が使われました。であるならば、n個の線形写像 f1:U1→V, ..., fn:Un→V に対して線形独立性を定義してもいいでしょう。

余域がVであるn個の線形写像 f1:U1→V, ..., fn:Un→V が線形独立であるとは:

  • コタプル線形写像 [f1, ..., fn]:U1\oplus ... \oplusUn→V が単射である。

「独立である」の主語は、n個の集合からn個の線形写像に変化しています。さらに、線形写像を一般的な射に置き換えることにより、任意の圏C上の独立性構造〈independence structure〉を定義します。「独立である」の主語は、n個(むしろn本)のCの射になります。ただし、それらの射の余域は同一です。

Cを圏として、同一の余域を持つn本の射のリスト (f1:A1→B, ..., An→B) をn-コスパ〈n-cospan〉と呼びます。n = 0, 1 の場合、つまり (), (f:A→B) もコスパンとして認めます。射を矢印で描くと、n-コスパンは、ひとつの点に合流する矢の並びになります。n = 0 のときは、先端点である対象Bだけがあると考えます。

Cの、“対象Bを余域とするn-コスパン”の全体を Cospn(C, B) と書きます。Cが小さい圏でないなら、Cospn(C, B) は集合(小さい集合)とは限らず、真クラス〈proper class〉になるかも知れません。なので、「クラス」という言葉を使いますが、サイズの問題はあまり気にしません。次の記号も使います。

  • Cosp(C, B) := \bigcup(n∈N | Cospn(C, B))
  • Cospn(C) := \bigcup(B∈Obj(C) | Cospn(C, B))
  • Cosp(C) := \bigcup(n∈N, B∈Obj(C) | Cospn(C, B))

Cosp(C)は、圏Cのすべてのコスパンのクラスです。

コスパンを構成する射を識別するインデックスには、通常は自然数 1, 2, ..., n を使いますが、任意の有限集合をインデックスセットに許したほうが便利です。コスパンを (fi | i∈I) のように書いたとき、Iは必ずしもNの部分集合とは限らない有限集合だとします。

Cのすべてのコスパンのクラス Cosp(C) の部分クラスを、X, Y などの斜体文字で表すことにします。以下、X, Y などは(圏C上の)コスパンのクラスです。

C上のコスパンのクラスXが次を満たすとき、Xインデックスセットの全単射取り替えに対して安定〈stable under bijective change of index-set〉といいます*4

  • (fi:Ai→B | i∈I)∈X、τ:J→I が全単射のとき、(fτ(j):Aτ(j)→B | j∈J)∈X

今後考えるコスパンのクラスは、常にインデックスセットの全単射取り替えに対して安定だとします。別な言い方をすると、射のリストの並び順は気にしなくてもいいことになります(無視はしないほうがいいけど)。

C上のコスパンのクラスX(インデックスセットの全単射取り替えに対して安定は前提)が次を満たすとき、X複圏〈multicategory〉をなすといいます。

  1. 任意の対象 A∈|C| に対して、単一射からなるコスパン (idA)∈Cosp1(C, A) は X に属する。
  2. (g:Bj→C | j∈J)∈X、j∈J ごとに、(fj,i:Aj,i→Bj | i∈Ij)∈X、このとき、(fj,i;gj:Aj,i→C | (j, i)∈Σ(j∈J | Ij)) 。

二番目の条件は、木の接ぎ木結合〈grafting〉に対して閉じていることです。接ぎ木結合は、m本の枝を持つ木gとm本の木fi(合計(m + 1)本の木)に対して、gの各枝にfiの根を接合して大きな木を作ることです。

ちなみに、今定義した複圏の構造は、対称色付きオペラッド〈symmetric coloured operad〉とも呼びます。

R上の有限次元ベクトル空間の圏FdVectRにおいて、線形独立なコスパン (fi:Ui→V | i∈I) の全体をXとすると*5

  1. Xは、インデックスセットの全単射取り替えに対して安定。
  2. Xは、複圏をなす。

さらに、Xはインデックスセットの全単射取り替えに対する安定性より強い性質を持ちます。それは:

  • (fi:Ui→V | i∈I)∈X、τ:J→I が単射のとき、(fτ(j):Uτ(j)→V | j∈J)∈X

全単射だけではなくて、インデックスセットの単射取り替えに対する安定性〈stability under injective change of index-set〉を持ちます*6

一般に、圏C上のコスパンのクラスCosp(C)の部分クラスXが指定されており、Xがインデックスセットの単射取り替えに対して安定な複圏構造を持つとき、XC上のコスパン独立性構造〈cospan independence structure〉と呼びます。コスパン独立性構造をコスパン独立性とも呼びます。誤解の恐れがなければ、単に独立性ともいいます。

FdVectR上の線形独立なコスパンの全体は、コスパン独立性構造の事例です。

スパン独立性

シンプソンの論文における独立性は、前節のコスパン独立性に対して、「矢印の向きを反対にする」という意味で双対的なものです。

Cを圏として、同一の域を持つn本の射のリスト (f1:A→B1, ..., A→Bn) をn-スパン〈n-cospan〉と呼びます。圏Cの、“対象Aを域とするn-スパン”の全体を Spann(C, A) と書きます。次の記号も使います。

  • Span(C, A) := \bigcup(n∈N | Spann(C, A))
  • Spann(C) := \bigcup(A∈Obj(C) | Spann(C, A))
  • Span(C) := \bigcup(n∈N, A∈Obj(C) | Spann(C, A))

C上のコスパンのクラスXに対して、Xインデックスセットの全単射取り替えに対して安定〈stable under bijective change of index-set〉であることも前節と同様に定義します。

複圏の双対概念を余複圏〈comulticategory〉として、クラスXが余複圏をなすことも前節と同様です。木〈ツリー〉の向きが「葉から根」に対して「根から葉」の向きに変わります。

CのスパンのクラスXがスパン独立性構造〈span independence structure〉だとは:

  1. Xは、インデックスセットの全単射取り替えに対して安定。
  2. Xは、余複圏をなす。
  3. (fi:A→Bi | i∈I)∈X、τ:J→I が単射のとき、(fτ(j):A→Bτ(j) | j∈J)∈X

三番目から一番目は出るので、冗長な条件になっていますが、このほうが分かりやすくでしょう。スパン独立性構造をスパン独立性とも呼びます。誤解の恐れがなければ、単に独立性ともいいます。

シンプソンの独立性は、もうひとつ条件が加わっています。それは:

  • 任意の射 f:A→B に対して、単一の射からなるスパン (f:A→B) はXに所属する。

この条件をシングルトン条件〈singleton condition〉と呼びましょう。このシングルトン条件を独立性構造の定義に入れなかったのは、前節の線形独立性がシングルトン条件を満たさないからです。コスパン独立性、スパン独立性を広い範囲で考えたいなら、シングルトン条件は追加・削除が可能な形にしておいたほうが良さそうです。

確率空間と確率測度を保存する可測写像の圏をProbとすると、確率変数(=確率測度を保存する可測写像)の独立性は、圏Prob上のn-スパン (f1:A→B1, ..., fn:A→Bn) のスパン独立性になります。単一の確率変数からなる1-スパン (f:A→B) は独立とみなすので、圏Prob上の(標準的な)スパン独立性はシングルトン条件を満たします。

コスパン生成性とスパン生成性

コスパン独立性とスパン独立性は互いに双対の関係になります。これとは別な双対性があります。コスパン独立性の別な双対としてコスパン生成性、スパン独立性の別な双対としてスパン生成性を考えましょう。

コスパン生成性は、線形独立性に対する線形生成性から思い付いたものです。まずは、線形生成性から説明します。線形写像 f:U→V が線形生成〈linear generation〉だとは、fが全射であることだと定義します。部分集合 A⊆V が生成系〈generating system〉であるとき、包含写像の線形拡張 R[A]1→V は線形生成(つまり全射)になります。

FdVectR上のn-コスパン (fi:Ui→V | i∈I) が線形生成であることは、コタプル写像 [fi | i∈I]:(\oplusi∈IUi)→V が全射であることだと定義します。

FdVectR上の、すべての線形生成コスパンからなるクラスXは次の性質を持ちます。

  1. Xは、インデックスセットの全単射取り替えに対して安定。
  2. Xは、複圏をなす。
  3. (fi:Ui→V | i∈I)∈X、τ:J→I が全射のとき、(fτ(j):Uτ(j)→V | j∈J)∈X

線形独立コスパンのクラスとの違いは、インデックスセットの(単射ではなくて)全射取り替えに対して安定していることです。

線形生成コスパンのクラスを一般化して、圏C上のコスパン生成性構造〈cospan generation structure〉を定義できます。その定義はもう明らかでしょう。矢印を逆転させる双対をとって、圏C上のスパン生成性構造〈span generation structure〉も定義できます。

次の4つの構造は双対性で互いに結び付けられているので、一緒に考えたほうがいいと思います。

  1. コスパン独立性構造
  2. スパン独立性構造
  3. コスパン生成性構造
  4. スパン生成性構造

*1:潜在的には、確率空間のテンソル積を使っていることになりますが。

*2:今回の話では、有限次元じゃなくても難しくはなりません。気分的に簡単な印象があるだけです。

*3:定義から分かるように、A1, ..., An の線形独立性は、単一の集合 A1∪ ... ∪An の線形独立性に帰着されます。その意味では、複数の集合に関する線形独立性が必須とは言えません。

*4:シンプソンは、単に安定と呼んでいます。

*5:線形独立なコスパンは、jointly monic cospan です。関連する話題が「余関係=関係の双対概念」にあります。

*6:シンプソンは、この安定性をアフィン〈affine〉と呼んでいます。

随伴系の二重圏

ひとつ前の記事「随伴系の圏の多様性」にて:

1AdjL(Cat)(あるいは、1AdjR(Cat))だけでも、モナド/コモナドを調べる道具に使えます。が、やはり随伴系の二重圏が欲しい。というわけで、随伴系の二重圏についても述べたいとは思っています(いつかわからんが)。

随伴系の二重圏は色々と使い途があるので、早めに定義しておきます。

内容:

形式論と具体論

モナドや随伴の理論には、形式論〈formal theory〉と具体論〈concrete theory〉があります。「最近のモナド論の概観と注意事項 1/2 // モナド論を分類すれば」では、形式論と“非形式論”という言葉を使ったのですが、ここでは具体論にします。

形式論は、一般的な厳密2-圏(または弱2-圏=双圏)Kを舞台として理論を展開します。それに対して、具体論は K = Cat と固定した理論になります。この記事では、主に具体論を扱いますが、ほとんどは形式論でも通用する話です。形式論の用語もけっこう使います。念の為に、「形式論 vs. 具体論」の対応表を載せておきます。

形式論 具体論
K Cat
対象=0-射
射=1-射 関手
2-射 自然変換

形式論におけるモナド/随伴系を、形式モナド/形式随伴系と言う人もいますが、そこまで区別するのは面倒だし意味もないと思うので区別しません。

厳密2-圏K内のモナドの全体を Mnd(K)、随伴系の全体を Adj(K) と書きます。しかし、モナドの全体も随伴系の全体も色々な種類があるので、'Mnd'と'Adj'に対して左下付きと右下付きで様々な修飾をします(「最近のモナド論の概観と注意事項 2/2」と「随伴系の圏の多様性」参照)。

上下左右の使い方

圏論、特に高次圏論の学習では、“上下左右”に慣れることが肝だと思います。なので、上下左右の話は、何度も何度も何度も繰り返しています*1。比較的最近だと:

その後の記事でも再度注意しています。

随伴系に関して言えば、2つの関手が構成素〈constituent | ingredient〉として含まれます。その2つの関手の片方を左関手と呼び、もう一方を右関手と呼びます。「左右」は単にペア〈カップル | コンビ〉における役割を区別するだけなので、「左関手・右関手」の代わりに「妻関手・夫関手」でも「ボケ関手・ツッコミ関手」でもかまいません。(次の記事も参照。)

一方で、図(ペースティング図とストリング図)を描いたとき、ほんとの空間的な位置・方向として上下左右を使うこともあります。さらには、空間的位置・方向にちなんで用語〈テクニカルターム〉が決められることもあります。ところがさらに、図の描き方(描画方向)が多様なので、描き方を変えると空間的位置・方向と用語は一致しなくなります。

圏論の極限を具体的に // 関手の極限の復習」に挙げた例ですが、次の圏論用語は同義語(「右カン拡張」は類義語)です。

  • 極限=逆極限=左根≒右カン拡張

もうほんとにどうにもならないグチャグチャ状況で、改善は無理でしょう。やれることは、注意して混乱や誤解を避けることだけ。今回の二重圏の話では、上下左右の議論がウンザリするほど登場します。ご注意ください。

2-射の形状

この記事では、圏を対象として随伴系を水平射として、関手を垂直射とする二重圏〈double category〉を考えます。二重圏やその実例については、次の記事に書いてあります。

随伴系の二重圏と言っても、作り方のオプションがいっぱいあるのですが、とりあえずは曖昧かつ総称的に、単に「二重圏」と呼んでおきます。

二重圏で注目すべきはその2-射〈2-セル〉です。2-射の図は2次元的な四角形になります。ここから先の説明で出てくる「上下左右」は、基本的には空間的な位置・方向のことです。ただし、左関手/右関手、(後で出てくる)左自然変換/右自然変換の「左右」は役割を識別する「左右」です。水平射を左から右、垂直射を上から下に描くことにします。

この描画方向で、二重圏の2-射αは次のようになります。

 C --(A)-→ D
 |         |
(F)   α   (G)
 |         |
 v         v
 C' -(A')→ D'

AとA'はそれぞれ随伴系で、水平射としての方向は随伴系の左関手の方向に合わせています。A = (η, ε: L -| R, L:CD), A' = (η', ε': L' -| R', L':C'D') とすれば、方向は次のようです:

  • A:CD は、L:CD と同じ方向。R:DC とは逆方向。
  • A':C'D' は、L':C'D' と同じ方向。R':D'C' とは逆方向。

もちろん、随伴系の方向を右関手の方向に合わせても何の不都合もなく、水平射の方向の選択はまったく恣意的です。

二重圏の2-射αは、実は2つの自然変換(もとにする厳密2-圏Catの2-射)から構成されます。α = (αleft, αright) とします。αleftとαrightが何モノであるか分かるように絵を描くと:

αleftは、上下辺が左関手LとL'である四角形(図のピンクの四角形)として描かれます。なので、左自然変換〈left natural transformation〉と呼ぶことにします。左関手/左自然変換の「左」は空間的位置・方向ではなくて、役割を識別する形容詞です。同様に、上下辺が右関手RとR'である四角形(図で奥側の水色の四角形)として描かれる自然変換は右自然変換〈right natural transformation〉です。左自然変換と右自然変換のペアが二重圏の2-射を構成します。

2-射αの構成素である左自然変換αleftを考えると、その方向の選び方は二種類あります。

  1. αleft: F*L'⇒L*G (下図の左側)
  2. αleft: L*G⇒F*L' (下図の右側)

一番目の方向を(地図の方向から)北東〈North-East〉方向、二番目の方向を南西〈South-West〉方向と呼ぶことにします。

2-射αの右自然変換αrightの方向の選び方も同様に2つの方向があります。

  1. αleft: R*F⇒G*R' (下図の左側)
  2. αleft: G*R'⇒R*F (下図の右側)

ただし、この図では、随伴系の右関手 R, R' のアローの方向が右から左になっています。通常の左から右にすれば、自然変換の方向も変化して見えます。我々は、右関手を逆向きに描くこの描画法を採用します。最初の立体的な絵において、左自然変換の面を正面に見る方向から観測して描いていると思ってください(裏側からは見ない)。図の左側が南東〈South-East〉方向、図の右側が北西〈North-West〉方向です。

αleft, αrightの方向の組み合わせは4種類になります。

  1. αleftが北東方向、αrightが南東方向
  2. αleftが北東方向、αrightが北西方向
  3. αleftが南西方向、αrightが南東方向
  4. αleftが南西方向、αrightが北西方向

しかし、とある条件(次節)を付けてふるい落とすと一種類だけが残ります。左自然変換が北東方向、右自然変換が南東方向が我々が使う組み合わせです。最初に選ぶ随伴系の方向を右関手に合わせると、右自然変換が南西方向、左自然変換が北西方向になります。とある条件については、次節で説明します。

メイト

前節で多様な方向について述べました。随伴系の方向の選び方が2種あり、それぞれについて、二重圏の2-射(=左自然変換と右自然変換のペア)の方向の選び方が4種あるので、二重圏としての方向の選び方は8種あり、方向の定義が異なる8つの二重圏が出来ます。

しかし、モナドと随伴系の関係を調べる目的では、8つの二重圏は無駄に一般的過ぎるようです。モナド論のなかでは、2-射の左自然変換と右自然変換が無関係である場合は出現しないからです。2-射の左自然変換と右自然変換には次の条件を課します。

  • 2-射を構成する左自然変換と右自然変換は、互いにメイト〈mate〉である。

今からメイトの説明をしますが、「互いにメイト」の特殊ケースでよく知られたものがあります。紹介しておきます。

  1. 随伴系によるホムセットの同型 D(L(A), Y) \stackrel{\sim}{=} C(A, R(Y)) により、射 g:L(A)→Y と f:A→R(Y) が互いに転置になる。
  2. ベクトル空間のあいだの2つの線形写像 f:V→W と g:W*→V* が互いに双対になる。

「互いに転置」「互いに双対」は、「互いにメイト」の特殊ケースです。今日は、メイトの一般論とその特殊ケースの関係を論じることはしませんが、随伴系の転置、線形写像の双対については次の記事で述べています。

さて、メイトという言葉をどのように使うかを説明します。実際の定義は次節です。

  • とある2つの自然変換の集合のあいだに1:1の対応がある。この対応をメイト対応〈mate correspondence〉、またはメイト同型〈mate isomorphism〉と呼ぶ。
  • メイト対応で対応付けられる2つの自然変換は互いにメイト〈mate〉であるという。

メイト対応

A = (η, ε: L -| R, L:CD) と A' = (η', ε': L' -| R', L':C'D') を2つの随伴系とします。次のような自然変換の集合を考えます。

  1. Nat(F*L', L*G:CD') : 関手 F*L':CD' から関手 L*G:CD' への自然変換の集合
  2. Nat(R*F, G*R':DC') : 関手 R*F:DC' から関手 G*R':DC' への自然変換の集合
  3. Nat(L*G, F*L':CD') : 関手 L*G:CD' から関手 F*L':CD' への自然変換の集合
  4. Nat(G*R', R*F:DC') : 関手 G*R':DC' から関手 R*F:DC' への自然変換の集合

先に導入した左自然変換/右自然変換と、自然変換の地図的方向を使って表現すれば:

  1. Nat(F*L', L*G:CD') : 北東方向の左自然変換の集合
  2. Nat(R*F, G*R':DC') : 南東方向の右自然変換の集合
  3. Nat(L*G, F*L':CD') : 南西方向の左自然変換の集合
  4. Nat(G*R', R*F:DC') : 北西方向の右自然変換の集合

地図的方向は、左自然変換を正面に見る視点から観測して言ってることで、右関手は奥側を右から左に向かっています。

さて、メイト対応は、次のような対応です。

  • Nat(F*L', L*G:CD') ←→ Nat(R*F, G*R':DC')

互いに逆写像であるペアなので、2つの写像があります。それらは、絵(ストリング図)を使えば簡単で印象的に表せます。

写像に名前を付けるより、次のような象形文字風の演算子記号を使うと分かりやすいでしょう。

  • (-):Nat(F*L', L*G:CD')→Nat(R*F, G*R':DC')
  • (-):Nat(R*F, G*R':DC')→Nat(F*L', L*G:CD')

(-)(-) が互いに逆なのは、随伴のニョロニョロ関係式〈snake relation〉から明らかです。

Nat(L*G, F*L':CD') と Nat(G*R', R*F:DC') のあいだでは、随伴系の単位・余単位を使ったメイト対応がうまく定義できないことが(やってみれば)分かります。随伴は完全な対称性は持ってないのですよね。ただし、(ストリング図で言えば)左右のワイヤーを交換するノードがあれば、メイト対応もどきが定義できるかも知れません(未確認)。

互いにメイトである自然変換のペアをメイトペア〈mate pair〉と呼ぶことにします。メイトペアの相方〈パートナー〉を求めるには、演算子 (-) または (-) を適用すれば済みます。

二重圏としてのAdjの定義

メイトペアの準備ができれば、随伴の二重圏を定義できます。

まず、水平圏として 1AdjL(Cat) か 1AdjR(Cat) のどちらかを選びます。今は 1AdjL(Cat) を選んだとしましょう。2-射は、互いにメイトになっている左自然変換と右自然変換のペアを選びます。こうして作った二重圏を次のように書きます。

  • dAdjL(Cat)

水平圏を 1AdjR(Cat) に選ぶと、次の二重圏ができます。

  • dAdjR(Cat)

dAdjL(Cat) と dAdjR(Cat) の2-射の状況は、次のように図示できます。バッテンに交差した2本の二重矢印は、互いにメイトである自然変換を表します。

dAdjL(Cat), dAdjR(Cat) が二重圏の公理を満たすことを確認する必要がありますが、ペースティング図かストリング図を使えば容易に確認できます。

二重圏Adjの利用

今回定義したような随伴の二重圏は、1960年代後半には、パルムクイスト〈Paul H. Palmquist〉*2により調べられていたようです。(紙の出版物でしかアクセスできないので、実物は見てません。)

  • Paul H. Palmquist. The Double Category of Adjoint Squares. PhD thesis, University of Chicago, 1969.

メイト対応を含めた随伴系の全体を把握するために、二重圏に編成するのはとても良いアイデアだと思います。二重圏の基本理論を適用して、随伴系達の構造がハッキリと見えるようになります。

二重圏を定義する場合、随伴系を水平射とするか垂直射とするかもオプションなので、随伴系を垂直射とした定義もあります。当然ながら、上下左右の話は丸っきり変わってしまいます。(が、本質的には同じこと。)

具体的な厳密2-圏Catをベースに話をしましたが、一般的・抽象的な厳密2-圏Kに対しても二重圏 dAdjL(K), dAdjR(K) を定義できます。さらには、弱2-圏〈双圏〉Kに対しても同様な議論ができます。

メイト」の節でちょっと触れたように、双対ベクトル空間/双対線形写像は、単対象弱2-圏とみなした VectK(Kは適当なスカラー体)に対する dAdjL(VectK) を使って定式化できます。

そしてもちろん dAdj(K)(右下の'□'には'L'か'R'が入る) は、モナドと随伴系の関係を調べるときの基本的な道具になります。モナドの圏は、dAdj(K) に埋め込むことができます。

dAdj(K) に、さらに3-射を加えて3次元の圏を作れます。この3次元構造は、モナドの2-射(モナドのあいだの射のあいだの射)を調べるときに必要となります。

また、dAdj(K) は、二重圏の事例としても面白いと思います。パラメータKを変えれば様々な二重圏を作れるので、事例の供給源になりそうです。

*1:自分(檜山)が上下左右のような空間認識が苦手で苦労しているので、過度に強調しているかも知れません。

*2:https://ja.forvo.com/search/Palmquist/ によると、"Pa"は「パ」とは発音しないようですが、うまくカタカナ表記できないし、綴りが連想できるように「パ」にしました。