Tag: Adjunction

This series(probably three posts) will be on the monad. The first part will deal with only an introduction to monads, algebras over moands and the adjunction problem . The second part will deal with coequalizers and Beck’s theorem in connection with Kleisli categories. In keeping with this blog’s slight CS tilt, the third part will deal with examples of monads from functional programming which I think are crucial to wholly understand the monad. I’ve noticed that I am running too many ‘series posts’ simultaneously. I am still working on the third part of the Grothendieck Spectral Sequence series and will continue the Hopf fibration post which I haven’t updated for a year!

I think that before I continue to introduce the main players of today’s post, I should review the definitions of an adjoint functor as it’ll be quite useful as a tool to see the power of monads.

Consider two categories and functors and . are said to be adjoint i.e if there exists a natural isomorphism of Hom-sets for all . Equivalently, by the unit=counit definition, if there exists the pair of natural transformations (unit) and (counit) which satisfy the following commutative diagrams:

Throughout the post, I’ll represent natural transformations by the symbol . I recommend the confused reader to refer to Aluffi’s Algebra Chapter 0 book in the section on category theory and also my post on the importance of adjoint functors.

If is a natural transformation of functors whose components are given by for an object in . If is another functor, then I’ll represent the components of the induced natural transformation by .

If instead, there is a functor , then I’ll represent the components of the natural transformation by where is an object in .

Monad

Let’s say that is an endofunctor equppied with two natural transformations (unit) and such that the following diagrams commute:

The commutative diagram is a kind of generalization of associativity. I direct the reader to the nlab page to learn more about the basics of it. Much of the importance of monads is derived from its connection to adjoint functors and its connection to programming paradigms(see continuation monad for more information).

Below, I’ll repost an answer I gave to a question on Quora about the importance of adjoint functors. It is a simple exposition which focuses on the intuition behind their construction and gives a few examples with explanations that can aid anyone who is beginning to learn about adjoint functors. I’ll probably add more detail on the and throw in a few more diagrams later.

As another answer has already pointed out, adjoint functors are ubiquitous in many constructions across mathematics and that is enough reason to consider them important. But to help appreciate it more, I think a slightly different interpretation of a natural transformation will be helpful.

Let C be a small category and consider the nerve of the category which is a simplicial set whose n-simplices are the strings:

where are obviously the objects and the arrows are the morphisms in the category. The kth-face maps can be obtained by simply deleting . The classifying space is then realized as the geometrization of (turn the entire construction into a formal CW complex). For example, in the simple case of a poset where morphisms are determined by order, has the points of as its vertices and the size-k totally ordered subsets as it’s .

So, a functor induces a CW-complex map from the category of small categories to the category of CW complexes. I encourage the reader to work through this construction for the sake of clarity.

I’ll leave out a few details here but I’ll say that it is in this sense that a natural transformation is essentially a homotopy . You can then think of adjoint functors as homotopy equivalences on categories. Hence, they do correspond to something weaker than a homeomorphism which is often why many call adjoint functors ‘conceptual inverses’. The concept of an adjoint functor is a special case of an adjunction in 2-categories where these ideas make more sense. The Wikipedia page motivates it by considering a functor F:C \to D and finding the problem for which F is the most efficient solution. This is why these adjoint functors always come in pairs. Let’s review the definition and look at a few interesting examples for all this to make more sense.

Two functors are said to be adjoint i.e if there exists a natural isomorphism of the hom-sets . The equivalent counit-unit definition which is often easier to work with is that are natural isomorphisms and such that the following triangles commute:

The other answer has presented one of the simplest and most important examples, the free-forgetful functor on groups. I’ll present an example of a ‘free-forgetful’-type adjunction which may be a little harder to notice.

Let be a category, say the category of groups or something else. Take two objects . We will study the product . The product is defined by the maps to and so that if maps to both and , then there is a unique morphism which makes the diagram commute. Let’s construct a functor defined by . Damn, did you notice that? We just lost information as there is no map from that can you can compose to get the identity. can probably be constructed in different ways as a product. Well, it hardly matters, let’s try to do something inverse-like. Take an object and do the only thing you can think of, that is, send it to . Let this be the diagonal map . Notice that a pair of morphisms in is the same thing as a morphism . So we have the hom-set natural isomorphism . The counit is the pair of projection maps(a single morphism in ) for and the unit takes to (verify these facts and the components of the natural transformations). A nice mnemonic I once heard was that left adjoints(here ) are ‘liberal’ and generate free things.

Let’s look at a simple example in topology. Let be the category of compact Hausdorff spaces. Define which essentially returns the topological space and forgets the separation axiom and compactness. The ‘most efficient solution’ to this optimization is the functor , the Stone-Cech compactification functor. satisfies the universal property that any map where Y is compact and Hausdorff factors through \beta X .

Another extremely important adjunction is the Hom-Tensor adjunction. Let be rings and consider the categories of modules over these rings. Let be a bi-module and define and . We have a natural isomorphism which can be verified by constructing the units,counits,a simple exercise. It is not free-forgetful in any obvious sense like the previous examples.

Again, a basic example arises from considering partially ordered sets. If and are two posets then they are naturally categories. A pair of adjoint functors in this case is a Galois connection which means that if and only if , in other words, a natural isomorphism . Again, this doesn’t look like a free-forgetful pair.

The best way to understand adjoint functors is to encounter more exmaples of adjunction. As a guiding principle, you can expect to find adjunctions in ‘symmetric and inverse-like’ constructions. The left and right adjoints have many interesting properties, like preserving colimits and limits respectively. This can be proven quite easily once you establish that the Hom-functor preserves arbitrary limits. In fact, there is a class of theorems that allow one to establish left/right adjoints for a functor based on how it acts on limits and colimits.