Skip to content

Commit 26fffff

Browse files
committed
refactor: rename Splits.splits_of_dvd to Splits.of_dvd (leanprover-community#32815)
This PR renames `Splits.splits_of_dvd` to `Splits.of_dvd`, per this poll: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Splits.2Eof_dvd.60.20vs.20.60Splits.2Esplits_of_dvd.60/near/560925458 Co-authored-by: tb65536 <[email protected]>
1 parent f6241af commit 26fffff

File tree

17 files changed

+33
-33
lines changed

17 files changed

+33
-33
lines changed

Mathlib/Algebra/Polynomial/Factors.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -431,23 +431,23 @@ theorem splits_mul_iff (hf₀ : f ≠ 0) (hg₀ : g ≠ 0) :
431431
have := ih (by aesop) hg₀ (f * g) rfl (splits_X_sub_C_mul_iff.mp h) hn
432432
aesop
433433

434-
theorem Splits.splits_of_dvd (hg : Splits g) (hg₀ : g ≠ 0) (hfg : f ∣ g) : Splits f := by
434+
theorem Splits.of_dvd (hg : Splits g) (hg₀ : g ≠ 0) (hfg : f ∣ g) : Splits f := by
435435
obtain ⟨g, rfl⟩ := hfg
436436
exact ((splits_mul_iff (by aesop) (by aesop)).mp hg).1
437437

438438
@[deprecated (since := "2025-11-27")]
439-
alias Splits.of_dvd := Splits.splits_of_dvd
439+
alias Splits.splits_of_dvd := Splits.of_dvd
440440

441441
theorem splits_prod_iff {ι : Type*} {f : ι → R[X]} {s : Finset ι} (hf : ∀ i ∈ s, f i ≠ 0) :
442442
(∏ x ∈ s, f x).Splits ↔ ∀ x ∈ s, (f x).Splits :=
443-
fun h _ hx ↦ h.splits_of_dvd (Finset.prod_ne_zero_iff.mpr hf) (Finset.dvd_prod_of_mem f hx),
443+
fun h _ hx ↦ h.of_dvd (Finset.prod_ne_zero_iff.mpr hf) (Finset.dvd_prod_of_mem f hx),
444444
Splits.prod⟩
445445

446446
-- Todo: Remove or fix name once `Splits` is gone.
447447
theorem Splits.splits (hf : Splits f) :
448448
f = 0 ∨ ∀ {g : R[X]}, Irreducible g → g ∣ f → degree g ≤ 1 :=
449449
or_iff_not_imp_left.mpr fun hf0 _ hg hgf ↦ degree_le_of_natDegree_le <|
450-
(hf.splits_of_dvd hf0 hgf).natDegree_le_one_of_irreducible hg
450+
(hf.of_dvd hf0 hgf).natDegree_le_one_of_irreducible hg
451451

452452
lemma map_sub_sprod_roots_eq_prod_map_eval
453453
(s : Multiset R) (g : R[X]) (hg : g.Monic) (hg' : g.Splits) :

Mathlib/Algebra/Polynomial/Splits.lean

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -142,17 +142,17 @@ alias Splits.def := splits_iff_splits
142142
alias splits_of_splits_mul := splits_mul_iff
143143

144144
@[deprecated (since := "2025-11-25")]
145-
alias splits_of_splits_of_dvd := Splits.splits_of_dvd
145+
alias splits_of_splits_of_dvd := Splits.of_dvd
146146

147-
@[deprecated "Use `Splits.splits_of_dvd` directly." (since := "2025-11-30")]
147+
@[deprecated "Use `Splits.of_dvd` directly." (since := "2025-11-30")]
148148
theorem splits_of_splits_gcd_left [DecidableEq K] {f g : K[X]} (hf0 : f ≠ 0)
149149
(hf : Splits f) : Splits (EuclideanDomain.gcd f g) :=
150-
Splits.splits_of_dvd hf hf0 <| EuclideanDomain.gcd_dvd_left f g
150+
Splits.of_dvd hf hf0 <| EuclideanDomain.gcd_dvd_left f g
151151

152-
@[deprecated "Use `Splits.splits_of_dvd` directly." (since := "2025-11-30")]
152+
@[deprecated "Use `Splits.of_dvd` directly." (since := "2025-11-30")]
153153
theorem splits_of_splits_gcd_right [DecidableEq K] {f g : K[X]} (hg0 : g ≠ 0)
154154
(hg : Splits g) : Splits (EuclideanDomain.gcd f g) :=
155-
Splits.splits_of_dvd hg hg0 <| EuclideanDomain.gcd_dvd_right f g
155+
Splits.of_dvd hg hg0 <| EuclideanDomain.gcd_dvd_right f g
156156

157157
@[deprecated (since := "2025-11-30")]
158158
alias degree_eq_one_of_irreducible_of_splits := Splits.degree_eq_one_of_irreducible

Mathlib/FieldTheory/AbelRuffini.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ theorem induction3 {α : solvableByRad F E} {n : ℕ} (hn : n ≠ 0) (hα : P (
285285
· exact minpoly.ne_zero (isIntegral (α ^ n)) h'
286286
· exact hn (by rw [← @natDegree_C F, ← h'.2, natDegree_X_pow])
287287
apply gal_isSolvable_of_splits
288-
· exact ⟨(SplittingField.splits (p.comp (X ^ n))).splits_of_dvd (map_ne_zero hp)
288+
· exact ⟨(SplittingField.splits (p.comp (X ^ n))).of_dvd (map_ne_zero hp)
289289
((map_dvd_map' _).mpr (minpoly.dvd F α (by rw [aeval_comp, aeval_X_pow, minpoly.aeval])))⟩
290290
· refine gal_isSolvable_tower p (p.comp (X ^ n)) ?_ hα ?_
291291
· exact Gal.splits_in_splittingField_of_comp _ _ (by rwa [natDegree_X_pow])

Mathlib/FieldTheory/Finite/GaloisField.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ theorem nonempty_algHom_of_finrank_dvd (h : Module.finrank F K ∣ Module.finran
301301
have := Fintype.ofFinite K
302302
have := Fintype.ofFinite L
303303
refine ⟨Polynomial.IsSplittingField.lift _ (X ^ Fintype.card K - X) ?_⟩
304-
refine (FiniteField.isSplittingField_sub L F).splits.splits_of_dvd ?_ ?_
304+
refine (FiniteField.isSplittingField_sub L F).splits.of_dvd ?_ ?_
305305
· exact map_ne_zero (FiniteField.X_pow_card_sub_X_ne_zero _ Fintype.one_lt_card)
306306
· rw [Module.card_eq_pow_finrank (K := F), Module.card_eq_pow_finrank (K := F) (V := L)]
307307
exact (map_dvd_map' _).mpr (dvd_pow_pow_sub_self_of_dvd h)

Mathlib/FieldTheory/Galois/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ theorem of_separable_splitting_field_aux [hFE : FiniteDimensional F E] [sp : p.I
530530
intro f _
531531
rw [← @IntermediateField.card_algHom_adjoin_integral K _ E _ _ x E _ (RingHom.toAlgebra f) h]
532532
· exact Polynomial.Separable.of_dvd ((Polynomial.separable_map (algebraMap F K)).mpr hp) h2
533-
· apply sp.splits.splits_of_dvd (Polynomial.map_ne_zero h1)
533+
· apply sp.splits.of_dvd (Polynomial.map_ne_zero h1)
534534
rwa [← f.comp_algebraMap, ← p.map_map, RingHom.algebraMap_toAlgebra, Polynomial.map_dvd_map']
535535

536536
theorem of_separable_splitting_field [sp : p.IsSplittingField F E] (hp : p.Separable) :

Mathlib/FieldTheory/IsAlgClosed/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ theorem IsAlgClosure.of_splits {R K} [CommRing R] [IsDomain R] [Field K] [Algebr
301301
isAlgebraic := inferInstance
302302
isAlgClosed := .of_exists_root _ fun _p _ p_irred ↦
303303
have ⟨g, monic, irred, dvd⟩ := p_irred.exists_dvd_monic_irreducible_of_isIntegral (K := R)
304-
((h g monic irred).splits_of_dvd (map_monic_ne_zero monic) dvd).exists_eval_eq_zero <|
304+
((h g monic irred).of_dvd (map_monic_ne_zero monic) dvd).exists_eval_eq_zero <|
305305
degree_ne_of_natDegree_ne p_irred.natDegree_pos.ne'
306306

307307
namespace IsAlgClosed

Mathlib/FieldTheory/Isaacs.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ theorem nonempty_algHom_of_exist_roots (h : ∀ x : E, ∃ y : K, aeval y (minpo
4444
let p := (S.prod <| fun x ↦ (minpoly F x).map (algebraMap F K))
4545
let K' := SplittingField p
4646
have splits s (hs : s ∈ S) : ((minpoly F s).map (algebraMap F K')).Splits := by
47-
apply (SplittingField.splits p).splits_of_dvd (map_ne_zero (Finset.prod_ne_zero_iff.mpr
47+
apply (SplittingField.splits p).of_dvd (map_ne_zero (Finset.prod_ne_zero_iff.mpr
4848
fun _ _ ↦ Polynomial.map_ne_zero (minpoly.ne_zero <| alg.isIntegral.1 _))) ?_
4949
rw [IsScalarTower.algebraMap_eq F K K', ← Polynomial.map_map, map_dvd_map']
5050
exact Finset.dvd_prod_of_mem _ hs

Mathlib/FieldTheory/Normal/Closure.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ noncomputable def IsNormalClosure.lift [h : IsNormalClosure F K L] {L'} [Field L
123123
(fun x hx ↦ ⟨isAlgebraic_iff_isIntegral.mp ((h.normal).isAlgebraic x), ?_⟩) this
124124
obtain ⟨y, hx⟩ := Set.mem_iUnion.mp hx
125125
by_cases iy : IsIntegral F y
126-
· exact (splits y).splits_of_dvd (map_ne_zero (minpoly.ne_zero iy))
126+
· exact (splits y).of_dvd (map_ne_zero (minpoly.ne_zero iy))
127127
((map_dvd_map' _).mpr (minpoly.dvd F x (mem_rootSet.mp hx).2))
128128
· simp [minpoly.eq_zero iy] at hx
129129

@@ -216,7 +216,7 @@ noncomputable def Algebra.IsAlgebraic.algHomEmbeddingOfSplits [Algebra.IsAlgebra
216216
obtain ⟨y, hx⟩ := Set.mem_iUnion.mp hx
217217
refine ⟨isAlgebraic_iff_isIntegral.mp (isAlgebraic_of_mem_rootSet hx), ?_⟩
218218
by_cases iy : IsIntegral F y
219-
· exact (h y).splits_of_dvd (map_ne_zero (minpoly.ne_zero iy))
219+
· exact (h y).of_dvd (map_ne_zero (minpoly.ne_zero iy))
220220
((map_dvd_map' _).mpr (minpoly.dvd F x (mem_rootSet.mp hx).2))
221221
· simp [minpoly.eq_zero iy] at hx
222222
let φ' := (φ.comp <| inclusion normalClosure_le_iSup_adjoin)

Mathlib/FieldTheory/Normal/Defs.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ theorem Normal.tower_top_of_normal [h : Normal F E] : Normal K E :=
6868
normal_iff.2 fun x => by
6969
obtain ⟨hx, hhx⟩ := h.out x
7070
rw [algebraMap_eq F K E, ← map_map] at hhx
71-
exact ⟨hx.tower_top, hhx.splits_of_dvd (map_ne_zero (map_ne_zero (minpoly.ne_zero hx)))
71+
exact ⟨hx.tower_top, hhx.of_dvd (map_ne_zero (map_ne_zero (minpoly.ne_zero hx)))
7272
((map_dvd_map' _).mpr (minpoly.dvd_map_of_isScalarTower F K x))⟩
7373

7474
theorem AlgHom.normal_bijective [h : Normal F E] (ϕ : E →ₐ[F] K) : Function.Bijective ϕ :=

Mathlib/FieldTheory/PolynomialGaloisGroup.lean

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -219,21 +219,21 @@ def restrictDvd (hpq : p ∣ q) : q.Gal →* p.Gal :=
219219
if hq : q = 0 then 1
220220
else
221221
@restrict F _ p _ _ _
222-
⟨(SplittingField.splits q).splits_of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)⟩
222+
⟨(SplittingField.splits q).of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)⟩
223223

224224
theorem restrictDvd_def [Decidable (q = 0)] (hpq : p ∣ q) :
225225
restrictDvd hpq =
226226
if hq : q = 0 then 1
227227
else @restrict F _ p _ _ _
228-
⟨(SplittingField.splits q).splits_of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)⟩ := by
228+
⟨(SplittingField.splits q).of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)⟩ := by
229229
unfold restrictDvd
230230
congr
231231

232232
theorem restrictDvd_surjective (hpq : p ∣ q) (hq : q ≠ 0) :
233233
Function.Surjective (restrictDvd hpq) := by
234234
classical
235235
haveI := Fact.mk <|
236-
(SplittingField.splits q).splits_of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)
236+
(SplittingField.splits q).of_dvd (map_ne_zero hq) ((map_dvd_map' _).mpr hpq)
237237
simpa only [restrictDvd_def, dif_neg hq] using restrict_surjective _ _
238238

239239
variable (p q)
@@ -255,7 +255,7 @@ theorem restrictProd_injective : Function.Injective (restrictProd p q) := by
255255
rw [rootSet_def, aroots_mul hpq] at hx
256256
rcases Multiset.mem_add.mp (Multiset.mem_toFinset.mp hx) with h | h
257257
· haveI : Fact ((p.map (algebraMap F (p * q).SplittingField)).Splits) :=
258-
⟨(SplittingField.splits (p * q)).splits_of_dvd (map_ne_zero hpq)
258+
⟨(SplittingField.splits (p * q)).of_dvd (map_ne_zero hpq)
259259
((map_dvd_map' _).mpr (dvd_mul_right p q))⟩
260260
have key :
261261
x =
@@ -266,7 +266,7 @@ theorem restrictProd_injective : Function.Injective (restrictProd p q) := by
266266
rw [key, ← AlgEquiv.restrictNormal_commutes, ← AlgEquiv.restrictNormal_commutes]
267267
exact congr_arg _ (AlgEquiv.ext_iff.mp hfg.1 _)
268268
· haveI : Fact ((q.map (algebraMap F (p * q).SplittingField)).Splits) :=
269-
⟨(SplittingField.splits (p * q)).splits_of_dvd (map_ne_zero hpq)
269+
⟨(SplittingField.splits (p * q)).of_dvd (map_ne_zero hpq)
270270
((map_dvd_map' _).mpr (dvd_mul_left q p))⟩
271271
have key :
272272
x =
@@ -285,12 +285,12 @@ theorem mul_splits_in_splittingField_of_mul {p₁ q₁ p₂ q₂ : F[X]} (hq₁
285285
apply Splits.mul
286286
· rw [←
287287
(SplittingField.lift q₁
288-
((SplittingField.splits _).splits_of_dvd (map_ne_zero (mul_ne_zero hq₁ hq₂))
288+
((SplittingField.splits _).of_dvd (map_ne_zero (mul_ne_zero hq₁ hq₂))
289289
((map_dvd_map' _).mpr (dvd_mul_right q₁ q₂)))).comp_algebraMap, ← map_map]
290290
exact h₁.map _
291291
· rw [←
292292
(SplittingField.lift q₂
293-
((SplittingField.splits _).splits_of_dvd (map_ne_zero (mul_ne_zero hq₁ hq₂))
293+
((SplittingField.splits _).of_dvd (map_ne_zero (mul_ne_zero hq₁ hq₂))
294294
((map_dvd_map' _).mpr (dvd_mul_left q₂ q₁)))).comp_algebraMap, ← map_map]
295295
exact h₂.map _
296296

@@ -309,7 +309,7 @@ theorem splits_in_splittingField_of_comp (hq : q.natDegree ≠ 0) :
309309
rw [eval_map_algebraMap, aeval_comp] at hx
310310
have h_normal : Normal F (r.comp q).SplittingField := SplittingField.instNormal (r.comp q)
311311
have qx_int := Normal.isIntegral h_normal (aeval x q)
312-
exact (h_normal.splits _).splits_of_dvd (map_ne_zero (minpoly.ne_zero (h_normal.isIntegral _)))
312+
exact (h_normal.splits _).of_dvd (map_ne_zero (minpoly.ne_zero (h_normal.isIntegral _)))
313313
((map_dvd_map' _).mpr ((minpoly.irreducible qx_int).dvd_symm hr (minpoly.dvd F _ hx)))
314314
have key2 : ∀ {p₁ p₂ : F[X]}, P p₁ → P p₂ → P (p₁ * p₂) := by
315315
intro p₁ p₂ hp₁ hp₂

0 commit comments

Comments
 (0)