A prime, including its proof of lying over the closed point, in the normalization of a scheme-point local ring.
Source context 4 commands
Surrounding namespaces, section variables, and local commands at this declaration.
noncomputable section
open AlgebraicGeometry
namespace EtaleFundamentalGroups
universe udef schemePointNormalizationPrimeOver
{X : Scheme.{u}} [IsIntegral X] (x : X)
{L : Type u} [Field L] [Algebra X.functionField L] :
let A := X.presheaf.stalk x
let K : Type u := X.functionField
letI : Algebra A L :=
((algebraMap K L).comp (algebraMap A K)).toAlgebra
letI : IsScalarTower A K L := IsScalarTower.of_algebraMap_eq' rfl
let B := integralClosure A L
(IsLocalRing.maximalIdeal A).primesOver B := by
let A := X.presheaf.stalk x
let K : Type u := X.functionField
letI : Algebra A L :=
((algebraMap K L).comp (algebraMap A K)).toAlgebra
letI : IsScalarTower A K L := IsScalarTower.of_algebraMap_eq' rfl
let B := integralClosure A L
letI : FaithfulSMul A B :=
(faithfulSMul_iff_algebraMap_injective A B).mpr (by
intro a b hab
apply IsFractionRing.injective A K
apply (algebraMap K L).injective
have habL := congrArg (fun c : B ↦ (c : L)) hab
change algebraMap A L a = algebraMap A L b at habL
simpa only [IsScalarTower.algebraMap_apply A K L] using habL)
exact Classical.choice (inferInstance :
Nonempty ((IsLocalRing.maximalIdeal A).primesOver B))