This post is going to be about flat modules and flat families. A brief excursion into Commutative Algebra often brings up the following fact: a module over the ring is flat if for every inclusion of -modules the induced map is again an inclusion. Beyond this intuition often goes for a toss. Why the name “flat”? What even is happening? This post is intended to remedy that for both the reader and the scribe.

First, we write about the fact that the tensor product is right exact, and not left exact. What does this mean? This means that if we have a short exact sequence , then for any module , the sequence is exact. Why is this true? I am going to try and reproduce the explanation given in Atiyah-Macdonald’s “Commutative Algebra”, albeit in a more reader-friendly way. First of all, we notice that . Now as each bilinear map from factors through , we have . Hence, . So where do we go from here?

The functor maps the sequence

to

.

Clearly is a contravariant functor. The surjective function becomes injective under this mapping (please try to parse what this means). This is because any change in an element of will imply a change in the corresponding element of . This is precisely because of the surjection of . The same element in , if now being mapped differently, will imply a change of elements in . Does become a surjection? No. It does so only under special circumstances. The structure (restrictions) of might prevent all elements of from being mapped to. Anyway. We realize that , and then we take away the functor. Does the injection now become a surjection? Atiyah-Macdonald asks to refer to (2.9). Turns out, yes it does. Basically, if a map is not surjective, you can can have two different maps: you map the image in the same way in both maps. However, outside of the image, you can make changes, such that the composition still remains the same. This is because the image is a submodule, and you have elements not completely dependant on this submodule outside of it. Hence, you don’t have an injective map. The only way to have an injective map is to have a surjective map to start with. Please make sense of this explanation. So we’ve now concluded that the Tensor functor is right exact. It preserves surjection, but does not preserve injection.

Consider the exact sequence . A module is flat if is also exact. To emphasize that this is an important property, we have to give an example of a module that is not flat. Consider the exact sequence . This map is clearly injective, as the exactness of the sequence implies. However, the sequence is not exact, in that the map is no longer injective. Why is that? This is because every element is mapped to . This is precisely because of the multiplication with . Hence, as there exists a short exact sequence which on tensoring with no longer remains exact, is not a flat module.

Hence, flatness is a special property. We’re now going to investigate some implications of a module being flat.

a) If is a flat module, and the functor is a functor on the category which maps a module to , then is an exact functor. This is just a re-phrasing of the definition of a flat module.

b) If is injective, then is injective too. How? It’s just a re-wording of the fact that the functor is exact! Think about it.

c) Now we come to the real heavyweight implication. is flat “if is injective and are finitely generated, then is injective too”. The forward direction is obvious. It follows from the definition of being flat. In fact we do not even need to be finitely generated. But what about the converse? Essentially we want to be able to take injective maps between modules that are not finitely generated, and then be able to conclude that the corresponding map between is also injective. How does the proof go? If the map between is not injective, then there exists a non-zero element such that . Clearly the ‘s are finite in number. Now consider the submodule . This is finitely generated, and clearly the elements are non-zero. Now consider . This too is finitely generated. Also, clearly is an injective map. By assumption, too is an injective map. Now is an element of . Also, as is nonzero in , it is nonzero in too. Hence, we map a non-zero element to , which is a contradiction as the map is injective by assumption. Hence, we have proved that the map is also injective.

Now remember that the tensor functor is right-exact, but not left-exact. There is a functor called the Tor functor which measures how “far” the tensor functor is from being left-exact. We shall talk about this functor in a future blog post.