5
$\begingroup$

Why are bifunctors called "bifunctors"? They are just functors, are they not?

After all, we don't call functions of two arguments "bifunctions", or natural transformations with two parameters "binatural transformations" and what not. Is there any good reason why bifunctors are called so?

  • 2
    On the other hand we do speak about "bilinear maps" in linear algebra. Perhaps just one of those discontinuities that have to arise when one tries to generalize from several different areas with their own terminological traditions?2012-04-17
  • 1
    But my understanding is that bilinear maps are not linear maps or vice versa. So, there you *do* need different terms.2012-04-17
  • 0
    Well, they are linear maps from a tensor product of vector spaces -- which is arguably similar to bifunctors being functors from a product category. (Of course in the case of bilinear maps one needs to signal somehow that it's _not_ a linear map from the direct _sum_ space, which does not seem to have any equivalent risk for bifunctors).2012-04-17
  • 0
    I always had the impression that math terminology is not as rigorous as mathematics itself2012-04-17
  • 1
    In the most basic sense bilinear maps are not linear, i.e. $f(x,y) = x\cdot y$ is bilinear, but $f(a\cdot(x,y)) = f(ax,ay) = a^2\cdot(x\cdot y) \neq a\cdot x \cdot y$ as would be the case for the "ordinary" linear map. My guess is that it is the same for bifunctors, e.g. any functor is covariant or contravariant, however, $\mathbf{Hom}(\cdot,\cdot)$ is neither (that means it is covariant in the second argument $\mathbf{Hom}(A,\cdot)$ and contravariant in first $\mathbf{Hom}(\cdot,A)$).2012-04-17
  • 0
    @dtldarek. Yes, that analogy would make sense. In the same way that the tensor product may be seen as an "artificial" construction to make bilinear transformations look linear, one might regard dual category as an artificial construction to make mixed variant functors look functorial. However, the "bifunctor" term is used even when there is no mixed variance.2012-04-17
  • 0
    @UdayReddy I do not say that math terminology is consistent (there are many significantly different meanings of "kernel"), but this distinction actually makes sense to me. Is it possible for a function arity to be greater than 1 or are parameters just tuples of some big product? If it is convenient to differentiate between unary, binary and $n$-ary functions, then it may be _convinient_ to differentiate between unary, binary and $n$-ary functors, especially if there are other reasons (as mentioned in the previous comment).2012-04-17
  • 0
    @UdayReddy: It's not obvious a priori that a bifunctor is a functor: why should a construction functorial in two variables in jointly functorial in both? After all, this is not true if I replace "functorial" with "continuous". I suppose the point is to emphasise that a bifunctor is a functor of _two_ variables rather than one.2012-04-17
  • 0
    @ZhenLin. Yes, I see that now. However, note that nobody thought of calling natural transformations "binatural transformations". Occam's razor should win eventually.2012-04-17

1 Answers 1

7

I don't know the real answer to your question, anyway I'll try to give to you a possibile explanation, following the suggestion of Henning Makholm.

Bifunctors can be consider a categorical version of bilinear map. A bilinear map is just a map $f \colon V \times W \to Z$, where $V$, $W$ and $Z$ are vector spaces considered just as sets, which is linear in each component. In a similar way a bifunctor is map $\mathcal F \colon \mathbf C \times \mathbf D \to \mathbf E$ of graphs, which is functorial in each component (but it has also to satisfy a condition). Before I can justify my statement let me state the following theorem:

Suppose you have two families of functors $\langle L_c \colon \mathbf D \to \mathbf E\rangle_{c \in \mathbf C}$ and $\langle R_d \colon \mathbf C \to \mathbf E\rangle_{d \in \mathbf D}$ such that:

for each pair $c \in \mathbf C$ and $d \in \mathbf D$ we have that $L_c(d)=R_d(c)$

for each pair $f \in \mathbf C(c,c')$ and $g \in \mathbf D(d,d')$ the equality $$L_{c'}(g) \circ R_d(f) = R_{d'}(f) \circ L_c(g)$$ holds

then there exists a necessarily unique functor $\mathcal F \colon \mathbf C \times \mathbf D \to \mathbf E$ such that $\mathcal F(c,d)=L_d(c)=R_c(d)$ and $\mathcal F(f,g)=L_{c'}(g)\circ R_d(f)=R_{d'}(f)\circ L_c(g)$.

So given a graph map $\mathcal F \colon \mathbf C \times \mathbf D \to \mathbf E$ such that for each $c \in \mathbf C$ and $d \in \mathbf D$ the components $\mathcal F(c,-)$ and $\mathcal F(-,d)$ are functors (which have to satisfy the condition of the theorem above), then $\mathcal F$ is a bifunctor, and $\mathcal F$ can be a bifunctor if and only if it satisfies this condition.

Anyway there's more: a bilinear map $f \colon V \times W \to Z$ (or reather $f \colon V \otimes W \to Z$) can be seen both as a map $f \colon V \to \hom(W,Z)$ and $f \colon W \to \hom(V,Z)$ through the natural bijections

$$\hom(V,\hom(W,Z)) \cong \hom(V \otimes W,Z) \cong \hom(W,\hom(V,Z))$$

and this is the real cool property of bilinear maps in the category of vector spaces.

In the category of (small) categories and functors instead we have these natural bijections

$$\hom(\mathbf C, \hom(\mathbf D,\mathbf E)) \cong \hom(\mathbf C \times \mathbf D, \mathbf E) \cong \hom(\mathbf D, \hom(\mathbf C,\mathbf E))$$

so in categorical context the role played by the tensor product for vector spaces is played by product and thus the role of bilinear maps is played by bifunctors.

I hope this explanation can be considered enough reasonable to justify the name bifunctor.

  • 0
    Ok, I guess that is a reasonable explanation. I was under the mistaken assumption that the morphism-bimorphism distinction is only made when there is a product and a separate tensor product, because there would then be a real need to distinguish between the two concepts. You are saying that the "bimorphism" terminology can be used whenever there is a closed symmetric monoidal structure.2012-04-17
  • 0
    @UdayReddy well to be exact you could talk about *bi-maps* (an in general *multi-maps*) also in monoidal (not neccessarily symmetric) categories and more in general in multicategories. Btw I suggest to avoid to call this kind of morphisms bimorphisms because this [term that has a different meaning](http://en.wikipedia.org/wiki/Bimorphism#Some_specific_morphisms).2012-04-18