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.
I was idly thinking about endofunctors on . At first I conjectured that they are all polynomial functors (i.e. coproducts of representables), but I quickly realised this is wrong, because there is a powerset functor . This maps -element sets to -element sets, and isn't polynomial in .
This made me wonder what other functions are possible. In particular, is there an endofunctor on that maps -element sets to -element setes, where is an uncomputable function, such as the busy beaver function?
Or more broadly, is there an endofunctor on the skeleton of that is incomputable, in the sense that there is no Turing machine that can determine the image of every morphism?
It feels like the constraint of functoriality might be strong enough to prevent this from existing, but I might just not be hitting on the right counterexample.
Can one diagonalise over all computable endofunctors of FInSet? That is, something like take , where is the computable endofunctor, assuming they are countable?
How would such a diagonal functor act on morphisms?
I seems helpful to think of such a functor as a symmetric set, which is a simplicial set with extra symmetries that amount to reordering the vertices of each simplex.
Based on this, it should be possible to consider functors that are constant on any set of cardinality , such as taking a representable and identifying all its simplices in dimensions . Topologically, this is an -sphere.
Then by taking coproducts of these, you can achieve arbitrarily fast growth, and in particular the map can be uncomputable.
I'm getting a little mixed up by extrapolating my understanding of simplicial sets to symmetric sets, so take the details with a grain of salt.
Nathaniel Virgo said:
How would such a diagonal functor act on morphisms?
Good point. This would only be sensible on the core of FinSet, perhaps.
I'm having trouble seeing how Toby's sort of functor achieves arbitrarily large growth while remaining finite for all finite sets. If is huge for some large set and maps to a smaller set we need to be highly many-to-one, or else will also be huge.
For this reason it's proving much easier for me to invent uncomputable functors than uncomputable functors .
However, there must exist lots of uncomputable functors , simply because there are only countably many computable ones!
I agree, I'm having trouble with that too :sweat_smile: so all I want to suggest is that thinking of it in topological terms of symmetric simplicial sets may be helpful for constructing examples of functors that take small values on small sets and really large values on larger sets.
How can we prove that there are uncountably many endofunctors on ? It seems "obvious" but I don't immediately see how to prove it.
Oh no, I even got confused about the variance :woozy_face: no more math before breakfast!
John Baez said:
How can we prove that there are uncountably many endofunctors on ? It seems "obvious" but I don't immediately see how to prove it.
For every object of a category, defines the endofunctor by and .
The collection is an uncountable collection of endofunctors of .
Of course, these endofunctors should be isomorphic for a good definition of morphism of endofunctors. So we should find an uncountable collection of non isomorphic sets if you want a solution in the stronger sense using these constant endofunctors. I don’t know much about cardinals but I think that it would boil down to proving that the collection of all cardinals is uncountable. Maybe this assertion is false, I don’t know.
For this story of constant endofunctors, it might be helpful to realize that every category is isomorphic to the full subcategory of constant endofunctors of its category of endofunctors (a natural transformation from the constant endofunctor to the constant endofunctor is always a natural transformation given by for some ). So that the category of endofunctors of a category is always bigger than the category. In particular there is an injection of the set of objects of a category into the set of object of its category of endofunctors. So if is uncountable, then is uncountable.
One then has to worry whether the natural isomorphism between a computable endofunctor and an arbitrary one is computable, but I think if your endofunctor is constant, it should be computable. And if the constant object is has no nontrivial endomorphisms then any two such constant functors taking _values_ that are isomorphic, they are uniquely isomorphic, and so the natural isomorphism is also constant. And so that should be computable, too.
Jean-Baptiste Vienney said:
John Baez said:
How can we prove that there are uncountably many endofunctors on ? It seems "obvious" but I don't immediately see how to prove it.
The collection is an uncountable collection of endofunctors of .
Haha! True, but this is like asking a genie "make me a milkshake" - and then he turns you into a milkshake. :smirk:
I should have asked: can anyone find uncountably many natural isomorphism classes of endofunctors of ?
Or equivalently: if is a skeleton of , can anyone find uncountably many endofunctors of ?
I think we should be talking about the skeleton of if we want to talk about computability anyway
It makes life simpler, for sure.
John Baez said:
How can we prove that there are uncountably many endofunctors on ? It seems "obvious" but I don't immediately see how to prove it.
Surprisingly, there aren't.
For a locally finite category (I.e. such that homsets are finite), is the free finitary cocompletion of ; all of its objects are naturally isomorphic to a finite colimit of representables by the coYoneda lemma. Taking to be the opposite of the category of finite sets, we obtain that every endofunctor of finite sets is a finite colimit of representables!!
Wow, amazing - yet simple in retrospect!
(And there are countably many since there are countably many isomorphism classes of finite diagram)
So now I've completely flip-flopped: it now seems "obvious" that every endofunctor of is computable - or if that concept seems too murky, every endofunctor on the skeleton of with objects is computable.
That's because I believe a finite colimit of representable functors on is computable.
It takes a bit of work to define when a functor is "representable", though... and now I'm getting confused about this.
Morgan Rogers (he/him) said:
Taking to be the opposite of the category of finite sets, we obtain that every endofunctor of finite sets is a finite colimit of representables!!
Wait, what? Where did I go wrong initially, then? Can the covariant power set functor be expressed as a finite colimit of representables in ?
I don't immediately see the answer to your question, Nathaniel, so you may be on to something, but Morgan is talking about representable functors on .
This is fairly confusing! A representable functor on is a functor of the form
for some . This is a convoluted way of saying a functor
for some .
The point must be that the colimit can still be infinite: an infinite coproduct, plus infinitely many identifications that result in the colimit functor still taking finite values.
Morgan Rogers (he/him) said:
Surprisingly, there aren't.
For a locally finite category (I.e. such that homsets are finite), is the free finitary cocompletion of ; all of its objects are naturally isomorphic to a finite colimit of representables by the coYoneda lemma.
In other words, why is the colimit necessarily finite?
So you're claiming this is false, @Tobias Fritz:
Morgan Rogers (he/him) said:
For a locally finite category (I.e. such that homsets are finite), is the free finitary cocompletion of ; all of its objects are naturally isomorphic to a finite colimit of representables by the coYoneda lemma.
Yes, for a simpler counterexample just take to be a category having infinitely many objects and only identity morphisms. Then the finite colimits of representables are only those functors that take almost all objects to the empty set.
Right. Okay. So I no longer believe Morgan's argument that there are only countably many endofunctors on FinSet, up to natural isomorphism. He just stated his claim with such conviction that I was bowled over.
So I still don't know if there are uncountably many endofunctors on FinSet, up to natural isomorphism. :cry:
Tobias Fritz said:
I seems helpful to think of such a functor as a symmetric set, which is a simplicial set with extra symmetries that amount to reordering the vertices of each simplex.
I still think that this is a good way of constructing examples of fast-growing functors , which can then be composed with the contravariant power set functor to get examples of fast-growing functors .
Here's a concrete example inspired by that and which is also in the spirit of species. Fix , and for a finite set let be the set of -uniform hypergraphs with vertex set . Here, a -uniform hypergraph is a subset of the set of -element subsets of , and I'm using these because there's only one -uniform hypergraph structure on a set with fewer than elements. This can easily be made into a functor: for and a -hypergraph structure , we can say that a subset belongs to the transported hypergraph structure on if and only if contains a subset belonging to . In terms of drawing hypergraphs, you just map hyperedges to hyperedges and discard those for which identifies vertices.
The upshot now is that is singleton precisely for . So by taking finite colimits of these functors, one can achieve arbitrarily large growth, and in particular uncomputable growth. It also shows that there are uncountably many (isomorphism classes) of endofunctors.
So let's see if I get this right. You're claiming that:
1) There's a functor such that on objects where:
and
2) has just one element if .
Yep, that's a good way to put it. Note that 2) is a consequence of 1) because of if .
Okay, great. The only thing I'm worrying about is how is defined on morphisms. You explained it, but... is it the composite of some covariant functors and that are defined on objects as I said, and defined somehow on morphisms? Or maybe is it the composite of two contravariant functors and that are defined on objects as I said?
I don't yet know how to describe the action on morphisms in terms of a factorization into and , but it may be possible to do so by composing suitable versions of these functors that go and .
The first one seems quite clear: given and a -element subset , it's related precisely to all the -element subsets of , and this defines .
In case it wasn't obvious, it's that I'm worried about. I don't know a covariant or contravariant "-element subset functor".
But if you can clearly explain to me (again?) what does on morphisms without factoring it into two functors, that's fine too.
I've got a set of -element subsets of , and a function . I want a set of -element subsets of .
Actually I think the factorization works, with as above and the usual thing, namely taking a relation to the map which maps every subset to the subset of all elements of that are related to something in .
John Baez said:
I've got a set of -element subsets of , and a function . I want a set of -element subsets of .
It's the set of all -element subsets of whose preimage contains an element of as a subset.
For , we're talking about graphs (in the combinatorialists' sense) with vertex set . We can transport such a graph along just by pushing forward edges in the obvious way. We get into trouble for those edges whose vertices are identified under , but we can just ignore those.
Okay, I think it's sinking in.
So it looks like we can prove there are uncomputable functors (where is some skeleton of ) in at least two ways:
1) Show that there are countably many natural isomorphism classes of computable functors . Show there are uncountably many natural isomorphism classes of functors . For the latter, use functors the form
where is a strictly increasing sequence, and show that distinct such sequences give nonisomorphic functors .
2) Show that if is uncomputable, the functor
is uncomputable.
John Baez said:
Right. Okay. So I no longer believe Morgan's argument that there are only countably many endofunctors on FinSet, up to natural isomorphism. He just stated his claim with such conviction that I was bowled over.
I had convinced myself too, although I hadn't checked what the conditions are on a base of enrichment for the standard results such as coYoneda to work
John Baez said:
2) Show that if is uncomputable, the functor
is uncomputable.
Actually the product works better, because the infinite coproduct would require the functors to vanish for almost all on every finite set , which doesn't work because if for some nonempty , then this must hold for all nonempty . But for the product on the other hand, we need for almost all , and this holds for example for the functors coming out of my construction with hypergraphs.
Oh, whoops - for some reason I'd been imagining when , when in fact I knew it was the 1-element set. It's so easy to slip up - anyone watching this thread will see how easy.
So yes, the corrected problem set is:
1) Show that there are countably many natural isomorphism classes of computable functors . Show there are uncountably many natural isomorphism classes of functors . For the latter, use functors of the form
where is a strictly increasing sequence, and show that distinct such sequences give nonisomorphic functors .
2) Show that if is uncomputable, the functor is uncomputable.
I think both of those approaches work. For 2) in particular, by taking the index sequence to grow slowly enough, we can make grow faster than the busy beaver function. Now we're done because any function lower bounded by busy beaver is uncomputable: if it was computable, we could also compute the busy beaver function on simply by running all -state Turing machines up to time .
There's still some work required to show that distinct strictly increasing sequences give nonisomorphic functors , but I think this approach should be manageable, though a bit sweaty:
Compute as a function of and , and then use that to show that distinct strictly increasing functions give distinct sequences , hence nonisomorphic functors .
The index sequence should grow slowly in order for to grow fast in , no? So it may be better to merely require to be non-strictly increasing.
Tobias Fritz said:
I think both of those approaches work. For 2) in particular, by taking the index sequence to grow slowly enough, we can make grow faster than the busy beaver function. Now we're done because any function lower bounded by busy beaver is uncomputable: if it was computable, we could also compute the busy beaver function on simply by running all -state Turing machines up to time .
Okay, that would work if we take to be increasing but not strictly so. I was taking to be strictly increasing but that makes the argument harder (see above), since then what you're calling can't grow super-fast. I believe can still be uncomputable just by taking to be uncomputable, but checking everything takes a lot more work than in your approach!
That is, I think that just by looking at you can figure out the sequence , but it's a hassle to check this.
For your approach to work we still require that eventually get larger than any fixed natural number - to make sure is always finite.
It's probably possible to choose such that the cardinalities are all powers of a fixed prime depending on . With these primes all chosen distinct, I think your approach of reconstructing the indexing sequence from the functor should work, most easily so if the sequence is strictly increasing.
Now you're making me imagine an alternative universe where Goedel had to encode everything as endofunctors on FinSet.
Jean-Baptiste Vienney said:
Of course, these endofunctors should be isomorphic for a good definition of morphism of endofunctors. So we should find an uncountable collection of non isomorphic sets if you want a solution in the stronger sense using these constant endofunctors. I don’t know much about cardinals but I think that it would boil down to proving that the collection of all cardinals is uncountable. Maybe this assertion is false, I don’t know.
Sorry for this, I wrote this in the middle of the night. I should have remembered that finite sets are finite. So there are only countably many finite sets up to bijection.
And that a morphism of functor is called a natural transformation :rolling_eyes:
The solution is very cool though!
EDIT: But if I understand, this candidate solution is maybe not true finally.
Morgan Rogers (he/him) said:
(And there are countably many since there are countably many isomorphism classes of finite diagram)
This is maybe simple but how do we prove this?
Morgan Rogers (he/him) said:
I had convinced myself too, although I hadn't checked what the conditions are on a base of enrichment for the standard results such as coYoneda to work
I shouldn't blame you too much: I wasn't just bowing to your authority, the argument really convinced me. This is especially unfortunate because right now I'm working on a problem where the same issue comes up. It's easiest to state the issue in its decategorified form: for an infinite set , there are more functions than finite sums of Kronecker delta functions. This is so obvious nobody would mix them up! But I've been dealing with -valued presheaves on locally finite categories and there I keep making analogous mistakes.
So I've concluded that one needs the category to be "FinSet-small" (I.e. finite) for my original assertion about the finitary cocompletion to work, and otherwise you need to stick to finite colimits of representables for it to hold (as in Tobias' counterexample). It's a nice sandbox for thinking about size issues around the presheaf construction.
Tobias Fritz said:
It's probably possible to choose such that the cardinalities are all powers of a fixed prime depending on .
And here's a way to achieve that, for any prime or general natural number , based on the construction of we've discussed earlier. We just replace the in the definition of the power set functor by , where the action on morphisms can be defined as follows: for , map a given to defined by .
On objects, this takes every finite set to the set of maps , so the cardinality is .
So, to summarize:
That's an excellent roundup of the conversation, @Tobias Fritz!