对于产品,对于每个
f
和
g
,
factorizer f g
唯一的功能是
fst . factorizer f g = f
和
snd . factorizer f g = g
.
对于副产品
f
和
g级
,
因子分解器f g
唯一的功能是
factorizer f g . Left = f
和
factorizer f g . Right = g
.
因子化子的存在表征了
Either
和
(,)
类型直至同构。这提供了一种描述乘积和和的替代方法,可以将其推广到其他类别(这只是关于态射的合成)。相反,定义为
data (,) a b = (,) a b
和
data Either a b = Left a | Right b
是特定语言的专用语言。