Comma category

A comma category (also sometimes called a slice category) is a construction in category theory, a branch of mathematics. It provides another way of looking at morphisms: instead of simply relating objects of a category to one another, they become objects in their own right. This notion was introduced in 1963 by F. W. Lawvere, although the technique did not become generally known until many years later. Today, it has become particularly important to mathematicians, because several important mathematical concepts can be treated as comma categories. There are also certain guarantees about the existence of limits and colimits in the context of comma categories. The name comes from the notation originally used by Lawvere, which involved the comma punctuation mark. Although standard notation has changed, the use of a comma as an operator being potentially confusing, the name persists.

 Contents

Definition

The most general comma category construction involves two converging functors. Typically, one of these will be a "selection" or "constant" functor: many accounts of category theory consider these special cases only, but the term is actually much more general. (A selection functor maps every object in the domain category to the same, fixed object in the codomain category, and every domain morphism to the identity morphism of that fixed object. Often, the choice of domain category is not relevant; typically, the discrete category having only one object is used.)

General form

Suppose that [itex]\mathcal{A}[itex], [itex]\mathcal{B}[itex], and [itex]\mathcal{C}[itex] are categories, and [itex]T[itex] and [itex]S[itex] are functors

Missing image
CommaCategory-04.png
Image:CommaCategory-04.png

We can form the comma category [itex](T \downarrow S)[itex] as follows:

• The objects are triples [itex](\alpha, \beta, f)[itex], with [itex]\alpha[itex] an object in [itex]\mathcal{A}[itex], [itex]\beta[itex] an object in [itex]\mathcal{B}[itex], and [itex]f : T(\alpha)\rightarrow S(\beta)[itex] a morphism in [itex]\mathcal{C}[itex].
• The morphisms from [itex](\alpha, \beta, f)[itex] to [itex](\alpha', \beta', f')[itex] are pairs [itex](g, h)[itex] where [itex]g : \alpha \rightarrow \alpha'[itex] and [itex]h : \beta \rightarrow \beta'[itex] are morphisms in [itex]\mathcal A[itex] and [itex]\mathcal B[itex] respectively, such that the following diagram commutes:
Missing image
CommaCategory-03.png
Morphisms in (T ↓ S)

Morphisms are composed by taking [itex](g, h) \circ (g', h')[itex] to be [itex](g \circ g', h \circ h')[itex], whenever the latter expression is defined.

Category of objects under A

The first special case occurs with [itex]T[itex] being a selection functor, and [itex]S[itex] an identity functor (so [itex]\mathcal{B} = \mathcal{C}[itex]). (Then [itex]T(\alpha) = A[itex] for some fixed [itex]A[itex] in [itex]\mathcal{C}[itex] and every [itex]\alpha[itex] in [itex]\mathcal{A}[itex]). We then have the category of objects under [itex]A[itex], sometimes called objects co-over [itex]A[itex], written [itex](A \downarrow \mathcal{C})[itex]. This is also known as the coslice category with respect to [itex]A[itex]. The objects [itex](\alpha, \beta, f)[itex] can be simplified to [itex](\beta, f)[itex], since fixing [itex]A[itex] makes [itex]\alpha[itex] irrelevant; and [itex]f : T(\alpha) \rightarrow S(\beta)[itex] simplifies to [itex]f : A \rightarrow \beta[itex] - often, [itex]f[itex] is called something like [itex]i_\beta[itex], to indicate injection. In a similar way, morphisms like [itex](g, h) : (B, i_B) \rightarrow (B', i_{B'})[itex] reduce to simply [itex]h : B \rightarrow B'[itex], as [itex]g[itex] is just the identity morphism on [itex]A[itex]. The following must be a commutative diagram:

Missing image
CommaCategory-02.png
Image:CommaCategory-02.png

Category of objects over A

Similarly, [itex]T[itex] might be an identity functor and [itex]S[itex] a selection functor: this is the category of objects over [itex]A[itex] (where [itex]A[itex] is the object of [itex]\mathcal{C}[itex] selected by [itex]S[itex]), written [itex](\mathcal{C} \downarrow A)[itex]. This is also known as the slice category over [itex]A[itex]. It is the dual concept to objects-under-[itex]A[itex]. The objects are pairs [itex](\beta, \pi_\beta)[itex] with [itex]\pi_\beta : \beta \rightarrow A[itex]; the [itex]\pi[itex] stands for projection onto [itex]A[itex]. Given [itex](B, \pi_B)[itex] and [itex](B', \pi_{B'})[itex], a morphism in the comma category is a map [itex]g : B \rightarrow B'[itex] making the following diagram commute:

Missing image
CommaCategory-01.png
Image:CommaCategory-01.png

Other variations

In either of these two cases, the identity functor may be replaced with some other functor; this yields a family of categories particularly useful in the study of adjoint functors. For example, if [itex]S[itex] is the forgetful functor mapping an abelian group to its underlying set, and [itex]t[itex] is the set selected by [itex]T[itex], then [itex](t \downarrow S)[itex] is a comma category whose objects are maps from [itex]t[itex] to certain sets. This relates to the left adjoint of [itex]S[itex], which is the functor that maps a set to the free abelian group having that set as its basis: some of the objects of [itex](t \downarrow S)[itex] will be sets underlying such groups.

Another special case occurs when both [itex]S[itex] and [itex]T[itex] are selection functors. If [itex]S[itex] selects [itex]A[itex] and [itex]T[itex] selects [itex]B[itex], then the comma category produced is equivalent to the set of morphisms between [itex]A[itex] and [itex]B[itex]. (Strictly, it is a discrete category - all the morphisms are identity morphisms - which may be identified with the set of its objects.)

Examples of use

Some notable categories

Several interesting categories have a natural definition in terms of comma categories.

• The category of pointed sets is a comma category, [itex](\bull \downarrow \mathbf{Set})[itex] with [itex]\bull[itex] being (a functor selecting) any singleton set, and [itex]\mathbf{Set}[itex] (the identity functor of) the category of sets. Each object of this category is a set, together with a function selecting some element of the set: the "basepoint". Morphisms are functions on sets which map points to points. In a similar fashion one can form the category of pointed spaces [itex](\bull \downarrow \mathbf{Top})[itex].
• The category of graphs is [itex](\mathbf{Set} \downarrow D)[itex], with [itex]D : \mathbf{Set} \rightarrow \mathbf{Set}[itex] the functor taking a set [itex]s[itex] to [itex]s \times s[itex]. The objects [itex](a, b, f)[itex] then consist of two sets and a function; [itex]a[itex] is an indexing set, [itex]b[itex] is a set of nodes, and [itex]f : a \mapsto (b \times b)[itex] chooses pairs of elements of [itex]b[itex] for each input from [itex]a[itex]. That is, [itex]f[itex] picks out certain edges from the set [itex]b \times b[itex] of possible edges. A morphism in this category is made up of two functions, one on the indexing set and one on the node set. They must "agree" according to the general definition above, meaning that [itex](g, h) : (a, b, f) \mapsto (a', b', f')[itex] must satisfy [itex]f' \circ g = S(h) \circ f[itex]. In other words, the edge corresponding to a certain element of the indexing set, when translated, must be the same as the edge for the translated index.
• Many "augmentation" or "labelling" operations can be expressed in terms of comma categories. Let [itex]T[itex] be the functor taking each graph to the set of its edges, and let [itex]A[itex] be (a functor selecting) some particular set: then [itex](T \downarrow A)[itex] is the category of graphs whose edges are labelled by elements of [itex]A[itex]. This form of comma category is often called objects [itex]T[itex]-over [itex]A[itex] - closely related to the "objects over [itex]A[itex]" discussed above. Here, each object takes the form [itex](B, \pi_B)[itex], where [itex]B[itex] is a graph and [itex]\pi_B[itex] a function from the edges of [itex]B[itex] to [itex]A[itex]. The nodes of the graph could be labelled in essentially the same way.
• A category is said to be locally cartesian closed if every slice of it is cartesian closed (see above for the notion of slice). Locally cartesian closed categories are the classifying categories of dependent type theories.

Limits and universal morphisms

Colimits in comma categories may be "inherited". There is a theorem which says that if [itex]\mathcal{A}[itex] and [itex]\mathcal{B}[itex] are cocomplete, [itex]T : \mathcal{A} \rightarrow \mathcal{C}[itex] is a cocontinuous functor, and [itex]S : \mathcal{B} \rightarrow \mathcal{C}[itex] another functor (not necessarily cocontinuous), then the comma category [itex](T \downarrow S)[itex] produced will also be cocomplete. For example, in the above construction of the category of graphs, the category of sets is cocomplete, and the identity functor is cocontinuous: so graphs are also cocomplete - all (small) limits exist. This result is much harder to obtain directly. See Limit (category theory) for more information on the terminology used in this example.

The notion of a universal morphism to a particular colimit, or from a limit, can be expressed in terms of a comma category. Essentially, we create a category whose objects are cones, and where the limiting cone is a terminal object; then, each universal morphism for the limit is just the morphism to the terminal object. This works in the dual case, with a category of cocones having an initial object. For example, let [itex]\mathcal{C}[itex] be a category with [itex]F : \mathcal{C} \rightarrow \mathcal{C} \times \mathcal{C}[itex] the functor taking each object [itex]c[itex] to [itex](c, c)[itex] and each arrow [itex]f[itex] to [itex](f, f)[itex]. A universal morphism from [itex](a, b)[itex] to [itex]F[itex] consists, by definition, of an object [itex](c, c)[itex] and morphism [itex]\rho : (a, b) \rightarrow (c, c)[itex] with the universal property that for any morphism [itex]\rho' : (a, b) \rightarrow (d, d)[itex] there is a unique morphism [itex]\sigma : c \rightarrow d[itex] with [itex]F(\sigma) \circ \rho = \rho'[itex]. In other words, it is an object in the comma category [itex]((a, b) \downarrow F)[itex] having a morphism to any other object in that category; it is initial. This serves to define the coproduct in [itex]\mathcal{C}[itex], when it exists.

Lawvere showed that the functors [itex]F : \mathcal{C} \rightarrow \mathcal{D}[itex] and [itex]G : \mathcal{D} \rightarrow \mathcal{C}[itex] are adjoint if and only if the comma categories [itex](F \downarrow \mathcal{D})[itex] and [itex](\mathcal{C} \downarrow G)[itex] are isomorphic, and equivalent elements in the comma category can be projected onto the same element of [itex]\mathcal{C} \times \mathcal{D}[itex]. This allows adjunctions to be described without involving sets, and was in fact the original motivation for introducing comma categories.

• Art and Cultures
• Countries of the World (http://www.academickids.com/encyclopedia/index.php/Countries)
• Space and Astronomy