The structure sheaf of an analytic manifold #
For a manifold M modelled on a normed space E over a field ๐ with analytic (C^ฯ) chart
changes, the structure sheaf ๐ช_M is the sheaf of commutative rings
U โฆ {f : U โ ๐ : f is C^ฯ}, the sheaf of regular functions of BierstoneโMilman's regular
coordinate charts [BM97, (0.3)], which for an analytic manifold is the sheaf of analytic functions
[BM97, ยง3, "Regular coordinate charts"].
- The sheaf of
C^nfunctions. For a manifoldMmodelled on(EM, HM), a manifoldNmodelled on(E, H)and any smoothnessn : โโฯ,contMDiffSheaf IM I n M Nis the sheaf of types ofC^nfunctionsM โ N(the local predicatecontMDiffLocalPredicate, Mathlib'sLocalInvariantProp.localPredicateforcontDiffWithinAt_localInvariantProp n), whose sections overUare definitionally the bundled mapsC^nโฎIM, U; I, Nโฏ; for aC^ncommutative ringR,contMDiffSheafCommRing IM I n M Ris the sheaf of commutative rings ofC^nfunctionsM โ R. Mathlib'ssmoothSheafandsmoothSheafCommRingare the casen = โwithMandNin one universe; here the target lives inTypeand the manifold inType u, so that the sheaf of rings is an object ofCommRingCat.{u}overTopCat.of Mand Mathlib's stalk API applies to manifolds whose carrier is in any universe. A section overUvalued in๐extends by zero to a function onM(extendBy0). - The structure sheaf
structureSheaf ๐ E Mis the casen = ฯ,R = ๐. Its global constants are the ring homomorphismconstHom : ๐ โ+* ฮ(M, ๐ช_M); a chartฯof the maximal atlas with coordinatesฯ : E โL[๐] (Fin n โ ๐)has the coordinate sectionsฯ_i โ ฯover its source (chartSection) and their germsx_i โ ๐ช_{M,a}(coord). - The stalk as a ring of germs. The stalk
๐ช_{M,a}of the sheaf ofC^nfunctions valued in๐embeds intoFilter.Germ (๐ a) ๐:stalkToGermsends the germ of a sectionfto the germ of its extension by zero (stalkToGerm_germ); it is injective (stalkToGerm_injective: two sections with the same germ agree on an open neighbourhood ofa), and its range is the set of germs of functionsC^non a neighbourhood ofa(mem_range_stalkToGerm_iff). - The stalk map of an analytic map. For
ฯ : N โ Manalytic on an openV โ bwithฯ b = c,germMapOn ฯ hฯ hb hc : ๐ช_{M,c} โ+* ๐ช_{N,b}iss โฆ s โ ฯ: the germ ofsis composed withฯ(stalkGermComp, throughgermCompRingHom, Mathlib'sFilter.Germ.compTendstoas a ring homomorphism), the composite is again the germ of a section (stalkGermComp_mem_range, by the description of the range ofstalkToGerm), and it is lifted back to the stalk alongstalkEquivRange. The target pointcis a parameter withhc : ฯ b = c, so that the stalk map of a local inverse atฯ blands in๐ช_{N,b}without transport;germMap ฯ hฯ bis the case of a global analytic map. It is the stalk map along which ideal sheaves are pulled back (IdealSheaf.pullback).
The sheaf of C^n functions #
The local predicate "f : U โ N is C^n" on the open sets of M: Mathlib's
LocalInvariantProp.localPredicate for contDiffWithinAt_localInvariantProp n, with the target in
Type (Mathlib's version needs M and N in one universe).
Equations
- Manifold.contMDiffLocalPredicate IM I n M N = { pred := fun {U : TopologicalSpace.Opens โโงM} (f : โฅU โ N) => ChartedSpace.LiftProp (ContDiffWithinAtProp IM I n) f, res := โฏ, locality := โฏ }
Instances For
The sheaf of types of C^n functions from M to N.
Equations
- Manifold.contMDiffSheaf IM I n M N = TopCat.subsheafToTypes (Manifold.contMDiffLocalPredicate IM I n M N)
Instances For
Equations
- Manifold.contMDiffSheaf.coeFun IM I n N U = { coe := fun (a : (Manifold.contMDiffSheaf IM I n M N).presheaf.obj U) => โa }
Equations
- One or more equations did not get rendered due to their size.
The presheaf of C^n functions from M to a C^n commutative ring R, as a presheaf of
commutative rings.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The sheaf of C^n functions from M to a C^n commutative ring R, as a sheaf of
commutative rings.
Equations
- Manifold.contMDiffSheafCommRing IM I n M R = { obj := Manifold.contMDiffPresheafCommRing IM I n M R, property := โฏ }
Instances For
Equations
- Manifold.contMDiffSheafCommRing.coeFun IM I n M R U = { coe := fun (a : โ((Manifold.contMDiffSheafCommRing IM I n M R).presheaf.obj U)) => โa }
The extension by zero of a C^n section over U (valued in ๐) to a function on M.
Equations
- Manifold.extendBy0 IM n M f x = if h : x โ U then โf โจx, hโฉ else 0
Instances For
The structure sheaf #
The structure sheaf ๐ช_M of analytic functions on the manifold M modelled on E over
๐: the sheaf of commutative rings U โฆ {f : U โ ๐ : ContMDiff ๐(๐, E) ๐(๐) ฯ f}, the sheaf of
regular functions of an analytic manifold [BM97, (0.3); ยง3, "Regular coordinate charts"].
Equations
- Manifold.structureSheaf ๐ E M = Manifold.contMDiffSheafCommRing (modelWithCornersSelf ๐ E) (modelWithCornersSelf ๐ ๐) โค M ๐
Instances For
Equations
- Manifold.structureSheaf.coeFun ๐ E M U = { coe := fun (a : โ((Manifold.structureSheaf ๐ E M).presheaf.obj U)) => โa }
The constant section c over M.
Equations
- Manifold.constSection ๐ E M c = โจfun (x : โฅโค) => c, โฏโฉ
Instances For
The constants as the ๐-algebra structure of ๐ช_M: the ring homomorphism
๐ โ+* ฮ(M, ๐ช_M), c โฆ the constant section c (the structure used when M is regarded as
an analytic space over ๐).
Equations
- Manifold.constHom ๐ E M = { toFun := Manifold.constSection ๐ E M, map_one' := โฏ, map_mul' := โฏ, map_zero' := โฏ, map_add' := โฏ }
Instances For
A chart ฯ of the maximal atlas with coordinates ฯ: the coordinate function ฯ_i โ ฯ as a
section of ๐ช_M over the source of ฯ.
Equations
- Manifold.chartSection E ฯ ฯ hฯ i = โจfun (x : โฅ(Opposite.unop (Opposite.op { carrier := ฯ.source, is_open' := โฏ }))) => ฯ (โฯ โx) i, โฏโฉ
Instances For
The coordinate germs x_i := ฯ_i โ ฯ โ ๐ช_{M,a} of a chart ฯ of the maximal atlas
containing a, with coordinates ฯ.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The stalk as a ring of germs #
The germ at a of the extension by zero, on the sections over an open neighbourhood U of
a, as a ring homomorphism (on U โ ๐ a the extensions of sums and products are the pointwise
sums and products).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Naturality of the germs at a over the open neighbourhoods of a.
The cocone of the germs at a of the extensions by zero over the open neighbourhoods of a.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The stalk as germs: the ring homomorphism ๐ช_{M,a} โ+* Filter.Germ (๐ a) ๐ sending the
germ of a section to the germ of its extension by zero, as a morphism of CommRingCat (the germ
ring Filter.Germ (๐ a) ๐ lives in the universe of M).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The stalk as germs, stalkToGerm : ๐ช_{M,a} โ+* Filter.Germ (๐ a) ๐.
Equations
- Manifold.stalkToGerm IM n M a = CommRingCat.Hom.hom (Manifold.stalkToGermHom IM n M a)
Instances For
Two sections with the same germ at a agree on an open neighbourhood of a, so the stalk
embeds into the germs.
The extension by zero of a C^n section over U is C^n on U.
The range of stalkToGerm is the set of germs of functions C^n on an open neighbourhood of
a.
The stalk map of an analytic map #
Composition of germs of ๐-valued functions with a map g tending to the base point, as a
ring homomorphism Filter.Germ l' ๐ โ+* Filter.Germ l ๐ (Mathlib's Filter.Germ.compTendsto
bundled; the stalk maps below, the chart transport and the coordinate change are its instances).
Equations
- Manifold.germCompRingHom g hg = { toFun := fun (f : l'.Germ ๐) => f.compTendsto g hg, map_one' := โฏ, map_mul' := โฏ, map_zero' := โฏ, map_add' := โฏ }
Instances For
The germ at c = ฯ b of a section of ๐ช_M, composed with ฯ, as a germ at b.
Equations
- Manifold.stalkGermComp ฯ hฯ hb hc = (Manifold.germCompRingHom ฯ โฏ).comp (Manifold.stalkToGerm (modelWithCornersSelf ๐ E) โค M c)
Instances For
The stalk as its own image in the germs, a ring isomorphism.
Equations
- Manifold.stalkEquivRange b = RingEquiv.ofBijective (Manifold.stalkToGerm (modelWithCornersSelf ๐ E') โค N b).rangeRestrict โฏ
Instances For
The stalk map of an analytic map ฯ, analytic on the open V โ b, with ฯ b = c: the
ring homomorphism ๐ช_{M,c} โ+* ๐ช_{N,b}, s โฆ s โ ฯ.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The stalk map ๐ช_{M, ฯ b} โ+* ๐ช_{N, b} of a global analytic map.
Equations
- Manifold.germMap ฯ hฯ b = Manifold.germMapOn ฯ โฏ โฏ โฏ