$\require{AMScd}$ はじめに Haskellを勉強していると諸々の概念と圏論の繋りが気になってきます。今回は代数的データ型について圏論との関係を述べます。 なお、面倒なので圏と関手、直積、直和はわかっているものとして話しを進めます。 自己関手$F : C \to C$について$F$代数とは$C$の対象$A$と$C$の射$a : F(A) \to A$の組$(A, a)$のことです。このとき$F$代数$(A, a)$と$(B, b)$の間の射とは$C$の射$f : A \to B$であり、以下の図を可換にするものである。