Coxeter
Le traitement de l'ordre de Bruhat sur le groupe est déterminant pour toutes les questions de polynômes de Kazhdan-Lusztig. La comparaison de deux éléments donnés ne pose pas de problème, comme on le rappelle ici. Mais pour effectuer ces comparaisons de façon massive, il faut utiliser d'autres moyens.
Dans notre implémentation, un groupe de Coxeter possède toujours une partie énumérée; c'est une partie finie P du groupe, qui est un idéal d'ordre pour l'ordre de Bruhat (cela signifie que si y appartient à P, et x <= y, alors x appartien à P), numérotée de façon croissante pour l'ordre de Bruhat, et pour laquelle on a tabulé les informations suivantes:
Au départ du programme, la partie énumérée est réduite au seul élément neutre e du groupe. Nous avons donné dans [1] un algorithme purement combinatoire, qui étant donnés une partie énumérée P et un élément y de W n'appartenant pas à P, permet d'énumérer le plus petit idéal d'ordre contenant P et y (qui est simplement la réunion de P et de l'intervalle [e,y]), et d'étendre à ce nouvel idéal les tables ci-dessus. Cet algorithme permet aussi de déterminer de façon raisonnablement efficace le bitmap représentant l'intervalle [e,y], pour un y quelconque dans P; cette extraction est l'un des piliers des calculs de Kazhdan-Lusztig.
En fait, les fonctions concernant l'ordre de Bruhat sont utilisées surtout de façon interne, et ne sont pas facilement accessibles pour l'utilisateur. L'étude purement combinatoire de l'ordre de Bruhat est un sujet fascinant, qui mériterait sans doute un programme (beaucoup plus élémentaire) pour lui-même; Coxeter ne contient malheureusement pas actuellement les fonctions, telles que l'extraction d'un intervalle de Bruhat entre deux éléments donnés, qu'on aurait pu souhaiter. Peut-être dans l'avenir?
[1] | Computing Kazhdan-Lusztig Polynomials for Arbitrary Coxeter Groups, Experiment. Math. 11:3 (2002), pp. 387-397 |