Generic construction of a sheaf from a LocalInvariantProp on a manifold #
This file constructs the sheaf-of-types of functions f : M → M' (for charted spaces M, M')
which satisfy the lifted property LiftProp P associated to some locally invariant (in the sense
of StructureGroupoid.LocalInvariantProp) property P on the model spaces of M and M'. For
example, differentiability and smoothness are locally invariant properties in this sense, so this
construction can be used to construct the sheaf of differentiable functions on a manifold and the
sheaf of smooth functions on a manifold.
The mathematical work is in associating a TopCat.LocalPredicate to a
StructureGroupoid.LocalInvariantProp: that is, showing that a differential-geometric "locally
invariant" property is preserved under restriction and gluing.
Main definitions #
StructureGroupoid.LocalInvariantProp.localPredicate: theTopCat.LocalPredicate(in the sheaf-theoretic sense) on functions from open subsets ofMintoM', which states whether such functions satisfyLiftProp P.StructureGroupoid.LocalInvariantProp.sheaf: the sheaf-of-types of functionsf : M → M'which satisfy the lifted propertyLiftProp P.
Equations
Let P be a LocalInvariantProp for functions between spaces with the groupoids G, G'
and let M, M' be charted spaces modelled on the model spaces of those groupoids. Then there is
an induced LocalPredicate on the functions from M to M', given by LiftProp P.
Equations
- StructureGroupoid.LocalInvariantProp.localPredicate M M' hG = { pred := fun {U : TopologicalSpace.Opens ↑(TopCat.of M)} (f : ↥U → M') => ChartedSpace.LiftProp P f, res := ⋯, locality := ⋯ }
Instances For
Let P be a LocalInvariantProp for functions between spaces with the groupoids G, G'
and let M, M' be charted spaces modelled on the model spaces of those groupoids. Then there is
a sheaf of types on M which, to each open set U in M, associates the type of bundled
functions from U to M' satisfying the lift of P.
Equations
Instances For
Equations
- StructureGroupoid.LocalInvariantProp.sheafHasCoeToFun M M' hG U = { coe := fun (a : (StructureGroupoid.LocalInvariantProp.sheaf M M' hG).val.obj U) => ↑a }