Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Why is Nat(hom(A,-),F) a class?

  1. Oct 23, 2009 #1
    I'm trying to read a bit up on category theory, but I'm a bit confused about one aspect of the proof of Yoneda's lemma. Suppose we have a locally small category C, a functor [itex]F : C \to \textrm{Set}[/itex] and an object A in C. Now according to Yoneda's lemma there exists a bijection from [itex]Nat(hom(A,-),F)[/itex] to [itex]FA[/itex]. Assuming [itex]Nat(hom(A,-),F)[/itex] is a class I can easily construct an explicit bijection which shows that [itex]Nat(hom(A,-),F)[/itex] is actually a set. However all sources I have looked at take it for granted that [itex]Nat(hom(A,-),F)[/itex] is a class and simply starts by defining a function [itex]\Theta_{F,A} : Nat(hom(A,-),F) \to FA[/itex] and then shows that it's bijective. I'm not convinced that [itex]Nat(hom(A,-),F)[/itex] actually exists and isn't contradictory in some way though. I guess it's something obvious I'm missing as it's always left out, but I would appreciate it if someone would tell me what I'm missing.
  2. jcsd
  3. Oct 23, 2009 #2


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Hrm. I think you have a legitimate question, there.

    Well, the easiest answer is to use foundations that include large cardinals. Hom(A,-) and F are just large sets, and so Nat is a large set of large sets.

    Second-order ZFC should do the trick too. Hom(A,-) and F are first-order classes, so Nat(Hom(A,-), F) would be a second-order class.

    I think you could manage the same trick in first-order NBG, since Hom(A,-) and F are classes (in the sense of being objects), and Nat(Hom(A,-),F) would be a class (in the sense of being a logical predicate).
  4. Oct 23, 2009 #3
    Thanks for the answer. That makes sense.

    For a fixed object [itex]B[/itex] in category C both hom(A,B) and FB are sets so the class of functions from hom(A,B) to FB is a set. Hence if [itex]\eta[/itex] is a natural transformation from hom(A,-) to F, then [itex]\eta_B[/itex] is a set and thus [itex]\{\eta_B | B \in ob(C)\}[/itex] is a class in the sense of NBG. Hence we can define Nat(hom(A,-),F) in terms of a formula [itex]\varphi(x,p_1,\ldots,p_n)[/itex] where [itex]p_1,\ldots,p_n[/itex] are free variables and x is a class. This is sufficient to allow us to set up the bijection from Nat(hom(A,-),F) to FA in the usual sense and that shows that Nat(hom(A,-),F) is actually a set.

    It just seems odd to me that such an argument is omitted, and I still wonder whether there is some easier way to do this that doesn't resort to using logical predicates.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook