Direct products of modules

For any family of modules, there is a construction analogous to the Cartesian product in Set that produces a single module characterized by a universal property.

Direct product of two modules

First suppose M1 and M2 are two R-modules. Let M1×M2 denote the R-module whose elements are pairs (m1,m2) with m1∈M1 and m2∈M2, with component-wise addition and scaling. We have two "projection" module morphisms Ī€i:M1×M2→Mi, which send a pair (m1,m2) to mi, for i=1,2.

This data satisfies the usual universal property for a product, in that it is universal among all such modules equipped with morphisms to M1 and M2. More precisely, for each module N and pair of module morphisms f1:N→M1 and f2:N→M2 there is a unique module morphism h:N→M1×M2 such that the diagram below commutates:

Observe that, as an abelian group, M1×M2 is the usual direct product of abelian groups; similarly, as a set, M1×M2 is the usual Cartesian product of sets.[1]


Direct product of a finite collection of modules

Analogous to the above construction, for any finite collection of R-modules M1,â€Ļ,Mn their direct product is an R-module, denoted M1×⋯×Mn, together with module morphisms Ī€i:M1×⋯×Mn→Mi, universal among all such data. As an abelian group, it is the usual direct product of the corresponding abelian groups; as a set, it is the usual Cartesian product of the corresponding sets. The additive structure is defined component-wise, as is the action of R.

It is common to denote the direct product by ∏i=1nMi, in which case the universal property is encoded in the commutative diagram below:


Direct product of an arbitrary family of modules

Finally, suppose {MsâˆŖs∈S} is a family of R-modules indexed by some set S. Following the pattern we've established, the direct product of this family is an R-module, denoted ∏s∈SMs, together with module morphisms Ī€t:∏s∈SMs→Mt for every t∈S, universal among all such data. As an abelian group, this is the usual direct product of the corresponding abelian groups; as a set, it is the usual Cartesian product of the corresponding sets.

The difference here between this general case (which includes infinite sets) and the finite case is that the elements of the set ∏s∈SMs are not really tuples (or sequences) of elements, since the set S might not be linearly ordered. This problem has nothing to do with the fact that the Ms are modules, but is an issue with sets in general. One solution is to instead construct the set ∏s∈SMs as the collection of all set maps f from S such that f(s)∈Ms for every s∈S. Ignoring certain set-theoretic considerations[2], this does the job. The additive operation and R-action are then once again defined "component-wise"; e.g., (r⋅f)(s)=r⋅f(s), where the right-hand side indicates the action of R on the R-module Ms. In other words, for each s∈S we can think of f(s) as the value of the s-component of the element f.

The finite case can be seen as a special case of this general construction by considering the set S={1,2,â€Ļ,n} and associating each n-tuple (m1,m2,â€Ļ,mn) with each mi∈Mi to a function f on {1,2,â€Ļ,n} with f(i)=mi for each i.


A word on language

The terms "Cartesian product" (of sets) and "direct product" (of modules, groups, etc.) is a bit antiquated. Each of these types of objects satisfies the "same" universal property from the point of view of category theory, which is simply that of a product. To make matters unnecessarily confusing, categorical products are special cases of a more general notion of limit, which was sometimes called "inverse limit" or "projective limit". This was to distinguish them from the dual of notion of colimit, which was once called "direct limit" or "inductive limit". So a direct product is an example of an inverse limit (not a direct limit), while a direct sum is an example of a colimit (or direct limit). Oof. Let's be kind to ourselves and stick simply with "product" and "coproduct".


Suggested next notes

Direct sums of modules
Sums of submodules
Direct products vs. direct sums vs. sums


  1. More precisely, let U1:R-Mod→Ab and U2:R-Mod→Set denote the usual forgetful functors. Then U1(M1×M2)≃U1(M1)×U2(M2) and U2(M1×M2)≃U2(M1)×U2(M2). ↩ī¸Ž

  2. For example, you might be wondering what the common codomain is for all such functions? The answer is the fixed universe U, which contains all sets were are allowed to consider. In particular, it should contain the union of the sets of elements of all Ms. ↩ī¸Ž