Constructions on Categories
The constructions on categories include product category (objects are tuples where each element is an object of the original categories and arrows are tuples of original arrows, composition is just element-wise position-respective composition), slice category, arrow category and opposite (dual) category. These concept are all not hard to grasp and used in many places.
Product category is trivial but useful because it makes the concept of a functor automatically applicable when arity is higher or equal to 2.
Slice category and Arrow category are great exercises. The arrows and objects (of those categories) all stand for the arrows in the original category. And once you touch the concept of natural transformation, you will realize the similarity between it and arrow category.
The most important of them all is opposite category. One example I have to mention is Set$^{op}$ (the dual of the category Set). The objects are the same, while now an arrow $f^{op}: A \rightarrow B$ actually represents the arrow $f :B \rightarrow A$ in the Set. In other words, an arrow $A \rightarrow B$ in Set$^{op}$ is actually a function from the set $B$ to the set $A$.
This is said to be “totally formally construction” by Awodey while I don’t quite agree. Because I think “totally formally” stands for “no meaning”, i.e. a situation where I write down “A” and say this A stands for nothing but only this alphabet, this literal itself. However, here, this dual category actually stands for something. It is more like an alias, or a renaming, on the original category. We just change the direction of the arrows during understanding.
Some Controversy Below, Might not be correct
Another example is that, just as nlab says, a contravariant functor is a functor from the opposite category. The ‘is’ here, actually stands for ‘is equivalent to’, not exactly meaning ‘the same object’. (The way phrased in the nlab using ‘is’ confuses me a great deal.)
Recall, in category $\mathcal{ A}$,
$Hom_{\mathcal{A}}(\cdot, \cdot)$ is a bifunctor mapping from $\mathcal{A}$ to Set.
To be more concentrated on the idea of contravariant functor, take arbitrary object $A$, partially applied, $Hom_{\mathcal{A}}(\cdot, A)$ is a contravariant functor mapping to Set.
An interesting fact is that, you will see in some places take as notation $Hom_{\mathcal{A}}(\cdot, A): \mathcal{A}^{op} \rightarrow$ Set or $Hom_{\mathcal{A}}(\cdot, \cdot) : \mathcal{A}^{op} \times \mathcal{A} \rightarrow$Set. It of course doesn’t make sense because $\mathcal{A}^{op}$ is ultimately a different category as $\mathcal{A}$, of which objects of course cannot put into $Hom_{\mathcal{A}}$. What’s more, HOW CAN AN ARROW CROSS CATEGORY? Let alone saying the set of arrows of two objects of different categories. This notation may just stands for a short hand, suggesting a contravariance in the first position of the arguments.
(see, the product category is helpful in expressing the domain of the functors).
Constructions in Categories
I emphasized in here to distinguish with the above constructions, which are using categories as a basic block to do construction. While in this part, the constructed ‘things’ are arrows, objects or some specific kinds of categories.
The word construction here is actually a bit misleading – because most of the time, we are describing a ‘thing’ with a specific property without really proving the ‘thing’ exists.
Initial Object, Terminal Object
An initial/terminal object in a category is an object that has a unqiue arrow going out to/coming from every object in the category.
We can easily see that Initial/Terminal Object is unique up to isomorphism. Simply by the uniqueness of the outgoing/comingin arrow and the existence of identity arrow.
It is easy to see that not every category has an initial/terminal object. You can just formally construct a discrete category, where the only arrows are identities.
It is a simple concept (may even considered as trivial) but you may find it hard if you really try to find an example. There are a lot of interesting problems, I will just copy and paste one from (Benjamin C Pierce):
What are terminal/initial object in Set$^\rightarrow$?
In my opinion, Initial/Terminal Objects are the fundamental ideas in constructions in categories because it gives a very easy way of (uniquely) defining things. And this way of uniquely defining things will be used a lot later.
(Co)Product object, (Co)Equaliser, Pullback/Pushout
I will accumulate definition here to let you see how “the way of uniquely defining” is working here.
That means, for every definition below, you should be able to prove their unqiueness up to isomorphism.
The following context is always in a fixed category $\mathcal{C}$.
Product: $X$ is the product of $A,B$ if there exists $a:X \rightarrow A, b: X \rightarrow B$, and for all objects $K$ with arbitrary $k_a:K \rightarrow A, k_b: K \rightarrow B$, we would have a unique $i:K \rightarrow X$ s.t. $a \circ i = k_a, b \circ i = k_b$
Equaliser: $X,Y$ are arbitrary objects and $f,g : X \rightarrow Y$, an equalizer is an object $Z$ and an arrow $e : Z \rightarrow X$ s.t. $f \circ e = g \circ e$ and for arbitrary object $Z’$ and $e’ : Z’ \rightarrow X$ if $f \circ e’ = g \circ e’$, then there is a unqiue arrow $u$ s.t. $u \circ e = e’$
Pullback: $X,Y,Z$ are arbitrary objects and $f: X \rightarrow Z, g : Y \rightarrow Z$, a pullback is an object $A$ and two arrows $g’ : A \rightarrow X, f’ : A \rightarrow Y$ s.t. $f \circ g’ = g \circ f’$ and for arbitrary object $A’$ and arrows $g_2: A’ \rightarrow X, f_2 : A’ \rightarrow Y$, if $f \circ g_2 = g \circ f_2$, then there is a unique arrow $u: A’ \rightarrow A$ s.t. $u \circ g’ = g_2$ and $u \circ f’ = f_2$.
There always this unique arrow in each of the definitions. After you draw the commutative diagram, you will realize it comes to play when you trying to verify the ‘unique up to isomophism’ since any two of the Produce/Equalize/Pullback would have a ‘unique’ arrow points to each other and thus it is possible to compose together and however, we always have identity as one arrow. You can see this reasoning is also how initial/terminal object is proved to be ‘unique up to isomorphism’.
You can see how product, equaliser and pullback are kind of ‘terminal’.
What about other three? Duality! Just as how teminal objects and initial objects are dual to each other. The uniqueness is get for free.
(Co)Limits, Exponentials
Limits may also be characterized as terminal objects in the category of cones to F. – Wikipaedia