Category Theory
Zulip Server
Archive

You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.


Stream: learning: questions

Topic: sign errors


view this post on Zulip Gurkenglas (Oct 06 2021 at 07:22):

Whenever I see C^op->D I feel like something has gone horribly wrong somewhere in our notation long ago, starting with "f: A -> B, g: B -> C" having A on the left but "(gf)(x)=(g)(fx)" having A on the right. Is there a way we could have done CT so that, on the mainline, we never have to flip an orientation, or is it all a mobius strip so there has to be a mismatch somewhere?

view this post on Zulip Ralph Sarkis (Oct 06 2021 at 07:40):

No, this is not possible. You can write a category theory textbook using the notation xfx \cdot f instead of f(x)f(x), then write composition in the diagrammatic order (usually denoted f;gf;g), but at some point, you will have to deal with opposite categories and contravariant functors. These do not arise from a mismatch in notation, the category of sets where you write composition f;gf;g is the same as the category of sets where you write gfg \circ f.

The motivation for contravariant functors is that often you are interested in functors that actually reverse the order of composition. One main example is the dual vector space functor acting by VHom(V,k)V \mapsto \mathrm{Hom}(V,k) in the category of vector spaces over kk. In general, the Hom functor Hom(,X)\mathrm{Hom}(-,X) is contravariant. Another possible motivation is that some things that you obtain via covariant seem arbitrary. For instance, a covariant functor between posetal categories (X,)(Y,)(X,\leq) \rightarrow (Y,\subseteq) is an order-preserving function between the posets. Thinking of functors as transformation that preserve the structure of composition, this is fine but somewhat arbitrary. An order-reversing function also preserves the structure (you don't lose information), but it also reverses it. An order-reversing function will be a contravariant functor (X,)(Y,)(X,\leq) \rightarrow (Y,\subseteq). Yet another example, if BG\mathbf{B}G denotes the single-object category corresponding to a group GG, then a functor BGSet\mathbf{B}G \rightarrow \mathbf{Set} is a left group action. To obtain a right group action, you must consider a contravariant functor.

The motivation behind opposite categories is to avoid dealing with contravariant functors because they cannot compose. The composite of two contravariant functors is covariant.

view this post on Zulip Gurkenglas (Oct 06 2021 at 08:28):

Both your examples arise from paths having two ends, whose relationship involving a flip makes sense. I worry that

  1. regions of CT seem to make do without flipping
  2. they could have been written the other way to the same effect, so we just pick one
  3. other people independently developed another region but picked the other way
  4. at the interface, we have to translate, threatening errors
  5. as we abstract existing theory, previous regions shrink so there's more interface per volume
  6. I don't even know whether CT would have been orientable :(!

view this post on Zulip Morgan Rogers (he/him) (Oct 06 2021 at 08:51):

Which "regions of CT" are you talking about? Every area that I can think of has a concept of hom-functor or hom-object whose definition requires dualizing one of the arguments.

view this post on Zulip Morgan Rogers (he/him) (Oct 06 2021 at 08:54):

wrt the problem you're pointing to of left vs right conventions causing confusion, it's already too late. This problem appeared in algebra long before the advent of category theory. We're actually fortunate that distinct notational conventions for the two ways of notating composition are widely used!

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:46):

Ouff, don't get me started with the two versions of C\mathbb C! :)

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:48):

@Gurkenglas you're right that choosing where the 'op' goes is (at least at the formal level) arbitrary (a contravariant functor CDC \to D is a covariant functor CoDC^o \to D or a covariant functor CDoC \to D^o), but what's conserved is that in either case a contravariant functor reverses composition! That's not arbitrary

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:49):

Also you can distinguish covariant functors like you distinguish orientation-preserving transformations in a group of transformation: they are actually closed under composition. whereas composing two orientation-changing transformations (or contravariant functors) yields an orientation-preserving transformation (a covariant functor)

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:51):

Hence while the decisions we make are arbitrary, the 'group of transformations they're invariant under' isn't.

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:52):

Matteo Capucci (he/him) said:

Ouff, don't get me started with the two versions of C\mathbb C! :)

This is one of the main tenets of Galois theory: the Galois group tells you a given extension is 'arbitrarily chosen' among many equivalent ones, but the group itself is not, and it's what actually matters

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 10:55):

As for the 'social' aspect of risking 'sign errors' (which mathematics is ripe with), there's not much we can do. ATM I'm not aware of people getting in arguments over which of them shoul drop their 'op', because it's often easy to see where the 'op' should naturally go.

view this post on Zulip Mike Shulman (Oct 06 2021 at 11:32):

Ralph Sarkis said:

The motivation behind opposite categories is to avoid dealing with contravariant functors because they cannot compose. The composite of two contravariant functors is covariant.

However, it's not hard to describe that compositional structure abstractly even before introducing opposite categories.

view this post on Zulip Mike Shulman (Oct 06 2021 at 11:36):

Matteo Capucci (he/him) said:

ATM I'm not aware of people getting in arguments over which of them shoul drop their 'op', because it's often easy to see where the 'op' should naturally go.

One situation where it's not obvious where the 'op' should go, and which isn't resolved by the convention of putting it on domains rather than codomains of contravariant functors, is a contravariant adjunction (an adjunction between two contravariant functors). Is it an adjunction CDopC \leftrightarrows D^{\rm op}, or an adjunction DCopD \leftrightarrows C^{\rm op}? Either way, one of the functors violates the convention that 'op' goes on the domain rather than the codomain.

However, one can also describe a contravariant adjunction as a different beast, a sort of multivariable adjunction (see also), without reference to 'op'.

view this post on Zulip Mike Shulman (Oct 06 2021 at 11:37):

(Sorry for all the self-citations; opposites are something I've thought about a lot.)

view this post on Zulip Fawzi Hreiki (Oct 06 2021 at 11:54):

You could write the 'op' on top of the arrow in which case you aren't dealing with functors but with contravariant functors which are defined as flipping the arrows. The problem with this though is that contravariant functors don't compose so you don't have a (2-)category of categories and contravariant functors.

view this post on Zulip Mike Shulman (Oct 06 2021 at 11:56):

Fawzi Hreiki said:

You could write the 'op' on top of the arrow in which case you aren't dealing with functors but with contravariant functors which are defined as flipping the arrows. The problem with this though is that contravariant functors don't compose so you don't have a (2-)category of categories and contravariant functors.

As I said a moment ago, what you have is a 2-category with contravariance. (-:

view this post on Zulip Jules Hedges (Oct 06 2021 at 12:34):

Mike Shulman said:

However, it's not hard to describe that compositional structure abstractly even before introducing opposite categories.

I guess it's how I instinctively think: a contravariant functor is fundamentally a mapping of objects and morphisms that interchanges source and target, and it just happens to be convenient that it turns out to be the same as a covariant functor either from or to an opposite category, so you have one less fundamental definition to make, at the expense of having to make a harmless but arbitrary choice of convention. (And category theorists culturally really like to minimise the number of fundamental definitions they have)

view this post on Zulip Mike Shulman (Oct 06 2021 at 12:44):

Yeah. I think it's not just about preferring fewer fundamental definitions, though. If "covariant functors" and "contravariant functors" are fundamentally two different beasts, then every theorem you prove about "functors" actually has 2n2^n separate cases, where nn is the number of functors involved. You could just prove the totally-covariant case and wave your hands at the others being "analogous", but defining a contravariant functor to be a covariant one with opposite domain or codomain is a way of making that analogy precise (which is another thing that category theorists really like!).

view this post on Zulip John Baez (Oct 06 2021 at 16:07):

Matteo Capucci (he/him) said:

Ouff, don't get me started with the two versions of C\mathbb C! :)

Electrical engineers often use the letter jj to mean 1\sqrt{-1}, and I occasionally like to troll people by claiming that actually j=ij = -i.

view this post on Zulip Matteo Capucci (he/him) (Oct 06 2021 at 18:33):

amazing+

view this post on Zulip Simon Willerton (Oct 09 2021 at 16:26):

This is very likely implicit in what Mike was saying above, but let me make it explicit. When considering natural transformations between contravariant functors it makes a difference where you put the op!

The functor categories CAT(Aop,B)\mathrm{CAT}(A^{\mathrm{op}}, B) and CAT(A,Bop)\mathrm{CAT}(A, B^{\mathrm{op}}) are not the same. It matters which way the arrows go in BB. More precisely we have CAT(Aop,B)=CAT(A,Bop)op\mathrm{CAT}(A^{\mathrm{op}}, B) = \mathrm{CAT}(A, B^{\mathrm{op}})^\mathrm{op}.

A more symmetric version of this statement is CAT(Aop,Bop)=CAT(A,B)op\mathrm{CAT}(A^{\mathrm{op}}, B^{\mathrm{op}}) = \mathrm{CAT}(A, B)^\mathrm{op}.

view this post on Zulip John Baez (Oct 09 2021 at 17:10):

That's a great point!

view this post on Zulip Hugo Jenkins (Aug 19 2022 at 03:53):

Simon Willerton said:

This is very likely implicit in what Mike was saying above, but let me make it explicit. When considering natural transformations between contravariant functors it makes a difference where you put the op!

The functor categories CAT(Aop,B)\mathrm{CAT}(A^{\mathrm{op}}, B) and CAT(A,Bop)\mathrm{CAT}(A, B^{\mathrm{op}}) are not the same. It matters which way the arrows go in BB. More precisely we have CAT(Aop,B)=CAT(A,Bop)op\mathrm{CAT}(A^{\mathrm{op}}, B) = \mathrm{CAT}(A, B^{\mathrm{op}})^\mathrm{op}.

A more symmetric version of this statement is CAT(Aop,Bop)=CAT(A,B)op\mathrm{CAT}(A^{\mathrm{op}}, B^{\mathrm{op}}) = \mathrm{CAT}(A, B)^\mathrm{op}.

Sorry to beat a dead horse, just was thinking about this. Doesn't the variance we want for the Yoneda embedding sort of give us a preferred one, at least for represented functors?

There is a covariant embedding CCat(Cop,Set)C\hookrightarrow \text{Cat}(C^\text{op}, \text{Set})-- but it is contravariant if we regard the values as in Cat(C,Setop)\text{Cat}(C, \text{Set}^\text{op}). Similarly coYo viewed as CopCat(Cop,Setop)C^\text{op}\hookrightarrow \text{Cat}(C^\text{op}, \text{Set}^\text{op}) is covariant, since we can move the op to the other side and cancel!

If the contravariant and covariant functors between two fixed endpoints are genuinely different kinds of things (as I think they are) then aren't the two Yoneda embeddings genuinely distinguished by the kind of values they take? And shouldn't it then be important which is covariant, and which is contra?