Skip to content

Commit df8391a

Browse files
committed
address comments
1 parent 710b236 commit df8391a

3 files changed

Lines changed: 20 additions & 4 deletions

File tree

Mathlib/Algebra/Ring/Subring/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -930,7 +930,7 @@ def subringCongr (h : s = t) : s ≃+* t :=
930930

931931
@[simp]
932932
theorem subringCongr_symm (h : s = t) :
933-
(subringCongr h).symm = subringCongr (h.symm) := rfl
933+
(subringCongr h).symm = subringCongr h.symm := rfl
934934

935935
@[simp]
936936
theorem coe_subringCongr_apply (h : s = t) (x : s) :

Mathlib/RingTheory/Ideal/Quotient/Nilpotent.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ theorem Ideal.Quotient.isUnit_mk_pow_iff_notMem [I.IsMaximal] {n : ℕ} (hn : n
9090
rw [isUnit_mk_pow_iff_isUnit_mk I hn, isUnit_iff_ne_zero]
9191
exact Ideal.Quotient.eq_zero_iff_mem.not
9292

93-
theorem Ideal.Quotient.notMem_of_isUnit_mk_pow [I.IsMaximal] {n : ℕ} {x : S} (hx : x ∉ I) :
93+
theorem Ideal.Quotient.isUnit_mk_pow_of_notMem [I.IsMaximal] {n : ℕ} {x : S} (hx : x ∉ I) :
9494
IsUnit (mk (I ^ n) x) := by
9595
by_cases! hn : n = 0
9696
· rw [pow_eq_top_iff.mpr (Or.inr hn)]

Mathlib/RingTheory/Localization/AtPrime/Basic.lean

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -526,15 +526,14 @@ theorem equivQuotMaximalIdeal_symm_apply_mk (x : R) (s : p.primeCompl) :
526526
@[deprecated (since := "2025-11-13")] alias _root_.equivQuotMaximalIdealOfIsLocalization :=
527527
equivQuotMaximalIdeal
528528

529-
set_option backward.isDefEq.respectTransparency false in
530529
/-- The isomorphism `R ⧸ p ^ n ≃+* Rₚ ⧸ maximalIdeal Rₚ ^ n`, where `Rₚ` satisfies
531530
`IsLocalization.AtPrime Rₚ p`. -/
532531
noncomputable
533532
def equivQuotMaximalIdealPow (n : ℕ) : R ⧸ p ^ n ≃+* Rₚ ⧸ IsLocalRing.maximalIdeal Rₚ ^ n := by
534533
refine Subring.topEquiv.symm.trans <| -- R ⧸ p ^ n ≃ (⊤ : Subring (R ⧸ p ^ n))
535534
(RingEquiv.subringCongr ?_).trans <| -- ⊤ = (R ⧸ p ^ n ← Rₚ / ker).range
536535
(IsLocalization.lift fun (u : p.primeCompl) ↦ -- (R ⧸ p ^ n ← Rₚ) => R ⧸ p ^ n ← Rₚ / ker
537-
Ideal.Quotient.notMem_of_isUnit_mk_pow _
536+
Ideal.Quotient.isUnit_mk_pow_of_notMem _
538537
(mem_primeCompl_iff.mp u.prop)).quotientKerEquivRange.symm.trans <|
539538
quotEquivOfEq ?_ -- ker = maximalIdeal ^ n
540539
· symm
@@ -563,6 +562,23 @@ theorem equivQuotMaximalIdealPow_apply_mk (n : ℕ) (x : R) :
563562
ext
564563
simp
565564

565+
/-- `IsLocalization.AtPrime.equivQuotMaximalIdealPow p Rₚ n` as an `R`-algebra isomorphism. -/
566+
noncomputable
567+
def equivQuotMaximalIdealPowₐ (n : ℕ) : (R ⧸ p ^ n) ≃ₐ[R] Rₚ ⧸ IsLocalRing.maximalIdeal Rₚ ^ n
568+
where
569+
__ := equivQuotMaximalIdealPow p Rₚ n
570+
commutes' r := by simp
571+
572+
@[simp]
573+
theorem equivQuotMaximalIdealPowₐ_toRingEquiv (n : ℕ) :
574+
(equivQuotMaximalIdealPowₐ p Rₚ n).toRingEquiv = equivQuotMaximalIdealPow p Rₚ n :=
575+
rfl
576+
577+
@[simp]
578+
theorem coe_equivQuotMaximalIdealPowₐ (n : ℕ) :
579+
⇑(equivQuotMaximalIdealPowₐ p Rₚ n) = ⇑(equivQuotMaximalIdealPow p Rₚ n) :=
580+
rfl
581+
566582
variable {Sₚ : Type*} [CommRing S] [Algebra R S] [CommRing Sₚ] [Algebra S Sₚ] [Algebra R Sₚ]
567583
variable [Algebra Rₚ Sₚ] [IsLocalization (Algebra.algebraMapSubmonoid S p.primeCompl) Sₚ]
568584
variable [IsScalarTower R S Sₚ]

0 commit comments

Comments
 (0)