The local criterion for flatness #
Let R be a Noetherian ring, S a Noetherian R-algebra, M a finite S-module and I an
ideal of R whose extension I S lies in the Jacobson radical of S. If I ⊗[R] M → M is
injective, that is Tor₁ᴿ(R ⧸ I, M) = 0, and M ⧸ I M is flat over R ⧸ I, then M is flat
over R (Module.Flat.of_subtype_rTensor_injective). This is the local criterion for flatness
(Stacks, Tag 00MK), stated with the Jacobson radical in place of a local homomorphism of local
rings. For a local homomorphism R → S and I the maximal ideal of R, the quotient M ⧸ I M
is a vector space over the residue field, so flatness of M reduces to the vanishing of
Tor₁ᴿ(κ, M). In its infinitesimal form the criterion needs no Tor₁ hypothesis: M is flat
over R as soon as M ⧸ Iⁿ M is flat over R ⧸ Iⁿ for every n
(Module.Flat.of_forall_flat_quotient_pow), and conversely these quotients are flat when M is
(Module.Flat.quotient_smul_top). This form applies when M is only known modulo powers of I,
as for the completion of a ring that is flat over R but not yet known to be Noetherian.
Two special cases are derived.
- A regular element (Stacks, Tag 00ML, for the ideal
(x)). Ifx ∈ RisM-regular, thenTor₁ᴿ(R ⧸ (x), M) = 0(IsSMulRegular.span_singleton_subtype_rTensor_injective), soMis flat overRas soon asM ⧸ x Mis flat overR ⧸ (x)(Module.Flat.of_flat_quotSMulTop). ConverselyM ⧸ x Mis flat overR ⧸ (x)wheneverMis flat overR, so for anM-regularxthe two conditions are equivalent (Module.flat_quotSMulTop_iff_flat), the flat counterpart of Mathlib'sModule.free_quotSMulTop_iff_free. This is the inductive step of miracle flatness (Stacks, Tag 00R4). - Flatness over the fibres (Stacks, Tag 00MP). Let
R → S → Tbe ring maps withSandTNoetherian,Ma finiteT-module flat overR, andJan ideal ofRwithJ Tin the Jacobson radical ofT. Flatness overRalready givesTor₁ˢ(S ⧸ J S, M) = 0(Module.Flat.map_subtype_rTensor_injective, inTauCeti.RingTheory.Ideal.TensorProduct), soMis flat overSas soon asM ⧸ J Mis flat overS ⧸ J S(Module.Flat.of_flat_quotient_map). For local rings andJthe maximal ideal ofR, the fibre condition holds automatically whenJ Sis the maximal ideal ofS; in ring homomorphism form,f : S → Tis flat as soon asf ∘ gis, for someg : R → Swith𝔪_R S = 𝔪_S(RingHom.Flat.of_comp_of_map_maximalIdeal_eq). The typicalgis the map to the completion of a Noetherian local ring, which transports flatness of an endomorphism such as Frobenius to the completion.
Iterating the criterion along a sequence gives a flatness test for a local homomorphism R → S
of Noetherian local rings: if r₁, …, rₙ generate the maximal ideal of R and their images form
a weakly S-regular sequence, then S is flat over R
(Module.Flat.of_isWeaklyRegular_map_algebraMap). Dividing by r₁ on both sides preserves the
hypotheses, and for n = 0 the ring R is a field. The test needs no regularity of R or
Cohen–Macaulayness of S; these are only ways of producing the regular sequence. For instance,
the Frobenius endomorphism of a regular local ring of characteristic p sends a regular system
of parameters to their p-th powers, again a regular sequence, which proves Kunz's theorem
(TauCeti.IsRegularLocalRing.flat_frobenius). The ring homomorphism form
RingHom.Flat.of_isWeaklyRegular_map applies to such endomorphisms without an algebra
structure of a ring over itself.
A related criterion runs along a regular element of the algebra rather than of the base
(compare Matsumura, Commutative Ring Theory, §22, for local homomorphisms of Noetherian local
rings). If S is Noetherian, M is a finite S-module, x ∈ S lies in the Jacobson radical of
S and is M-regular, and M ⧸ x M is flat over R, then M is flat over R
(Module.Flat.of_flat_quotSMulTop_of_isSMulRegular). No Noetherian hypothesis on R is needed:
the kernel of M ⊗[R] I → M ⊗[R] R is a finite S-module equal to x times itself, so it
vanishes by Nakayama's lemma.
Implementation notes #
By Mathlib's ideal criterion it suffices that J ⊗[R] M → M is injective for every ideal J.
Steps 1–3 hold without Noetherian hypotheses and live in TauCeti.RingTheory.Flat.TensorProduct.
- Tensoring with
Mpreserves injectivity of maps between modules killed byI: overR ⧸ Ithis is flatness ofM ⧸ I M(Ideal.rTensor_injective_of_isTorsionBySet). - If
L ⧸ Nis killed byI, thenN ⊗[R] M → L ⊗[R] Mis injective, by a chase along a free module coveringL(Ideal.subtype_rTensor_injective_of_smul_top_le). - By induction, the same holds when
L ⧸ Nis killed byIⁿ(Ideal.subtype_rTensor_injective_of_pow_smul_top_le). Applied toJ ⧸ (J ⊓ Iⁿ)insideR ⧸ Iⁿ, it shows that the kernel ofJ ⊗[R] M → Mcomes from(J ⊓ Iⁿ) ⊗[R] M(Ideal.mem_range_rTensor_inclusion_inf_pow). - By the Artin–Rees lemma
J ⊓ Iⁿ ⊆ I^(n - c) J, so an elementtof the kernel lies inI^(n - c) (J ⊗[R] M)for alln. Its image inM ⊗[R] J, a finiteS-module (Module.Finite.tensor), therefore vanishes by Krull's intersection theorem overS.
For the infinitesimal form, step 3 is replaced by flatness of M ⧸ Iⁿ M over R ⧸ Iⁿ
(Ideal.mem_range_rTensor_inclusion_inf_of_flat), and step 4 is unchanged.
Main results #
Module.Flat.of_subtype_rTensor_injective: the local criterion for flatness.Module.Flat.of_forall_flat_quotient_pow: the infinitesimal form of the local criterion;Module.flat_iff_forall_flat_quotient_powis the equivalence.Module.Flat.quotient_smul_top:M ⧸ I Mis flat overR ⧸ IwhenMis flat overR.Module.Flat.of_flat_quotient_map: the criterion for flatness over the fibres.RingHom.Flat.of_comp_of_map_maximalIdeal_eq:fis flat iff ∘ gis flat andgmaps the maximal ideal onto the maximal ideal.Module.Flat.of_flat_quotSMulTop: the criterion along a regular element.Module.Flat.quotSMulTop:M ⧸ x Mis flat overR ⧸ (x)whenMis flat overR.Module.flat_quotSMulTop_iff_flat: for anM-regularxas above,M ⧸ x Mis flat overR ⧸ (x)if and only ifMis flat overR.Module.Flat.of_flat_quotSMulTop_of_isSMulRegular: the criterion along a regular element of the algebraS.Module.Flat.of_isWeaklyRegular_map_algebraMap: a local homomorphismR → Sof Noetherian local rings is flat if generators of the maximal ideal ofRmap to a weaklyS-regular sequence;RingHom.Flat.of_isWeaklyRegular_mapis the same for a ring homomorphism.
References #
- The Stacks Project, Tag 00MK, the local criterion for flatness, and Tag 00ML, its variant along a regular element.
- The Stacks Project, Tag 00MP, flatness over the fibres.
- The Stacks Project, Tag 00R4, miracle flatness, whose proof uses the criterion along a regular element.
- H. Matsumura, Commutative Ring Theory, Theorems 22.3 and 22.5.
If M is flat over R, then M ⧸ x M is flat over R ⧸ (x).
The local criterion #
Local criterion for flatness, infinitesimal form (Matsumura, Theorem 22.3, (4) ⇒ (1)). Let
R and S be Noetherian, M a finite S-module and I an ideal of R with I S in the
Jacobson radical of S. If M ⧸ I ^ n M is flat over R ⧸ I ^ n for every n, then M is flat
over R.
Under the hypotheses of Module.Flat.of_forall_flat_quotient_pow, M is flat over R if and
only if M ⧸ I ^ n M is flat over R ⧸ I ^ n for every n.
Local criterion for flatness (Stacks, Tag 00MK). Let R and S be Noetherian, M a finite
S-module and I an ideal of R with I S in the Jacobson radical of S. If I ⊗[R] M → M is
injective, that is Tor₁ᴿ(R ⧸ I, M) = 0, and M ⧸ I M is flat over R ⧸ I, then M is flat over
R.
Flatness over the fibres (Stacks, Tag 00MP). Let R → S → T be ring maps with S and T
Noetherian, let M be a finite T-module which is flat over R, and let J be an ideal of R
with J T in the Jacobson radical of T. If M ⧸ J M is flat over S ⧸ J S, then M is flat
over S.
Along a regular element #
Local criterion for flatness along a regular element (Stacks, Tag 00ML, for the ideal
(x)). Let R and S be Noetherian, M a finite S-module and x ∈ R with image in the
Jacobson radical of S. If x is M-regular and M ⧸ x M is flat over R ⧸ (x), then M is
flat over R.
Local criterion for flatness along a regular element, for a local homomorphism R → S of
Noetherian local rings (Stacks, Lemma 10.99.10 (00ML), for the ideal (x)): if x lies in the
maximal ideal of R, is M-regular, and M ⧸ x M is flat over R ⧸ (x), then the finite
S-module M is flat over R.
For an M-regular element x as in Module.Flat.of_flat_quotSMulTop, M ⧸ x M is flat over
R ⧸ (x) if and only if M is flat over R.
Along a regular element of the algebra #
Flatness along a regular element of the algebra. Let S be a Noetherian R-algebra, M
a finite S-module and x an M-regular element of the Jacobson radical of S. If M ⧸ x M is
flat over R, then so is M. Unlike Module.Flat.of_flat_quotSMulTop, the element x need not
come from R, and R need not be Noetherian.
Let g : R → S and f : S → T be ring homomorphisms of local rings, with S and T
Noetherian and f local. If f ∘ g is flat and g maps the maximal ideal of R onto a generating
set of the maximal ideal of S, then f is flat. This is flatness over the fibres
(Module.Flat.of_flat_quotient_map), whose fibre condition holds because S ⧸ 𝔪_R S is a field.
Unlike the module version, it applies to endomorphisms such as Frobenius.
Flatness from a regular sequence. Let R → S be a local homomorphism of Noetherian local
rings. If r₁, …, rₙ generate the maximal ideal of R and their images form a weakly S-regular
sequence, then S is flat over R. This iterates the local criterion
Module.Flat.of_flat_quotSMulTop_of_isLocalHom along the sequence.
Flatness from a regular sequence, for a local homomorphism f : R →+* S of Noetherian
local rings: if r₁, …, rₙ generate the maximal ideal of R and f r₁, …, f rₙ is a weakly
S-regular sequence, then f is flat. Unlike Module.Flat.of_isWeaklyRegular_map_algebraMap,
this applies to endomorphisms, such as Frobenius, without an algebra structure of R over
itself.