• Aucun résultat trouvé

2.4 Algorithmes de calcul d’homologie

2.4.1 Méthode de forme normale de Smith

Contrairement aux groupes fondamentaux, il y a un algorithme bien défini pour calculer les groupes d’homologie d’un complexe arbitraire X, origina- lement due à Poincaré, appelé l’algorithme de réduction. En addition aux groupes eux-mêmes, l’algorithme de réduction calcule la base pour chaque groupe d’homologie : un ensemble de q-cycles dont les classes d’homologie génèrent Hq(X). L’algorithme de réduction de Poincaré est actuellement équi- valent à un algorithme publié avant les quatre dernier décennies par Smith pour calculer une forme normale d’une matrice d’entiers. L’algorithme de Smith est une variante de l’algorithme d’élimination de Gaussien standard, qui a été découvert par les mathématiciens chinois.

Soit diag(d1, d2,..., dm) est la matrice carrée m × m avec les entiers d1, d2,..., dm le long du diagonale, et des zéros autrement. La forme normale de Smith d’une matrice d’entiers M de taille r×c est la matrice du produit S ˜M T = M , où S est une matrice d’entiers invertible r × r, T est une matrice d’entiers invertible c × c, et ˜M est une matrice d’entiers r × c de la forme [30].

˜

M =· diag(d1, d2,..., dm) 0

0 0

¸

où chaque entier di divise son successeur di+1. En particulier, les matrices M et ˜M ont les deux le rang m. L’algorithme de réduction pour calculer la forme normale de Smith modifie la matrice en utilisant les opérations élémentaires de lignes et de colonnes suivantes:

(1) échanger deux lignes où colonnes; (2) multiplier une ligne où colonne quelconque par -1; (3) additionner une multiplication entière d’une ligne où colonne à une autre. Si nous voulons calculer les matrices S et T , nous débu- tons avec les matrices d’identité de S et T , modifions S à chaque opération de ligne, et modifions T à chaque opération de colonne. Cependant, nous avons besoin uniquement de matrice ˜M . Finalement, l’algorithme de Poin- caré calcule les groupes Bq, Zq, et Hq par réduire chaque matrice de frontière ∂q à sa forme normale de Smith Sq∂qTq. Supposons que chaque matrice ˜˜ ∂q a mqentrées diagonales non zéros dq1|dq2|...|dqmq. Alors, nous pouvons exprimer les groupes de frontière, de cycle, et d’homologie comme suit:

   Zq= Znq−mq Bq= Zmq+1 Hq ∼= Znq−mq−mq+1 ⊕Lmq+1 i=1 (Z/dqiZ)

Si dqi = 1, le groupe correspond Z/dqiZest trivial et peut donc être supprimé de la décomposition de somme directe de Hq. Les cellules de dimension q (par

exemple, q-simplexes orientés) dans X définissent une base pour le groupe à chaînes Cq(X) et la matrice de frontière ∂q exprime l’homomorphisme de frontière linéaire en ce qui concerne les bases standards de Cq−1et Cq. Chaque opération élémentaire de ligne ou de colonne correspond à un changement de base dans Cq−1 et Cq, respectivement. L’échangement de deux lignes où de deux colonnes consiste à échanger les indices des deux éléments de la base. La multiplication d’une ligne où d’une colonne par -1 inverse l’orientation d’un élément de frontière. Si ei et ej sont les i-ième et j-ième éléments de la base de Cq, alors, l’addition de la colonne i à la colonne j aussi revient a remplacer ej avec un nouveau élément de base ei+ ej. Finalement, si ˆei et ˆej sont les i-ième et j-ième éléments de la base de Cq−1, alors, l’addition de la ligne i à la ligne j revient a remplacer ˆei avec un nouveau élément de base

ˆ ei- ˆej.

Soient {e1,e2,...,enq} et {f1,f2,...,fnq−1} être deux bases pour Cq et Cq−1 res- pectivement, quand l’algorithme de réduction se termine. Ainsi, {e1,e2,...,enq} est une base pour l’espace de colonnes de ˜∂q, et {f1,f2,...,fnq−1} est une base pour l’espace de lignes de ˜∂q. Les éléments de la base de colonnes emq+1,...,enq comprend une base pour le groupe des cycles Zq, et les éléments de la base de lignes escaladés d1f1,...,dmqfmq comprend une base pour le groupe des frontières Bq−1. Avec une attention additionnelle, nous pouvons assurer que la base pour chaque groupe de frontières Bq est un sous-ensemble de la base du groupe de cycles Zq correspondant, avec possible exception pour quelques coefficients de torsion non trivial dmq > 1. Ainsi, nous pouvons facilement obtenir une base pour chaque groupe d’homologie Hq, où chaque q-cycle est une base pour un des facteurs de sa décomposition de somme directe.

Fig. 2.7 – Matrice de la forme normale de Smith.

L’algorithme standard pour calculer la forme normale de Smith nécessite O(n2

) opérations élémentaires de ligne et de colonne, dont chacune néces- site exactement O(n) opérations arithmétiques, où n = r + c. Ainsi, l’algo- rithme de réduction est souvent rapporter à s’exécuter incorrectement dans la complexité temporelle O(n3

). Malheureusement, les entiers dans la ma- trice peuvent s’augmenter largement tant que l’algorithme est en exécution; comme résultat, l’implémentation directe de l’algorithme de Smith a une complexité temporelle exponentielle double. Le premier algorithme de com- plexité polynomial pour calculer la forme normale de Smith d’une matrice d’entiers a été décrit par Kannan et Bachem [52]; des algorithmes ont été descrit par Iliopoulos [48], et Storjohann [80, 81]; voir aussi une étude de litérature réalisée par Dumas et al. [24].

Exemple de réduction [30]: On peut maintenant utiliser l’algorithme de reduction précédent pour calculer l’homologie d’un petit complexe simplicial. Nous Considérons la frontière du 3-simplexe standard ∆3 comme une trian- gulation orientée de la sphère S2, avec les sommets {w,x,y,z}. Nous pouvons

arbitrairement orienter les simplexes ou cellules de ce complexe comme suit: sommets : {w,x,y,z}

aretes : {wx,wy,wz,xy,xz,yz} triangles : {wxy,wxz,wyz,xyz}

Les homomorphismes de frontière ∂1 et ∂2 sont représentés par les deux matrices suivantes: ∂1 w x y z wx -1 1 0 0 wy -1 0 1 0 wz -1 0 0 1 xy 0 -1 1 0 xz 0 -1 0 1 yz 0 0 -1 1 ∂2 wx wy wz xy xz yz wxy 1 -1 0 1 0 0 wxz 1 0 -1 0 1 0 wyz 0 1 -1 0 0 1 xyz 0 0 0 1 -1 1

Pour réduire ∂1, nous supprimons premièrement la première colonne par ad- ditionner les deuxième, troisième, quatrièmme colonnes, et échanger la co- lonne vide à la droite. Puis, nous débarassons des trois dernières lignes par additionner et/où les trois premières lignes.

∂1 7→ x − w y − w z − w w wx 1 0 0 0 wy 0 1 0 0 wz 0 0 1 0 xy -1 1 0 0 xz -1 0 1 0 yz 0 -1 1 0 7→ ˜ ∂1 x − w y − w z − w w wx 1 0 0 0 wy 0 1 0 0 wz 0 0 1 0 xy + wx − wy 0 0 0 0 xz + wx − wz 0 0 0 0 yz + wy − wz 0 0 0 0

À partir de la matrice réduite ∂1, nous pouvons maintenant lire m1 = 3 et d1 = d2 = d3 = 1. De plus, nous avons les bases suivantes pour Z1 et B0:

Z1 = hxy + wx − wy,xz + wx − wz,yz + wy − wzi ∼= Z3 B0 = hx − w,y − w,z − wi = h∂wx,∂wy,∂wzi ∼= Z3

Similairement, pour réduire ∂2, nous appliquons premièrement les opérations de colonnes pour réduire la matrice à la forme de bas échelon, puis appliquer

les opérations de lignes pour obtenir la forme normale de Smith. Dans cet exemple, les opérations de colonnes que nous appliquons sont les inverses des opérations de lignes que nous utilisons pour réduire ∂1, afin que nous finissons avec la même base pour le groupe à chaînes C1.

∂2 7→ xy + wx − wy xz + wx − wz yz + wy − wz wx wy wz wxy 1 0 0 0 0 0 wxz 0 1 0 0 0 0 wyz 0 0 1 0 0 0 xyz 1 -1 1 0 0 0 7→ ˜ ∂2 xy + wx − wy xz + wx − wz yz + wy − wz wx wy wz wxy 1 0 0 0 0 0 wxz 0 1 0 0 0 0 wyz 0 0 1 0 0 0 xyz − wxy + wxz −wyz 0 0 0 0 0 0

Aussi, nous pouvons lire m2 = 3 et d1 = d2 = d3 = 1 de la matrice réduite ˜

∂2. De plus, nous avons les bases suivantes pour Z2 et B1: Z2 = hxyz − wxy + wxz − wyzi ∼= Z

B1 = hwx − wy + xy,wx − wz + xz,wy − wz + yzi = h∂wxy,∂wxz,∂wyzi ∼= Z3 A noter que B1 et Z1 sont générés par le même ensemble des 1-cycles, et ainsi sont identiques comme groupes. Nous concluons que la sphère ∂∆3 a exactement l’homologie mentionnée par les groupes suivants:

H0 = C0/B0 = hw,x,y,zi/hx − w,y − w,z − wi = hwi ∼= Z H1 = Z1/B1 = Z1/Z1=φ

H2 = Z2 = hxyz − wxy + wxz − wyzi ∼= Z

Documents relatifs