In abstract algebra, a bimodule is an abelian group that is both a left and a right module, such that the left and right multiplications are compatible. Besides appearing naturally in many parts of mathematics, bimodules play a clarifying role, in the sense that many of the relationships between left and right modules become simpler when they are expressed in terms of bimodules.
If R and S are two rings, then an R-S-bimodule is an abelian group such that:
An R-R-bimodule is also known as an R-bimodule.
If M and N are R-S-bimodules, then a map f : M → N is a bimodule homomorphism if it is both a homomorphism of left R-modules and of right S-modules.
An R-S-bimodule is actually the same thing as a left module over the ring , where is the opposite ring of S (with the multiplication turned around). Bimodule homomorphisms are the same as homomorphisms of left modules. Using these facts, many definitions and statements about modules can be immediately translated into definitions and statements about bimodules. For example, the category of all R-S-bimodules is abelian, and the standard isomorphism theorems are valid for bimodules.
There are however some new effects in the world of bimodules, especially when it comes to the tensor product: if M is an R-S-bimodule and N is an S-T-bimodule, then the tensor product of M and N (taken over the ring S) is an R-T-bimodule in a natural fashion. This tensor product of bimodules is associative (up to a unique canonical isomorphism), and one can hence construct a category whose objects are the rings and whose morphisms are the bimodules. This is in fact a 2-category, in a canonical way—2 morphisms between R-S-bimodules M and N are exactly bimodule homomorphisms, i.e. functions
for m ∈ M, r ∈ R, and s ∈ S. One immediately verifies the interchange law for bimodule homomorphisms, i.e.
holds whenever either (and hence the other) side of the equation is defined, and where ∘ is the usual composition of homomorphisms. In this interpretation, the category End(R) = Bimod(R, R) is exactly the monoidal category of R-R-bimodules with the usual tensor product over R the tensor product of the category. In particular, if R is a commutative ring, every left or right R-module is canonically an R-R-bimodule, which gives a monoidal embedding of the category R-Mod into Bimod(R, R). The case that R is a field K is a motivating example of a symmetric monoidal category, in which case R-Mod = K-Vect, the category of vector spaces over K, with the usual tensor product giving the monoidal structure, and with unit K. We also see that a monoid in Bimod(R, R) is exactly an R-algebra. See (Street 2003). Furthermore, if M is an R-S-bimodule and L is an T-S-bimodule, then the set HomS(M, L) of all S-module homomorphisms from M to L becomes a T-R-module in a natural fashion. These statements extend to the derived functors Ext and Tor.
Profunctors can be seen as a categorical generalization of bimodules.
Note that bimodules are not at all related to bialgebras.