Skip to content

feat(Mathlib/RingTheory/LocalRing): extended maximal ideal lies in Jacobson radical for finite extensions#108

Open
chrisflav wants to merge 2 commits into
chrisflav:masterfrom
chrisflav-agents:pr/maximalIdeal-map-jacobson-bot
Open

feat(Mathlib/RingTheory/LocalRing): extended maximal ideal lies in Jacobson radical for finite extensions#108
chrisflav wants to merge 2 commits into
chrisflav:masterfrom
chrisflav-agents:pr/maximalIdeal-map-jacobson-bot

Conversation

@chrisflav
Copy link
Copy Markdown
Owner

For a local ring A and a finite A-algebra B, the image of the maximal ideal of A under algebraMap A B lies in the Jacobson radical of B. Three consequences:

  • IsLocalRing.map_maximalIdeal_le_jacobson_bot:
    (maximalIdeal A).map (algebraMap A B) ≤ Ideal.jacobson ⊥.
  • IsLocalRing.isUnit_of_isUnit_quotient_mk_map_maximalIdeal:
    an element of B whose image in B ⧸ m·B is a unit is itself a unit in B.
  • IsLocalRing.iInf_pow_map_maximalIdeal_eq_bot (Noetherian A):
    ⨅ n, (m·B)^n = ⊥ — Krull's intersection theorem for the extended ideal.

Proof goes via integral going-up (Ideal.isMaximal_comap_of_isIntegral_of_isMaximal) for the Jacobson containment, the standard local-hom criterion (isLocalHom_of_le_jacobson_bot) for unit lifting, and Ideal.iInf_pow_smul_eq_bot_of_le_jacobson for Krull intersection.

Extracted from archon's Proetale/Mathlib/RingTheory/Etale/HenselianPair.lean and generalised by dropping the henselian / étale hypotheses (these results only need IsLocalRing A + Module.Finite A B).

…cobson radical for finite extensions

For a local ring `A` and a finite `A`-algebra `B`, the image of the maximal ideal under `algebraMap A B` lies in the Jacobson radical of `B`, units mod `m·B` lift, and (Noetherian) Krull intersection `⨅ (m·B)^n = ⊥` holds.

Extracted from archon's `Proetale/Mathlib/RingTheory/Etale/HenselianPair.lean` and generalised by dropping the henselian hypothesis (these results only need `IsLocalRing A + Module.Finite A B`).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@chrisflav chrisflav added archon Upstreamed from `archon` branch awaiting-auto-review This PR is scheduled to receive an automatic review through orchestra. labels May 25, 2026
…al extensions

Address review on PR chrisflav#108:

* Rename file from `LocalRing/Finite.lean` to `LocalRing/Integral.lean` to
  reflect the actual hypothesis used.
* Weaken `[Module.Finite A B]` to `[Algebra.IsIntegral A B]` in
  `map_maximalIdeal_le_jacobson_bot` and
  `isUnit_of_isUnit_quotient_mk_map_maximalIdeal`.
* State `iInf_pow_map_maximalIdeal_eq_bot` with `[Algebra.IsIntegral A B]`
  and the natural `[IsNoetherianRing B]` hypothesis (instead of
  `[IsNoetherianRing A] [Module.Finite A B]`).
* Add the primitive `comap_eq_maximalIdeal_of_isMaximal`: every maximal ideal
  of `B` contracts to the maximal ideal of `A`. Derive
  `map_maximalIdeal_le_jacobson_bot` as a one-line corollary.
* Expose `isLocalHom_quotient_mk_map_maximalIdeal` as a named lemma; the
  `IsUnit`-flavoured lemma becomes a one-line corollary.
* Update the module docstring accordingly.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@chrisflav chrisflav removed the awaiting-auto-review This PR is scheduled to receive an automatic review through orchestra. label May 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

archon Upstreamed from `archon` branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant