Zulip Chat Archive
Stream: maths
Topic: Gluing topological spaces
Andrew Yang (Oct 19 2021 at 18:03):
Now that the road to the Spec-adjunction seems quite clear, I started thinking about how one would define fibered products of schemes.
The first road block is probably gluing topological spaces.
The most straightforward way is probably giving some glue_data
such as
structure glue_data :=
(ι : Type*)
(U : ι → Type*)
(h₁ : ∀ i, topological_space (U i))
(V : Π i, ι → opens (U i))
(f : Π i j, C(V i j, V j i))
(h₂ : ∀ i, V i i = ⊤)
(h₃ : ∀ i, (f i i).to_fun = id)
(h₄ : ∀ ⦃i j⦄ k (x : V i j), x.val ∈ V i k → (f i j x).val ∈ V j k)
(h₅ : ∀ i j k (x : V i j) (h : x.val ∈ V i k),
(f j k ⟨(f i j x).val, h₄ k x h⟩).val = (f i k ⟨x.val, h⟩).val)
and spitting out a topological space (by quot
), together with the immersions into it that covers it, the universal property, and the descriptions of the intersections of the image.
I believe that this approach would be quite messy as I would quite often need to consider elements of one subset as another, but I suppose that it doesn't really matter how it is constructed as long as the properties are proved. That said, I'm not experienced enough with Lean to make such a claim. Thus the questions are as follows.
- Is there a better way to define the
glue_data
? (Of course the names of the conditions will change) - Is there a better (cleaner?) way to glue the data? (e.g. constructing diagrams and taking colimits, though I doubt this particular way would be better)
Johan Commelin (Oct 19 2021 at 18:24):
Note that mathlib knows that Top
has arbitrary colimits.
Johan Commelin (Oct 19 2021 at 18:25):
Let me repost http://math.stanford.edu/~vakil/d/FOAG/BOfiber-prods.pdf which I think could serve as an informal blueprint to this result.
Johan Commelin (Oct 19 2021 at 18:27):
What is nice about these notes by Osserman is that he employs Zariski sheaves. This means that you can cut the problem into two steps: first you show that a Zariski sheaf is representable if it is locally representable. And secondly, you show that the fibre product is a Zariski sheaf that is locally representable by Spec(A ⊗ B)
.
Andrew Yang (Oct 19 2021 at 18:33):
Johan Commelin said:
Note that mathlib knows that
Top
has arbitrary colimits.
I did see that, but there is still some work needed on drawing out the diagrams and proving the other properties of the glued space. I'm not sure if this would be better.
Scott Morrison (Oct 19 2021 at 20:30):
It would be nice to use the colimits in Top
. This application (gluing sheaves) is why they were implemented in the first place. :-)
I'm not sure if you've seen, but we in fact already have colimits in PresheafedSpace
as well.
Scott Morrison (Oct 19 2021 at 20:31):
But regarding your glue_data
above: I would hope that none of the .to_fun
and .val
s are required. Coercions should be taking care of all of those (and indeed, I'd hope that using coercions are the simp normal form, so you'll actually find it harder if you write out the data with explicit .to_fun
s).
Andrew Yang (Oct 19 2021 at 20:38):
If that's the case, I could use the colimits instead.
I've also edited the original post in regard to your suggestion. Hope that it looks better now.
Scott Morrison (Oct 19 2021 at 20:47):
I'm not promising that using colimits will be nice. After all I never did gluing of sheaves following this path. :-)
Johan Commelin (Oct 19 2021 at 21:08):
If we already have colimits in PresheafedSpace
, I'm hoping we can use that + zariski sheaves to get a nice statement for schemes.
Andrew Yang (Oct 21 2021 at 19:47):
The draft is about done at #9864. I'm not sure if there are some crucial properties that I'm missing. Feel free to request some more.
Reid Barton (Oct 22 2021 at 10:59):
I feel like it's probably too "strict" to require the to be actual subsets of the . It would be better to glue along open immersions.
Reid Barton (Oct 22 2021 at 11:01):
One argument for this is that the maps to the glued space should have the same sort of status as the original gluing maps . However, we can't arrange to have literally be an open subset.
Reid Barton (Oct 22 2021 at 11:13):
One thing that might be a bit annoying is expressing the condition that is an equivalence relation. In ordinary math, the simplest general definition is that takes it to an equivalence relation of sets for any object . If you unwind that using what it means to map into an (open) embedding, it turns into a set-theoretic condition of the type you have here, plus the statements that and are jointly monic for each --which is automatic if is already an embedding, but that doesn't have to be the case for more general kinds of gluing. Maybe it would be worth isolating this condition "is equivalence relation" and proving several equivalent characterizations.
Reid Barton (Oct 22 2021 at 11:13):
I note that one of the first things you do is define "The family of V i j
as topological spaces indexed by ι × ι
", so maybe it wouldn't be that big a change to take the V i j
as spaces from the start.
Reid Barton (Oct 22 2021 at 11:20):
I think even for the sorts of constructions you'll want to do in AG you would rather be gluing along open immersions of schemes, e.g., prove that the map defined by functoriality of is an open immersion, rather than poking around the construction of to find an open subset that you can identify with
Andrew Yang (Oct 22 2021 at 16:47):
Reid Barton said:
One thing that might be a bit annoying is expressing the condition that is an equivalence relation. In ordinary math, the simplest general definition is that takes it to an equivalence relation of sets for any object . If you unwind that using what it means to map into an (open) embedding, it turns into a set-theoretic condition of the type you have here, plus the statements that and are jointly monic for each --which is automatic if is already an embedding, but that doesn't have to be the case for more general kinds of gluing. Maybe it would be worth isolating this condition "is equivalence relation" and proving several equivalent characterizations.
I'm not really sure what you mean by this section. Are you suggesting that we should do the followings?
- Remove the cocycle condition from the
structure gluing_data
. - Let
gluing_data
be valued in arbitrary categories. - Prove that If is an equivalence relation for each then the immersions is mono (or something similar as I'm not even sure if this is true)
- Write out explicitly what 3. actually means in Top and provide suitable APIs.
Andrew Yang (Oct 23 2021 at 13:41):
I'm still not sure how to state the cocycle condition properly. As a parity with the case of glueing schemes would be better, I'm thinking them in terms of schemes.
Suppose we have scheme structures on and with open immersions and isomorphisms
Would it be better to state it in terms of the open subscheme of induced on and somehow lifting onto these schemes, or about restricted on ?
Kevin Buzzard (Oct 23 2021 at 16:46):
My instinct is that you should avoid subobjects if at all possible. When we tried gluing sheaves in 2018 we used subobjects and all it does is makes matters worse -- now as well as you have its image in and its image in as well as the corresponding images for .
Andrew Yang (Oct 23 2021 at 17:50):
Would it be possible or practical to introduce representing and assert that they (under permutations of indices) are all isomorphic to each other and these isomorphisms commutes with the transition maps?
Adam Topaz (Oct 23 2021 at 18:01):
You can use pullbacks for
Andrew Yang (Oct 23 2021 at 18:11):
But I suppose I don't have pullbacks in schemes yet?
Adam Topaz (Oct 23 2021 at 18:12):
Oh, I thought were discussing topological spaces
Andrew Yang (Oct 23 2021 at 18:17):
Oh yes. But I think it would be better to have a parity between gluing spaces and gluing schemes, and using pullbacks here seems to only postpone the problem to when we are gluing schemes.
Johan Commelin (Oct 23 2021 at 18:19):
But if you want to abstract the notion of "gluing things", don't you just end up with some form of colimit?
Adam Topaz (Oct 23 2021 at 18:19):
Yes, it's a colimit, but you can't just take some random colimit of schemes
Adam Topaz (Oct 23 2021 at 18:22):
As for schemes, it should be easy to show that the pullback of two open immersions exist, even before showing that all pullbacks exist
Adam Topaz (Oct 23 2021 at 18:23):
And besides you would need this just for affine schemes for the pullback construction of schemes
Adam Topaz (Oct 23 2021 at 18:24):
https://stacks.math.columbia.edu/tag/023U
Reid Barton (Oct 23 2021 at 18:34):
The way I would think about it is that you need a map from to (both being subobjects of )
Reid Barton (Oct 23 2021 at 18:36):
Another way to phrase it is that if you apply the Yoneda embedding to everything in sight, you get a equivalence relation (in presheaves on whatever category). If the pullbacks happen to exist in the original category, then their images will be the pullbacks in the category of presheaves, but even if not, there's still a pullback in presheaves which knows the correct thing
Reid Barton (Oct 23 2021 at 18:38):
then, when the quotient presheaf is representable we call it the quotient in the original category, the properties of the glued thing are the ones you can read off from an equivalence relation quotient in a presheaf category (e.g., )
Reid Barton (Oct 23 2021 at 18:40):
wait that's totally not true
Reid Barton (Oct 23 2021 at 18:40):
It's true though if instead of presheaves, you work with sheaves for the topology which is generated by gluings of this kind
Andrew Yang (Oct 23 2021 at 18:55):
I would start looking into the option of stating the cocycle condition in terms of .
But I suppose there is still an option to require to be actual subsets of and manually identify the open immersions with the subscheme on the image when we actually want to glue things, since subobjects indeed complicate matters a lot as mentioned by Kevin Buzzard, and if the cocycle condition is stated in terms of subschemes, we would still have to do the identification one way or another when gluing.
Reid Barton (Oct 23 2021 at 19:03):
Wait @Kevin Buzzard what do you mean by "subobject"?
Adam Topaz (Oct 23 2021 at 19:07):
I assume Kevin means docs#open_embedding for Top
.
Kevin Buzzard (Oct 23 2021 at 19:28):
I just meant some kind of V : set U
Kevin Buzzard (Oct 23 2021 at 19:29):
Because then you get V i j : set U i
and V i j : set U j
and they're not at all the same thing. That was the problem we ran into
Reid Barton (Oct 23 2021 at 19:31):
right, that's what I thought you meant from context
Reid Barton (Oct 23 2021 at 19:32):
but in category theory, "subobject" means (an equivalence class of) monos into something
Kevin Buzzard (Oct 23 2021 at 19:41):
Oh apologies. I'm just saying "use types not terms for "
Kevin Buzzard (Oct 23 2021 at 19:43):
Either everything should be a type or everything should be a term. In the Coq odd order paper they made everything a term. Every group was a subgroup of a large ambient group. But this doesn't work for rings, so everything being a type is something we should be getting the hang of. We tried making some things types and some things terms when gluing sheaves and this was the worst of all worlds
Reid Barton (Oct 23 2021 at 19:45):
also, it hasn't come up yet but in algebraic spaces, might not even be a monomorphism!
Andrew Yang (Oct 24 2021 at 18:56):
I've changed the definitions and the second draft is about finished over at #9864.
Last updated: Dec 20 2023 at 11:08 UTC