Les Catégories
La théorie des catégories est le sommet de la représentation des choses et encore, il y a mieux, vous allez voir.
Définition
Bon, une avancée dans ma compréhension: une catégorie est formée de deux collections d'objets : des objets et des flèches qui relient les objets. Une sorte de graphe avec en plus, la règle que les flèches composent: si ya a vers b et de b vers c et bien y a AUSSI de a vers c; et aussi que ya une flèche de chaque objet vers lui-même et aussi que la composition des flèches est associative.
Il faut bien comprendre que chaque flèche (arrow) a autant d'existence qu'un objet et n'ESTPAS une "fonction", mais UNE ligne entre deux points, un tuple d'objets la représente: son domaine et son codomaine. Une catégorie est donc une collection d'objets et une collection de couples de ces objets, plus des règles de formation de ces couples. En tout étant de cause, entre deux objets d'une catégorie, il y a bien une collection de flèches, c'est-à-dire PLUSIEURS flèches, et donc plusieurs couples identifiés différemment. Cet ensemble de couples (quand la catégorie est petite localement) est le "hom-set". Une "petite" catégorie a une collection d'objets qui est un ensemble.
L'assimilation d'une flèche à une fonction (à un être multiple, donc) est possible mais n'est pas obligée. Par exemple, un arbre de classes dans un langage de programmation est exemple de connexion par des flèches (la relation "extends") d'un ensemble d'objets, et c'est une catégorie.
On peut aussi interpréter les flèches entre deux objets qui sont des types comme une fonction entre les deux types, sachant qu'il y a autant de flèches entre deux types qu'il y a de fonctions possibles entre les deux types. C'est pour cela qu'on parle de "morphisme" au sujet des flèches, mais c'est un abus de langage destiné à perdre les andouilles.
Bien sûr le fait de parler tout de suite de "type" est en soi un peu abstrait, comme si la notion était évidente. De fait elle l'est, je(nous) suis(sommes) des programmeurs n'est-ce pas? Quoi de plus naturel qu'un type ?
Mais il y a plein de types de catégories, et toute la difficulté tient aux interprétations de la notion, aux modèles qu'on lui donne et ils sont infiniment variés, et c'est tout le problème.
Pour finir de clarifier, et puisqu'on parlait des types, l'archétype de la catégorie est la catégorie "Set", formée de la collection de TOUS les ensembles ET des fonctions entre ces ensembles. Le terme "fonction" étant bien défini entre deux ensembles par un ensemble de couples formé d'un élément du premier ensemble et d'un élément du second.
Sont des "catégories", aussi chaque collection des ensembles dotés d'une structure ET des fonctions entre ces ensembles qui "préservent" ces structures. C'est d'ailleurs pour cela que le mot ("category" en anglais) est utilisé. Précisément, et cela va mieux en le disant. Une structure est évidemment "algébrique" quand elle peut être manipulée (on en prend deux, et on les associe pour en faire encore une autre) par des "lois" ou "opérations" diverses.
Une généralité finale et oiseuse, mais qui a son importance : les raisonnements autour de ces notions sont tous basés sur le fait que quand on considère des objets, les relations entre ces objets sont considérées d'importance égale, voire supérieure à celles des objets eux-mêmes... Il suffit de le dire.
On monte
La catégorie des catégories avec comme flèches les foncteurs entre les catégories s'appelle Cat. Ça c'est de la belle abstraction (mal à l'estomac ?).
Un foncteur entre deux catégories associe les objets et aussi les flèches, mais en préservant les compositions. Il y a autant de foncteurs qu'on veut bien sûr, et deux catégories peuvent être fonctorisées de plusieurs manières. Un foncteur est ainsi un homomorphisme. Quand il relie une catégorie à elle-même, c'est un endomorphisme, un endofoncteur donc. Loin de se contenter des misérables catégories elle-même, nous voilà donc à les brasser par paquets, les seuls objets dotés de sens étant les façons de les associer...
Et bien cette manière de tirer des choses de conventions de relations entre d'autres choses est une façon de créer le monde, celui surgissant littéralement du langage, pour notre plus grand plaisir: c'est le concept du feu d'artifice, moteur de magnifiques spéculations fantasmatiques. Comme si le monde pouvait se définir lui-même. Toutes ses caractéristiques sortent ainsi de ses repliements sur lui même comme des assertions dans le parler, assertions sujettes aux contraintes du monde, celles qui sont démontrables dans ce même langage, et donc absolument vraies.
Accrochez-vous, il y a mieux.
Car il y a les topos. Inventés par Alexander(re) Grothendieck le génial fou mort récemment après avoir fasciné deux générations de semi-fous, ils sont une sorte de catégorie, et la catégorie des ensembles en est un.
Cet objet est particulièrement intéressant car il se substitue à l'ensemble de tous les ensembles qui n'existe pas lui; il s'appelle Set. Qu'une tel machin ne soit qu'une instance me réjouit particulièrement : quel homme cet Alexandre !
Notons que les axiomes des topos furent donnés par Jean Giraud, qui n'a rien à voir avec le célèbre dessinateur de bandes dessinées Moebius (ou Gir).
Une théorie particulière peut être encodée dans un topos, qui peut ou non avoir l'axiome du choix, par exemple. Mais on peut faire mieux, la chose permettant la matérialisation ex nihilo de concepts particuliers, la notion de groupe par exemple pouvant être tordue au point de dire que les groupes "sont" les endofoncteurs qui préservent la structure d'un topos particulier.
Au sujet de Grothendieck, il faut savoir que ses univers (les univers de Grothendieck) fournissent des modèles de la théorie des ensembles. Ils sont des ensembles particuliers qui contiennent certaines de leurs parties de manière tordue. Ils permettraient ainsi de faire "mieux" que les autres théories des ensembles.
Rappellons qu'aprés Zemerlo Franckel Axiome du choix (ZFC) (Axiome du choix n'est ni fou, ni mort, il n'est pas le nom d'un humain), la théorie des ensembles la plus connue, il existe aussi von Neumann-Bernays-Gödel (NBG), la magnifique théorie des classes, qui avec un nombre fini d'axiomes permet de tout faire: on a ainsi des classes et des ensembles, les ensembles étant les classes appartenant à au moins une classe. La notion de classe ne serait, dit on, pas bien décrite dans ZFC.
Au passage, les considérations sur l'infini induites par toutes ces belles théories amènent à une conception de celui-ci qui a un intérêt peu connu: il n'est aucunement borné, c'est-à-dire ne cesse jamais de susciter plus grand que lui et ce à l'infini, ce qui est une manière élégante de dire qu'il n'existe pas en fait.
Et finalement
Et donc pour finir, une encore plus splendide considération sur l'infini: si un cardinal inaccessible se définit comme étant plus grand que la puissance de 2 (l'ensemble des parties) de tout cardinal qui lui est inférieur, et bien il est indécidable (dans ZFC) de dire que tout cardinal est majoré par un cardinal inaccessible. De plus, et là je me marre, cela est équivalent (et donc tout autant indécidable) à dire que tout ensemble appartient à un univers de Grothendieck.
Il y a alors une théorie des ensembles de Tarski Grothendieck, qui autorise cet indécidable là. Je ne vous raconterais pas ce qu'elle doit s'autoriser par ailleurs...
(1) Pour browser les catégories et ce qui s'y rattache: https://ncatlab.org/nlab/show/category+theory