Documentation

TauCeti.RingTheory.Depth.Basic

Basic depth of modules #

Mathlib defines the depth IsLocalRing.depth M of a module over a local ring R through the vanishing of Ext (R β§Έ π”ͺ) M, and identifies it, for a finite nonzero module over a Noetherian local ring, with the supremum of the lengths of M-regular sequences in π”ͺ. This file relates depth to dimension, quotients by regular sequences, short exact sequences and modules of linear maps, and, after localization, to associated primes. The short exact sequence bounds hold for Ideal.depth I over any commutative ring; the other results are for Noetherian local rings or, after localization, Noetherian rings. The regular-sequence transfer lemmas for linear maps live in TauCeti.RingTheory.Regular.LinearMap.

Main results #

The two quotient-depth results, together with Mathlib's Module.supportDim_add_length_eq_supportDim_of_isRegular, make Cohen–Macaulayness stable under quotients by regular sequences.

theorem RingTheory.Sequence.IsRegular.mem_maximalIdeal {R : Type u_1} [CommRing R] [IsLocalRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {rs : List R} (reg : IsRegular M rs) {r : R} (hr : r ∈ rs) :

Over a local ring, every element of an M-regular sequence lies in the maximal ideal.

In a short exact sequence 0 β†’ X₁ β†’ Xβ‚‚ β†’ X₃ β†’ 0 whose first map induces the zero map Ext N X₁ n β†’ Ext N Xβ‚‚ n for every n, the depth of X₁ with respect to N is at least one more than that of X₃: the connecting maps Ext N X₃ n β†’ Ext N X₁ (n + 1) are surjective.

theorem ModuleCat.depth_le_depth_of_support_subset {R : Type u} [CommRing R] [Small.{v, u} R] [IsNoetherianRing R] (I : Ideal R) (N M : ModuleCat R) [Module.Finite R ↑N] [Module.Finite R ↑M] (hsupp : Module.support R ↑N βŠ† PrimeSpectrum.zeroLocus ↑I) :

For finite modules N and M over a Noetherian ring with N supported in V(I), the depth of M with respect to I is at most the depth N.depth M: Ext N M i vanishes for every i < I.depth M. Unlike ModuleCat.depth_eq_depth_of_support_eq, this needs neither N β‰  0 nor I M β‰  M. The proof uses the Rees theorem ModuleCat.exists_isRegular_tfae (Matsumura, Commutative Algebra, Theorem 28).

theorem Ideal.depth_min_snd_trd_add_one_le_fst_of_exact {R : Type u} [CommRing R] (I : Ideal R) {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (I.depth ↧N) (I.depth ↧Q + 1) ≀ I.depth ↧M

For a short exact sequence of linear maps, the source depth with respect to an ideal is at least the minimum of the middle depth and one plus the target depth. The modules may lie in different universes.

theorem Ideal.depth_min_snd_fst_sub_one_le_trd_of_exact {R : Type u} [CommRing R] (I : Ideal R) {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (I.depth ↧N) (I.depth ↧M - 1) ≀ I.depth ↧Q

For a short exact sequence of linear maps, the target depth with respect to an ideal is at least the minimum of the middle depth and the source depth minus one. The modules may lie in different universes.

theorem Ideal.depth_min_fst_trd_le_snd_of_exact {R : Type u} [CommRing R] (I : Ideal R) {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (I.depth ↧M) (I.depth ↧Q) ≀ I.depth ↧N

For a short exact sequence of linear maps, the middle depth with respect to an ideal is at least the minimum of the source and target depths. The modules may lie in different universes.

theorem IsLocalRing.depth_min_snd_trd_add_one_le_fst_of_exact {R : Type u} [CommRing R] [IsLocalRing R] {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (depth ↧N) (depth ↧Q + 1) ≀ depth ↧M

Local-ring form of Ideal.depth_min_snd_trd_add_one_le_fst_of_exact.

theorem IsLocalRing.depth_min_snd_fst_sub_one_le_trd_of_exact {R : Type u} [CommRing R] [IsLocalRing R] {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (depth ↧N) (depth ↧M - 1) ≀ depth ↧Q

Local-ring form of Ideal.depth_min_snd_fst_sub_one_le_trd_of_exact.

theorem IsLocalRing.depth_min_fst_trd_le_snd_of_exact {R : Type u} [CommRing R] [IsLocalRing R] {M : Type v} {N : Type w} {Q : Type t} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup Q] [Module R Q] [Small.{v, u} R] [Small.{w, u} R] [Small.{t, u} R] (first : M β†’β‚—[R] N) (second : N β†’β‚—[R] Q) (exactness : Function.Exact ⇑first ⇑second) (injective : Function.Injective ⇑first) (surjective : Function.Surjective ⇑second) :
min (depth ↧M) (depth ↧Q) ≀ depth ↧N

Local-ring form of Ideal.depth_min_fst_trd_le_snd_of_exact.

@[simp]
theorem IsLocalRing.depth_prod {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] (M N : Type v) [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] :
depth ↧(M Γ— N) = min (depth ↧M) (depth ↧N)

The depth of a product of two modules over a local ring is the minimum of their depths.

A nonzero finite free module over a local ring has the same depth as the ring.

theorem IsLocalRing.depth_add_one_le_depth_ker {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {F M : Type v} [AddCommGroup F] [Module R F] [AddCommGroup M] [Module R M] {g : F β†’β‚—[R] M} (hg : Function.Surjective ⇑g) [Module.Free R β†₯g.ker] [Module.Finite R β†₯g.ker] (hker : g.ker ≀ maximalIdeal R β€’ ⊀) :
depth ↧M + 1 ≀ depth ↧β†₯g.ker

If 0 β†’ K β†’ F β†’ M β†’ 0 is a free presentation with K finite free and K βŠ† π”ͺ F, then depth M + 1 ≀ depth K.

The depth of a finite nonzero module M over a Noetherian local ring is at most the dimension of its support. Stacks, Lemma 10.72.3 (00LK).

The depth of a module over a local ring is zero exactly when there is a nonzero linear map to it from the residue field R β§Έ π”ͺ. This is Mathlib's ModuleCat.depth_eq_zero_iff_nontrivial_linearMap with the universe-adjusting Shrink in the definition of IsLocalRing.depth removed.

A local ring of positive depth is not a field: its maximal ideal is nonzero. No Noetherian hypothesis is needed.

theorem IsLocalRing.depth_le_depth_quotSMulTop_succ {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {M : Type v} [AddCommGroup M] [Module R M] {x : R} (reg : IsSMulRegular M x) :
depth ↧M ≀ depth ↧(QuotSMulTop x M) + 1

Dividing a module M by an M-regular element x lowers the depth by at most one. No finiteness or Noetherian hypothesis is needed.

theorem IsLocalRing.depth_quotSMulTop_succ_eq_depth {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {M : Type v} [AddCommGroup M] [Module R M] [IsNoetherianRing R] [Module.Finite R M] {x : R} (reg : IsSMulRegular M x) (hx : x ∈ maximalIdeal R) :
depth ↧(QuotSMulTop x M) + 1 = depth ↧M

Dividing a finite module M over a Noetherian local ring by an M-regular element x of the maximal ideal lowers the depth by exactly one.

theorem IsLocalRing.depth_quotSMulTop_eq_of_surjective {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {M : Type v} [AddCommGroup M] [Module R M] {Q : Type v} [AddCommGroup Q] [Module R Q] {x : R} (g : M β†’β‚—[R] Q) (hg : Function.Surjective ⇑g) (hker : g.ker = x β€’ ⊀) :
depth ↧(QuotSMulTop x M) = depth ↧Q

If g : M β†’ Q is a surjective linear map with kernel x M, then M β§Έ x M and Q have the same depth.

theorem IsLocalRing.depth_eq_add_one_of_surjective {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {M : Type v} [AddCommGroup M] [Module R M] [IsNoetherianRing R] [Module.Finite R M] {Q : Type v} [AddCommGroup Q] [Module R Q] {x : R} (hx : x ∈ maximalIdeal R) (reg : IsSMulRegular M x) (g : M β†’β‚—[R] Q) (hg : Function.Surjective ⇑g) (hker : g.ker = x β€’ ⊀) :
depth ↧M = depth ↧Q + 1

Over a Noetherian local ring, let x in the maximal ideal be regular on a finite module M and let g : M β†’ Q be a surjective linear map with kernel x M. Then the depth of M is one more than the depth of Q. This is IsLocalRing.depth_quotSMulTop_succ_eq_depth with the quotient replaced by an isomorphic module.

Dividing a finite module M over a Noetherian local ring by an M-regular sequence r₁, …, rβ‚™ lowers the depth by exactly n.

The depth of a finite module M over a Noetherian local ring is at most dim (R β§Έ p) for every associated prime p of M. H. Matsumura, Commutative Ring Theory, Theorem 17.2.

The depth of a module over a Noetherian local ring is zero exactly when the maximal ideal is an associated prime of the module, that is, when some nonzero element is killed by the maximal ideal.

theorem IsLocalRing.depth_hom_ge {R : Type u} [CommRing R] [IsLocalRing R] [IsNoetherianRing R] [Small.{v, u} R] {M N : Type v} [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N] [Module.Finite R M] [Module.Finite R N] {bound : β„•} (bound_le_two : bound ≀ 2) (depth_bound : ↑bound ≀ depth ↧N) :
↑bound ≀ depth ↧(M β†’β‚—[R] N)

Over a Noetherian local ring, depth at least n ≀ 2 passes from a finite target module to the module of linear maps from a finite module. Stacks, Lemma 15.24.10 (0AV5).

theorem IsLocalRing.depth_eq_depth_of_surjective {R : Type u} [CommRing R] [IsLocalRing R] [Small.{v, u} R] {M : Type v} [AddCommGroup M] [Module R M] [IsNoetherianRing R] {T : Type u_1} [CommRing T] [IsLocalRing T] [Algebra R T] [Small.{v, u_1} T] [Module T M] [IsScalarTower R T M] [Module.Finite T M] (hsurj : Function.Surjective ⇑(algebraMap R T)) :
depth ↧M = depth ↧M

Depth is unchanged under restriction of scalars along a surjective homomorphism of local rings R β†’ T: a finite T-module M has the same depth over R as over T. The M-regular sequences in the maximal ideal of T are exactly the images of those in the maximal ideal of R.

theorem IsLocalRing.mem_span_singleton_of_forall_mul_mem_of_two_le_depth {R : Type u} [CommRing R] [IsLocalRing R] [IsNoetherianRing R] (hdepth : 2 ≀ depth ↧R) {b c : R} (hb : IsSMulRegular R b) (hc : βˆ€ z ∈ maximalIdeal R, z * c ∈ Ideal.span {b}) :

In a Noetherian local ring R of depth at least two, the maximal ideal is not an associated prime of R β§Έ (b) for a nonzerodivisor b: if π”ͺ c βŠ† (b), then c ∈ (b).

theorem IsLocalRing.mem_range_algebraMap_of_two_le_depth {R : Type u} [CommRing R] [IsLocalRing R] [IsNoetherianRing R] (K : Type u_1) [CommRing K] [Algebra R K] [IsFractionRing R K] (hdepth : 2 ≀ depth ↧R) {x : K} (hx : βˆ€ (p : Ideal R) [p.IsPrime], p β‰  maximalIdeal R β†’ βˆƒ t βˆ‰ p, (algebraMap R K) t * x ∈ (algebraMap R K).range) :

Algebraic Hartogs principle for fractions. Let R be a Noetherian local ring of depth at least two with total ring of fractions K. An element of K that lies in the image of R_p for every prime p other than the maximal ideal lies in R: if for every such p some t βˆ‰ p has t x ∈ R, then x ∈ R.

Isomorphic Noetherian local rings have the same depth over themselves.

For a prime p of a commutative ring R, the module localization LocalizedModule p.primeCompl R has the same depth over R_p as the local ring R_p itself.

For a module M over a Noetherian ring R and a prime p, the localization M_p has depth zero over R_p exactly when p is an associated prime of M.

For a module M over a Noetherian ring R and a prime p, the localization M_p has depth at least one over R_p exactly when p is not an associated prime of M.

Let M be a finite module over a Noetherian ring and a an M-regular element of a prime p. Dividing by a lowers the depth of the localization at p by exactly one: depth (M β§Έ a M)_p + 1 = depth M_p.