mathlib4 icon indicating copy to clipboard operation
mathlib4 copied to clipboard

Feat (RingTheory/Ideal/KrullDimension): defined the Krull dimension of a ring.

Open FMLJohn opened this issue 1 year ago • 5 comments

The ring theoretic krull dimension is the order theoretic krull dimension applied to its prime spectrum. Unfolding this definition, it is the length of longest series of prime ideals ordered by inclusion.

@mariainesdff


  • [x] depends on: #11147

FMLJohn avatar Jun 25 '24 21:06 FMLJohn

PR summary 11d3bac1b8

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.AlgebraicGeometry.PrimeSpectrum.Basic 1320 1325 +5 (+0.38%)
Import changes for all files
Files Import difference
42 files Mathlib.AlgebraicGeometry.Morphisms.OpenImmersion Mathlib.AlgebraicGeometry.Modules.Sheaf Mathlib.AlgebraicGeometry.Morphisms.Preimmersion Mathlib.AlgebraicGeometry.PrimeSpectrum.TensorProduct Mathlib.AlgebraicGeometry.Sites.BigZariski Mathlib.AlgebraicGeometry.Morphisms.Basic Mathlib.AlgebraicGeometry.Morphisms.IsIso Mathlib.AlgebraicGeometry.Modules.Presheaf Mathlib.AlgebraicGeometry.Morphisms.UnderlyingMap Mathlib.AlgebraicGeometry.Morphisms.QuasiCompact Mathlib.AlgebraicGeometry.Morphisms.ClosedImmersion Mathlib.AlgebraicGeometry.Noetherian Mathlib.AlgebraicGeometry.Morphisms.RingHomProperties Mathlib.AlgebraicGeometry.Spec Mathlib.AlgebraicGeometry.PrimeSpectrum.Basic Mathlib.AlgebraicGeometry.Pullbacks Mathlib.AlgebraicGeometry.ProjectiveSpectrum.Scheme Mathlib.AlgebraicGeometry.Properties Mathlib.AlgebraicGeometry.Morphisms.Affine Mathlib.AlgebraicGeometry.Morphisms.Separated Mathlib.AlgebraicGeometry.Modules.Tilde Mathlib.AlgebraicGeometry.PrimeSpectrum.Noetherian Mathlib.AlgebraicGeometry.PrimeSpectrum.Module Mathlib.AlgebraicGeometry.StructureSheaf Mathlib.AlgebraicGeometry.FunctionField Mathlib.AlgebraicGeometry.Morphisms.Constructors Mathlib.AlgebraicGeometry.OpenImmersion Mathlib.AlgebraicGeometry.AffineScheme Mathlib.AlgebraicGeometry.Limits Mathlib.AlgebraicGeometry.Morphisms.QuasiSeparated Mathlib.AlgebraicGeometry.PrimeSpectrum.Maximal Mathlib.AlgebraicGeometry.Morphisms.FinitePresentation Mathlib.AlgebraicGeometry.Morphisms.FiniteType Mathlib.AlgebraicGeometry.Scheme Mathlib.AlgebraicGeometry.Gluing Mathlib.AlgebraicGeometry.Cover.Open Mathlib.AlgebraicGeometry.Stalk Mathlib.AlgebraicGeometry.GammaSpecAdjunction Mathlib.AlgebraicGeometry.GluingOneHypercover Mathlib.AlgebraicGeometry.Restrict Mathlib.AlgebraicGeometry.PrimeSpectrum.IsOpenComapC Mathlib.AlgebraicGeometry.Morphisms.UniversallyClosed
5
Mathlib.RingTheory.KrullDimension.Basic 1055
Mathlib.RingTheory.KrullDimension.Field 1056

Declarations diff

+ LTSeries.length_le_krullDim + PrimeSpectrum.topologicalKrullDim_eq_ringKrullDim + RingEquiv.ringKrullDim + krullDim_nonpos_of_subsingleton + ringKrullDim + ringKrullDim_eq_bot_of_subsingleton + ringKrullDim_eq_of_ringEquiv + ringKrullDim_eq_zero_of_field + ringKrullDim_eq_zero_of_isField + ringKrullDim_le_of_surjective + ringKrullDim_nonneg_of_nontrivial + ringKrullDim_quotient_le

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.

github-actions[bot] avatar Jun 25 '24 21:06 github-actions[bot]

Note that the basic part of this PR is actually #11147

jjaassoonn avatar Jun 26 '24 09:06 jjaassoonn

Note that the basic part of this PR is actually #11147

Ah thanks, I didn't know about that one. I will list it as a dependency.

mariainesdff avatar Jun 26 '24 11:06 mariainesdff

This PR/issue depends on:

  • ~~leanprover-community/mathlib4#11147~~ By Dependent Issues (🤖). Happy coding!

What happened with the idea of having a predicate krullDimLT that asserted that the krullDim of a given ring/space/... was LT a given natural number? Is there a discussion recorded somewhere with the pros and cons and the reason for going with a function valued in WithTop (WithBot _)?

jcommelin avatar Jul 15 '24 11:07 jcommelin

What happened with the idea of having a predicate krullDimLT that asserted that the krullDim of a given ring/space/... was LT a given natural number? Is there a discussion recorded somewhere with the pros and cons and the reason for going with a function valued in WithTop (WithBot _)?

No I have checked the streams on Zulip and I don't think there is any recorded discussion on that. The reason why we use WithTop (WithBot _) is that we eventually want ⊥ + ⊺ = ⊥. It is true that for topological spaces X and Y, dim(X × Y) = dim(X) + dim(Y). Now if X is empty and Y is infinite-dimensional, then X × Y is also empty. So we have ⊥ + ⊺ = dim(X) + dim(Y) = dim(X × Y) = ⊥.

FMLJohn avatar Jul 15 '24 14:07 FMLJohn

I think Johan is referring to @kbuzzard's idea that instead of defining krullDim, we can introduce a family of predicate krullDimLT, then the negative infinity case is krullDimLT 0, positive infinity case is \forall n, \not krullDimLT n and krull dimension equal to n is krullDimLT (n +1) and \not krullDimLT n

jjaassoonn avatar Jul 15 '24 18:07 jjaassoonn

Also please use variable {R S : Type*} [CommRing R] [CommRing S] at the top of the file.

Done!

FMLJohn avatar Jul 20 '24 18:07 FMLJohn

I think Johan is referring to @kbuzzard's idea that instead of defining krullDim, we can introduce a family of predicate krullDimLT, then the negative infinity case is krullDimLT 0, positive infinity case is \forall n, \not krullDimLT n and krull dimension equal to n is krullDimLT (n +1) and \not krullDimLT n

I have asked @kbuzzard recently and he said that both WithBot (WithTop Nat) and krullDimLT have advantages. We can define krullDimLT in another PR.

FMLJohn avatar Jul 20 '24 18:07 FMLJohn

Thanks! maintainer merge

erdOne avatar Jul 24 '24 10:07 erdOne

🚀 Pull request has been placed on the maintainer queue by erdOne.

github-actions[bot] avatar Jul 24 '24 10:07 github-actions[bot]

@FMLJohn @erdOne @mattrobball what is the status here? I think this one fell through some cracks in the queue.

jcommelin avatar Aug 30 '24 06:08 jcommelin

It looks like #14721 did not deprecate anything or provide an adaptation path here. @apnelson1 can you find this PR? Thanks.

mattrobball avatar Sep 26 '24 12:09 mattrobball

bors merge

mattrobball avatar Sep 28 '24 16:09 mattrobball

Pull request successfully merged into master.

Build succeeded:

mathlib-bors[bot] avatar Sep 28 '24 17:09 mathlib-bors[bot]