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

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

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

参照用 記事

チャンネル理論の演算子記号が使いにくい理由

バート・ジェイコブス〈Bart Jacobs〉達のチャンネル理論(「ベイズ確率論、ジェイコブス達の新しい風」参照)では、チャンネルに対する演算に独自の記号を割り当てています。それがどうにも使いにくくて、結局僕は使うのをやめてしまったのですが、「使いにくい理由」は考えてみませんでした。

今日気付いたのですが; 記号の形(見た目)に対称性があるのに語順(図式順か反図式順か)の統一性がないのがストレスになっていたようです。

ジェイコブス達がアフィンCD圏〈affine CD-category〉と呼んでいた圏はマルコフ圏(「マルコフ圏 A First Look -- 圏論的確率論の最良の定式化」参照)のことで、チャンネルはマルコフ射(マルコフ圏の射)のことです。よって、チャンネル理論は、ほぼマルコフ圏論です。

具体的に与えられたマルコフ圏、つまり確率的圏(「統計的反転の圏論的セットアップ 1/2 // 確率的圏と準確率的圏」参照)C で考えるとして、1を特定された単元集合、2を特定された二元集合とします。1はマルコフ圏の単位対象兼終対象です。2は二値真偽値の集合と考えましょう。いずれも、可測空間としては離散可測構造を与えます。

チャンネル理論における、射を表す記号の習慣は次のようです。

射の種類 使う記号
一般の射 f, g, c, d など
域が1である射 ω, σ など
余域が2である射 p, q など

チャンネル理論では、域が1である射を状態〈state〉、余域が2である射を述語〈predicate〉と呼びます。

チャンネルの結合〈composition | 合成〉の記号は \odot で、反図式順の中置二項演算子記号として使います。その他に、中置演算子記号 \gg,\, \ll,\, \models も使います -- これらはすべてチャンネルの結合の記号で、 \odot と意味は変わりません。色々な結合記号を用意しているのは、結合される2つの射の種類ごとに使い分けるのです。

2つの射の種類 結合の表し方 結合記号の語順
一般の射と一般の射 g\odot f 反図式順
状態と一般の射 f\gg \omega 反図式順
一般の射と述語 f\ll p 図式順
状態と述語 \omega \models p 図式順

本質的には同じ意味の4つの中置演算子記号に、反図式順と図式順が混じっているのはキツイ。図式順派の僕なら次のように決めます、もちろんすべて図式順。

2つの射の種類 結合の表し方
一般の射と一般の射 f ; g
状態と一般の射 \omega \gg f
一般の射と述語 f\ll p
状態と述語 \omega \models p

実際にはちょっと日和っていて、ポスト結合前送り〈post-composition pushforward〉、プレ結合引き戻し〈pre-composition pullback〉、スカラー積の記号を使っています。

2つの射の種類 結合の表し方
一般の射と一般の射 f ; g,\, g\circ f
状態と一般の射 f_\ast(\omega)
一般の射と述語 f^\ast(p)
状態と述語 \langle \omega\mid p\rangle

この書き方は無難で、どこにも角を立てないかと思います。

ところで、チャンネル理論ではもうひとつ大事な演算があって、それは次のように表します。

2つの射の種類 更新の表し方
状態と述語 \omega \mid_p

更新〈update〉と書きましたが、ジェイコブス達はかつて条件付け〈conditioning〉と呼んでいました。「条件〈condition〉」や「条件付き〈conditional〉」の用法がとっ散らかってしまい、わけわからん状態なので「更新」に変更したのでしょう。実際、「条件付き確率〈conditional probability〉」の意味が拡散して困っていたので助かります。

状態による述語の更新は次のように定義されます。\newcommand{\cat}[1]{\mathcal{#1}}\newcommand{\For}{\mbox{For }}\newcommand{\Iff}{\Leftrightarrow}\newcommand{\In}{\mbox{ in }}

\For \omega:{\bf 1} \to X,\,p:X \to {\bf 2}\In \cat{C}\\
\:\:\:\: \omega |_p := \lambda\, A\in \Sigma X.(\,
  \frac{1}{\langle \omega\mid p\rangle}\int_{A} p(x)\omega(dx)
\,)

定義に使った記法は無難な書き方を採用しています。\Sigma X は可測空間のシグマ集合代数です。述語の期待値 {\langle \omega\mid p\rangle} の逆数を使っているので、{\langle \omega\mid p\rangle} がゼロのときは定義されません。

先に出てきた記号 \odot,\, \gg,\, \ll,\, \models はすべて圏の結合の意味でした。モノイド積の記号 \otimes も使いますが、これはモノイド圏の基本演算です。となると、チャンネル理論に特有な演算は更新だけと言っていいかも知れません。

図式順派の偏見が入った意見かも知れませんが、せっかくシンプルな体系であるチャンネル理論の記号法が、バイダイレクショナルでゴチャゴチャしているのは残念です。少なくとも僕は、あのままで使う気にはなれません。


[追記]
自分で「残念だ」と言っておきながらナンですが、チャンネル理論の記法をちょっと擁護しておきますね。

ポスト結合前送りとプレ結合引き戻しを f_\gg(\omega),\, f^\ll(p) と書いて、上付き/下付きを中置演算子の位置にズラしたと思えば、まーあの記法も納得できます。僕はそれでも、視認性の悪さが気になるのです。

'\models' を使うのは、論理の妥当〈validity〉記号とのアナロジーがあっていいと思います。僕がこれも使わないのは、やっぱり視認性です。イコールと一緒になったりすると見にくいですね。構文に対する僕の評価基準では、視認性がとても大きいんです。
[/追記]