在集合的范畴中,为什么单例集合是终端?
In the category of sets, why are singleton sets terminal?
我试图理解为什么集合的类别是这样定义的,将单例集合作为终端对象。如果 "Set" 类别包含所有可能的集合,以及这些集合之间的所有可能的态射,为什么不存在从单例集合到所有其他具有无限基数的集合的单射、非满射态射?在这种情况下,不会有任何终端对象。
那么是什么规则导致它按照定义的方式来定义,而不是用无限集和态射来定义。我想这与它属于 "concrete" 类别有关。但我不明白它怎么这么明显。
根据定义,类别中的终端对象是具有 属性 的对象 T,对于类别中的任何对象 C,恰好有一个箭头 C -> T。在集合的类别中,一个单例对象,例如 {1} 有这个 属性:
For any set S there is a function f:S -> {1} defined by setting f(s)=1
for any element s of S. There can't be another function g:S -> {1},
because for some element s of S, g(s) would have to be an element t of
{1} other than 1, but there is no such element t. So there is exactly
one function from S to {1} for each object S of the category.
您关于从 {1} 到集合 S 有许多函数的评论是无关紧要的;他们走错了方向,与终端对象的定义相关。
我试图理解为什么集合的类别是这样定义的,将单例集合作为终端对象。如果 "Set" 类别包含所有可能的集合,以及这些集合之间的所有可能的态射,为什么不存在从单例集合到所有其他具有无限基数的集合的单射、非满射态射?在这种情况下,不会有任何终端对象。
那么是什么规则导致它按照定义的方式来定义,而不是用无限集和态射来定义。我想这与它属于 "concrete" 类别有关。但我不明白它怎么这么明显。
根据定义,类别中的终端对象是具有 属性 的对象 T,对于类别中的任何对象 C,恰好有一个箭头 C -> T。在集合的类别中,一个单例对象,例如 {1} 有这个 属性:
For any set S there is a function f:S -> {1} defined by setting f(s)=1 for any element s of S. There can't be another function g:S -> {1}, because for some element s of S, g(s) would have to be an element t of {1} other than 1, but there is no such element t. So there is exactly one function from S to {1} for each object S of the category.
您关于从 {1} 到集合 S 有许多函数的评论是无关紧要的;他们走错了方向,与终端对象的定义相关。