nLab flat module




Homological algebra

homological algebra

(also nonabelian homological algebra)



Basic definitions

Stable homotopy theory notions



diagram chasing

Schanuel's lemma

Homology theories




A module over a ring RR is called flat if its satisfies one of many equivalent conditions, the simplest to state of which is maybe: forming the tensor product of modules with NN preserves submodules.

Under the dual geometric interpretation of modules as generalized vector bundles over the space on which RR is the ring of functions, flatness of a module is essentially the local triviality of these bundles, hence in particular the fact that the fibers of these bundles do not change, up to isomorphism. See prop. below for the precise statement. On the other hand there is no relation to “flat” as in flat connection on such a bundle.


We first state the definition and its equivalent reformulations over a commutative ring abstractly in In terms of exact functors and Tor-functors. Then we give an explicit element-wise characterization in Explicitly in terms of identities.

Much of this discussion also works in the more general case where the ring is not-necessarily taken to be commutative and not necessarily required to be equipped with a unit, this we indicate in For more general rings.

In terms of exact functors and Tor-functors

Let RR be a commutative ring.


An RR-module NN is flat if tensoring with NN over RR as a functor from RRMod to itself

() RN:RModRMod (-)\otimes_R N : R Mod \to R Mod

is an exact functor (sends short exact sequences to short exact sequences).


A module as above is faithfully flat if it is flat and tensoring in addition reflects exactness, hence if the tensored sequence is exact if and only if the original sequence was.


The condition in def. has the following immediate equivalent reformulations:

  1. NN is flat precisely if () RN(-)\otimes_R N is a left exact functor,

    because tensoring with any module is generally already a right exact functor;

  2. NN is flat precisely if () RN(-)\otimes_R N sends monomorphisms (injections) to monomorphisms,

    because for a right exact functor to also be left exact the only remaining condition is that it preserves the monomorphisms on the left of a short exact sequence;

  3. NN is flat precisely if () RN(-)\otimes_R N is a flat functor,

    because Mod is finitely complete;

  4. NN is flat precisely if the degree-1 Tor-functor Tor 1 RMod(,N)Tor_1^{R Mod}(-,N) is zero,

    because by the general properties of derived functors in homological algebra, L 1FL_1 F is the obstruction to a right exact functor FF being left exact;

  5. NN is flat precisely if all higher Tor functors Tor 1(RMod)(,N)Tor_{\geq 1}(R Mod)(-,N) are zero,

    because the higher derived functors of an exact functor vanish;

  6. NN is flat precisely if NN is an acyclic object with respect to the tensor product functor;

    because the Tor functor is symmetric in both arguments and an object is called tensor-acyclic object if all its positive-degree TorTor-groups vanish.

The condition in def. also has a number of not so immediate equivalent reformulations. These we discuss in detail below in Equivalent characterizations. One of them gives an explicit characterization of flat modules in terms of relations beween their elements. An exposition of this we give now in In terms of identities.

Explicitly in terms of identities

There is a characterisation of flatness that says that a left AA-module MM is flat if and only if “everything (that happens in MM) happens for a reason (in AA)”. We indicate now what this means. Below in prop. it is shown how this is equivalent to def. above.

The meaning of this is akin to the existence of bases in vector spaces. In a vector space, say VV, if we have an identity of the form iα iv i=0\sum_i \alpha_i v_i = 0 then we cannot necessarily assume that the α i\alpha_i are all zero. However, if we choose a basis then we can write each v iv_i in terms of the basis elements, say v i= jβ iju jv_i = \sum_j \beta_{i j} u_j, and substitute in to get ijα iβ iju j=0\sum_{i j} \alpha_i \beta_{i j} u_j = 0. Now as {u j}\{u_j\} forms a basis, we can deduce from this that for each jj, iα iβ ij=0\sum_i \alpha_i \beta_{i j} = 0. These last identities happen in the coefficient field, which is standing in place of AA in the analogy.

When translating this into the language of modules we cannot use bases so we have to be a little more relaxed. The following statement is the right one.

Suppose there is some identity in MM of the form ia im i=0\sum_i a_i m_i = 0 with m iMm_i \in M and a iAa_i \in A. Then there is a family {n j}\{n_j\} in MM such that every m im_i can be written in the form m i= jb ijn jm_i = \sum_j b_{i j} n_j and the coefficients b ijb_{i j} have the property that ia ib ij=0\sum_i a_i b_{i j} = 0.

The module MM being flat is equivalent to being able always to do this.

There is an alternative way to phrase this which is less element-centric. The elements m im_i correspond to a morphism into MM from a free module, say m:FMm \colon F \to M. The a ia_i correspond to a morphism a:FFa \colon F \to F, multiplying the iith term by a ia_i. That we have the identity ia im i=0\sum_i a_i m_i = 0 says that the composition mam a is zero, or that m:FMm \colon F \to M factors through the coequaliser of aa and 00.

Now we consider the elements n jn_j. These define another morphism from a free module, say n:EMn \colon E \to M. That the m im_i can be expressed in terms of the n jn_j says that the morphism mm factors through nn. That is, there is a morphism b:FMb \colon F \to M such that m=nbm = n b. We therefore have two factorisations of mm: one through nn and one through the cokernel cokera\coker a. The question is as to whether these have any relation to each other. In particular, does cokeraM\coker a \to M factor through nn? We can represent all of this in the following diagram.

Layer 1 F F F F M M coker a \coker a E E a a b b n n m m

Saying that MM is flat says that this lift always occurs.

Taking this a step further, we consider the filtered family of all finite subsets of MM. This generates a filtered family of finitely generated free modules with compatible morphisms to MM. So there is a morphism from the colimit of this family to MM. This morphism is surjective by construction. To show that it is injective, we need to show that any element in one of the terms in the family that dies by the time it reaches MM has actually died on the way. This is precisely what the above characterisation of flatness is saying: the element corresponding to ia im i\sum_i a_i m_i that dies in MM is already dead by the time it reaches EE.

We have thus arrived at the following result:


A module is flat if and only if it is a filtered colimit of free modules.

This observation (Wraith, Blass) can be put into the more general context of modelling geometric theories by geometric morphisms from their classifying toposes, or equivalently, certain flat functors from sites for such topoi.

For more general rings

Even if the ring RR is not necessarily commutative and not necessarily unital, we can say:

A left RR-module is flat precisely if the tensoring functor

() R:Mod RAb (-)\otimes_R \colon Mod_R \to Ab

from right RR modules to abelian groups is an exact functor.


Equivalent characterizations

By def. , or its immediate consequence, remark . NRModN \in R Mod is flat if for every injection i:Ai \colon A \hookrightarrow also i RN:A RNB RNi \otimes_R N \colon A \otimes_R N \to B \otimes_R N is an injection. The following proposition says that this may already be checked on just a very small subclass of injections.


An RR-module NN is flat already if for all inclusions IRI \hookrightarrow R of a finitely generated ideal into RR, regarded as a module over itself, the induced morphism

I RNR RNN I \otimes_R N \to R \otimes_R N \simeq N

is an injection.




A module NN is flat precisely if for every finite linear combination of zero, ir in i=0N\sum_i r_i n_i = 0\in N with {r iR} i\{r_i \in R\}_i, {n iN}\{n_i \in N\} there are elements {n˜ jN} j\{\tilde n_j \in N\}_j and linear combinations

n i= jb ijn˜ jN n_i = \sum_j b_{i j} \tilde n_j \;\;\in N

with {b ijR} i,j\{b_{i j} \in R\}_{i,j} such that for all jj we have

ir ib ij=0R. \sum_i r_i b_{i j} = 0\;\;\; \in R \,.

A finite set {r iR} i\{r_i \in R\}_i corresponds to the inclusion of a finitely generated ideal IRI \hookrightarrow R.

By theorem NN is flat precisely if I RNNI \otimes_R N \to N is an injection. This in turn is the case precisely if the only element of the tensor product I RRI \otimes_R R that is 0 in R RN=NR \otimes_R N = N is already 0 on I RNI \otimes_R N.

Now by definition of tensor product of modules an element of I RNI \otimes_R N is of the form i(r i,n i)\sum_i (r_i ,n_i) for some {n iN}\{n_i \in N\}. Under the inclusion I RNNI \otimes_R N \to N this maps to the actual linear combination ir in i\sum_i r_i n_i. This map is injective if whenever this linear combination is 0, already i(r i,n i)\sum_i (r_i, n_i) is 0.

But the latter is the case precisely if this is equal to a combination j(r˜ j,n˜ j)\sum_j (\tilde r_j , \tilde n_j) where all the r˜ j\tilde r_j are 0. This implies the claim.

Relation to projective modules


Every projective module is flat.


Clearly every ring RR is a flat module over itself, and direct sums as well as direct summands of flat modules are flat. Hence direct summands of free modules are flat, and these are precisely the projective modules (prop.)


(Lazard's criterion)

A module is flat if and only if it is a filtered colimit of free modules.

This is due to (Lazard (1964)).


(…) For the moment see the above discussion. (…)

Relation to (locally) free modules


An RR-module NN over a Noetherian ring RR is called a locally free module if there is a cover by prime ideals IRI \hookrightarrow R such that the localization N IN_I is a free module over the localization R IR_I.


For RR a Noetherian ring and NN a finitely generated module over RR, NN is flat precisely if it is locally free module, def. .

By Raynaud-Gruson, 3.4.6 (part I)



  1. RR is a local ring,

  2. NN is a finitely generated module,

  3. NN is a flat module

then NN is a free module.

This is Matsumara, Theorem 7.10



An abelian group is flat (regarded as a \mathbb{Z}-module) precisely if it is torsion-free.


By the general discussion at derived functor in homological algebra, the obstruction to AAbA \in Ab being flat are the first Tor-groups Tor 1 (,A)Tor_1^{\mathbb{Z}}(-,A). By the discussion at Tor – relation to torsion subgroups these a filtered colimits and direct sums of the torsion subgroups of AA. In particular for Tor 1 ( n,A)Tor_1^\mathbb{Z}(\mathbb{Z}_n,A) is the nn-torsion subgroup of AA. Hence Tor 1 (,A)Tor_1^\mathbb{Z}(-,A) vanishes and hence AA is flat precisely if all torsion subgroups of AA are trivial.


Original articles include

  • Shizuo Endo, On flat modules over commutative rings, J. Math. Soc. Japan Volume 14, Number 3 (1962), 284-291. (EUCLID)

  • Michel Raynaud, Laurent Gruson, Critères de platitude et de projectivité, Techniques de “platification” d’un module. Invent. Math. 13 (1971), 1–89.

  • S. Jondrup, Flat and projective modules, Math, Scand. 43 (1978) (pdf)

The characterization of flat modules as filtered colimits of projective modules is due to

  • Daniel Lazard, Sur les modules plats C. R. Acad. Sci. Paris 258, 6313–6316 (1964)

For a general account see for instance section 3.2 of

For more details see

  • Matsumura’s CRT book

Lecture notes include

  • Arthur Ogus, Flatness – a brief overview (pdf)

Further resources include

Last revised on July 5, 2016 at 08:44:39. See the history of this page for a list of all contributions to it.