The comma category of two functors $f : C \to E$ and $g : D \to E$ is a category like an arrow category of $E$ where all arrows have their source in the image of $f$ and their target in the image of $g$ (and the morphisms between arrows keep track of how these sources and targets are in these images). It can also be seen a kind of 2-limit: a directed refinement of the homotopy pullback of two functors between groupoids.
We discuss three equivalent definitions of comma categories
The terminology “comma category” is a holdover from the original notation $(f,g)$ for such a category, which generalises $(x,y)$ or $C(x,y)$ for a hom-set. This is rarely used any more. More common modern notations for the comma category are $(f/g)$, which we will use on this page, and $(f\downarrow g)$.
If $f:C\to E$ and $g:D\to E$ are functors, their comma category is the category $(f/g)$ whose
objects are triples $(c,d,\alpha)$ where $c\in C$, $d\in D$, and $\alpha:f(c)\to g(d)$ is a morphism in $E$, and whose
morphisms from $(c_1,d_1,\alpha_1)$ to $(c_2,d_2,\alpha_2)$ are pairs $(\beta,\gamma)$, where $\beta:c_1\to c_2$ and $\gamma:d_1\to d_2$ are morphisms in $C$ and $D$, respectively, such that $\alpha_2 . f(\beta) = g(\gamma) . \alpha_1$.
The definition of $(f/g)$ is now complete. In addition, there are two canonical forgetful functors defined on the comma category:
there is a functor $H_C\colon (f/g)\rightarrow C$ which sends each object $(c,d,\alpha)$ to $c$, and each pair $(\beta,\gamma)$ to $\beta$.
there is a functor $H_D\colon (f/g)\rightarrow D$ which sends each object $(c,d,\alpha)$ to $d$, and each pair $(\beta,\gamma)$ to $\gamma$.
Furthermore:
These functors and natural transformation together give the comma category a 2-categorical universal property; see this section for more.
Let $I = \{a \to b\}$ be the (directed) interval category and $E^I = Funct(I,E)$ the functor category.
The comma category is the pullback
in the standard sense of pullback of morphisms in the 1-category Cat of categories.
Compare this with the construction of homotopy pullback (here), hence with the definition of loop space object and also with generalized universal bundle.
The comma category is the comma object of the cospan $C\overset{f}{\rightarrow}E\overset{g}{\leftarrow}D$ in the 2-category $Cat$. This means it is an appropriate weighted 2-categorical limit (in fact, a strict 2-limit) of the diagram
Specifically, it is the universal span making the following square commute up to a specified natural transformation (such a universal square is in general called a comma square):
(Sometimes this is called a “lax pullback”, but that terminology properly refers to something else; see comma object and 2-limit.)
Notably, the forgetful functors $H_C$ and $H_D$ from the “objectwise” definition are thus recovered via a categorical construction: they are the projections from the summit of the “appropriate” 2-categorical limit.
In terms of the imagery of loop space objects, the comma category is the category of directed paths in $E$ which start in the image of $f$ and end in the image of $g$.
If $f$ and $g$ are both the identity functor of a category $C$, then $(f/g)$ is the category $C ^{\mathbf{2}}$ of arrows in $C$.
If $f$ is the identity functor of $C$ and $g$ is the inclusion $1\to C$ of an object $c\in C$, then $(f/g)$ is the slice category $C/c$.
Likewise if $g$ is the identity and $f$ is the inclusion of $c$, then $(f/g)$ is the coslice category $c/C$.