Direct sum of Hausdorff topological spaces

Exercise 185 (Chapter 28, “The category of topological spaces”):

Prove that both the direct product and the direct sum of two Hausdorff topological spaces is Hausdorff.

We will consider Hausdorff topological spaces X and Y and their direct sum (in the first part) or product (in the second part) (Z, \alpha, \beta).

We will proceed without reference to the explicit constructions of direct topological sums and products, using instead the results in “Theorems about the direct product and sum of two topological spaces”.

Direct sum

Let c_1 and c_2 be two eventual points of Z, with c_1 \neq c_2. The first result about direct sums in the above page implies that \alpha^\rightarrow(X) \cap \beta^\rightarrow(Y) = \emptyset. The second result implies that \alpha^\rightarrow(X) \cup \beta^\rightarrow(Y) = Z. Two cases are possible:

  • One of c_1 and c_2 is in \alpha^\rightarrow(X) and the other in \beta^\rightarrow(Y) .
  • Both c_1 and c_2 are in \alpha^\rightarrow(X), or both are in \beta^\rightarrow(Y).

We will consider successively the case where c_1 \in \alpha^\rightarrow(X) and c_2 \in\beta^\rightarrow(Y), and the case where both are in \alpha^\rightarrow(X). The other possible cases are similar and will lead to similar results.

First case (c_1 \in \alpha^\rightarrow(X) and c_2 \in\beta^\rightarrow(Y)):

We have c_1 = \alpha(a) and c_2 = \beta(b), with a \in X and b \in Y.

X itself is an open neighbourhood of a, and hence (last result about direct sums on the above page) \alpha^\rightarrow(X) is an open neighbourhood of c_1 = \alpha(a) in Z. Similarly, \beta^\rightarrow(Y) is an open neighbourhood of c_2 in Z. Since \alpha^\rightarrow(X) and \beta^\rightarrow(Y) are disjoint, we have found disjoint neighbourhoods respectively of c_1 and c_2.

Second case (c_1, c_2 \in \alpha^\rightarrow(X)):

We have c_1 = \alpha(a_1) and c_2 = \alpha(a_2), with a_1, a_2 \in \alpha^\rightarrow(X). Since c_1 \neq c_2, we have a_1 \neq a_2. Since X is Hausdorff, there exist U_1 and U_2 disjoint open neighbourhoods in X respectively of a_1 and a_2.

//TODO (we need \alpha injective)

Direct product

Let c_1 and c_2 be two eventual points of Z, with c_1 \neq c_2.

The first result about direct products in the above page implies that  \alpha(c_1) \neq \alpha(c_2) or \beta(c_1) \neq \beta(c_2).

Let us suppose that \alpha(c_1) \neq \alpha(c_2).

Since X is Hausdorff and \alpha(c_1) and \alpha(c_2) are distinct points of X, there exist open sets U_1 and U_2 of X such that \alpha(c_1) \in U_1, \alpha(c_2) \in U_2 and U_1 \cap U_2 = \emptyset.

Then \alpha^\leftarrow(U_1) and \alpha^\leftarrow(U_2) are disjoint (the image by \alpha of a common element would be both in U_1 and U_2, which are disjoint). They are open (since U_1 and U_2 are open and \alpha is continuous). Since \alpha(c_1) \in U_1, we have c_1 \in \alpha^\leftarrow(U_1); similarly, c_2 \in \alpha^\leftarrow(U_2). Thus there exist two disjoint open neighbourhoods respectively of c_1 and c_2 in Z.

The same would result if we had \beta(c_1) \neq \beta(c_2).

This being the case for all c_1, c_2 \in Z with c_1 \neq c_2, the topological space Z is Hausdorff.

Theorems about the direct sum of two topological spaces

A lot of results concerning the direct sum (Z, \alpha, \beta) of two topological spaces X and Y are trivial if you consider the usual particular construction of these entities. I find it more satisfying to derive them directly from the universal definitions.

See also: the equivalent page on direct products.

In the following, we will always have X and Y topological spaces and ((Z, \tau), \alpha, \beta) a direct sum thereof.

Non-overlapping images

\alpha^\rightarrow(X) and \beta^\rightarrow(Y) are disjoint.

Let a and b be eventual elements respectively of X and Y.

Let k and l be any two distinct objects (such exist), and Z' = \{ k, l \}, equipped with any topology (the discrete one will do). Then the constant mappings \alpha': X \to Z', x \mapsto k and \beta': Y \to Z', y \mapsto l are continuous.

Hence there exists a continuous mapping \gamma: Z \to Z' such that \alpha' = \gamma \circ \alpha and \beta' = \gamma \circ \beta.

This implies in particular that \alpha'(a) = \gamma(\alpha(a)) and \beta'(b) = \gamma(\beta(b)), that is, \gamma(\alpha(a)) = k and \gamma(\beta(b)) = l. Since k \neq l, it follows that \alpha(a) \neq \beta(b).

Thus \alpha^\rightarrow(X) and \beta^\rightarrow(Y) cannot have a common point, which would both be the image by \alpha of a point a of X and by \beta of a point b of Y.

The images cover the direct sum

\alpha^\rightarrow(X) \cup \beta^\rightarrow(Y) = Z

Let Z' = \alpha^\rightarrow(X) \cup \beta^\rightarrow(Y) with the topology induced on Z' \subseteq Z by that of Z.

Let \alpha' be the mapping X \to Z', x \mapsto \alpha(x) and \beta' the mapping Y \to Z', y \mapsto \beta(y).

Since an open set U' on Z' is the intersection of Z' with an open set U on Z and since Z' \backslash Z certainly contains no points of \alpha^\rightarrow(X), its preimage by \alpha' is equal to the preimage of U by \alpha and hence is open in X. Thus \alpha' is continuous. Similarly, \beta' is continuous.

We can thus apply the universal property of the direct sum (Z, \alpha, \beta), which implies that there exists a continuous mapping \gamma': Z \to Z' such that \alpha' = \gamma' \circ \alpha and \beta' = \gamma' \circ \beta.

Let \gamma be the mapping Z \to Z, z \mapsto \gamma'(z). The preimage by \gamma of an open set of Z is again the same as its preimage by \gamma', hence is an open set of Z. Hence \gamma is continuous.

For any x \in X, \alpha(x) = \alpha'(x) = (\gamma' \circ \alpha)(x) = \gamma'(\alpha(x)) = \gamma(\alpha(x)); hence \alpha = \gamma \circ \alpha. Similarly, \beta = \gamma \circ \beta.

But we also have \alpha = \Id_Z \circ \alpha and \beta = \Id_Z \circ \beta, with \Id_Z continuous Z \to Z. The uniqueness requirement of the universal property of the direct sum (Z, \alpha, \beta) thus implies that \gamma = \Id_Z.

But the image of \gamma is that of \gamma', and is included in Z'. Thus the image of \Id_Z, which is Z, is included in Z'. It follows that Z = Z', that is, that \alpha^\rightarrow(X) \cup \beta^\rightarrow(Y) = Z.

Topology on the direct sum

The topology on the direct sum Z is the topology generated by the collection of the \alpha^\rightarrow(U) and \beta^\rightarrow(V) for all U open in X and all V open in Y.


Universal definition of the indiscrete topology

Exercise 182 (Chapter 29, “The category of topological spaces”):

Give a universal definition which leads to the introduction of the indiscrete topology on a set.

On a set X, the indiscrete topology is the unique topology such that for any set Y, any mapping \phi: Y \to X is continuous.

This isn’t really a universal definition. We have seen that the discrete topology \tau_D can be defined as the unique topology \tau that makes ((X, \tau), \Id_X) a free topological space on the set X. We will give the indiscrete topology, which is at the other end of the spectrum of topologies, a similar definition.

For any category \mathfrak C, we can define a “reversed arrows” category \mathfrak C^R, which has the same objects as \mathfrak C and the same morphisms, except that the sources and targets of the morphisms are reversed. Composition too is, obviously, reversed; the identities are the same. It is easily checked that this does lead to a proper category, and also that the arrows-reversed category of an arrows-reversed category leads back to the original category.

If we have categories \mathfrak C and \mathfrak D and a covariant functor \mathcal F from \mathfrak D to \mathfrak C, then we can consider the three modified functors \mathcal F^{DR} from \mathfrak D to \mathfrak C^R, \mathcal F^{RD} from \mathfrak D^R to \mathfrak C and\mathcal F^{RR} from \mathfrak D^R to \mathfrak C^R. These functors will map both objects and morphisms exactly as the original \mathcal F does. Those with only one reversal are contravariant; the one with a reversal in both categories is covariant, and is the one that will interest us here.

We consider the classical category of sets \catSet; in its arrows-reversed version, \catSet^R, the morphisms from set A to set B are the mappings from B to A. Similarly, we have the category of topological spaces \catTop and its arrows-reversed version \catTop^R in which morphisms from topological space (X, \tau) to topological space (Y, \sigma) are the continuous mappings from(Y, \sigma) to(X, \tau).

For a given set A, object of \catSet^R, we can ask if we can find a free object (X, \tau) in category \catTop^R following the forgetful functor \mathcal F^{RR} from \catTop^R to \catSet^R. This mens finding a topological space (X, \tau) and a \catSet^R-morphism \alpha: A \to \mathcal F^{RR}((X, \tau)) = X such that for any topological space (Y, \sigma) and any \catSet^R-morphism \alpha': A \to \mathcal F^{RR}((Y, \sigma)) = Y, there exists a unique \catTop^R-morphism \gamma: (X, \tau) \to (Y, \sigma) such that (as \catSet^R-morphisms) \alpha' = \gamma \circ \alpha.

Factoring in the arrows-reversals, this means that we wish to find a topological space (X, \tau) and a mapping \alpha: X \to A such that for any topological space (Y, \sigma) and any mapping \alpha': Y \to A, there exists a unique continuous mapping \gamma: (Y, \sigma) \to (X, \tau) such that (as mappings) \alpha' = \alpha \circ \gamma.

We propose that the topological space (A, \tau_I) with \tau_I the indiscrete topology on A, together with the mapping \alpha = \Id_A, is a free object on A following the functor \mathcal F^{RR}.


Let (Y, \sigma) be a topological space and \alpha' a mapping Y \to A. If \gamma is to be a continuous mapping (Y, \sigma) \to (A, \tau_I) such that \alpha' = \alpha \circ \gamma, it must be a mapping Y \to A such that \alpha' = \Id_A \circ \gamma = \gamma; that is, we must have \gamma = \alpha'. This \gamma is indeed continuous, since \tau_I is the indiscrete topology. Hence it is the unique continuous mapping (Y, \sigma) \to (A, \tau_I) such that \alpha' = \alpha \circ \gamma.

Thus we have shown that A with the indiscrete topology, together with the identity mapping on A, is a free topological space following the arrows-reverse categorical definition of free objects.

Free objects are unique up to an isomorphism. However, we wish to show more specifically that given the set A, the indiscrete topology \tau_I on A is the unique topology \tau such that ((A, \tau), \Id_A) be a free object on A following the above definition. We could use the “unique up to an isomorphism” card, but more simply: If ((A, \tau), \Id_A) is to be a free object on A following the above definition, in particular, taking (Y, \sigma) = (A, \tau_I) and \alpha' = \Id_A, we need there to exist a continuous \gamma: (Y, \sigma) \to (A, \tau), that is, (A, \tau_I) \to (A, \tau) such that \alpha' = \Id_A \circ \gamma, that is such that \gamma = \Id_A. In other words, we need \Id_A to be continuous from (A, \tau_I) to (A, \tau), which implies \tau \subseteq \tau_I, that is, that \tau must be coarser than \tau_I; which is possible only if \tau = \tau_I.

Hence the indiscrete topology on A is the unique topology \tau such that ((A, \tau), \Id_A) be a free object in category \catTop^R following the functor \mathcal F^{RR} from category \catTop^R to category \catSet^R.

Representation frameworks and representations

Chapter 22 on representations is, I feel, the worst written I have come upon up to now. I haven’t yet come to wrap my head around it.

I certainly appreciate the desire to give a general definition of representations in category theory terms. This is how the author puts it:

Let \mathfrak C and \mathfrak C' be two categories. We suppose that we are given the following two things: i) a forgetful functor \mathcal F from the category \mathfrak C to the category of sets, and ii) a rule which assigns, to each object P' in category \mathfrak C', an object Z in category \mathfrak C and an isomorphism (in the category of sets) from set \mathcal F(Z) to the set \Mor(P', P').

I see two issues about this setting. I will “correct” these issues in this post, giving what I hope is a better definition, and come to the issue of direct products and sums of representations and of subrepresentations in another post.

About the functor to the category of sets

About the above complex statement, the author reassures us:

There is an obvious forgetful functor from every category we shall consider to the category of sets, and we shall always use this one for item i). The purpose of i) is to allow us to speak of “elements” of objects in category \mathfrak C.

The existence of this “obvious functor” in the categories we consider is very familiar; indeed, groups, vector spaces and so on are built upon sets. We are clearly used to speaking of an element of a group, though in fact we should speak of an element of the underlying set.

Postulating the existence of this forgetful functor \mathcal F from \mathfrak C to \catSet is, however, not enough to ensure that we are in the “familiar situation”. There is another element of this familiar situation that is not captured by the mere existence of this functor. Namely: in the familiar situation, the morphisms between objects of \mathfrak C are no more and no less than morphisms – i.e., mappings – between the corresponding sets. If O_1 and O_2 are objects of \mathfrak C, then \Mor(O_1, O_2) is literally a subset of \Mor(\mathcal F(O_1), \mathcal F(O_2)). This implies in particular that \mathcal F is “one to one” in its action on morphisms; there cannot be two different morphisms \phi, \psi: O_1 \to O_2 such that \mathcal F(\phi) = \mathcal F(\psi).

That this is not necessarily implied by the mere existence of a functor \mathcal F from \mathfrak C to \catSet can be made clear by considering this trivial fact: for any category \mathfrak C, there is a functor \mathcal F_0 from \mathfrak C to \catSet that takes any object O of \mathfrak C to the set \{O\} and any morphism in \mathfrak C between objects O_1 and O_2 to the one and only mapping that exists from set \{O_1\} to set \{O_2\}. One can check that this is indeed a functor; but clearly, in general it will take many different morphisms in \mathfrak C to just one morphism in \catSet.

To be closer to the familiar situation, we thus need (at least) the following additional condition: that the functor \mathcal F from \mathfrak C to \catSet be “morphism-injective”, that is, such that, for any given objects O_1 and O_2 of \mathfrak C and any \phi, \psi \in \Mor(O_1, O_2), we have \mathcal F(\phi) = \mathcal F(\psi) \implies \phi = \psi.

We will see why this condition is necessary particularly in the case of the direct products and sums of representations. In the book, it is hidden behind the notations of the author, that tend to muddle the distinction between morphisms in \mathfrak C and the corresponding morphisms in \catSet.

Must it really be an isomorphism?

The author postulates that there must be “ii) a rule which assigns, to each object P' in category \mathfrak C', an object Z in category \mathfrak C and an isomorphism (in the category of sets) from set \mathcal F(Z) to the set \Mor(P', P')“.

It makes for a simpler formulation if instead of speaking of an isomorphism, we say that this rule \mathcal R must assign to the object P' of \mathfrak C' an object Z of \mathfrak C such that \mathcal F(Z) = \Mor(P', P').

For instance: if \mathfrak C' is the category of real vector spaces, and \mathfrak C that of real associative algebras, we want our rule \mathcal R to “make the set of endomorphisms of a given real vector space P' into an associative algebra”, that is, \mathcal R(P') = Z is an associative algebra the underlying set of which is \Mor(P', P').

But this doesn’t work well if, instead, we want \mathfrak C to be the category of groups. The author calls this a “special case of the definition of a representaton”, but doesn’t clearly note that in this case, we much change his definition, replacing “isomorphism” by “monomorphism”. In the case of groups, it is not the whole of \Mor(P', P') that is “made into a group”, but only the set of bijective linear mappings from P' to itself.

So we will adopt the modified specification of ii): We need a rule \mathcal R which assigns, to each object P' in category \mathfrak C', an object \mathcal R(P') = Z such that \mathcal F(Z) \subseteq \Mor(P', P).

My definition of a representation framework

A representation framework is made of:

  • Two categories \mathfrak C and \mathfrak C'.
  • A morphism-injective functor from \mathcal C to \catSet.
  • A rule \mathcal R that assigns to each object P' in category \mathfrak C', an object \mathcal R(P') = Z such that \mathcal F(Z) \subseteq \Mor(P', P).

A representation is…

Given such a representation framework, a representation of an object A of \mathfrak C is an ordered pair (P', \psi) where P' is an object of \mathfrak C' and \psi a \mathcal C-morphism A \to \mathcal R(P').

This is very close to the definition given by the author. He then goes on to state:

(…) for each element a of object A, we must have a certain morphism, which we write \psi_a, from object P' to itself.


This “\psi_a” is misleading, in that it gives the impression that \psi_a is the image of a by \psi. But \psi is a morphism between A and Z = \mathcal R(P'). It is not (in general) a mapping at all. It is not \psi, but \mathcal F(\psi) that is a mapping and can map a to this \psi_a, element of \mathcal F(Z) \subseteq \Mor(P', P').

Despite the awkwardness, I will often prefer the notation “\mathcal F(\psi)(a)” to the shorter “\psi_a“, because the latter can give rise to the notion that if we happen to have, for each a, a certain \mathfrak C'-morphism P' \to P' that we call \gamma_a, for instance, then necessarily this mapping forms a \mathfrak C-morphism \gamma: A \to Z; while it only means that we have a mapping of sets \mathcal F(A) \to \mathcal F(Z) ‑ if indeed the \gamma_a‘s are all in \mathcal F(Z), which may be only a subset of \Mor(P', P') ‑ and this mapping may or may not be some \mathcal F(\gamma) with \gamma a \mathfrak C-morphism from A to Z. This false reasoning arises precisely in the presentations by the author of direct products of representations, direct sums and subrepresentations. That will be for another post.

One universal enveloping algebra

In my search for less abstract or trivial examples of a universal enveloping algebra, I have come upon this one.

Let W be a \K-vector space and (V, \alpha) a free associative algebra on W. The mapping \alpha is a vector space morphism W \to V.

V can also be viewed as a Lie algebra. \alpha^\rightarrow(W) is a part of V; let U be the sub-Lie algebra of V generated by \alpha^\rightarrow(W).

(It appears that, except in trivial cases, U is strictly smaller than V; for instance, if we take V as the free associative algebra on W constructed in chapter 18, V = W \oplus (W \otimes W) \oplus (W \otimes W \otimes W) \oplus \ldots, in U it appears that all the W \otimes W components are antisymmetric.)

We have a natural Lie algebra morphism \beta: U \to V, \pmb v \mapsto \pmb v. That is, \beta is the canonical injection from U to V.

Proposition: The associative algebra V is the universal enveloping algebra of the Lie algebra U.


Let us first note that since U is the Lie subalgebra of V generated by \alpha^\rightarrow(W), we have \alpha^\rightarrow(W) \subseteq U. Let us define \delta: W \to U, \pmb w \mapsto \alpha(\pmb w), that is, \delta is \alpha with its codomain restricted to U. We can then write \alpha = \beta \circ \delta.

We must prove that given any associative algebra V' and any Lie algebra morphism \beta': U \to V', there exists one and only one associative algebra morphism \gamma: V \to V' such that \gamma \circ \beta = \beta'.

So let V' be an associative algebra and \beta' a Lie algebra morphism U \to V'; that is, a linear mapping U \to V' such that \beta'(\pmb v_1 \pmb v_2 - \pmb v_2 \pmb v_1) = \beta'(\pmb v_1) \beta'(\pmb v_2) - \beta'(\pmb v_2) \beta'(\pmb v_1).

Then we have \beta' \circ \delta vector space morphism W \to V'. Since (V, \alpha) is a free associative algebra on the vector space W, there exists a unique associative algebra morphism \gamma_0: V \to V' such that \gamma_0 \circ \alpha = \beta' \circ \delta, that is, \gamma_0 \circ \beta \circ \delta = \beta' \circ \delta.

Thus \gamma_0 \circ \beta and \beta' agree on all elements of \delta^\rightarrow(W), which is also \alpha^\rightarrow(W), which generates the sub Lie algebra U of V. We wish to show that they actually agree on all elements of U.

Let A be the set of all elements of U on which \gamma_0 \circ \beta and \beta' agree. Since \gamma_0 \circ \beta and \beta' are both linear mappings, \gamma_0 \circ \beta - \beta' is a linear mapping too, even if it may not be an associative algebra or Lie algebra morphism. A is its kernel, and is a sub vector space of U. Furthermore, if \gamma_0 \circ \beta and \beta' agree on vectors \pmb v_1 and \pmb v_2 of U, then (\gamma_0 \circ \beta - \beta')([\pmb v_1, \pmb v_2]) = (\gamma_0 \circ \beta)([\pmb v_1, \pmb v_2]) - \beta'([\pmb v_1, \pmb v_2]). Since both \gamma_0 \circ \beta and \beta' are Lie algebra morphisms, this is equal to [(\gamma_0 \circ \beta - \beta')(\pmb v_1), (\gamma_0 \circ \beta - \beta')(\pmb v_2)] - [\beta'(\pmb v_1), \beta'(\pmb v_2)], and, since \gamma_0 \circ \beta and \beta' agree on \pmb v_1 and \pmb v_2, this expression reduces to zero. Thus [\pmb v_1, \pmb v_2] too is an element of A. This completes the proof that A is a sub Lie algebra of U. Since A includes \alpha^\rightarrow(W), and since U is the smallest sub Lie algebra of itself including \alpha^\rightarrow(W), it follows that A = U, that is, that \gamma_0 \circ \beta and \beta' agree on all U. Since U is their common domain, they are equal: \gamma_0 \circ \beta = \beta'.

Hence there exists at least one associative algebra \gamma: V \to V', namely \gamma = \gamma_0, such that \gamma \circ \beta = \beta'.

Let us show that such a \gamma is unique.

Let \gamma be an associative algebra morphism V \to V' such that \gamma \circ \beta = \beta'.

Then \gamma \circ \beta \circ \delta = \beta' \circ \delta, that is, \gamma \circ \alpha = \beta' \circ \delta.

But, because (V, \alpha) is a free associative algebra on the vector space W, we know that there is a unique associative algebra morphism \gamma having such a property, namely \gamma = \gamma_0.

Hence there is one and only one associative algebra morphism V \to V' such that \gamma \circ \beta = \beta'.

This shows that (V, \beta) is the free associative algebra on the Lie algebra U.

No maverick elements in a free space

This keeps cropping up, and every time it takes me some effort to rediscover the proof. It happened first with free groups, then with free vector spaces and again with free Lie algebras.

I’ll formulate the issue with groups, but it is easy to carry it over to other cases.

A free group (G, \alpha) on set S is defined by its universal property; furthermore, a particular specimen can be constructed. This construction is essential for proving the existence of a free group, but that should be its only role.

The question is: Is the subgroup of G generated by \alpha^\rightarrow(S) necessarily G itself? Can’t there be any “maverick” elements in G, that are not in that subgroup? It seems that there shouldn’t be any, because they would be “too free”; when applying the universal property, the value given to them by the supposedly unique group morphism from G to the “test group” might not be uniquely determined. But how do we prove this?

If we examine the constructed specimen ‑ in the case of free groups, the set of “strings” of elements of S considered as “letters” plus their “primed versions”, with a certain composition rule ‑ the answer is that indeed, the whole of G is generated by \alpha^\rightarrow(S). And since all free groups on a given set are isomorphic, this answers our question.

But having to make use of a particular specimen doesn’t seem right to me. I want a proof with the universal property alone! Here it is, for my own repeated reference.

Let S be a set, and (G, \alpha) any free group on S. Let H be the subgroup of G generated by \alpha^\rightarrow(S).

Now since, by definition of a generated subgroup, \alpha^\rightarrow(S) \subseteq H, \alpha is also a mapping from S to H; or rather, we will call it \beta as the codomain has changed. Thus \beta is the mapping S \to H, s \mapsto \alpha(s).

We thus have a group H and a mapping \beta: S \to H; the universal property of free groups satisfied by (G, \alpha) implies the existence of a group morphism \gamma: G \to H such that \gamma \circ \alpha = \beta.

Now \gamma can also be seen as a mapping from G to G; or rather, since again we have changed the codomain, we define the new mapping \delta: G \to G, g \mapsto \gamma(g). Since \gamma is a group morphism, so is \delta.

Our equality \gamma \circ \alpha = \beta can be rewritten with the larger codomain G, yielding \delta \circ \alpha = \alpha. So \delta is a group morphism from G to G such that \delta \circ \alpha = \alpha. We know that there is only one such group morphism. Since we also have \Id_G \circ \alpha = \alpha, necessarily \delta = \Id_G.

For any g \in G, we have g = \Id_G(g) = \delta(g) = \gamma(g) \in H. Hence H = G.

“Free Object Functors”

Chapter 12 (Functors) gives as an example of a functor the “free group functor” from the category of sets (Set) to the category of groups (Grp). We will call this functor \mathcal G, and its construction, as described, is the following:

For any set S, the object \mathcal G(S) is the free group on S.

Let \phi be a Set-morphism, that is, any mapping, between sets S_1 and S_2. Let G_1 and G_2 be the respective free groups, with \alpha_1: S_1 \to G_1 and \alpha_2: S_2 \to G_2 the associated mappings.

Then, by virtue of the universal property of free groups, there exists a unique Grp-morphism \psi: G_1 \to G_2 such that, as mappings, \psi \circ \alpha_1 = \alpha_2 \circ \phi.

So we decide that \mathcal G(\phi) will be this \psi. Of course, for this to be a functor, we must check that the composition of morphisms are preserved, as are identities.

Later in the chapter, the general concept of a free object in category \mathcal C' on an object in \mathcal C via a functor \mathcal F from \mathcal C' to \mathcal C is defined, as an extension of the notion of a free group; a free group thus becomes the free object in category Grp on an object in category Set following the forgetful functor \mathcal F from Grp to Set. We are called to consider the “free object functor” from \mathcal C to \mathcal C' (hence in the reverse direction respective to \mathcal F), based as above on the mapping of objects in \mathcal C to their respective free objects in \mathcal C' and of \mathcal C-morphisms to the corresponding \mathcal C'-morphisms following the above construction.

This set-up at first appears clear, but left me feeling uneasy. After some thought I managed to pinpoint two issues:

  1. Free objects, when they exist, are unique up to an isomorphism, which means that they aren’t «unique, period». For a functor to map a set to its free group, one must have a rule that says what exactly that group is; you can’t just say what it is up to an isomorphism.
  2. «Free objects» are not actually objects in the target category; they are ordered pairs (G, \alpha), where G is an object of the target category, that is, in our example, groups, and \alpha is a morphism between objects of the source category. If I build a free group functor retaining only the target object, in our case G, the \alpha part is lost.

The first issue can be solved easily for groups, and, I suspect, in most or all other cases. The existence of a free object is usually (always?) demonstrated by building some particular instance; one can decide that the functor will map the source object to that specific free object, that we will call the canonical free object.

For the second issue, one must note that the associated morphisms \alpha is not complete. We need these \alpha to build \mathcal G(\phi) from \phi. Thus the \alpha‘s remain at least partly included in the definition of the free group functor.

I don’t have the impression that if we are given the functor \mathcal G, without the knowledge of the canonical free groups that it is built upon, we can reconstruct the \alpha morphisms that are part of the definition of thise canonical free objects. The picture is rather this:

  • We define a particular rule for building a free group (G, \alpha) on any set S.
  • Based on this rule, we define the mappings from objects in Set to objects in Grp, and from morphisms in Set to morphisms in Grp.
  • The entire above procedure (including the rule for building a specific free group) constitutes our free group functor, that is our rule for mapping Set to Grp and morphisms in Set to morphisms in Grp.

In practice, it doesn’t matter much what particular rule we take for building our free objects. It does matter, however, that it be conceived of as well specified, and that we understand that not only the G part but also the \alpha in the free object serve to define the free object functor.

Functors Between Real and Complex Vector Spaces


In Chapter 12, R.G. describes three possible transformations “from real to complex vector spaces and back”. Inspired by Chapter 17 (Functors), I have examined these transformations from the functor point of view.

We can distinguish not two, but three categories here, the first and third of which are equivalent:

  1. CVec: Complex vector spaces with their usual morphisms and composition law.
  2. RVec: Real vector spaces with their usual morphisms and composition law.
  3. RVecPlus: The category of pairs (W, \iota), where W is a real vector space and \iota a vector space morphism W \to W such that \iota \circ \iota = -\Id_W (with \Id_W the identity morphism on W). A morphism \phi: (W, \iota_W) \to (W', \iota_{W'}) in this category is any linear mapping from W to W' subject to the condition: \phi \circ \iota_W = \iota_{W'} \circ \phi. These morphisms are composed as mappings. It is simple to check that this does make up a category.

Equivalence of CVec and RVecPlus

The equivalence of these two categories stems from the procedures described in Chapter 12, procedures that we will describe as isofunctors.

Functor \mathcal F_{\C\R+} from CVec to RVecPlus

Action on objects:

If V is a complex vector space, (W, \iota) = \mathcal F_{\C\R+}(V) is such that:

  • W is the real vector space obtained from V by “forgetting” multiplication by imaginaries, that is the one based on the same set as V with the same addition, the multiplication by a scalar being simply restricted to real scalars.
  • \iota is the linear mapping W \to W that sends a vector \pmb w \in W to i \cdot \pmb w, the scalar multiplication here being that in the complex vector space V. One immediately checks that we do have \iota \circ \iota = -\Id_W.

Action on morphisms:

A morphism between complex vector spaces is also, as a mapping, a morphism between the corresponding real vector space obtained by “forgetting” multiplication by imaginaries; thus, for a CVec-morphism \phi: V \to V', we can define \mathcal F_{\C\R+}(\phi) as the same mapping. It is simple to check that the condition on RVecPlus-morphisms \phi \circ \iota_V = \iota_{V'} \circ \phi is satisfied.

Functor \mathcal F_{\C\R+} from RVecPlus to CVec

The second construction described by R.G. takes a pair (\pmb W, \iota) with W real vector space and \iota morphism W \to W such that \iota \circ \iota = -\Id_W to a complex vector space. We can make this into a functor\mathcal F_{\C\R+} from RVecPlus to CVec by defining what happens to morphisms: they are left as they are, as mappings; the above condition on morphisms in RVecPlus ensures that the resulting mapping is a CVec-morphism.

These two functors are isofunctors

It is easy to check (R.G. should at least mention it – criticism) that these two operations are the inverse one of the other, which makes \mathcal F_{\C\R+} an isofunctor with \mathcal F_{\C\R+} its inverse, and CVec and RVecPlus equivalent categories.

Taking free objects between these categories yields nothing new, as we saw in the post on isofunctors.

The main interest in this category RVecPlus is that it allows us to work with real vector spaces only, avoiding in particular the need to consider complex and real versions of a given vector space, with the scalar multiplication in the former that «knows how» to multiply by complex numbers, while it does not in the latter. In the rest of this post I will talk of complex vector spaces and these «real plus» vector spaces as if they were the same thing.

Forgetful functor \mathcal F_{\R+\R} from complex to real vector spaces

One can make a forgetful functor \mathcal F_{\R+\R} from RVecPlus to RVec simply by forgetting the \iota part. The functor leaves morphisms unchanged. This is the first construction described by R.G. in Chapter 12, from CVec to RVec.

A sort of inverse construction of \mathcal F_{\R+\R}

The functor \mathcal F_{\R+\R} forgets the \iota, which cannot be retrieved. It can, however, be reinvented, though in general there is a necessary arbitrariness in the process.

Let W be a real vector space. Suppose that it is possible to find in W two subspaces, W_1 and W_2, that are complementary and isomorphic. There will in general be an infinite number of ways of choosing the pair (W_1, W_2), and, this pair being chosen, an infinite number of ways of choosing and isomorphism \iota_0: W_1 \to W_2. (One can, for instance, arbitrarily choose bases on W_1 and W_2, and create \iota_0 from an arbitrary bijection between these bases.)

\iota_0 is a mapping between two specific subspaces of W. We can, however, create a full mapping W \to W by posing:

\forall (\pmb w_1, \pmb w_2) \in W_1 \times W_2, \iota(\pmb w_1 + \pmb w_2) = -\iota_0^{-1}(\pmb w_2) + \iota_0(\pmb w_1)

It is easy to check that this \iota is linear, and that \iota \circ \iota = -\Id_W. Hence (W, \iota) is an object of RVecPlus. Applying the \mathcal F_{\R+\C} functor defined above, we obtain a complex vector space.

The necessary and sufficient condition for it to be possible to find in W two complementary and isomorphic subspaces is that W be either finite and even-dimensional, or infinite-dimensional (exercise 84).

Providing this condition is satisfied, this procedure involves the arbitrary step of choosing the subspaces, and the second arbitrary step of choosing the isomophism between them. For this reason, one cannot make it into a functor; for a functor must consist of a rule for mapping objects and morphisms. We don’t have an inverse functor for \mathcal F_{\R+\R}.

This arbitrariness is present even in the simplest non-trivial case, that of a two-dimensional real vector space. This is another formulation of the fact that in a complex vector space there is no non-arbitrary notion of “real” and “imaginary” vectors (as noted in Chapter 12).

Free objects following the forgetful functor from complex to real vector spaces

We do, however, have a functor from RVec to CVec, but one that implies doubling the initial vector space. It uses the third construction described in Chapter 12.

It is simpler to talk of this construction with RVecPlus rather than CVec; we have seen that these categories are equivalent. Given an object W in RVec, that is, a real vector space, we take V as the real vector space direct sum V = W \oplus W. We define the mapping \iota: V \to V by \forall (\pmb w, \pmb w') \in W^2, \iota(\pmb w, \pmb w') = (-\pmb w', \pmb w). It is easy to check that \iota is linear, and that \iota \circ \iota = -\Id_V. Hence (V, \iota) is an object in RVecPlus. We thus have a rule \mathcal F_{\R\R+} that maps objects of RVec to objects of RVecPlus. Now let us consider a morphism \phi in RVec, between real vector spaces W_1 and W_2. Let (V_1, \iota_1) = \mathcal F_{\R\R+}(W_1) and (V_2, \iota_2)= \mathcal F_{\R\R+}(W_2). We can form the mapping \psi: V_1 \to V_2, (\pmb v, \pmb v') \mapsto (\phi(\pmb v), \phi(\pmb v')). It is linear, and furthermore \iota_2 \circ \psi = \psi \circ \iota_1; hence \psi is a morphism in category RVecPlus, between \mathcal F_{\R\R+}(W_1) and \mathcal F_{\R\R+}(W_2). We write \psi =\mathcal F_{\R\R+}(\phi). We can check that this rule \mathcal F_{\R\R+} preserves composition and identities. It is thus a functor from RVec to RVecPlus.

Now let us examine if this \mathcal F_{\R\R+} cannot be viewed as the — or better, a — free object functor following functor \mathcal F_{\R+\R}.

Let W be a real vector space, and (V, \iota) = \mathcal F_{\R\R+)(W), that is V = W \ocirc W and \iota: V \to V, (\pmb w, \pmb w') \mapsto (-\pmb w', \pmb w). W and V are objects in RVec. Let \alpha be the RVec-morphism W \to V defined by \pmb w \mapsto (\pmb w, \pmb 0_W). We wish to check that (V, \alpha) is a free object on W following \mathcal F_{\R+\R} and that the transformation of morphisms follows suit.

Let (V', \iota') be another object of RVecPlus and \alpha' a RVec-morphism from W to \mathcal F_{\R+\R}((V', \iota')), that is a linear mapping W \to V'.

We wish to find a RVecPlus-morphism \gamma: (V, \iota) \to (V', \iota') such that \alpha' = \mathcal F_{\R+\R}(\gamma) \circ \alpha. But \mathcal F_{\R+\R}(\gamma) is just the mapping \gamma itself. For \pmb w_1 \in W, \alpha(\pmb w_1) = (\pmb w_1, \pmb 0_W). So \gamma must map any (\pmb w_1, \pmb 0_W) to \alpha'(\pmb w_1). Since \gamma must also be a RVecPlus-morphism, we must have \gamma(\pmb 0_W, \pmb w_2) = \gamma(\iota(\pmb w_2, \pmb 0_W)) = (\gamma \circ \iota)(\pmb w_2, \pmb 0_W) = (\iota' \circ \gamma)(\pmb w_2, \pmb 0_W) = \iota'(\alpha'(\pmb w_2)).

In other words, necessarily, our \gamma must be such that \gamma(\pmb w_1, \pmb w_2) = \alpha'(\pmb w_1) + \iota'(\alpha'(\pmb w_2)).

Now we must check that \gamma thus defined is indeed a RVecPlus-morphism (V, \iota) \to (V', \iota') and that \alpha' = \mathcal F_{\R+\R}(\gamma) \circ \alpha (for up to now we have shown what \gamma must be; we must check that the result is indeed adequate). This checking is unproblematic.

Thus our ((V, \iota), \alpha) is a free object on the real vector space W following the functor \mathcal F_{\R+\R}.

But it’s not quite over! We must also check that, taking

Identity functors, isofunctors and equivalent categories

Exercise 105 (Chapter 17, “Functors”):

Define the identity functor from a category to that same category. What do you suppose is meant by equivalent categories?

Identity functors

We have encountered two flavors of identity definitions. Identity mappings on sets are defined by the way they act on set elements, namely that they don’t change them. Identities in abstract categories, on the other hand, are defined by the way they behave respective to the composition of morphisms.

Categories are a bit like sets, in that they have “elements”, or rather two kinds of such: objects and morphisms. Inspired by this, we can define identity functors in a category \mathcal C as the functor \mathcal I from itself to itself that maps each object to itself and each morphism to itself. Such a functor always exists, and, since its effect is completely specified, it is unique.

But since we also have composition of functors, we can also try to define the identity functor on category \mathcal C as a functor, if it exists, \mathcal I_\circ from \mathcal C to \mathcal C such that for any category \mathcal C', for any functor \mathcal F from \mathcal C to \mathcal C', \mathcal F \circ \mathcal I_\circ = \mathcal F and for any functor \mathcal F' from \mathcal C' to \mathcal C, \mathcal I_\circ \circ \mathcal F' = \mathcal F.

It is immediate that the functor \mathcal I from the first definition satisfies the second. Since the former always exists, so does the latter. Furthermore, if there were two identity functors following the second definition, \mathcal I_\circ and \mathcal I'_\circ, we would have both \mathcal I_\circ \circ \mathcal I'_\circ = \mathcal I_\circ and \mathcal I_\circ \circ \mathcal I'_\circ = \mathcal I'_\circ, hence \mathcal I'_\circ = \mathcal I_\circ.

Thus the two definitions are equivalent; one and only one identity functor exists for each category.

Isofunctors and equivalent categories

The same exercise asks us to define the notion of equivalent categories.

We may first want to define an isofunctor between two categories:

A functor \mathcal F from category \mathcal C to category \mathcal C' is an isofunctor if and only if there exists a functor \mathcal F' from \mathcal C' to \mathcal C such that \mathcal F' \circ \mathcal F is the identity functor on \mathcal C and \mathcal F \circ \mathcal F' is the identity functor on \mathcal C'.

We can then, of course, define equivalent categories as categories between which there exists at least one isofunctor.

Free objects following an isofunctor

If \mathcal C and \mathcal C' are equivalent categories and \mathcal F is an isofunctor from \mathcal C to \mathcal C' with \mathcal F' its inverse isofunctor from \mathcal C' to \mathcal C, then we have:

If A is an object of \mathcal C and A' = \mathcal F(A), then (A', \iota_A) (with \iota_A the identity morphism on A) is a free \mathcal C' object on A following the functor \mathcal F'.

The proof is easy. If B' is any object of \mathcal C' and \beta a \mathcal C-morphism A \to \mathcal F'(B'), then for a \mathcal C'-morphism \gamma: A' \to B' to be such that \mathcal F'(\gamma) \circ \iota_A = \beta, necessarily \mathcal F'(\gamma) = \beta, that is (applying \mathcal F to each side) \gamma = \mathcal F(\beta). We can check that this \gamma = \mathcal F(\beta) indeed satisfies \mathcal F'(\gamma) \circ \iota_A = \beta. Hence there is one and only one \mathcal C'-morphism \gamma: A' \to B' such that \mathcal F'(\gamma) \circ \iota_A = \beta. This being the case for any object B' of \mathcal C' and any \beta \mathcal C-morphism A \to \mathcal F'(B'), the pair (A', \iota_A) is a free \mathcal C' object on A following \mathcal F'.

The “free object functor” in this case thus simply maps objects of \mathcal C to the same as \mathcal F does. It is easy to check that the effect of this free object functor on morphisms of \mathcal C is too just the same as that of \mathcal F. Thus, the free object functor in the case of equivalent categories following an isomorphism between them is just the inverse of that isomorphism.