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: properties, structure, stuff, objects vs morphisms


view this post on Zulip Alex Kreitzberg (Nov 09 2024 at 06:24):

I interpret Reihl's description of faithful functors into Sets, as modeling subcategories of Set. With these subcategories defined by requiring their functions satisfy a property preserved by composition, like continuity. So the faithful functor into Set is therefore "forgetting" these properties.

Whereas a functor, more broadly, could forget structure on arrows.

As an example of my understanding of the later, a graph homomorphism could be mapped under a forgetful functor to the underlying function on the verticies. Thereby forgetting the underlying function on the edges.

This made sense to me, so I looked through [[stuff, structure, property]] to test and solidify my understanding, but saw the same nouns seem to be describing features of objects, not arrows.

That is, a functor which forgot at most properties, was full and faithful, so abelian groups get mapped to groups, with the forgotten property being of the object not the morphisms. Then a faithful functor could lose structure, like a set's topology. The lost structure being the structure on the object.

And finally, a functor could forget stuff, so in the graph example above, we lost an entire set of edges belonging to the graph, the object.

How much is lost seems to shift whether we're talking about the arrows or the objects - while the underlying set of a topological space forgot structure, the topology. The underlying function only lost the property continuity.

Am I seeing a real analogy between these levels? And if so, is there a nice way to clarify the relationship between properties, structure, and stuff of arrows - vs properties, structure, and stuff of the arrow's objects?

I've attached Riehl's description for context: 4f6b172c-b755-4017-80ef-97d809a41ffc.jpg

view this post on Zulip John Baez (Nov 09 2024 at 09:03):

You're right to notice that

and so on, though the "so on" only because visible at the 2- or higher-categorical level.

view this post on Zulip Mike Shulman (Nov 09 2024 at 15:23):

And this is true basically by definition of the [[stuff, structure, property]] picture.

view this post on Zulip John Onstead (Nov 09 2024 at 20:52):

Here's how I like to think of the reason why a faithful functor forgets both structure on objects and properties on morphisms- but take it with a grain of salt! The morphisms in a category are meant to be an abstract form of "structure-preserving map". So when you add "extra structure" onto an object, you must then add a corresponding extra property to your morphisms: they must be precisely the morphisms between the underlying objects that satisfy the property of preserving the structure you will be adding onto them. From another perspective, removing the structure on the objects by taking a faithful functor in turn removes the requirement that maps need to preserve this structure, thus forgetting that property!
So to summarize, this allows you to connect together the action of a faithful functor on both objects and morphisms: you can abstractly think of the "property" of a morphism that is forgotten by a faithful functor to be the property of structure preservation, with the structure the morphisms "preserved" being exactly the structure on the objects that is forgotten by the faithful functor.
I hope that helps!

view this post on Zulip John Baez (Nov 09 2024 at 21:03):

All that sounds exactly right.

This stuff becomes really exciting when we go up to the 2-categorical level. For example consider the 2-category Cat\mathbf{Cat} and the 2-category of monoidal categories MonCat\mathbf{MonCat}. There's a forgetful 2-functor MonCatCat\mathbf{MonCat} \to \mathbf{Cat}.

This forgets a property on 2-morphisms: it's a property for a natural transformation between monoidal functors to be a monoidal natural transformation - it has to make some diagrams commute.

So, we expect it forgets a structure on 1-morphisms, and that's true. It's an extra structure on a functor FF to be a monoidal functor, since it needs to be equipped with a natural transformation F(x)F(y)F(xy)F(x) \otimes F(y) \to F(x \otimes y), etc.

So, we expect it forgets stuff on objects. That means a monoidal category should be a category equipped with extra stuff. And that may feel wrong: you may think the tensor product functor should count as extra structure. But this just arises from some mental slippage between how we think about sets and how we think about categories.

view this post on Zulip John Onstead (Nov 09 2024 at 22:03):

That's interesting! I think that's why I like the "n-structure" way of doing stuff, structure, and property in n-categories. I forgot where I saw it (maybe it was on the nlab page, or somewhere related to it) but it states that when you have n-categories and an n-functor between them, it gives rise to a whole hierarchy of forgetfulness to consider. At the top is always "property", which can only be binary (yes or no). Then there are n layers of "n-structure". At the bottom is always "stuff". So under this naming scheme the forgetful functor from monoidal categories to categories forgets properties on 2-morphisms, forgets "2-structure" on 1-morphisms, and forgets "1-structure" on objects. It then doesn't forget any stuff (or, I guess, "0-structure") on objects. A generic 2-functor might then forget 2-structure on 2-morphisms, 1-structure on 1-morphisms, and stuff on objects.

view this post on Zulip John Baez (Nov 09 2024 at 23:48):

I don't like that particular naming scheme, mainly because it makes "2-structure" be closer to a property than "1-structure" - i.e., with that naming scheme properties are a yes-or-no affair, while 2-structures form a set, and 1-structures form a category. I prefer the scheme where properties are just yes or no, choices of structure form a set, choices of stuff form a category, choices of 2-stuff form a 2-category, and so on.

By the way, a bunch of these ideas were first developed by James Dolan and first explained in writing here:

Mike developed the ideas a lot further in the appendices to these lecture notes. I still think this is one of the clearer explanations of what's going on, though with subsequent advances everything can be made more rigorous.

view this post on Zulip Alex Kreitzberg (Nov 09 2024 at 23:55):

I was just about to ask for a reference. I feel like your "Are tensor products structure or stuff?" is a teaser of a much larger story :joy:

The above is all making my intuition happy, and I don't seem exactly confused by most aspects (with very important exceptions, like the Tensor example you just shared), and yet I don't quite feel like I "get it" or understand "why", but I'm close. I'm not sure what I'm looking for.

I'll look at the reference you shared, and see if I can find a good question.

Thanks everybody for the discussion so far, all the answers were very helpful.

view this post on Zulip John Baez (Nov 09 2024 at 23:58):

I think all this stuff makes a huge amount more sense if you think about it using a wee bit of homotopy theory. That's what Lectures on n-categories and cohomology does. Start with Section 2 and don't worry if Section 1 makes no sense - just skip it.

view this post on Zulip John Baez (Nov 10 2024 at 00:08):

As for "are tensor products structure or stuff?", the point is simply this. There's a mere set of ways to make a set into a monoid. But there's not just a mere set of ways to make a category into a monoidal category: there's a category of ways. So we have moved up a level here. In this particular game I prefer to save the word 'structure' for when you've got a mere set of structures. So I'd say that making a set into a monoid is giving it extra structure, but making a category into a monoidal category is giving it extra stuff.

(If you don't like the word 'stuff' here, you can call it '2-structure'.)

view this post on Zulip John Onstead (Nov 10 2024 at 00:33):

John Baez said:

I don't like that particular naming scheme, mainly because it makes "2-structure" be closer to a property than "1-structure" - i.e., with that naming scheme properties are a yes-or-no affair, while 2-structures form a set, and 1-structures form a category. I prefer the scheme where properties are just yes or no, choices of structure form a set, choices of stuff form a category, choices of 2-stuff form a 2-category, and so on.

I see! And I also see how this relates to the "periodic table" since a "-1 category" can be thought of as a true/false value, so choices of properties form a "-1 category" in this way.

view this post on Zulip John Onstead (Nov 10 2024 at 00:33):

The naming scheme I came across is based on a different philosophy, one I've actually been meaning to learn more about. It's called the "object, morphism, diagram" (OMD) philosophy and is meant to parallel (though to which extent I'm not sure) the stuff, structure, property (SSP) philosophy. Basically, think of a group- under SSP it's a set equipped with a structure of a binary operation satisfying some properties. In the OMD approach you would instead say that it is an object GG (of Set\mathrm{Set}) equipped with a morphism in Set\mathrm{Set} (the binary operation m:G×GGm: G \times G \to G) surrounded by a few diagrams in Set\mathrm{Set} (the commutative diagrams for the associativity, inverse, and identity properties). This approach of OMD is very loosely parallel to SSP: the "stuff" in SSP loosely corresponds to selecting some choice of objects in some category in OMD, the "structure" of SSP loosely corresponds to selecting some choice of morphisms in that category in OMD, and the "property" of SSP loosely corresponds to selecting some choice of diagrams in that category in OMD.

view this post on Zulip John Onstead (Nov 10 2024 at 00:33):

Under this approach, "stuff" or "0-structure" in the naming scheme I introduced is called that because it involves selecting 0-cells, IE, objects in some category regardless of how many n-levels are in that category. "1-structure" then corresponds to selecting 1-cells- this is why equipping a tensor product is 1-structure in my scheme since while there is a category of potential tensor products given Cat\mathrm{Cat} is a 2-category, the tensor product is ultimately a functor and thus a 1-morphism in Cat\mathrm{Cat}. "2-structure" corresponds to properties in 1-categories because there's a very loose sense in which diagrams correspond to 2-morphisms. Again, this is very handwavy, but if you think of a set of morphisms as a discrete category with only identity 2-morphisms, then a diagram loosely "corresponds" to some identity 2-morphism between two paths of morphisms making up the diagram. Again this isn't very rigorous but it's what I remember from where I learned about this alternative approach to SSP.

Anyways I'm curious to hear your thoughts on OMD vs SSP. Of course SSP is probably the better system but I find some value in thinking in terms of OMD over SSP, since OMD is purely diagrammatic and category-theoretic while SSP is more related to logic and formal systems.

view this post on Zulip John Baez (Nov 10 2024 at 01:03):

"OMD" sounds exactly like (a special case of) the stuff, structure and property philosophy. Say you describe an algebraic gadget by saying

You gave the example of a group:

It's also good to keep in mind some examples where your gadget involves more than one set, like a ring-module pair.

Whenever you play this game, you can define a category of your gadgets, but also some other categories leading up to it:

We get a tower of forgetful functors

C2p2C1p1C0p01 \mathsf{C}_2 \xrightarrow{p_2} \mathsf{C}_1 \xrightarrow{p_1} \mathsf{C}_0 \xrightarrow{p_0} 1

You can see that p2p_2 forgets properties - in the technical sense: it's faithful (meaning roughly: onto for equations between morphisms) and full (meaning roughly: onto for morphisms) but perhaps not essentially surjective (meaning roughly: onto for objects).

Similarly, p1p_1 forget structure, and p0p_0 forgets stuff.

I'm being a bit sloppy here, but I hope you get the idea. The tower here is connected to a 'Postnikov tower', and the paper with Mike explains what that means.

view this post on Zulip John Onstead (Nov 10 2024 at 14:21):

That sounds really interesting! There are some other interesting connections between OMD and SSP that I noticed as well. For instance, consider trying to equip a monoidal product on a category MM. As you mentioned above, this is 1-stuff since there is a 1-category of ways of turning a category into a monoidal category. But you didn't specify what this 1-category was exactly. OMD gives some insight- it's the hom category Hom(M×M,M)\mathrm{Hom}(M \times M, M)! You can then go into this hom category to equip 0-stuff (what you call "structure") by finding a 0-category (set) of it. This could correspond at least in part to the hom set Hom(F(x)F(y),F(xy))\mathrm{Hom}(F(x) \otimes F(y), F(x \otimes y)) in Hom(M×M,M)\mathrm{Hom}(M \times M, M).

I've also been thinking more generally about why this connection might exist. I suspect it might have to do with sketches. A cool thing about sketches is that, for every logical theory up to elementary first order theories (though not more complex than that), there is at least one corresponding sketch that has an equivalent category of models. This gives a way to translate logical language- perhaps including that of a formal SSP definition- into diagrammatic language for some category (which the sketch provides). Again I could be wrong but that's my best guess as to what might be "powering" this connection!

view this post on Zulip John Baez (Nov 10 2024 at 17:06):

John Onstead said:

That sounds really interesting! There are some other interesting connections between OMD and SSP that I noticed as well. For instance, consider trying to equip a monoidal product on a category CC. As you mentioned above, this is 1-stuff since there is a 1-category of ways of turning a category into a monoidal category. But you didn't specify what this 1-category was exactly.

It's the category where objects are ways of making CC into a monoidal category, and morphisms are ways of making the identity functor on CC into a monoidal functor. The interesting part is that there can be lots of ways to make the same functor into a monoidal functor!

Let's follow the systematic method:

There's a forgetful 2-functor U:MonCatCatU: \mathrm{MonCat} \to \mathrm{Cat}, and the category I'm talking about is the fiber U1(C)U^{-1}(C) of CCatC \in \mathrm{Cat}. This is a general recipe that works not just for MonCat\mathrm{MonCat} but any 2-category of "categories with extra bells and whistles".

Before seeing what this recipe gives, let's look at a warmup version: the forgetful functor U:MonSetU: \mathrm{Mon} \to \mathrm{Set}. Here by definition the fiber U1(S)U^{-1}(S) of a set SS has:

But the functor UU does not forget stuff, only structure. That is, it's faithful: U(f)=1SU(f) = 1_S implies f=1f = 1. Thus, the fiber U1(S)U^{-1}(S) is a discrete category, and we might as well think of it as a set. It's thus the set of monoid structures on SS.

It's good to compare the fiber of some functor UU that forgets stuff: then you get a nondiscrete category. (Try the functor from pairs of sets to sets that throws out one of the sets.)

view this post on Zulip John Baez (Nov 10 2024 at 17:16):

Next let's do the forgetful functor U:MonCatCatU: \mathrm{MonCat} \to \mathrm{Cat}. Let's define the fiber U1(S)U^{-1}(S) of a category CC to have:

Let's see what this 2-category is really like.

There are lots of monoidal categories M,M,M, M', \dots whose underlying category is CC. Say we have a monoidal functor f:MMf: M \to M' between two of these and suppose its underlying functor is the identity on CC. You might at first ff needs to be the identity, but no: it can have a nontrivial laxator and unitor! We'll see them later.

In short, now UU is not faithful: it's forgetting stuff, not just structure. So now the fiber U1(C)U^{-1}(C) has non-identity morphisms.

But a monoidal natural transformation is just a transformation with an extra property. So given a monoidal natural transformation α:ff\alpha: f \Rightarrow f' with U(α)=11CU(\alpha) = 1_{1_C}, we must have α=1\alpha = 1. So the fiber U1(C)U^{-1}(C) has only identity 2-morphisms.

Thus, the fiber U1(C)U^{-1}(C), while fundamentally a 2-category, is '2-discrete', so we can treat it as a category. The objects are ways of making CC into a monoidal category MM. The morphisms from one such way to another are ways of equipping the identity functor 1:CC1: C \to C with a laxator and unitor:

ϕc,c:cMccMc \phi_{c,c'} : c \otimes_{M'} c' \to c \otimes_{M} c'

ψ:IMIM \psi: I_{M'} \to I_M

obeying the usual coherence laws in the definition of monoidal functor.

view this post on Zulip Alex Kreitzberg (Nov 10 2024 at 18:01):

Okay, so you wrote U(α)=11SU(\alpha) = 1_{1_S} twice, but I thought it was a typo the first time and that you meant U(α)=11CU(\alpha) = 1_{1_C}, is that right, or am I tripping over something?

Also in "Let's define the fiber U1(C)U^{-1}(C) of a set CC" you meant of a category CC right?

view this post on Zulip John Baez (Nov 10 2024 at 19:19):

Yes, I was doing a lot of cutting and pasting from the previous example to save time, so a couple of SS's didn't get changed to CC's. Thanks, I'll fix those.

view this post on Zulip John Baez (Nov 10 2024 at 19:28):

Note how I used the passive voice to avoid responsibility: "didn't get changed". :upside_down:

view this post on Zulip John Onstead (Nov 10 2024 at 22:27):

Thanks for the clarification and explanation! I guess, on second thought, this is one place where you actually shouldn't mix up SSP and OMD like I accidentally did! When it comes to SSP, I always end up thinking too concretely about things (maybe because I'm thinking of OMD): given a faithful functor CDC \to D, I always imagine that objects of CC are objects of DD equipped with some well defined extra structure that I can actually go and look for, or actually sit down and write out a definition for. But I have to keep reminding myself that SSP, unlike OMD, is "abstract". So trying to view objects of CC as objects of DD with some actual real extra structure is really analogous to trying to view the objects of a generic 1-category as "sets with extra structure". Just as I'm instead meant to interpret objects of a generic 1-category as abstract points with no inherent meaning (as perhaps some abstraction of sets with extra structure), I'm meant to interpret objects of CC as having some "abstract structure" that abstracts real, concrete structures, but isn't necessarily itself a real, concrete structure.

view this post on Zulip Alex Kreitzberg (Nov 10 2024 at 23:27):

So, how should I think about "Equality is really the unique identity isomorphism"? Here's how I'm trying to make sense of this:

If I have an equation 2+7=6+32+7 = 6 + 3, then the two sides stand for some computation that'll reduce to maybe equal values x=?xx \overset{?}{=} x'. If we take the integers to be a discrete category, where each element is an object with just the identity morphism, is testing for equality between xx and xx' then the same as asking whether hom(x,x)\text{hom}(x, x') is not empty?

This reminds me of preorders, but there are aspects which I'm confused about. We also say aba \leq b when there exists an arrow in hom(a,b)\text{hom}(a, b). And we say the preorder is skeletal, or a poset, if isomorphic objects are necessarily equal. But this seems to me, to get some of the questions backwards from how they're usually asked.

The statement "aba \leq b and bab \leq a implies a=ba = b" translates to the following statement about homsets:

If the homset hom(a,b)\text{hom}(a, b) is not empty, and the homset hom(b,a)\text{hom}(b, a) is not empty, then we have a=ba = b (where I guess this equality, is the equality in the set of objects).

This makes me uncomfortable, because usually we fix the objects of the homsets ahead of time, before then comparing the elements of a given homset.

So then, going back to my earlier example, "x=xx = x' if and only if hom(x,x)\text{hom}(x, x') is not empty", feels like saying "if hom(x,x)\text{hom}(x, x') is not empty, then we were really actually talking about hom(x,x)\text{hom}(x, x)", which doesn't sound right to me. Does my confusion make sense?

Am I getting worried over nothing?

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 00:06):

The above is preparing for seeing an n-category as an \infty-category, by interpreting all k-morphisms with k > n as identity isomorphisms. But I also keep tripping over this particular trick in other settings.

view this post on Zulip John Baez (Nov 11 2024 at 01:10):

It's hard to answer your question, since it's not a question about fact - it's a question about feelings. You say something 'doesn't sound right to you', but this thing is perfectly correct - it just makes you uncomfortable. I can only guess why.

Here's one legitimate reason to be uncomfortable: the concepts of discrete category and poset are 'evil', meaning that a category equivalent to a discrete category may not be discrete, and a category equivalent to a poset may not be a posets.

Thus, when working with discrete categories or posets, you'll find yourself doing things that make a well-bred category theorist uncomfortable. For example, you may find yourself messing around with equations between objects, when a well-bred category theorist always wants to use isomorphisms.

view this post on Zulip John Baez (Nov 11 2024 at 01:15):

The non-evil analogue of a poset is a preorder: any category equivalent to a poset is a preorder, and any preorder is equivalent to a poset if you let yourself use the axiom of choice.

Similarly, the non-evil analogue of a discrete category is an essentially discrete category: a preorder that's also a groupoid. In other words, it's a category where for any pair of objects x,yx,y there's at most one morphism f:xy,f: x \to y, and this is an isomorphism.

Any category equivalent to a discrete category is essentially discrete, and any essentially discrete category is equivalent to a discrete one! (No need for the axiom of choice this time.)

view this post on Zulip John Baez (Nov 11 2024 at 01:15):

Another name for an essentially discrete category is an equivalence relation. I.e., give two objects we can say xyx \le y iff there exists a morphism f:xyf: x \to y, but then this relation is not only reflexive and transitive but also symmetric:

xy    yx x \le y \iff y \le x

so it's an equivalence relation! And the set of objects with this equivalence relation completely characterizes your essentially discrete category.

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 01:40):

John Baez said:

Thus, when working with discrete categories or posets, you'll find yourself doing things that make a well-bred category theorist uncomfortable. For example, you may find yourself messing around with equations between objects, when a well-bred category theorist always wants to use equations.

I'm sorry this seems like a critical point and I don't quite understand. You meant "a well-bred category theorist always wants to use isomorphisms" right?

If everything I said in my post above is correct, that's good, "I'll learn to live with it" per Neumann. I am an anxious person by nature.

I like the topic you followed up with though, maybe to paraphrase here:

Although "x = x' if and only if hom(x,x)\text{hom}(x, x') is nonempty" in a discrete category - the statement " x = x' " is evil, whereas "hom(x,x)\text{hom}(x, x') has 1 element", isn't evil. Is that right?

view this post on Zulip John Baez (Nov 11 2024 at 01:43):

Alex Kreitzberg said:

I'm sorry this seems like a critical point and I don't quite understand. You meant "a well-bred category theorist always wants to use isomorphisms" right?

Right. Fixed.

I like the topic you followed up with though, maybe to paraphrase here:

Although "x = x' if and only if hom(x,x)\text{hom}(x, x') is nonempty" the statement x = x' is evil, whereas hom(x,x)\text{hom}(x, x') has 1 element, isn't evil. Is that right?

Right. Equations between objects are 'evil' (using them we can create definitions of category-theoretic concepts that aren't invariant under equivalence) while equations between morphisms in the same homset are not (until we go to 2-category theory).

view this post on Zulip John Baez (Nov 11 2024 at 01:49):

If you examine the statement "hom(x,x)\text{hom}(x, x') has 1 element" you'll see it's asserting equations between morphisms in the same homset.

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 01:54):

Okay, your sentence "while equations between morphisms in the same homset...until we go to 2-categories..." made my brain go "THAT, THAT RIGHT THERE!" :rolling_on_the_floor_laughing:

How do I say what I want to say with "hom(x,x)\text{hom}(x, x') has 1 element" without using equality between morphisms? If the implied equality is just an identity isomorphism, I should be able to rewrite everything in terms of identity morphisms right?

(You're saying I'm secretly saying f,ghom(x,x)f=gf, g \in \text{hom}(x, x') \Rightarrow f = g, right?)

view this post on Zulip John Baez (Nov 11 2024 at 02:01):

Yes, that is a way to say this homset has 1 element.

view this post on Zulip John Baez (Nov 11 2024 at 02:06):

Alex Kreitzberg said:

How do I say what I want to say with "hom(x,x)\text{hom}(x, x') has 1 element" without using equality between morphisms?

You can't say it if you're trying avoid 2-categorical evil: it's implicitly using equations between morphisns. If you're working 2-categorically and trying to avoid evil you should instead say "there exists a unique 2-isomorphism between any two morphisms f,g:xyf, g: x \to y".

And if you're trying to avoid 3-categorical evil you can't say that - you need to instead say "given any two 2-isomorphisms α,β:fg\alpha , \beta : f \Rightarrow g between any two morphisms f,g:xyf, g: x \to y, there is a unique 3-isomorphism from α\alpha to β\beta".

And so on. If you want to go on forever, learn \infty-category theory or homotopy type theory, and learn about "contractibility".

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 02:09):

Okay, thank you, I think that answers my question.

I'll think about your answer and keep reading your paper.

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 19:31):

If I have a set, it's safe to talk about equality of elements. But if I have a discrete category, it's evil to talk about equality of objects.

Is this because when working with a set, I'm using 0-functors, or functions, but in its corresponding discrete category, I'm allowing 1-functors, or just functors?

Similarly, is the definition "a one object category is a monoid" evil when you allow functors to any other category, but fine if you only use monoid homomorphisms?

view this post on Zulip Simon Burton (Nov 11 2024 at 20:06):

This reminds me I'm always slightly confused thinking about groupoids versus (disjoint unions of) groups. I guess it has something to do with contractility and π1\pi_1....

view this post on Zulip John Baez (Nov 11 2024 at 20:11):

Alex Kreitzberg said:

If I have a set, it's safe to talk about equality of elements. But if I have a discrete category, it's evil to talk about equality of objects.

Is this because when working with a set, I'm using 0-functors, or functions, but in its corresponding discrete category, I'm allowing 1-functors, or just functors?

No, the real reason is that the very concept of 'discrete category' is evil, since a discrete category is defined to be one where the existence of a morphism f:xyf: x \to y implies that x=yx = y. I explained the non-evil substitute for discrete categories a while back:

view this post on Zulip John Baez (Nov 11 2024 at 20:12):

John Baez said:

Similarly, the non-evil analogue of a discrete category is an essentially discrete category: a preorder that's also a groupoid. In other words, it's a category where for any pair of objects x,yx,y there's at most one morphism f:xy,f: x \to y, and this is an isomorphism.

Any category equivalent to a discrete category is essentially discrete, and any essentially discrete category is equivalent to a discrete one! (No need for the axiom of choice this time.)

But the 'evil' of the concept of discrete category reveals itself here:

Puzzle. Show that not every category equivalent to a discrete category is itself discrete. Find a counterexample with 2 objects. This will be an essentially discrete category that is not discrete.

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 20:27):

Puzzle solution:
The two object category where every homset has one arrow.

Isn't it typical to think of sets as discrete categories? I wouldn't normally think of sets as evil, that's what I'm confused about.

view this post on Zulip David Egolf (Nov 11 2024 at 20:31):

This might be wrong, but my intuition for this kind of thing is that sometimes we have a lot of different equivalent ways to think about something, but we still like to choose a "canonical representative". So a discrete category is equivalent to a lot of non-discrete ones, but it's still fine to work with that discrete category as a representative for a whole cloud of equivalent categories.

view this post on Zulip David Egolf (Nov 11 2024 at 20:36):

To give a possibly related example, one can define a subgroup of a group GG to be a monomorphism to GG (in Grp\mathsf{Grp}). The group that such a monomorphism maps from doesn't necessarily have to be a subset of GG, but we often think about the case where it is. I think of that special case as a sort of "canonical representative" for a bunch of isomorphic subgroups.

view this post on Zulip John Baez (Nov 11 2024 at 20:38):

Alex Kreitzberg said:

Puzzle solution:
The two object category where every homset has one arrow.

Great!

Isn't it typical to think of sets as discrete categories?

It's common. I'm just saying that if you want to avoid statements about categories that aren't invariant under equivalence of categories, you can't say "this category is discrete" - because you can have a category that's discrete that's equivalent to one that's not, as you've just shown.

It's a matter of taste whether you want to avoid statements about categories that aren't invariant under equivalence of categories. I am not the boss of mathematical taste. But it's a simple fact that if you want to avoid them, you can't say "this category is discrete". But you can say it's essentially discrete, defined in a couple of equivalent ways above.

view this post on Zulip John Baez (Nov 11 2024 at 20:43):

I wouldn't normally think of sets as evil, that's what I'm confused about.

A statement like "sets are evil" is much too vague to merit discussion. I prefer to use "evil" as a description of a type of mathematical property, namely a property of an object in an nn-category CC that is true for some object xx but false for some object yy that is equivalent to xx. Note that we need to make up our minds what CC we're working with before we can decide whether a property is evil.

If you prefer something more emotionally neutral and precise than "evil", you can say "not preserved by equivalence".

It's probably good to be precise right now. To say "sets are evil", or "sets are not evil", doesn't make sense to me. I worry that you may not have any precise thought behind what you just said, "I wouldn't normally think of sets as evil".

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 21:42):

Let SS be a finite set, and let D(S)D(S) be a category whose objects are elements of SS, and whose arrows are only the identity arrows. Functions f:ABf : A \rightarrow B then get mapped to functors D(f):D(A)D(B)D(f) : D(A) \rightarrow D(B) whose map on objects is just ff, and whose map on identities simply preserves identities.

Denote the number of elements of SS by S|S|, let TT be a finite set isomorphic to SS under f:STf : S \rightarrow T, then T=S|T| = |S|, because cardinality is preserved by isomorphisms in Set. Our ff induces an isomorphism (not an equivalence) of categories D(f):D(S)D(T)D(f) : D(S) \rightarrow D(T). This implies Ob(D(S))=Ob(D(T))|Ob(D(S))| = |Ob(D(T))|, but this equality isn't preserved by equivalence, as shown in the previous puzzle.

If Ob(D(S))|Ob(D(S))| is understood to be the categorical analog of S|S|, then that means there are properties that are understood to be invariant under isomorphisms in Set, whose analogs aren't invariant under equivalence of categories in Cat.

I'm trying to understand what's changing as we move between Set and Cat. That is, why are we losing usable properties.

That said, your point about how the adjective "is discrete" specifically being illegal really helps.

And I am very specifically thinking hard about cardinality, because in your periodic table you define it with "We can think of an (n+k)-category with just one j-morphism for j < k as a special sort of n-category", so a monoid is now a one object category.

But I can easily cook up a category equivalent to it with two objects. But after spelling out all of the above very carefully, I guess there isn't really a problem with assuming your category has one object if you then don't prove anything that explicitly requires Ob(M)=1|Ob(M)| = 1.

Like in my construction above, I could construct categories that are often called "discrete categories", but nothing bad happens if I don't try to use the property "is discrete".

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 21:45):

I think this last point is what David Egolf was explaining.

view this post on Zulip David Egolf (Nov 11 2024 at 21:52):

Alex Kreitzberg said:

If Ob(D(S))|Ob(D(S))| is understood to be the categorical analog of S|S|...

The number of objects of a category CC isn't something that's constant across all categories equivalent to CC. And if CC is supposed to be a category that corresponds to a set in some sense, it would be nice for all categories equivalent to CC to also correspond to that set.

Although the number of objects can vary as we move between all categories equivalent to CC, I think the number of isomorphism classes of objects should stay the same.

So I'd prefer to think of the number of isomorphism classes of objects in D(S)D(S) as the "categorical analog" of S|S|. Since D(S)D(S) is discrete, this is equal to the number of objects in D(S)D(S). But if we move to some other category equivalent to D(S)D(S) then counting the isomorphism classes of objects should still give us S|S|.

view this post on Zulip David Egolf (Nov 11 2024 at 21:53):

So the concept of "number of elements" isn't lost by this "model a set by a category" process. We just need to do something a little different than counting the number of objects in the resulting category.

view this post on Zulip David Egolf (Nov 11 2024 at 21:54):

(At any rate, those are my two cents. I'm still in the process of learning this stuff!)

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 21:56):

Ooof that's a good point, that makes what I'm saying feel like the opposite of decatigorification then

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 21:56):

That is, what you're saying sounds right to me.

(I swear I'm trying to be careful XD, but I'll admit I'm getting a bit embarrassed by how many times my problems are moving forward from being told "you're not being careful enough here")

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 22:03):

David Egolf said:

Although the number of objects can vary as we move between all categories equivalent to CC, I think the number of isomorphism classes of objects should stay the same.

Maybe I can try to prove this

view this post on Zulip Alex Kreitzberg (Nov 11 2024 at 23:17):

I want to show the number of isomorphism classes is invariant under equivalence of categories.

What I'll take that to mean, is I can construct a bijection between the isomorphism classes of two equivalent categories.

Let CC and DD be equivalent categories. In particular, that means we have a full and faithful functor FF that's essentially surjective from CC to DD.

If two objects are isomorphic in CC, then their isomorphism is preserved under FF in DD.

I'll carefully show that every isomorphism in DD, is mapped from an isomorphism in CC.

Let x,yx, y be isomorphic objects in DD, then there exists a,ba, b in CC so F(a)xyF(b)F(a) \cong x \cong y \cong F(b), because FF is essentially surjective. This means hom(x,y)hom(F(a),F(b))\text{hom}(x, y) \cong \text{hom}(F(a), F(b)), but we also know hom(F(a),F(b))hom(a,b)\text{hom}(F(a), F(b)) \cong \text{hom}(a, b) because FF is full and faithful.

In particular any isomorphism ff' in DD along with an inverse, that I'll call gg', must both be mapped from morphisms in CC, which I'll call ff and gg respectively.

Now F(fg)=F(f)F(g)=idF(a)=F(ida)F(f \circ g) = F(f) \circ F(g) =id_{F(a)} = F( id_a ) which implies fg=idaf \circ g = id_a by injectivity of FF.

So isomorphisms aren't just mapped from morphisms, they're mapped from isomorphisms. FF reflects isomorphisms.

I'll define my bijection of isomorphism classes with a map $$h([c]) = [F(c)]

This map is well defined, because ccc \cong c' implies F(c)F(c)F(c) \cong F(c'). It's surjective because F is essentially surjective. And it's injective, because h([c])=h([b])h([c]) = h([b]) implies [F(c)]=[F(b)][F(c)] = [F(b)] which implies F(c)F(b)F(c) \cong F(b) which implies cbc \cong b which follows from our arguments above proving isomorphisms are reflected. To cap that last point, aba \cong b implies [a]=[b][a] = [b]. So hh is injective, and surjective, so it's a bijection.

view this post on Zulip John Baez (Nov 12 2024 at 00:32):

Great! By the way, given a category CC, I like to call the set of isomorphism classes of its objects Decat(C)\text{Decat}(C). One of the things you checked is that any functor

F:CDF : C \to D

gives rise to a function I like to call

Decat(F):Decat(C)Decat(D) \text{Decat}(F) : \text{Decat}(C) \to \text{Decat}(D)

I think quite a while back, in a different conversation, we discussed how Decat\text{Decat} is a 2-functor from the 2-category of

to the 2-category of

There's a concept of 'equivalence' in any 2-category, and 2-functors send equivalences to equivalence. Using this, can quickly show Decat\text{Decat} must send an equivalence of categories to a bijection between sets. Do you see what I mean?

Of course, you just proved this result - but in a different way.

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 18:28):

Okay, from the n-lab page [[equivalence in a 2-category]]:

A 1-morphism in a 2-category is an equivalence if there exists another 1-morphism the other way around, such that both are inverses up to invertible 2-morphisms.

(I'm surprised this says inverse here and not "isomorphism")

So an equivalence in the 2-category of sets you just shared is:

A function of sets, with another function the other way around, such that both are inverses up to equality of functions

Which is just an obtuse way of saying a function f:ABf : A \rightarrow B is an equivalence if there exists an arrow g:BAg : B \rightarrow A such that fg=idB f \circ g = id_B and gf=idAg \circ f = id_A. Which is just the definition of ff being a bijection.

An equivalence in the 2-category of categories you shared is just the usual definition of equivalence, because the requirement "...both are inverses up to invertible 2-morphisms" is unaffected, because we kept all the natural isomorphisms as our 2-morphisms.

So if we know FF is an equivalence of categories, then because Decat:CatSet\text{Decat} : \text{Cat} \rightarrow \text{Set} is a 2-Functor - which entails sending equivalences to equivalences - we conclude the function Decat(F):Decat(C)Decat(D)\text{Decat}(F) : \text{Decat}(C) \rightarrow \text{Decat}(D) is a bijection.

view this post on Zulip John Baez (Nov 12 2024 at 22:38):

Alex Kreitzberg said:

Okay, from the n-lab page [[equivalence in a 2-category]]:

A 1-morphism in a 2-category is an equivalence if there exists another 1-morphism the other way around, such that both are inverses up to invertible 2-morphisms.

(I'm surprised this says inverse here and not "isomorphism").

I'm not too surprised. Saying both are inverses is a bit weird, since you can't have just one be an inverse. But you could say this:

A 1-morphism in a 2-category is an equivalence if there exists another 1-morphism the other way around, such they are inverses up to invertible 2-morphisms.

or you could say

A 1-morphism in a 2-category is an equivalence if it is an isomorphism up to invertible 2-morphisms.

These are two ways of saying the same thing, but the latter requires more experience to understand. What were you expecting?

view this post on Zulip Mike Shulman (Nov 12 2024 at 22:46):

Or

A 1-morphism in a 2-category is an equivalence if there exists another 1-morphism the other way around that is its inverse up to invertible 2-morphisms.

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 22:52):

The last one Baez posted was what I expected. Maybe I'm in a pedantic/paranoid mindset for some reason.

I guess saying ff is an isomorphism is a definition I'm used to seeing in category theory. Whereas the inverse of ff is well defined after you prove there is exactly one other morphism making ff into an isomorphism.

When I saw "inverse" my brain went "of a function" involuntary, but here it's meaning is closer to "of a group" I guess. Just a weird language short circuit in my brain. On reflection it doesn't seem like there's a real issue here.

It's funny, in the moment "inverse of a natural transformation" felt more natural to me than "inverse of a morphism" - that doesn't really make sense does it :joy:

view this post on Zulip John Baez (Nov 12 2024 at 22:55):

No, it doesn't. We talk about inverses of morphisms all the time (up here in the category theory ivory tower at least).

I have tried to improve the nLab page [[equivalence in a 2-category]] by giving a really detailed definition. If anyone wants to improve the quick purely verbal definition in the "Idea" section, please do!

view this post on Zulip John Baez (Nov 12 2024 at 22:58):

Alex Kreitzberg said:

So if we know FF is an equivalence of categories, then because Decat:CatSet\text{Decat} : \text{Cat} \rightarrow \text{Set} is a 2-functor - which entails sending equivalences to equivalences - we conclude the function Decat(F):Decat(C)Decat(D)\text{Decat}(F) : \text{Decat}(C) \rightarrow \text{Decat}(D) is a bijection.

Right - and your argument for this was flawless. So if you have already convinced yourself that Decat\text{Decat} is a 2-functor and that 2-functors send equivalences to equivalences, this seems like a very nice way to see that Decat\text{Decat} maps equivalences of categories to bijections of sets.

view this post on Zulip John Baez (Nov 12 2024 at 23:02):

I almost forget why were talking about this, but maybe this is why:

Note that the property of functions being a bijection is nonevil since we're saying a 1-morphism in the 1-category Set\mathsf{Set} is an isomorphism, and saying a 1-morphism is an isomorphism is not evil.

Similarly the property of functors being an equivalence is nonevil since we're saying a 1-morphism in the 2-category Cat\mathbf{Cat} is an equivalence, and saying a 1-morphism in a 2-category is not evil.

So, we're seeing here that the 2-functor Decat\mathsf{Decat} is mapping a nonevil concept to a nonevil concept.

Note however that the property of functors being an isomorphism is evil. And so - digressing a bit, but returning to an earlier theme - is the property of categories being a discrete category.

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 23:09):

So similarly, "has one object" as a property of a category CC is also evil right?

So although "a one object category is a monoid" is fine to say. Saying a category CC is a monoid, is evil right?

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 23:16):

Or rather, saying CC has one object is evil?

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 23:21):

Maybe it'll help if I add the context, that I'm trying to make sense of this table. It's intuitive, but I'm struggling to see why there's no invariance under equivalence problems with assuming "there's exactly 1" of a bunch of categorical data

84236a81-a44c-43f1-8aba-7a937e98bab2.jpg

view this post on Zulip John Baez (Nov 12 2024 at 23:36):

Saying a category has one object is evil if we are working in the 2-category Cat\mathbf{Cat}. It's not evil if we are working in the 1-category Cat\mathsf{Cat}. But category theorists usually prefer to work in the 2-category.

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 23:37):

Okay, great! Let me try to prove that

view this post on Zulip John Baez (Nov 12 2024 at 23:37):

It's intuitive, but I'm struggling to see why there's no invariance under equivalence problems with assuming "there's exactly 1" of a bunch of categorical data.

There are tons of 'invariance under equivalence' problems in this chart! To fix those we have to state everything more carefully. I believe @Mike Shulman did a bit of that fixing in the appendix to the papers.

view this post on Zulip John Baez (Nov 12 2024 at 23:38):

As they say, "you have to crack eggs to make omelettes". Similarly, sometimes it helps to be evil if you're trying to explain an idea quickly.

view this post on Zulip John Baez (Nov 12 2024 at 23:39):

Please don't take the word "evil" so literally as to think you'll go to mathematical hell if you're ever evil! :fire:

view this post on Zulip Alex Kreitzberg (Nov 12 2024 at 23:41):

Well in general "being afraid of dumb mistakes" is a very prominent weakness of mine.

So I'm not so much afraid of being "Evil" in a moral sense, as I am of "being wrong in some subtle way I don't understand"

view this post on Zulip John Baez (Nov 12 2024 at 23:52):

Okay, fine! There are plenty of subtle ways to be wrong when you're learning how to think categorically and 2-categorically, and almost everyone who learns this makes lots of mistakes.

As a really good, not really easy exercise, you might try to take some of the ideas we're talking about and expressing them in a non-evil way.

For example, it's not very exciting that a category with one object is the same as a monoid. I feel the first really interesting fact about the periodic table is that a 2-category or bicategory with one object and one morphism is the same as a commutative monoid. How can we state this fact in a non-evil manner?

view this post on Zulip John Baez (Nov 12 2024 at 23:52):

But this is only if you want practice avoiding evil!

view this post on Zulip Mike Shulman (Nov 13 2024 at 00:11):

The notion of "having one object", as a property of a category, is non-invariant (evil). However, the notion of "category with one object" can be defined in an invariant (non-evil) way. It's a question of what proof assistant people call 'bundling'.

For example, a group can be defined as a set together with a multiplication etc. But you can also 'unbundle' it and say, given a set, what is the notion of "a group structure on that set". Then a group is the same as a set together with a group structure on it.

Similarly, a category is a collection of objects together with a collection of homsets and operations etc. But you can unbundle it and say, given a collection of objects, what is the notion of "a category structure on that collection of objects". Then a category is the same as a collection of objects together with a category structure on it. But also, if we start with a one-element collection, then we get a notion of "category structure on a one-element collection" which can be defined without reference to "equality of objects" and hence is perfectly invariant/non-evil.

view this post on Zulip Alex Kreitzberg (Nov 13 2024 at 01:49):

I'm not dead set on avoiding evil, I just get fixated, perhaps too long, on certain anxiety inducing questions.

Often I only realize in retrospect I've worked too hard.

(Like "isomorphism" means "the same via" to me, whereas "invertible" connotates "can be undone". I'll randomly get fixated on clarifying this distinction before I accept the synonym. Even though I've been perfectly fine with both words up to this point)

But regardless, I'm going to think about the examples and techniques you both just shared, because they're interesting!

view this post on Zulip John Baez (Nov 13 2024 at 02:06):

Mike Shulman said:

The notion of "having one object", as a property of a category, is non-invariant (evil). However, the notion of "category with one object" can be defined in an invariant (non-evil) way. It's a question of what proof assistant people call 'bundling'.

This is a really important issue, which a lot of people ran into when thinking about questions like are daggers evil?

Right now I've tried to handle it by telling Alex that a property of objects in an nn-category CC is 'evil' if it's not preserved by equivalence. But this is relative to CC. The 'bundling' business is connected to how we have freedom about which CC to use.

view this post on Zulip Alex Kreitzberg (Nov 16 2024 at 01:09):

Sorry ahead of time for the wall of text, I tried to engage with everyone's comments earnestly.

First, I want to make sure I understood what Baez means when they say “saying a category has one object is evil If we are working in the 2-category Cat But it’s not evil if we are working in the 1-category Cat."

We can interpret the category of categories, as being a 2-category. That amounts to letting:

We also require certain properties, like the interchange law, be satisfied. There is then a notion of Equivalence specific to 2-categories, that says two categories are equivalent, if we can find pairs of functors, where both compositions are naturally isomorphic to identities. Earlier we gave an example of equivalent categories with different numbers of objects.

We can also interpret the category of categories as a 1-category, which is the same except we don’t specify 2 morphisms. Two objects in a 1-category are equivalent if they are isomorphic. An isomorphism of Functors establishes a bijection between the objects, so “having one object” is preserved under this notion of equivalence.

So here is my first attempt to define a monoid with a category. If we think of a 1 object category as a member of the 1-category 1-cat, then it’s non-evil to say it’s a monoid. Further, functors between 1 object categories are monoid homomorphisms.

However, natural transformations are still useful for defining equivariant maps between group actions. So I’m sure treating 1 object categories this way misses interesting stuff.

Now I’m going to try my best to interpret what Shulman said, and define a monoid in a second way:

A “bundled” definition of monoid is the usual one, a tuple (M,,1)(M, *, 1) where MM is a set, :M×MM* : M \times M \rightarrow M a function, and 11 is an element of MM, such that,
for all mm in MM we have m1=1m=mm * 1 = 1 * m = m,
and for all a,b,ca, b, c in MM, we have (ab)c=a(bc)(a*b)*c = a*(b*c).

Here’s my attempt at an “unbundled” definition of MM, let MM be a set, we’ll define a monoid structure on MM as a tuple (:M×MM* : M \times M \rightarrow M, 1:1M1 : 1 \rightarrow M) such that

Ugh that's terrible to read, maybe I'll draw commutative diagrams in the future.

I'm writing this definition in an internal way, such that our monoid structure doesn’t even have to know what MM is. Is that just a feature of how I built this, or are we unbundling exactly so we can do this?

Something notable to me with this, is the monoid structure becomes a parameter I can pick, relative to a fixed set. I guess that's part of what it means to be structure.

Okay now I’m going to do my best to unbundle a category. Let OO be a set, this is going to become our set of objects. Lets define a categorical structure on OO to be

Hopefully I did that right, now if OO is terminal, the above is a really complicated (too complicated?) way to describe a monoid.

This was already very difficult. Was all of the above really necessary to unbundle?

If I did all of that right, and then defined functors between categories, and natural transformations between functors, in an internal way -- I'm interpreting Baez's comments linking to dagger categories, as saying the equivalence in the resulting 2-category will be just slightly different than equivalence in the more conventional 2-category Cat. That is, by choosing a non evil presentation, what we were secretly doing is choosing a different ambient 2-category where it made sense to talk about one object categories.

The impression I’m getting, is many intuitive and important concepts, have a superficially evil presentation, but when reinterpreted in a reasonable way admit a non-evil representation. It could be that a certain notion needs to be redefined so that it makes sense under the notion of equivalence you care about, but it could also be useful to change the notion of equivalence by changing the ambient category. Or perhaps when you try to do one, you secretly end up doing the other.

I think the same thing happens in “ordinary” math all the time. You can pretend to use absolute coordinates in geometry, even though secretly we technically only care about relative differences under distance preserving maps, so "evil" things can be useful. And instead of measuring angles in photos, you might decide measuring angles in the real world is fine - deciding the stricter notion of Euclidean maps are sufficient for your purposes. So the "evil" notion of angles, stops being evil in the less general context.

Analogously, interpreting categories in either 1-Cat, or 2-Cat, gives the impression that true things about 2-Categories are more general; because, more categories become equivalent to each other when you move from 1-Cat to 2-Cat. So similarly, higher rungs on the n-categorical ladder, are going to be more general as well, with \infty-categories being the most general.

With all that in mind, I’m going to try and make it more than two pages into the paper, and try not to let the evil bother me too much. Morality here is relative, so it's worth getting used to evil things. Just like we learn geometry before learning why symmetries matter.

view this post on Zulip Mike Shulman (Nov 16 2024 at 01:44):

Your unbundled definitions work. Choosing to talk about elements versus morphisms is orthogonal to bundling or unbundling; either one can be done in either case. For categories, it's usually better to use the definition in terms of a family of hom-sets hom(x,y)\hom(x,y) indexed by pairs of objects rather than the definition with one big set of all the morphisms and source/target functions.

view this post on Zulip Mike Shulman (Nov 16 2024 at 01:44):

The unbundled definitions should not be any more complicated than the bundled ones; it's just a question of where you draw the line between the parameters and the structure.

view this post on Zulip Alex Kreitzberg (Nov 16 2024 at 01:55):

Okay, so then a perfectly valid "unbundling" of a group would be to let GG be fixed, and then the structure on GG is the pair (:G×GG,1G)(*:G\times G \rightarrow G, 1 \in G) satisfying the properties

So the pair is the structure, and GG is the parameter, right? I should be able to interpret this, I'm going to think about this more.

But I can feel that, changing the ambient category really is the main story here.

view this post on Zulip Mike Shulman (Nov 16 2024 at 02:07):

Yes, the set GG is the parameter, and the pair together with the axioms is the structure.

view this post on Zulip Mike Shulman (Nov 16 2024 at 02:08):

I think unbundling versus changing the ambient category are sort of dual approaches to the problem, in the same way that logic and category theory are dual approaches to understanding mathematics: bottom-up versus top-down.

view this post on Zulip Alex Kreitzberg (Nov 19 2024 at 21:34):

If you don't want to read my post skip, to the end for a question

I think, the cohomology paper is making sense, or at least "as I know more, there is more to know". This is mostly going to be a summary of my thoughts reading the paper, but I'll try to ground it with the following question, if you don't want to read my post skip to the end for a question:

To bring this thread back to the original goal, I'm trying to answer "Why is there a shift between what a forgetful functor drops on objects, and what it drops on morphisms?" For example, a functor that forgets at most structure on a Set, forgets at most properties on morphisms (intuitively, the properties which preserve the structure).

First, we have a hard earned periodic table organizing small nn-categories. This lets us guess the existence of 1-1-categories and 2-2-categories.

The negative categories are related to topological spaces with a negative homotopical dimension. At least for the basics, it was easier for me to get comfortable with the topological spaces. So I'm going to talk about them first. This will help us understand categories because, if you believe Grothendieck:

n-Groupoids are the same as homotopy n-types

What's a homotopy nn-type? From the paper:

We say πj(X) vanishes for all basepoints if given any f:SjX there exists g:Dj+1X extending f. We say X is a homotopy n-type if πj(X) vanishes for all basepoints whenever j>n.\text{We say } \pi_j(X) \text{ vanishes for all basepoints if given any } f : S^j \rightarrow X \text{ there exists } g: D^{j+1} \rightarrow X \text{ extending } f \text{. We say } X \text{ is a homotopy n-type if } \pi_j(X) \text{ vanishes for all basepoints whenever } j > n.

So a filled in torus is a homotopy 11-type, but not a homotopy 00-type. Because there are no spherical holes, but there is a circular hole around the center of the donut. The fundamental group information doesn't change if we thin this out to a circle, and it's still a 11-type because the maps from S2S^2 into a circle are just constant maps with obvious extensions to maps from D3D^3.

If you pick any two elements of the circle, there is a sets worth of paths between them up to homotopy equivalence.

You can union two circles, or glue two circles and add that to the union, and you'll still have a 11-type, so a 11-type is a disjoint union of spaces with no spherical holes.

A 00-type that's not a 1-1-type is a disjoint union of, more than one, contractible connected components. So a 00-type is just a set. Between any two points in such a space, there either is a path, or there isn't a path, up to homotopy equivalence.

A 1-1-type requires two points can be extended into a path. So if any point is in our space, then our space is equivalent to just one point; but, if our space is empty the above is vacuously true. An empty space is a 1-1-type that's not a 2-2-type.

The only paths here, are from a point to itself, which necessarily is a one element set.

A 2-2-type must contain one point, because we must have a map from a point, D0D^0. Again there is one path from this point to itself, so our spaces stabilize here.

Now if we listen to Grothendeick, A 00-type is the same as a 00-groupoid, both are sets, which checks out. A 11-groupoid is just a groupoid, which all the 11-types are - the unintuitive direction with this one for me, is thinking every groupoid is a sort of space.

The 1-1-groupoids should be either, one element sets, or empty sets. And the 2-2-groupoids should be one element sets. This is simple enough, that we could guess that 1-1-categories and 2-2-categories are just these groupoids. And it's true.

Now, like the homotopy types, asking for "paths"(morphisms) between "points"(objects) of our "spaces"(categories) steps down the "dimension". Two objects x,yx, y of an nn-category determine an n1n-1-category called hom(x,y)\text{hom}(x, y).

This confused me, because I've always thought of the relationships of a category as "bigger" than the objects, but I'm mixing levels. The space of arrows between two objects is "smaller" than that of arrows between all the objects.

In any case, in a 1-category, the arrows between objects form sets, a 0-category. Elements of those sets can either be equal to each other, or not equal, the possible answers form a 1-1-category.

Of those which are equal, if you think of their equality as a one element set, you can only compare that one element with itself, so you are guaranteed it's equal to itself. Hence, the only possible answer is just the one element set, so the possible answers form a -2-category.

With these spaces clearly in mind, this allows us to think of functors as maps between spaces. In general, when you have a map from a big space, to a smaller space - you can understand the big space by looking at its subspaces which map to elements in the small space. In topology, one important example of this are fibers.

Fibers are exactly what we use to make sense of statements like "forgetting at most structure."

A functor which maps a category of pairs of sets, to sets, by forgetting the left set, has a fiber over the outputted right set. This fiber, forms a category, specifically a 11-groupoid. Or in other words, there is a 11-groupoid of ways to pair a set with another set.

If you skipped the above my question context starts here:

So, returning to the question I'm trying to understand "Why is there a shift in what the levels forget?" Lets say we have a 1-category of groups, and a 1-category of sets, and we're forgetting the group structure. Then we have a sets worth of groups with a common set. Or a 00-groupoids worth.

Now consider the functions between two sets, the preimage of one of those functions is a space of arrows between the two sets of groups - that I'm struggling to make sense of. Roughly though, you know an arrow is in this space, if after specifying a group structure on the input set, and the output set, you simply ask "does this function preserves this structure?" This feels like a -1-groupoid, but I'm struggling to place it.

I think if I organize this data correctly, then I'll be able to say something like "If the fiber above objects are n-groupoids, then the fiber above their arrows will be (n-1)-groupoids." But I don't think I quite said that yet, any tips for moving forward with this?

view this post on Zulip Mike Shulman (Nov 20 2024 at 00:15):

I skipped to the end and just read the question. My answer is that, for a fixed function ff, the statement "ff preserves the group structure" is a proposition, and as such corresponds to a (-1)-groupoid which is either empty or a singleton according to whether it is false or true, and thus that the preimage of that function is either empty or a singleton.

view this post on Zulip Alex Kreitzberg (Nov 20 2024 at 01:13):

Right, so if I have a functor U:GroupsSetsU : \text{Groups} \rightarrow \text{Sets} that forgets the group structure, and I have a function f:QQf : \mathbb{Q} \rightarrow \mathbb{Q} defined by f(x)=2xf(x) = 2x.

Then it is mapped from a homomorphism between (Q,+,0)(\mathbb{Q}, +, 0) and (Q,+,0)(\mathbb{Q}, +, 0), but not between (Q,+,0)(\mathbb{Q}, +, 0) and (Q,×,1)(\mathbb{Q}, \times, 1).

That is, if we fix the two groups in the fiber, then our map either is or isn't a homomorphism - giving the (-1)-groupoid of possibilities. However, we have a sets worth of questions like that (all the ways to put structure on the source and target of ff).

To me this makes the fiber on ff look "bigger" than a (-1)-groupoid, which I think is wrong because of what you said, where am I screwing up my argument?

view this post on Zulip Mike Shulman (Nov 20 2024 at 02:15):

Ah, I see the confusion. The correct way to approach this question, as with so many other questions, is to use a dependently-typed definition of "category". So a category consists of a set (or collection) of objects together with, for each pair of objects X,YX,Y, a set C(X,Y)C(X,Y). Then a functor F:CDF:C\to D consists of a map on objects together with functions C(X,Y)D(FX,FY)C(X,Y) \to D(FX,FY). So when you ask about the fiber over a morphism in DD, you have to have also fixed a pair of objects in CC in order to be talking about a particular one of these functions C(X,Y)D(FX,FY)C(X,Y) \to D(FX,FY).

view this post on Zulip Alex Kreitzberg (Nov 20 2024 at 03:58):

Thank you, that makes sense.

So by saying our functor FF is faithful, the maps in C(X,Y)D(FX,FY)C(X, Y) \rightarrow D(FX, FY) are assumed injective. So the preimage of an element in D(FX,FY)D(FX, FY) has at most 1 element by definition. Or the fiber is a (-1)-category by definition.

But I know the fibers of faithful functors on objects are a 0-category, but I don't know why, I'm going to try the following puzzle.

Puzzle Prove that fibers of objects under the faithful functor FF are 0-categories, or sets.

Or to rephrase

Prove that the fibers on 0-morphisms under a 1-functor are 0-categories, provided the fibers on the 1-morphisms under the 0-functors are (-1)-categories.

view this post on Zulip John Baez (Nov 20 2024 at 04:22):

Of course, the usual way people say this is that the fibers of a functor are categories, but for a faithful functor they are discrete categories, i.e. categories with only identity morphisms. The hardest part here is remembering the definition of "fiber of a functor".

view this post on Zulip Mike Shulman (Nov 20 2024 at 04:36):

Actually in general the fibers of a faithful functor are (0,1)-categories, or preordered sets.

view this post on Zulip John Baez (Nov 20 2024 at 04:47):

Ugh, I knew this all very well a while back because I needed it for something. Yes. I won't talk about why it works this way since Alex wants to work out some stuff about this, but a great example of a faithful functor whose fiber is an interesting (0,1)(0,1)-category is the forgetful functor TopSet\mathsf{Top} \to \mathsf{Set}, where the fiber of a set is the poset of topologies on that set. This is very different from something like GrpSet\mathsf{Grp} \to \mathsf{Set} where the fiber is just a discrete category... but that forgetful functor is monadic, so it reflects isomorphisms, so its fiber is also a groupoid, and a groupoid that's a preorder is equivalent to a discrete category. (Ignore me: I'm just seeing if I can remember this stuff.)

view this post on Zulip Mike Shulman (Nov 20 2024 at 05:23):

Another good example of a faithful functor whose fiber is an interesting (0,1)-category is the functor P1P\to 1, where 11 is the terminal category and PP is any poset considered as a category.

view this post on Zulip John Baez (Nov 20 2024 at 05:28):

Heh. Any faithful functor has fibers equivalent to that one.

view this post on Zulip Alex Kreitzberg (Nov 20 2024 at 05:54):

I guess I tried to generalize 0-groupoid back to a 0-category without a license. The text below is from this link [[(0,1)-category]]

A (0,1)-category which is also a groupoid (that is, every morphism is an isomorphism) is a (0,0)-category (which may think of as either a 0-category or as a 0-groupoid), which is the same as a set (up to equivalence) or a symmetric proset (up to isomorphism).

The above all makes sense because a preorder whose inequalities are all equalities is just a set.

So Baez's notes, worked with groupoid fibers to make it easier for me get started, but I recklessly tried to change it "back to" 0-categories, but really fell short of (0, 1)-categories.

Thanks for the warning, I'll try to state a true thing about these fibers later.

view this post on Zulip John Baez (Nov 20 2024 at 06:01):

Some of the issues about 0-categories versus (0,1)-categories, and higher analogues of this distinction, are discussed in the appendices of the paper Mike and I wrote. As you can tell from what just happened, he wrote these appendices! :upside_down:

view this post on Zulip Alex Kreitzberg (Nov 21 2024 at 02:35):

Okay, this was actually a nice little argument.

If we have a faithful forgetful functor F:CDF : C \rightarrow D, and an object dDd \in D, then a fiber over dd, denoted F1(d)F^{-1}(d), has as objects:

objects cCc\in C with specified isomorphisms F(c)dF(c) \cong d

and as arrows:

arrows f:xyf : x \rightarrow y in CC satisfying FxdFyF x \cong d \cong F y such that FfF f commutes with the equipped isomorphisms connecting its domain and range to dd.

So FfF f is an isomorphism determined by this commuting triangle. Because FF is faithful, there is at most one ff possible for any two objects of our fiber.

So our fiber is a preorder.

These arrows aren't necessarily isomorphisms. For example the functor collapsing a preorder, PP \rightarrow \cdot, is faithful. We'd need more assumptions on FF to conclude it reflected isomorphisms.

view this post on Zulip Alex Kreitzberg (Nov 21 2024 at 02:56):

I'd like to relate this to the shifting pattern of what's forgetton between morphisms and objects a bit more, but I think I'll try to keep reading the paper. I'm not sure I'm quite ready to generalize this argument.