Documentation

TauCeti.Geometry.Manifold.Complex.StructureSheaf.Germ

Holomorphic germs as germs of functions #

An element of the stalk at x of the holomorphic structure sheaf is represented by a holomorphic function on some open neighbourhood of x. Forgetting everything but its values near x gives a germ of functions in Mathlib's sense, along ๐“ x or along any finer filter, for instance the punctured neighbourhood filter ๐“[โ‰ ] x. This file constructs that comparison as a ring homomorphism TauCeti.holomorphicStructureSheaf.toFilterGerm I X x l hl and proves:

The holomorphic germ of a globally analytic function is germOfContMDiff.

This is the bridge between the categorical stalk and concrete function germs, used to compare holomorphic germs with meromorphic germs on punctured neighbourhoods.

The comparison of holomorphic germs at x with germs of functions along a filter l finer than ๐“ x: the germ of a section is the germ along l of any function agreeing with the section on its domain (toFilterGerm_germ).

Instances For
    theorem TauCeti.holomorphicStructureSheaf.toFilterGerm_germ {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {x : X} {l : Filter X} (hl : l โ‰ค nhds x) {U : TopologicalSpace.Opens X} (hx : x โˆˆ U) (f : โ†‘((holomorphicStructureSheaf I X).obj.obj (Opposite.op U))) (g : X โ†’ โ„‚) (hfg : โˆ€ (y : โ†ฅU), toFun I X (Opposite.op U) f y = g โ†‘y) :

    The germ of a section is the germ of any function agreeing with the section on its domain.

    The holomorphic germ at x of a function which is complex analytic on all of X.

    Instances For
      @[simp]

      The holomorphic germ of a globally analytic function f is the germ of f.

      theorem TauCeti.holomorphicStructureSheaf.exists_toFilterGerm_eq {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] (x : X) (s : โ†‘((holomorphicStructureSheaf I X).presheaf.stalk x)) :
      โˆƒ (f : X โ†’ โ„‚), (โˆ€แถ  (y : X) in nhds x, ContMDiffAt I (modelWithCornersSelf โ„‚ โ„‚) โŠค f y) โˆง โˆ€ (l : Filter X) (hl : l โ‰ค nhds x), (toFilterGerm I X x l hl) s = โ†‘f

      Every holomorphic germ at x is represented by a function which is complex analytic near x, simultaneously along every filter finer than ๐“ x.

      A function which is complex analytic near x has a holomorphic germ at x, with the same germ as the function along every filter finer than ๐“ x.

      Every holomorphic germ on the complex line has an analytic representative, simultaneously along every filter finer than the neighbourhood filter.

      A function analytic at a point of the complex line is manifold analytic near that point.

      A holomorphic germ is determined by its germ along ๐“ x.

      theorem TauCeti.holomorphicStructureSheaf.eq_zero_iff_of_toFilterGerm_eq {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {x : X} {s : โ†‘((holomorphicStructureSheaf I X).presheaf.stalk x)} {f : X โ†’ โ„‚} (h : (toFilterGerm I X x (nhds x) โ‹ฏ) s = โ†‘f) :

      A holomorphic germ vanishes exactly when a function with the same germ along ๐“ x vanishes near x.

      theorem TauCeti.holomorphicStructureSheaf.toFilterGerm_ringEquivCast {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {x y : X} (h : x = y) {s : โ†‘((holomorphicStructureSheaf I X).presheaf.stalk x)} {f : X โ†’ โ„‚} (hs : (toFilterGerm I X x (nhds x) โ‹ฏ) s = โ†‘f) :
      (toFilterGerm I X y (nhds y) โ‹ฏ) ((RingEquiv.cast h) s) = โ†‘f

      Transporting a holomorphic germ along an equality of points x = y with RingEquiv.cast keeps its representative. This lets coordinate changes that fix a point only propositionally compare germs at the two descriptions of the point.

      At a point which is not isolated, a holomorphic germ is determined by its germ on the punctured neighbourhoods of the point, by continuity.

      A function has a holomorphic germ at x with the same germ along ๐“ x exactly when it is complex analytic near x.

      theorem TauCeti.holomorphicStructureSheaf.eval_eq_of_toFilterGerm_eq {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {x : X} {s : โ†‘((holomorphicStructureSheaf I X).presheaf.stalk x)} {f : X โ†’ โ„‚} (h : (toFilterGerm I X x (nhds x) โ‹ฏ) s = โ†‘f) :
      (eval I X x) s = f x

      The value of a holomorphic germ is the value at the base point of any function with the same germ along ๐“ x.

      @[simp]

      The value of the holomorphic germ of a globally analytic function f at x is f x.

      theorem TauCeti.holomorphicStructureSheaf.toFilterGerm_stalkPrecomp {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {E' : Type u_3} [NormedAddCommGroup E'] [NormedSpace โ„‚ E'] {H' : Type u_4} [TopologicalSpace H'] {J : ModelWithCorners โ„‚ E' H'} {Y : Type} [TopologicalSpace Y] [ChartedSpace H' Y] (f : X โ†’ Y) (hf : ContMDiff I J โŠค f) (x : X) (s : โ†‘((holomorphicStructureSheaf J Y).presheaf.stalk (f x))) :
      (toFilterGerm I X x (nhds x) โ‹ฏ) ((stalkPrecomp I X f hf x) s) = ((toFilterGerm J Y (f x) (nhds (f x)) โ‹ฏ) s).compTendsto f โ‹ฏ

      The germ of the pullback of a holomorphic germ along a complex analytic map f is the composition with f of the germ.

      @[simp]
      theorem TauCeti.holomorphicStructureSheaf.stalkPrecomp_germOfContMDiff {E : Type u_1} [NormedAddCommGroup E] [NormedSpace โ„‚ E] {H : Type u_2} [TopologicalSpace H] {I : ModelWithCorners โ„‚ E H} {X : Type} [TopologicalSpace X] [ChartedSpace H X] {E' : Type u_3} [NormedAddCommGroup E'] [NormedSpace โ„‚ E'] {H' : Type u_4} [TopologicalSpace H'] {J : ModelWithCorners โ„‚ E' H'} {Y : Type} [TopologicalSpace Y] [ChartedSpace H' Y] (f : X โ†’ Y) (hf : ContMDiff I J โŠค f) (g : Y โ†’ โ„‚) (hg : ContMDiff J (modelWithCornersSelf โ„‚ โ„‚) โŠค g) (x : X) :
      (stalkPrecomp I X f hf x) (germOfContMDiff g hg (f x)) = germOfContMDiff (g โˆ˜ f) โ‹ฏ x

      Pulling back the holomorphic germ of a globally analytic function g along a complex analytic map f gives the holomorphic germ of g โˆ˜ f.

      On a complex normed space, every holomorphic germ at p is represented by a function analytic at p, simultaneously along every filter finer than ๐“ p.

      theorem TauCeti.holomorphicStructureSheaf.exists_toFilterGerm_eq_of_analyticAt {V : Type} [NormedAddCommGroup V] [NormedSpace โ„‚ V] {p : V} {ฯ† : V โ†’ โ„‚} (hฯ† : AnalyticAt โ„‚ ฯ† p) :
      โˆƒ (s : โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)), โˆ€ (l : Filter V) (hl : l โ‰ค nhds p), (toFilterGerm (modelWithCornersSelf โ„‚ V) V p l hl) s = โ†‘ฯ†

      On a complex normed space, a function analytic at p has a holomorphic germ at p, with the same germ along every filter finer than ๐“ p.

      On a complex normed space, a function has a holomorphic germ at p with the same germ along ๐“ p exactly when it is analytic at p.

      Germs along a holomorphic section #

      theorem TauCeti.holomorphicStructureSheaf.toFilterGerm_eq_comp_of_quotientMk_stalkPrecomp_eq {V W : Type} [NormedAddCommGroup V] [NormedSpace โ„‚ V] [NormedAddCommGroup W] [NormedSpace โ„‚ W] {ฯ€ : V โ†’ W} (hฯ€ : ContMDiff (modelWithCornersSelf โ„‚ V) (modelWithCornersSelf โ„‚ W) โŠค ฯ€) {ฯƒ : W โ†’ V} {p : V} (hฯ€ฯƒ : โˆ€แถ  (w : W) in nhds (ฯ€ p), ฯ€ (ฯƒ w) = w) (J : Ideal โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)) (hJ : โˆ€ (g : โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)) (G : V โ†’ โ„‚), (toFilterGerm (modelWithCornersSelf โ„‚ V) V p (nhds p) โ‹ฏ) g = โ†‘G โ†’ (g โˆˆ J โ†” โˆ€แถ  (w : W) in nhds (ฯ€ p), G (ฯƒ w) = 0)) {h : โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ W) W).presheaf.stalk (ฯ€ p))} {g : โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)} {G : V โ†’ โ„‚} (hgG : (toFilterGerm (modelWithCornersSelf โ„‚ V) V p (nhds p) โ‹ฏ) g = โ†‘G) (hhg : (Ideal.Quotient.mk J) ((stalkPrecomp (modelWithCornersSelf โ„‚ V) V ฯ€ hฯ€ p) h) = (Ideal.Quotient.mk J) g) :
      (toFilterGerm (modelWithCornersSelf โ„‚ W) W (ฯ€ p) (nhds (ฯ€ p)) โ‹ฏ) h = โ†‘(G โˆ˜ ฯƒ)

      Inverting pullback along a holomorphic section. Let ฯƒ be a local section of ฯ€ : V โ†’ W near ฯ€ p, and J an ideal of the holomorphic germs at p consisting exactly of the germs vanishing along ฯƒ. If the pullback along ฯ€ of a germ h at ฯ€ p agrees modulo J with a germ represented by G, then h is represented by G โˆ˜ ฯƒ.

      theorem TauCeti.holomorphicStructureSheaf.quotientMk_comp_stalkPrecomp_bijective {V W : Type} [NormedAddCommGroup V] [NormedSpace โ„‚ V] [NormedAddCommGroup W] [NormedSpace โ„‚ W] {ฯ€ : V โ†’ W} (hฯ€ : ContMDiff (modelWithCornersSelf โ„‚ V) (modelWithCornersSelf โ„‚ W) โŠค ฯ€) {ฯƒ : W โ†’ V} {p : V} (hฯƒ : ContDiffAt โ„‚ โŠค ฯƒ (ฯ€ p)) (hฯ€ฯƒ : โˆ€แถ  (w : W) in nhds (ฯ€ p), ฯ€ (ฯƒ w) = w) (J : Ideal โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)) (hJ : โˆ€ (g : โ†‘((holomorphicStructureSheaf (modelWithCornersSelf โ„‚ V) V).presheaf.stalk p)) (G : V โ†’ โ„‚), (toFilterGerm (modelWithCornersSelf โ„‚ V) V p (nhds p) โ‹ฏ) g = โ†‘G โ†’ (g โˆˆ J โ†” โˆ€แถ  (w : W) in nhds (ฯ€ p), G (ฯƒ w) = 0)) :

      Germs on the image of a holomorphic section. Let ฯ€ : V โ†’ W be holomorphic and ฯƒ a local holomorphic section of ฯ€ near ฯ€ p. If an ideal J of the holomorphic germs at p consists exactly of the germs vanishing along ฯƒ, then pulling back along ฯ€ identifies the holomorphic germs at ฯ€ p with the germs at p modulo J.