Espèce (combinatoire)

En mathématiques, et plus précisément en combinatoire, la théorie des espèces est une méthode abstraite et systématique permettant de calculer les séries génératrices de structures discrètes. Elle permet non seulement de dénombrer ces structures, mais aussi de donner des preuves bijectives des résultats obtenus. Parmi les exemples typiques d'espèces figurent les graphes (finis), les permutations, les arbres, etc. À chaque espèce est associée une série génératrice qui compte le nombre de structures de cardinal donné. L'un des objectifs de la théorie des espèces est de pouvoir analyser des structures complexes en les décrivant en termes de transformations et de combinaisons de structures plus simples. À chaque opération sur les espèce correspond une manipulation sur les séries génératrices. C'est pourquoi cette théorie facilite l'étude des séries génératrices des structures complexes. Cette théorie a été introduite, développée et appliquée par des chercheurs canadiens autour d'André Joyal à partir d'un article de 1981[1].

La puissance de cette théorie est due à son haut niveau d'abstraction. Le « format de description » d'une structure (par exemple, liste d'adjacence ou matrice d'adjacence pour les graphes) ne compte pas car les espèces sont purement algébriques. La théorie des catégories fournit un langage efficace pour introduire la notion d'espèce mais il n'est pas nécessaire de comprendre les catégories pour travailler avec les espèces.

La catégorie des espèces est équivalente à la catégorie des suites symétriques ou S-objets dans les ensembles finis[2].

Définition des espèces

Représentation schématique d'une espèce sur cinq points à l'aide d'un diagramme de Labelle.

Une espèce est constituée de structures combinatoires individuelles construites à partir des éléments d'un ensemble fini. Par exemple, un graphe est une structure d'arêtes reliant certains éléments d'un ensemble donné de sommets, et l'espèce des graphes comprend tous les graphes définis sur tous les ensembles finis. Par ailleurs, l'ensemble sous-jacent d'un membre d'une espèce peut être ré-étiqueté par les éléments de n'importe quel autre ensemble de même cardinal ; par exemple, ré-étiqueter les sommets d'un graphe donne « la même structure de graphe » sur les nouveaux sommets, c'est-à-dire un graphe isomorphe au premier.

Cela conduit à la définition formelle d'une espèce combinatoire. Soit la catégorie dont les objets sont les ensembles finis et les morphismes les bijections entre ces ensembles. Une espèce combinatoire, ou simplement une espèce, est un foncteur[3]

Pour tout ensemble fini A dans , l'ensemble fini [note 1] est appelé l'ensemble des F-structures sur A, ou l'ensemble des structures d'espèce F sur A. De plus, par définition d'un foncteur, si φ est une bijection entre les ensembles A et B, alors est une bijection entre les ensembles de F-structures et , appelée transport de F-structure le long de φ.

Par exemple, l'espèce de permutations[4] associe à chaque ensemble fini A l'ensemble de toutes les permutations de A (toutes les manières d'ordonner A dans une liste), et chaque bijection f de A vers un autre ensemble B induit naturellement une bijection (un réétiquetage) qui associe à chaque permutation g de A une permutation correspondante de B, à savoir la bijection , . De même, on peut définir l'espèce des partitions en associant à chaque ensemble fini l'ensemble de toutes ses partitions, et l'espèce des ensembles de parties en associant à chaque ensemble fini l'ensemble de ses parties. Le diagramme ci-dessus illustre une structure (représentée par un point rouge) construite à partir de cinq éléments distincts (représentés par des points bleus) ; une structure équivalente pourrait être construite à partir de cinq objets quelconques.

Deux ensembles finis sont en bijection lorsqu'ils ont le même cardinal (nombre d'éléments). On voit que par définition, les ensembles correspondants de structures d'un espèce donnée sont également en bijection, de sorte que le cardinal (fini) de ne dépend que du cardinal de A[note 2]. En particulier, on peut introduire la série génératrice exponentielle d'une espèce F[5] :

,

est le cardinal de pour n'importe quel ensemble A à n, par exemple, .

Quelques exemples – on note dans chaque cas  :

  • l'espèce des ensembles, traditionnellement notée E est le foncteur qui à A associe  ; on a pour tout n donc  ;
  • l'espèce S de permutations, décrite ci-dessus ; on a pour tout n donc  ;
  • l'espèce T2 des couples est le foncteur qui à un ensemble A associe l'ensemble A2 ; on a pour tout n et .

Opérations sur les espèces

Les opérations algébriques sur les fonctions génératrices correspondent à certaines opérations « naturelles » sur les espèces. Les opérations de base sont l'addition, la multiplication, la composition et la différentiation. Il est également nécessaire de définir l'égalité sur les espèces. En théorie des catégories, on dispose déjà d'un moyen de décrire l'équivalence de deux foncteurs : la notion d'isomorphisme naturel. Dans ce contexte, cela signifie simplement que pour chaque A, il existe une bijection entre les F-structures sur A et les G-structures sur A, qui « se comporte bien » vis à vis du transport. Il existe des espèces qui ont la même fonction génératrice exponentielle (on dit qu'elles sont équipotentes) mais qui ne sont pas isomorphes (par exemple, l'espèce S des permutations et l'espèce L des ordres linéaires). En revanche, deux espèces isomorphes ont toujours la même fonction génératrice.

Somme

La somme de deux espèces est définie par la réunion disjointe des ensembles et correspond à un choix entre structures[6]. Étant donné deux espèces F et G, on définit comme la réunion disjointe (également notée « + ») de et . On en déduit immédiatement que . À titre d'exemple, soit l'espèce des ensembles non vides ( si A n'est pas vide, ), dont la fonction génératrice est , et soit 1 l'espèce de l'ensemble vide ( et si A n'est pas vide), dont la fonction génératrice est . La somme de ces deux espèces est l'espèce des ensembles . Cela traduit le fait qu'un ensemble (fini) est soit vide, soit non vide. Des égalités de ce type peuvent être interprétées comme se référant à une structure donnée, ou bien à la collection de toutes les structures.

Produit

Le produit de deux espèces est légèrement plus compliqué. On pourrait se contenter de le définir comme le produit cartésien des ensembles mais l'interprétation combinatoire qui en découle n'est pas pertinente. (Ce type de produit apparaîtra néanmoins plus bas.) Plutôt que de combiner deux structures indépendantes sur un même ensemble, le produit utilise part de l'idée de scinder l'ensemble en deux parties et de mettre une F-structure sur l'une et une G-structure sur l'autre[7]. Cela donne, pour tout ensemble fini A,

Il s'agit d'une réunion disjointe sur toutes les partitions possibles de A en deux parts. Il est facile de montrer que le produit est associatif et commutatif (à isomorphisme près) et qu'il est distributif par rapport à la somme. Quant à la série génératrice, .

Le diagramme ci-dessous illustre une structure possible sur un ensemble A à cinq éléments. La F-structure (en rouge) prend trois éléments de l'ensemble de base et la G-structure (en bleu clair) prend les deux autres. D'autres -structures appliquent F et G à d'autre partitions de A. L'ensemble est la réunion disjointe de toutes ces structures.

La somme et le produit des espèces sont la plus vaste interprétation des principe de dénombrement dits « de somme » et « de produit »[réf. nécessaire].

Composition

La composition, aussi appelée substitution, est encore plus complexe. L'idée de base est de remplacer les composants de F par des G-structures pour former [8]. Comme pour le produit, on commence par faire une partition de l'ensemble A ; on applique G à chaque part de la partition puis on applique F aux images des parts pour construire la F-structure reliant les G-structures. Pour que la composition ait un sens, il faut supposer que l'image par G de l'ensemble vide est l'ensemble vide[note 3]. La définition formelle est :

Ici, P désigne l'espèce des partitions, c'est-à-dire que est l'ensemble de toutes les partitions de A. Cette définition indique qu'un élément de est constitué d'une F-structure sur une partition de A et d'une G-structure sur chaque part de la partition. La série génératrice s'obtient par substitution : .

Un exemple de l'une de ces structures est illustré ci-dessous. Trois G-structures (bleu clair) se partagent l'ensemble de base à cinq éléments ; puis, une F-structure (rouge) est construite pour relier les G-structures.

Le produit et la composition peuvent être illustrées par l'exemple des arbres. Au préalable, on définit X comme l'espèce « singleton », qui envoie un ensemble A sur A si c'est un singleton et sinon ; sa série génératrice est . Alors, l'espèce des arbres enracinés est définie récursivement par l'égalité . Cette équation exprime qu'un arbre enraciné est composé d'une racine (unique) à laquelle sont rattachés un ensemble de (sous-)arbres. La récursion ne nécessite pas d'initialisation explicite : elle n'engendre des arbres que lorsqu'elle est appliquée à un ensemble fini. On peut se représenter cela comme l'application itérative du foncteur à une « réserve » d'éléments de cet ensemble : à chaque itération, un élément est pris par X et les autres sont distribués par E entre les sous-arbres de , jusqu'à ce qu'il n'y ait plus d'éléments à fournir à E. Ceci montre que les descriptions algébriques des espèces diffèrent sensiblement des spécifications de types dans les langages de programmation comme Haskell.

De façon analogue, l'espèce P des partitions peut être caractérisée comme : cette égalité s'interprète en disant qu'une partition est un ensemble d'ensembles non vides deux à deux disjoints (utilisant tous les éléments de l'ensemble de départ). Par composition des séries génératrices exponentielles, on obtient immédiatement que celle de P est , qui est la série génératrice des nombres de Bell.

Différenciation

La différenciation des espèces correspond intuitivement à la construction de « structures avec un trou », illustrée par la figure ci-dessous.

Formellement[9], la dérivée F' d'une espèce F associe à chaque ensemble fini A :

,

est un nouvel élément distingué qui n'appartient pas à et + désigne la réunion disjointe.

Pour différencier la série exponentielle associée, la suite des coefficients doit être décalée d'un cran vers la gauche (en supprimant le premier terme). C'est ce qui motive la définition précédente.

Quand on avance dans la théorie des espèces, on utilise abondamment la différentiation pour mettre en place et résoudre des équations différentielles sur les espèces et les séries associées. En effet, l'idée d'ajouter (ou de supprimer) un élément ou une partie d'une structure est puissante : elle permet d'établir des relations entre des espèces apparemment sans lien.

Par exemple, considérons l'espèce L des ordres linéaires — les listes des éléments de l'ensemble de base (ordonnées, sans répétition ni omission). Supprimer un élément d'une liste la divise en deux parties (éventuellement vides) ; en symboles, cela s'écrit . Comme le nombre de listes possibles pour un ensemble de cardinal n est , la série génératrice exponentielle de L est et on a bien :

.

Cette idée et ces formules de différenciation généralisées figurent déjà dans un article de N. G. de Bruijn de 1964.

L'espèce C des permutations cycliques associe à un ensemble A l'ensemble de tous les cycles sur A. En retirant un élément à un cycle, on obtient une liste, ce qui donne . On peut intégrer la série génératrice de L pour obtenir celle de C :

.

Un joli exemple d'intégration d'une espèce est la complétion d'une droite (munie d'un système de coordonnées paramétré par un corps) par un point à l'infini, pour obtenir une droite projective.

Opérations supplémentaires

On peut effectuer diverses autres opérations sur les espèces. Elles deviennent nécessaires pour décrire des structures plus complexes, telles que les graphes orientés ou les bigraphes (en).

Le pointage consiste à sélectionner un élément dans une structure[10]. Étant donné une espèce F, l'espèce pointée correspondante F est définie par . Ainsi, chaque F-structure est une F-structure dont un élément est distingué. Le pointage est lié à différentiation décrite ci-dessus par la relation , ce qui entraîne que . L'espèce E des ensembles pointés est particulièrement importante comme brique de base pour de nombreuses constructions plus complexes.

Le produit cartésien de deux espèces F et G permet de construire deux structures en même temps sur le même ensemble. Elle diffère du produit ordinaire parce que tous les éléments de l'ensemble de base sont partagés entre les deux structures. Une -structure peut être vue comme la superposition d'une F-structure et d'une G-structure.

Par exemple, les bigraphes peuvent être décrits comme la superposition d'un graphe et d'un ensemble d'arbres : chaque nœud du bigraphe appartient à la fois à un graphe et à un arbre qui décrit l'imbrication des nœuds. La fonction génératrice est le produit d'Hadamard (ou produit terme à terme) de et .

L'espèce peut être interprétée comme consistant à faire deux choix indépendants d'un élément de l'ensemble de base. Les deux points peuvent coïncider, alors que dans , ils sont nécessairement différents.

En tant que foncteurs, deux espèces F et G peuvent être combinées par la composition des foncteurs : (on utilise un symbole carré pour éviter le cercle, qui est déjà employé pour la substitution). Ceci construit une F-structure sur l'ensemble de toutes les G-structures sur l'ensemble A. Par exemple, si F est le foncteur qui associe à un ensemble l'ensemble de ses parties, une structure de l'espèce composée est un sous-ensemble des G-structures sur A. Si par exemple G est l'espèce définie ci-dessus, on obtient l'espèce des graphes orientés, avec boucles autorisées. (Un graphe orienté est déterminé par un ensemble d'arêtes, et les arêtes sont des couples de sommets : un graphe est donc un sous-ensemble de l'ensemble des couples d'éléments de l'ensemble des sommets A.) D'autres familles de graphes, ainsi que de nombreuses autres structures, peuvent être définies de façon analogue.

Implémentation dans des logiciels

Les opérations sur les espèces sont implémentées sur SageMath[11] et, sous forme d'un paquetage dédié, également sur Haskell[12],[13].

Variantes

  • Une espèce en k genres est un foncteur . Ici, les structures produites peuvent comporter des éléments provenant de différentes sources[14].
  • On peut considérer un foncteur vers , la catégorie des ensembles pondérés par un anneau R de séries formelles, ce que l'on appelle une espèce pondérée[15].

Si l’on remplace la catégorie des ensembles finis munis de bijections par celle des espaces vectoriels de dimension finie munis des automorphismes linéaires, on obtient la notion de foncteur polynomial (en) (si on impose une certaine condition de finitude)[réf. nécessaire].

Voir aussi

Notes et références

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Combinatorial species » (voir la liste des auteurs).

Notes

  1. Joyal préfère noter plutôt que la valeur de F en A.
  2. Si est une bijection, alors est une bijection donc et ont le même cardinal.
  3. Remarquer que pour pouvoir définir la composition deux séries formelles F et G, on peut prendre F quelconque mais il faut supposer que .

Références

  1. Joyal (1981).
  2. Symmetric sequence sur le nLab.
  3. Joyal (1981), § 1.1. Definition 1.
  4. Joyal (1981), § 1.1. Example 3.
  5. Joyal (1981), § 1.1.1.
  6. Joyal (1981), § 2.1.
  7. Joyal (1981), § 2.1. Definition 5.
  8. Joyal (1981), § 2.2. Definition 7.
  9. Joyal (1981), § 2.3. Definition 8.
  10. Philippe Flajolet et Robert Sedgewick, Analytic combinatorics, , xiv + 810 p. (ISBN 978-0-5218-9806-5, présentation en ligne, lire en ligne).
  11. (en) « Combinatorial species », sur SageMath (consulté le )
  12. (en) Brent Yorgey, « species: Computational combinatorial species », sur haskell.org
  13. Yorgey Brent A., Proceedings of the third ACM Haskell symposium on Haskell - Haskell '10, ACM, , 147–158 p. (ISBN 978-1-4503-0252-4, DOI 10.1145/1863523.1863542, S2CID 511418, CiteSeerx 10.1.1.165.6421), « Species and functors and types, oh my! »
  14. Bergeron, Labelle et Leroux (2013), p. 84.
  15. Bergeron, Labelle et Leroux (2013), p. 75.

Bibliographie

Articles connexes

Liens externes

  • icône décorative Portail des mathématiques