Gluing data #
We define GlueData as a family of data needed to glue topological spaces, schemes, etc. We
provide the API to realize it as a multispan diagram, and also state lemmas about its
interaction with a functor that preserves certain pullbacks.
A gluing datum consists of
- An index type
J - An object
U ifor eachi : J. - An object
V i jfor eachi j : J. - A monomorphism
f i j : V i j ⟶ U ifor eachi j : J. - A transition map
t i j : V i j ⟶ V j ifor eachi j : J. such that f i iis an isomorphism.t i iis the identity.- The pullback for
f i jandf i kexists. V i j ×[U i] V i k ⟶ V i j ⟶ V j ifactors throughV j k ×[U j] V j i ⟶ V j ivia somet' : V i j ×[U i] V i k ⟶ V j k ×[U j] V j i.t' i j k ≫ t' j k i ≫ t' k i j = 𝟙 _.
- J : Type v
The index type
Jof a gluing datum - U : self.J → C
- f_hasPullback (i j k : self.J) : Limits.HasPullback (self.f i j) (self.f i k)
- t' (i j k : self.J) : Limits.pullback (self.f i j) (self.f i k) ⟶ Limits.pullback (self.f j k) (self.f j i)
- t_fac (i j k : self.J) : CategoryStruct.comp (self.t' i j k) (Limits.pullback.snd (self.f j k) (self.f j i)) = CategoryStruct.comp (Limits.pullback.fst (self.f i j) (self.f i k)) (self.t i j)
- cocycle (i j k : self.J) : CategoryStruct.comp (self.t' i j k) (CategoryStruct.comp (self.t' j k i) (self.t' k i j)) = CategoryStruct.id (Limits.pullback (self.f i j) (self.f i k))
Instances For
(Implementation) The disjoint union of U i.
Equations
- D.sigmaOpens = ∐ D.U
Instances For
(Implementation) The diagram to take colimit of.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The glued object given a family of gluing data.
Equations
Instances For
The map D.U i ⟶ D.glued for each i.
Equations
Instances For
The pullback cone spanned by V i j ⟶ U i and V i j ⟶ U j.
This will often be a pullback diagram.
Equations
- D.vPullbackCone i j = CategoryTheory.Limits.PullbackCone.mk (D.f i j) (CategoryTheory.CategoryStruct.comp (D.t i j) (D.f j i)) ⋯
Instances For
The projection ∐ D.U ⟶ D.glued given by the colimit.
Equations
Instances For
A functor that preserves the pullbacks of f i j and f i k can map a family of glue data.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The diagram of the image of a GlueData under a functor F is naturally isomorphic to the
original diagram of the GlueData via F.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If F preserves the gluing, we obtain an iso between the glued objects.
Equations
Instances For
If F preserves the gluing, and reflects the pullback of U i ⟶ glued and U j ⟶ glued,
then F reflects the fact that V_pullback_cone is a pullback.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If there is a forgetful functor into Type that preserves enough (co)limits, then D.ι will
be jointly surjective.
This is a variant of GlueData that only requires conditions on V (i, j) when i ≠ j.
See GlueData.ofGlueData'
- J : Type v
Indexing type of a glue data.
- U : self.J → C
Objects of a glue data to be glued.
Objects representing the intersections.
The inclusion maps of the intersection into the object.
The transition maps between the intersections.
- t' (i j k : self.J) (hij : i ≠ j) (hik : i ≠ k) (hjk : j ≠ k) : Limits.pullback (self.f i j hij) (self.f i k hik) ⟶ Limits.pullback (self.f j k hjk) (self.f j i ⋯)
The transition maps between the intersection of intersections.
- t_fac (i j k : self.J) (hij : i ≠ j) (hik : i ≠ k) (hjk : j ≠ k) : CategoryStruct.comp (self.t' i j k hij hik hjk) (Limits.pullback.snd (self.f j k hjk) (self.f j i ⋯)) = CategoryStruct.comp (Limits.pullback.fst (self.f i j hij) (self.f i k hik)) (self.t i j hij)
- t_inv (i j : self.J) (hij : i ≠ j) : CategoryStruct.comp (self.t i j hij) (self.t j i ⋯) = CategoryStruct.id (self.V i j hij)
- cocycle (i j k : self.J) (hij : i ≠ j) (hik : i ≠ k) (hjk : j ≠ k) : CategoryStruct.comp (self.t' i j k hij hik hjk) (CategoryStruct.comp (self.t' j k i hjk ⋯ ⋯) (self.t' k i j ⋯ ⋯ hij)) = CategoryStruct.id (Limits.pullback (self.f i j hij) (self.f i k hik))
Instances For
(Implementation detail) the constructed GlueData.f from a GlueData'.
Equations
- D.f' i j = if h : i = j then CategoryTheory.eqToHom ⋯ else CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) (D.f i j h)
Instances For
(Implementation detail) the constructed GlueData.t' from a GlueData'.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The constructed GlueData of a GlueData', where GlueData' is a variant of GlueData that only
requires conditions on V (i, j) when i ≠ j.
Equations
- One or more equations did not get rendered due to their size.