Skip to content

Commit b8a9a13

Browse files
committed
whoop!
1 parent 67dc788 commit b8a9a13

1 file changed

Lines changed: 18 additions & 3 deletions

File tree

Mathlib/RingTheory/Polynomial/Morse.lean

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,22 @@ Such polynomials are called *Morse functions* in Section 4.4 of [serre-galois].
3838

3939
public section
4040

41+
namespace Polynomial.Gal
42+
43+
noncomputable def rootsEquivRoots' {F : Type*} [Field F] (p : F[X])
44+
(E E' : Type*) [Field E] [Field E'] [Algebra F E] [Algebra F E']
45+
[Fact (map (algebraMap F E) p).Splits] [Fact (map (algebraMap F E') p).Splits] :
46+
p.rootSet E ≃ p.rootSet E' :=
47+
(rootsEquivRoots p E).symm.trans (rootsEquivRoots p E')
48+
49+
theorem smul_rootsEquivRoots' {F : Type*} [Field F] (p : F[X])
50+
(E E' : Type*) [Field E] [Field E'] [Algebra F E] [Algebra F E']
51+
[Fact (map (algebraMap F E) p).Splits] [Fact (map (algebraMap F E') p).Splits]
52+
{g : p.Gal} (x : p.rootSet E) : g • rootsEquivRoots' p E E' x = rootsEquivRoots' p E E' (g • x) := by
53+
simp [rootsEquivRoots', smul_def]
54+
55+
end Polynomial.Gal
56+
4157
namespace Polynomial
4258

4359
variable {R S : Type*} [CommRing R] [CommRing S] [Algebra R S] [IsDomain S]
@@ -168,11 +184,11 @@ theorem tada' (f₀ : ℤ[X]) (hf₀ : Irreducible f₀) (hf₉' : f₀.Monic)
168184
to_normal := Polynomial.SplittingField.instNormal f }
169185
let R := 𝓞 K
170186
let G := f.Gal
171-
have h_transitive := Gal.galAction_isPretransitive f ℂ hf'
187+
have := Gal.galAction_isPretransitive f ℂ hf'
172188
let e : f₀.rootSet R ≃ f.rootSet ℂ := by
173189
let e₀ : f₀.rootSet R ≃ f.rootSet K := by
174190
sorry
175-
let e1 := Polynomial.Gal.rootsEquivRoots f ℂ
191+
let e1 : f.rootSet K ≃ f.rootSet ℂ := Polynomial.Gal.rootsEquivRoots f ℂ
176192

177193
sorry
178194
have he (g : G) (x : f₀.rootSet R) : e (g • x) = g • e x := by
@@ -183,7 +199,6 @@ theorem tada' (f₀ : ℤ[X]) (hf₀ : Irreducible f₀) (hf₉' : f₀.Monic)
183199
exact ⟨g, e.injective ((he g x).trans hg)⟩
184200
suffices Function.Surjective (MulAction.toPermHom G (f₀.rootSet R)) by
185201
use Polynomial.Gal.galActionHom_injective (f₀.map (algebraMap ℤ ℚ)) ℂ
186-
change Function.Surjective (MulAction.toPermHom G (f.rootSet ℂ))
187202
intro φ
188203
obtain ⟨g, hg⟩ := this (e.permCongr.symm φ)
189204
use g

0 commit comments

Comments
 (0)