Local cohomology. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This file defines the i
-th local cohomology module of an R
-module M
with support in an
ideal I
of R
, where R
is a commutative ring, as the direct limit of Ext modules:
Given a collection of ideals cofinal with the powers of I
, consider the directed system of
quotients of R
by these ideals, and take the direct limit of the system induced on the i
-th
Ext into M
. One can, of course, take the collection to simply be the integral powers of I
.
References #
- M. Hochster, Local cohomology https://dept.math.lsa.umich.edu/~hochster/615W22/lcc.pdf
- R. Hartshorne, Local cohomology: A seminar given by A. Grothendieck
- M. Brodmann and R. Sharp, Local cohomology: An algebraic introduction with geometric applications
- [S. Iyengar, G. Leuschke, A. Leykin, Anton, C. Miller, E. Miller, A. Singh, U. Walther, Twenty-four hours of local cohomology][iyengaretal13]
Tags #
local cohomology, local cohomology modules
Future work #
- Prove that this definition is equivalent to:
- the right-derived functor definition
- the characterization as the limit of Koszul homology
- the characterization as the cohomology of a Cech-like complex
- Establish long exact sequence(s) in local cohomology
The directed system of R
-modules of the form R/J
, where J
is an ideal of R
,
determined by the functor I
Equations
- local_cohomology.ring_mod_ideals I = {obj := λ (t : D), Module.of R (R ⧸ I.obj t), map := λ (s t : D) (w : s ⟶ t), submodule.mapq (I.obj s) (I.obj t) linear_map.id _, map_id' := _, map_comp' := _}
The diagram we will take the colimit of to define local cohomology, corresponding to the
directed system determined by the functor I
Equations
- local_cohomology.diagram I i = (local_cohomology.ring_mod_ideals I).op ⋙ Ext R (Module R) i
local_cohomology.of_diagram I i
is the the functor sending a module M
over a commutative
ring R
to the direct limit of Ext^i(R/J, M)
, where J
ranges over a collection of ideals
of R
, represented as a functor I
.
Equations
Local cohomology along a composition of diagrams.
Equations
- local_cohomology.diagram_comp I' I i = category_theory.iso.refl (local_cohomology.diagram (I' ⋙ I) i)
Local cohomology agrees along precomposition with a cofinal diagram.
The functor sending a natural number i
to the i
-th power of the ideal J
The full subcategory of all ideals with radical containing J
Equations
- local_cohomology.self_le_radical J = category_theory.full_subcategory (λ (J' : ideal R), J ≤ J'.radical)
Instances for local_cohomology.self_le_radical
The diagram of all ideals with radical containing J
, represented as a functor.
This is the "largest" diagram that computes local cohomology with support in J
.
Equations
- local_cohomology.self_le_radical_diagram J = category_theory.full_subcategory_inclusion (λ (J' : ideal R), J ≤ J'.radical)
We give two models for the local cohomology with support in an ideal J
: first in terms of
the powers of J
(local_cohomology
), then in terms of all ideals with radical
containing J
(local_cohomology.of_self_le_radical
).
local_cohomology J i
is i
-th the local cohomology module of a module M
over
a commutative ring R
with support in the ideal J
of R
, defined as the direct limit
of Ext^i(R/J^t, M)
over all powers t : ℕ
.
Equations
Local cohomology as the direct limit of Ext^i(R/J', M)
over all ideals J'
with radical
containing J
.
Showing equivalence of different definitions of local cohomology.
local_cohomology.iso_self_le_radical
gives the isomorphismlocal_cohomology J i ≅ local_cohomology.of_self_le_radical J i
local_cohomology.iso_of_same_radical
gives the isomorphismlocal_cohomology J i ≅ local_cohomology K i
whenJ.radical = K.radical
.
Lifting ideal_powers_diagram J
from a diagram valued in ideals R
to a diagram
valued in self_le_radical J
.
Equations
Instances for local_cohomology.ideal_powers_to_self_le_radical
PORTING NOTE: This lemma should probably be moved to ring_theory/finiteness.lean
to be near ideal.exists_radical_pow_le_of_fg
, which it generalizes.
The diagram of powers of J
is initial in the diagram of all ideals with
radical containing J
. This uses noetherianness.
Local cohomology (defined in terms of powers of J
) agrees with local
cohomology computed over all ideals with radical containing J
.
Equations
- local_cohomology.iso_self_le_radical J i = (local_cohomology.iso_of_final (local_cohomology.ideal_powers_to_self_le_radical J) (local_cohomology.self_le_radical_diagram J) i).symm ≪≫ category_theory.limits.has_colimit.iso_of_nat_iso (category_theory.iso.refl (local_cohomology.diagram (local_cohomology.ideal_powers_to_self_le_radical J ⋙ local_cohomology.self_le_radical_diagram J) i))
Equations
- local_cohomology.self_le_radical.cast_is_equivalence hJK = {inverse := local_cohomology.self_le_radical.cast _, unit_iso := {hom := local_cohomology.self_le_radical.cast_is_equivalence._aux_2 hJK, inv := local_cohomology.self_le_radical.cast_is_equivalence._aux_4 hJK, hom_inv_id' := _, inv_hom_id' := _}, counit_iso := {hom := local_cohomology.self_le_radical.cast_is_equivalence._aux_6 hJK, inv := local_cohomology.self_le_radical.cast_is_equivalence._aux_8 hJK, hom_inv_id' := _, inv_hom_id' := _}, functor_unit_iso_comp' := _}
Local cohomology agrees on ideals with the same radical.