圏論入門としてのホモロジー

  1. 圏論への入門の仕方
  2. ホモロジー
  3. コホモロジー
  4. 関数のつながりにくさと(コ)ホモロジー
  5. 完全系列と圏論的視点

目次

  1. 圏論への入門の仕方
  2. ホモロジー
  3. コホモロジー
  4. 関数のつながりにくさと(コ)ホモロジー
  5. 完全系列と圏論的視点

圏論への入門の仕方

圏論を学ぶきっかけとしては、だいたい

の二つがあって、一見すると計算機科学、ロジックの方から入った方が(数学の前提知識をあまり必要としないこともあって)易しいように見える。
でも現実には往々にして、わざわざ圏論という概念を導入する動機やメリットが見えてこないまま色々な言葉の説明がひたすら続いて挫折することになる。高校あたりで「三角関数とか対数とか何の意味があるんだ」「こんなこと何の役に立つんだ」とか言いたくなるのと同じような感覚を味わえる(数学の本の多くは、そういう感覚を味わったことのない人が書いているんじゃないかという気もする)。
ひとつひとつの定義自体は(なじみのなさを除けば)必ずしも難解ではないので挫折する場所も見つけにくいし、挫折する場所があっても挫折する本当の理由はそこではなかったりする。圏の簡単な例を挙げれば挙げるほど、むしろ何でわざわざ仰々しく圏なんて呼ぶ必要があるのか分からなくなってくる(群の例として整数とか有理数のようなものを挙げただけでは「共通の性質を抽出して名前をつけてみました」以上の意味が見えてこないように)。

なので、計算機科学・論理学が目的で圏論を学ぶ場合でも、人によってはホモロジーから入って圏論に向かうという手もあるように感じる。もともとホモロジーの研究から圏論が生まれたという経緯もあるし。ただ代数にある程度慣れていないと圏論にたどり着くことなく挫折する可能性も高いし、いきなりホモロジー代数から入るとたぶん圏論と同じでこんなこと何の意味があるんだという気分になれる。

ホモロジー

図形の特徴を測る指標としてよく知られたものに面積(や体積)がある。もちろん面積はいろいろな場面に現れる便利な量で、面積の大小を知るだけでも図形のおおざっぱな比較ができるし、二つの図形の面積が違っていればそれだけでその二つの図形が別の図形であることが分かる。
しかし、相似な図形を同じものとして考えたいとき、つまり大きさは重要でなく形だけが重要な場合、面積は役に立たない。
さらに図形の形を捨象し、図形のつながり方に注目して図形を識別したいとする。このときに、図形のつながり方から決まる量(位相不変量)のひとつがホモロジー群と呼ばれるもの(もう一つ重要なのがホモトピー群、特に基本群)。

細かい説明は省いて手順だけ書くと、まずn次元の図形(位相空間)Xの点・曲線・曲面・……を材料にして、鎖複体と呼ばれる加群(≒線形空間)の系列

 0 \longleftarrow C_0(X) \mathop{\longleftarrow}\limits^{\partial_{1}} C_1(X) \mathop{\longleftarrow}\limits^{\partial_{2}} C_2(X)  \mathop{\longleftarrow}\limits^{\partial_{3}} \;  \cdots \; \mathop{\longleftarrow}\limits^{\partial_{n}} C_n(X) \longleftarrow 0
を作り、この系列からホモロジー
H_0(X),H_1(X),H_2(X),\ldots,H_n(X)
が定義される。幾何学的なXから代数的なH_{k}(X)を得て、H_{k}(X)の代数的な性質から元の図形Xのことを理解しよう、という筋書き。
おおざっぱには、H_0(X)は図形Xがいくつの連結成分(互いにつながった領域)からできているかを示していて、H_k(X) \;(k\geq 1)は図形Xにどれだけ穴があるかの情報を持っている。円盤や球体のような穴のない図形では、H_k(X)=0 \;(k\geq 1)となる。

付記:ホモトピーホモロジーの違い


1次元のホモトピー群(基本群)と1次元のホモロジー群は、どちらも閉曲線を使って図形のつながり方を調べるという点では似ている。ただしイメージとしては、ホモトピーは閉曲線を伸び縮みするゴムひものように扱い、ホモロジーは閉曲線に電流を流してそれを重ね合わせる。

ホモトピーから。
まず空間内を自由に動き回って閉曲線を作り、その作った閉曲線をゴムひものように自由に伸び縮みさせ一点に集まるように頑張ってみる。このときゴムひもをどう頑張って変形させても一点に回収できなかったら、その事実から空間に「穴」があることが分かる(穴に邪魔されているから一点に縮められない)。ホモトピーでは、このような変形をしても一点に縮められないような閉曲線がどれくらいあるかによって空間のつながり方を測る。このとき伸び縮みさせることによって互いに行き来できる閉曲線は同じものとみなして考える(したがって特に一点に縮められるような閉曲線はどれも同じ曲線となる)。
次にホモロジー
ホモトピーと違ってホモロジーでは閉曲線を伸び縮みさせることはできない。代わりに閉曲線に電流を流し、電流の流れ方を見る。
まず自由に閉曲線を考えてそこに好きな大きさの電流が流れていると考える。次にその曲線と一部分が一致している別の閉曲線を取り、そこに同じ大きさの電流を流す(電流の向きは、重なる部分で互いに逆向きになるように取る)。すると重なっている部分の電流が相殺されて、初めにあった閉曲線とは別の新たな閉曲線に電流が流れている状態になる。このように、閉曲線電流に別の閉曲線電流を重ね合わせることで、新しい閉曲線電流を作ることができる。
ここでホモロジーでは、内部に穴のない2次元領域(曲面)の縁になっているような閉曲線をすべて取り上げて、そのような閉曲線に流れる周回電流を全てゼロと同じであるとみなす。そしてこのゼロとみなした電流の重ね合わせで行き来できる電流の流し方を互いに等しいものとみなす。
つまり、ホモトピーでは連続的に伸び縮みさせることが曲線の変形手段だったのに対し、ホモロジーでは穴なし領域の境界を回る電流を重ねることが曲線の変形手段になる。これらは一見するとずいぶん違って見えるけれど、ホモトピーの視点で等しい曲線はホモロジーの視点でも必ず等しい。特に連続的に一点に縮められる曲線は、ホモロジーでもゼロになる(閉曲線を一点にまで縮める過程で曲線が通った点を全て合わせると穴のない曲面になり、その曲面の縁を回る電流はゼロとみなしたので)。
あと1次元のホモトピーと1次元のホモロジーで最も異なっているのは、1次元のホモトピーは非可換でホモロジーは可換であること。例えば先に穴aの周りを回ってから穴bを回る閉曲線と先にbを回ってからaを回る閉曲線は、ホモトピーの立場では一般的には等しくならない。しかし穴aの周りと穴bの周りのどちらに先に電流を流しても電流の流し方としては変わらないので、ホモロジーでは加える順序は重要ではない。

コホモロジー

ホモロジーに似た言葉にコホモロジーがある。 ホモロジーコホモロジーはどう違うのかとか、コホモロジーだけ出てくることがあるのは何故かというのは、たぶんありがちな疑問。おおざっぱには

となる。
数学では、

  • 図形の性質を調べると、図形上に定義される関数のことが分かり、逆に
  • 関数の性質を調べると、図形のことが分かる

という、図形⇔関数の相互関係がしばしば現れる。「代数函数は何で定まるか,リイマン面で定まる」とかリーマン・ロッホの定理とか。コーシーの積分定理も、図形Dのつながり方(単連結であること)から\textstyle{\oint\nolimits_{\partial D} f dz \not= 0}となる正則関数が無いことが分かるという「図形⇔関数」関係の一種だと解釈できる。代数幾何のスキーム論で、関数(環R)から図形({\rm Spec}R)が定義されるのも、図形⇔関数の相互関係になっている。
ここで図形⇔関数の例として(コホモロジーの話をつなぐことも考えて)線形空間Vをとりあげて、Vを調べる代わりにV上の関数を調べてみる。
候補としてすぐ思いつくのはVからVへの関数だけど、これはもとの空間Vよりずっと複雑そうなので却下する。それよりも、もっと簡単なVからスカラーKへの関数の方がふさわしい。さらに線形空間のことを調べたいのだから、VからKへの関数のうち線形なものだけに限定する。よって調べるべきは、VからKへの線形写像となる。
このような「線形空間VからスカラーKへの線形写像の全体」をV^*で表し、Vの双対空間と呼ぶ。V^*も足し算とスカラー倍が定義されるので線形空間になる。
このとき、Vが有限次元なら \dim V= \dim V^* という関係が成立している。これは、図形の性質(\dim V)が分かれば関数の性質(\dim V^*)が分かり、関数の性質(\dim V^*)が分かれば図形の性質(\dim V)が分かるという「図形⇔関数」の単純な例になっている。
この双対空間の見方をホモロジーに適用すると(鎖複体上の準同型写像を考える)、ホモロジー群の代わりに別の群

H^0(X),H^1(X),H^2(X),\ldots,H^n(X)
が得られ、これをコホモロジー群と呼ぶ。コホモロジー群も図形Xのつながり方を反映するものになっている。

ここでホモロジーコホモロジーは、

というように、何をもとにして作ったのかが異なっている。

一般に、ある性質を満たす加群の系列(=鎖複体)があれば、そこからホモロジーコホモロジーを定義することができる。おおまかに言えば、図形をもとにして作ればホモロジー、関数をもとにして作ればコホモロジーになる。
関数は初めから加群になっている(足し算とスカラー倍ができる)ので、ホモロジーではなくコホモロジーが自然に出てくる場合も多い。例えば、層のコホモロジード・ラームコホモロジーは、どちらも関数的なもの(層、微分形式)から定義されている。
(cf.「ホモロジーとコホモロジー」)

関数のつながりにくさと(コ)ホモロジー

ホモロジーコホモロジーは、図形のつながりを測るものとして導入された。しかし「図形⇔関数」の相互関係を踏まえると、ホモロジーコホモロジーは、関数についての何らかの性質を測っていると考えることもできる。
図形の視点では、ホモロジーH_k(X) \;(k\geq 1)は図形に穴がどれだけあるかを測っていた。一方、関数の側からは、図形の穴は関数の定義域を広げていくときの障害物に見える。
例えば、ある微分方程式に局所的な解が存在していても、特異点があったり領域が丸くつながっていたりすると、局所的な解を穴の周りでつなげていったときに大域的につじつまのあった解にならないかもしれない。また正則関数を解析接続していった場合も穴の周りを回ると関数がうまくつながらずに多価関数になるかもしれない。このように図形の穴は局所的なものを大域的につなげていくときの障害になる。
なので、ホモロジーコホモロジーというは、関数の視点から見ると「関数の(大域への)つなげにくさ」を表していると解釈することができる。
この見方は層のコホモロジーに強く現れる(層が局所・大域についてのものなので)。位相空間が同じでも層(≒関数)が違えば、コホモロジー(関数のつなげにくさ)の値は違ってくる。初めからすべての不連続関数を認めてしまえば関数のつなげにくさは消失しH^k=0 \;(k\geq 1)となる(脆弱層)。

完全系列と圏論的視点

ホモロジー固有の概念ではないけれどホモロジーと関係の深い概念に完全系列がある。基本となるのは鎖複体の短完全系列からホモロジーの長い完全系列が出てくるという定理や、それに関連した系列(空間対のホモロジーの完全系列とかマイヤー・ヴィートリス完全系列とか)。
ホモロジーの完全系列は一見すると単にホモロジーの計算のための道具に見えて、何で重要そうに出てくるのか分からない感じがある。しかしそのホモロジーの計算だけを見ても、圏論的な視点の萌芽が出てきている。ここで圏論的視点というのは、圏論的な言葉を使うということではなく、興味対象の内部構造を見るよりも対象同士の関係性に注目する見方のことを考えている。

完全系列を使ったホモロジーの計算では例えば、完全系列

  \cdots  \mathop\rightarrow\limits^{\partial_{*}} H_{k}(X) \mathop\longrightarrow\limits^{f_{*}} H_{k}(Y) \mathop\longrightarrow\limits^{g_{*}} H_{k}(Z) \rightarrow \\   \qquad \qquad \qquad \mathop\rightarrow\limits^{\partial_{*}} H_{k-1}(X) \mathop\longrightarrow\limits^{f_{*}} H_{k-1}(Y) \mathop\longrightarrow\limits^{g_{*}} H_{k-1}(Z) \rightarrow \cdots
で、Yホモロジー0のとき
H_{k}(Z) \simeq H_{k-1}(X)
となることを使って、知りたいホモロジーの値を既知のものに帰着させる。
ここでのポイントは、完全系列を使ったホモロジーの計算では空間の内部構造に目を向けていないところにある。
本来、ホモロジー群は図形の内部構造(点や曲線など)から定義され、図形のつながり方を表していた。でも完全系列を利用したホモロジー群の計算では、内部構造からではなく他の図形との関係性(ホモロジーの完全系列を持つこと)からホモロジーが計算される。つまり注目している箇所が、興味のある対象の内部構造から対象間の関係に移動している。もちろん都合のいい完全系列を得るためには内部構造を見る必要があるのだけど、それでも内部構造の重要性が相対的に低下している。
対象間の関係に注目した方が計算が簡単になることにも現れているように、ホモロジーには内部構造よりも対象同士の相互関係に視点を移すことによって見えてくる秩序がある。もちろんそのような秩序はホモロジー特有のものとは限らないし、改めて観察すれば例えば線形代数にも見いだせる。
ホモロジーの持つそのような秩序の代数的な部分(特に完全系列についての)を取り上げ発展させたのがホモロジー代数で、概念や言語として抽出し一般化したのが圏論という勝手なイメージ。

制約としての完全系列

また「ホモロジーを調べると重要な性質として完全系列が出てくる」というのをひっくり返して、「短完全系列からホモロジーの長完全系列が出てくる」ことによってホモロジーが規定されているという見方もできる。

例えば「短完全系列からホモロジーの長完全系列が出てくる」に類似した次の性質は、位相空間ホモロジー論(アイレンバーグ-スティーンロッドの公理系(1945年))の公理の一つになっている。

位相空間対の間の包含写像
 \left(A, \emptyset \right) \mathop\longrightarrow\limits^{i} \left(X, \emptyset \right) \mathop\longrightarrow\limits^{j} \left(X, A \right)
について、相対ホモロジーの系列
 \cdots \mathop\rightarrow\limits^{j^{*}} H_{n+1}(X,A)  \mathop\longrightarrow\limits^{\partial^{*}} H_n(A) \mathop\rightarrow\limits^{i^{*}} H_n(X) \mathop\rightarrow\limits^{j^{*}}   H_n(X,A) \mathop\longrightarrow\limits^{\partial^{*}} H_{n-1}(A) \mathop\rightarrow\limits^{i^{*}} \cdots
は完全系列になる。
この公理だけでなくホモロジー論の他の公理からも、内部構造より写像を介した対象同士の関係性に重点が移っている様子が見える。
 \left(A, \emptyset \right) \mathop\longrightarrow\limits^{i} \left(X, \emptyset \right) \mathop\longrightarrow\limits^{j} \left(X, A \right)は、短完全系列 0 \longrightarrow A \mathop\longrightarrow\limits^{i} X \mathop\longrightarrow\limits^{j} X/A \longrightarrow 0 位相空間での代替。相対ホモロジーH_{}(X,A)というのは、空間XのうちAの部分をつなげて一点に潰した上でのホモロジーを考えるのと同等(0次だけは違いが出る)。

別の例として、加群の(コ)ホモロジー({\rm Tor},{\rm Ext})や層のコホモロジーがある。
これらは定義を見ても完全系列との関連性が強くなっているように見えるけれど、一方で、どうして射影分解や入射分解をしたくなったのかなど、定義の意図が見えなくなっている。でも「短完全系列からホモロジーの完全系列が出てくること」を目標にしてホモロジーの値を徐々に定めていこうとすると、あのような定義に至る理由が何となくだけど見えてくる。

というように完全系列を通して考えていくと、圏論的な見方や圏論的な手法に接近していくことになる。

付記:加群ホモロジーとTor


「短完全系列からホモロジーの完全系列が出てくる」という条件からホモロジーの値をどう決めていけるかを、加群ホモロジーの場合でやってみる。
目標は
加群の系列
 0 \to A \to B \to C \to 0
が完全系列なら、次のような完全系列
 \cdots \to H_k(A) \to H_k(B) \to H_k(C) \to \\ \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \vdots \\ \qquad \qquad  \to H_1(A) \to H_1(B) \to H_1(C) \to \\  \qquad \qquad \to H_0(A) \to H_0(B) \to H_0(C) \to 0
が生じる。
が正しくなるようにH_k(X)を決めること。完全系列が伸びていくようにH_0(X),H_1(X),H_2(X),\ldotsをだんだんと決めていく。

まず手始めにH_0(X)をうまく決めて、 H_0(A) \to H_0(B) \to H_0(C) \to 0が必ず完全系列になるようにしたい。この課題について使えそうな次の性質がある。

 0 \to A \to B \to C \to 0
が完全系列なら
 A \otimes M \to B \otimes M \to C \otimes M \to 0
も完全系列になる。
(ここで「\otimes」の意味を知っている必要はない)
これを踏まえて
 H_0(X) = X \otimes M
と決めてやれば、 0 \to A \to B \to C \to 0が完全系列のとき、ホモロジーの完全系列の一部分
 H_0(A) \to H_0(B) \to H_0(C) \to 0
が成立するようになる。
次はH_1(X)の決定になるのだけど、その前にH_2(X)以降を考えておく。
無限個のH_2(X),H_3(X),H_4(X),\ldotsを決めるためには何らかの共通したやり方が必要になる。そこでホモロジーの計算手法でも使った次の性質を持ち出す。
ホモロジーの完全系列
 \cdots \to H_k(A) \to H_k(B) \to H_k(C) \to \\ \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \vdots \\ \qquad \qquad  \to H_2(A) \to H_2(B) \to H_2(C) \\ \qquad \qquad  \to H_1(A) \to H_1(B) \to H_1(C) \\ \qquad \qquad  \to H_0(A) \to H_0(B) \to H_0(C) \to 0
で、H_k(B)=0 \quad (k \geq 1)ならば
H_k(C) \simeq H_{k-1}(A) \quad (k \geq 2)
となる。
ここで
H_k(C) \simeq H_{k-1}(A) \quad (k \geq 2)
の部分だけ見ると再帰的な定義に見えるので、うまく使えばk \geq 2でのH_k再帰的に決定できる可能性がある。あくまで可能性だけど。
この再帰式を利用するには、H_k(X)=0 \quad (k \geq 1)となるXが事前に決まっていないといけない。けれど、そのようなXは勝手には決められない。H_1(X)=0ならば、
 0 \to A \to B \to X \to 0
が完全系列のときに、ホモロジー完全系列が
 \cdots \to 0 \to H_0(A) \to H_0(B) \to H_0(X) \to 0
となる。したがって、H_k(X)=0 \quad (k \geq 1)となるX
 0 \to A \to B \to X \to 0
が完全系列ならば
 0 \to A \otimes M \to B \otimes M \to X \otimes M \to 0
も完全系列になる。
を満たさないといけない(この条件を満たすものは平坦加群に等しい。また射影加群もこの条件を満たす。射影加群ならば平坦加群なので)。そこでこの条件を満たすXの全てあるいはその一部分についてH_k(X)=0 \quad (k \geq 1)と決める。
この条件を満たさない一般のXについてのH_k(X)の値は、次のようにして決まる。
H_k(P_l)=0 \quad (k \geq 1)となるP_0,P_1,\ldots,P_l,\ldotsをうまく取ってきて、短完全系列の列
 0 \to Q_0 \to P_0 \to X \to 0 \\ 0 \to Q_1 \to P_1 \to Q_0 \to 0 \\  0 \to Q_2 \to P_2 \to Q_1 \to 0 \\ 0 \to Q_3 \to P_3 \to Q_2 \to 0 \\ \qquad \qquad \qquad \qquad \qquad \qquad \qquad \qquad \vdots
を作る。するとH_k(X) \quad (k \geq 2)の値はH_1(Q_{k-2})の値で決まってしまう。
 H_k(X) \simeq H_{k-1}(Q_0) \simeq H_{k-2}(Q_1) \simeq \cdots \simeq H_1(Q_{k-2})
そして上のような短完全系列の列を取るという操作は「射影分解」
 \cdots  \to P_2 \to P_1 \to P_0 \to X \to 0
に帰着される。なぜなら、上の短完全系列の列からは、完全系列
 \cdots  \to P_2 \to P_1 \to P_0 \to X \to 0
が得られ、逆にこの完全系列から上の短完全系列の列が出てくるので。
あとはすべてのXについてのH_1(X)が決まれば、すべてのH_k(X)が連鎖的に決定される。
ここでH_1(X)と完全系列
 \cdots  \to P_2 \to P_1 \to P_0 \to X \to 0
の関係を見てみる。まずこの完全系列が長く続いていかず
0 \to P_0 \mathop\to\limits^{\epsilon} X \to 0
の形になったとする。この場合X \simeq P_0なので、この場合のXH_k(X) = 0 \quad (k \geq 1)となるものだと分かる。
次に完全系列が
0 \to P_1 \mathop\to\limits^{\rho_1} P_0 \mathop\to\limits^{\epsilon} X \to 0
となったとする。この完全系列に「\otimes M」をほどこすと、
 P_1 \otimes M \mathop\to\limits^{\rho_1 \otimes {\rm id}} P_0 \otimes M \mathop\to\limits X \otimes M \to 0
が完全系列となる。完全系列は次のように伸ばすことができる。
 0 \to \ker \left(\rho_1 \otimes {\rm id} \right) \to P_1 \otimes M \mathop\to\limits^{\rho_1 \otimes {\rm id}} P_0 \otimes M \to X \otimes M \to 0
また、短完全系列 0 \to P_1 \to P_0 \to X \to 0からはホモロジーの完全系列
0 \to H_1(X) \to P_1 \otimes M \to P_0 \otimes M \to X  \otimes M \to 0
も得られる(H_1(P_0)=0なので)。これらを比べて
 H_1(X) \simeq \ker \left(\rho_1 \otimes {\rm id} \right)
となる。
ここでついでに H_0(X)について調べてみると、完全系列であることと準同型定理を使って
 \begin{eqnarray} H_0(X) & = & X \otimes M = {\rm im} \left( \epsilon \otimes {\rm id} \right) \simeq P_0 \otimes M / \ker \left(\epsilon \otimes {\rm id} \right)  \\ & \simeq & P_0 \otimes M / {\rm im} \left(\rho_1 \otimes {\rm id} \right)  \end{eqnarray}
となっている。さらにここで新たに

0 \mathop\to\limits^{\rho_2} P_1 \mathop\to\limits^{\rho_1} P_0 \mathop\to\limits^{\rho_0} 0 \\  0 \mathop\to\limits^{\rho_2 \otimes {\rm id}} P_1 \otimes M \mathop\to\limits^{\rho_1 \otimes {\rm id}} P_0 \otimes M \mathop\to\limits^{\rho_0 \otimes {\rm id}} 0
という写像を考えると(これらは完全系列ではない)、
 \begin{eqnarray} H_0(X) & \simeq & P_0 \otimes M / {\rm im} \left(\rho_1 \otimes {\rm id} \right)  \\ & \simeq & \ker \left(\rho_0 \otimes {\rm id} \right) / {\rm im} \left(\rho_1 \otimes {\rm id} \right) \end{eqnarray}
となっていて、H_1(X)
 \begin{eqnarray} H_1(X) & \simeq & \ker \left(\rho_1 \otimes {\rm id} \right) \simeq \ker \left(\rho_1 \otimes {\rm id} \right) /\{0\} \\ & \simeq & \ker \left(\rho_1 \otimes {\rm id} \right) / {\rm im} \left(\rho_2 \otimes {\rm id} \right) \end{eqnarray}
となっている。
このことから、かなり強引な推論(というか答えを知った上で知らないふりをした推論)をおこなうと、完全系列が
 \cdots \to P_3 \to P_2 \mathop\to\limits^{\rho_2} P_1 \mathop\to\limits^{\rho_1} P_0 \mathop\to\limits^{\epsilon} X \to 0
となっている一般の場合に対しても
 \cdots \to P_3 \to P_2 \mathop\to\limits^{\rho_2} P_1 \mathop\to\limits^{\rho_1} P_0 \mathop\to\limits^{\rho_0} 0 \\ \cdots \to P_3 \otimes M  \to P_2 \otimes M \mathop\to\limits^{\rho_2 \otimes {\rm id} } P_1 \otimes M \mathop\to\limits^{\rho_1 \otimes {\rm id}} P_0  \otimes M \mathop\to\limits^{\rho_0 \otimes {\rm id}} 0
とした上で、
 \begin{eqnarray} H_0(X) & = & \ker \left(\rho_0 \otimes {\rm id} \right) / {\rm im} \left(\rho_1 \otimes {\rm id} \right) \simeq X \otimes M \\ H_1(X) & = & \ker \left(\rho_1 \otimes {\rm id} \right) / {\rm im} \left(\rho_2 \otimes {\rm id} \right)  \end{eqnarray}
と定めるともしかするとうまくいくかもしれない。
このようにして「短完全系列からホモロジーの完全系列が出てくる」という条件から、トーション群の定義
 {\rm Tor}_k(X,M) = \ker \left(\rho_k \otimes {\rm id} \right) / {\rm im} \left(\rho_{k+1} \otimes {\rm id} \right)
が出てくる。また同様のことをコホモロジーの完全系列についておこなうと、エクステンション群{\rm Ext}が出る。当然だけど、これは実際の歴史的な展開とは別の話。

複体のホモロジー群およびコホモロジー群の普遍係数定理の証明を追求することにより、E.Čech(1935年)が{\rm Tor}_1の理論に(ただし記号は別)、またS. Eilenberg-S. MacLane(1942年)が{\rm Ext}^1の理論に到達した。これらは後に、上記Cartan-Eilenbergの書物(1956年)において、加群Aの射影的分解(或いは単射的分解)を用いて、一般次数nに対して{\rm Tor}_nおよび{\rm Ext}^n\;(n=0,1,2,\ldots)の統一的理論にまで展開された。事実、上記書物は、{\rm Tor}および{\rm Ext}の理論とその応用という形にまとめられている。これらと並行して、可換環の理論への応用もいちじるしい。また{\rm Tor}{\rm Ext}の理論を展開するために、射影的加群単射加群、平坦加群という性質が基本的役割をうけもつが、加群についてのこれら諸性質が、従来ほとんど注意されずにあったことも、今日から見ると誠に思いがけないことであった。
(河田敬義『ホモロジー代数』序)