Category Theory
Zulip Server
Archive

You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.


Stream: learning: questions

Topic: vector bundle over groupoid


view this post on Zulip Pim de Haan (Sep 21 2020 at 17:32):

Hi,

I’m starting to learn category theory in an attempt to find more elegant specifications of machine learning models. I’m trying to model vector fields over groupoids and have the following questions. I’d also be very happy with pointers to reference materials.

Consider a groupoid G and groupoid representation functor ρ:GVec \rho : G \to Vec . For simplicity, the objects of G are a finite discrete set. Such a functor appears to also describe a generalization of a vector bundle over the objects of G, in which only the fibers of the connected components of G are required to be isomorphic. A morphism ϕ:xy \phi : x \to y in G is lifted to a linear map between the vector bundle fibers ρϕ:VxVy \rho \phi: V_x \to V_y . The functor ρ \rho here plays a similar role as the transport functor in Schreiber and Waldorf “Parallel Transport and Functors”.

Is there an elegant way to describe how the vector bundle VObj(G) V \to Obj(G) is induced by ρ \rho ? And how the space of sections of the vector bundle comes about? The space of sections is obviously just isomorphic to the direct sum of the fibers, but I wonder if there’s a more categorical way of think about it.

I was thinking of the vector bundle simply being the co-limit of the functor ρ \rho , but that results in a vector space that transforms trivially under all groupoid morphisms, so that’s not it.

Thanks,
Pim

view this post on Zulip Matteo Capucci (he/him) (Sep 21 2020 at 18:10):

Oddly enough I've been fiddling with the same construction, in the same context, just yesterday with @Bruno Gavranovic

view this post on Zulip Matteo Capucci (he/him) (Sep 21 2020 at 18:13):

By the way I guess you should do something analogous to a Grothendieck construction. I don't know if there's a general enough version that handles this case, nevertheless you can define it 'by hand': it's simply the tangent bundle

view this post on Zulip fosco (Sep 21 2020 at 21:23):

Hi, I think the keyword here is "geometric realization": up to homotopy, a groupoid "is" exactly a topological space with trivial homotopy groups in degree n2n\ge 2. Now, thanks to the Grothendieck construction, a functor ϱ:GVec\varrho : G \to \sf Vec can be turned into a discrete opfibration E(G)GE(G) \to G, whose fiber over xGx\in G is exactly ϱ(x)\varrho(x). So, you don't just get a vector bundle over Ob(G)Ob(G), but a whole fibration over (the geometric realization of) GG.

The link between group(oid) actions and fibrations over group(oid)s is quite deep, and even the case where the groupoid GG is a group is enough to keep you busy for a long time. I first learned something on the topic in Chapter 3 of May's "Concise course in Algebraic Topology"; see also John Baez's "Lectures" here https://math.ucr.edu/home/baez/cohomology.pdf

view this post on Zulip David Michael Roberts (Sep 22 2020 at 00:29):

There is a canonical vector bundle of the groupoid Core(Vect)Core(Vect) of vector spaces and linear isomorphisms, namely that over the object VV, we place the vector space... VV! The linear maps act exactly as they should. This canonical vector bundle is exactly analogous to the "universal covering space" over the groupoid of sets and bijections, which is the core of the category of pointed sets and pointed functions, mapping down to SetSet by forgetting the chosen point. This is what is used in the Grothendieck construction.

Given a groupoid GG and a functor to VectVect, it factors through Core(Vect)Core(Vect), and then one can pull the canonical vector bundle back, much as the category of elements over a groupoid arises as pullback of Core(Set)Core(Set)Core(Set_*) \to Core(Set).

All this works for arbitrary categories in place of GG, in which case we forget taking the cores, and in fact the universal vector bundle exists over all of VectVect, not just Core(Vect)Core(Vect).

view this post on Zulip Jens Hemelaer (Sep 22 2020 at 07:17):

Pim said:

Is there an elegant way to describe how the vector bundle VObj(G) V \to Obj(G) is induced by ρ \rho ? And how the space of sections of the vector bundle comes about? The space of sections is obviously just isomorphic to the direct sum of the fibers, but I wonder if there’s a more categorical way of think about it.

Before diving into the Grothendieck construction, it might help to check out the "category of elements" first, see for example the Wikipedia page here.

Starting from ρ:GVec\rho : G \to Vec, you can compose with the forgetful functor VecSetVec \to Set to get a functor F:GSetF : G \to Set. The category of elements of FF is then maybe what you are looking for.

view this post on Zulip David Michael Roberts (Sep 23 2020 at 00:26):

There is a category over VectVect with class of objects the disjoint union of all objects in VectVect, and a morphism from vVv\in V to wWw\in W is a linear map L ⁣:VWL\colon V\to W with L(v)=wL(v)=w. The functor to VectVect sends vVv\in V to VV and the obvious thing on arrows. The pullback of this functor with GVectG\to Vect is what you want. No need to go to the category of sets.

view this post on Zulip Pim de Haan (Sep 23 2020 at 12:49):

Ah, fantastic, thanks a lot for the answers everyone! I was looking into the Grothendieck construction, but it seemed odd to lose all the vector structure. @David Michael Roberts 's pullback, which I think is the same as @fosco's E(G) E(G) , seems to be come close to what I wanted.

However, am I correct in understanding that this pullback category (let's call it VG V_G ) has as objects elements (x,v) (x, v) for xOb(G),vρx x \in Ob(G), v \in \rho x and as morphisms the linear maps (ϕ,v):(x,v)(y,w),ϕ:xyG (\phi, v) : (x, v) \to (y, w), \phi : x \to y \in G, s.t. ρϕ(v)=w\rho \phi(v) = w ?

Then a section of the bundle π:VGG\pi : V_G \to G is a functor σ:GVG \sigma : G \to V_G s.t. πσ=idG\pi \circ \sigma = \text{id}_G, right? On objects, that'd assign a vector σxρx\sigma_x \in \rho x. If so, that'd require that for any ϕ:xyG\phi: x \to y \in G, we need σy=ρϕ(σx)\sigma_y = \rho \phi(\sigma_x) . This means that when picking a section, we can only freely pick one vector per component of the groupoid. This is not quite what I wanted. Even worse, the vector σx\sigma_x needs to be in the trivial subspace of the automorphism group at xx in the representation ρ\rho.

For example, if we let GG be the path groupoid of some connected manifold and let ρ\rho be the transport functor on the tangent bundle, I'd like the space of sections to contain all tangent vector fields, whereas in the above construction I seem to get a single constant zero vector field.

view this post on Zulip David Michael Roberts (Sep 23 2020 at 23:35):

Your construction is correct! I'll have to think about the section thing. You may need to make the section a functor, not just a function at the object level.