Skip to content

Commit 183af7e

Browse files
committed
refactor(NumberTheory/RamificationInertia/Basic): remove the ring homomorphism from Ideal.ramificationIdx (#37156)
This PR removes the ring homomorphism from `Ideal.ramificationIdx`, following the analogous refactor for `Ideal.inertiaDeg` in #19847. This ring homomorphism is never used in practice, and only makes statements more clunky. Co-authored-by: tb65536 <thomas.l.browning@gmail.com>
1 parent 6ecc71f commit 183af7e

File tree

8 files changed

+95
-104
lines changed

8 files changed

+95
-104
lines changed

Mathlib/NumberTheory/NumberField/Cyclotomic/Ideal.lean

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ theorem map_eq_span_zeta_sub_one_pow :
115115
← Nat.card_eq_fintype_card, IsGalois.card_aut_eq_finrank]
116116

117117
theorem ramificationIdx_span_zeta_sub_one :
118-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 (span {hζ.toInteger - 1}) = p ^ k * (p - 1) := by
118+
ramificationIdx 𝒑 (span {hζ.toInteger - 1}) = p ^ k * (p - 1) := by
119119
have h := isPrime_span_zeta_sub_one p k hζ
120120
rw [← Nat.totient_prime_pow_succ hp.out, ← finrank _ K,
121121
IsDedekindDomain.ramificationIdx_eq_multiplicity _ h, map_eq_span_zeta_sub_one_pow p k hζ,
@@ -154,7 +154,7 @@ theorem inertiaDeg_eq_of_prime_pow (P : Ideal (𝓞 K)) [hP₁ : P.IsPrime] [hP
154154

155155
include hK in
156156
theorem ramificationIdx_eq_of_prime_pow (P : Ideal (𝓞 K)) [hP₁ : P.IsPrime] [hP₂ : P.LiesOver 𝒑] :
157-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 P = p ^ k * (p - 1) := by
157+
ramificationIdx 𝒑 P = p ^ k * (p - 1) := by
158158
rw [eq_span_zeta_sub_one_of_liesOver p k K hK.zeta_spec P, ramificationIdx_span_zeta_sub_one]
159159

160160
include hK in
@@ -186,7 +186,7 @@ theorem inertiaDeg_span_zeta_sub_one' : inertiaDeg 𝒑 (span {hζ.toInteger - 1
186186
exact inertiaDeg_span_zeta_sub_one p 0
187187

188188
theorem ramificationIdx_span_zeta_sub_one' :
189-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 (span {hζ.toInteger - 1}) = p - 1 := by
189+
ramificationIdx 𝒑 (span {hζ.toInteger - 1}) = p - 1 := by
190190
rw [← pow_one p] at hK hζ
191191
rw [ramificationIdx_span_zeta_sub_one p 0 hζ, pow_zero, one_mul]
192192

@@ -210,7 +210,7 @@ theorem inertiaDeg_eq_of_prime (P : Ideal (𝓞 K)) [hP₁ : P.IsPrime] [hP₂ :
210210

211211
include hK in
212212
theorem ramificationIdx_eq_of_prime (P : Ideal (𝓞 K)) [hP₁ : P.IsPrime] [hP₂ : P.LiesOver 𝒑] :
213-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 P = p - 1 := by
213+
ramificationIdx 𝒑 P = p - 1 := by
214214
rw [eq_span_zeta_sub_one_of_liesOver' p K hK.zeta_spec P, ramificationIdx_span_zeta_sub_one']
215215

216216
include hK in
@@ -259,7 +259,7 @@ theorem inertiaDeg_eq_of_not_dvd (hm : ¬ p ∣ m) :
259259
alias inertiaDeg_of_not_dvd := inertiaDeg_eq_of_not_dvd
260260

261261
theorem ramificationIdx_eq_of_not_dvd (hm : ¬ p ∣ m) :
262-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 P = 1 := by
262+
ramificationIdx 𝒑 P = 1 := by
263263
let ζ := (zeta_spec m ℚ K).toInteger
264264
have h₁ : ¬ p ∣ exponent ζ := by
265265
rw [exponent_eq_one_iff.mpr <| adjoin_singleton_eq_top (zeta_spec m ℚ K)]
@@ -377,7 +377,7 @@ theorem inertiaDeg_eq (hn : n = p ^ (k + 1) * m) (hm : ¬ p ∣ m) :
377377
rw [← inertiaDegIn_eq_inertiaDeg 𝒑 P Gal(K/ℚ), inertiaDegIn_eq n K hn hm]
378378

379379
theorem ramificationIdx_eq (hn : n = p ^ (k + 1) * m) (hm : ¬ p ∣ m) :
380-
ramificationIdx (algebraMap ℤ (𝓞 K)) 𝒑 P = p ^ k * (p - 1) := by
380+
ramificationIdx 𝒑 P = p ^ k * (p - 1) := by
381381
have : IsGalois ℚ K := isGalois {n} ℚ K
382382
rw [← ramificationIdxIn_eq_ramificationIdx 𝒑 P Gal(K/ℚ), ramificationIdxIn_eq n K hn hm]
383383

Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ The ramification index of the ideal corresponding to the class of `Q ∈ ℤ[X]`
233233
-/
234234
theorem ramificationIdx_primesOverSpanEquivMonicFactorsMod_symm_apply (hp : ¬ p ∣ exponent θ)
235235
{Q : ℤ[X]} (hQ : Q.map (Int.castRingHom (ZMod p)) ∈ monicFactorsMod θ p) :
236-
ramificationIdx (algebraMap ℤ (𝓞 K)) (span {(p : ℤ)})
236+
ramificationIdx (span {(p : ℤ)})
237237
((primesOverSpanEquivMonicFactorsMod hp).symm
238238
⟨Q.map (Int.castRingHom (ZMod p)), hQ⟩ : Ideal (𝓞 K)) =
239239
multiplicity (Q.map (Int.castRingHom (ZMod p)))
@@ -251,7 +251,7 @@ theorem ramificationIdx_primesOverSpanEquivMonicFactorsMod_symm_apply (hp : ¬ p
251251

252252
theorem ramificationIdx_primesOverSpanEquivMonicFactorsMod_symm_apply' (hp : ¬ p ∣ exponent θ)
253253
{Q : (ZMod p)[X]} (hQ : Q ∈ monicFactorsMod θ p) :
254-
ramificationIdx (algebraMap ℤ (𝓞 K)) (span {(p : ℤ)})
254+
ramificationIdx (span {(p : ℤ)})
255255
((primesOverSpanEquivMonicFactorsMod hp).symm ⟨Q, hQ⟩ : Ideal (𝓞 K)) =
256256
multiplicity Q ((minpoly ℤ θ).map (Int.castRingHom (ZMod p))) := by
257257
obtain ⟨S, rfl⟩ := (map_surjective _ (ZMod.ringHom_surjective (Int.castRingHom (ZMod p)))) Q

Mathlib/NumberTheory/RamificationInertia/Basic.lean

Lines changed: 77 additions & 86 deletions
Large diffs are not rendered by default.

Mathlib/NumberTheory/RamificationInertia/Galois.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ open scoped Classical in
5858
maximal ideal `p` of `A` are the same, which we define as `Ideal.ramificationIdxIn`. -/
5959
noncomputable def ramificationIdxIn {A : Type*} [CommRing A] (p : Ideal A)
6060
(B : Type*) [CommRing B] [Algebra A B] : ℕ :=
61-
if h : ∃ P : Ideal B, P.IsPrime ∧ P.LiesOver p then p.ramificationIdx (algebraMap A B) h.choose
61+
if h : ∃ P : Ideal B, P.IsPrime ∧ P.LiesOver p then p.ramificationIdx h.choose
6262
else 0
6363

6464
open scoped Classical in
@@ -144,7 +144,7 @@ alias isPretransitive_of_isGalois := isPretransitive_of_isGaloisGroup
144144
include G in
145145
/-- All the `Ideal.ramificationIdx` over a fixed maximal ideal are the same. -/
146146
theorem ramificationIdx_eq_of_isGaloisGroup :
147-
ramificationIdx (algebraMap A B) p P = ramificationIdx (algebraMap A B) p Q := by
147+
ramificationIdx p P = ramificationIdx p Q := by
148148
rcases exists_smul_eq_of_isGaloisGroup p P Q G with ⟨σ, rfl⟩
149149
exact (ramificationIdx_map_eq p P (MulSemiringAction.toAlgEquiv A B σ)).symm
150150

@@ -164,7 +164,7 @@ alias inertiaDeg_eq_of_isGalois := inertiaDeg_eq_of_isGaloisGroup
164164
include G in
165165
/-- The `ramificationIdxIn` is equal to any ramification index over the same ideal. -/
166166
theorem ramificationIdxIn_eq_ramificationIdx :
167-
ramificationIdxIn p B = ramificationIdx (algebraMap A B) p P := by
167+
ramificationIdxIn p B = ramificationIdx p P := by
168168
have h : ∃ P : Ideal B, P.IsPrime ∧ P.LiesOver p := ⟨P, hPp, hp⟩
169169
obtain ⟨_, _⟩ := h.choose_spec
170170
rw [ramificationIdxIn, dif_pos h]

Mathlib/NumberTheory/RamificationInertia/Unramified.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ variable {R S T : Type*} [CommRing R] [CommRing S] [CommRing T]
2929
variable [Algebra R S] [Algebra S T] [Algebra R T] [IsScalarTower R S T]
3030

3131
local notation3 "e(" P "|" R ")" =>
32-
Ideal.ramificationIdx (algebraMap _ _) (Ideal.under R P) P
32+
Ideal.ramificationIdx (Ideal.under R P) P
3333

3434
open IsLocalRing Algebra
3535

Mathlib/RingTheory/DedekindDomain/Factorization.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -821,7 +821,7 @@ If `p` is a maximal ideal, then the lift of `p` in an extension is the product o
821821
over `p` to the power the ramification index.
822822
-/
823823
theorem Ideal.map_algebraMap_eq_finset_prod_pow {p : Ideal S} [p.IsMaximal] (hp : p ≠ 0) :
824-
map (algebraMap S R) p = ∏ P ∈ p.primesOver R, P ^ p.ramificationIdx (algebraMap S R) P := by
824+
map (algebraMap S R) p = ∏ P ∈ p.primesOver R, P ^ p.ramificationIdx P := by
825825
classical
826826
have h : map (algebraMap S R) p ≠ 0 := map_ne_bot_of_ne_bot hp
827827
rw [← finprod_heightOneSpectrum_factorization (I := p.map (algebraMap S R)) h]

Mathlib/RingTheory/Ideal/Norm/RelNorm.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ theorem relNorm_eq_pow_of_isPrime_isGalois [p.IsMaximal] [P.IsPrime]
410410
obtain ⟨s, hs⟩ := exists_relNorm_eq_pow_of_isPrime P p
411411
suffices s = p.inertiaDeg P by rwa [this] at hs
412412
have h₀ : ∀ Q ∈ (p.primesOver S).toFinset,
413-
relNorm R Q ^ ramificationIdx (algebraMap R S) p Q = p ^ ((p.ramificationIdxIn S) * s) := by
413+
relNorm R Q ^ ramificationIdx p Q = p ^ ((p.ramificationIdxIn S) * s) := by
414414
intro Q hQ
415415
rw [Set.mem_toFinset] at hQ
416416
have : Q.IsPrime := hQ.1

Mathlib/RingTheory/Localization/AtPrime/Extension.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,8 @@ theorem inertiaDeg_map_eq_inertiaDeg [p.IsMaximal] [P.IsMaximal]
180180
theorem ramificationIdx_map_eq_ramificationIdx [IsDomain R] [IsTorsionFree R S] [IsTorsionFree R Rₚ]
181181
[IsTorsionFree S Sₚ] [IsTorsionFree Rₚ Sₚ] [IsDedekindDomain S] [IsDedekindDomain Rₚ]
182182
[IsDedekindDomain Sₚ] (hp : p ≠ ⊥) [P.IsPrime] :
183-
(maximalIdeal Rₚ).ramificationIdx (algebraMap Rₚ Sₚ) (P.map (algebraMap S Sₚ)) =
184-
p.ramificationIdx (algebraMap R S) P := by
183+
(maximalIdeal Rₚ).ramificationIdx (P.map (algebraMap S Sₚ)) =
184+
p.ramificationIdx P := by
185185
have h₁ : maximalIdeal Rₚ ≠ ⊥ := by
186186
rw [← map_eq_maximalIdeal p]
187187
exact map_ne_bot_of_ne_bot hp
@@ -255,9 +255,9 @@ theorem primesOverEquivPrimesOver_inertiagDeg_eq [p.IsMaximal] (hp : p ≠ ⊥)
255255
theorem primesOverEquivPrimesOver_ramificationIdx_eq (hp : p ≠ ⊥) [NoZeroSMulDivisors R Rₚ]
256256
[NoZeroSMulDivisors S Sₚ] [NoZeroSMulDivisors Rₚ Sₚ] [IsDedekindDomain Rₚ] [IsDedekindDomain Sₚ]
257257
(P : p.primesOver S) :
258-
(maximalIdeal Rₚ).ramificationIdx (algebraMap Rₚ Sₚ)
258+
(maximalIdeal Rₚ).ramificationIdx
259259
(primesOverEquivPrimesOver p Rₚ Sₚ hp P : Ideal Sₚ) =
260-
p.ramificationIdx (algebraMap R S) P.val :=
260+
p.ramificationIdx P.val :=
261261
ramificationIdx_map_eq_ramificationIdx p _ _ _ hp
262262

263263
end IsDedekindDomain

0 commit comments

Comments
 (0)