When considering limits, we started by talking about the diagonal functor . This assigns to an object the “constant” functor that sends each object of to and each morphism of to .
Then towards the end of our treatment of limits we showed that taking limits is a functor. That is, if each functor from to has a limit , then is a functor from to . Dually, if every such functor has a colimit , then is also a functor.
And now we can fit these into the language of adjoints: when it exists, the limit functor is right adjoint to the diagonal functor. Dually, the colimit functor is left adjoint to the diagonal functor when it exists. I’ll handle directly the case of colimits, but the limit statements and proofs are straightforward dualizations.
So we definitely have a well-defined functor . By assumption we have for each functor an object . If we look at the third entry in our list of ways to specify an adjunction, all we need now is a universal arrow . But this is exactly how we defined limits! Now the machinery we set up yesterday takes over and promotes this collection of universal arrows into the unit of an adjunction .
For thoroughness’ sake: the unit of this adjunction is the colimiting cocone, considered as a natural transformation from to the constant functor on the colimiting object. The counit of this adjunction is just the identity arrow on because the colimit of the constant functor is just the constant value. The “quasi-inverse” conditions state that is the identity natural isomorphism on , and that is the identity natural isomorphism on , both of which are readily checked.
And our original definition of an adjoint here reads that . That is, for each cocone to on (one of the natural transformations on the right) there is a unique arrow from the colimiting object of to .