- Théorème de Kirchhoff
-
Dans le domaine de la théorie des graphes, le théorème de Kirchhoff, aussi appelé matrix-tree theorem, nommé d'après le physicien Gustav Kirchhoff, est un théorème donnant le nombre exact d'arbres couvrants pour un graphe quelconque. C'est une généralisation de la formule de Cayley qui donnait ce résultat pour les graphes complets.
Sommaire
Théorème de Kirchhoff
Le théorème de Kirchhoff s'appuie sur la notion de matrice laplacienne, définie elle-même comme la différence entre la matrice des degrés et la matrice d'adjacence du graphe.
Concrètement, pour un graphe G = (V,E) où , la matrice laplacienne est définie par:
Alors, le nombre t(G) d'arbres couvrants du graphe G est égal, au signe près, à la valeur de n'importe quel cofacteur de L.
Un exemple
On calcule d'abord la matrice laplacienne de ce graphe:
On supprime n'importe quelle ligne et n'importe quelle colonne de la matrice:
Ainsi, .Remarques
- Si le graphe de départ n'est pas connexe, alors la matrice laplacienne sera diagonale par bloc. En supprimant une ligne et une colonne, il y aura au moins une composante connexe pour laquelle aucune colonne n'aura été supprimée. La somme des colonnes de cette composante est alors nulle, donc tout cofacteur est nul. On retrouve bien le fait que seuls les graphes connexes ont des arbres couvrants.
- Ce théorème permet de donner une démonstration rapide de la formule de Cayley. Cette dernière indique que le graphe complet Kn possède nn − 2 arbres couvrants. La matrice laplacienne est une matrice de la forme:
On peut par exemple supprimer la première ligne et la première colonne, on obtient donc une matrice de la forme:
On effectue alors l'opération suivante: pour :
Puis, :
Ainsi, en développant par rapport à la première ligne, on obtient le résultat.
Démonstration
Étape 1
Soit D une orientation quelconque de G, et M la matrice d'incidence associée: si G a n nœuds et m arêtes, alors M est une matrice à n lignes et m colonnes dont le terme général est défini par:
Calculons le terme général de M * = MMt: il correspond au produit scalaire de deux lignes de M. Si i = j, alors compte 12 pour des arêtes sortant de vi et ( − 1)2 pour des arêtes arrivant à vi, donc . Si , alors mi,j = − 1 si une arête relie vi à vj, indépendamment de la direction, et 0 sinon.On a donc: L = MMt
Étape 2
On ne considère que les graphes connexes, ce qui assure . On considère alors B une sous matrice carrée de M.
Le sous graphe correspondant à B contient donc n nœuds et n − 1 arêtes, donc soit c'est un arbre couvrant, soit il contient un cycle. S'il contient un cycle, alors la somme des colonnes correspondantes dans B sera nulle, et donc le déterminant de B sera nul lui aussi.
S'il ne contient pas de cycle, c'est un arbre couvrant T, qui contient au moins deux feuilles. B a donc au moins une ligne correspondant à une feuille, donc une ligne contenant n − 2 termes nuls et un terme égal à 1 ou − 1. En développant le déterminant de B par rapport à cette ligne, on obtient donc une relation de récurrence sur le nombre de nœuds n du graphe. Si le graphe a un seul nœuds, B est matrice vide de déterminant 1 par convention, donc quelle que soit la valeur de n, si B représente un arbre couvrant T, , et sinon, det(B) = 0.
Étape 3
On obtient M * en supprimant une ligne quelconque de M. Le déterminant de M * (M * )t est donc un cofacteur de L, au signe près. Par la Formule de Binet-Cauchy, on obtient:
où représente les sous-matrices de M * . D'après l'étape 2, les termes de la somme valent 1 pour chaque arbre couvrant, et 0 sinon, ce qui termine la démonstration.
Voir aussi
Références
- Combinatorics and Graph Theory (Undergraduate Texts in Mathematics)- de John M. Harris, Jeffry L. Hirst, Michael J. Mossinghoff. Springer; 2nd ed. edition (September 19, 2008).
Catégorie :- Structure de données en théorie des graphes
Wikimedia Foundation. 2010.