The Unapologetic Mathematician

Mathematics for the interested outsider

The Opposite Category

One of the most interesting general facts about categories is how ubiquitous the notion of duality is. Pretty much everything has a “mirror image”, and the mirror is the opposite category.

Given a category \mathcal{C}, with objects {\rm Ob}(\mathcal{C}) and morphisms {\rm Mor}(\mathcal{C}), we can construct the “opposite category” \mathcal{C}^{\rm op} simply enough. In fact, it has the exact same objects and morphisms as \mathcal{C} does. The difference comes in how they relate to each other.

Remember that we had two functions, s(m) and t(m) assigning the “source” and “target” objects to any arrow. To get the opposite category we just swap them. Given a morphism, its source in \mathcal{C}^{\rm op} is its target in \mathcal{C}, and vice versa. Of course, now we have to swap the order of composition. If we have f:A\rightarrow B and g:B\rightarrow C in \mathcal{C}, then we get f:B\rightarrow A and g:C\rightarrow B in \mathcal{C}^{\rm op}. In \mathcal{C} the composition g\circ f:A\rightarrow C is defined, but in \mathcal{C}^{\rm op} the composition f\circ g:C\rightarrow A is defined.

Most definitions we give will automatically come with a “dual” definition, which we get by reversing all the arrows like this. For example, monos and epis are dual notions, as are subobjects and quotient objects. Just write down one definition in terms of morphisms, reverse all the morphisms (and the order of composition), and you get the other.

Theorems work this way too. If you dualize the hypotheses and the conclusions, then you can dualize each step of the proof to prove the dual theorem. I can prove that any injection is monic, so it follows immediately by duality that any surjection is epic. Many texts actually completely omit even the statements of dual notions and theorems once they define the opposite category, but I’ll try to be explicit about the duals (though of course I won’t need to give the proofs).

Another place duality comes up is in defining “contravariant” functors. This is just a functor F:\mathcal{C}^{\rm op}\rightarrow\mathcal{D}. It sends each object of \mathcal{C} to an object of \mathcal{D}, and sends a morphism f:A\rightarrow B in \mathcal{C} to a morphism F(f):F(B)\rightarrow F(A) in \mathcal{D}. See how the direction of the image morphism flipped? Early on, contravariant and regular (”covariant”) functors were treated somewhat separately, but really they’re just the same thing once you take the opposite category into account. Sometimes, though, it’s easier to think in terms of contravariant functors rather than mentally flipping all the arrows.

I’ll close with an example of a contravariant functor we’ve seen before. Consider a ring R with unit and a left module M over R. That is, M is an object in the category R-{\bf mod}. We can construct the dual module M^*, which is now an object in the category {\bf mod}-R of right R-modules. I say that this is a contravariant functor. We’ve specified how the dual module construction behaves on objects, but we need to see how it behaves on morphisms. This is what makes it functorial.

So let’s say we have two left R-modules M and N, and an R-module homomorphism f:M\rightarrow N. Since we want this to be a contravariant functor we need to find a morphism f^*:N^*\rightarrow M^*. But notice that M^*=\hom_{R-{\bf mod}}(M,R), and similarly for N. Then we have the composition of R-module homomorphisms \circ:\hom_{R-{\bf mod}}(N,R)\otimes\hom_{R-{\bf mod}}(M,N)\rightarrow\hom_{R-{\bf mod}}(M,R). If \nu is a linear functional on N, then we get \nu\circ f:M\rightarrow R as a linear functional on M. We can define f^*(\nu)=\nu\circ f.

Now, is this construction functorial? We have to check that it preserves identities and compositions. For identities it’s simple: 1_N^*(\nu)=\nu\circ1_N=\nu, so every linear functional on N gets sent back to itself. For compositions we have to be careful. The order has to switch around because this is a contravariant functor. We take f:M\rightarrow N and g:N\rightarrow L and check (g\circ f)^*(\lambda)=\lambda\circ g\circ f=g^*(\lambda)\circ f=f^*(g^*(\lambda))=(f^*\circ g^*)(\lambda), as it should.

May 31, 2007 - Posted by John Armstrong | Category theory | | 1 Comment

1 Comment »

  1. [...] I should have mentioned this before, but usually dual notions are marked by the premix “co-”. As an example, we have [...]

    Pingback by Duality terminology « The Unapologetic Mathematician | May 31, 2007

Leave a comment