David Madore's WebLog: Je m'amuse avec les groupes de Coxeter et je continue à disséquer la surface de Bring

Index of all entries / Index de toutes les entréesXML (RSS 1.0) • Recent comments / Commentaires récents

Entry #2254 [older|newer] / Entrée #2254 [précédente|suivante]:

(mercredi)

Je m'amuse avec les groupes de Coxeter et je continue à disséquer la surface de Bring

Puisque j'étais parti pour manipuler des polygones hyperboliques, j'ai glissé, suivant le fil conducteur de simplement chercher à apprendre des maths belles et amusantes, vers la combinatoire des groupes de Coxeter (et des dessins qui auraient plu à Escher).

[Un pavage hyperbolique étiqueté][Un pavage hyperbolique étiqueté]Sans me proposer d'expliquer la situation en général, je peux facilement en parler sur le cas particulier (mais représentatif) illustré par les images ci-contre à gauche et à droite (peu importent pour l'instant les différences, qui ne sautent d'ailleurs probablement pas aux yeux). Si on ignore les étiquettes, il s'agit d'un pavage du plan hyperbolique par des triangles tous identiques, caractérisés de façon unique par le fait qu'ils ont aux sommets les angles π/4, π/2 et π/5 (lus dans le sens des aiguilles d'une montre pour les triangles blancs, et dans le sens trigonométrique pour les triangles noirs). De façon équivalente, on obtient cette figure en partant de mon pavage préféré de l'espace hyperbolique par des « carrés » dont cinq se rejoignent en chaque sommet, et en divisant chaque carré en huit selon ses quatre axes de symétrie (deux diagonales et deux médianes). On peut donc regrouper les triangles huit par huit pour retrouver le pavage hyperbolique par des « carrés » d'angle 2π/5 en chaque sommet (chercher les bords teintés en gris sur ma figure), et c'est bien sûr cette parenté qui me fait utiliser cet exemple particulier ; on peut aussi, au contraire, regrouper les triangles dix par dix (chercher les bords teintés en rouge sur ma figure) pour obtenir le pavage dual par des pentagones à angles droits. Le pavage triangulaire s'obtient en partant d'un triangle quelconque le constituant, et en effectuant de façon répétée des symétries par rapport à ses trois côtés (je les ai, à chaque fois, légèrement teintés en gris, vert et rouge).

L'ensemble des transformations en question, c'est-à-dire l'ensemble des compositions de symétries par rapport aux côtés des triangles, est appellé le groupe de Coxeter Δ(2,4,5), ou groupe de Coxeter engendré par trois réflexions x, y, z vérifiant x²=y²=z²=1 avec (x·y)⁵=1, (y·z)⁴=1 et (x·z)²=1 (l'opération · étant la composition des transformations). De plus, donnés deux triangles, il existe une et une seule transformation dans le groupe de Coxeter qui transforme l'un en l'autre. Une fois fixé un triangle de référence (disons, celui étiqueté ε sur mes figures), tous les triangles peuvent s'identifier aux éléments du groupe de Coxeter (via la transformation qui envoie le triangle de référence dans le triangle considéré) : on peut donc associer à toute suite de x, y et z un triangle, qui est celui obtenu en partant du triangle de référence (ε) et en effectuant les transformations indiquées par ces lettres. Concrètement, soit on lit le mot de droite à gauche, auquel cas x, y et z désignent les symétries par rapport aux trois côtés fixés du triangle de référence, soit on le lit de gauche à droite, auquel cas x, y et z désignent les côtés qu'on doit traverser, z étant le petit côté de l'angle droit (teinté en rouge sur ma figure), y l'hypoténuse (teintée en vert), et x le grand côté de l'angle droit (teinté en gris).

Ceci fournit donc (une fois fixé le triangle de référence) une façon de désigner n'importe quel triangle du pavage par une suite de x, y et z (les triangles blancs, dont l'orientation est la même que le triangle de référence, sont ceux ayant un nombre pair de lettres, correspondant à une transformation qui préserve l'orientation, tandis que les noirs, dont l'orientation est opposée, sont ceux ayant un nombre impair de lettres). Mais il existe plusieurs suites pouvant désigner le même triangle : pour commencer, comme x² (c'est-à-dire x·x) est l'identité, on peut supprimer ou insérer un nombre pair quelconque de x consécutifs dans un mot, et de même pour les y et les z : mais ce ne sont pas là les seules simplifications possibles, puisqu'on a aussi (xz)²=1, c'est-à-dire xzxz=1, ce qui se traduit plus concrètement par zx=xz (cette exemple prouve qu'il n'y a pas unicité de l'écriture, même si on impose à celle-ci d'être de longueur minimale). On appelle mot réduit sur x, y et z une écriture de longueur minimale conduisant à un élément/triangle donné ; et même parmi les mots réduits, on peut par exemple s'intéresser à celui qui est lexicographiquement le plus petit (ce qui conduit à préférer l'écriture xz à zx). Ma figure de gauche ci-dessus montre chaque triangle étiqueté par le mot réduit lexicographiquement le plus petit : ceci fournit bien une étiquette unique pour chaque triangle. D'autres variations sont possibles : le mot réduit lexicographiquement le plus grand, le mot réduit lexicographiquement le plus petit lu à l'envers (remarquons que lire un mot à l'envers revient à prendre son inverse dans le groupe de Coxeter), ou le mot réduit lexicographiquement le plus grand lu à l'envers. (La figure de droite ci-dessus montre les mots réduits lexicographiquement les plus grands lus à l'envers : si la différence avec la figure de gauche ne vous frappe pas, cherchez le mot xyxyx d'un côté, qui est yxyxy de l'autre.)

[Graphe de transition d'un automate fini]Un résultat remarquable dû à Brigitte Brink & Robert Howlett en 1993 est que tous ces langages sont rationnels (aussi bien le langage des mots réduits que celui des mots réduits lexicographiquement le plus petit/grand dans un sens ou dans l'autre de lecture — enfin, il suffit de faire une combinaison, les autres s'en déduisent facilement). C'est-à-dire qu'il existe des automates finis (=des ordinateurs triviaux, à mémoire réduite à un seul état parmi un ensemble fini, et dont le fonctionnement est donné par une table de transition d'un état à un autre selon le symbole consommé) qui reconnaissent si un mot donné sur x, y et z est ou n'est pas un mot réduit vérifiant les conditions supplémentaires éventuelles. (À titre d'exemple, ci-contre à droite j'ai construit le graphe de transition de l'automate déterministe de Brink & Howlett qui reconnaît le langage des mots réduits lexicographiquement les plus petits du groupe de Coxeter de mon exemple, c'est-à-dire les étiquettes de la figure de gauche en haut de cette entrée — il faut comprendre implicitement que l'état 0 est initial et que tous les états sont acceptants, un rejet étant marqué par une absence de transition. Les numéros des états n'ont pas vraiment de signification : ce sont en fait des champs de bits indiquant des ensembles de racines minimales.) L'idée clé de la démonstration est qu'en fait il n'y a qu'un nombre fini de « mauvaises » situations, c'est-à-dire qu'en vérité on construit plus naturellement un automate (non-déterministe) reconnaissant les motifs rejetés par le langage, mais la théorie des automates assure que ceci permet de construire un automate (déterministe, si on veut) reconnaissant le langage considéré ; et ceci est assuré par la finitude d'un ensemble de racines minimales.

[Graphe décrivant la table des « racines minimales »]Sur mon exemple, une racine minimale est un demi-plan hyperbolique, limité par une des droites du pavage, contenant le triangle de référence, et qui n'est contenu dans aucun autre tel demi-plan : on peut se convaincre qu'il y en a neuf. (Très exactement, si je désigne par ξ, η et ζ les demi-plans hyperboliques limités par les trois côtés x, y, z du triangle de référence et contenant celui-ci, alors les neuf racines minimales de ma figure sont [0]ξ, [1]η, [2]ζ, [3]yξ, [4]xη, [5]zη, [6]yζ, [7]xyξ et [8]xzη, l'action de x,y,z dessus étant représentée par la figure ci-contre à gauche.) Pour parler grossièrement, la finitude de l'ensemble des racines minimales assure qu'on n'a qu'un nombre fini de situations à considérer, et donc toutes sortes de propriétés d'automaticité reliées aux groupes de Coxeter. (Par exemple, si on interprète le graphe ci-contre à gauche comme un automate fini non-déterministe, quitte à ajouter des transitions spontanées de tous les états 0–8 vers l'état ‘•’, seul état entrant, à ignorer l'état ‘+’ et à marquer l'état ‘−’ et lui seul comme sortant, on obtient un automate qui reconnaît précisément les mots sur x,y,z qui ne sont pas réduits. D'autres petites transformations dans le même genre permettent de fabriquer les automates des autres langages évoqués ci-dessus.)

Il n'y a pas que la reconnaissance des langages qui soit automatique : on peut aussi fabriquer des automates finis qui « vérifient » la multiplication dans le groupe de Coxeter, c'est-à-dire qui vérifient si, disons, u·t=w, donnés u et w sous forme standardisée (par exemple, réduite lexicographiquement la plus petite), et le symbole t choisi parmi x,y,z. On ne peut pas tout à fait effectuer la multiplication par t via un automate fini, mais elle est néanmoins très très simple. Du moins il me semble : parce que je m'embrouille un peu entre la gauche et la droite (multiplier à droite par t est facile sur les mots réduits lexicographiquement les plus petits — en partant de la gauche, ce n'est pas aussi clair pour la multiplication à gauche). Je renvoie ceux qui veulent en savoir plus sur ces sujets vers le livre Combinatorics of Coxeter Groups (Springer GTM 231) d'Anders Björner & Francesco Brenti (pour une introduction générale aux groupes de Coxeter, avec une esquisse de leur automaticité dans le chapitre 4), et surtout vers plusieurs excellents articles de Bill Casselman : Automata to perform basic calculations in Coxeter groups, Computations in Coxeter groups I : Multiplication et Computations in Coxeter groups II : Constructing minimal roots.

Tout ceci se prête donc assez bien à une implémentation informatique (les précalculs nécessaires si on veut jouer avec un groupe de Coxeter quelconque sont assez complexes, mais si on fixe le groupe de Coxeter, comme celui Δ(2,4,5) de mon exemple, les calculs sont très efficaces — au moins pour la multiplication d'un côté, et peut-être des deux côtés si j'arrive à dissiper la confusion qui m'embête un peu). Ceci fournit en principe, par exemple, une façon de se repérer dans le plan hyperbolique (infini !) sur lequel on a fixé un pavage, c'est-à-dire l'équivalent le plus proche de ce que seraient les coordonnées cartésiennes dans le plan euclidien pavé par des carrés (ces dernières peuvent d'ailleurs se voir sur le groupe de Coxeter engendré par trois réflexions x, y, z vérifiant x²=y²=z²=1 avec (x·y)⁴=1, (y·z)⁴=1 et (x·z)²=1 : les mots xyzy et zyxy représentent deux translations orthogonales de même longueur qu'il est possible de composer). C'est plus ou moins ce principe (l'automaticité des pavages) qu'utilise le jeu HyperRogue dont j'ai déjà parlé par le passé pour référencer son monde, à ceci près qu'il fabrique un automate de façon ad hoc et pas selon la construction générale de ceux associés aux groupes de Coxeter, mais cela revient essentiellement au même.

Je cherche maintenant à faire le lien avec les entrées précédentes. Dans mon jeu de labyrinthe hyperbolique, j'avais voulu rendre le monde fini : de même qu'on peut rendre fini le monde euclidien en faisant des identifications cycliques des coordonnées cartésiennes (m dans un sens, n de l'autre), c'est-à-dire en remplaçant ℤ⊕ℤ par son quotient fini (ℤ/mℤ)⊕(ℤ/nℤ), ceci se fait en cherchant un quotient fini[#] du groupe de Coxeter Δ(2,4,5), ou plus exactement de son sous-groupe d'indice deux Δ⁰(2,4,5) constitué des transformation préservant l'orientation (concrètement, les mots de longueur paire). Dans la version initiale de mon jeu (celle ici), j'avais choisi le groupe PSL(2,89) (des matrices 2×2 de déterminant 1 modulo ±1 sur le corps des entiers modulo 89), qui a 352440 éléments (conduisant à ¼·352440 = 88110 cellules dans mon labyrinthe) : celui-ci est un peu compliqué à décrire. Puis, dans la version jouet de mon labyrinthe (ici), pour explorer la signification de cette périodicité, j'ai pris un groupe beaucoup plus petit, le groupe symétrique 𝔖₅ sur cinq objets. La situation est alors facile à décrire : j'envoie les éléments xy, yz et xz de Δ⁰(2,4,5) sur les éléments (2 3 5 4 1), (4 3 2 1) et (4 5) de 𝔖₅ respectivement (bien sûr, (2 3 5 4 1) est la permutation qui envoie 2, 3, 5, 4 et 1 chacun sur le suivant cycliquement dans cet ordre) : autrement dit, j'identifie deux triangles blancs lorsque les mots sur x,y,z qui les étiquettent, interprétés comme composés de permutations selon ce morphisme, donnent la permutation triviale. Comme 𝔖₅ a 5!=120 éléments, on obtient un monde (la surface de Bring) qui a 120 triangles blancs, c'est-à-dire ¼·120 = 30 cellules carrées (chacune constituée de 4 triangles blancs et autant de noirs).

[#] Techniquement, il n'est pas nécessaire de trouver un quotient fini qui soit un groupe, i.e., un quotient par un sous-groupe distingué : on peut se contenter d'une action fidèle et transitive sur un ensemble pointé fini, i.e., un quotient par un sous-groupe d'indice fini quelconque ; mais l'un fournit de toute façon l'autre, puisque l'action se factorise par un groupe de permutation qui est fini ; on peut donc se dire qu'on cherche de toute façon un groupe quotient fini. En termes galoisiens, ceci signifie que la surface de Riemann, vue comme revêtement ramifié de la sphère de Riemann, peut toujours être supposée être un revêtement galoisien sur elle, quitte à la remplacer par sa clôture normale=galoisienne.

[Domaine fondamental dans le plan hyperbolique]Ce que j'ai tenté de faire dans les quelques dernières entrées, c'est essentiellement de comprendre le noyau du morphisme Δ⁰(2,4,5) → 𝔖₅, c'est-à-dire le groupe des mouvements du pavage hyperbolique qui « reviennent au départ » dans le monde de mon labyrinthe-jouet (=la surface de Bring). C'est ça qu'on appelle le groupe fondamental de la situation, ou du moins, c'est une façon de décrire[#2] ce groupe fondamental. Quand je dis comprendre le noyau de Δ⁰(2,4,5) → 𝔖₅, c'est plus exactement le présenter, c'est-à-dire donner un ensemble d'éléments qui l'engendrent (concrètement, un ensemble de façons de « faire le tour » du monde-jouet en revenant au point de départ qui permettent de décrire n'importe quelle façon d'en faire le tour comme succession de ces actions) et des relations entre ces éléments (c'est-à-dire des successions de « tours » qui reviennent à ne rien faire, non seulement dans le monde-jouet mais même dans le plan hyperbolique infini / non périodisé). En choisissant un domaine fondamental, c'est-à-dire un ensemble de triangles élémentaires représentant tous ceux du monde-jouet (une et une seule fois) et en donnant des étiquettes à ses sommets (reproduites ci-contre à gauche), j'ai pu donner des générateurs de ce groupe fondamental. Pour être très précis, j'ai calculé que ces générateurs, si je reprends la même convention que l'autre fois (u₁ représente le chemin gris → bleu-clair → vert-foncé → rouge-clair → gris, etc.), peuvent être définis par les éléments suivants de Δ⁰(2,4,5) (en prenant pour base le triangle dont le sommet d'angle π/4 est au sommet gris et l'hypoténuse y selon le côté gris-bleu-clair) :

— les mouvements ci-contre représentent donc des façons de revenir au point-base (sommet gris) à partir de lui-même, et tout autre mouvement de ce type peut s'écrire comme composée des mouvements élémentaires en question. Algébriquement, si on remplace xy, yz et xz (et leurs inverses yx, zy et zx) par les permutations (2 3 5 4 1), (4 3 2 1) et (4 5) de cinq éléments (et leurs inverses), chacun de ces mots s'évalue en la permutation triviale, et tout mot de longueur pair qui s'évalue ainsi peut s'écrire comme composée de u₁,v₁,u₂,v₂,u₃,v₃,u₄,v₄. De plus, la relation essentiellement unique entre ces générateurs est que u₁·v₂·u−1·v−1·u₂·v₃·u−1·v−1·u₃·v₄·u−1·v−1·u₄·v₁·u−1·v−1 = 1 (ceci est bien vrai dans Δ⁰(2,4,5), donc, et pas seulement sur les images dans 𝔖₅), correspondant au fait de parcourir tout le bord du polygone.

[#2] En général, le groupe fondamental d'une surface de Riemann se voit comme des lacets partant d'un point-base et y revenant, ou de façon équivalente comme des isométries (hyperboliques en genre g≥2) qui ramènent le point-base à lui-même avec la même direction. (En fait, ils ramènent alors tout point à lui-même : si on veut, le changement de point-base n'affecte pas l'isométrie mais le revêtement fondamental lui-même.) Comme ma surface de Bring est compatible avec un pavage hyperbolique, je peux voir ces isométries dans le groupe de Coxeter associé au pavage (modulo le choix d'un triangle de référence) et donc les traiter de façon discrète.

Maintenant, une spécificité de la surface que je considère (due au fait que je l'ai défini au moyen d'un morphisme de groupes depuis Δ⁰(2,4,5) et pas juste une action sur un ensemble pointé, cf. la note ci-dessus) est que les mêmes mouvements peuvent servir à « revenir au départ » à partir de n'importe quel triangle de la surface choisi comme triangle de référence : si j'effectue les mêmes mouvements u₁,v₁,u₂,v₂,u₃,v₃,u₄,v₄ à partir du point central du polygone représenté ci-dessus, ou plus exactement, à partir du triangle de référence dont l'angle de π/4 est au centre du polygone, le côté x étant sur le bord inférieur du carré central de la figure, plutôt qu'à partir de son sommet gris, on arrive au point central d'un des polygones adjacents (colorés sur ma figure) : ainsi, le mouvement u₁ nous fait traverser le bord jaune-foncé-rouge-clair situé vers le bas du polygone (et arriver au centre du polygone identique qui se trouve de l'autre côté de ce bord), v₁ fait traverser le bord rouge-clair-bleu-sombre situé vers la gauche, u₂ fait traverser le bord rouge-sombre-bleu-clair situé vers la gauche, v₂ fait traverser le bord bleu-clair-vert-foncé situé vers le haut, et ainsi de suite. Ceci fournit donc une autre façon de se figurer le même groupe fondamental : on a 32 mouvements hyperboliques consistant à traverser une des 32 arêtes du 32-gone qui me sert de domaine fondamental (et aller au centre du 32-gone qui est de l'autre côté, qui est situé, si j'ai bien fait mon calcul, à environ 5.6779209219, 5.0450749696 ou 4.7264390633 unités naturelles de distance du point de départ selon le type d'arête traversée), ces 32 mouvements peuvent se décrire comme (en partant de l'arête gris-bleu-clair située en haut et en tournant dans le sens trigonométrique) : v₂·u₁·v−1·u−1, v₂, v₂·u−1, u−1, v−1, u₂·v−1, u₂, u₂·v₃·u−1·v−1, v₁·u₄·v−1·u−1, v₁, v₁·u−1, u−1, v−1, u₁·v−1, u₁, u₁·v₂·u−1·v−1, v₄·u₃·v−1·u−1, v₄, v₄·u−1, u−1, v−1, u₄·v−1, u₄, u₄·v₁·u−1·v−1, v₃·u₂·v−1·u−1, v₃, v₃·u−1, u−1, v−1, u₃·v−1, u₃, u₃·v₄·u−1·v−1 — et les relations entre ces générateurs (c'est-à-dire celles qui sont évidentes sur la façon dont je les ai écrites, plus la relation essentielle écrite plus haut) se voient comme des façons de tourner autour des différents sommets du polygone.

Voici une note essentiellement pour moi-même si je relis cette entrée, mais qui peut intéresser les lecteurs plus avertis : les deux points de vue que je viens d'exposer (voir les générateurs du groupe fondamental comme des façons de partir du sommet gris et de parcourir les arêtes du polygone, ou comme des façons de traverser les arêtes du polygone depuis son centre pour aller au centre des polygones adjacents) ne sont pas équivalents (c'est-à-dire qu'ils ne sont pas reliés par un simple changement de point-base du groupe fondamental). C'est là une source de confusion redoutable dans laquelle je suis évidemment tombé. Pour comprendre la relation exacte, il faut s'apercevoir que la conjugaison par l'élément yzyx de Δ⁰(2,4,5) (lequel n'est pas dans le noyau du morphisme vers 𝔖₅ !, il s'agit du mouvement qui avance d'un pas du pavage) définit un automorphisme extérieur du noyau, à savoir celui qui envoie u₁,v₁,u₂,v₂,u₃,v₃,u₄,v₄ respectivement sur v−1,v−1,v₂·u−1·u−1,v₂·u₁·v−1·u−1,u₃·v₄·u−1·v−1,u₃·v−1·v−1,u−1,u−1. C'est le cube de cet automorphisme (ou de son inverse, selon le point de vue) qui relie les deux descriptions du groupe fondamental (parce que cela correspond à avancer de trois pas, du centre du polygone au sommet gris, à effectuer un mouvement à partir de celui-ci, et à reculer de trois pas jusqu'au centre). On a bien sûr aussi un automorphisme extérieur (celui qui permute cycliquement les indices 1,2,3,4 sur les générateurs u et v) défini par la conjugaison par yz. Ces deux automorphismes fournissent la fonctorialité sur le groupe fondamental du groupe des symétries de la surface (en voyant ce dernier comme 𝔖₅, c'est simplement l'action par conjugaison du quotient sur le noyau).

[Schéma illustrant le groupe fondamental d'une surface]Pour finir, j'avais calculé une autre présentation du même groupe fondamental (par les générateurs a₁ = v₁·u₄·v−1, b₁ = v₂·u₁, a₂ = v₂·u₁·v−1, b₂ = v₃·u₂, a₃ = v₃·u₂·v−1, b₃ = v₄·u₃, a₄ = v₄·u₃·v−1, b₄ = v₁·u₄), dont le but était que la relation essentiellement unique entre les générateurs prenne la forme de la relation « standard » a₁·b₁·a−1·b−1 · a₂·b₂·a−1·b−1 · a₃·b₃·a−1·b−1 · a₄·b₄·a−1·b−1 = 1 (produit des commutateurs des a et des b) qui identifie la surface à un tore à quatre trous. (La figure toute pourrie ci-contre à droite est censée illustrer cette relation : j'ai dû la faire à la main parce que, bizarrement, je n'ai pas trouvé mieux en ligne, ce qui est un peu bizarre pour un dessin qui a dû être fait dans mille et un cours de topologie.) Si on effectue successivement les mouvements décrits par a₁, b₁, a−1, b−1, a₂, etc., avec les expressions ci-dessus (et en se représentant à chaque fois le point comme sommet d'angle π/4 d'un triangle de référence), on obtient un domaine fondamental de la surface qui est un 16-gone, dont j'ai calculé la forme précise parce que je voulais savoir si elle serait tordue (elle l'est). Précisément, les longueurs de ses côtés sont alternativement 5.8132409141 et 7.1501354848 unités naturelles de distance pour les côtés de type a et b respectivement, les angles sont successivement 0.0376583650, 0.3686795271, 0.2039931060 et 0.9604653287 radians — motif répété 4 fois — en partant de l'origine ; si on préfère, on peut aussi obtenir les sommets en traçant à partir d'un point central des points à distance 8.4544389257, 6.1480087884, 4.1975926675, 3.1838251857 — motif répété 4 fois — et formant entre eux, vus depuis ce centre, des angles de 0.0243115480 (pour un côté a), 0.4064064091 (pour un côté b), 0.9444019403 (pour un côté a−1), et 0.1956764294 (pour un côté b−1). Bref, la surface de Bring peut se construire en prenant le 16-gone dont je veins de décrire la forme, en étiquetant ses arêtes par les lettres de la relation standard (a₁, b₁, a−1, b−1, a₂, etc.) et en identifiant (à l'orientation près) les arêtes étiquetées ai et ai−1 pour chaque i, et de même bi et bi−1 — tout ceci permettant (mais certainement pas de façon unique !) de visualiser la surface comme un tore à 4 trous.

Il faudrait donc tracer le 16-gone hyperbolique que je viens de décrire, si possible en le superposant au pavage, histoire de visualiser la manière dont les choses se recollent (j'avoue que cette forme n'est pas terriblement intelligible pour moi), mais je n'ai pas d'outil sous la main pour la tracer facilement.

↑Entry #2254 [older|newer] / ↑Entrée #2254 [précédente|suivante]

Recent entries / Entrées récentesIndex of all entries / Index de toutes les entrées