FLT/Slop/DimensionTheorem/Main.lean

GitHub source file

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

The dimension theorem for Noetherian local rings

For a Noetherian local ring (R, 𝔪), the following three quantities coincide (Atiyah–Macdonald, Thm. 11.14; Stacks Project, tag 00KQ):

The proof is the classical cycle dim ≤ d ≤ δ ≤ dim:

Main results

Formal scope

This development identifies dimension with the polynomial-growth degree of the Hilbert–Samuel function; it does not construct the eventual Hilbert–Samuel polynomial itself (the Hilbert–Serre theorem), for which the growth-order and polynomial-degree definitions of d(R) agree. The results depend only on the standard axioms (propext, Classical.choice, Quot.sound); the development is sorry-free.

Imports (3)
Imported by 2 files
  1. theorem DimensionTheorem.ringKrullDim_le_growthDeg dim R ≤ d(R) line 58 source

    Source documentation

    dim R ≤ d(R).

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: CommRing, IsLocalRing, IsNoetherianRing, LE.le, WithBot, ENat, ringKrullDim, DimensionTheorem.growthDeg

    Proof uses: DimensionTheorem.ringKrullDim_le_of_growthLE, DimensionTheorem.growthLE_hilbertSamuel_growthDeg

    10 instances, coercions and auxiliary constants left out.

    theorem ringKrullDim_le_growthDeg :
        ringKrullDim R ≤ (growthDeg R : WithBot ℕ∞) :=
    …

    Mentions: DimensionTheorem.growthDeg

  2. theorem DimensionTheorem.ringKrullDim_eq_growthDeg The dimension theorem for Noetherian local rings, first equality: the Krull dimension equals the growth degree of the Hilbert–Samuel function line 64 source

    Source documentation

    The dimension theorem for Noetherian local rings, first equality: the Krull dimension equals the growth degree of the Hilbert–Samuel function.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: CommRing, IsLocalRing, IsNoetherianRing, Eq, WithBot, ENat, ringKrullDim, DimensionTheorem.growthDeg

    Proof uses: le_antisymm, DimensionTheorem.ringKrullDim_le_growthDeg, Trans.trans, LE.le, DimensionTheorem.minGenPrimary, cast, Nat, Eq.symm, Iff.mpr, Nat.cast_le, DimensionTheorem.growthDeg_le_minGenPrimary, DimensionTheorem.minGenPrimary_le_ringKrullDim

    49 instances, coercions and auxiliary constants left out.

    Tactic trace: 3 steps

    Open to load the checked before-and-after goal states.

    theorem ringKrullDim_eq_growthDeg :
        ringKrullDim R = (growthDeg R : WithBot ℕ∞) := by
    …

    Mentions: DimensionTheorem.growthDeg

  3. theorem DimensionTheorem.dimension_theorem The dimension theorem for Noetherian local rings: dim R = d(R) = δ(R) line 74 source

    Source documentation

    The dimension theorem for Noetherian local rings: dim R = d(R) = δ(R).

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: CommRing, IsLocalRing, IsNoetherianRing, And, Eq, WithBot, ENat, ringKrullDim, DimensionTheorem.growthDeg, DimensionTheorem.minGenPrimary

    Proof uses: And.intro, DimensionTheorem.ringKrullDim_eq_growthDeg, DimensionTheorem.ringKrullDim_eq_minGenPrimary

    10 instances, coercions and auxiliary constants left out.

    theorem dimension_theorem :
        ringKrullDim R = (growthDeg R : WithBot ℕ∞) ∧
          ringKrullDim R = (minGenPrimary R : WithBot ℕ∞) :=
    …

    Mentions: DimensionTheorem.growthDeg, DimensionTheorem.minGenPrimary

  4. theorem DimensionTheorem.growthDeg_eq_minGenPrimary The three quantities as natural numbers: d(R) = δ(R) line 80 source

    Source documentation

    The three quantities as natural numbers: d(R) = δ(R).

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: CommRing, IsLocalRing, IsNoetherianRing, Eq, Nat, DimensionTheorem.growthDeg, DimensionTheorem.minGenPrimary

    Proof uses: WithBot, ENat, ringKrullDim, DimensionTheorem.ringKrullDim_eq_growthDeg, DimensionTheorem.ringKrullDim_eq_minGenPrimary, Eq.trans, Eq.symm, cast

    13 instances, coercions and auxiliary constants left out.

    Tactic trace: 4 steps

    Open to load the checked before-and-after goal states.

    theorem growthDeg_eq_minGenPrimary : growthDeg R = minGenPrimary R := by
    …

    Mentions: DimensionTheorem.growthDeg, DimensionTheorem.minGenPrimary