As we will see, the road to understanding modules is through understanding the connections between modules, i.e., the maps between modules.
Definition
Definition of module morphism
Let be a ring and and be -modules. An -module (homo)morphism from to is a set map that respects the module structures, i.e., such that:
for all ; and
for all and .
In other words, morphisms of -modules are group morphisms (of the underlying abelian groups) that respect the action of .
Although we will usually check a given map is a module morphism by directly verifying the two properties above, there is a slightly more efficient method available:
Criterion for module morphisms
Let , , and be -modules. A map is an -module morphism if and only if for all and .
Examples
Vector spaces
We have seen that when is a field, -modules are nothing more than -vector spaces. In this context, -module morphisms are the same as -linear transformations.
Abelian groups
We have seen that -modules correspond to abelian groups. In this context, -module morphisms correspond to group morphisms.
The zero morphism
The zero module is the zero object in the category of left -modules, which means that for every left -module there is a unique module morphism (defined by sending to ) as well as a unique module morphism (defined by sending every to ). As a consequence, for every pair of -modules and , there is unique module morphism that factors through the zero module, namely the composition . This morphism is called the zero map from to . At the level of elements, it corresponds exactly to the trivial map that sends every to . Why go through all of these contortions just to define the zero map? An ongoing theme in category theory is that everything should be framed in terms of arrows, since in an abstract category the objects might not be sets, i.e., not have elements.
Be specific: use categories!
We have seen that rings can be viewed as left modules over themselves (via left multiplication). While this is true, some care must be taken when considering the morphisms between two objects. In other words, if you're talking about rings but also sometimes thinking of them as modules, you need to be precise about the structure being considered once maps come into play.
For example, the map defines a -module endomorphism of , but not a ring endomorphism of (since ring morphisms send 1 to 1). Similarly, the ring endomorphism on defined by does not define an -module endomorphism.
The safest way to avoid any of these issues is to work within an explicit category, i.e., within or . Then whenever we have a ring , rather than saying "when is viewed as a an -module over itself" we can instead use the functor that takes each ring and sends it to the left -module .
Recommendation
Be specific about the category in which you're working.