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: theory: category theory

Topic: uncomputable endofunctors on FinSet


view this post on Zulip Nathaniel Virgo (Aug 14 2024 at 02:42):

I was idly thinking about endofunctors on FinSet\bf FinSet. 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 FinSetFinSet\bf FinSet\to FinSet. This maps nn-element sets to 2n2^n-element sets, and 2n2^n isn't polynomial in nn.

This made me wonder what other functions are possible. In particular, is there an endofunctor on FinSet\bf FinSet that maps nn-element sets to F(n)F(n)-element setes, where F:NNF:\N\to\N is an uncomputable function, such as the busy beaver function?

Or more broadly, is there an endofunctor on the skeleton of FinSet\bf FinSet 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.

view this post on Zulip David Michael Roberts (Aug 14 2024 at 04:06):

Can one diagonalise over all computable endofunctors of FInSet? That is, something like take nP(Fn(n))n\mapsto P(F_n(n)), where FnF_n is the nthn^{th} computable endofunctor, assuming they are countable?

view this post on Zulip Nathaniel Virgo (Aug 14 2024 at 05:10):

How would such a diagonal functor act on morphisms?

view this post on Zulip Tobias Fritz (Aug 14 2024 at 05:44):

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.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 05:49):

Based on this, it should be possible to consider functors that are constant 11 on any set of cardinality <n< n, such as taking a representable and identifying all its simplices in dimensions d<nd < n. Topologically, this is an nn-sphere.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 05:51):

Then by taking coproducts of these, you can achieve arbitrarily fast growth, and in particular the map nF([n])n \mapsto |F([n])| can be uncomputable.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 05:54):

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.

view this post on Zulip David Michael Roberts (Aug 14 2024 at 06:29):

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.

view this post on Zulip John Baez (Aug 14 2024 at 06:30):

I'm having trouble seeing how Toby's sort of functor FF achieves arbitrarily large growth while remaining finite for all finite sets. If F(S)F(S) is huge for some large set SS and f:STf: S \to T maps SS to a smaller set TT we need F(f)F(f) to be highly many-to-one, or else F(T)F(T) will also be huge.

view this post on Zulip John Baez (Aug 14 2024 at 06:33):

For this reason it's proving much easier for me to invent uncomputable functors F:core(FinSet)FinSetF: \mathrm{core}(\mathsf{FinSet}) \to \mathsf{FinSet} than uncomputable functors F:FinSetFinSetF: \mathsf{FinSet} \to \mathsf{FinSet}.

view this post on Zulip John Baez (Aug 14 2024 at 06:35):

However, there must exist lots of uncomputable functors F:FinSetFinSetF: \mathsf{FinSet} \to \mathsf{FinSet}, simply because there are only countably many computable ones!

view this post on Zulip Tobias Fritz (Aug 14 2024 at 06:36):

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.

view this post on Zulip John Baez (Aug 14 2024 at 06:40):

How can we prove that there are uncountably many endofunctors on FinSet\mathsf{FinSet}? It seems "obvious" but I don't immediately see how to prove it.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 06:49):

Oh no, I even got confused about the variance :woozy_face: no more math before breakfast!

view this post on Zulip Jean-Baptiste Vienney (Aug 14 2024 at 07:23):

John Baez said:

How can we prove that there are uncountably many endofunctors on FinSet\mathsf{FinSet}? It seems "obvious" but I don't immediately see how to prove it.

For every object XX of a category, defines the endofunctor 1X1_X by 1X(A)=X1_X(A)=X and 1X(f)=idX1_X(f)=\mathrm{id}_X.

The collection {1{x}:FinSetFinSet, xR}\{1_{\{x\}}:\mathbf{FinSet} \rightarrow \mathbf{FinSet},~x \in \mathbb{R}\} is an uncountable collection of endofunctors of FinSet\mathbf{FinSet}.

view this post on Zulip Jean-Baptiste Vienney (Aug 14 2024 at 07:29):

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.

view this post on Zulip Jean-Baptiste Vienney (Aug 14 2024 at 07:44):

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 1X1_X to the constant endofunctor 1Y1_Y is always a natural transformation 1f:1X1Y1_f:1_X \rightarrow 1_Y given by (1f)(A)=f:X=1X(A)Y=1Y(A)(1_f)(A)=f:X=1_X(A) \rightarrow Y=1_Y(A) for some f:XYf:X \rightarrow Y). 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 ObC\mathrm{Ob}_\mathcal{C} is uncountable, then ObEnd(C)\mathrm{Ob}_{\mathrm{End}(\mathcal{C})} is uncountable.

view this post on Zulip David Michael Roberts (Aug 14 2024 at 07:54):

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.

view this post on Zulip John Baez (Aug 14 2024 at 08:09):

Jean-Baptiste Vienney said:

John Baez said:

How can we prove that there are uncountably many endofunctors on FinSet\mathsf{FinSet}? It seems "obvious" but I don't immediately see how to prove it.

The collection {1{x}:FinSetFinSet, xR}\{1_{\{x\}}:\mathbf{FinSet} \rightarrow \mathbf{FinSet},~x \in \mathbb{R}\} is an uncountable collection of endofunctors of FinSet\mathbf{FinSet}.

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 FinSet\mathsf{FinSet}?

Or equivalently: if F\mathsf{F} is a skeleton of FinSet\mathsf{FinSet}, can anyone find uncountably many endofunctors of F\mathsf{F}?

view this post on Zulip Nathaniel Virgo (Aug 14 2024 at 08:11):

I think we should be talking about the skeleton of FinSet\bf FinSet if we want to talk about computability anyway

view this post on Zulip John Baez (Aug 14 2024 at 08:12):

It makes life simpler, for sure.

view this post on Zulip Morgan Rogers (he/him) (Aug 14 2024 at 08:16):

John Baez said:

How can we prove that there are uncountably many endofunctors on FinSet\mathsf{FinSet}? It seems "obvious" but I don't immediately see how to prove it.

Surprisingly, there aren't.
For a locally finite category CC (I.e. such that homsets are finite), [Cop,FinSet][C^{\mathrm{op}},\mathrm{FinSet}] is the free finitary cocompletion of CC; all of its objects are naturally isomorphic to a finite colimit of representables by the coYoneda lemma. Taking CC to be the opposite of the category of finite sets, we obtain that every endofunctor of finite sets is a finite colimit of representables!!

view this post on Zulip John Baez (Aug 14 2024 at 08:17):

Wow, amazing - yet simple in retrospect!

view this post on Zulip Morgan Rogers (he/him) (Aug 14 2024 at 08:18):

(And there are countably many since there are countably many isomorphism classes of finite diagram)

view this post on Zulip John Baez (Aug 14 2024 at 08:20):

So now I've completely flip-flopped: it now seems "obvious" that every endofunctor of FinSet\mathsf{FinSet} is computable - or if that concept seems too murky, every endofunctor on the skeleton F\mathsf{F} of FinSet\mathsf{FinSet} with objects {},{0},{0,1},...\{\}, \{0\}, \{0,1\}, ... is computable.

view this post on Zulip John Baez (Aug 14 2024 at 08:21):

That's because I believe a finite colimit of representable functors on Fop\mathsf{F}^{\textrm{op}} is computable.

view this post on Zulip John Baez (Aug 14 2024 at 08:26):

It takes a bit of work to define when a functor f:FFf: \mathsf{F} \to \mathsf{F} is "representable", though... and now I'm getting confused about this.

view this post on Zulip Nathaniel Virgo (Aug 14 2024 at 08:36):

Morgan Rogers (he/him) said:

Taking CC 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 FinSet\bf FinSet?

view this post on Zulip John Baez (Aug 14 2024 at 08:41):

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 FinSetop\mathsf{FinSet}^{\textrm{op}}.

view this post on Zulip John Baez (Aug 14 2024 at 08:47):

This is fairly confusing! A representable functor on FinSetop\mathsf{FinSet}^{\textrm{op}} is a functor of the form

FinSetop(,x):(FinSetop)opSet \mathsf{FinSet}^{\textrm{op}}(-,x) : (\mathsf{FinSet}^{\textrm{op}})^{\textrm{op}} \to \mathsf{Set}

for some xFinSetopx \in \mathsf{FinSet}^{\textrm{op}} . This is a convoluted way of saying a functor

FinSet(x,):(FinSetSet\mathsf{FinSet}(x,-) : (\mathsf{FinSet} \to \mathsf{Set}

for some xFinSetopx \in \mathsf{FinSet}^{\textrm{op}} .

view this post on Zulip Tobias Fritz (Aug 14 2024 at 08:48):

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.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 08:49):

Morgan Rogers (he/him) said:

Surprisingly, there aren't.
For a locally finite category CC (I.e. such that homsets are finite), [Cop,FinSet][C^{\mathrm{op}},\mathrm{FinSet}] is the free finitary cocompletion of CC; 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?

view this post on Zulip John Baez (Aug 14 2024 at 08:49):

So you're claiming this is false, @Tobias Fritz:

Morgan Rogers (he/him) said:

For a locally finite category CC (I.e. such that homsets are finite), [Cop,FinSet][C^{\mathrm{op}},\mathrm{FinSet}] is the free finitary cocompletion of CC; all of its objects are naturally isomorphic to a finite colimit of representables by the coYoneda lemma.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 08:51):

Yes, for a simpler counterexample just take CC 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.

view this post on Zulip John Baez (Aug 14 2024 at 09:10):

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:

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:15):

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 FinSetopFinSet\mathsf{FinSet}^\mathrm{op} \to \mathsf{FinSet}, which can then be composed with the contravariant power set functor to get examples of fast-growing functors FinSetFinSet\mathsf{FinSet} \to \mathsf{FinSet}.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:15):

Here's a concrete example inspired by that and which is also in the spirit of species. Fix kNk \in \mathbb{N}, and for a finite set AA let Fk(A)F_k(A) be the set of kk-uniform hypergraphs with vertex set AA. Here, a kk-uniform hypergraph is a subset of the set of kk-element subsets of AA, and I'm using these because there's only one kk-uniform hypergraph structure on a set with fewer than kk elements. This FkF_k can easily be made into a functor: for f:ABf : A \to B and a kk-hypergraph structure HFk(A)H \in F_k(A), we can say that a subset SBS \subseteq B belongs to the transported hypergraph structure Fk(f)(H)F_k(f)(H) on BB if and only if f1(S)f^{-1}(S) contains a subset belonging to HH. In terms of drawing hypergraphs, you just map hyperedges to hyperedges and discard those for which ff identifies vertices.

The upshot now is that Fk(A)F_k(A) is singleton precisely for A<k|A| < k. 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.

view this post on Zulip John Baez (Aug 14 2024 at 09:34):

So let's see if I get this right. You're claiming that:

1) There's a functor Fk:FinSetFinSetF_k: \mathsf{FinSet} \to \mathsf{FinSet} such that on objects Fk(A)=P(Pk(A))F_k(A) = P(P_k(A)) where:

and

2) Fk(A)F_k(A) has just one element if A<k|A| \lt k.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:36):

Yep, that's a good way to put it. Note that 2) is a consequence of 1) because of P(Pk(A))=P()=1P(P_k(A)) = P(\emptyset) = 1 if A<k|A| < k.

view this post on Zulip John Baez (Aug 14 2024 at 09:39):

Okay, great. The only thing I'm worrying about is how FkF_k is defined on morphisms. You explained it, but... is it the composite of some covariant functors PP and PkP_k that are defined on objects as I said, and defined somehow on morphisms? Or maybe is it the composite of two contravariant functors PP and PkP_k that are defined on objects as I said?

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:41):

I don't yet know how to describe the action on morphisms in terms of a factorization into PkP_k and PP, but it may be possible to do so by composing suitable versions of these functors that go Pk:FinSetopFinRelP_k : \mathsf{FinSet}^{\mathrm{op}} \to \mathsf{FinRel} and P:FinRelopFinSetP : \mathsf{FinRel}^{\mathrm{op}} \to \mathsf{FinSet}.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:42):

The first one seems quite clear: given f:ABf : A \to B and a kk-element subset SBS \subseteq B, it's related precisely to all the kk-element subsets of f1(S)f^{-1}(S), and this defines Pk(f):Pk(B)Pk(A)P_k(f) : P_k(B) \to P_k(A).

view this post on Zulip John Baez (Aug 14 2024 at 09:43):

In case it wasn't obvious, it's PkP_k that I'm worried about. I don't know a covariant or contravariant "kk-element subset functor".

view this post on Zulip John Baez (Aug 14 2024 at 09:43):

But if you can clearly explain to me (again?) what FkF_k does on morphisms without factoring it into two functors, that's fine too.

view this post on Zulip John Baez (Aug 14 2024 at 09:44):

I've got a set SS of kk-element subsets of AA, and a function f:ABf: A \to B. I want a set of kk-element subsets of BB.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:48):

Actually I think the factorization works, with PkP_k as above and P:FinRelopFinSetP : \mathsf{FinRel}^{\mathrm{op}} \to \mathsf{FinSet} the usual thing, namely taking a relation R:ABR : A \to B to the map P(R):P(B)P(A)P(R) : P(B) \to P(A) which maps every subset SBS \subseteq B to the subset of all elements of AA that are related to something in SS.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:50):

John Baez said:

I've got a set SS of kk-element subsets of AA, and a function f:ABf: A \to B. I want a set of kk-element subsets of BB.

It's the set of all kk-element subsets of BB whose preimage contains an element of SS as a subset.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 09:52):

For k=2k=2, we're talking about graphs (in the combinatorialists' sense) with vertex set AA. We can transport such a graph along ff just by pushing forward edges in the obvious way. We get into trouble for those edges whose vertices are identified under ff, but we can just ignore those.

view this post on Zulip John Baez (Aug 14 2024 at 09:55):

Okay, I think it's sinking in.

view this post on Zulip John Baez (Aug 14 2024 at 10:09):

So it looks like we can prove there are uncomputable functors F:FFF: \mathsf{F} \to \mathsf{F} (where F\mathsf{F} is some skeleton of FinSet\mathsf{FinSet}) in at least two ways:

1) Show that there are countably many natural isomorphism classes of computable functors F:FFF: \mathsf{F} \to \mathsf{F}. Show there are uncountably many natural isomorphism classes of functors F:FFF: \mathsf{F} \to \mathsf{F}. For the latter, use functors the form

F=n=0Fk(n) F = \sum_{n = 0}^\infty F_{k(n)}

where k:NNk : \mathbb{N} \to \mathbb{N} is a strictly increasing sequence, and show that distinct such sequences give nonisomorphic functors FF.

2) Show that if k:NNk : \mathbb{N} \to \mathbb{N} is uncomputable, the functor

n=0Fk(n) \sum_{n = 0}^\infty F_{k(n)}

is uncomputable.

view this post on Zulip Morgan Rogers (he/him) (Aug 14 2024 at 10:39):

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

view this post on Zulip Tobias Fritz (Aug 14 2024 at 11:15):

John Baez said:

2) Show that if k:NNk : \mathbb{N} \to \mathbb{N} is uncomputable, the functor

n=0Fk(n) \sum_{n = 0}^\infty F_{k(n)}

is uncomputable.

Actually the product n=0Fk(n)\prod_{n=0}^\infty F_{k(n)} works better, because the infinite coproduct would require the functors to vanish for almost all kk on every finite set AA, which doesn't work because if F(A)=F(A) = \emptyset for some nonempty AA, then this must hold for all nonempty AA. But for the product on the other hand, we need Fk(A)=1F_k(A) = 1 for almost all kk, and this holds for example for the functors coming out of my construction with hypergraphs.

view this post on Zulip John Baez (Aug 14 2024 at 11:45):

Oh, whoops - for some reason I'd been imagining Fk(A)=F_k(A) = \emptyset when A<k|A| < k, 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 F:FFF: \mathsf{F} \to \mathsf{F}. Show there are uncountably many natural isomorphism classes of functors F:FFF: \mathsf{F} \to \mathsf{F}. For the latter, use functors of the form

Fj=n=0Fk(n) F_j = \prod_{n = 0}^\infty F_{k(n)}

where j:NNj: \mathbb{N} \to \mathbb{N} is a strictly increasing sequence, and show that distinct such sequences give nonisomorphic functors FjF_j.

2) Show that if j:NNj : \mathbb{N} \to \mathbb{N} is uncomputable, the functor FjF_j is uncomputable.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 11:50):

I think both of those approaches work. For 2) in particular, by taking the index sequence k(n)k(n) to grow slowly enough, we can make f(m)nFk(n)([m])f(m) \coloneqq \bigg|\prod_n F_{k(n)}([m])\bigg| 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 mm simply by running all mm-state Turing machines up to time f(m)f(m).

view this post on Zulip John Baez (Aug 14 2024 at 11:53):

There's still some work required to show that distinct strictly increasing sequences jj give nonisomorphic functors FjF_j, but I think this approach should be manageable, though a bit sweaty:

Compute fj,n=Fj{1,,n}f_{j,n} = |F_j\{1, \dots, n\}| as a function of jj and nn, and then use that to show that distinct strictly increasing functions jj give distinct sequences fj,0,fj,1,f_{j,0}, f_{j,1}, \dots, hence nonisomorphic functors FjF_j.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 11:55):

The index sequence jj should grow slowly in order for fj,nf_{j,n} to grow fast in nn, no? So it may be better to merely require jj to be non-strictly increasing.

view this post on Zulip John Baez (Aug 14 2024 at 11:57):

Tobias Fritz said:

I think both of those approaches work. For 2) in particular, by taking the index sequence j(n)j(n) to grow slowly enough, we can make f(m)nFj(n)([m])f(m) \coloneqq \bigg|\prod_n F_{j(n)}([m])\bigg| 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 mm simply by running all mm-state Turing machines up to time f(m)f(m).

Okay, that would work if we take jj to be increasing but not strictly so. I was taking jj to be strictly increasing but that makes the argument harder (see above), since then what you're calling ff can't grow super-fast. I believe ff can still be uncomputable just by taking jj to be uncomputable, but checking everything takes a lot more work than in your approach!

view this post on Zulip John Baez (Aug 14 2024 at 11:57):

That is, I think that just by looking at ff you can figure out the sequence jj, but it's a hassle to check this.

view this post on Zulip John Baez (Aug 14 2024 at 11:59):

For your approach to work we still require that jj eventually get larger than any fixed natural number - to make sure Fj(A)F_j(A) is always finite.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 12:02):

It's probably possible to choose FkF_k such that the cardinalities Fk(A)|F_k(A)| are all powers of a fixed prime depending on kk. 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.

view this post on Zulip John Baez (Aug 14 2024 at 12:06):

Now you're making me imagine an alternative universe where Goedel had to encode everything as endofunctors on FinSet.

view this post on Zulip Jean-Baptiste Vienney (Aug 14 2024 at 12:14):

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.

view this post on Zulip Jean-Baptiste Vienney (Aug 14 2024 at 12:15):

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?

view this post on Zulip John Baez (Aug 14 2024 at 12:16):

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 XX, there are more functions f:XNf: X \to \mathbb{N} than finite sums of Kronecker delta functions. This is so obvious nobody would mix them up! But I've been dealing with FinVect\mathsf{FinVect}-valued presheaves on locally finite categories and there I keep making analogous mistakes.

view this post on Zulip Morgan Rogers (he/him) (Aug 14 2024 at 12:58):

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.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 13:07):

Tobias Fritz said:

It's probably possible to choose FkF_k such that the cardinalities Fk(A)|F_k(A)| are all powers of a fixed prime depending on kk.

And here's a way to achieve that, for any prime or general natural number pp, based on the construction of Fk=PPkF_k = P P_k we've discussed earlier. We just replace the 22 in the definition of the power set functor P:FinRelopFinSetP : \mathsf{FinRel}^{\mathrm{op}} \to \mathsf{FinSet} by [p]={0,,p1}[p] = \{0,\dots, p-1\}, where the action on morphisms can be defined as follows: for R:ABR : A \to B, map a given S:B[p]S : B \to [p] to RS:A[p]R^* S : A \to [p] defined by (RS)(a)=max{S(b)aRb}(R^* S)(a) = \max \{S(b) \mid a R b\}.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 13:09):

On objects, this takes every finite set AA to the set of maps A[p]A \to [p], so the cardinality is pAp^{|A|}.

view this post on Zulip Tobias Fritz (Aug 14 2024 at 14:23):

So, to summarize:

  1. For every kNk \in \mathbb{N}, there is a functor Fk:FinSetFinSetF_k : \mathsf{FinSet} \to \mathsf{FinSet} such that the cardinality of every Fk(A)F_k(A) is a power of the kk-th prime, and equal to 11 if and only if A<k|A| < k.
  2. Hence for any indexing sequence k(n)k(n) with lim infnk(n)=\liminf_{n \to \infty} k(n) = \infty, the functor Fn=0Fk(n)F \coloneqq \prod_{n=0}^\infty F_{k(n)} still lands in FinSet\mathsf{FinSet}.
  3. For any two distinct choices of strictly increasing indexing sequence, the two resulting functors are not isomorphic. Therefore there are uncountably many isomorphism classes of functors FinSetFinSet\mathsf{FinSet} \to \mathsf{FinSet}. In particular there are uncomputable ones.
  4. By instead making k(n)k(n) grow slowly with nn, we can make F(A)|F(A)| grow arbitrarily fast with the cardinality of AA, and in particular faster than the busy beaver function. Making such a choice gives an explicit example of an uncomputable functor. (That is as explicit as it can get, given the uncomputability.)

view this post on Zulip John Baez (Aug 14 2024 at 15:15):

That's an excellent roundup of the conversation, @Tobias Fritz!