前回の続き。 wikipedia の F-algebra のページ http://en.wikipedia.org/wiki/F-algebra 参照。 上記ページに F(X) = 1 + X という関手の F-algebra の例で (N,[zero,succ]) が出てくる。Haskell で書くと type N = Int a :: Maybe N -> N a Nothing = 0 a (Just x) = x + 1 本当は N は自然数なので負の数も入っている Int とは違うけれどここでは Int でごまかしておく。 a Nothing = 0 の部分が zero に、a (Just x) = x + 1 の部分が succ に対応する。 さて F-algebra (N,a) から別の F-algebra (B,b) b :: Maybe B -> B に対する射 f はど