nLab
experimental alternative definition of functor

Good news! The twists and turns on this page have culminated in Functors and generalized elements. From there, I drew the diagram

Staring at this diagram resulted in the following:


Definition

Given categories CC and DD, a functor F:CDF:C\to D is a map that sends each object xx in CC to an object F(x)F(x) in DD and each morphism f:xyf:x\to y in CC to a morphism F(f):F(x)F(y)F(f):F(x)\to F(y) in DD such that each commuting diagram in CC maps to a commuting diagram in DD.


This has now been included in the definition of functor.

Note this is still essentially the same thing as conveyed in my earlier picture

requiring the square commutes, but is done in a way that avoids introducing the non-standard morphism-like components α x:xF(x)\alpha_x:x\to F(x).

In other words, if we stopped worrying about what α x:xF(x)\alpha_x:x\to F(x) really was and simply accepted that the indicated square commutes, it implies automatically that any commuting diagram in AA maps to a commuting diagram in BB.

Contents

This page is an informal/speculative discussion of an alternative (yet hopefully equivalent) definition of functor. It first appeared as a discussion at functor itself, but was subsequently moved here.

Discussion 3.0

I think I may have found a way to express this idea without resorting to non-standard morphism-like maps xF(x)x\to F(x) or cographs.

Definition

Given categories AA and BB, a map F:ABF:A\to B is a functor if for every morphism f:xyf:x\to y in AA

F(f)F(x)=F(f(x)).F(f) F(x) = F(f(x)).

Let’s check

F(gf)F(x) =F(gf(x)) =F(g)F(f(x)) =F(g)F(f)F(x).\array{ F(g\circ f) F(x) &= F(g\circ f(x)) \\ &= F(g)\circ F(f(x)) \\ &= F(g)\circ F(f) F(x).}

Since this is true for all morphisms f:xyf:x\to y and g:yzg:y\to z, we have

F(g)F(f)=F(gf)F(g)\circ F(f) = F(g\circ f)

as required.

Next,

F(1 A)F(x)=F(1 A(x))=F(x)F(1_A) F(x) = F(1_A(x)) = F(x)

as required.

Therefore, it seems to work.

Note this is still essentially the same thing as conveyed in my earlier picture

requiring the square commutes, but is done in a way that avoids introducing the non-standard morphism-like components.

Discussion 2.0

After Discussion 1.0 below, it seems that the original intention of this page was to define a functor in terms of a cograph. Given a functor, it is straightforward to construct its cograph. However, it may be possible to do the reverse, i.e. start with a cograph and infer the functor that gives rise to that cograph.

Is it possible to define a functor in terms of cograph? If so, how?

Discussion 1.0

Definition

Given small categories AA and BB define their disjoint union ABA\sqcup B to be the category with

Obj(AB)=Obj(A)Obj(B)Obj(A\sqcup B) = Obj(A)\sqcup Obj(B)

and

Hom AB(x,y)={Hom A(x,y) ifx,yA Hom B(x,y) ifx,yB otherwiseHom_{A\sqcup B}(x,y) = \left\{ \begin{aligned} Hom_A(x,y) & if x,y \in A \\ Hom_B(x,y) & if x,y \in B \\ \emptyset & otherwise \end{aligned} \right.

There are two inclusion maps

i A:AABandi B:BABi_A:A\to A\sqcup B\quad\text{and}\quad i_B:B\to A\sqcup B

defined for any morphism f:abf:a\to b in AA and morphism g:cdg:c\to d in BB by

i A(a)=a,i A(b)=b,andi A(f)=fi_A(a) = a\sqcup\emptyset,\quad i_A(b) = b\sqcup\emptyset,\quad\text{and}\quad i_A(f) = f\sqcup\emptyset

and

i B(c)=c,i B(d)=d,andi B(g)=g.i_B(c) = \emptyset\sqcup\c,\quad i_B(d) = \emptyset\sqcup d,\quad\text{and}\quad i_B(g) = \emptyset\sqcup g.

Definition

Given categories AA, BB and inclusion maps i A:AABi_A:A\to A\sqcup B, i B:BABi_B:B\to A\sqcup B, a functor is a map F:ABF:A\to B together with component morphisms α x:i A(x)i BF(x)\alpha_x:i_A(x)\to i_B\circ F(x) and α y:i A(y)i BF(y)\alpha_y:i_A(y)\to i_B\circ F(y) for any morphism f:xyf:x\to y in AA such that the following diagram commutes:

i A(x) i A(f) i A(y) α x α y i BF(x) i BF(f) i BF(y) \array{ i_A(x) & \stackrel{i_A(f)}{\to} & i_A(y) \\ \mathllap{\scriptsize{\alpha_x}}\downarrow && \downarrow\mathrlap{\scriptsize{\alpha_y}} \\ i_B\circ F(x) & \stackrel{i_B\circ F(f)}{\to} & i_B\circ F(y) }


Todd: If ABA \sqcup B means the disjoint union of AA and BB, then there are no morphisms of the form i A(x)i B(F(x))i_A(x) \to i_B(F(x)).

Eric: Hi Todd. I saw your comment after I added the figure above. I am probably not expressing myself clearly. I want to get Obj(A)Obj(A) and Obj(B)Obj(B) into the same category while preserving all morphisms and then ADD components α x\alpha_x and α y\alpha_y. Is that kind of thing allowed?

I think the picture expresses what I’m trying to do, but maybe I’m converting that into the wrong formulas.

Eric: The idea is that by requiring every such square to commute, you automatically get F(gf)=F(g)F(f)F(g\circ f) = F(g)\circ F(f) and F(Id x)=Id F(x)F(Id_x) = Id_{F(x)}. Or so I think

Eric: Not to mention, this looks more like a natural transformation, so a pattern is more apparent.

Todd: What I was saying is that wherever these α x\alpha_x are supposed to live, it’s can’t be in ABA \sqcup B, because in ABA \sqcup B, there simply are no morphisms of that form.

Your picture suggests that you have in mind some category CC into which AA and BB embed; it can’t be ABA \sqcup B since your α x\alpha_x simply don’t exist there. But it’s some CC in which such morphisms α x\alpha_x exist, let’s say. Then it looks like your notion of functor involves the following things:

  • Embeddings (full embeddings?) i A:ACi_A: A \to C, i B:BCi_B: B \to C into some category CC.

  • A rule which assigns to each object xx of AA an object F(x)F(x) of BB, and to each morphism f:xyf: x \to y of AA a morphism F(f):F(x)F(y)F(f): F(x) \to F(y) of BB. In other words, a map F:ABF: A \to B between the underlying directed graphs of AA and BB.

  • A rule which assigns to each object xx of AA a morphism α x:i A(x)i B(F(x)\alpha_x: i_A(x) \to i_B(F(x), making that square commute.

Okay, so far these conditions don’t ensure functoriality: that F(gf)=F(g)F(f)F(g \circ f) = F(g) \circ F(f) and F(1 x)=1 F(x)F(1_x) = 1_{F(x)}. You’re going to have to add more conditions to make that inference. For example, suppose CC has just one morphism from each object i A(a)i_A(a) to each object of i B(b)i_B(b). Then commutativity of those squares is automatic, for any directed graph morphism F:ABF: A \to B. Insofar as not all graph morphisms are functorial, you can’t infer functoriality.

You could ask that all the α x\alpha_x be isomorphisms. Then commutativity plus that condition would give functoriality, and your concept amounts to that of ordinary functor FF together with an ordinary natural isomorphism i Ai BFi_A \overset{\sim}{\to} i_B \circ F.

But the trouble with all this is that I have no idea what CC is supposed to be! It can’t be ABA \sqcup B. Would it be something constructed in terms of AA and BB (and if so, what)? If it’s just any old category into which AA and BB embed and for which such isos α x\alpha_x exist (and compatible with the F(f)F(f) via commutative diagrams), then I have problems with that too.

Eric; Hi Todd. I think I’m confused because with the standard definition of functor F:ABF:A\to B no one ever complains about writing F(x)BF(x)\in B, so in a way, isn’t FF an arrow from xAx\in A to F(x)BF(x)\in B? We also write F(f)BF(f)\in B, which makes me think FF is a bunch of 1-arrows and 2-arrows. I mean, doesn’t the picture make sense? Why is it so hard to convert the picture to a mathematical statement?

Toby: Eric, here you seem to be conflating these two arrows: \to and \mapsto. At the level of functions between sets, if AA and BB are sets and ff is a function from AA to BB, then I write f:ABf\colon A \to B or AfBA \overset{f}\to B. Then if xx is an element of AA and yy is an (the) element of BB such that y=f(x)y = f(x), then I write f:xyf\colon x \mapsto y or xfyx \overset{f}\mapsto y. Or without bothering with yy, I write f:xf(x)f\colon x \mapsto f(x) or xff(x)x \overset{f}\mapsto f(x). (Actually, this is best when ‘xx’ is a variable and ‘f(x)f(x)’ is a formula in terms of that variable; for example, if ff is the squaring function, then I write f:xx 2f\colon x \mapsto x^2 or xfx 2x \overset{f}\mapsto x^2, and this serves to define ff.)

Actually, you can find a lot of literature where the same symbol ‘\rightarrow’ is used for both \to and \mapsto, but they are still different concepts.

Of course, what the cograph gets you is that it turns \mapsto into a special case of \to. But they are still different; f:ABf\colon A \to B is an arrow in the category of sets or (in the categorified case) in the 22-category of categories, while xfyx \overset{f}\mapsto y is (only in the categorified case) an arrow in the cograph of ff.

Eric: Hmm.. but we ARE talking about cographs :) At least I was accidentally :)

Urs Schreiber: concerning the nature of CC: as I suggested before, it does make sense to take this to be the cograph of a functor. And indeed, in some situations it is useful to define the notion of functor in terms of the notion of cograph. In Higher Topos Theory the notion of adjoint (infinity,1)-functor is defined entirely in terms of cographs of functors.

Eric: Thanks Urs. Now I just need to parse what you say into something I can understand, but it is encouraging. In fact, quoting myself from earlier in the discussion:

It seems like maybe I am trying to work backwards, i.e. define a functor via a cograph.

When I tried to grok “cograph” on my personal web Natural Transformation, I stripped out the line including the functor and with Toby’s help, realized what I (think I) was talking about was the disjoint union of categories.

I guess, my plan of attack now is to see how we can define functor via cograph. For some reason, that makes sense to me.

Todd: Yes, that’s true, the cograph is fine. I thought that Eric had wanted a CC which would uniformly work, independently of which functor FF was being considered. Instead, we construct the cograph CC in terms of FF, and everything is for the best in this best of all possible worlds. And we get the picture Eric was aiming for.

Eric: Neat. Now, if we (I’ll try, but I’m not confident and wouldn’t mind if someone else did it!) can write down a succinct definition of functor in terms of cographs with a picture like the one above (if not that one), we could add it to functor.

Eric: By the way, here is something I wrote on my personal web Natural Transformation:

Urs Schreiber: at cograph it is indicated how that concept encodes the notion of profunctor which is a bit more general than that of functor.

Eric: Oh! That is pretty! Thanks. I like this diagram

R * X×Y χ R {0,1} \array{ R &\to& {*} \\ \downarrow && \downarrow \\ X \times Y &\stackrel{\chi_R}{\to}& \{0,1\} }

I need to think about it, but a vale of fog has been lifted. More fog remains, but thanks!


Definition

Given small categories AA and BB define their disjoint union ABA\sqcup B to be the category with

Obj(AB)=Obj(A)Obj(B)Obj(A\sqcup B) = Obj(A)\sqcup Obj(B)

and

Hom AB(x,y)={Hom A(x,y) ifx,yA Hom B(x,y) ifx,yB otherwiseHom_{A\sqcup B}(x,y) = \left\{ \begin{aligned} Hom_A(x,y) & if x,y \in A \\ Hom_B(x,y) & if x,y \in B \\ \emptyset & otherwise \end{aligned} \right.

There are two inclusion maps

i A:AABandi B:BABi_A:A\to A\sqcup B\quad\text{and}\quad i_B:B\to A\sqcup B

defined for any morphism f:abf:a\to b in AA and morphism g:cdg:c\to d in BB by

i A(a)=a,i A(b)=b,andi A(f)=fi_A(a) = a\sqcup\emptyset,\quad i_A(b) = b\sqcup\emptyset,\quad\text{and}\quad i_A(f) = f\sqcup\emptyset

and

i B(c)=c,i B(d)=d,andi B(g)=g.i_B(c) = \emptyset\sqcup\c,\quad i_B(d) = \emptyset\sqcup d,\quad\text{and}\quad i_B(g) = \emptyset\sqcup g.

I intentionally did not use the word “functor” above even though that is really the coproduct in Cat. The reason is that I want to use this disjoint union to define a functor. The following is a possible starting point:

Definition

Given categories AA, BB and inclusion maps i A:AABi_A:A\to A\sqcup B, i B:BABi_B:B\to A\sqcup B, a functor is a map F:ABF:A\to B that assigns morphisms α x:i A(x)i BF(x)\alpha_x:i_A(x)\to i_B\circ F(x) and α y:i A(y)i BF(y)\alpha_y:i_A(y)\to i_B\circ F(y) for any morphism f:xyf:x\to y in AA such that the following diagram commutes:

i A(x) i A(f) i A(y) α x α y i BF(x) i BF(f) i BF(y) \array{ i_A(x) & \stackrel{i_A(f)}{\to} & i_A(y) \\ \mathllap{\scriptsize{\alpha_x}}\downarrow && \downarrow\mathrlap{\scriptsize{\alpha_y}} \\ i_B\circ F(x) & \stackrel{i_B\circ F(f)}{\to} & i_B\circ F(y) }


Discussion

Eric: Motivated by some discussion over at natural transformation, I was wondering if the following alternative definition of functor holds water:

Definition

Given categories AA, BB, a functor is a map F:ABF:A\to B that assigns maps α x:xF(x)\alpha_x:x\to F(x) and α y:yF(y)\alpha_y:y\to F(y) for any morphism f:xyf:x\to y in AA such that the following diagram commutes:

x f y α x α y F(x) F(f) F(y) \array{ x & \stackrel{f}{\to} & y \\ \mathllap{\scriptsize{\alpha_x}}\downarrow && \downarrow\mathrlap{\scriptsize{\alpha_y}} \\ F(x) & \stackrel{F(f)}{\to} & F(y) }

If so, it has a certain beauty that appeals to me. Thanks!

Urs: that diagram seems to be meaningful only if A=BA = B, right? In that case, this is a functor F:AAF : A \to A together with a natural transformation from the identity functor on AA into FF.

Eric: Yeah. It needs some work. Of course I don’t want A=BA=B, but I would like to be able to introduce morphisms from AA to BB. Could I form some kind of category union or something? The picture is kind of neat. Each diagram in AA “hovers” above a diagram in BB. If it can be ironed out, it might be an efficient definition.

Urs: now you are looking for the notion cograph of a functor (you should make us write out more details at that entry!)

Eric: Gulp! Ok. But is there a term for the (small) category C=ABC = A\cup B where C 0=A 0B 0C_0 = A_0\cup B_0 and C 1=A 1B 1C_1 = A_1\cup B_1?

Toby: You could just call that the union of the two categories. But it's not really a meaningful concept unless you already have AA and BB as subcategories of some ambient category DD, or something like that. To ask whether an element of A 0A_0 matches an element an element of B 0B_0 (and similarly for A 1A_1 and B 1B_1) is evil.

Alternatively, you could take it as understood that the sets A 0A_0 and B 0B_0 are disjoint, (and similarly for A 1A_1 and B 1B_1). Then you get the disjiont union of the two categories, and that is an important concept; it is the coproduct in Cat. And that is one of the ingredients of the cograph of a functor, so probably it's what you want.

Eric: It seems like maybe I am trying to work backwards, i.e. define a functor via a cograph.

Eric: Ok! I think I got it. Does this hold water?


Definition

Given categories AA, BB and inclusion maps i A:AABi_A:A\to A\sqcup B, i B:BABi_B:B\to A\sqcup B, a functor is a map F:ABF:A\to B that assigns morphisms α x:i A(x)i BF(x)\alpha_x:i_A(x)\to i_B\circ F(x) and α y:i A(y)i BF(y)\alpha_y:i_A(y)\to i_B\circ F(y) for any morphism f:xyf:x\to y in AA such that the following diagram commutes:

i A(x) i A(f) i A(y) α x α y i BF(x) i BF(f) i BF(y) \array{ i_A(x) & \stackrel{i_A(f)}{\to} & i_A(y) \\ \mathllap{\scriptsize{\alpha_x}}\downarrow && \downarrow\mathrlap{\scriptsize{\alpha_y}} \\ i_B\circ F(x) & \stackrel{i_B\circ F(f)}{\to} & i_B\circ F(y) }

It follows that i Ai_A and i Bi_B are functors.

Note that a map F:ABF:A\to B is a functor if the map α:i Ai BF\alpha:i_A\Rightarrow i_B\circ F is a natural transformation.


Urs: to be frank, I don’t get it! Also: what is it you are really after? The concept of a functor is entirely non-mysterious, it seems. What are you dissatisfied with, with the standard definition?

Eric: I enjoyed fiddling with natural transformations recently. I hadn’t thought about them much. The introduction of “components” was kind of interesting. I also liked that “sheet transformation”, which I now think of as a some kind of 3-morphism. So I was wondering if we could introduce “components” to define functors (which I now think of as 2-morphisms). Then I wondered if we could continue a pattern downward all the way to (-2)-categories.

The pattern natural transformation \to functor \to morphism is not 100% clear to me. Each individually “makes sense”, but I’d like to see a clearer pattern how they’re related.

Basically, I’m trying to understand

  • (-2)-morphisms
  • (-1)-morphisms
  • 0-morphisms
  • 1-morphisms (morphisms)
  • 2-morphisms (functors?)
  • 3-morphisms (natural transformations? sheet transformations?)
  • Etc.

in some consistent way.

For example, with categories AA and BB we have a functor category [A,B][A,B] which is related to (if not equal to) a 2-category. How about sets AA and BB thought of as 0-categories? We could form a “morphism category” [A,B][A,B] that is related (if not equal to) a 1-category. Then I can imagine a “truth category” [True,True][True,True] that is related (if not equal) to a 0-category. Etc etc. This is all pretty elementary stuff I’m sure.

In a nutshell, I’m not saying there is anything wrong the definitions there, but I’m trying to understand them in a different way if possible.

Reference

Revised on March 28, 2010 17:21:45 by Eric Forgy (119.247.164.191)