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

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

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

参照用 記事

マルコフ・テンソルに関連する圏達

昨日の記事「マルコフ圏におけるテンソル計算の手順とコツ」で次のような表を挙げました。

対象が番号/番号リスト 対象が集合/集合リスト 簡約多圏
L FinSet Poly(FinSet)
Mat FXMat Poly(FXMat) = FXTens
Tens FXTens = T -

これらの圏について、ちょっと説明を付け加えておきます。$` %
\newcommand{\P}{ {\bf P} }%
\newcommand{\N}{ {\bf N} }%
\newcommand{\In}{ \mbox{ in } }%
\newcommand{\For}{ \mbox{For } }%
\newcommand{\lis}[1]{ \boldsymbol{ #1 } }%
\newcommand{\mrm}[1]{ \mathrm{#1} }%
\newcommand{\Map}{ \mathrm{Map} }%
\newcommand{\List}{ \mathrm{List} }%
`$

内容:

対象とホムセット

対象の集合(大きな集合=類 かも知れない)に注目すると、次のようになっています。

  1. |L| = N
  2. |Mat| = N
  3. |Tens| = List(N)
  4. |FinSet| = (すべての有限集合)
  5. |FXMat| = |FinSet|
  6. |FXTens| = List(|FinSet|)

自然数に上付きのバーは次の意味だとします。

  • $`\bar{0} := \emptyset`$
  • $`\bar{1} := \{1\}`$
  • $`\bar{2} := \{1, 2\}`$
  • $`\bar{n} := \{1, 2, \cdots, n\}`$

リスト $`\lis{n}\in \List(\N)`$ に対しては、

  • $` \bar{\lis{n}} = \overline{(n_1, \cdots, n_r)} := (\bar{n_1}, \cdots, \bar{n_r})`$ (集合のリスト)

$` \P := \{x\in {\bf R}\mid x \ge 0\}`$ は非負実数の集合で、足し算と掛け算を考えて半環になります。以下、行列・テンソルの係数は任意の実数ではなくて非負実数だとします。

さて、ホムセットは次のようです。

  1. $`\For n, m\in \N,\: {\bf L}(n, m ) := \Map(\bar{n}, \bar{m})`$
  2. $`\For n, m\in \N,\: {\bf Mat}(n, m ) := (n列m行の行列の全体) = \Map(\bar{n}\times\bar{m}, \P)`$
  3. $`\For \lis{n}, \lis{m}\in \List(\N),\: {\bf Tens}(\lis{n}, \lis{m}) := \Map(\prod(\bar{\lis{n}})\times \prod(\bar{\lis{n}}), \P)`$
  4. $`\For A, B\in |{\bf FinSet}|,\: {\bf FinSet}(A, B) := (AからBへの写像の全体) = \Map(A, B)`$
  5. $`\For A, B\in |{\bf FinSet}|,\: {\bf FXMat}(A, B) := \Map(A\times B, \P) `$
  6. $`\For \lis{a}, \lis{b}\in \List(|{\bf FinSet}|),\: {\bf FXTens}(\lis{a}, \lis{b}) := \Map(\prod(\lis{a})\times \prod(\lis{b}), \P) `$

このなかで、FXTens については、T という短い名前で昨日の記事で詳しく説明しました。

相互関係

自然数 $`n`$ に集合 $`\bar{n}`$ を対応させると、次のような規準的な埋め込み関手が作れます。

  • LFinSet
  • MatFXMat
  • TensFXTens (リスト $`\lis{n}`$ に集合のリスト $`\bar{\lis{n}}`$ )

それだけでなくて、“縦方向”の埋め込み関手も存在します。

$`\xymatrix {
{\bf L} \ar[d] \ar[r] & {\bf FinSet} \ar[d] \\
{\bf Mat}\ar[d]\ar[r] & {\bf FXMat} \ar[d]\\
{\bf Tnes}\ar[r]& {\bf FXTens}
}
`$

上段の縦方向は identity-on-objects(対象の上では恒等)な関手で、ホムセットのあいだでは埋め込み写像になっています。下段の縦方向は、対象の自然数/集合を単項リスト〈singleton list〉にする充満忠実関手です。

無限集合も入れると

ここまで、対象として現れる集合はすべて有限集合でした。無限集合も許すと、前節の図式を次のように拡張できます。右列の横方向関手は、充満忠実埋め込み関手になっています。

$`\xymatrix {
{\bf L} \ar[d] \ar[r] & {\bf FinSet} \ar[d] \ar[r] & {\bf Set} \ar[d]\\
{\bf Mat}\ar[d]\ar[r] & {\bf FXMat} \ar[d] \ar[r] & {\bf XMat} \ar[d] \\
{\bf Tnes}\ar[r] & {\bf FXTnes}\ar[r] & {\bf XTens}
}
`$

ここで出てきた XMat, XTens は次のように定義されます。

  • $` |{\bf XMat}| := |{\bf Set}|`$
  • $`\For A, B\in |{\bf XMat}|,\: {\bf XMat}(A, B) := \Map(A, \Map_{\mrm{finSupp}}(B, \P) ) `$
  • $` |{\bf XTens}| := \List(|{\bf Set}|) `$
  • $`\For \lis{a}, \lis{b}\in |{\bf XTens}|,\: {\bf XTens}(\lis{a}, \lis{b}) := \Map(\prod(\lis{a}), \Map_{\mrm{finSupp}}(\prod(\lis{b}), \P) ) `$

ここで、

  • $`\For f\in \Map(X, \P),\: \mrm{supp}(f) := \{x\in X \mid f(x)\ne 0\}`$
  • $` \Map_{\mrm{finSupp}}(X, \P) := \{f\in \Map(X, \P)\mid \mrm{supp}(f) が有限集合\}`$

無限集合を許すと、有限台〈finite support〉という条件を付ける必要があり、定義や計算が面倒になります。興味ある人は、有限の場合の定義を無限集合まで拡張してみるといいでしょう。

保存法則による制限

前節の図式の中段と下段の二行に出てくる圏は、行列の圏またはテンソルの圏です。行列/テンソルに関しては、保存法則〈conservation law〉を考えることができます。

  • $`\forall x\in A.(\, \sum_{y\in B} m(y\mid x) = 1 \,)`$ (行列の保存法則)
  • $`\forall x\in \prod(\lis{a}).(\, \sum_{y\in\prod(\lis{b})} t(y\mid x) = 1 \,)`$ (テンソルの保存法則)

保存法則を満たす行列/テンソルをマルコフ行列/テンソル〈Markov matrix/tensor〉と呼びます。行列/テンソルの圏のなかで、マルコフ行列/テンソル達は部分圏を形成します。形容詞としての「マルコフ」(意味は「保存法則を満たす」)を一文字 'M' で表すとして、次の図式があります。

$`\xymatrix {
{\bf L} \ar[d] \ar[r] & {\bf FinSet} \ar[d] \ar[r] & {\bf Set} \ar[d]\\
{\bf MMat}\ar[d]\ar[r] & {\bf MFXMat} \ar[d] \ar[r] & {\bf MXMat} \ar[d] \\
{\bf MTnes}\ar[r] & {\bf MFXTnes}\ar[r] & {\bf MXTens}
}
`$

前節の図式とほぼ同じですが、下側の二行は「保存法則を満たす」という制限で部分圏に置き換えています。

全部ひっくるめて図式にすると:

$`\newcommand{\B}[1]{ {\bf #1} }
\xymatrix{
% 1
{\B{L}}\ar[d]\ar[rr]
& {}
& {\B{FinSet}}\ar[d]\ar[rr]
& {}
& {\B{Set}}\ar[d]
& {}
\\
% 2
{\B{MMat}} \ar[dd]\ar[dr]\ar[rr]
& {}
& {\B{MFXMat}} \ar[dd]\ar[dr]\ar[rr]
& {}
& {\B{MXMat}} \ar[dd]\ar[dr]
& {}
\\
% 3
{}
& {\B{Mat}} \ar[dd] \ar[rr]
& {}
& {\B{FXMat}} \ar[dd] \ar[rr]
& {}
& {\B{XMat}} \ar[dd]
\\
% 4
{\B{MTens}} \ar[dr]\ar[rr]
& {}
& {\B{MFXTens}}\ar[dr]\ar[rr]
& {}
& {\B{MXTens}}\ar[dr]
& {}
\\
% 5
{}
& {\B{Tens}}\ar[rr]
& {}
& {\B{FXTens}}\ar[rr]
& {}
& {\B{XTens}}
}
`$

矢印はすべて埋め込み関手なので、どのような埋め込みなのかを確認すると図式の意味がハッキリします。