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

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

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

参照用 記事

米田の「よ」、米田の「米」、米田の「Yo」

米田の「よ」 ≒ ディラックの「δ」」の話をもう少し引っ張ります。今回は、上付き・下付きの約束を決めよう、という話です。
\newcommand{\cat}[1]{ \mathcal{#1}}
\newcommand{\In}{ \text{ in }}

内容:

はじめに

ジョンソン・フレイド〈Theodore Johnson-Freyd〉、リ・ブランド〈David Li-Bland〉、ロージエン〈Fosco Loregian〉などにより提唱・使用された「よ」記法はある程度は普及したようです。しかし、米田埋め込み〈Yoneda embedding〉と余米田埋め込み〈coYoneda embedding〉を区別する方法は確定してないようです。

まったく個人的に僕は、米田埋め込み/余米田埋め込みを表すために「米」記法を使っていました(「困った時の米田頼み、ご利益ツールズ // ラムダ記法と米田の星」参照)。A^{米},\, A_{米} などです。が、「米」を上下どちらに付けるかはテキトーでした。その場その場で区別できればいいという態度。

「その場その場で区別できればいい」でも別に困らないとも言えますが、この記事で「よ」「米」に関する書き方の目安を決めておきます。

明示的な記法

\cat{C},\, \cat{D} に対して、関手圏を [\cat{C}, \cat{D}] で表します。ホムセットは \cat{C}(A, B) のように書きますが、双関手〈二項関手〉としてのホムを \cat{C}:\cat{C}^{op}\times \cat{C} \to {\bf Set} と書くとさすがに混乱するので、Hom_{\cat{C}} : \cat{C}^{op}\times \cat{C} \to {\bf Set} とします。

関数や関手 f に対する左カリー化(第一変数に関するカリー化)を {^\cap}f 、右カリー化(第ニ変数に関するカリー化)を f^\cap と書きます。

米田埋め込みは、ホム双関手〈ホム二項関手〉の左カリー化です。

\quad
  {\bf Yo}_{\cat{C}} := {^\cap}Hom_{\cat{C}} : \cat{C} \to [\cat{C}^{op}, {\bf Set}]

そして余米田埋め込みは、ホム双関手の右カリー化です。

\quad
  {\bf coYo}_{\cat{C}} := Hom_{\cat{C}}{^\cap} : \cat{C}^{op} \to [\cat{C}, {\bf Set}]

関手圏 [\cat{C}^{op}, {\bf Set}] \cat{C}前層の圏〈category of presheaves〉で、[\cat{C}, {\bf Set}] \cat{C}余前層の圏〈category of {copresheaves | precosheaves}〉です。\cat{C} の前層の圏を \cat{C}^\wedge 、余前層の圏を \cat{C}^{\vee} と書くことにします。

前層の圏/余前層の圏の記法を使うと、米田埋め込み/余米田埋め込みはもう少し短く書けます。

\quad
  {\bf Yo}_{\cat{C}}  : \cat{C} \to \cat{C}^{\wedge}
\\ \quad
  {\bf coYo}_{\cat{C}} : \cat{C}^{op} \to \cat{C}^{\vee}

{\bf Yo}_{\cat{C}} は前層の圏への共変埋め込み、{\bf coYo}_{\cat{C}} は余前層の圏への反変埋め込みです。

今定義した記法は明示的で紛れなく書けます。が、時と場合によりもっと簡潔な記法が欲しくなります。

「よ」記法と米田密度

\cat{C} は事前に了解されているとして、{\bf Yo}_{\cat{C}}よ に置き換えればいいのですが、{\bf coYo}_{\cat{C}} はどうしましょう? 一案として、

\quad
  よ  : \cat{C} \to \cat{C}^{\wedge}
\\ \quad
  よよ : \cat{C}^{op} \to \cat{C}^{\vee}

ウーム、一文字の簡潔さが欲しかったので二文字はイヤですね。

米田の「よ」 ≒ ディラックの「δ」」で述べたように、「よ」は、ディラックの「δ」やクロネッカーの「δ」の類似物と思えるので、引数〈argument〉を上付き・下付きで渡すことにします。次のように約束しましょう。


\quad よ^A := Hom_{\cat{C}}(-,  A ) \,: \cat{C}^{op} \to {\bf Set} \\
\quad よ_A := Hom_{\cat{C}}(A, - ) \,: \cat{C} \to {\bf Set}

あるいは(同じことですが):


\quad よ^A := {\bf Yo}(A) \in |\cat{C}^\wedge| \\
\quad よ_A := {\bf coYo}(A) \in |\cat{C}^\vee| \\

つまり、上付き引数なら米田埋め込み、下付き引数なら余米田埋め込みです。

\quad
  よ^-  : \cat{C} \to \cat{C}^{\wedge}
\\ \quad
  よ_- : \cat{C}^{op} \to \cat{C}^{\vee}

米田の「よ」 ≒ ディラックの「δ」」で紹介した公式は次の形になります。

\quad
{\displaystyle
 F(A) \cong \int^{X\In \cat{C}} F(X) \times よ^A(X)
}

上付き・下付きの位置が「米田の「よ」 ≒ ディラックの「δ」」とですが、次の注釈はしておきました。

ディラックのデルタと揃えるために よ_A と書きましたが、よ^A のほうが辻褄が合う気がします。

反変関手 G:\cat{C}^{op} \to {\bf Set} に対しては次が成立します。

\quad
{\displaystyle
 G(A) \cong \int^{X\In \cat{C}} G(X) \times よ_A(X)
}

関手には共変・反変の区別がありますが、関数にはそんな区別がないので、ディラック密度に \delta^a(x),\,  \delta_a(x) の区別なんてないのです。

共変関手に対する よ^A 、反変関手に対する よ_A は、関数に対するディラック密度相当物なので、米田密度〈Yoneda density〉と呼べるものです*1

「よ」記法は、米田密度を表す記法だと理解すると、あえて「よ」を使う理由と場面がハッキリすると思います。より具体的に言えば、「よ」はエンド/コエンドと一緒に使うと便利だということです。

「米」記法

米田埋め込みが密度というより、本来の“埋め込み”として使われるとき、埋め込み像を簡潔に表すために上付き・下付きの「米」を使いたいのです。


\quad A_{米} := {\bf Yo}(A) \\
\quad A^{米} := {\bf coYo}(A)

この上付き・下付きの約束は「困った時の米田頼み、ご利益ツールズ // ラムダ記法と米田の星」とはです。恣意的な約束なので、確たる根拠はないのです。

一般に、共変関手 F の略記に下付き星  F(u) = u_\ast 、反変関手  G の略記に上付き星 G(u) = u^\ast が使われます。が、米田埋め込みが共変か反変かは微妙です。

  • {\bf Yo}: \cat{C} \to \cat{C}^\wedge は共変関手であるが、この共変関手の特定の値 {\bf Yo}(A) : \cat{C}^{op}  \to {\bf Set} は反変関手である。

今回、先のような約束にしたのは、f:A \to B \In \cat{C} に対する埋め込み像

\quad {\bf Yo}(f): {\bf Yo}(A) \to {\bf Yo}(B) \In [\cat{C}^{op}, {\bf Set}] \\
\text{i.e.  }  {\bf Yo}(f):: {\bf Yo}(A) \Rightarrow {\bf Yo}(B) : \cat{C}^{op} \to  {\bf Set}\In {\bf CAT}

が、自然な感じで書けるようにです。

\quad f_{米}: A_{米} \to B_{米} \In [\cat{C}^{op}, {\bf Set}] \\
\text{i.e.  }  f_{米}:: A_{米} \Rightarrow B_{米} : \cat{C}^{op} \to  {\bf Set}\In {\bf CAT}

 (-) \mapsto (-)_{米} が埋め込みなので、もとの対象・射と埋め込み像を同一視することがあります。

  • A_{米} = A
  • f_{米} = f

すごく雰囲気的な例えをすると; 実数と、複素数のなかの虚部ゼロの数を同一視する x = x + 0\sqrt{-1} ようなものです。

おわりに

特に新しい記法を導入しなくても、ホムセット記法と無名ラムダ変数(ハイフン、マイナス、アンダースコアなど)を組み合わせた \cat{C}(-, A),\, \cat{C}(A, -) でも間に合います。が、米田埋め込み/余米田埋め込みを使う目的・場面に応じて、よりふさわしく直観を刺激する記法を利用すると、それなりの効果を期待できます。

よ^-,\, よ_-,\, (-)^{米},\, (-)_{米},\, {\bf Yo}(-),\, {\bf coYo}(-) をうまく使い分けましょう。

*1:米田密度と余米田密度に分けるべきかも知れませんが、ここでは総称的に米田密度とします