Avertissement

Ce contenu a été généré par une intelligence artificielle (LLM) et peut contenir des imprécisions ou des erreurs malgré notre relecture attentive. Il s'agit d'un outil d'apprentissage et non d'une référence académique.

Si vous constatez des erreurs, merci de nous les signaler via la page "À propos".

Chaînes, parcours, cycles et tours - preuves (A)

Lemme de réduction : Du parcours à la chaîne

Prouvez que si, dans un graphe GG, il existe un parcours reliant deux sommets xx et yy, alors il existe nécessairement une chaîne (parcours à sommets distincts) reliant xx et yy.

Indice

Considérez l'ensemble de tous les parcours reliant xx à yy. Si un parcours contient des sommets répétés, peut-on le raccourcir ? Raisonnez sur la longueur minimale.

Solution

Soit PP un parcours reliant xx à yy.

Étape 1 : Considérer le parcours de longueur minimale

Parmi tous les parcours existants reliant xx à yy (il en existe au moins un par hypothèse), choisissons-en un, noté μ=(s0,s1,,sk)\mu = (s_0, s_1, \dots, s_k), dont la longueur kk est minimale. Ici s0=xs_0 = x et sk=ys_k = y.

Étape 2 : Raisonnement par l'absurde sur la répétition des sommets

Supposons que μ\mu ne soit pas une chaîne. Par définition, cela signifie que tous ses sommets ne sont pas distincts.

Il existe donc deux indices ii et jj avec 0i<jk0 \leq i < j \leq k tels que si=sjs_i = s_j.

Étape 3 : Construction d'un parcours plus court

Puisque si=sjs_i = s_j, le parcours fait une "boucle" entre l'étape ii et l'étape jj. Nous pouvons supprimer cette section.

Construisons le nouveau parcours μ\mu' en "court-circuitant" la boucle :

μ=(s0,,si,sj+1,,sk)\mu' = (s_0, \dots, s_i, s_{j+1}, \dots, s_k).

Notez que sis_i est directement relié à sj+1s_{j+1} dans μ\mu' uniquement si j=ij=i, ce qui est impossible ici car i<ji<j. Plus précisément, la suite devient la concaténation de la section de s0s_0 à sis_i et de la section de sjs_j (qui est égal à sis_i) à sks_k.

La longueur de μ\mu' est k(ji)k - (j - i). Comme i<ji < j, on a ji1j - i \geq 1, donc la longueur de μ\mu' est strictement inférieure à kk.

Conclusion

Nous avons construit un parcours μ\mu' reliant xx à yy strictement plus court que μ\mu. Cela contredit l'hypothèse que μ\mu était de longueur minimale.

Par conséquent, le parcours de longueur minimale ne peut pas contenir de sommets répétés. C'est donc une chaîne.

Transitivité de la relation de connexité

Prouvez que la relation "être relié à" est transitive. C'est-à-dire : si xx est relié à yy et yy est relié à zz, alors xx est relié à zz.

Indice

Utilisez la définition d'un parcours (une suite de sommets adjacents). Si vous avez un chemin de xx à yy et un autre de yy à zz, comment pouvez-vous construire un chemin de xx à zz ? Pensez à la concaténation.

Solution

Soient x,y,zx, y, z trois sommets du graphe GG.

Étape 1 : Existence des parcours initiaux

Puisque xx est relié à yy, il existe un parcours P1=(u0,u1,,um)P_1 = (u_0, u_1, \dots, u_m) tel que u0=xu_0 = x et um=yu_m = y.

Puisque yy est relié à zz, il existe un parcours P2=(v0,v1,,vk)P_2 = (v_0, v_1, \dots, v_k) tel que v0=yv_0 = y et vk=zv_k = z.

Étape 2 : Concaténation (Mise bout à bout)

Observons que l'extrémité de P1P_1 est l'origine de P2P_2 (um=v0=yu_m = v_0 = y).

Nous pouvons définir une nouvelle suite de sommets PtotalP_{total} en mettant P2P_2 à la suite de P1P_1 :

Ptotal=(u0,u1,,um1,um,v1,v2,,vk)P_{total} = (u_0, u_1, \dots, u_{m-1}, u_m, v_1, v_2, \dots, v_k).

(Note : on ne répète pas yy deux fois dans la liste des sommets, on fusionne le point de jonction).

Étape 3 : Vérification de la validité

  • Pour la première partie (u0,,um)(u_0, \dots, u_m), chaque paire consécutive est une arête car P1P_1 est un parcours valide.
  • Pour la seconde partie (um,v1,,vk)(u_m, v_1, \dots, v_k), rappelons que um=v0u_m = v_0. Donc la paire {um,v1}\{u_m, v_1\} est l'arête {v0,v1}\{v_0, v_1\} de GG. Les paires suivantes sont aussi des arêtes car P2P_2 est valide.

Conclusion

La suite PtotalP_{total} est un parcours valide commençant par u0=xu_0 = x et finissant par vk=zv_k = z. Donc xx est relié à zz.

Connexité et Partition (Théorème 7.5)

Soit G=(S,A)G=(S, A) un graphe. Prouvez que si GG est connexe, alors pour toute partition de l'ensemble des sommets SS en deux ensembles non vides UU et VV (UV=SU \cup V = S et UV=U \cap V = \emptyset), il existe au moins une arête reliant un sommet de UU à un sommet de VV.

Indice

Raisonnez par l'absurde. S'il n'y avait aucune arête entre UU et VV, pourrait-on aller d'un point uUu \in U à un point vVv \in V ?

Solution

Hypothèse : GG est connexe. SS est partitionné en UU et VV non vides.

Étape 1 : Raisonnement par l'absurde

Supposons qu'il n'existe aucune arête reliant un sommet de UU à un sommet de VV. Cela signifie que pour tout uUu \in U et vVv \in V, {u,v}A\{u, v\} \notin A.

Étape 2 : Utilisation de la connexité

Choisissons un sommet arbitraire xUx \in U et un sommet arbitraire yVy \in V (possible car les ensembles sont non vides).

Comme GG est connexe, il existe un parcours (s0,s1,,sk)(s_0, s_1, \dots, s_k) reliant xx à yy (avec s0=xs_0 = x et sk=ys_k = y).

Étape 3 : Analyse du parcours

Puisque le parcours commence dans UU (s0Us_0 \in U) et finit dans VV (skVs_k \in V), il doit y avoir un moment où le parcours "saute" de l'ensemble UU à l'ensemble VV.

Mathématiquement, il doit exister un indice ii tel que siUs_i \in U et si+1Vs_{i+1} \in V.

Or, {si,si+1}\{s_i, s_{i+1}\} est une arête du parcours, donc une arête du graphe.

Conclusion

L'existence de l'arête {si,si+1}\{s_i, s_{i+1}\} contredit notre hypothèse de départ (qu'il n'y a pas d'arête entre UU et VV).

Il est donc nécessaire qu'il existe au moins une arête entre UU et VV.

Inégalité triangulaire pour la distance dans un graphe

Prouvez que pour tout triplet de sommets x,y,zx, y, z d'un graphe connexe GG, la distance satisfait :

dG(x,z)dG(x,y)+dG(y,z)d_G(x, z) \leq d_G(x, y) + d_G(y, z).

Indice

La distance est définie comme la longueur du plus court chemin. Si vous mettez bout à bout le chemin optimal de xx à yy et celui de yy à zz, que pouvez-vous dire de la longueur de ce nouveau chemin par rapport à dG(x,z)d_G(x, z) ?

Solution

Étape 1 : Définition des chemins optimaux

Soit PxyP_{xy} une chaîne de longueur minimale reliant xx à yy. Sa longueur est L(Pxy)=dG(x,y)L(P_{xy}) = d_G(x, y).

Soit PyzP_{yz} une chaîne de longueur minimale reliant yy à zz. Sa longueur est L(Pyz)=dG(y,z)L(P_{yz}) = d_G(y, z).

Étape 2 : Construction d'un chemin candidat

En concaténant PxyP_{xy} et PyzP_{yz} au point yy, nous formons un parcours PxzP_{xz} reliant xx à zz.

La longueur de ce parcours concaténé est exactement la somme des longueurs :

L(Pxz)=dG(x,y)+dG(y,z)L(P_{xz}) = d_G(x, y) + d_G(y, z).

Étape 3 : Comparaison avec la distance

Par définition, la distance dG(x,z)d_G(x, z) est la longueur du plus court parcours possible entre xx et zz.

Le parcours PxzP_{xz} que nous venons de construire est un chemin possible, mais pas nécessairement le plus court.

Par conséquent, la distance réelle doit être inférieure ou égale à la longueur de ce candidat :

dG(x,z)L(Pxz)d_G(x, z) \leq L(P_{xz}).

Conclusion

En substituant la longueur, on obtient :

dG(x,z)dG(x,y)+dG(y,z)d_G(x, z) \leq d_G(x, y) + d_G(y, z).

Puissances de la matrice d'adjacence

Soit AGA_G la matrice d'adjacence d'un graphe GG. Prouvez que le coefficient (AGk)ij(A_G^k)_{ij} est égal au nombre de parcours de longueur exactement kk reliant le sommet ii au sommet jj.

Indice

Utilisez un raisonnement par récurrence sur la longueur kk.

Pour l'hérédité (kk+1k \to k+1), rappelez-vous de la définition du produit matriciel : (M×N)ij=pMipNpj(M \times N)_{ij} = \sum_p M_{ip} N_{pj}. Interprétez cette somme en termes de parcours.

Solution

Procédons par récurrence sur kk.

Étape 1 : Cas de base (k=1k=1)

(AG1)ij=(AG)ij(A_G^1)_{ij} = (A_G)_{ij}.

Par définition de la matrice d'adjacence, ce coefficient vaut 1 s'il existe une arête (parcours de longueur 1) entre ii et jj, et 0 sinon. La propriété est vraie pour k=1k=1.

Étape 2 : Hypothèse de récurrence

Supposons que pour un entier k1k \geq 1, le terme (AGk)il(A_G^k)_{il} représente le nombre de parcours de longueur kk entre ii et ll, pour toute paire (i,l)(i, l).

Étape 3 : Hérédité (k+1k+1)

On sait que AGk+1=AGk×AGA_G^{k+1} = A_G^k \times A_G.

Selon la formule du produit matriciel :

(AGk+1)ij=lS(AGk)il×(AG)lj(A_G^{k+1})_{ij} = \sum_{l \in S} (A_G^k)_{il} \times (A_G)_{lj}

Analysons les termes de cette somme :

  • (AGk)il(A_G^k)_{il} est le nombre de parcours de longueur kk allant de ii à ll.
  • (AG)lj(A_G)_{lj} vaut 1 si {l,j}\{l, j\} est une arête, 0 sinon.

Le produit (AGk)il×(AG)lj(A_G^k)_{il} \times (A_G)_{lj} compte donc le nombre de parcours de longueur kk allant de ii à ll qui peuvent être prolongés par l'arête {l,j}\{l, j\} pour atteindre jj.

Un parcours de longueur k+1k+1 de ii à jj est nécessairement formé d'un parcours de longueur kk de ii à un voisin ll de jj, suivi de l'arête {l,j}\{l, j\}.

En sommant sur tous les sommets intermédiaires ll possibles, on comptabilise exactement tous les parcours de longueur k+1k+1 reliant ii à jj.

Conclusion

La propriété est vraie pour k=1k=1 et est héréditaire. Elle est donc vraie pour tout k1k \geq 1.

Sous-optimalité des plus courts chemins

Soit P=(s,v1,v2,,vk,t)P = (s, v_1, v_2, \dots, v_k, t) un plus court chemin (chaîne de longueur minimale) entre ss et tt dans un graphe. Prouvez que la sous-section (s,v1,,vk)(s, v_1, \dots, v_k) est un plus court chemin entre ss et vkv_k.

Indice

Raisonnez par l'absurde (contradiction). Si on pouvait aller de ss à vkv_k plus vite, que cela impliquerait-il pour le trajet total de ss à tt ?

Solution

Soit d(u,v)d(u, v) la distance entre deux sommets.

La longueur du chemin PP est Ltotal=d(s,t)L_{total} = d(s, t).

Notons PsubP_{sub} la sous-partie du chemin reliant ss à vkv_k.

La longueur de PP est la somme de la longueur de PsubP_{sub} et de la dernière arête {vk,t}\{v_k, t\} (de poids 1 ou w(vk,t)w(v_k, t) si le graphe est valué positivement).

L(P)=L(Psub)+cost(vk,t)L(P) = L(P_{sub}) + cost(v_k, t).

Étape 1 : Hypothèse contradictoire

Supposons que PsubP_{sub} n'est pas le plus court chemin entre ss et vkv_k.

Alors il existe un autre chemin PsubP'_{sub} reliant ss à vkv_k tel que L(Psub)<L(Psub)L(P'_{sub}) < L(P_{sub}).

Étape 2 : Construction d'un nouveau chemin

Construisons un nouveau chemin PP' de ss à tt en empruntant PsubP'_{sub} puis l'arête {vk,t}\{v_k, t\}.

La longueur de ce nouveau chemin est :

L(P)=L(Psub)+cost(vk,t)L(P') = L(P'_{sub}) + cost(v_k, t).

Étape 3 : Comparaison

Puisque L(Psub)<L(Psub)L(P'_{sub}) < L(P_{sub}), nous avons :

L(P)<L(Psub)+cost(vk,t)=L(P)=d(s,t)L(P') < L(P_{sub}) + cost(v_k, t) = L(P) = d(s, t).

Conclusion

Nous avons trouvé un chemin PP' reliant ss à tt dont la longueur est strictement inférieure à la distance d(s,t)d(s, t), ce qui est impossible par définition de la distance.

L'hypothèse est fausse. La sous-section d'un plus court chemin est donc elle-même un plus court chemin.

Condition nécessaire pour les graphes Eulériens

Prouvez que si un graphe connexe GG admet un tour eulérien (un cycle passant par toutes les arêtes exactement une fois), alors le degré de chaque sommet est pair.

Indice

Imaginez que vous parcourez le tour eulérien. Considérez un sommet vv. À chaque fois que vous "entrez" dans vv par une arête, que devez-vous faire ensuite ? Quelle est l'implication sur le nombre d'arêtes incidentes à vv ?

Solution

Soit G=(S,A)G=(S, A) un graphe possédant un tour eulérien TT.

Le tour TT est une suite d'arêtes qui commence et finit au même sommet et contient chaque arête de AA exactement une fois.

Étape 1 : Analyse des passages par un sommet

Considérons un sommet arbitraire vSv \in S.

Chaque fois que le tour passe par le sommet vv, il doit :

  1. Arriver par une arête incidente eine_{in}.
  2. Repartir par une autre arête incidente eoute_{out}.

Étape 2 : Comptage des arêtes

Le passage par vv consomme donc exactement 2 arêtes incidentes à vv (une pour entrer, une pour sortir).

Si le tour passe kk fois par le sommet vv, alors 2k2k arêtes incidentes à vv sont utilisées.

Conclusion

Comme le tour est eulérien, il utilise toutes les arêtes incidentes à vv exactement une fois.

Le nombre total d'arêtes incidentes à vv, c'est-à-dire le degré d(v)d(v), doit donc être égal à la somme des arêtes consommées lors des passages.

d(v)=2kd(v) = 2k.

Puisque 2k2k est un multiple de 2, le degré de vv est nécessairement pair.

(Note : Pour le sommet de départ/arrivée, le raisonnement est le même : le tout premier départ et la toute dernière arrivée comptent ensemble comme un passage).

Feuilles dans un arbre

Prouvez que tout arbre (graphe connexe sans cycle) possédant au moins 2 sommets (n2n \geq 2) possède au moins deux feuilles (sommets de degré 1).

Indice

Considérez la chaîne la plus longue possible dans l'arbre. Regardez les extrémités de cette chaîne. Peuvent-elles avoir d'autres voisins que ceux qui sont sur la chaîne ?

Solution

Soit TT un arbre avec n2n \geq 2.

Étape 1 : Considérer une chaîne maximale

Comme n2n \geq 2 et TT est connexe, il existe des chaînes. Considérons une chaîne élémentaire de longueur maximale dans le graphe :

C=(x0,x1,,xk)C = (x_0, x_1, \dots, x_k).

(Note : "maximale" signifie qu'on ne peut pas l'étendre sans répéter un sommet, elle n'est pas forcément unique).

Étape 2 : Analyse de l'extrémité x0x_0

Regardons le sommet x0x_0.

  • Il a au moins un voisin, x1x_1, qui est sur la chaîne.
  • Supposons que x0x_0 ait un autre voisin yy (yx1y \neq x_1).

Deux cas possibles pour yy :

  1. yy est déjà dans la chaîne (y=xiy = x_i avec i>1i > 1) : Cela créerait un cycle (x0,x1,,xi,x0)(x_0, x_1, \dots, x_i, x_0). Or, un arbre est acyclique. Impossible.
  2. yy n'est pas dans la chaîne : Alors nous pourrions étendre la chaîne en (y,x0,x1,,xk)(y, x_0, x_1, \dots, x_k), ce qui contredit l'hypothèse que CC est de longueur maximale. Impossible.

Conclusion

Puisque x0x_0 ne peut pas avoir de voisin dans la chaîne (autre que x1x_1) ni hors de la chaîne, son seul voisin est x1x_1.

Donc d(x0)=1d(x_0) = 1. x0x_0 est une feuille.

Le même raisonnement s'applique à l'autre extrémité xkx_k, qui est aussi une feuille (et x0xkx_0 \neq x_k car n2n \geq 2, donc la chaîne a une longueur 1\geq 1).

Il y a donc au moins deux feuilles.

Unicité de la chaîne dans un arbre

Prouvez que dans un arbre, il existe une unique chaîne reliant toute paire de sommets xx et yy.

Indice

L'existence est garantie par la connexité. Pour l'unicité, raisonnez par l'absurde : si vous aviez deux chaînes distinctes entre xx et yy, que formerait leur union ?

Solution

Soit GG un arbre.

Étape 1 : Existence

Par définition, un arbre est connexe. Donc, pour tous x,yx, y, il existe au moins une chaîne reliant xx à yy.

Étape 2 : Unicité (par l'absurde)

Supposons qu'il existe deux chaînes distinctes C1C_1 et C2C_2 reliant xx et yy.

Puisqu'elles sont distinctes, il existe un moment où elles se séparent et un moment où elles se retrouvent.

Considérons le premier sommet uu où les chemins divergent, et le premier sommet vv où ils se rejoignent ensuite.

Les segments de C1C_1 et C2C_2 entre uu et vv sont disjoints (ne partagent aucun sommet intermédiaire).

En concaténant le segment uvu \to v de C1C_1 et le segment vuv \to u de C2C_2 (parcouru à l'envers), on forme un cycle fermé.

Conclusion

L'existence de deux chaînes distinctes implique l'existence d'un cycle.

Or, un arbre est par définition acyclique.

C'est une contradiction. La chaîne reliant xx à yy est donc unique.

Nombre d'arêtes dans un arbre

Prouvez par récurrence que tout arbre d'ordre nn (avec n1n \geq 1) possède exactement n1n-1 arêtes.

Indice

Utilisez le résultat précédent sur l'existence des feuilles. Si vous retirez une feuille et son arête unique, que devient le graphe ? Appliquez l'hypothèse de récurrence sur le graphe réduit.

Solution

Notons P(n)P(n) la propriété : "Un arbre à nn sommets possède n1n-1 arêtes".

Étape 1 : Cas de base (n=1n=1)

Un arbre à 1 sommet n'a pas de boucle, donc 0 arête.

n1=11=0n-1 = 1-1 = 0. La propriété est vraie.

Étape 2 : Hérédité

Supposons la propriété vraie pour tout arbre de taille kk. Soit TT un arbre de taille k+1k+1.

Nous avons prouvé précédemment que tout arbre avec au moins 2 sommets possède au moins une feuille.

Soit vv une feuille de TT et ee l'unique arête incidente à vv.

Considérons le graphe T=T{v}T' = T - \{v\}. On retire le sommet vv et l'arête ee.

  • TT' a kk sommets.
  • TT' est toujours connexe (retirer une feuille ne déconnecte pas les autres sommets).
  • TT' est toujours sans cycle (retirer des éléments ne crée pas de cycle).

Donc TT' est un arbre d'ordre kk.

Par hypothèse de récurrence, TT' possède k1k-1 arêtes.

Conclusion

Le nombre d'arêtes de TT est le nombre d'arêtes de TT' plus l'arête ee que nous avions retirée.

m(T)=(k1)+1=km(T) = (k-1) + 1 = k.

Pour un ordre n=k+1n = k+1, nous avons trouvé n1=kn-1 = k arêtes.

La propriété est démontrée.