Skip to content

Commit 5f0b101

Browse files
bump
1 parent c85937b commit 5f0b101

File tree

6 files changed

+14
-77
lines changed

6 files changed

+14
-77
lines changed

FltRegular.lean

-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import FltRegular.MayAssume.Lemmas
99
import FltRegular.NumberTheory.Cyclotomic.CaseI
1010
import FltRegular.NumberTheory.Cyclotomic.CyclRat
1111
import FltRegular.NumberTheory.Cyclotomic.CyclotomicUnits
12-
import FltRegular.NumberTheory.Cyclotomic.Factoring
1312
import FltRegular.NumberTheory.Cyclotomic.GaloisActionOnCyclo
1413
import FltRegular.NumberTheory.Cyclotomic.MoreLemmas
1514
import FltRegular.NumberTheory.Cyclotomic.UnitLemmas

FltRegular/CaseI/Statement.lean

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import FltRegular.MayAssume.Lemmas
2-
import FltRegular.NumberTheory.Cyclotomic.Factoring
32
import FltRegular.NumberTheory.Cyclotomic.CaseI
43
import FltRegular.CaseI.AuxLemmas
54
import FltRegular.NumberTheory.RegularPrimes
@@ -140,8 +139,8 @@ theorem exists_ideal {a b c : ℤ} (h5p : 5 ≤ p) (H : a ^ p + b ^ p = c ^ p)
140139
have H₁ := congr_arg (algebraMap ℤ R) H
141140
simp only [eq_intCast, Int.cast_add, Int.cast_pow] at H₁
142141
have hζ' := (zeta_spec P ℚ K).unit'_coe
143-
rw [pow_add_pow_eq_prod_add_zeta_runity_mul _ _
144-
(hpri.out.eq_two_or_odd.resolve_left fun h => by simp [h] at h5p) hζ'] at H₁
142+
rw [hζ'.pow_add_pow_eq_prod_add_mul _ _ <|
143+
odd_iff.2 <| hpri.1.eq_two_or_odd.resolve_left fun h by simp [h] at h5p] at H₁
145144
replace H₁ := congr_arg (fun x => span ({ x } : Set R)) H₁
146145
simp only [← prod_span_singleton, ← span_singleton_pow] at H₁
147146
refine exists_eq_pow_of_mul_eq_pow_of_coprime (fun η₁ hη₁ η₂ hη₂ hη => ?_) H₁ ζ hζ

FltRegular/CaseII/InductionStep.lean

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import FltRegular.CaseII.AuxLemmas
22
import FltRegular.NumberTheory.KummersLemma.KummersLemma
3-
import FltRegular.NumberTheory.Cyclotomic.Factoring
43

54
open scoped BigOperators nonZeroDivisors NumberField
65
open Polynomial
@@ -70,8 +69,8 @@ include hp hζ e hz in
7069
lemma x_plus_y_mul_ne_zero : x + y * η ≠ 0 := by
7170
intro hη
7271
have : x + y * η ∣ x ^ (p : ℕ) + y ^ (p : ℕ) := by
73-
rw [pow_add_pow_eq_prod_add_zeta_runity_mul _ _
74-
(hpri.out.eq_two_or_odd.resolve_left (PNat.coe_injective.ne hp)) hζ.unit'_coe]
72+
rw [hζ.unit'_coe.pow_add_pow_eq_prod_add_mul _ _ <| Nat.odd_iff.2 <|
73+
hpri.out.eq_two_or_odd.resolve_left (PNat.coe_injective.ne hp)]
7574
simp_rw [mul_comm _ y]
7675
exact Finset.dvd_prod_of_mem _ η.prop
7776
rw [hη, zero_dvd_iff, e] at this
@@ -90,8 +89,9 @@ lemma one_sub_zeta_dvd_zeta_pow_sub : π ∣ x + y * η := by
9089
letI := IsCyclotomicExtension.numberField {p} ℚ K
9190
have h := zeta_sub_one_dvd hζ e
9291
replace h : ∏ _η in nthRootsFinset p (𝓞 K), Ideal.Quotient.mk 𝔭 (x + y * η : 𝓞 K) = 0 := by
93-
rw [pow_add_pow_eq_prod_add_zeta_runity_mul _ _ (hpri.out.eq_two_or_odd.resolve_left
94-
(PNat.coe_injective.ne hp)) hζ.unit'_coe, ← Ideal.Quotient.eq_zero_iff_dvd, map_prod] at h
92+
rw [hζ.unit'_coe.pow_add_pow_eq_prod_add_mul _ _ <| Nat.odd_iff.2 <|
93+
hpri.out.eq_two_or_odd.resolve_left
94+
(PNat.coe_injective.ne hp), ← Ideal.Quotient.eq_zero_iff_dvd, map_prod] at h
9595
convert h using 2 with η' hη'
9696
rw [map_add, map_add, map_mul, map_mul, IsPrimitiveRoot.eq_one_mod_one_sub' hζ.unit'_coe hη',
9797
IsPrimitiveRoot.eq_one_mod_one_sub' hζ.unit'_coe η.prop, one_mul, mul_one]
@@ -249,8 +249,8 @@ lemma exists_ideal_pow_eq_c_aux :
249249
/- The ∏_η, 𝔠 η = (𝔷' 𝔭^m)^p with 𝔷 = 𝔪 𝔷' -/
250250
lemma prod_c : ∏ η in Finset.attach (nthRootsFinset p (𝓞 K)), 𝔠 η = (𝔷' * 𝔭 ^ m) ^ (p : ℕ) := by
251251
have e' := span_pow_add_pow_eq hζ e
252-
rw [pow_add_pow_eq_prod_add_zeta_runity_mul _ _
253-
(hpri.out.eq_two_or_odd.resolve_left (PNat.coe_injective.ne hp)) hζ.unit'_coe] at e'
252+
rw [hζ.unit'_coe.pow_add_pow_eq_prod_add_mul _ _ <| Nat.odd_iff.2 <|
253+
hpri.out.eq_two_or_odd.resolve_left (PNat.coe_injective.ne hp)] at e'
254254
rw [← Ideal.prod_span_singleton, ← Finset.prod_attach] at e'
255255
simp_rw [mul_comm _ y, ← m_mul_c_mul_p hp hζ e hy,
256256
Finset.prod_mul_distrib, Finset.prod_const, Finset.card_attach,

FltRegular/NumberTheory/Cyclotomic/Factoring.lean

-62
This file was deleted.

FltRegular/NumberTheory/Hilbert92.lean

+4-3
Original file line numberDiff line numberDiff line change
@@ -341,8 +341,9 @@ lemma isTors' [IsGalois k K] : Module.IsTorsionBySet ℤ[X]
341341
simp only [Units.coe_map, MonoidHom.coe_coe, RingOfIntegers.coe_algebraMap_norm, map_pow,
342342
Units.coe_prod, Submonoid.coe_finset_prod, Subsemiring.coe_toSubmonoid,
343343
Subalgebra.coe_toSubsemiring, Algebra.norm_eq_prod_automorphisms]
344-
rw [← hKL, ← IsGalois.card_aut_eq_finrank, ← orderOf_eq_card_of_forall_mem_zpowers hσ,
345-
← Fin.prod_univ_eq_prod_range, ← (finEquivZPowers σ <| isOfFinOrder_of_finite _).symm.prod_comp]
344+
rw [← hKL, ← IsGalois.card_aut_eq_finrank, Fintype.card_eq_nat_card,
345+
← orderOf_eq_card_of_forall_mem_zpowers hσ, ← Fin.prod_univ_eq_prod_range,
346+
← (finEquivZPowers σ <| isOfFinOrder_of_finite _).symm.prod_comp]
346347
simp only [pow_finEquivZPowers_symm_apply, coe_galRestrictHom_apply, AlgHom.coe_coe, map_prod]
347348
rw [Finset.prod_set_coe (α := K ≃ₐ[k] K) (β := K) (f := fun i ↦ i ↑x) (Subgroup.zpowers σ)]
348349
congr
@@ -660,7 +661,7 @@ lemma Hilbert92_aux2 (E : (𝓞 K)ˣ) (ν : k) (hE : algebraMap k K ν = E / σ
660661
rw [hE]
661662
field_simp
662663
rw [norm_eq_prod_pow_gen σ hσ, orderOf_eq_card_of_forall_mem_zpowers hσ,
663-
IsGalois.card_aut_eq_finrank, hKL]
664+
← Fintype.card_eq_nat_card, IsGalois.card_aut_eq_finrank, hKL]
664665
conv =>
665666
enter [1, 2, i]
666667
rw [h1 i, mul_comm]

lake-manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585
"type": "git",
8686
"subDir": null,
8787
"scope": "",
88-
"rev": "6d297a4172e6c37d3bf82e68924c45d72621ac5d",
88+
"rev": "2c6450e45a0b2b45662a8289c3d0fbf09883939f",
8989
"name": "mathlib",
9090
"manifestFile": "lake-manifest.json",
9191
"inputRev": null,

0 commit comments

Comments
 (0)