@@ -48,6 +48,16 @@ def residueField (x : X) : CommRingCat :=
4848instance (x : X) : Field (X.residueField x) :=
4949 inferInstanceAs <| Field (IsLocalRing.ResidueField (X.presheaf.stalk x))
5050
51+ /-- The residue map from the stalk to the residue field. -/
52+ def residue (X : LocallyRingedSpace.{u}) (x : X) : X.presheaf.stalk x ⟶ X.residueField x :=
53+ CommRingCat.ofHom (IsLocalRing.residue (X.presheaf.stalk x))
54+
55+ lemma residue_surjective (x : X) : Function.Surjective (X.residue x) :=
56+ Ideal.Quotient.mk_surjective
57+
58+ instance (x : X) : Epi (X.residue x) :=
59+ ConcreteCategory.epi_of_surjective _ (X.residue_surjective x)
60+
5161/--
5262If `U` is an open of `X` containing `x`, we have a canonical ring map from the sections
5363over `U` to the residue field of `x`.
@@ -56,9 +66,7 @@ If we interpret sections over `U` as functions of `X` defined on `U`, then this
5666corresponds to evaluation at `x`.
5767-/
5868def evaluation (x : U) : X.presheaf.obj (op U) ⟶ X.residueField x :=
59- -- TODO: make a new definition wrapping
60- -- `CommRingCat.ofHom (IsLocalRing.residue (X.presheaf.stalk _))`?
61- X.presheaf.germ U x.1 x.2 ≫ CommRingCat.ofHom (IsLocalRing.residue (X.presheaf.stalk _))
69+ X.presheaf.germ U x.1 x.2 ≫ X.residue _
6270
6371/-- The global evaluation map from `Γ(X, ⊤)` to the residue field at `x`. -/
6472def Γevaluation (x : X) : X.presheaf.obj (op ⊤) ⟶ X.residueField x :=
@@ -97,10 +105,9 @@ a morphism of residue fields in the other direction. -/
97105def residueFieldMap (x : X) : Y.residueField (f.base x) ⟶ X.residueField x :=
98106 CommRingCat.ofHom (IsLocalRing.ResidueField.map (f.stalkMap x).hom)
99107
108+ @[reassoc]
100109lemma residue_comp_residueFieldMap_eq_stalkMap_comp_residue (x : X) :
101- CommRingCat.ofHom (IsLocalRing.residue (Y.presheaf.stalk (f.base x))) ≫
102- residueFieldMap f x = f.stalkMap x ≫
103- CommRingCat.ofHom (IsLocalRing.residue (X.presheaf.stalk x)) := by
110+ Y.residue _ ≫ residueFieldMap f x = f.stalkMap x ≫ X.residue _ := by
104111 simp [residueFieldMap]
105112 rfl
106113
0 commit comments