FLT/Slop/DimensionTheorem/DimEqDelta.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.
Project sources: Pinned project documentation, Pinned FLT blueprint introduction
4 declarations, 0 contain sorry, 0 declared as axioms
dim R = δ(R)
The Krull dimension of a Noetherian local ring equals the minimal number of
generators of an ideal of definition (an 𝔪-primary ideal) — the equivalence
(1) ↔ (3) of the dimension theorem (Stacks Project, tag 00KQ).
Both inequalities are assembled from Krull's height theorem and its converse,
which are already in Mathlib (Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,
He–Jiang–Merten–Wang–Yang–Zhang, 2025):
dim R ≤ δ(R)(ringKrullDim_le_minGenPrimary): ifIis an ideal of definition then𝔪is minimal overI(maximalIdeal_mem_minimalPrimes), so Krull's height theorem (Ideal.height_le_spanRank_toENat_of_mem_minimalPrimes) boundsdim R = height 𝔪by the number of generators ofI.δ(R) ≤ dim R(minGenPrimary_le_ringKrullDim): the converse of the height theorem (Ideal.exists_spanRank_eq_and_height_eq) producesJ ≤ 𝔪generated byheight 𝔪elements withheight J = height 𝔪. Every minimal prime ofJthen has heightdim R, hence equals𝔪, soJ.radical = 𝔪:Jis a system of parameters forR.
The classical proof of the second inequality constructs a system of parameters
by prime avoidance (Atiyah–Macdonald, Ch. 11); here that content is packaged
inside Mathlib's exists_spanRank_eq_and_height_eq.
Main result
DimensionTheorem.ringKrullDim_eq_minGenPrimary:ringKrullDim R = δ(R)forRNoetherian local.
Imports (1)
Imported by 2 files
- lemma
DimensionTheorem.maximalIdeal_mem_minimalPrimesIfIhas radical𝔪, then𝔪is minimal overIline 52 sourceSource documentation
If
Ihas radical𝔪, then𝔪is minimal overI.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
CommRing,IsLocalRing,Ideal,Eq,Ideal.radical,IsLocalRing.maximalIdeal,Membership.mem,Set,Ideal.minimalPrimesProof uses:
Eq.mpr,id,congrArg,Eq.symm,Ideal.radical_minimalPrimes,Singleton.singleton,Ideal.minimalPrimes_eq_subsingleton_self,Set.mem_singleton9 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
lemma maximalIdeal_mem_minimalPrimes {I : Ideal R} (h : I.radical = maximalIdeal R) : maximalIdeal R ∈ I.minimalPrimes := by … - theorem
DimensionTheorem.ringKrullDim_le_minGenPrimaryDimension theorem, easy inequality:dim R ≤ δ(R), from Krull's height theorem line 59 sourceSource documentation
Dimension theorem, easy inequality:
dim R ≤ δ(R), from Krull's height theorem.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
CommRing,IsLocalRing,IsNoetherianRing,LE.le,WithBot,ENat,ringKrullDim, DimensionTheorem.minGenPrimaryProof uses:
Set.Nonempty,Nat,Set.ofPred,Exists,Ideal,And,Eq,Ideal.radical,IsLocalRing.maximalIdeal,Submodule.spanFinrank,Exists.intro,Membership.mem,Set,And.intro,Ideal.IsPrime.radical,Ideal.IsMaximal.isPrime,rfl,Nat.sInf_mem,Ideal.height,OrderRingHomand 20 more43 instances, coercions and auxiliary constants left out.
Tactic trace: 8 steps
Open to load the checked before-and-after goal states.
theorem ringKrullDim_le_minGenPrimary : ringKrullDim R ≤ (minGenPrimary R : WithBot ℕ∞) := by …Mentions: DimensionTheorem.minGenPrimary
- theorem
DimensionTheorem.minGenPrimary_le_ringKrullDimDimension theorem, converse inequality:δ(R) ≤ dim R; there exists a system of parameters, i.e. an𝔪-primary ideal generated bydim Relements line 81 sourceSource documentation
Dimension theorem, converse inequality:
δ(R) ≤ dim R; there exists a system of parameters, i.e. an𝔪-primary ideal generated bydim Relements.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
CommRing,IsLocalRing,IsNoetherianRing,LE.le,WithBot,ENat, DimensionTheorem.minGenPrimary,ringKrullDimProof uses:
Ne,Ideal,IsLocalRing.maximalIdeal,Top.top,Ideal.IsMaximal.ne_top,And,Eq,Cardinal,Submodule.spanRank,Ideal.height,Exists,Ideal.exists_spanRank_eq_and_height_eq,Iff.mp,top_le_iff,Eq.rec,Submodule.spanFinrank,Cardinal.ofENat_eq_nat,Eq.mpr,id,congrArgand 35 more77 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
theorem minGenPrimary_le_ringKrullDim : (minGenPrimary R : WithBot ℕ∞) ≤ ringKrullDim R := by …Mentions: DimensionTheorem.minGenPrimary
- theorem
DimensionTheorem.ringKrullDim_eq_minGenPrimarydim R = δ(R)for a Noetherian local ring line 116 sourceSource documentation
dim R = δ(R)for a Noetherian local ring.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
CommRing,IsLocalRing,IsNoetherianRing,Eq,WithBot,ENat,ringKrullDim, DimensionTheorem.minGenPrimaryProof uses:
le_antisymm, DimensionTheorem.ringKrullDim_le_minGenPrimary, DimensionTheorem.minGenPrimary_le_ringKrullDim16 instances, coercions and auxiliary constants left out.
theorem ringKrullDim_eq_minGenPrimary : ringKrullDim R = (minGenPrimary R : WithBot ℕ∞) := …Mentions: DimensionTheorem.minGenPrimary