The literal root algebra over the base fraction field is the fraction field of the integral root algebra, with its original coefficient map.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
noncomputable section
namespace EtaleFundamentalGroups.Kummer
open Polynomial
open scoped TensorProduct
universe udef uniformizerRootFractionEquiv
{R : Type u} [CommRing R] [IsDomain R] [IsDiscreteValuationRing R]
{n : ℕ} (hn : 0 < n) (π : R) (hπ : Prime π) :
let B := AdjoinRoot (X ^ n - C π)
let : IsDomain B := isDomain_adjoinRoot_X_pow_sub_C_of_prime hn π hπ
let : Module.FaithfullyFlat R B := faithfullyFlat_adjoinRoot_X_pow_sub_C hn π
let : Algebra (FractionRing R) (FractionRing B) :=
FractionRing.liftAlgebra R (FractionRing B)
AdjoinRoot (X ^ n - C (algebraMap R (FractionRing R) π)) ≃ₐ[FractionRing R]
FractionRing B := by
intro B hdomain hflat hfieldAlgebra
have : Module.Finite R B := (Polynomial.monic_X_pow_sub_C π hn.ne').finite_adjoinRoot
have : IsScalarTower R (FractionRing R) (FractionRing B) :=
FractionRing.isScalarTower_liftAlgebra R (FractionRing B)
let eRoot : (FractionRing R ⊗[R] B) ≃ₐ[FractionRing R]
AdjoinRoot (X ^ n - C (algebraMap R (FractionRing R) π)) :=
(adjoinRootBaseChangeAlgEquiv (S := FractionRing R) (X ^ n - C π)).trans
(AdjoinRoot.algEquivOfEq (FractionRing R) _ _ (by
rw [Polynomial.map_sub, Polynomial.map_pow, Polynomial.map_X, Polynomial.map_C]))
exact eRoot.symm.trans
(finiteGenericFiberAlgEquiv (R := R) (C := B)
(K := FractionRing R) (E := FractionRing B))