69

I have never understood why set theory has so many detractors, or what is gained by avoiding its use.

It is well known that the naive concept of a set as a collection of objects leads to logical paradoxes (when dealing with infinite sets) that can only be resolved by defining the concept of a set according to a system of axioms.

With this context, can someone please help me to understand the following passage from Categories for the Working Mathematician, Chapter 1, first two paragraphs (emphasis added):

First we describe categories directly, by means of axioms, without using any set theory, and call them "metacategories". Actually we being with a simpler notion, a (meta)graph.

A metagraph consists of objects a,b,c..., arrows f,g,h..., and two operations as follows:

Is it really possible to avoid the use of set theory in the foundations of category theory simply by using the phrase "objects a,b,c ..." instead?

Thanks!

Matt Calhoun
  • 4,414
  • 12
    What Mac Lane is trying to say, in more technical language, is that (meta)categories are models of a certain first-order theory. However, he then goes on to say that he will primarily work with categories that actually exist inside the universe of set theory. – Zhen Lin Nov 08 '15 at 18:57
  • 4
    ZFC is a theory of well-founded, rooted, rigid trees; there's a lot of internal structure in ZFC sets that we don't necessarily want. –  Nov 09 '15 at 04:37
  • 2
    Russell's paradox happens in CT, too. And independently, you can take CT as a base formalization and embed set theory in it (similar to the usual reverse situation to bootstrap people into understanding of category theory by starting off stating CT in terms of sets of objects, morphism, etc.) – Mitch Nov 09 '15 at 19:43
  • 2
    Dear @DVD: the remark about embeddings in $R^3$ seems to miss the point of the question. This OP is about a serious concern for formalization from the ground up. Then your suggestion to take subsets of $R^3$ as the 'primitives' is not an option, since constructing '$R$', which supposedly is to mean 'the' real numbers, is itself problematic. And if your suggestion is to rely of some "subjectively [...] real space", then this is not 'mathematics' as usually construed nowadays, if only for the empirical fact that opinions are divided whether Euclidean space is 'the' 'real' space. – Peter Heinig Oct 08 '17 at 15:20
  • @ZhenLin, I know this is an old comment, but I am trying to understand exactly what you mean by "models of a first order theory". The only notion of model that I have encountered is in model theory, and the only model theory I've encountered was developed inside set theory. Is there some formal notion of a "model" of a first order theory which is not just essentially a formula in the language of set theory? – Carlyle Jun 22 '25 at 10:14

6 Answers6

39

From a formal viewpoint it is possible to study category theory within category theory, using the notion of a topos. Topos theory does many things, but one thing it provides is an alternative, category-theoretic foundation for mathematics.

By augmenting topos theory with sufficient additional axioms, it is theoretically possible to re-construct all of ZFC within topos theory. So, if someone can study category theory in ZFC, they can do the same thing by studying category theory within ZFC within topos theory! Or they can just study category theory using topos theory without using ZFC as an intermediate step. A practical challenge to doing this is that the axioms for a topos are arguably more complicated than the axioms for ZFC, which apart from replacement can all be justified in terms of relatively basic properties of sets.

One other way to look at some issues raised in this thread is to look at the notion of type. There is a nice analogy for the difference between ZFC vs. some categorical foundations: it is like the difference bewteen an untyped programming language (such as Scheme) and a strongly typed language (such as Java or C++).

In Scheme and other untyped languages, there is no separation between code and data: given any two objects, we can treat the first as a function the second as an input, and (attempt to) compute the corresponding output. So, for example, we could define natural numbers using Church numerals, treat "$5$" as a function, and compute its value on the ordered pair $(0,17)$. Of course, nobody really does this seriously in practice. Similarly, in ZFC, we can ask whether the $\pi$ is a member of the ordered pair $(8, \mathbb{R})$, although in practice nobody does this seriously.

In Java and C++, there are strict definitions of each data type. For example, if I have a "natural number" object, and I want a "real number" object, I need to convert ("cast") the original object to make it have the appropriate type. Thus I cannot directly add $1_\mathbb{N}$ and $\pi_\mathbb{R}$. This is similar to the way that some categorical foundations handle things. Instead of speaking of "casting", these foundations focus on the "natural inclusion map" from $\mathbb{N}$ to $\mathbb{R}$, etc.

It is worth knowing that there are many other type theories, apart from the ones inspired by topos theory. There is intuitionistic type theory, which is very poweful, and classical second-order arithmetic, which is much weaker but which is still able to formalize almost all undergraduate mathematics.

I believe, as do many working in foundations of math, the the naive informal mathematics found in practice is done in some sort of complicated (and informal) type theory. This makes type-theoretic foundations much more natural for many mathematicians -- many of the objections laid out to ZFC rest on the lack of typing in set theory. Simple type-theoretic foundations would arguably be a more natural formal system than ZFC for many practical purposes, just as Java is a more practical language than Scheme for many purposes.

On the other hand, the lack of typing in ZFC, like the lack of typing in Scheme, is useful for many theoretical purposes, and so it is good for mathematicians to be aware of untyped systems as well. For example, to make a model of ZFC we only need to define one undefined relation, $\in$. To make a model of type theory we have to lay out the system of types, then lay our a domain for each type, and also lay out all the maps between types and operations on each individual type. This is much more complicated. Analogously, it is a common exercise in computer science classes to ask students to write a scheme interpreter in Scheme, or even to write a Scheme compiler in assembly language, but it is not common to ask students to write a full Java interpreter in Java, much less in assembly language.

Carl Mummert
  • 84,178
  • If you would have used Common Lisp as an example, rather than its far stricter cousin Scheme, I would have linked here to Paul Graham's essay about how Common Lisp was used to give them the edge in the early days of web shopping, http://www.paulgraham.com/avg.html – Asaf Karagila Nov 09 '15 at 14:25
  • Thanks for the link. I am not sure that Common Lisp is as untyped as Scheme, and I wanted an example of a language that is untyped to the maximum extent possible. – Carl Mummert Nov 09 '15 at 14:27
  • You can always go with assembly. Or with my usual analogy on how we do mathematics in a typed setting, but then translate it to an untyped foundation. And that should be a bother just as much as the code written in C++ or Java gets interpreted as machine code which is entirely untyped. – Asaf Karagila Nov 09 '15 at 14:33
  • 1
    That's true - in assembly where you can jump to any address and where you can read and write data to any address (e.g. theoretical pure assembly), there is also no real separation between data and code or between different types of data. – Carl Mummert Nov 09 '15 at 14:38
  • @AsafKaragila Do you have any recommendations for books that will help me gain a "deep" understanding of programming languages, whatever that might mean? – littleO Nov 09 '15 at 14:38
  • 1
    Carl: Yes, and it's always fun to write code in real time to memory and execute it from unprotected memory pages. @littleO: I'm not sure that I understand your question. – Asaf Karagila Nov 09 '15 at 14:40
  • I think this answer is so awesome, thanks for taking the time to write it all up. Since posting this question, I have come back and read all these great answers and comments a bunch of times. I have decided to mark this as correct because it is the one that helped me understand the issues that motivated the OP the most, and I wanted it to be at the top. – Matt Calhoun Jan 28 '16 at 02:08
  • Thanks, @Matt Calhoun . I am glad the answer was helpful. – Carl Mummert Jan 28 '16 at 11:50
  • 4
    The purpose of a type system is to prevent you from saying nonsense “by construction”, but Java's and C++'s happen not to be terribly good at that. Both languages ultimately resort to performing dynamic checks in several places (e.g. downcasts), and C++ even allows unchecked unsafe operations (e.g., reinterpret_cast, projection from unions, etc.), with potentially disastrous consequences for the integrity of running processes. – isekaijin Jan 19 '17 at 00:45
27

ZF set theory, for the sake of specificity, allows you to ask questions that I (and probably many other category theorists) regard as meaningless: because the elements of sets are other sets, for any pair of sets $X$ and $Y$, it's meaningful in ZF to ask whether $X$ is an element of or a subset of $Y$. For example, you can ask whether $\mathbb{R}$ is an element or a subset of $\pi$. My main motivation for avoiding set theory is avoiding these types of meaningless questions, which I believe genuinely make mathematics harder to learn.

(The statements about sets I regard as meaningful are the ones you can make in the elementary theory of the category of sets; for example, you can ask whether two sets are isomorphic, what the limit or colimit of a diagram of sets is, etc.)

(For example, on math.SE I once saw the question "are the homsets in a category supposed to be disjoint or can they have nontrivial intersection?" and the correct answer is that this is a meaningless question, but depending on how deeply someone's drunk the ZF kool-aid, this can be an annoyingly hard explanation to swallow.)

The "objects" in a direct description of categories have the same ontological status as the "sets" in a direct description of models of set theory.

Qiaochu Yuan
  • 468,795
  • 1
    Thanks for this helpful answer, and for the link to ETCS, which I have not heard of before. Since I could not help looking it up, I will also mention that the question regarding "are the homsets in a category supposed to be disjoint or can they have nontrivial intersection?" can be found here. – Matt Calhoun Nov 08 '15 at 18:18
  • The question is not what is a good way to think about the objects of categories (and yes, abstracting from irrelevant details is helpful), but whether category theory can be formulated without set theory.You can reason about particular categories without using set theory (using axioms for categories, or topoi or whatever) but that leaves the questions of what categories exist, how you can form new categories from old etc etc. Some sort of theory with ontological commitments is required to either posit some sort of universe of categories directly (I don't know if there is one), or posit – Blunka Nov 08 '15 at 20:51
  • ... or posit things to serve as their objects and morphisms, as set theory does. ECTS for instance does not axiomatise category theory, in the sense that it tells you nothing about what categories there are etc etc. It is an axiomatisation of a particular category – Blunka Nov 08 '15 at 20:52
  • @user3832080 well, there is also ETCC, the elementary theory of the category of categories. – Kevin Carlson Nov 08 '15 at 21:31
  • but is anyone claiming that category theory could actually be practised with ETCC as the background theory? Glancing at the n-lab page, it's not obvious that one could give a definition of a 2-category say, or a monoidal category, or prove the adjoint functor theorem etc etc (unless ETCC actually allows sufficiently strong reasoning about the set surrogates it produces - in which case it is just set theory in sheep's clothing..) – Blunka Nov 08 '15 at 21:48
  • 22
    I am truly intrigued by the remark that the ability to formally write the somewhat meaningful statement "$\Bbb R\in\pi$" makes mathematics harder to learn. How? – Asaf Karagila Nov 08 '15 at 21:58
  • @user3832080 (also relevant to below) I cannot cite anyone claiming that, but I bet someone would. – Kevin Carlson Nov 08 '15 at 22:00
  • 6
    @AsafKaragila the basic argument seems obvious: making it possible to ask irrelevant questions could have the tendency to encourage spending time on irrelevant questions. – Kevin Carlson Nov 08 '15 at 23:09
  • 23
    @Kevin: That makes no sense. I can ask you infinitely many irrelevant questions in English. Does it make English any easier or harder to learn? One of the things to learn and understand about mathematics, in general, is what questions are relevant at all. If anything, working in ZF does a service that way. – Asaf Karagila Nov 09 '15 at 04:32
  • 3
    @Kevin: Or perhaps a different analogy, it is hard to use a fork and a knife because you can use then to cut the table cloth, or other non-food things at the table. And you could argue this is why we don't give little children sharp steak knives at the dinner table. But we also teach them what not to cut with sharp steak knives all the time by reminding them what and how they should behave at the dinner table, especially with something sharp in their hand. – Asaf Karagila Nov 09 '15 at 07:30
  • 1
    @AsafKaragila: [... cont.] One of the things that makes traditional set theory so hard to learn is the way gritty implementation details seem to get mixed into everything. Categorical approaches like ETCS focus on practical features, hiding the implementation details. Tom Leinster's article "Rethinking set theory" (http://arxiv.org/abs/1212.6543) is a wonderful exposition of this point of view. – Vectornaut Nov 09 '15 at 10:39
  • 6
    @AsafKaragila: Instead of the somewhat ridiculous question of whether $\mathbb{R}$ is an element of $\pi$, consider the more reasonable-sounding question of whether ${\pi, {\pi, 8}}$ is an element of $\mathbb{R} \times \mathbb{R}$. In traditional set theory, the technically correct answer is that it depends on how you implement the Cartesian product. The pedagogically correct answer, however, is that it doesn't matter: the important features of the Cartesian product don't depend on the implementation. [cont. ...] – Vectornaut Nov 09 '15 at 10:41
  • 6
    @Vectornaut: Again, this is like saying that the fact that I can go from my apartment to the groceries store by taking three reasonably isomorphic paths, makes it difficult to understand that I can at all go to the store. You are correct, pedagogically the answer is "it doesn't matter", which is what any good teacher should tell their students. It is unfortunate that a lot of people treat set theory as voodoo and don't try and understand it a bit better. Then there is no need to drink anyone's kool-aid. As for Tom's article, http://karagila.org/2013/on-leinsters-rethinking-set-theory/ – Asaf Karagila Nov 09 '15 at 10:43
  • @AsafKaragila: Your linked blog post summarizes what I'm trying to say much better than I ever could. As you say: "For most mathematicians there are sets of functions and so on. For some of them the functions are not even sets, they are as atomic as the real numbers are. For these people $\langle \pi, 0 \rangle \in \sin$ makes little sense, even though nowadays we all agree that functions can be clearly presented as ordered pairs." This is why I think it can be pedagogically useful to formulate category theory without set theory: it lets you work in a world built upon your chosen atomic thing. – Vectornaut Nov 09 '15 at 11:11
  • 1
    @Vectornaut: The difference between set theory and category theory, when looking at it from the "atomic lens" is that in set theory you have one atom. Sets. In category theory you have different categories, and you want to examine their interactions via functors and so on. This makes it far more difficult to formulate atomically. Which is why material set theory is great here (and I'm not necessarily talking about plain ZF), in that it allows you to use one atom to create everything else. But this discussion is growing too much, so I think it's time to stop. – Asaf Karagila Nov 09 '15 at 11:24
  • 3
    The difficulty with "pedagogically useful" is that it varies so much in the eye of each observer and the field. Some might say it is pedagogically useful that the intersection of the sets of natural numbers ${0,1}$ and ${0,2}$ is the set ${0}$ - much finite combinatorics is built on looking at systems of sets with particular intersection properties. But there are some other claimed "pedagogically useful" foundations in which no element can be in two distinct sets at the same time, which makes those combinatorial topics somewhat more complicated. @Vectornaut – Carl Mummert Nov 09 '15 at 13:48
  • 2
    @OTB: ETCS asserts the existence of lots of categories; in fact, I believe just using the theory of an elementary topos is already enough to define its metacategory of internal categories, and that requiring an NNO gives you its metacategory of simplicial objects, which is a starting point for $\infty$-categories. You may object to the fact I'm only talking about its internal things, but ZFC does no better; the only categories it proves exists are the ones internal to the universe it axiomatizes (along with whatever metacategories you construct, like the metacategory of small categories). –  Nov 09 '15 at 16:45
  • @Hurkyl: True. I had not realised that in a theory like ETCS one could reason about categories as objects of the theory (I assumed it was meant as just an axiomatisation of a particular category - like a more complicated version of the $T_{Cat}$ mentioned in Kevin's answer). – Blunka Nov 09 '15 at 17:08
  • 36
    -1 for the "Kool aid" comment, which is needlessly pejorative, and which wrongly suggests that (ZF) set theorists are dullards about foundational matters. Whereas the fact of the matter is that set theory has been an enormous success in foundations. We are proud to have clarified many fundamental and confounding matters, such as those surrounding the axiom of choice, the continuum hypothesis, the ubiquity of logical independence, large cardinals and their connections with descriptive set theory, such as the measurability of projective sets of reals, and many other matters. – JDH Nov 09 '15 at 21:09
  • 4
    @JDH: the comment doesn't refer to set theorists, it refers to students who have (from my point of view) been misled by set theory into asking questions that are a distraction from the business of doing mathematics. – Qiaochu Yuan Nov 09 '15 at 21:44
  • 16
    Well, in that case you appear to be suggesting that set theorists are dispensing drugs and misguiding the youth on foundational matters. (Whereas my view is that set theorists have much wisdom on the subject.) Frankly, I don't see that such confrontational name-calling has a place in a philosophical discussion. Why not stick to reasoned analysis and argument? I would encourage you to edit your post. – JDH Nov 09 '15 at 21:53
  • 12
    @Qiaochu: I don't know any set theorists who would mislead people like that. More likely that these students were misled by people who don't have any reasonable grasp on set theoretic foundations. – Asaf Karagila Nov 09 '15 at 21:59
  • @Carl Mummert: I've never seen a formalism for set theory in which no element can be in two distinct sets at the same time. Could you give an example? Categorical formalisms like ETCS are typically not examples, as far as I know. In ETCS, for instance, a common element of two subsets $A \hookrightarrow \mathbb{N}$ and $B \hookrightarrow \mathbb{N}$ is an element of $\mathbb{N}$ that factors through both $A$ and $B$—that is, a map $\mathbf{1} \to \mathbb{N}$ that can be written as compositions $\mathbf{1} \to A \hookrightarrow \mathbb{N}$ and $\mathbf{1} \to B \hookrightarrow \mathbb{N}$. – Vectornaut Nov 10 '15 at 02:05
  • 3
    Vectornaut, but isn't that technically an element of $\mathbb{N}$, and not of either $A$ or $B$? The unique element that an element is an element of is its codomain. An element of $A$ would be a morphism to $A$, rather than to $\mathbb{N}$. – JDH Nov 10 '15 at 02:20
  • 3
    @Vectornaut: ETCS is the example I had in mind. In ETCS, as JDH writes, an "element of a set $A$" is a morphism with codomain $A$, and no morphism has two codomains. Of course, that isn't a point anyone working with ETCS will dwell on very long -- there's a way to simulate intersections even if they don't literally exist, so the fact that no two sets have a literal intersection isn't important, and there's no need to focus on what is literally true. I am not picking on ETCS. All foundational systems have similar issues -- they all have gritty implementation details that are usually ignored. – Carl Mummert Nov 10 '15 at 12:06
  • @CarlMummert, have you written a paper or a blog post outlining your examples on this issue? It would be worthwhile. – JDH Nov 10 '15 at 12:55
  • 1
    @Carl Mummert, I'm a little confused by the statement that intersections don't literally exist in ETCS. The pullback of two subsets $A \hookrightarrow X$ and $B \hookrightarrow X$ is the largest subset of $X$ which is contained in both $A$ and $B$. If that's not an intersection, what is? – Vectornaut Nov 10 '15 at 21:25
  • @JDH, it's true that no element of $\mathbb{N}$ can be an element of another set, but that's not what we're talking about. We're talking about whether an element of $\mathbb{N}$ can belong to two different subsets of $\mathbb{N}$ (I should have switched our phrasing from be in to the less confusing belong to earlier). In ETCS, belongs to is synonymous with factors through. As far as I understand, this is more or less the same as how things are phrased in ZF: a common element of $A \subset X$ and $B \subset X$ is an element $x$ of $X$ such that $x \in A$ and $x \in B$. – Vectornaut Nov 10 '15 at 21:40
  • 3
    @Vectornaut: I only mean that, given an element $x$ of a set $A$, it cannot also be an element of any other set $B$. In ETCS, we can construct two subsets $A = \mathbb{R}$ and $B =[0,4]$ of $\mathbb{R}$. However, there is no $x$ for which I can assert both $x \in A$ and $x \in B$ as literal statements. So, to prevent $1$ from being an element of $\pi$, ETCS also prevents $\pi$ from being an element of both $\mathbb{R}$ and $[0,4]$. Whether this is a good or bad thing is an individual decision, and it can be worked around, but it is certainly an implementation quirk (or feature?) of ETCS. – Carl Mummert Nov 10 '15 at 22:03
  • @Carl Mummert, in ETCS, the element $\pi \colon \mathbf{1} \to \mathbb{R}$ does belong to the subset $[0, 4] \hookrightarrow \mathbb{R}$; see my earlier reply to JDH. As far as I know, the notion of belonging to a subset I use there works essentially the same as the $\in$ symbol in ZF. The main difference is that, in ZF, one talks about elements belonging to sets, but in ETCS it's most natural to talk about elements belonging to subsets. In your original example of studying finite subsets of $\mathbb{N}$, this causes no trouble. – Vectornaut Nov 10 '15 at 23:07
  • 2
    @Vectornaut: yes, that is a workaround: don't talk about $[0,4]$ as its own set, but rather as the "subset" [0,4] of $\mathbb{R}$. But that isn't the same as saying that the element $\pi$ is in both the set $\mathbb{R}$ and the set $[0,4]$. It doesn't really make sense for me to talk about the "element" "$\pi$" in ETCS anyway, without telling which set I want it to be an element of. So you are correcting what I say to match the workaround in ETCS - thanks! I am only saying it is impossible for to have an element $x\colon 1 \to A$ that is also an element $x\colon 1 \to B$ for $A \not = B$. – Carl Mummert Nov 10 '15 at 23:27
  • 1
    @Carl Mummert: I'm not sure why the definition of membership in ETCS deserves to be called a "workaround"; to me, it's just the definition of membership. I could say that Kuratowski's definition of an ordered pair is a workaround for the fact that ZF has no way to speak directly about functions, but that would be silly—ZF and ETCS+replacement are different axiomatizations of set theory, and they emphasize different things. – Vectornaut Nov 10 '15 at 23:45
  • 1
    @Vectornaut: this is getting too long for a StackExchange discussion thread, so perhaps we should continue by email. My address is in my user profile. I do agree that the ordered pair construction is exactly a workaround for the fact that there is no pairing operation in the language of ZFC, by the way. Every foundational system has its own workarounds based on its own implementation details. – Carl Mummert Nov 10 '15 at 23:56
  • @Carl Mummert, if that's the way you feel about Kuratowski's ordered pair construction, perhaps our differences are entirely semantic. In that case there's not much more to discuss; thank you for an edifying conversation. – Vectornaut Nov 11 '15 at 00:06
14

As Kevin has pointed out in the comments, one possible axiomatisation of "category theory" is the Elementary Theory of the Category of Categories. The best reference I've been able to find is a paper by McLarty (which isn't necessarily Lawvere's original formulation).

In it McClarty lays out a two sorted theory, with one sort of variables ranging over categories, and the other over functors. He shows how from 8 axioms (one a schema), this theory can formulate and prove many standard results of category theory - including properties one might not immediately expect, for instance properties of the category of groups $G$ in a given category $A$ (here $G$ and $A$ are both objects of the theory), and of a monad (triple) on a category.

Thus it is possible that along these lines, axioms could be given which sufficed for the usual reasoning used by category theorists.

However it does not sound to me like this has yet been conclusively done - there are a great many notions that category theorists use (glancing at the titles in the latest issue of one category theory journal, we see strong homotopy, model categories, weak braided monoidal categories, algebraic kan extensions etc), most of which are much more complicated than those McClarty deals with. Moreover, category theorists are always coming up with new notions - for instance, fairly recently (I think..), $\infty$-categories and the like. When formulating these notions, they are not working in ETCC: the constructions used to define a new kind of category and give examples of it are often (at base) in terms of sets - for instance an $\infty$-category has an infinite tower of morphism sets (morphisms, morphisms between morphisms etc). It might be that one day someone will come up with a definition of $\infty$-categories in terms of ETCC: but (to my knowledge) this has not been done, and there is no uniform way of translating the set theoretic characterisations that are actually given of "kinds" of categories (such as $\infty$-categories) into the language of ETCC.

If this is right, it does not appear that axioms have been put forward that suffice for the current practices of category theory (which includes the option of defining new kinds of categories). To this extent, category theory still currently needs set theory to be formulated.

EDIT: Although actually it looks like you can do analogues of lots of set theoretic reasoning in ETCS, so probably also in ETCC, so you might be able to translate the kind of set theoretic constructions I mentioned above into ETCC after all. Possibly the main difference between such categorical theories and set theory is then that which Qiaochu mentions: that the categorical theories do not allow the asking of certain irrelevant questions

Blunka
  • 965
11

One usually doesn't axiomatically define the notion of set1 — theories like ZFC axiomatically define a universe of sets, in a similar way that in linear algebra, we don't define vectors, we define vector spaces.

Also note, for example, that the "theory of a vector space" doesn't say that it has a set of vectors, just that there are elements of the theory, which we call vectors. Sets only enter the picture when we ask for set-theoretic models of the theory: that is, we ask for a set and some functions between sets that satisfy the vector space axioms when suitably interpreted in these terms.

The "theory of a category" is the same way; the elements of the theory come in two sorts: objects and arrows. (there are other versions of the theory that use just one sort, for those so inclined) The only time we ask for there to be a set of objects and a set of arrows, or for the objects and arrows to themselves be sets, is when we ask for a set-theoretic model of the theory of a category.

Unlike the case of vector spaces, we aren't always so inclined to limit our attention to just the set-theoretic models; e.g. one might ask to consider the category of all sets and functions between them; naturally, this cannot be a set-theoretic model, because there isn't a set of all sets!

Category theory also develops its own brand of formal logic, and is wont to consider other sorts of models of theories — things like "internal groups" or "internal categories" where we interpret the theory as talking about objects and arrows rather than sets and functions — so there is added incentive to talk about theories in a way that isn't heavily tied to semantics based in set theory.


That said, you can't get away from set theory entirely; first order logic is itself a form of set theory, and higher order logic even more so.

Furthermore, Set (or other categories resembling it) play an important role in category theory, so any approach to foundations that doesn't start with some form of set theory is going to have to develop its own brand set theory to take its place.


1: Actually, it's not a bad idea to do so, just that you do so with the trivial theory that has no axioms, no functions, no constants, no relations, no anything, so there isn't much to learn from it

  • 1
    Your final paragraph reminds me of Greenspun's tenth rule. Especially since Common Lisp was already brought up in this discussion. :-) – Asaf Karagila Nov 09 '15 at 20:16
10

You have asked three questions and so far answers have concentrated on the first one since it is the most polemical.

  1. Why does set theory have so many detractors, and what is gained by avoiding its use?
  2. What does Mac Lane mean when he says he can describe categories without using set theory?
  3. Is it really possible to avoid the use of set theory in the foundations of category theory simply by using the phrase "objects a,b,c ..." instead?

I'll answer the first question last.


For the second question, Mac Lane attempts to weasel his way out of discussing logic. He says a metacategory "consists of" objects, arrows, and operations between them. But what he really means is that a metacategory is a collection of objects, a collection of arrows, and graph-of-function like collections of ordered pairs between them. Formally, a collection, also called a class when working with set theory, is a formula (in first-order logic) with free variables. This is why later on Mac Lane can talk about "the metacategory of all sets".

In my opinion, what Mac Lane calls metacategories should simply be called categories. My reasons are

  • Mac Lane's metacategories are elements of the theory, first-order logic, nevermind that they are not objects (e.g. are not sets) that the formal theory is describing. A true metacategory by contrast would consist of all classes (formulas) and "class functions" between them, since such a thing would be part of the metatheoretical analysis of first-order logic.

  • Mac Lane is not using standard set theory (ZFC). Instead he is assuming that there is a set closed under all the operations of set theory, i.e. a universe (ZFC+U). He refers to elements of the universe as small sets and to all other sets as large sets. He then has a large category of small sets and a metacategory of all sets. But large sets (i.e. ZFC+U) are (for the basic category theory he's doing) merely a way to get at the classes and metacategories of ZFC without having to think about first-order logic.


The answer to the third question is no. This is because Mac Lane's metacategories depend on what you have axiomatized using first-order logic. Most of category theory really is the study of the metacategories that arise when you axiomatize set theory. In turn, this is because set theory is used as the foundation of modern mathematics and we would like category theory to be applicable to modern mathematics. The use of universes and large vs small sets is primarily a way to make the application of category theory to modern mathematics easier and more convenient.

A very thorough discussion of how category theory interacts with set theory is Mike Shulman's Set Theory for Category Theory, though it does presuppose some familiarity with category theory.

However, there are other mathematical theories of independent interest, such as Peano arithmetic, which certainly do not require you to axiomatize set theory to do mathematics with. In particular, the metacategories of Peano arithmetic are related to computability theory; sadly I don't know any good references for this -- most everyone does tend to stick to modern mathematics and hence does everything with some set theory in mind.


The answer to the first question is that set theory doesn't actually have many detractors. Rather its detractors are quite vocal but many of the usually given objections are frankly irrelevant.

Currently, my primary objection to set theory is that it's purpose from a purely logical perspective is to mimic higher-order logic inside first-order logic. But why not just directly use higher-order logic (even better: dependent type theory) instead of trying to mimic it in first-order logic? Furthermore, logical systems naturally have the structure of fibred categories, so from a more modern viewpoint set theory ought to be presented as a fibred category satisfying appropriate conditions (this is what a topos is; a mind-blowing reference for some of this stuff is Jacobs' Categorical Logic and Type Theory).

My secondary objection is that set theory and first-order logic are actively harmful when it comes to learning type theory or more advanced algebraic geometry. One has to actively unlearn some (tacitly) internalized set-theoretic expectations in order to grok those subjects (types are not sets, the "points" of schemes seem weird).

7

It's a somewhat subtle question. As you say, MacLane's definition looks a lot like simply removing the word "set" from the set-based one, which seems fishy. As was also mentioned, a more formal way to make MacLane's claim would be to say something like

A category is a model of the theory $T_{cat}$ whose language has two types $O,M$ and function symbols $s,t:M\to O,i:O\to M$, satisfying the axioms...

Now, this won't really work, because it can't describe composition, for which you need some fancier logic (some notion of "pullback" of types.) But it hopefully clarifies what MacLane is claiming nonetheless.

Leaving the need for composition swept under the rug, two questions arise. Can we study $T_{cat}$ directly without postulating any theory of sets? This would be, essentially, the proof theory of categories, formally viewed as trying to prove theorems involving finite strings of $s,t,i,\circ$ joined via the standard logical quantifiers. Noting the occurrence of the word "finite" in the previous sentence, I think you have to have some ideas about sets to justify proof theory, in particular, some notion of finitude. But in doing proof theory, in this case, syntactic category theory, the question of whether a string is finite never comes up, so that from this angle a category theorist would in practice never need to think about sets explicitly. And even with regard to justification, where we want to really explain what we're doing in a precise way, it doesn't seem you need nearly the full strength of "standard" set theory.

The second question that arises, whose motivation should be clear, is whether there are any categories. I may well be missing some subtlety in the literature on this, but it seems to me that for this you have to either simply accept as intuitive that $\cdot \to \cdot$ and other such inscriptions give examples of models of $T_{cat}$ or else resort to some sort of set theory to define exactly what you mean by that diagram. For me and many others, claiming that the category $\cdot\to\cdot$ exists is no more controversial than claiming that $\{\}$ exists: we don't feel the need to reduce the intuition that there are things and ways to relate things into a more basic intuition that there are things. Some people have claimed that categories are just obviously too complicated to postulate all at once, however, and for them there is set theory. Anyway, all of this is rather solidly at the level of justification, of explaining to a non-category theorist or even to a non-mathematician what exactly are the objects you work with. At the level of practice, none of it is needed at all, although most people find set theory useful for working with categories constructed out of infinite sets.

As an aside, questions about disjointness of homsets should be easily dispatched by the observation that $T_{cat}$ makes no provision for intersections, so that such questions are inherently about the contingent aspects of the model, rather than the theory-so aren't any more meaningful than asking whether every real number has an element which eventually has denominator not divisible by 7.

Kevin Carlson
  • 54,515
  • 4
    But $T_{Cat}$ doesn't actually capture the vast majority of the reasoning category theorists use - for instance, it does not appear to allow one to reason about functors (within the theory). If one has to move to the metalevel to even talk about functors, how are more complicated category-theoretic notions going to fare? – Blunka Nov 08 '15 at 21:54
  • 1
    @user3832080 Guilty. "Functors are just morphisms between models," but then you need a context for your models, so, yes, that would be trouble. You could say functor is a model of the theory of two categories with a function symbol between the two morphism and object types, though.

    But, right, in the end people who try to really do this end up somewhere like ETCC, I think.

    – Kevin Carlson Nov 08 '15 at 21:58
  • 2
    Yes - my point is that you're not formulating category theory within $T_{Cat}$, you're studying models of $T_{Cat}$. Saying that category theory can be formulated within $T_{Cat}$ is like saying logic can be formulated within first order logic (when of course when doing logic, one works within some more substantial metatheory - ZFC, PA, the choice is often irrelevant) – Blunka Nov 08 '15 at 22:02
  • 1
    @user3832080 Did I claim that category theory could be formulated within $T_{Cat}$? – Kevin Carlson Nov 08 '15 at 22:04
  • the question asks whether category theory can be formulated without set theory, when you put forward an axiom system, it sounds like you're suggesting category theory could be formulated in it – Blunka Nov 08 '15 at 22:14
  • 1
    of course category theory can roughly be seen as the study of models of $T_{Cat}$, but that doesn't help us see how to formulate category theory: any more than seeing that first order logic is the study of models in general tells us how to formulate first order logic (what to take as the background theory etc - and some sort of background theory is needed - if we're going to prove results at least) – Blunka Nov 08 '15 at 22:15
  • 5
    First-order logic is (much) more than enough to axiomatise $T_\mathrm{cat}$. One defines composition using a ternary relation symbol. – Zhen Lin Nov 08 '15 at 23:04
  • @ZhenLin ah right, thanks. – Kevin Carlson Nov 08 '15 at 23:07