I'm currently trying to teach myself some category theory. Recently, I learned that the tensor product is left adjoint to the hom functor in suitable categories, e.g. vector spaces with linear maps, i.e. for vector spaces $U$, $V$, and $W$,

$$\mathrm{Hom}(U \otimes V, W) \cong \mathrm{Hom}(U, \mathrm{Hom}(V,W))$$

I am trying to gain some intuition for adjoints by looking at special cases. This one is puzzling me a bit. Here is one of my attempts to get a grasp of it:

If my understanding is correct, a (covariant) $k$-tensor $\omega$ on a vector space $V$ can be defined equivalently as either an element of the $k$-fold tensor product of the dual space $V^*$, i.e. $\omega \in \bigotimes_{i=1}^k V^*$, or as a $k$-form on $V$, i.e. a $k$-linear map $\omega: \bigoplus_{i=1}^k V \to \mathbb{R}$. Thus, we have a bijection between $\bigotimes_{i=1}^k V^*$ and the set of $k$-forms on $V$. Furthermore, if $V$ is finite dimensional, then we also have the well-known isomorphism $V^* \otimes V^* \cong \mathrm{Hom}(V,V^*)$.

It seems to me that these observations can be interpreted as special cases of the adjunction above, or are at least related in some way. In particular, we have

$$\mathrm{Hom}(V^* \otimes V^*, V) \cong \mathrm{Hom}(V^*, \mathrm{Hom}(V^*,V))$$

What is the proper way to interpret these facts in the language of category theory? Can this be generalized at all to help give more intuition for the adjunction in terms of the properties of tensor products?

Thank you!

  • $\begingroup$ Does that last display really get us what we want? $\endgroup$
    – Hoot
    Commented Jul 4, 2016 at 21:19

3 Answers 3


arctic tern's answer is very nice and complete. But less formally, the adjunction really says something quite simple: By the universal property of the tensor product, a linear map out of $U \otimes V$ is the same thing as a bilinear map from $U \times V$. (I.e. the tensor product is built precisely to encode bilinearity.) And a bilinear map from $U \times V$ is the same thing as a linear map from $U$ to the linear maps out of $V$, by currying. (I.e., process the bilinear map from $U \times V$ one slice $\{u\} \times V \cong V$ at a time, for all $u \in U$, instead of all at once.) Naturality just means that this identification behaves well under linear maps.


There is a de-linearized version of tensor-hom adjunction, called currying in computer science, which states there is a bijection $\hom(U\times V,W)\cong \hom(U,\hom(V,W))$ in the category $\mathsf{Set}$.

Consider an arbitrary $\phi\in \hom(U\times V,W)$, i.e. a function $\phi:U\times V\to W$. By fixing $u\in U$, we can consider $\phi(u,-)$ to be a function $V\to W$. Thus the assignment $u\mapsto \phi(u,-)$ may be considered a function $U\to \hom(V,W)$, i.e. an element of $\hom(U,\hom(V,W))$. In this way, we have defined a map from $\hom(U\times V,W)$ to $\hom(U,\hom(V,W))$. I leave it as an exercise to determine how to think of the inverse map, and hence conclude we have a bijection.

There is a linearization functor $L:\mathsf{Set}\to\mathsf{Vect}$ (fix the base field $F$ to anything) which sends a set $X$ to the free vector space (over $F$) generated by $X$. I leave it as an exercise to check that $L$ is a monoidal functor, i.e. figure out how functions $X\to Y$ turns into linear maps $LX\to LY$ and how $L(X\times Y)\cong L(X)\otimes L(Y)$. This suggests tensor-hom adjunction comes from applying linearization to the currying adjunction.

Indeed, starting with $\phi\in \hom(U\otimes V,W)$, i.e. a bilinear map $\phi:U\times V\to W$, we can fix a vector $u\in U$ and consider the linear map $\phi(u,-):V\to W$. The assignment $u\mapsto \phi(u,-)$ is a function $U\to\hom(V,W)$ which we can check is linear, so an element of $\hom(U,\hom(V,W))$, and again we can figure out the inverse and hence conclude this is an isomorphism.

Homs between vector spaces can be related to tensor products and dual spaces as well. Indeed there is a natural isomorphism $V^*\otimes W\cong \hom(V,W)$. (One must consider $\mathsf{Vect}$ to be "enriched" so that $\hom(-,-)$ is a $\mathsf{Vect}$-valued bifunctor.) Given a pure tensor $\phi\otimes w\in V^*\otimes W$, it can be reinterpreted as a linear map $V\to W$ defined by $(\phi\otimes w)(v):=\phi(v)w$. By picking bases for $V$ and $W$ we can prove this process of reinterpretation induces an isomorphism between $V^*\otimes W$ and $\hom(V,W)$. When combined with $(V^*)^*\cong V$ and $(V\otimes W)^*\cong V^*\otimes W^*$, this gives us a lot of power when it comes to manipulating tensors and homs of spaces.

I'll also point out there are "diagrammatic" interpretations of these operations between spaces and their manipulations and natural isomorphisms. See Qiaochu's two-part blog posts on string diagrams (Part I, Part II).



I just want to give an explicit example, where I used this tensor-hom adjunction.

Say we have finite dimensional inner product space $(V,\langle,\rangle)$ and a subspace $W\subset V.$ Then we define orthogonal complement of $W$ as $$W^\perp=\{v:(\forall w\in W)\langle v,w\rangle=0\}.$$ However I would like to see $W^\perp$ in more "algebraic" form.

So as you noticed, due to the adjunction, my inner product space $\langle,\rangle:V\otimes V\to\mathbb{R}$ can be seen as element of $\Hom(V,V^*).$ Let denote this as $L_{\langle,\rangle}:V\to V^*.$ Explicitly we have that $$(L_{\langle,\rangle}(v_1))(v_2)=\langle v_1,v_2\rangle.$$ Now consider inclusion $i:W\hookrightarrow V$ and associated dual map $i^*:V^*\to W^*.$ Let us compute the kernel of composition $i^*\circ L_{\langle,\rangle}:V\to V^*\to W^*.$ We have that $$\ker(i^*\circ L_{\langle,\rangle})=\{v:i^*(L_{\langle,\rangle}(v))=0\}=\{v:\forall(w\in W)L_{\langle,\rangle}(v)(w)=0\}=\{v:\forall(w\in W)\langle v,w\rangle=0\}=W^\perp.$$ Hence we presented $W^\perp$ as a kernel of some linear mapping.

Such approach also allows you to define non-degeneracy, reflexivity of bilinear mapping in the language of kernels and images. One can also show that two maps $F:A\to B, G:B\to A$ are adjoint if and only if $L_{\langle,\rangle_B}\circ F=G^*\circ L_{\langle,\rangle_A}.$

More compactly. tensor-hom adjuntion allows you to translate "set-theoretic" conditions into "algebraic" ones. It works both ways by the way.

  • 1
    $\begingroup$ This is very fascinating! Thank you for the example! One question: Did you mean to describe your inner product as a map $\langle , \rangle : V \oplus V \to \mathbb{R}$? Or should I somehow be interpreting it as a map from $V \otimes V$? $\endgroup$
    – solstafir
    Commented Jul 7, 2016 at 14:49
  • $\begingroup$ @solstafir Normally we would write $\langle,\rangle:V\times V\to\mathbb{R}.$ But since $\langle,\rangle$ is bilinear, we can write $\langle,\rangle:V\otimes V\to\mathbb{R}$ instead. This is because of universal property of tensor product. There is plenty of good questions and answers on this webside how to intuitively grasp tensor product. So if you do not feel comfortable with this subject, try to read some. $\endgroup$ Commented Jul 7, 2016 at 14:57
  • $\begingroup$ Okay, using the universal property, this makes sense. Thank you! $\endgroup$
    – solstafir
    Commented Jul 7, 2016 at 15:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .