The Stacks project

10.80 Faithfully flat descent for projectivity of modules

In the next few sections we prove, following Raynaud and Gruson [GruRay], that the projectivity of modules descends along faithfully flat ring maps. The idea of the proof is to use dévissage à la Kaplansky [Kaplansky] to reduce to the case of countably generated modules. Given a well-behaved filtration of a module $M$, dévissage allows us to express $M$ as a direct sum of successive quotients of the filtering submodules (see Section 10.84). Using this technique, we prove that a projective module is a direct sum of countably generated modules (Theorem 10.84.5). To prove descent of projectivity for countably generated modules, we introduce a “Mittag-Leffler” condition on modules, prove that a countably generated module is projective if and only if it is flat and Mittag-Leffler (Theorem 10.93.3), and then show that the property of being a Mittag-Leffler module descends (Lemma 10.95.1). Finally, given an arbitrary module $M$ whose base change by a faithfully flat ring map is projective, we filter $M$ by submodules whose successive quotients are countably generated projective modules, and then by dévissage conclude $M$ is a direct sum of projectives, hence projective itself (Theorem 10.95.6).

We note that there is an error in the proof of faithfully flat descent of projectivity in [GruRay]. There, descent of projectivity along faithfully flat ring maps is deduced from descent of projectivity along a more general type of ring map ([Example 3.1.4(1) of Part II, GruRay]). However, the proof of descent along this more general type of map is incorrect. In [G], Gruson explains what went wrong, although he does not provide a fix for the case of interest. Patching this hole in the proof of faithfully flat descent of projectivity comes down to proving that the property of being a Mittag-Leffler module descends along faithfully flat ring maps. We do this in Lemma 10.95.1.


Comments (4)

Comment #1088 by Nuno Cardoso on

"However, the proof of descent along this more general type of map is incorrect, as explained in [G]."

When I first read this passage, I was under the impression that Gruson corrected the error in the proof of faithfully flat descent of projectivity, but as far as I can tell this is not the case. Since it took me some time to find this reference, I believe it would be worthy to mention that in [G], there isn't a proof of this result.

Comment #1093 by on

Please tell me your exact suggestion for an improvement of the text. It seems that what it says now is not wrong. And yes, when Alex Perry worked on this, we looked over various papers by Gruson and others and we never found a fix (but references are always welcome).

Comment #1095 by Nuno Cardoso on

Indeed, as the text is now it is not wrong. I would just add one more sentence to it. Namely,

"However, the proof of descent along this more general type of map is incorrect, as explained by Gruson in [G], although he does not provide a fix for the case of interest."

or we could write it like this

"However, the proof of descent along this more general type of map is incorrect. In [G], Gruson explains what went wrong, although he does not provide a fix for the case of interest.",

but since my English is a little bit rusty, I am pretty sure you can come up with a better sentence than these. I also do not know of any other reference with a corrected proof.

One last thing, in the bibliographic entry of [G] should be "sur un anneau".


Post a comment

Your email address will not be published. Required fields are marked.

In your comment you can use Markdown and LaTeX style mathematics (enclose it like $\pi$). A preview option is available if you wish to see how it works out (just click on the eye in the toolbar).

Unfortunately JavaScript is disabled in your browser, so the comment preview function will not work.

All contributions are licensed under the GNU Free Documentation License.




In order to prevent bots from posting comments, we would like you to prove that you are human. You can do this by filling in the name of the current tag in the following input field. As a reminder, this is tag 058B. Beware of the difference between the letter 'O' and the digit '0'.