Zulip Chat Archive
Stream: Is there code for X?
Topic: Adjunction space, a.k.a. attaching space
Michael Rothgang (Jul 16 2024 at 19:05):
Given two topological spaces and and a map from a subspace to , one can form the adjunction, commonly denoted , as the quotient of the disjoint union by the equivalence relation generated by all pairs .
Does mathlib have this? (It has the disjoint union and the quotient topology, so defining this wouldn't be hard. I wasn't planning to do so now, but if it exists, I would probably use it.)
Adam Topaz (Jul 16 2024 at 19:06):
Again, this is an example of a colimit (in this case, a pushout).
Michael Rothgang (Jul 16 2024 at 19:06):
I see - I should learn how to think far more categorically!
Adam Topaz (Jul 16 2024 at 19:07):
the general setup is this: you have three spaces , and , and you look at two maps and . Then take the quotient of the disjoint union of and identifying the images of in the copy of and .
Adam Topaz (Jul 16 2024 at 19:08):
your adjunction space is the special case where is the inclusion of into and is the composition of your with this inclusion.
Michael Rothgang (Jul 16 2024 at 19:11):
Thanks; makes perfect sense!
Is there some custom notation for the pushout (or colimits in general)? How would I write this down (or where can I look to see one example myself)?
Adam Topaz (Jul 16 2024 at 19:12):
import Mathlib
open CategoryTheory Limits
noncomputable
example (A X Y : TopCat) (f : A ⟶ X) (g : A ⟶ Y) : TopCat := pushout f g
Michael Rothgang (Jul 16 2024 at 19:13):
Wow, so short! Thanks a lot!
Adam Topaz (Jul 16 2024 at 19:13):
note that it's noncomputable, unfortunately. If you want something more concrete, you will likely have to make things more explicit.
Michael Rothgang (Jul 16 2024 at 19:14):
I certainly don't need to generate code. I'll see if I need to use anything more concrete...
Dagur Asgeirsson (Jul 16 2024 at 19:23):
This file claims to be about pullbacks and pushouts in TopCat. It develops some API for explicit pullback, but there is barely anything about pushouts. If you need an explicit construction of the pushout, you might want to take a look at how this is done there for the pullback and dualize.
Michael Rothgang (Jul 16 2024 at 19:33):
This looks exactly like what I would do, thanks a lot!
Last updated: May 02 2025 at 03:31 UTC