What is this?

Wiki for aiura/.


Author: @cympfh, Mail: cympfh@gmail.com

圏の定義

\[ \require{AMScd} \] \[ \def\Obj{\mathrm{Obj}} \def\Arr{\mathrm{Arr}} \def\dom{\mathrm{dom}} \def\cod{\mathrm{cod}} \def\C{\mathcal C} \]

次の要素が備わったものを圏という.

  • 対象の集まり \( Obj \)
  • 射の集まり \( Arr \)
    • 各射 \( f \in Arr \) にはドメインとコドメインがあり次のように書く
      • \( \dom f \in Obj \)
      • \( \cod f \in Obj \)
  • 射の合成演算 \( \circ \)
    • 2つの射 \( f, g \) について \( \cod f = \dom g \) のとき \( g \circ f \) という射が \( \Arr \) の中に存在する
      • すなわち \( \circ \) とは2つの射から一つの射を作る演算でこれを「合成」という
      • 数の積を表す \( \times \) や \( \cdot \) が略されるのと同様に, \( \circ \) のことも略して \( gf \) と書く

「集まり」と言ったのは本来, 圏の概念は集合とは独立して定義されるもので, 従って集合という概念を使いたくないから. とはいえ, 普通の集合のように「集まりに属する」ということを \( \in \) で表している.

ただし射について次を要請する.

  • 恒等射の存在
    • 各対象 \( A \in \Obj \) に対応して次のような射 \( 1_A \) がある
      • \( \dom 1_A = A \)
      • \( \cod 1_A = A \)
      • \( f 1_A = f \) (合成の単位元)
      • \( 1_A g = g \)
  • 合成の結合則
    • 3つの射 \( f,g,h \) の \( \cod, \dom \) がいい感じのとき, この3つを合成できるが, このとき \( (fg)h = f(gh) \) であること

圏の例

モノイドの圏

用語に惑わされずにただ合成演算だけに注目すれば, 圏とは群あるいはモノイドのことに見える. モノイドとは次のようなものであった.

モノイドとは集合 \( X \) に乗算演算 \( \circ \colon X \times X \to X \) を与えたもの. この演算は次を満たすことを要請する.

  1. 単位元の存在
    • ある \( e \in X \) があって
    • \( e \circ x = x \circ e = x \) (\( \forall x \in X \))
  2. 結合則
    • \( (f \circ g) \circ h = f \circ (g \circ h) \)

つまり数 \( x \in X \) が射であって, 単位元 \( e \) が恒等射. 乗算の結合則が合成の結合則である.

さて対象はというと, 恒等射に対応する単位元がモノイドは唯一しか持たないことから, ただ一つの対象を持つと考えるしかないだろう. 従ってモノイドという概念を拡張したものが圏である, という見方がありえる.

とにかくモノイド \( X \) があると, それを圏として見ることができる. これをモノイド圏 \( X \) という. 改めてその定義を述べると,

  • 対象は唯一 \( \Obj = \{ * \} \)
  • 射は数 \( \Arr = X \)(右辺 \( X \) はモノイドの台集合)
  • 恒等射は単位元 \( 1_* = e \) (\( e \) はモノイドの単位元)
  • 合成は乗算 \( x y = x \circ y \) (右辺はモノイドとしての乗算)

Set

この考えはしばしば初学者を混乱させるが, 射は写像(関数)の一般化であるという見方も出来る. そのような圏のことは Set という. すなわち,

  • 対象とは任意の集合
  • 射とは集合から集合への写像
    • \( \dom \) とは写像の定義域
    • \( \cod \) とは値域
  • 射の合成とは関数合成
  • 恒等射とは恒等写像

関数合成の結合性は自然に成立する. 関数 \( f \) が集合 \( A \) から集合 \( B \) への関数であることをしばしば \[ f \colon A \to B \] と書くだろう. これに倣って, ドメインを対象 \( A \) とし, コドメインを対象 \( B \) とするような射のことを 「\( A \) から \( B \) への射」と言って \[ f \colon A \to B \] と書く.

F-代数

\[ \require{AMScd} \] \[ \def\Obj{\mathrm{Obj}} \def\Arr{\mathrm{Arr}} \def\dom{\mathrm{dom}} \def\cod{\mathrm{cod}} \def\C{\mathcal C} \]

定義

圏 \( \C \) とその自己関手 \( F \colon \C \to \C \) について, \( F \)-代数とは, 対象 \( X \in \C \) と射 \( f \colon FX \to X \) の組 \[ (X, f) \] のこと. \[ \begin{CD} X @<f<< FX \end{CD} \] \( X \) をこの代数の台という.

\( F \)-始代数

圏 \( \C \) と自己関手 \( F \) について, \( F \)-代数の圏を考えることが出来る. すなわち対象は上のような \( (X, f) \) であり, 射は次のように定義されるもの.

\( \C \) の射 \( g \colon X_1 \to X_2 \) が \[ \begin{CD} X_1 @<f_1<< FX_1 \\ @VgVV @VFgVV \\ X_2 @<f_2<< FX_2 \end{CD} \]

これを可換にするとき, \( g \) を \( F \)-代数の圏の射 \[ g \colon (X_1, f_1) \to (X_2, f_2) \] とする.

このようにして作った圏のの始対象を始代数という. しばしば重要な概念がこれで表される.

Set 圏において \( FX = 1 + X (=\{*\} \cup X) \) の始代数は \( (\mathbb N, \nu) \). ここで \( \nu \colon 1+\mathbb N \to \mathbb N \) は

  • \( \nu(*) = 0 \)
  • \( \nu(m) = m + 1 \)

という写像.


出典

aiura/F-algebra

線形代数

テンソル

テンソルは次のように定義される.

まず2つのベクトル空間から新しいベクトル空間を作る操作としてのテンソル積を定義する. こうして作られたベクトル空間のベクトルのことを特にテンソルという. また空間のテンソル積を構成する中で, ベクトル同士のテンソル積が自然に定まる.

空間のテンソル積

今この定義に登場する写像は線形写像と多重線形写像に限るとする.

任意のベクトル空間 \( V, W \) について次のような双線形写像 \( \kappa \) とベクトル空間 \( U_0 \) が必ず存在する(その存在性は後述).

  • \( \kappa \colon V \times W \to U_0 \)
  • \( \forall U, \forall \phi \colon V \times W \to U, \exists ! \bar{\phi} \colon U_0 \to U, \) such that \( \phi = \bar{\phi} \kappa \)

この \( U_0 \) のことを \( V \otimes W \) と書く.

\( \otimes \) という操作を テンソル積 といい, テンソル積によって生成されたベクトル空間を特に テンソル空間 ということにする. テンソル空間の元(つまりベクトル)を テンソル という.

notation

再帰的にテンソル積を適用することで \( (V_1 \otimes V_2) \otimes V_3 \) などと3つ以上のテンソル積が出来るが, 実は結合則を満たすので単に \( V_1 \otimes V_2 \otimes V_3 \) と書く.

一つの線形空間の \( n \) 個のテンソル積 \( V \otimes V \otimes \cdots \otimes V \) を \( V^{\otimes n} \) と書く.

テンソルの性質

性質と言うか定義の吟味をする. 注意すべきはテンソル空間はあくまでも一つのベクトル空間であるということ.

定義が言うには, 双線形写像 \[ f \colon V \times W \to U \] に対して線形写像 \[ \bar{f} \colon V \otimes W \to U \] が自然に一対一対応する. 上の型の双線形写像全体と, 下の型の線形写像全体が自然同型であるとも言える.

\[ \{ \text{bilinear} \colon V \times W \to U \} \simeq \{ \text{linear} \colon V \otimes W \to U \} \]

自然と言っている意味はその対応の仕方にある. ある双線形写像 \[ \kappa \colon V \times W \to V \otimes W \] があって, \[ \bar{f} \circ \kappa = f \] であること. ここで \( \circ \) は関数合成.

関数のイコールとして書くなら, \( \forall v \in V, \forall w \in W, \bar{f}(\kappa(v, w)) = f(v, w) \) ということ.

\( \kappa \) は双線形写像と線形写像の対応を与えてくれる. 線形写像 \( \bar{f} \) を与えたとき, 対応する双線形写像 \( f \) は \( \bar{f} \circ \kappa \) で作れる. 逆に \( f \) から \( \bar{f} \) を作る操作も自然に作れるはずで, これは \( \kappa \) の逆関数 のようなもの を合成することで得られる.

  • \( f = \bar{f} \circ \kappa \)
  • \( \bar{f} = f \circ \kappa^{-1} \)

そしてしかもこの2つの操作を行うと元に戻る.

テンソルとは, 直積空間という線形空間でないものの間にある双(多重)線形写像という一見線形写像の拡張概念に見えるものが, 実はテンソル空間という線形空間と, その間の線形写像だけで表現できることを言っている.

ベクトル同士のテンソル積

\( \kappa \colon V \times W \to V \otimes W \) はすなわち, 2つのベクトル \( v \in V, w \in W \) についてテンソル積 \( V \otimes W \) の元, すなわちテンソルに割り当てる. \[ \kappa(v, w) \in V \otimes W \] このテンソルのことを \[ v \otimes w \] と書いて「\( v \) と \( w \) とのテンソル積」などと言うことがある.

しかしながら \( \kappa \) は実は一般に全射ではないので, 全てのテンソルが \( v \otimes w \) の形で書けるわけではないことに注意.

テンソルの構成

ではテンソル積の具体的な構成法を一つ示す. ただし有限次元の線形空間のみを扱う.

線形空間 \( V, W \) の基底をそれぞれ

  • \( \langle v_1, v_2, \ldots, v_n \rangle \)
  • \( \langle w_1, w_2, \ldots, w_m \rangle \)

とする. このとき今から \( nm \) 次元の線形空間 \( U_0 \) を作る (これが実はテンソル積空間 \( V \otimes W \) であることは後々証明する).

\( U_0 \) の基底は \[ \langle u_{ij} \mid i=1,2,\ldots,n ;~ j=1,2,\ldots,m \rangle \]

次に双線形写像 \( \kappa \colon V \times W \to U_0 \) を次で定める. \[ \kappa(v_i, w_j) = u_{ij} \] \( \kappa \) は双線形写像としたので基底の写り方だけ定めれば十分である. 一方で基底の写り方だけで言えば次のようなものが \( \kappa \) の逆関数のようなものである. \[ \kappa^{-1}(u_{ij}) = (v_i, w_j) \] 当然, 値域の \( V \times W \) は線形空間ではないのでこれは線形写像ではなく, 一般の値 \( \alpha^{ij} u_{ij} \) の値を定めないから関数ですらない. ここでは単に基底の写し方を定めるものとして定めておく.

さて実は以上で以て \( U_0 \) がテンソル積 \( V \otimes W \) である. そのことを今から見ていく.

まず双線形写像 \( f \colon V \times W \to U \) が与えられたとする. このとき上の \( \kappa^{-1} \) を右に合成することで, 基底の写り方 \[ (f \circ \kappa^{-1}) (u_{ij}) = f(v_i, w_j) \] が定まる. \( \kappa^{-1} \) というのが基底の写し方しか定めていないのだが, この式は \( u_{ij} \in U_0 \) を \( f(v_i, w_j) \in U \) に写してると見れるので, 適切に定義することで線形写像にすることができる. それを \( \bar{f} \) と定義する. \[ \bar{f} \colon U_0 \to U \] \[ \bar{f} (\alpha^{ij} u_{ij}) = \alpha^{ij} f(v_i, w_j) \] この \( \bar{f} \) が所望であることを確認するには \( f = \bar{f} \circ \kappa \) であることを見ればよい. それには関数の外延性をチェックすればよい. すなわち一般の \( (\beta^i v_i, \gamma^j w_j) \in V \times W \) についての値が等しいことを見ればよい. \[ \begin{align*} (\bar{f} \circ \kappa)(\beta^i v_i, \gamma^j w_j) & = \bar{f} ( \beta^i \gamma^j \kappa(v_i, w_j) ) \\ & = \bar{f} ( \beta^i \gamma^j u_{ij} ) \\ & = \beta^i \gamma^j f(v_i, w_j) \\ & = f(\beta^i v_i, \gamma^j w_j) \end{align*} \] なので確かにそう.

双線形写像 \( f \) からスタートしたが, 線形写像 \( \bar{f} \) からスタートして逆に辿っても同様のことが確認できる.

というわけで結局 \[ V \otimes W = \langle u_{ij} \mid i=1,2,\ldots, \mathrm{dim}(V) ;~ j=1,2,\ldots, \mathrm{dim}(W) \rangle \] ということが分かった.

実多重線形写像としてのテンソル

テンソルは多重線形写像と深い関わりがあった. また別な定義として, 実多重線形写像そのものをテンソルと定義する方法がある. すなわち, 線形空間 \( V_1, V_2, \ldots, V_m \) と実数全体 \( \mathbb R \) を用いて \[ V_1 \times V_2 \times \cdots \times V_m \to \mathbb R \] という型を持つ多重線形写像をテンソルと呼ぶ.

一つの実多重線形写像が一つのテンソルなので, テンソル積空間 \( V \otimes W \) に相当するのは, 実多重線形写像 全体 である.

先の定義との対応

\( n \) 次元の \( V \) と \( m \) 次元の \( W \) のテンソル積 \( V \otimes W \) を考える. 先に述べたような構成をすればテンソル積は \( nm \) 次元の線形空間であり, その元テンソルは \( \alpha^{ij} u_{ij} \) \( (i=1,2,\ldots,n ;~ m=1,2,\ldots,m) \) と書ける.

実多重線形写像は実はこの数ベクトル表示に対応している. すなわち, \[ g \colon V \times W \to \mathbb R \] \[ g(v_i, w_j) \mapsto \alpha^{ij} \] と定める. これは結局, \( i,j \) に対応する係数は \( \alpha^{ij} \) であることを情報として持つ.

もちろん逆に \( g \) が与えられても \( g(v_i, w_j) u_{ij} \) として先の形に戻せる. したがって等価である.


出典