数学、特に代数学においてはしばしば「自由」という概念が登場します。学部の早いうちに触れるものとしては自由加群が、プログラミングをする方などは自由モノイドや自由群に触れたことがあるかもしれません。この「自由な」存在たちは、各理論において強力な性質を備えているために、必ずと言っていいほどどこかのタイミングで紹介されるのですが、各論での定義を見てもいまいちよくわからないというか、記述としてふわっとしています。加群のテンソル積の普遍性(証明内に自由加群が登場する)などは、普遍性という概念からして圏論的な視点がないとかなり要点が掴みづらいことも相まって、なんだか狐につままれたような感覚を覚えた人もいるかと思います。少なくとも学部生時代の私がそうでした。
本稿ではそのような「自由」という概念の特徴づけについて考察していきます。まずいくつかの実例を見ながら、自由という概念を特徴づける普遍性について話し、さらに圏論的な定義付けとして自由関手を紹介します。また、逆にふつう自由関手とは呼ばない例を挙げて、なぜそう呼ばれないかを考察します。
様々な「自由な」もの(以下自由対象と呼ぶ)のうち、簡潔な定義の獲得に最も成功しているのは自由加群でしょう。
(可換)環$R$上の$R$₋加群$M$について、$M$が1次独立な生成系$B$を持つとき、$M$は自由$R$₋加群であるといい、$B$を自由基底という。すなわち、$B\subseteq M$について
\begin{equation}
\forall N<\infty.\forall b_1,\cdots,b_N\in B.
\left[\sum_{i\leq N}a_ib_i=0\right]
\Longrightarrow\Big[\forall i.a_i=0\Big]
\end{equation}
\begin{equation}
\forall x\in M.\exists N<\infty.\exists a_1,\cdots,a_N\in M.\exists b_1,\cdots,b_N\in B.x=\sum_{i\leq N}a_ib_i
\end{equation}
が成り立つとき、$M$は自由$R$₋加群であるという。
加群の直和が定義されているならば、$M$が自由$R$₋加群であることは
\begin{equation}
M\simeq \bigoplus_{i\in I}R
\end{equation}
が成り立つこととも書けます。右辺で表される加群は$R^{(I)}$とも書きます。
ほかに簡潔な例を挙げるとするならば自由モノイドでしょう。
集合$X$に対して、$X$の要素の有限列$x_1\cdots x_n$全体の集合を$X^*$とする。このとき、$X^*$および列の連結によって定まるモノイドを$X$上の自由モノイドと言う。
プログラミング的な言い方をすると、$X$の要素のリストとその結合演算はモノイドになり、これが$X$上の自由モノイドとなります。定義としては簡明ですが、何をもって自由と言っているのか、というのは見えづらいかもしれません。
自由対象、特に集合$X$から自由に生成されるようなものを定義するときは、「$X$から他の条件を課さずに生成される」だとか、それに類する表現がよく用いられます。具体的な構成として実際その通りなのですが、自由対象の性質を調べたり他の命題に使用したりするに際してはあまり便利ではありません。幸いにも自由対象には、ほぼそのために用意されると言っても過言ではない、ある強力な性質が存在します。再び$R$₋加群の例で紹介します。
$I$を集合、$M$を$R$₋加群とする。任意に取った$M$の要素の族$\{x_i\}_{i\in I}$に対して、$i\mapsto x_i $を満たす加群の準同型$\varphi:R^{(I)}\to M $がただ1つ定まる。
自由モノイドや自由群などに対しても同様の性質が成り立ちます。特に集合上の自由対象について、この普遍性を持つものを逆に自由対象として特徴づけることができます。
集合$X$上の自由対象$F(X)$とは、(存在するならば)今考えている数学的構造を持ったもので、以下で表される性質を持っているものである:
この定義は、今考えている数学的構造が「底集合+演算や条件」という構成であることを暗黙に課していることに注意してください。そうでない場合、例えば「$A$の要素の族」という言葉が何を指しているのか自明ではなくなってしまいます(底集合が1つしかないなら、当然その内部にしか要素は存在しません)。
また、この定義では集合に対してしか自由対象を構成できません。例えば「群$G$上の自由アーベル群」といった概念には対応できていません。次節では、普遍性をより広範な概念へと書き直して「自由」の定式化を行います。
普遍性と言えば圏論です。ここから圏論的な記述を用いて定式化を行います。圏そのものについてはお手元の Mac Lane や Leinster 、あるいは alg-dさんの圏論のページ を参考にしてください。
何か数学的な構造を考える時、先ほどの普遍性による自由対象の定義が成立するためには、いくつか暗黙の前提が存在していました。
特に代数的な構造はだいたいこの条件を満たしているためあんまり気にする必要はありませんでしたが、もう少し明示的にこれらの条件を書くことにしましょう。上の2つの条件を満たす数学的構造について、構造$A$を底集合$A$に、準同型$f:A\to B$を写像$f:A\to B$に写すという変換は、圏論的には関手$U:\mathcal{C}\longrightarrow\CSet$として書けます。(もちろん今考えている構造の全体が圏をなさなければ定義できないのですが、準同型まで定義できていて圏にならないとは考えづらいため圏をなすとしましょう。)この関手は数学的構造を“忘れる”ようなものであることから、忘却関手 (forgetful functor)と呼ばれます。忘却関手は伝統的に$U$で表されます。
さっそく圏論の言葉と忘却関手$U$を使って自由対象の定義を書き直してみましょう。今考えている数学的構造の全体は圏$\mathcal{C}$をなし、またそれに対して忘却関手$U:\mathcal{C}\longrightarrow\CSet$が定義されているとします。このとき、集合$X\in\CSet$に対して$\mathcal{C}$の$X$上の自由対象$F(X)\in\mathcal{C}$は、存在するならば以下の条件を満たします:
写像$\eta_X:X\to UF(X)$が存在して、任意の$A\in\mathcal{C}$と写像$\alpha:X\to U(A)$に対して、$\mathcal{C}$の射$\varphi:F(X)\to A$がただ1つ存在して、$\alpha=(U\varphi)\circ\eta_X $。
\begin{xy}
\xymatrix{
& \textrm{in }\CSet
&
& \textrm{in }\mathcal{C}
\\
X \ar[r]^-{\eta_X} \ar[rd]_-{\alpha}
& UF(X) \ar@{-->}[d]^-{U\varphi}
&
& F(X) \ar@{-->}[d]^-{\exists\mathop{!}\varphi}
\\
& UA
&
& A
}
\end{xy}
いま、任意の集合$X\in\CSet$に対して自由対象$F(X)$が定義できるならば、$F$は$\CSet$から$\mathcal{C}$への関手となって、さらに$U$の左随伴になります(Mac Lane Ⅳ.1節の定理2を参照)。
関手$L:\mathcal{C}\longrightarrow\mathcal{D}$および$R:\mathcal{D}\longrightarrow\mathcal{C}$について、$L$と$R$が随伴であるとは、各対象$x\in\mathcal{C},y\in\mathcal{D}$に対してhom集合の全単射$\mathcal{C}(x,Ry)\simeq\mathcal{D}(Lx,y)$が存在し、$x$と$y$に対して自然であることをいう。
$L$と$R$が随伴であることを、$L$は$R$の左随伴である、$R$は$L$の右随伴であるとも言い、記号では$L\dashv R$と書く。
以下の内容は全て随伴な関手$L\dashv R$を定める(Mac Lane Ⅳ.1節の定理2を参照)。
忘却関手$U:\mathcal{C}\longrightarrow\mathcal{A}$が左随伴$F$を持つとき、それを自由関手という。
圏論の視点では、自由という概念は忘却関手とセットになります。この2つの関手による随伴関係を指して自由-忘却随伴 (free-forgetful adjunction)とも言います。忘却関手の宣言的な定義というものは寡聞にして知りません。あくまで数学的な構造が別途あった時に、その一部を忘れる操作に該当するものに命名されるものと筆者は理解しています。
流儀によっては(というより Stuff, structure and properties の流儀に従うなら)、全ての関手はそれが圏の同値でない限りなんらかの要素を忘却していると見做します。その場合は、圏の同値でない左随伴関手は全て(何らかの意味で)自由関手であると言えるのかもしれません。
$\CSet$に対してではない自由関手の例を挙げていきます。
群$G$の元$x,y$に対して$[x,y]\defeq xyx^{-1}y^{-1}$を$x$と$y$の交換子という。$G$の部分群$H,K$に対して、交換子$[h,k]\ (h\in H,k\in K)$の全体から生成される部分群を$H$と$K$の交換子部分群$[H,K]$という。
このとき、剰余群$G/[G,G]$を群$G$のアーベル化 (Abelianization) $G^{\mathrm{ab}}$といい、さらに全射$\eta_G:G\to G^{\mathrm{ab}}$について普遍性が成り立つ。すなわち、アーベル群への準同型$f:G\to A$に対して$f=\hat{f}\circ\eta_G$となる準同型$\hat{f}:G^{\mathrm{ab}}\to A$がただ1つ定まる。アーベル化は群の圏$\CGrp$からアーベル群の圏$\CAb$への自由関手となる。
\begin{xy}
\xymatrix{
& \textrm{in }\CGrp
&
& \textrm{in }\CAb
\\
G \ar[r]^-{\eta_X} \ar[rd]_-{f}
& G^{\mathrm{ab}} \ar@{-->}[d]^-{\hat{f}}
&
& G^{\mathrm{ab}} \ar@{-->}[d]^-{\exists\mathop{!}\hat{f}}
\\
& A
&
& A
}
\end{xy}
2つの集合$V,E$と2つの写像$s,t:E\to V$からなる組$\langle V,E,s,t\rangle$を箙 あるいはクイバー (quiver) と言う。箙は、多重辺もループも許されているグラフと見ることもでき、$V$の要素を頂点、$E$の要素を辺と言う。
任意の圏$C$は対象と射の集合$C_0,C_1$と写像$\mathrm{dom},\mathrm{cod}:C_1\to C_0$を備えているから、圏の圏$\CCat$から箙の圏$\CQuiv$への忘却関手が定義できる。
一方、箙$Q=\langle V,E,s,t\rangle$が与えられたとき、対象を$V$として、$E$上の道(すなわち、$\forall i< n.t(e_i)=s(e_{i+1})$が成り立つ$E$の列$e_1\cdots e_n$あるいは“$v$で留まっている”道$\id_v$)全てを射とみなし、$\dom(e_1\cdots e_n)\defeq s(e_1)$、$\cod(e_1\cdots e_n)\defeq t(e_n)$として、さらに射の合成を道の連結、恒等射を$\id_v$で定めると、これは圏であってさらに$Q$上の自由対象となる。
これまでと同様に、箙$Q$に対して自由対象である圏$FQ$を取ることは$\CQuiv$から$\CCat$への関手をなし、$F$は$U$の左随伴となる。圏$FQ$を$Q$上の自由圏と言う。
前節の最後で見たように、自由圏とは箙に対して構成されるものであり、集合$X$上の自由な圏というような表現はまずありません。箙もまた同様に、集合$X$上の自由な箙という表現は聞きません。これについて考えてみましょう。
以下、箙$\langle V,E,s,t\rangle$の省略として$\langle V,E\rangle$と書くことがあります。
まず、圏も箙も、それを構成するために2つの集合を要するという点が今までと異なっています。従って、1個だけ集合$X$を用意してそこから箙を作ろうとしても、その集合をどうすればいいのか今一つはっきりしません。ぱっと思いつくだけでも
と3つも考えられます。これらはどれも$\CSet\longrightarrow\CQuiv$の関手を構成します。
また、忘却関手も忘却関手で、
と様々考えられてしまい、1つに定まりません。ではひとまず忘却関手の候補が挙げられたとして、左随伴を持つかどうかを見てみようとすると、次の命題によってこれも1つに定められないことが分かります。
グラフとしてそれぞれ記述すると、
となります。それぞれの定義から、$L_V(X)$や$L_E(X)$はどちらも$X$の情報をそのまま反映しただけの構造であり、その意味で何も情報が増えていないこともわかります(モノイドや加群の場合、随伴の単位$\eta:\Id\drar UF$は同型にならない)。
$X$に対して$L_V(X)$、$L_E(X)$上の自由圏はそれぞれdiscrete category, indiscrete category と呼ばれます。前者に関しては離散圏という和名もあるのですが、後者は特に定訳を持っていないようです。位相空間と同様に訳すなら密着圏になるでしょう。
数学でたびたび言及される「自由」という概念について、圏論的な定式化を紹介し、箙や圏が集合からの自由な構成というものを持たない(そのように呼ばれることが一般にない)ことについて考察しました。圏論的に言えば、とにかく随伴な関手の組を用意して左と右をそれぞれ自由関手・忘却関手と呼んでしまってもいいのですが、考えている数学的構造に対して複数の忘却方法があったり、随伴の単位が自明なものであったりすると、左随伴を持っていても自由関手とは呼ばないことが多いように思います。
忘却関手の右随伴を余自由関手 (cofree functor) よ呼びます。圏論であってもあまり使われていない(余自由という訳語に至っては一応 使用例 がある程度)概念で、もっぱらcofree coalgebraとして登場します。自由対象があったとき、任意の対象は自由対象からの射を持ちます(これは随伴の余単位として提供されます)が、余自由対象があった場合は、任意の対象は余自由対象への射を持ちます。Cofree coalgebra を考える文脈(ホップ代数やリー代数など)においてはしばしば、余自由余代数へ“埋め込む”などと表現されたりもします。