Un ensemble est déja une structure sophistiquée, et il existe une structure plus fondamentale, davantage informatique, qu'est la liste. Mais pour qu'elle recouvre tout ce qu'un ensemble peut recouvrir, on est obligé de recourir à des indices ordonnées de plus en plus sophistiqués, se perfectionnant selon un algorithme précis : `N`, `ZZ`,`QQ`,`barQQ`,`"*"barQQ`,.... Mais il est important de noter que, pour les élémentariens, ces ensembles, définis comme des pompées russe, sont tous dénombrables.
Le concept de liste étendue correspond aux ensembles ordonnés, où on entend par ordonné, non pas un ordre partiel mais un ordre totale. Ainsi une structure d'ensemble que l'on complète d'une relation d'ordre totale constitue une structure plus rudimentaire du point de vue combinatoire, et qui est appelé structure ordonnée.
Une structure possède un ensemble sous-jacent, appelé aussi ensemble support. Il est donc possible de remplacer cet ensemble par une liste sous-jacente telle que décrit au paragraphe précédent, ou par une liste étendue, un ensemble ordonné, et obtenir ainsi une structure ordonnée, plus simple du point de vue combinatoire.
On considère deux sortes de structure ; les structures engendrées, et les structures innées.
Une structure innée possède un ensemble sous-jacent inconnu (en faite, engendré par une autre structure mais inconnue). il peut être indicé par le nombre d'éléments (au moins 1) de son ensemble sous-jacent s'il est fini, ou par le symbole `oo` s'il n'est pas fini. Tandis qu'une structure engendrée possède un ensemble sous-jacent qui est engendré, c'est à dire énuméré par un procédé de construction connue par la structure elle-même, et on la différencie de la structure innée en l'indiçant par zéro.
Considérons d'abord la structure engendrée la plus simple qui énumère quelques éléments, c'est une liste telle que par exemple :
`E = sf"Structure"_0 (E, a^E,b^E,c^E)`
Cette structure anonyme présente `3` opérateurs nullaires (d'arité nulle, c'est à dire un symbole désignant un élément), qui engendre l'ensemble sous-jacent `E`, qui contient donc les éléments `a,b,c`, et ne possède pas de contrainte théorique (théorie vide). Aussi on ne sait pas si ces éléments sont égaux entre eux ou pas. Après cette déclaration, le symbole `E` en tant qu'ensemble désigne l'ensemble suivant :
`E={a}"∪"{b}"∪"{c}`
Et en tant que structure, il désigne l'ensemble `E` muni des `3` opérateurs nullaires `a,b,c` qui désigne un triplet d'éléments de `E`. La signature de la structure `E` est `(E,E,E)`. L'expression `sf"Structure"_0(E,a^E,b^E,c^E)` désigne aussi l'ensemble des structures engendrées de signature `(E,E,E)` à isomorphisme près. Et il y en a `5` correspondant aux cas suivants :
`a"="b "et" b"="c`
`a"≠"b "et" a"≠"c "et" b"="c`
`b"≠"a "et" b"≠"c "et" a"="c`
`c"≠"a "et" c"≠"b "et" a"="b`
`a"≠"b "et" a"≠"c "et" b"≠"c`
Chacun de ces cas décrit un modèle, une forme concrète complétement définie que peut prendre la structure, et telle qu'il n'existe pas d'isomorphisme pour passer de l'une à l'autre.
`"card"(sf"Structure"_0(E, a^E,b^E,c^E)) = 5`
On simplifie combinatoirement la structure en la munissant d'une relation d'ordre totale, ce qui la dote d'une théorie, la théorie de la relation d'ordre. Et on la rend anonyme en créant un second type de structure anonyme, ne possédant aucune théorie complétant celle de la relation d'ordre :
`"card"(sf"Structure ordonné"_0(E, "<", a^E,b^E,c^E)) = "card"(sf"Structure ordonné_1"_0(E, "<", a^E,b^E,c^E)) + `
`"card"(sf"Structure ordonné_2"_0(E, "<", a^E,b^E,c^E)) + `
`"card"(sf"Structure ordonné_3"_0(E, "<", a^E,b^E,c^E)) ``"card"(sf"Structure ordonné"_0(E, "<", a^E,b^E,c^E)) = `
---- 18 janvier 2021 ----
La structure innée se présente de la même façon, mais son ensemble sous-jacent est inconnue. Il peut être indicé par le nombre d'éléments (au moins 1) de son ensemble support.
`"card"(sf"Structure"_1(E, a^E,b^E,c^E)) = 1`
`"card"(sf"Structure"_2(E, a^E,b^E,c^E)) = (2^3)/(2!)`
`"card"(sf"Structure"_3(E, a^E,b^E,c^E)) = (3^3)/(3!)`
`"card"(sf"Structure"_n(E, a^E,b^E,c^E)) = (n^3)/(n!)`
Il existe un objet plus simple que l'ensemble qui est la liste, et qui peut servir de support :
`"card"(sf"Structure"((e_1), a^E,b^E,c^E)) = 1`
`"card"(sf"Structure"((e_1,e_2), a^E,b^E,c^E)) = 2^3`
`"card"(sf"Structure"((e_1,e_2,e_3), a^E,b^E,c^E)) = 3^3`
`"card"(sf"Structure"((e_1,e_2,e_3,...,e_n), a^E,b^E,c^E)) = n^3`
Considérons ensuite la structure engendrée la plus simple qui énumére les entiers :
`N=sf"Structure"_"min"(1,s^(E"→"E)) = sf"Structure"_"min"(1,s"(.)")`
On note l'opérateur de type `E"→"E` en le suffixant par `"(.)"`,
---- 18 janvier 2021 ----
Les isomorphismes sont des bijections f qui respecte les 3 opérateurs c'est à dire
Une précision importante, l'isomorphisme est défini relativement à la signature de la structure considérée et non à sa théorie. Le terme matroïde, en tant que signature, désigne la signature `(E, (E"→"{0,1})"→"{0,1}))`, et en tant que structure, il construit une structure comme vue au chapitre précédent.
comprenant qu'un ensemble sous-jacent `E`. C'est la structure d'un ensemble, notée `sf"Ensemble"(E)`. Et on note la structure d'un ensemble de `n` éléments `sf"Ensemble_n"(E)`. Et on note la structure d'un ensemble infini `sf"Ensemble_oo"(E)`.
Les isomorphismes d'ensembles sont simplement les bijections. Et il y a exactement `n!` bijections possibles entre deux ensembles de `n` éléments.
`"card"({1,2,3,...,n}↔{1,2,3,...,n}) = n!`
Dans le cas fini, le nombre de structure d'ensemble à `n` éléments, à bijection près, vaut exactement `1`. C'est ce constat qui permet de définir les entiers naturelles `NN` de manière ensembliste. Dans le cas infini, les élémentariens ne retiennent que les modèles dénombrables, et donc le nombre de structure d'ensembles infinis, à bijection près, vaut exactement `1`. C'est ce constat qui permet de définir les cardinaux `NN uu {oo}` de manière ensembliste. On résume cela par le dénombrement des structures d'ensemble à bijection près :
`"card"(sf"Ensemble"_n(E)) = 1`
`"card"(sf"Ensemble"_oo(E)) = 1`
`"card"(sf"Ensemble"(E)) = oo`
Considérons maintenat la structure comprenant qu'un ensemble sous-jacent `E` et un sous-ensemble `A` :
`E = sf"Structure"(E,A^(E"→"{0,1}))`
Notez que dans la présentation d'une structure anonyme, le type des opérateurs est mis en exposant. Une application `f` de `E"→"E` est un morphisme pour cette structure si et seulement si `AAx, x "∈" A <=> f(x) "∈" f(A)` où `f(A)` est la définition classique de l'image de `A` par `f`. Le morphisme `f` peut permuter les éléments de `A`, et il peut également permuter les éléments du complément que l'on note `¬A`. On en déduit le nombre d'isomorphismes pour `"card"(E)"="n` et `"card"(A)"="a`, qui est `a!(n-a)!`.
`"card"(sf"Structure"_n(E,A^(E"→"{0,1})) = 1,(n-1)`
Notez que dans la présentation d'une structure anonyme, le type des opérateurs est mis en exposant. Une application `f` de `E"→"E` est un morphisme pour cette structure si et seulement si `AAx, x "∈" A <=> f(x) "∈" f(A)` où `f(A)` est la définition classique de l'image de `A` par `f`. Le morphisme `f` peut permuter les éléments de `A`, et il peut également permuter les éléments du complément que l'on note `¬A`. On en déduit le nombre d'isomorphismes pour `"card"(E)"="n` et `"card"(A)"="a`, qui est `a!(n-a)!`.
(Les ensembles finis sont caractérisés par leur cardinal `n in NN`, et les ensembles infinis sont caractérisée par la limite lorsque `n` tend vers l'infini, une suite convergeant vers l'infini qui transporte toute l'information sur l'ordinalité de l'ensemble infini en question.)
---- 18 janvier 2021 ----