feat(RingTheory): Gorenstein local ring is Cohen Macaulay#33379
feat(RingTheory): Gorenstein local ring is Cohen Macaulay#33379Thmoas-Guan wants to merge 2083 commits intoleanprover-community:masterfrom
Conversation
PR summary 56e100aabdImport changes exceeding 2%
|
| File | Base Count | Head Count | Change |
|---|---|---|---|
| Mathlib.RingTheory.Regular.Category | 1477 | 1968 | +491 (+33.24%) |
| Mathlib.RingTheory.Regular.Depth | 1809 | 2267 | +458 (+25.32%) |
| Mathlib.Algebra.Module.FinitePresentation | 1337 | 1430 | +93 (+6.96%) |
Import changes for all files
| Files | Import difference |
|---|---|
19 filesMathlib.AlgebraicGeometry.Group.Abelian Mathlib.AlgebraicGeometry.Group.Smooth Mathlib.AlgebraicGeometry.Morphisms.Etale Mathlib.AlgebraicGeometry.Morphisms.SmoothFiber Mathlib.AlgebraicGeometry.Morphisms.Smooth Mathlib.AlgebraicGeometry.Morphisms.WeaklyEtale Mathlib.AlgebraicGeometry.Normalization Mathlib.AlgebraicGeometry.Sites.ElladicCohomology Mathlib.AlgebraicGeometry.Sites.Etale Mathlib.AlgebraicGeometry.Sites.Proetale Mathlib.AlgebraicGeometry.ZariskisMainTheorem Mathlib.CategoryTheory.Abelian.Injective.Dimension Mathlib.CategoryTheory.Abelian.Projective.Dimension Mathlib.RingTheory.RingHom.Etale Mathlib.RingTheory.RingHom.LocallyStandardSmooth Mathlib.RingTheory.RingHom.StandardSmooth Mathlib.RingTheory.Smooth.Flat Mathlib.RingTheory.Smooth.IntegralClosure Mathlib.RingTheory.Unramified.LocalStructure |
2 |
54 filesMathlib.Algebra.Category.ModuleCat.Ext.HasExt Mathlib.Algebra.Homology.CochainComplexPlus Mathlib.Algebra.Homology.DerivedCategory.Ext.Basic Mathlib.Algebra.Homology.DerivedCategory.Ext.EnoughInjectives Mathlib.Algebra.Homology.DerivedCategory.Ext.EnoughProjectives Mathlib.Algebra.Homology.DerivedCategory.Ext.ExactSequences Mathlib.Algebra.Homology.DerivedCategory.Ext.ExtClass Mathlib.Algebra.Homology.DerivedCategory.Ext.Linear Mathlib.Algebra.Homology.DerivedCategory.Ext.TStructure Mathlib.Algebra.Homology.DerivedCategory.Fractions Mathlib.Algebra.Homology.DerivedCategory.FullyFaithful Mathlib.Algebra.Homology.DerivedCategory.KInjective Mathlib.Algebra.Homology.DerivedCategory.KProjective Mathlib.Algebra.Homology.DerivedCategory.TStructure Mathlib.Algebra.Homology.Embedding.AreComplementary Mathlib.Algebra.Homology.Embedding.CochainComplex Mathlib.Algebra.Homology.Embedding.TruncLEHomology Mathlib.Algebra.Homology.Factorizations.CM5a Mathlib.Algebra.Homology.Factorizations.CM5b Mathlib.Algebra.Homology.HomotopyCategory.KInjective Mathlib.Algebra.Homology.HomotopyCategory.KProjective Mathlib.Algebra.Module.SpanRankOperations Mathlib.AlgebraicGeometry.Morphisms.FormallyUnramified Mathlib.AlgebraicGeometry.Morphisms.QuasiFinite Mathlib.CategoryTheory.Abelian.Injective.Ext Mathlib.CategoryTheory.Abelian.Injective.Extend Mathlib.CategoryTheory.Abelian.Projective.Ext Mathlib.CategoryTheory.Abelian.Projective.Extend Mathlib.CategoryTheory.Sites.SheafCohomology.Basic Mathlib.CategoryTheory.Sites.SheafCohomology.MayerVietoris Mathlib.NumberTheory.FLT.Three Mathlib.NumberTheory.NumberField.Cyclotomic.Basic Mathlib.NumberTheory.NumberField.Cyclotomic.Ideal Mathlib.NumberTheory.NumberField.Cyclotomic.PID Mathlib.NumberTheory.NumberField.Cyclotomic.Three Mathlib.NumberTheory.NumberField.Discriminant.Different Mathlib.NumberTheory.NumberField.Ideal.Basic Mathlib.NumberTheory.RamificationInertia.Unramified Mathlib.RingTheory.DedekindDomain.Different Mathlib.RingTheory.DedekindDomain.LinearDisjoint Mathlib.RingTheory.Etale.Locus Mathlib.RingTheory.Etale.QuasiFinite Mathlib.RingTheory.Grassmannian Mathlib.RingTheory.LocalRing.Module Mathlib.RingTheory.PicardGroup Mathlib.RingTheory.RingHom.Smooth Mathlib.RingTheory.Smooth.Fiber Mathlib.RingTheory.Smooth.Local Mathlib.RingTheory.Smooth.Locus Mathlib.RingTheory.Smooth.NoetherianDescent Mathlib.RingTheory.Smooth.StandardSmoothOfFree Mathlib.RingTheory.Spectrum.Prime.FreeLocus Mathlib.RingTheory.Unramified.LocalRing Mathlib.RingTheory.ZariskisMainTheorem |
3 |
20 filesMathlib.Algebra.Homology.DerivedCategory.Basic Mathlib.Algebra.Homology.DerivedCategory.ExactFunctor Mathlib.Algebra.Homology.DerivedCategory.HomologySequence Mathlib.Algebra.Homology.DerivedCategory.Linear Mathlib.Algebra.Homology.DerivedCategory.ShortExact Mathlib.Algebra.Homology.DerivedCategory.SingleTriangle Mathlib.Algebra.Homology.DerivedCategory.SmallShiftedHom Mathlib.Algebra.Homology.HomologicalComplexAbelian Mathlib.Algebra.Homology.HomotopyCategory.Acyclic Mathlib.Algebra.Homology.HomotopyCategory.HomologicalFunctor Mathlib.Algebra.Homology.HomotopyCategory.ShortExact Mathlib.RingTheory.Etale.Field Mathlib.RingTheory.Etale.Kaehler Mathlib.RingTheory.Flat.EquationalCriterion Mathlib.RingTheory.Frobenius Mathlib.RingTheory.Polynomial.UniversalFactorizationRing Mathlib.RingTheory.RingHom.Unramified Mathlib.RingTheory.Smooth.Field Mathlib.RingTheory.Unramified.Field Mathlib.RingTheory.Unramified.Locus |
4 |
Mathlib.Algebra.Homology.DerivedCategory.Ext.Map |
10 |
3 filesMathlib.RingTheory.LocalProperties.InjectiveDimension Mathlib.RingTheory.LocalProperties.ProjectiveDimension Mathlib.RingTheory.QuasiFinite.Polynomial |
13 |
Mathlib.RingTheory.TotallySplit |
15 |
12 filesMathlib.RingTheory.Etale.Basic Mathlib.RingTheory.Etale.Pi Mathlib.RingTheory.Etale.StandardEtale Mathlib.RingTheory.Extension.Cotangent.Basis Mathlib.RingTheory.Extension.Cotangent.LocalizationAway Mathlib.RingTheory.QuasiFinite.Basic Mathlib.RingTheory.QuasiFinite.Weakly Mathlib.RingTheory.RingHom.QuasiFinite Mathlib.RingTheory.Smooth.AdicCompletion Mathlib.RingTheory.Smooth.Basic Mathlib.RingTheory.Smooth.Pi Mathlib.RingTheory.Smooth.StandardSmoothCotangent |
16 |
7 filesMathlib.Algebra.Module.Presentation.Differentials Mathlib.RingTheory.Extension.Cotangent.BaseChange Mathlib.RingTheory.Extension.Cotangent.Basic Mathlib.RingTheory.Extension.Cotangent.Free Mathlib.RingTheory.Finiteness.ModuleFinitePresentation Mathlib.RingTheory.Kaehler.JacobiZariski Mathlib.RingTheory.Smooth.Kaehler |
17 |
3 filesMathlib.RingTheory.LocalProperties.Injective Mathlib.RingTheory.LocalProperties.Projective Mathlib.RingTheory.Localization.Free |
18 |
Mathlib.Algebra.Module.FinitePresentation Mathlib.Algebra.Module.Presentation.Finite |
93 |
Mathlib.RingTheory.Regular.Depth |
458 |
Mathlib.RingTheory.Regular.Category |
491 |
Mathlib.RingTheory.TensorProduct.IsBaseChangeRightExact (new file) |
1179 |
Mathlib.RingTheory.Flat.IsBaseChange (new file) |
1399 |
Mathlib.Algebra.Homology.DerivedCategory.Ext.Bijection (new file) |
1559 |
Mathlib.Algebra.Category.ModuleCat.Ext.Ulift (new file) |
1665 |
Mathlib.Algebra.Category.ModuleCat.Baer (new file) |
1897 |
Mathlib.Algebra.Category.ModuleCat.InjectiveDimension (new file) |
1916 |
Mathlib.Algebra.Category.ModuleCat.Ext.BaseChange (new file) |
1932 |
Mathlib.RingTheory.Gorenstein.Defs (new file) |
1950 |
Mathlib.RingTheory.Regular.ProjectiveDimension (new file) |
2206 |
Mathlib.RingTheory.Regular.Ischebeck (new file) |
2307 |
Mathlib.RingTheory.Regular.InjectiveDimension (new file) |
2377 |
Mathlib.RingTheory.CohenMacaulay.Basic (new file) |
2411 |
Mathlib.RingTheory.Gorenstein.CohenMacaulay (new file) |
2442 |
Declarations diff
+ CategoryTheory.Abelian.Ext.isBaseChange_aux
+ CategoryTheory.Abelian.Ext.pow_mono_of_mono
+ CategoryTheory.Abelian.Ext.smul_id_postcomp_eq_zero_of_mem_ann
+ CategoryTheory.isBaseChange_hom
+ Ext.isBaseChange
+ Ext.isBaseChange'
+ Ext.isBaseChangeMap
+ Ext.isBaseChangeMap'
+ Ext.isBaseChangeMap_aux
+ Ext.isBaseChangeMap_aux'
+ Ext.isLocalizedModule
+ Ext.isLocalizedModule'
+ Ext.isLocalizedModuleMap
+ Ext.isLocalizedModuleMap'
+ ExtendScalars'.map'
+ ExtendScalars'.map'_comp
+ ExtendScalars'.map'_id
+ ExtendScalars'.obj'
+ Function.Bijective.subsingleton_congr
+ Functor.mapExt_bijective_of_preservesInjectiveObjects
+ Functor.mapExt_bijective_of_preservesProjectiveObjects
+ Functor.mapShiftedHom_singleδ
+ Functor.mapTriangleOfSESδ
+ Ideal.depth
+ Ideal.depth_eq_of_iso
+ Ideal.depth_quotSMulTop_succ_eq_moduleDepth
+ Ideal.ofList_reverse
+ Ideal.quotOfListSMulTopEquivQuotSMulTopOuter
+ IsBaseChange.comp_equiv
+ IsBaseChange.of_equiv_left
+ IsBaseChange.of_equiv_right
+ IsBaseChange.of_left_exact
+ IsBaseChange.of_right_exact
+ IsCohenMacaulayLocalRing
+ IsCohenMacaulayLocalRing.of_isLocalRing_of_isCohenMacaulayRing
+ IsCohenMacaulayRing
+ IsCohenMacaulayRing.of_isCohenMacaulayLocalRing
+ IsGorensteinLocalRing
+ IsGorensteinLocalRing.of_ringEquiv
+ IsGorensteinRing
+ IsLocalRing.ResidueField.map_bijective_of_surjective
+ IsLocalRing.ResidueField.map_injective
+ IsLocalRing.depth
+ IsLocalRing.depth_eq_of_algebraMap_surjective
+ IsLocalRing.depth_eq_of_iso
+ IsLocalRing.depth_eq_of_ringEquiv
+ IsLocalRing.depth_eq_sSup_length_regular
+ IsLocalRing.depth_quotSMulTop_succ_eq_moduleDepth
+ IsLocalRing.depth_quotient_regular_sequence_add_length_eq_depth
+ IsLocalRing.depth_quotient_regular_succ_eq_depth
+ IsLocalRing.depth_quotient_span_regular_succ_eq_depth
+ IsLocalRing.ideal_depth_eq_sSup_length_regular
+ IsLocalRing.ideal_depth_le_depth
+ LinearEquiv.conj_symm_exact_iff_exact
+ LinearMapOfSemiLinearMapAlgebraMap
+ Module.FinitePresentation.exists_fin'
+ Module.FinitePresentation.isBaseChange_map
+ ModuleCat.IsCohenMacaulay
+ ModuleCat.IsCohenMacaulay_of_iso
+ ModuleCat.depth_eq_supportDim_of_cohenMacaulay
+ ModuleCat.depth_eq_supportDim_unbot_of_cohenMacaulay
+ ModuleCat.exists_isRegular_of_exists_subsingleton_ext
+ ModuleCat.exists_isRegular_tfae
+ ModuleCat.extLinearEquivOfLinearEquiv
+ ModuleCat.extSemiLinearEquivOfSemiLinearEquiv
+ ModuleCat.extUliftLinearEquiv
+ ModuleCat.extUliftLinearEquiv_toLinearMap
+ ModuleCat.extendScalars'.mapExtLinearMap
+ ModuleCat.extendScalars'.mapExtLinearMap_eq_mapExt
+ ModuleCat.extendScalars'_map_LinearMap
+ ModuleCat.extendScalars'_map_LinearMap_eq_mapAddHom
+ ModuleCat.isCohenMacaulay_iff
+ ModuleCat.iso_extendScalars'_of_isBaseChange
+ ModuleCat.iso_extendScalars'_of_isBaseChange'
+ ModuleCat.restrictScalars_additive
+ ModuleCat.restrictScalars_fullyFaithful_of_surjective
+ ModuleCat.restrictScalars_map_exact
+ ModuleCat.restrictScalars_map_exact'
+ ModuleCat.restrictScalars_preservesFiniteColimits
+ ModuleCat.restrictScalars_preservesFiniteLimits
+ ModuleCat.subsingleton_ext_of_exists_isRegular
+ Q_obj_single_obj
+ SemiLinearMapAlgebraMapOfLinearMap
+ Submodule.comap_lt_top_of_lt_range
+ Submodule.quotOfListSMulTopEquivQuotSMulTopOuter
+ _root_.LinearEquiv.comp_snd_exact_iff_exact
+ _root_.LinearEquiv.fst_comp_exact_iff_exact
+ add_one_eq_top_iff
+ add_one_le_iff'
+ add_one_le_natCast_iff
+ add_one_le_zero_iff
+ associatedPrimes_self_eq_minimalPrimes
+ associated_prime_eq_minimalPrimes_isCohenMacaulay
+ associated_prime_minimal_of_isCohenMacaulay
+ coe_eq_natCast
+ depth_eq_dim_quotient_associated_prime_of_isCohenMacaulay
+ depth_le_ringKrullDim
+ depth_le_ringKrullDim_associatedPrime
+ depth_le_supportDim
+ depth_ne_top
+ depth_quotient_regular_sequence_add_length_eq_depth
+ descShortComplex_naturality
+ descShortComplex_triangleOfSESδ
+ exist_nat_eq'
+ extClass_comp_mapExt_bijective
+ extClass_postcomp_bijective_of_isSMulRegular
+ extRestrictScalarsSemiLinearEquiv
+ extRestrictScalarsSemiLinearMap
+ extSemiLinearEquivOfSemiLinearEquiv_equal_universe
+ ext_quotient_one_subsingleton_iff
+ ext_quotient_regular_sequence_length
+ ext_residueField_subsingleton_iff
+ ext_subsingleton_of_all_gt
+ ext_subsingleton_of_lt_moduleDepth
+ ext_subsingleton_of_quotients
+ ext_subsingleton_of_quotients'
+ ext_subsingleton_of_support_subset
+ ext_succ_nontrivial_of_eq_of_le
+ ext_vanish_of_for_all_finite
+ ext_vanish_of_residueField_vanish
+ extendScalars'
+ extendScalars'_map_exact
+ hasInjectiveDimensionLT_of_linearEquiv
+ hasInjectiveDimensionLT_of_semiLinearEquiv
+ hasProjectiveDimensionLE_finsupp_quotient_regular
+ ideal_depth_quotient_regular_sequence_add_length_eq_ideal_depth
+ injectiveDimension_eq_depth
+ injectiveDimension_eq_of_linearEquiv
+ injectiveDimension_eq_of_semiLinearEquiv
+ injectiveDimension_eq_ringKrullDim_of_isGorensteinLocalRing
+ injectiveDimension_eq_sInf_of_finite
+ injectiveDimension_lt_iff_of_finite
+ injectiveDimension_quotSMulTop_succ_eq_injectiveDimension
+ injectiveDimension_quotient_span_regular
+ injective_of_subsingleton_ext_quotient_one
+ instance (M N : ModuleCat.{v'} S) : IsScalarTower R S (M ⟶ N)
+ instance (M N : ModuleCat.{v'} S) : Module R (M ⟶ N)
+ instance (M N : Type*) [AddCommGroup M] [AddCommGroup N] [Module R M] [Module R N]
+ instance (S : Submonoid R) : Small.{v} (Localization S)
+ instance (n : ℕ) (M N : ModuleCat.{v'} S) : IsScalarTower R S (Ext M N n)
+ instance (n : ℕ) (M N : ModuleCat.{v'} S) : Module R (Ext M N n)
+ instance (p : Ideal R) [p.IsPrime] : Small.{v} p.ResidueField
+ instance : (ModuleCat.restrictScalars.{v} f).Additive
+ instance : (extendScalars' R S).Additive
+ instance : (restrictScalars (RingHomClass.toRingHom e)).IsEquivalence
+ instance : Limits.PreservesFiniteColimits (ModuleCat.restrictScalars.{v} f) := by
+ instance : Limits.PreservesFiniteLimits (ModuleCat.restrictScalars.{v} f) := by
+ instance [F.PreservesZeroMorphisms] {J : Type*} [Category* J] [HasColimitsOfShape J C]
+ instance [F.PreservesZeroMorphisms] {J : Type*} [Category* J] [HasLimitsOfShape J C]
+ instance [HasFiniteColimits C] [F.PreservesZeroMorphisms] [PreservesFiniteColimits F] :
+ instance [HasFiniteLimits C] [F.PreservesZeroMorphisms] [PreservesFiniteLimits F] :
+ instance [IsCohenMacaulayLocalRing R] : (ModuleCat.of R R).IsCohenMacaulay
+ instance [Module.Flat R S] : Limits.PreservesFiniteColimits (extendScalars' R S) := by
+ instance [Module.Flat R S] : Limits.PreservesFiniteLimits (extendScalars' R S) := by
+ instance [Small.{v} R] (M : Type v) [AddCommGroup M] [Module R M] (S : Submonoid R) :
+ isCohenMacaulayLocalRing_def
+ isCohenMacaulayLocalRing_iff
+ isCohenMacaulayLocalRing_localization_atPrime
+ isCohenMacaulayLocalRing_of_isGorensteinLocalRing
+ isCohenMacaulayLocalRing_of_ringEquiv
+ isCohenMacaulayLocalRing_of_ringKrullDim_le_depth
+ isCohenMacaulayRing_def
+ isCohenMacaulayRing_def'
+ isCohenMacaulayRing_iff
+ isCohenMacaulayRing_of_ringEquiv
+ isGorensteinLocalRing_def
+ isGorensteinRing_def
+ isGorensteinRing_def'
+ isGorensteinRing_of_ringEquiv
+ isLocalization_at_prime_prime_depth_le_depth
+ isLocalize_at_prime_depth_eq_of_isCohenMacaulay
+ isLocalize_at_prime_dim_eq_prime_depth_of_isCohenMacaulay
+ isLocalize_at_prime_isCohenMacaulay_of_isCohenMacaulay
+ isLocalizedModule_map_of_disjoint
+ isLocalizedModule_map_of_disjoint_map
+ isLocalizedModule_quotSMulTop_isLocalizedModule_map
+ iso_restrictScalars
+ localize_at_prime_depth_eq_of_isCohenMacaulay
+ localize_at_prime_isCohenMacaulay_of_isCohenMacaulay
+ lt_zero_iff_eq_bot
+ mapExactFunctor_comp
+ mapExactFunctor_extClass
+ mapExactFunctor_mk₀
+ mapExactFunctor₀
+ mapHomologicalComplexIso_hom_descShortComplex
+ moduleDepth
+ moduleDepth_eq_depth_of_supp_eq
+ moduleDepth_eq_find
+ moduleDepth_eq_iff
+ moduleDepth_eq_moduleDepth_shrink
+ moduleDepth_eq_of_iso_fst
+ moduleDepth_eq_of_iso_snd
+ moduleDepth_eq_sSup_length_regular
+ moduleDepth_eq_sup_nat
+ moduleDepth_eq_top_iff
+ moduleDepth_eq_zero_of_hom_nontrivial
+ moduleDepth_ge_depth_sub_dim
+ moduleDepth_ge_min_of_shortExact_fst_fst
+ moduleDepth_ge_min_of_shortExact_fst_snd
+ moduleDepth_ge_min_of_shortExact_snd_fst
+ moduleDepth_ge_min_of_shortExact_snd_snd
+ moduleDepth_ge_min_of_shortExact_trd_fst
+ moduleDepth_ge_min_of_shortExact_trd_snd
+ moduleDepth_lt_top_iff
+ moduleDepth_quotSMulTop_succ_eq_moduleDepth
+ moduleDepth_quotient_regular_sequence_add_length_eq_moduleDepth
+ nontrivial_of_islocalizedModule
+ projectiveDimension_eq_zero_of_projective
+ projectiveDimension_quotSMulTop_eq_succ_of_isSMulRegular
+ projectiveDimension_quotient_eq_length
+ projectiveDimension_quotient_regular_sequence
+ quotSMulTopLinearEquiv
+ quotSMulTopLinearMap
+ quotSMulTop_ext_equiv_ext_quotSMulTop
+ quotSMulTop_isCohenMacaulay_iff_isCohenMacaulay
+ quotSMulTop_isLocalizedModule_map
+ quotient_prime_ringKrullDim_ne_bot
+ quotient_regular_isCohenMacaulay_iff_isCohenMacaulay
+ quotient_regular_isGorenstein_iff_isGorenstein
+ quotient_regular_sequence_isCohenMacaulay_iff_isCohenMacaulay
+ quotient_regular_smul_top_isCohenMacaulay_iff_isCohenMacaulay
+ quotient_span_regular_isCohenMacaulay_iff_isCohenMacaulay
+ quotient_span_regular_isGorenstein_iff_isGorenstein
+ ring_depth_invariant
+ ring_depth_uLift
+ supportDim_le_injectiveDimension
+ triangleOfSESδ_naturality
You can run this locally as follows
## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>The doc-module for scripts/pr_summary/declarations_diff.sh contains some details about this script.
Increase in tech debt: (relative, absolute) = (4.23, 0.01)
| Current number | Change | Type |
|---|---|---|
| 633 | 1 | erw |
| 8776 | 49 | backward.isDefEq |
Current commit 465cf261c5
Reference commit 56e100aabd
You can run this locally as
./scripts/reporting/technical-debt-metrics.sh pr_summary
- The
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
|
This pull request has conflicts, please merge |
|
This pull request has conflicts, please merge |
|
This pull request has conflicts, please merge |
…on-of-quotSMulTop
…on-in-LinearEquiv
…on-of-quotSMulTop
|
This pull request has conflicts, please merge |
In this PR, we give the definition of Gorenstein local ring and proved it is Cohen--Macaulay.
Extcommute with flat base change #33369