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?

  • 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
    @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