Tuesday, June 18, 2024

Multiple categories

Let $T$ be a theory and let $C$ be a category. If $T$ is modelable in $T$, then there exists a category of models $T(C)$ in $C$. If $T$ is again modelable in $T(C)$ then we can get a category of double models $T(T(C))$. Repeating this again produces a category of triple models $T(T(T(C)))$. This iterated internalisation process produces the $n$-fold models of $T$ in $C$. This can be used to study a variety of different of theories in categories.

For example, we can repeatedly internalise the theory of preorders to categories to get $n$-fold preorders. However, the main things we will want to repeatedly internalise to categories are categories themselves. The iterated internalisations of categories in categories are $n$-fold categories. The double and triple categories we have dealt with previously are special types of $n$-fold categories. We call all $n$-fold categories with $n \gt 3$ multiple categories.

The morphisms of $n$-fold categories are $n$-fold functors. For example, the morphisms of single categories are simply single functors. The morphisms of double categories are double functors, and the morphisms of triple categories are triple functors. By generalisation, a morphism of multiple categories is a multiple functor. $n$-fold categories and $n$-fold functors together make up the categories of $n$-fold categories.
  • Single categories
  • Double categories
  • Triple categories
  • Multiple categories

References:
N-fold category

Triple categories

In a previous post, we described double categories. It was mentioned that double categories are categories internal to the category of categories $Cat$. This process of internalising categories in categories can be repeated $n$ times to produce $n$-fold categories. Repeating this process three times produces triple categories.

Definition:
A triple category $C$ is an internal category in double categories. A triple category has the following six components:
  • A double category of objects $Ob(C)$
  • A double category of arrows $Arrows(C)$
  • A source double functor $source: Arrows(C) \to Ob(C)$
  • A target double functor $target: Arrows(C) \to Ob(C)$
  • An identity double functor $identity: Ob(C) \to Arrows(C)$
  • A composition double functor $\circ: Arrows(C) \times_{Ob(C)} Arrows(C) \to Arrows(C)$
Alternatively, a triple category can be constructed from eight different types of cells with composition, source, target, and identity morphisms coming in different directions. So for example, triple categories have vertical, horizontal, and transversal types of composition. This stands in contrast to elementary categories, which only have composition defined in one direction.

Cells:
A triple category has eight different types of cells constructed from combining three different types of arrows in three different dimensions.
  • Objects
  • Arrows
    • Vertical arrows
    • Horizontal arrows
    • Transversal arrows
  • Squares
    • Vertical-Horizontal squares
    • Vertical-Transversal squares
    • Horizontal/Transversal squares
  • Cubes
A triple category $C$ has three different double categories of squares and three different categories of arrows associated to it.

References:
Triple category

Friday, June 14, 2024

Our new logo

To symbolise the synthesis of functional programming and double categories we will need a new logo. The functional programming paradigm is often symbolised by the Greek letter lambda. On the other hand, double categories are symbolised by the blackboard font letters at the start of their names. To indicate the use of double categories in computer programming languages and their link to the study of functional mappings, we will use a blackboard font lambda.