Categorial Logic – Paracompleteness versus Paraconsistency. Thought of the Day 46.2


The fact that logic is content-dependent opens a new horizon concerning the relationship of logic to ontology (or objectology). Although the classical concepts of a priori and a posteriori propositions (or judgments) has lately become rather blurred, there is an undeniable fact: it is certain that the far origin of mathematics is based on empirical practical knowledge, but nobody can claim that higher mathematics is empirical.

Thanks to category theory, it is an established fact that some sort of very important logical systems: the classical and the intuitionistic (with all its axiomatically enriched subsystems), can be interpreted through topoi. And these possibility permits to consider topoi, be it in a Noneist or in a Platonist way, as universes, that is, as ontologies or as objectologies. Now, the association of a topos with its correspondent ontology (or objectology) is quite different from the association of theoretical terms with empirical concepts. Within the frame of a physical theory, if a new fact is discovered in the laboratory, it must be explained through logical deduction (with the due initial conditions and some other details). If a logical conclusion is inferred from the fundamental hypotheses, it must be corroborated through empirical observation. And if the corroboration fails, the theory must be readjusted or even rejected.

In the case of categorial logic, the situation has some similarity with the former case; but we must be careful not to be influenced by apparent coincidences. If we add, as an axiom, the tertium non datur to the formalized intuitionistic logic we obtain classical logic. That is, we can formally pass from the one to the other, just by adding or suppressing the tertium. This fact could induce us to think that, just as in physics, if a logical theory, let’s say, intuitionistic logic, cannot include a true proposition, then its axioms must be readjusted, to make it possible to include it among its theorems. But there is a radical difference: in the semantics of intuitionistic logic, and of any logic, the point of departure is not a set of hypothetical propositions that must be corroborated through experiment; it is a set of propositions that are true under some interpretation. This set can be axiomatic or it can consist in rules of inference, but the theorems of the system are not submitted to verification. The derived propositions are just true, and nothing more. The logician surely tries to find new true propositions but, when they are found (through some effective method, that can be intuitive, as it is in Gödel’s theorem) there are only three possible cases: they can be formally derivable, they can be formally underivable, they can be formally neither derivable nor underivable, that is, undecidable. But undecidability does not induce the logician to readjust or to reject the theory. Nobody tries to add axioms or to diminish them. In physics, when we are handling a theory T, and a new describable phenomenon is found that cannot be deduced from the axioms (plus initial or some other conditions), T must be readjusted or even rejected. A classical logician will never think of changing the axioms or rules of inference of classical logic because it is undecidable. And an intuitionist logician would not care at all to add the tertium to the axioms of Heyting’s system because it cannot be derived within it.

The foregoing considerations sufficiently show that in logic and mathematics there is something that, with full right, can be called “a priori“. And although, as we have said, we must acknowledge that the concepts of a priori and a posteriori are not clear-cut, in some cases, we can rightly speak of synthetical a priori knowledge. For instance, the Gödel’s proposition that affirms its own underivabilty is synthetical and a priori. But there are other propositions, for instance, mathematical induction, that can also be considered as synthetical and a priori. And a great deal of mathematical definitions, that are not abbreviations, are synthetical. For instance, the definition of a monoid action is synthetical (and, of course, a priori) because the concept of a monoid does not have among its characterizing traits the concept of an action, and vice versa.

Categorial logic is, the deepest knowledge of logic that has ever been achieved. But its scope does not encompass the whole field of logic. There are other kinds of logic that are also important and, if we intend to know, as much as possible, what logic is and how it is related to mathematics and ontology (or objectology), we must pay attention to them. From a mathematical and a philosophical point of view, the most important logical non-paracomplete systems are the paraconsistent ones. These systems are something like a dual to paracomplete logics. They are employed in inconsistent theories without producing triviality (in this sense also relevant logics are paraconsistent). In intuitionist logic there are interpretations that, with respect to some topoi, include two false contradictory propositions; whereas in paraconsistent systems we can find interpretations in which there are two contradictory true propositions.

There is, though, a difference between paracompleteness and paraconsistency. Insofar as mathematics is concerned, paracomplete systems had to be coined to cope with very deep problems. The paraconsistent ones, on the other hand, although they have been applied with success to mathematical theories, were conceived for purely philosophical and, in some cases, even for political and ideological motivations. The common point of them all was the need to construe a logical system able to cope with contradictions. That means: to have at one’s disposal a deductive method which offered the possibility of deducing consistent conclusions from inconsistent premisses. Of course, the inconsistency of the premisses had to comply with some (although very wide) conditions to avoid triviality. But these conditions made it possible to cope with paradoxes or antinomies with precision and mathematical sense.

But, philosophically, paraconsistent logic has another very important property: it is used in a spontaneous way to formalize the naive set theory, that is, the kind of theory that pre-Zermelian mathematicians had always employed. And it is, no doubt, important to try to develop mathematics within the frame of naive, spontaneous, mathematical thought, without falling into the artificiality of modern set theory. The formalization of the naive way of mathematical thinking, although every formalization is unavoidably artificial, has opened the possibility of coping with dialectical thought.

Philosophical Isomorphism of Category Theory. Note Quote.

One philosophical reason for categorification is that it refines our concept of ‘sameness’ by allowing us to distinguish between isomorphism and equality. In a set, two elements are either the same or different. In a category, two objects can be ‘the same in a way’ while still being different. In other words, they can be isomorphic but not equal. Even more importantly, two objects can be the same in more than one way, since there can be different isomorphisms between them. This gives rise to the notion of the ‘symmetry group’ of an object: its group of automorphisms.

Consider, for example, the fundamental groupoid Π1(X) of a topological space X: the category with points of X as objects and homotopy classes of paths with fixed endpoints as morphisms. This category captures all the homotopy-theoretic information about X in dimensions ≤ 1. The group of automorphisms of an object x in this category is just the fundamental group π1(X,x). If we decategorify the fundamental groupoid of X, we forget how points in X are connected by paths, remembering only whether they are, and we obtain the set of components of X. This captures only the homotopy 0-type of X.

This example shows how decategorification eliminates ‘higher-dimensional information’ about a situation. Categorification is an attempt to recover this information. This example also suggests that we can keep track of the homotopy 2-type of X if we categorify further and distinguish between paths that are equal and paths that are merely isomorphic (i.e., homotopic). For this we should work with a ‘2-category’ having points of X as objects, paths as morphisms, and certain equivalence classes of homotopies between paths as 2-morphisms. In a marvelous self-referential twist, the definition of ‘2-category’ is simply the categorification of the definition of ‘category’. Like a category, a 2-category has a class of objects, but now for any pair x,y of objects there is no longer a set hom(x,y); instead, there is a category hom(x,y). Objects of hom(x,y) are called morphisms of C, and morphisms between them are called 2-morphisms of C. Composition is no longer a function, but rather a functor:

◦: hom(x, y) × hom(y, z) → hom(x, z)

For any object x there is an identity 1x ∈ hom(x,x). And now we have a choice. On the one hand, we can impose associativity and the left and right unit laws strictly, as equational laws. If we do this, we obtain the definition of ‘strict 2-category’. On the other hand, we can impose them only up to natural isomorphism, with these natural isomorphisms satisfying the coherence. This is clearly more compatible with the spirit of categorification. If we do this, we obtain the definition of ‘weak 2-category’. (Strict 2-categories are traditionally known as ‘2-categories’, while weak 2-categories are known as ‘bicategories’.)

The classic example of a 2-category is Cat, which has categories as objects, functors as morphisms, and natural transformations as 2-morphisms. The presence of 2-morphisms gives Cat much of its distinctive flavor, which we would miss if we treated it as a mere category. Indeed, Mac Lane has said that categories were originally invented, not to study functors, but to study natural transformations! A good example of two functors that are not equal, but only naturally isomorphic, are the identity functor and the ‘double dual’ functor on the category of finite-dimensional vector spaces. Given a topological space X, we can form a 2-category Π>sub>2(X) called the ‘fundamental 2-groupoid’ of X. The objects of this 2-category are the points of X. Given x, y ∈ X, the morphisms from x to y are the paths f: [0,1] → X starting at x and ending at y. Finally, given f, g ∈ hom(x, y), the 2-morphisms from f to g are the homotopy classes of paths in hom(x, y) starting at f and ending at g. Since the associative law for composition of paths holds only up to homotopy, this 2-category is a weak 2-category. If we decategorify the fundamental 2-groupoid of X, we obtain its fundamental groupoid.

From 2-categories it is a short step to dreaming of n-categories and even ω-categories — but it is not so easy to make these dreams into smoothly functioning mathematical tools. Roughly speaking, an n-category should be some sort of algebraic structure having objects, 1-morphisms between objects, 2-morphisms between 1-morphisms, and so on up to n-morphisms. There should be various ways of composing j-morphisms for 1 ≤ j ≤ n, and these should satisfy various laws. As with 2-categories, we can try to impose these laws either strictly or weakly.


Other approaches to n-categories use j-morphisms with other shapes, such as simplices, or opetopes. We believe that there is basically a single notion of weak n-category lurking behind these different approaches. If this is true, they will eventually be shown to be equivalent, and choosing among them will be merely a matter of convenience. However, the precise meaning of ‘equivalence’ here is itself rather subtle and n-categorical in flavor.

The first challenge to any theory of n-categories is to give an adequate treatment of coherence laws. Composition in an n-category should satisfy equational laws only at the top level, between n-morphisms. Any law concerning j-morphisms for j < n should hold only ‘up to equivalence’. Here a n-morphism is defined to be an ‘equivalence’ if it is invertible, while for j < n a j-morphism is recursively defined to be an equivalence if it is invertible up to equivalence. Equivalence is generally the correct substitute for the notion of equality in n-categorical mathematics. When laws are formulated as equivalences, these equivalences should in turn satisfy coherence laws of their own, but again only up to equivalence, and so on. This becomes ever more complicated and unmanageable with increasing n unless one takes a systematic approach to coherence laws.

The second challenge to any theory of n-categories is to handle certain key examples. First, for any n, there should be an (n + 1)-category nCat, whose objects are (small) n-categories, whose morphisms are suitably weakened functors between these, whose 2-morphisms are suitably weakened natural transformations, and so on. Here by ‘suitably weakened’ we refer to the fact that all laws should hold only up to equivalence. Second, for any topological space X, there should be an n-category Πn(X) whose objects are points of X, whose morphisms are paths, whose 2-morphisms are paths of paths, and so on, where we take homotopy classes only at the top level. Πn(X) should be an ‘n-groupoid’, meaning that all its j-morphisms are equivalences for 0 ≤ j ≤ n. We call Πn(X) the ‘fundamental n-groupoid of X’. Conversely, any n-groupoid should determine a topological space, its ‘geometric realization’.

In fact, these constructions should render the study of n-groupoids equivalent to that of homotopy n-types. A bit of the richness inherent in the concept of n-category becomes apparent when we make the following observation: an (n + 1)-category with only one object can be regarded as special sort of n-category. Suppose that C is an (n+1)-category with one object x. Then we can form the n-category C ̃ by re-indexing: the objects of C ̃ are the morphisms of C, the morphisms of C ̃ are the 2-morphisms of C, and so on. The n-categories we obtain this way have extra structure. In particular, since the objects of C ̃ are really morphisms in C from x to itself, we can ‘multiply’ (that is, compose) them.

The simplest example is this: if C is a category with a single object x, C ̃ is the set of endomorphisms of x. This set is actually a monoid. Conversely, any monoid can be regarded as the monoid of endomorphisms of x for some category with one object x. We summarize this situation by saying that ‘a one-object category is a monoid’. Similarly, a one-object 2-category is a monoidal category. It is natural to expect this pattern to continue in all higher dimensions; in fact, it is probably easiest to cheat and define a monoidal n-category to be an (n + 1)-category with one object.

Things get even more interesting when we iterate this process. Given an (n + k)-category C with only one object, one morphism, and so on up to one (k − 1)-morphism, we can form an n-category whose j-morphisms are the (j + k)-morphisms of C. In doing so we obtain a particular sort of n-category with extra structure and properties, which we call a ‘k-tuply monoidal’ n-category. Table below shows what we expect these to be like for low values of n and k. For example, the Eckmann-Hilton argument shows that a 2-category with one object and one morphism is a commutative monoid. Categorifying this argument, one can show that a 3-category with one object and one morphism is a braided monoidal category. Similarly, we expect that a 4-category with one object, one morphism and one 2-morphism is a symmetric monoidal category, though this has not been worked out in full detail, because of our poor understanding of 4-categories. The fact that both braided and symmetric monoidal categories appear in this table seems to explain why both are natural concepts.


In any reasonable approach to n-categories there should be an n-category nCatk whose objects are k-tuply monoidal weak n-categories. One should also be able to treat nCatk as a full sub-(n + k)-category of (n + k)Cat, though even for low n, k this is perhaps not as well known as it should be. Consider for example n = 0, k = 1. The objects of 0Cat1 are one-object categories, or monoids. The morphisms of 0Cat1 are functors between one-object categories, or monoid homomorphisms. But 0Cat1 also has 2-morphisms corresponding to natural transformations.

• Decategorification: (n, k) → (n − 1, k). Let C be a k-tuply monoidal n-category C. Then there should be a k-tuply monoidal (n − 1)-category DecatC whose j-morphisms are the same as those of C for j < n − 1, but whose (n − 1)-morphisms are isomorphism classes of (n − 1)-morphisms of C.

• Discrete categorification: (n, k) → (n + 1, k). There should be a ‘discrete’ k-tuply monoidal (n + 1)-category DiscC having the j-morphisms of C as its j-morphisms for j ≤ n, and only identity (n + 1)-morphisms. The decategorification of DiscC should be C.

• Delooping: (n, k) → (n + 1, k − 1). There should be a (k − 1)-tuply monoidal (n + 1)-category BC with one object obtained by reindexing, the j-morphisms of BC being the (j + 1)-morphisms of C. We use the notation ‘B’ and call BC the ‘delooping’ of C because of its relation to the classifying space construction in topology.

• Looping: (n, k) → (n − 1, k + 1). Given objects x, y in an n-category, there should be an (n − 1)-category hom(x, y). If x = y this should be a monoidal (n−1)-category, and we denote it as end(x). For k > 0, if 1 denotes the unit object of the k-tuply monoidal n-category C, end(1) should be a (k + 1)-tuply monoidal (n − 1)-category. We call this process ‘looping’, and denote the result as ΩC, because of its relation to loop space construction in topology. For k > 0, looping should extend to an (n + k)-functor Ω: nCatk → (n − 1)Catk+1. The case k = 0 is a bit different: we should be able to loop a ‘pointed’ n-category, one having a distinguished object x, by letting ΩC = end(x). In either case, the j-morphisms of ΩC correspond to certain (j − 1)-morphisms of C.

• Forgetting monoidal structure: (n, k) → (n, k−1). By forgetting the kth level of monoidal structure, we should be able to think of C as a (k−1)-tuply monoidal n-category FC. This should extend to an n-functor F: nCatk → nCatk−1.

• Stabilization: (n, k) → (n, k + 1). Though adjoint n-functors are still poorly understood, there should be a left adjoint to forgetting monoidal structure, which is called ‘stabilization’ and denoted by S: nCatk → nCatk+1.

• Forming the generalized center: (n,k) → (n,k+1). Thinking of C as an object of the (n+k)-category nCatk, there should be a (k+1)-tuply monoidal n-category ZC, the ‘generalized center’ of C, given by Ωk(end(C)). In other words, ZC is the largest sub-(n + k + 1)-category of (n + k)Cat having C as its only object, 1C as its only morphism, 11C as its only 2-morphism, and so on up to dimension k. This construction gets its name from the case n = 0, k = 1, where ZC is the usual center of the monoid C. Categorifying leads to the case n = 1, k = 1, which gives a very important construction of braided monoidal categories from monoidal categories. In particular, when C is the monoidal category of representations of a Hopf algebra H, ZC is the braided monoidal category of representations of the quantum double D(H).

Eliminating Implicit Reference to Elements: Via Einsteinian Algebra. (3)


Previously, we highlighted the inadequacy of implicitly quantifying over elements and it is to circumvent, or circumnavigate this point that Jonathan Bain introduced his specific argument, to which we now turn here.

G3 above yields a special translation scheme that allows one to avoid making explicit reference to elements. The key insight driving the specific argument is that, if one looks at a narrower range of cases, a rather different sort of translation scheme is possible: indeed one that not only avoids making explicit reference to elements, but also allows one to generalize the C-objects in such a way that these new C-objects can no longer be considered to have elements (or as many elements) in the sense of the original objects. According to Bain, this shows that the

‘…correlates [of elements of structured sets] are not essential to the articulation of the relevant structure.’

Implicit reference to elements is thereby claimed to be eliminated. Bain argues by appealing to a particular instance of how this translation is supposed to work, viz. the example of Einstein algebras. 

The starting point for Bain’s specific argument is a category-theoretic version of the ‘semantic view of theories’ on which a scientific theory is identified with its category of models—indeed this will be the setup assumed in the following argument. Note two points. First, we are not using ‘model’ here in the strict sense of model theory, but rather to mean a mathematical structure that represents a physical world that is possible according to the theory. Second, this proposal is not to be confused with Lawvere’s category-theoretic formulation of algebraic theories (Lawvere). In the latter, models are functors between categories, whereas in the former, the models are just objects of some category (not necessarily a functor category) such as Top. Indeed, Lawvere’s proposal is much more closely related to—though not the same as—the Topological Quantum Field Theories. 

Here is our abstract reconstruction of Bain’s specific argument. Let there be two theories T1 and T2, each represented by a category of models respectively. T1 is the original physical theory that makes reference to O-objects.

S1: T1 can be translated into T2. In particular, each T1-model can be translated into a T2 model and vice versa.

S2: T2 is contained in a strictly larger theory (i.e. a larger category of models) T2∗. In particular, T2∗ is constructed by generalizing T2-models to yield models of T2∗, typically by dropping an algebraic condition from the T2-models. We will use T2′ to denote the complement of T2 in T2∗.

S3: T2′ cannot be translated back into T1 and so its models do not contain T1 -objects.

S4: T2′ is relevant for modeling some physical scenarios.

When taken together, S1-S4 are supposed to show that:

CS: The T1-object correlates in T2 do not play an essential role in articulating the physical structure (smooth structure, in Bain’s specific case) of T2∗ .

Let us defer for the moment the question of exactly how the idea of ‘translation’ is supposed to work here. The key idea behind S1–S4 is that one can generalize T2 to obtain a new – more general – theory T2∗, some of whose models do not contain T1-objects (i.e. O-objects in T1).

In Bain’s example, T1 is the category of geometric models of general relativity (GTR), and T2 is the category of Einstein algebra (EA) models of GTR (Einstein algebras were first introduced as models of GR in Geroch 1972). Bain is working with the idea that in geometric models of GTR, the relata, or O-objects, of GTR are space-time points of the manifold.

We now discuss the premises of the argument and show that S3 rests on a technical misunderstanding; however, we will rehabilitate S3 before proceeding to argue that the argument fails. First, S1: Bain notes that these space-time points are in 1-1 correspon- dence with ‘maximal ideals’ (an algebraic feature) in the corresponding EA model. We are thus provided with a translation scheme: points of space in a geometric description of GTR are translated into maximal ideals in an algebraic description of GTR. So the idea is that EA models capture the physical content of GR without making explicit reference to points. Now the version of S2 that Bain uses is one in which T2, the category of EAs, gets generalized to T2∗, the category of sheaves of EAs over a manifold, which has a generalized notion of ‘smooth structure’. The former is a proper subcategory of the latter, because a sheaf of EAs over a point is just equivalent to an EA.

Bain then tries to obtain S3 by saying that a sheaf of EAs which is inequivalent to an EA does not necessarily have global elements (i.e. sections of a sheaf) in the sense previously defined, and so does not have points. Unfortunately, he confuses the notion of a local section of a sheaf of EAs (which assigns an element of an EA to an open subset of a manifold) with the notion of a maximal ideal of an EA (i.e. the algebraic correlate of a spacetime point). And since the two are entirely different, a lack of global sections does not imply a lack of spacetime points (i.e. O-objects). Therefore S3 needs to be repaired.

Nonetheless, we can easily rehabilitate S3 is the following manner. The key idea is that while T1 (a geometric model of GTR) and T2 (the equivalent EA model) both make reference to T1-objects (explicitly and implicitly, respectively), some sheaves of EAs do not refer to T1-objects because they have no formulation in terms of geometric models of GTR. In other words, the generalized smooth structure of T2′ cannot be described in terms of the structured sets used to define ordinary smooth structure in the case of T1 and T2.

Finally, as regards S4, various authors have taken the utility of T2′ to be e.g. the in- clusion of singularities in space-time, and as a step towards formulating quantum gravity (Geroch).

We now turn to considering the inference to CS. It is not entirely clear what Bain means by ‘[the relata] do not play an essential role’ – nor does he expand on this phrase – but the most straightforward reading is that T1-objects are eliminated simpliciter from T2∗.

One might compare this situation to the way that the collection of all groups (analogous to T2) is contained in the collection of all monoids (analogous to T2∗): it might be claimed that inverses are eliminated from the collection of all monoids. One could of course speak in this way, but what this would mean is that some monoids (in particular, groups) have inverses, and some do not – a ‘monoid’ is just a general term that covers both cases. Similarly, we can see that CS does not follow from S1–S3, since T2∗ contains some models that (implicitly) quantify over T1-objects, viz. the models of T2, and some that do not, viz. the models of T2′.

We have seen that the specific argument will not work if one is concerned with eliminating reference to T1-objects from the new and more general theory T2∗. However, what if one is concerned not with eliminating reference, but rather with downgrading the role that T1-objects play in T2∗, e.g. by claiming that the models of T2′ have a conceptual or metaphysical priority? And what would such a ‘downgrading’ even amount to?

Marching Along Categories, Groups and Rings. Part 2

A category C consists of the following data:

A collection Obj(C) of objects. We will write “x ∈ C” to mean that “x ∈ Obj(C)

For each ordered pair x, y ∈ C there is a collection HomC (x, y) of arrows. We will write α∶x→y to mean that α ∈ HomC(x,y). Each collection HomC(x,x) has a special element called the identity arrow idx ∶ x → x. We let Arr(C) denote the collection of all arrows in C.

For each ordered triple of objects x, y, z ∈ C there is a function

○ ∶ HomC (x, y) × HomC(y, z) → HomC (x, z), which is called composition of  arrows. If  α ∶ x → y and β ∶ y → z then we denote the composite arrow by β ○ α ∶ x → z.

If each collection of arrows HomC(x,y) is a set then we say that the category C is locally small. If in addition the collection Obj(C) is a set then we say that C is small.

Identitiy: For each arrow α ∶ x → y the following diagram commutes:


Associative: For all arrows α ∶ x → y, β ∶ y → z, γ ∶ z → w, the following diagram commutes:


We say that C′ ⊆ C is a subcategory if Obj(C′) ⊆ Obj(C) and if ∀ x,y ∈ Obj(C′) we have HomC′(x,y) ⊆ HomC(x,y). We say that the subcategory is full if each inclusion of hom sets is an equality.

Let C be a category. A diagram D ⊆ C is a collection of objects in C with some arrows between them. Repetition of objects and arrows is allowed. OR. Let I be any small category, which we think of as an “index category”. Then any functor D ∶ I → C is called a diagram of shape I in C. In either case, we say that the diagram D commutes if for all pairs of objects x,y in D, any two directed paths in D from x to y yield the same arrow under composition.

Identity arrows generalize the reflexive property of posets, and composition of arrows generalizes the transitive property of posets. But whatever happened to the antisymmetric property? Well, it’s the same issue we had before: we should really define equivalence of objects in terms of antisymmetry.

Isomorphism: Let C be a category. We say that two objects x,y ∈ C are isomorphic in C if there exist arrows α ∶ x → y and β ∶ y → x such that the following diagram commutes:


In this case we write x ≅C y, or just x ≅ y if the category is understood.

If γ ∶ y → x is any other arrow satisfying the same diagram as β, then by the axioms of identity and associativity we must have

γ = γ ○ idy = γ ○ (α ○ β) = (γ ○ α) ○ β = idx ○ β = β

This allows us to refer to β as the inverse of the arrow α. We use the notations β = α−1 and

β−1 = α.

A category with one object is called a monoid. A monoid in which each arrow is invertible is called a group. A small category in which each arrow is invertible is called a groupoid.

Subcategories of Set are called concrete categories. Given a concrete category C ⊆ Set we can think of its objects as special kinds of sets and its arrows as special kinds of functions. Some famous examples of conrete categories are:

• Grp = groups & homomorphisms
• Ab = abelian groups & homomorphisms
• Rng = rings & homomorphisms
• CRng = commutative rings & homomorphisms

Note that Ab ⊆ Grp and CRng ⊆ Rng are both full subcategories. In general, the arrows of a concrete category are called morphisms or homomorphisms. This explains our notation of HomC.

Homotopy: The most famous example of a non-concrete category is the fundamental groupoid π1(X) of a topological space X. Here the objects are points and the arrows are homotopy classes of continuous directed paths. The skeleton is the set π0(X) of path components (really a discrete category, i.e., in which the only arrows are the identities). Categories like this are the reason we prefer the name “arrow” instead of “morphism”.

Limit/Colimit: Let D ∶ I → C be a diagram in a category C (thus D is a functor and I is a small “index” category). A cone under D consists of

• an object c ∈ C,

• a collection of arrows αi ∶ x → D(i), one for each index i ∈ I,

such that for each arrow δ ∶ i → j in I we have αj = D(δ) ○ α

In visualizing this:


The cone (c,(αi)i∈I) is called a limit of the diagram D if, for any cone (z,(βi)i∈I) under D, the following picture holds:


[This picture means that there exists a unique arrow υ ∶ z → c such that, for each arrow δ ∶ i → j in I (including the identity arrows), the following diagram commutes:


When δ = idi this diagram just says that βi = αi ○ υ. We do not assume that D itself is commutative. Dually, a cone over D consists of an object c ∈ C and a set of arrows αi ∶ D(i) → c satisfying αi = αj ○ D(δ) for each arrow δ ∶ i → j in I. This cone is called a colimit of the diagram D if, for any cone (z,(βi)i∈I) over D, the following picture holds:


When the (unique) limit or colimit of the diagram D ∶ I → C exists, we denote it by (limI D, (φi)i∈I) or (colimI D, (φi)i∈I), respectively. Sometimes we omit the canonical arrows φi from the notation and refer to the object limID ∈ C as “the limit of D”. However, we should not forget that the arrows are part of the structure, i.e., the limit is really a cone.

Posets: Let P be a poset. We have already seen that the product/coproduct in P (if they exist) are the meet/join, respectively, and that the final/initial objects in P (if they exist) are the top/bottom elements, respectively. The only poset with a zero object is the one element poset.

Sets: The empty set ∅ ∈ Set is an initial object and the one point set ∗ ∈ Set is a final object. Note that two sets are isomorphic in Set precisely when there is a bijection between them, i.e., when they have the same cardinality. Since initial/final objects are unique up to isomorphism, we can identify the initial object with the cardinal number 0 and the final object with the cardinal number 1. There is no zero object in Set.

Products and coproducts exist in Set. The product of S,T ∈ Set consists of the Cartesian product S × T together with the canonical projections πS ∶ S × T → S and πT ∶ S × T → T. The coproduct of S, T ∈ Set consists of the disjoint union S ∐ T together with the canonical injections ιS ∶ S → S ∐ T and ιT ∶ T → S ∐ T. After passing to the skeleton, the product and coproduct of sets become the product and sum of cardinal numbers.

[Note: The “external disjoint union” S ∐ T is a formal concept. The familiar “internal disjoint union” S ⊔ T is only defined when there exists a set U containing both S and T as subsets. Then the union S ∪ T is the join operation in the Boolean lattice 2U ; we call the union “disjoint” when S ∩ T = ∅.]

Groups: The trivial group 1 ∈ Grp is a zero object, and for any groups G, H ∈ Grp the zero homomorphism 1 ∶ G → H sends all elements of G to the identity element 1H ∈ H. The product of groups G, H ∈ Grp is their direct product G × H and the coproduct is their free product G ∗ H, along with the usual canonical morphisms.

Let Ab ⊆ Grp be the full subcategory of abelian groups. The zero object and product are inherited from Grp, but we give them new names: we denote the zero object by 0 ∈ Ab and for any A, B ∈ Ab we denote the zero arrow by 0 ∶ A → B. We denote the Cartesian product by A ⊕ B and we rename it the direct sum. The big difference between Grp and Ab appears when we consider coproducts: it turns out that the product group A ⊕ B is also the coproduct group. We emphasize this fact by calling A ⊕ B the biproduct in Ab. It comes equipped with four canonical homomorphisms πA, πB, ιA, ιB satisfying the usual properties, as well as the following commutative diagram:


This diagram is the ultimate reason for matrix notation. The universal properties of product and coproduct tell us that each endomorphism φ ∶ A ⊕ B → A ⊕ B is uniquely determined by its four components φij ∶= πi ○ φ ○ ιj for i, j ∈ {A,B},so we can represent it as a matrix:


Then the composition of endomorphisms becomes matrix multiplication.

Rings. We let Rng denote the category of rings with unity, together with their homomorphisms. The initial object is the ring of integers Z ∈ Rng and the final object is the zero ring 0 ∈ Rng, i.e., the unique ring in which 0R = 1R. There is no zero object. The product of two rings R, S ∈ Rng is the direct product R × S ∈ Rng with component wise addition and multiplication. Let CRng ⊆ Rng be the full subcategory of commutative rings. The initial/final objects and product in CRng are inherited from Rng. The difference between Rng and CRng again appears when considering coproducts. The coproduct of R,S ∈ CRng is denoted by R ⊗Z S and is called the tensor product over Z…..