Documentation

Hironaka.AnalyticSpace.Propagation

Finite-type propagation of stalk equalities #

If the stalk ๐’ฅ_x of an ideal sheaf ๐’ฅ with local generators gโ‚, โ€ฆ, g_k near x is generated by the germs of sections hโ‚, โ€ฆ, h_c, then ๐’ฅ_y is generated by their germs for every y in a neighbourhood of x โ€” "๐’ฅ = (hโ‚, โ€ฆ, h_c) on a neighbourhood". The two ingredients are elementary facts about germs of a presheaf of commutative rings: membership of a germ in a stalk ideal spreads to a neighbourhood (mem_stalkIdeal_iff hands over a section of ๐’ฅ with the same germ, germ_eq a neighbourhood where the sections agree), and membership of a germ in the ideal generated by finitely many germs spreads likewise (each coefficient is a germ of a section, germ_eq again). Hironaka's passage from the local ring to a neighbourhood in the Jacobian-criterion sentence [Hir64, Ch. 0, ยง1, p. 121] โ€” from ๐“˜_x = (h)_x to X = V(h) near x โ€” uses this. Not in the sources as a stated result; routine.

theorem AnalyticSpace.mem_iInf_opens {ฮฑ : Type u_1} [TopologicalSpace ฮฑ] {ฮน : Type u_2} [Finite ฮน] {V : ฮน โ†’ TopologicalSpace.Opens ฮฑ} {x : ฮฑ} :
x โˆˆ โจ… (i : ฮน), V i โ†” โˆ€ (i : ฮน), x โˆˆ V i

Membership in a finite infimum of opens.

theorem AnalyticSpace.exists_forall_germ_mem_span {X : TopCat} (F : TopCat.Presheaf CommRingCat X) {U : TopologicalSpace.Opens โ†‘X} {x : โ†‘X} (hx : x โˆˆ U) (s : โ†‘(F.obj (Opposite.op U))) {c : โ„•} (h : Fin c โ†’ โ†‘(F.obj (Opposite.op U))) (hs : (CategoryTheory.ConcreteCategory.hom (F.germ U x hx)) s โˆˆ Ideal.span (Set.range fun (i : Fin c) => (CategoryTheory.ConcreteCategory.hom (F.germ U x hx)) (h i))) :
โˆƒ (W : TopologicalSpace.Opens โ†‘X) (_ : x โˆˆ W) (hWU : W โ‰ค U), โˆ€ (y : โ†‘X) (hy : y โˆˆ W), (CategoryTheory.ConcreteCategory.hom (F.germ U y โ‹ฏ)) s โˆˆ Ideal.span (Set.range fun (i : Fin c) => (CategoryTheory.ConcreteCategory.hom (F.germ U y โ‹ฏ)) (h i))

Membership of a germ in the ideal generated by finitely many germs spreads to a neighbourhood: if germ_x s โˆˆ (germ_x hโ‚, โ€ฆ, germ_x h_c), then germ_y s โˆˆ (germ_y hโ‚, โ€ฆ, germ_y h_c) for all y in some open W โ‰ค U containing x.

theorem AnalyticSpace.exists_forall_germ_mem_stalkIdeal {X : TopCat} (๐’ช : TopCat.Sheaf CommRingCat X) (J : Manifold.IdealSheaf ๐’ช) {U : TopologicalSpace.Opens โ†‘X} {x : โ†‘X} (hx : x โˆˆ U) (s : โ†‘(๐’ช.presheaf.obj (Opposite.op U))) (hs : (CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.germ U x hx)) s โˆˆ J.stalkIdeal x) :
โˆƒ (W : TopologicalSpace.Opens โ†‘X) (_ : x โˆˆ W) (hWU : W โ‰ค U), โˆ€ (y : โ†‘X) (hy : y โˆˆ W), (CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.germ U y โ‹ฏ)) s โˆˆ J.stalkIdeal y

Membership of a germ in a stalk ideal spreads to a neighbourhood: if germ_x s โˆˆ ๐’ฅ_x, then germ_y s โˆˆ ๐’ฅ_y for all y in some open W โ‰ค U containing x (mem_stalkIdeal_iff: ๐’ฅ_x consists of the germs of sections of ๐’ฅ).

theorem AnalyticSpace.exists_stalkIdeal_eq_span_of_stalkIdeal_eq_span {X : TopCat} (๐’ช : TopCat.Sheaf CommRingCat X) (J : Manifold.IdealSheaf ๐’ช) {U : TopologicalSpace.Opens โ†‘X} {x : โ†‘X} (hx : x โˆˆ U) {k : โ„•} (g : Fin k โ†’ โ†‘(๐’ช.presheaf.obj (Opposite.op U))) (hg : โˆ€ (y : โ†‘X) (hy : y โˆˆ U), J.stalkIdeal y = Ideal.span (Set.range fun (i : Fin k) => (CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.germ U y hy)) (g i))) {c : โ„•} (h : Fin c โ†’ โ†‘(๐’ช.presheaf.obj (Opposite.op U))) (hJ : J.stalkIdeal x = Ideal.span (Set.range fun (i : Fin c) => (CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.germ U x hx)) (h i))) :
โˆƒ (V : TopologicalSpace.Opens โ†‘X) (_ : x โˆˆ V) (i : V โŸถ U), โˆ€ (y : โ†‘X) (hy : y โˆˆ V), J.stalkIdeal y = Ideal.span (Set.range fun (j : Fin c) => (CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.germ V y hy)) ((CategoryTheory.ConcreteCategory.hom (๐’ช.presheaf.map i.op)) (h j)))

The finite-type propagation: if an ideal sheaf ๐’ฅ has local generators gโ‚, โ€ฆ, g_k near x (its stalks at the points of U โˆ‹ x are generated by their germs) and the stalk ๐’ฅ_x is generated by the germs of sections hโ‚, โ€ฆ, h_c over U, then ๐’ฅ_y is generated by their germs for every y in a neighbourhood V โІ U of x.