There are a lot of theorems in basic homological algebra, such as the five lemma or the snake lemma, that seem like they'd be more easily proven by computer than by hand. This led me to consider the following question: **is the theory of categories decidable?**


More specifically, I was wondering whether or not statements about *abelian* categories can be determined true or false in finite time. Also, if they can be determined to be false, is it possible to explicitly describe a counterexample? If it is known to be decidable, is anything known about the complexity? (Other decidable theories often have multiply-exponential time complexities.) If it is known to be undecidable, say by embedding the halting problem, then can I change my assumptions a bit and make it decidable? (For example, maybe I shouldn't be looking at abelian categories after all.)


Thanks in advance.


**Edit**: It appears a clarification is needed. My goal was to consider the minimal theory that could *state* things like the five lemma, but not necessarily prove them. For example, I want to say:



> 
> If in an abelian category, you have a bunch of maps $0\to A \to B \to C\to 0$ and $0\to A' \to B' \to C'\to 0$ which make up two short exact sequences and some more maps $a:A\to A'$, $b:B\to B'$, $c:C\to C'$ which commute with the previous maps, and $a$ and $c$ are isomorphisms, then $b$ is an isomorphism, too.
> 
> 
> 


Sentences of this form would be inputs to a program, which decides if this statement is in fact true in ZFC (or your other favorite axiomatization of category theory). The point here is that I am restricting the *sentences* one can input into the program, but keeping ZFC or whatnot as my framework.


I hoped (perhaps naively) that if I restricted the class of sentences, it might be decidable whether or not these statements were true. For example, I imagined that every such theorem is either proven by diagram chasing, or it is possible to find a concrete example of maps among, say, R-modules that contradict the result.



Is the theory of categories decidable?
Thanks for clarifying your question. The formulation that
you and Dorais give seems perfectly reasonable. You have a
first order language for category theory, where you can
quantify over objects and morphisms, you can compose
morphisms appropriately and you can express that a given
object is the initial or terminal object of a given
morphism. In this language, one can describe various finite
diagrams, express whether or not they are commutative, and
so on. In particular, one can express that composition is
associative, etc. and describe what it means to be a
category in this way.


The question now becomes: is this theory decidable? In
other words, is there a computable procedure to determine,
given an assertion in this language, whether it holds in
all categories?


The answer is **No**.


One way to see this is to show even more: one cannot even
decide whether a given statement is true is true in all
categories having only one object. The reason is that group
theory is not a decidable theory. There is no computable
procedure to determine whether a given statement in the
first order language of group theory is true in all groups.
But the one-point categories naturally include all the
groups (and we can define in a single statement in the
category-theoretic language exactly what it takes for the
collection of morphisms on that object to be a group).
Thus, if we could decide category theory, then we could
decide the translations of the group theory questions into
category theory, and we would be able to decide group
theory, which we can't. Contradiction.


The fundamental obstacle to decidability here, as I
mentioned in my previous answer (see edit history), it the
ability to encode arithmetic. The notion of a [strongly
undecidable
structure](https://projecteuclid.org/euclid.lnl/1235423985)
is key for proving various theories are undecidable. A
strongly undecidable theory is a finitely axiomatizable
theory, such that any theory consistent with it is
undecidable. Robinson proved that there is a strongly
undecidable theory of arithmetic, known as Robinson's Q. A
*strongly undecidable structure* is a structure modeling a
strongly undecidable theory. These structures are amazing,
for any theory true in a strongly undecidable structure is
undecidable. For example, the standard model of arithmetic,
which satisfies Q, is strongly undecidable. If A is
strongly undecidable and interpreted in B, then it follows
that B is also strongly undecidable. Thus, we can prove
that graph theory is undecidable, that ring theory is
undecidable and that group theory is undecidable, merely by
finding a graph, a ring or a group in which the natural
numbers is interpreted. Tarski found a strongly undecidable
group, namely, the group G of permutations of the integers
Z. It is strongly undecidable because the natural numbers
can be interpreted in this group. Basically, the number n
is represented by translation-by-n. One can identify the
collection of translations, as exactly those that commute
with s = translation-by-1. Then, one can define addition as
composition (i.e. addition of exponents) and the divides
relation is definable by: i divides j iff anything that
commutes with si also commutes with
sj. And so on.


I claim similarly that there is a strongly undecidable
category. This is almost immediate, since every group can
be viewed as the morphisms of a one-object category, and
the group is interpreted as the morphisms of this category.
Thus, the category interprets the strongly undecidable
group, and so the category is also strongly undecidable. In
particular, any theory true in the category is also
undecidable. So category theory itself is undecidable.


