Aller au contenu

Exercices

LINMA1691Exercices

Sélection courte des exercices à refaire : les exercices 1 et 2 sur leurs sous-questions les plus utiles, une question ciblée sur l’hypercube, puis l’exercice 4 sur les tournois.

SourceNuméroImportanceNotion
TP11⭐⭐⭐Degrés, isomorphisme, contradiction

Vrai ou faux ? Démontrez ou donnez un contre-exemple.

a) L’élimination d’un sommet de degré maximum peut augmenter le degré moyen d’un graphe.

b) Deux graphes simples qui possèdent un même nombre de sommets et dont les listes de degrés sont identiques sont isomorphes. Même énoncé avec la condition supplémentaire que les graphes sont connexes.

c) Un graphe simple de deux sommets au moins possède toujours deux sommets de degrés identiques.

Indice

a) Écrivez le degré moyen sous la forme dˉ=2∣E∣/∣V∣\bar d=2|E|/|V| et comparez le degré maximum à cette moyenne.

b) Une liste de degrés ne décrit pas complètement les adjacences. Cherchez deux graphes connexes, 3-réguliers, à 6 sommets, dont l’un est biparti et l’autre non.

c) Supposez par contradiction que tous les degrés sont différents. Dans un graphe simple à nn sommets, ils devraient alors être exactement 0,1,…,n−10,1,\ldots,n-1. Regardez les degrés 00 et n−1n-1.

Voir la correction


SourceNuméroImportanceNotion
TP12⭐⭐⭐Connexité, degrés, bornes

Démontrez les propositions suivantes.

a) D’un sommet de degré impair, il existe toujours un chemin jusqu’à un autre sommet de degré impair.

b) Pour un graphe simple connexe de nn sommets,

n−1≤∣E∣≤n(n−1)2.n-1\le |E|\le \frac{n(n-1)}2.

c) Un graphe simple qui possède plus de

(n−1)(n−2)2\frac{(n-1)(n-2)}2

arêtes est connexe.

Indice

a) Travaillez uniquement dans la composante connexe du sommet de degré impair et appliquez le théorème des poignées de main à cette composante.

b) Séparez les deux bornes. Pour la borne inférieure, demandez-vous combien d’arêtes il faut au minimum pour relier nn sommets. Pour la borne supérieure, comptez le nombre de paires de sommets possibles dans un graphe simple.

c) Raisonnez par contraposée : quel est le plus grand nombre d’arêtes qu’un graphe peut posséder tout en restant non connexe ? Pensez à un sommet isolé et à rendre tous les autres sommets adjacents deux à deux.

Voir la correction


SourceNuméroImportanceNotion
TP13⭐⭐Hypercube, bipartition

Dans le graphe de l’hypercube, les sommets sont les kk-tuples de 00 et de 11, et deux sommets sont adjacents s’ils diffèrent en exactement une position.

Proposez une bipartition naturelle des sommets et justifiez qu’elle convient.

Indice

Ne regardez pas d’abord la position des 11, mais seulement leur nombre. Que devient la parité du nombre de 11 lorsqu’on modifie exactement une coordonnée ?

Voir la correction


SourceNuméroImportanceNotion
TP14⭐⭐⭐Tournoi, degré sortant maximal, contradiction

Un tournoi de nn joueurs est un graphe complet KnK_n dans lequel on a choisi une direction pour chaque arête. Il y a une arête (u,v)(u,v) lorsque uu a remporté sa partie contre vv.

Un sommet uu d’un tournoi est un roi si, quel que soit le sommet vv du graphe, il y a une arête (u,v)(u,v), ou il y a un sommet intermédiaire ww et des arêtes (u,w)(u,w) et (w,v)(w,v).

Démontrez qu’un tournoi possède toujours un roi.

Indice

Choisissez un sommet β\beta de degré sortant maximal. Supposons qu’il ne soit pas roi : il existe alors un sommet uu qui bat β\beta et qui ne peut être atteint depuis β\beta en deux étapes. Comparez alors les degrés sortants de uu et de β\beta.

Voir la correction


Sélection : exercices 2, 3a–b et 5a–b. Les corrections sont regroupées à la fin du document.

SourceNuméroImportanceNotion
TP22⭐⭐⭐Degrés et suppression d’un sommet

Pour un graphe simple GG de sommets v1,…,vnv_1,\ldots,v_n avec n≥3n\ge3, démontrez les deux identités :

e(G)=∑i=1ne(G−vi)n−2,dG(vi)=∑j=1ne(G−vj)n−2−e(G−vi).e(G)=\frac{\sum_{i=1}^{n}e(G-v_i)}{n-2}, \qquad d_G(v_i)=\frac{\sum_{j=1}^{n}e(G-v_j)}{n-2}-e(G-v_i).

Ici e(G)e(G) est le nombre d’arêtes et G−viG-v_i supprime le sommet viv_i et ses arêtes incidentes.

Voir la correction


SourceNuméroImportanceNotion
TP23⭐⭐⭐Parcours fermés, questions a et b

a) Combien y a-t-il de parcours fermés de longueur 2n2n dans le graphe biparti complet Kn,nK_{n,n} ?

b) Combien y a-t-il de parcours fermés de longueur nn dans le graphe complet KnK_n ?

Un parcours fermé revient à son départ, mais peut répéter des sommets et des arêtes.

Voir la correction


SourceNuméroImportanceNotion
TP25⭐⭐⭐Séquences de de Bruijn, questions a et b

On veut construire la plus longue séquence circulaire de lettres d’un alphabet de kk lettres sans répéter de sous-séquence de longueur nn.

a) Donner une borne supérieure sur la longueur de la séquence.

b) Peut-on atteindre cette borne ? Traduire en problème de parcours eulérien orienté. Indice : sommets = mots de longueur n−1n-1, arêtes = mots de longueur nn.

Voir la correction


a) Faux. Soit GG un graphe à nn sommets, de degré moyen μ\mu, et soit vv un sommet de degré maximum Δ\Delta. On a nécessairement Δ≥μ\Delta\ge\mu.

Après suppression de vv, les degrés des autres sommets ne peuvent qu’être inférieurs ou égaux à leurs anciens degrés. Ainsi, si μ′\mu' est le nouveau degré moyen,

μ′≤nμ−Δn−1≤nμ−μn−1=μ.\mu' \le \frac{n\mu-\Delta}{n-1} \le \frac{n\mu-\mu}{n-1} =\mu.

Le degré moyen ne peut donc pas augmenter.

b) Faux, même si les deux graphes sont connexes. On peut prendre deux graphes simples connexes à 6 sommets, tous de degré 3, tels que l’un soit biparti et l’autre contienne un triangle. Ils ont la même liste de degrés

(3,3,3,3,3,3),(3,3,3,3,3,3),

mais ne sont pas isomorphes, car l’isomorphisme préserve notamment la bipartition et la présence de cycles impairs.

c) Vrai. Supposons par contradiction que les nn sommets aient tous des degrés différents. Comme le graphe est simple, les degrés possibles sont 0,1,…,n−10,1,\ldots,n-1. Les nn sommets devraient donc réaliser exactement ces nn valeurs.

Il existerait alors un sommet de degré 00 et un sommet de degré n−1n-1. Mais un sommet de degré n−1n-1 est adjacent à tous les autres sommets, en particulier au sommet supposé de degré 00, contradiction.

Donc au moins deux sommets ont le même degré.

Retour à l’exercice


a) Considérons la composante connexe CC contenant un sommet uu de degré impair. Le théorème des poignées de main appliqué à CC donne

∑v∈Cdeg⁡(v)=2∣E(C)∣,\sum_{v\in C}\deg(v)=2|E(C)|,

donc cette somme est paire. Le nombre de sommets de degré impair dans CC est donc pair. Puisque uu en est un, il en existe au moins un autre, noté vv. Comme uu et vv appartiennent à la même composante connexe, il existe un chemin entre eux.

b) Borne inférieure. Un graphe connexe à nn sommets possède au moins n−1n-1 arêtes. En retirant successivement toutes ses arêtes, on passe d’une seule composante connexe à nn sommets isolés. Il faut donc créer n−1n-1 composantes supplémentaires, et retirer une arête ne peut augmenter le nombre de composantes que d’au plus 1. Ainsi,

∣E∣≥n−1.|E|\ge n-1.

Borne supérieure. Dans un graphe simple, il y a au plus une arête pour chaque paire de sommets distincts. Il y a

(n2)=n(n−1)2\binom n2=\frac{n(n-1)}2

paires de sommets. Donc

∣E∣≤n(n−1)2.|E|\le \frac{n(n-1)}2.

On obtient bien

n−1≤∣E∣≤n(n−1)2.n-1\le |E|\le \frac{n(n-1)}2.

c) Raisonnons par contraposée. Supposons GG non connexe. Pour maximiser le nombre d’arêtes sans rendre le graphe connexe, on peut prendre deux composantes de tailles ii et n−in-i, chacune complète. Le nombre d’arêtes est alors au plus

e(i)=(i2)+(n−i2).e(i)=\binom i2+\binom{n-i}{2}.

Cette fonction quadratique atteint son maximum, pour 1≤i≤n−11\le i\le n-1, en i=1i=1 ou i=n−1i=n-1. Le graphe non connexe le plus dense est donc un sommet isolé accompagné d’un Kn−1K_{n-1}, avec

∣E∣≤(n−12)=(n−1)(n−2)2.|E|\le \binom{n-1}{2} =\frac{(n-1)(n-2)}2.

Par contraposée, si

∣E∣>(n−1)(n−2)2,|E|>\frac{(n-1)(n-2)}2,

alors GG est connexe.

Retour à l’exercice


Définissons

A={x:x contient un nombre pair de 1},B={x:x contient un nombre impair de 1}.A=\{x:x\text{ contient un nombre pair de }1\}, \qquad B=\{x:x\text{ contient un nombre impair de }1\}.

Deux sommets adjacents diffèrent en exactement une position. Passer de l’un à l’autre remplace donc soit un 00 par un 11, soit un 11 par un 00. Dans les deux cas, la parité du nombre de 11 change.

Toute arête relie donc un sommet de AA à un sommet de BB. Ainsi (A,B)(A,B) est une bipartition du graphe.

Retour à l’exercice


Soit G=(V,E)G=(V,E) un tournoi. Pour un sommet uu, notons deg⁡+(u)\deg^+(u) son degré sortant. Choisissons un sommet β\beta de degré sortant maximal.

Posons

Vβ={x∈V:(β,x)∈E},Dβ={x∈V:(x,β)∈E}.V_\beta=\{x\in V:(\beta,x)\in E\}, \qquad D_\beta=\{x\in V:(x,\beta)\in E\}.

Par définition,

deg⁡+(β)=∣Vβ∣.\deg^+(\beta)=|V_\beta|.

Supposons par contradiction que β\beta ne soit pas roi. Il existe alors un sommet u∈Dβu\in D_\beta que β\beta ne peut pas atteindre en deux étapes.

Cela signifie qu’aucun sommet w∈Vβw\in V_\beta ne bat uu. Comme on est dans un tournoi, pour chaque w∈Vβw\in V_\beta, on a nécessairement

u→w.u\to w.

De plus, u∈Dβu\in D_\beta, donc

u→β.u\to\beta.

Ainsi uu bat tous les sommets de VβV_\beta ainsi que β\beta, d’où

deg⁡+(u)≥∣Vβ∣+1=deg⁡+(β)+1.\deg^+(u)\ge |V_\beta|+1 =\deg^+(\beta)+1.

Donc deg⁡+(u)>deg⁡+(β)\deg^+(u)>\deg^+(\beta), contradiction avec le choix de β\beta comme sommet de degré sortant maximal.

Ainsi β\beta est un roi. Tout tournoi possède donc au moins un roi.

Retour à l’exercice


Supprimer viv_i enlève exactement ses dG(vi)d_G(v_i) arêtes incidentes :

e(G−vi)=e(G)−dG(vi).e(G-v_i)=e(G)-d_G(v_i).

Sommons sur tous les sommets :

∑i=1ne(G−vi)=ne(G)−∑i=1ndG(vi)=ne(G)−2e(G)=(n−2)e(G).\begin{aligned} \sum_{i=1}^{n}e(G-v_i) &=ne(G)-\sum_{i=1}^{n}d_G(v_i)\\ &=ne(G)-2e(G)\\ &=(n-2)e(G). \end{aligned}

La deuxième égalité utilise le théorème des poignées de main. Puisque n≥3n\ge3, on divise par n−2n-2 et on obtient la première formule. Enfin,

dG(vi)=e(G)−e(G−vi)=∑j=1ne(G−vj)n−2−e(G−vi).d_G(v_i)=e(G)-e(G-v_i) =\frac{\sum_{j=1}^{n}e(G-v_j)}{n-2}-e(G-v_i).

Réflexe : compter les arêtes supprimées puis sommer sur tous les sommets.

Retour à l’exercice


a) Dans Kn,nK_{n,n}. Chaque sommet possède nn voisins dans l’autre partition. Pour un sommet de départ fixé, chacun des 2n−12n-1 premiers déplacements offre nn choix ; le dernier pas doit revenir au départ.

Dans K2,2K_{2,2}, on voit les quatre arêtes entre les deux partitions :

Depuis a1a_1, un parcours de longueur 4 est de la forme a1→B→A→B→a1a_1\to B\to A\to B\to a_1. Il existe 23=82^3=8 parcours, soit 4⋅8=324\cdot8=32 en comptant tous les sommets de départ.

En général, il y a 2n2n sommets de départ :

2n⋅n2n−1=2n2n.\boxed{2n\cdot n^{2n-1}=2n^{2n}}.

b) Dans KnK_n — méthode avec 1n×n1_{n\times n}. Notons J=1n×nJ=1_{n\times n} la matrice dont toutes les entrées valent 11, et InI_n la matrice identité. La matrice d’adjacence du graphe complet est

A=J−In.A=J-I_n.

Le coefficient (Ar)ij(A^r)_{ij} donne le nombre de parcours de longueur rr de viv_i à vjv_j. Les parcours fermés sont donc comptés sur la diagonale :

N=tr⁡(An).N=\operatorname{tr}(A^n).

Les valeurs propres de JJ sont nn (une fois, pour le vecteur de tous les 11) et 00 (multiplicité n−1n-1, pour les vecteurs dont la somme des composantes est nulle). Celles de A=J−InA=J-I_n sont donc n−1n-1 et −1-1, respectivement. La trace de AnA^n est la somme de leurs puissances nn-ièmes :

N=(n−1)n+(n−1)(−1)n.\boxed{N=(n-1)^n+(n-1)(-1)^n}.

Exemple : K3K_3 est un triangle. Depuis chaque sommet, deux tours de longueur 3 sont possibles, un par sens. Cela donne 3⋅2=63\cdot2=6, conformément à 23+2(−1)3=62^3+2(-1)^3=6.

À retenir : parcours fermés de longueur rr ⇒tr⁡(Ar)\Rightarrow \operatorname{tr}(A^r) ; pour KnK_n, la forme J−InJ-I_n permet de calculer cette trace sans développer la puissance de matrice.

Retour à l’exercice


a) Borne supérieure. Il existe knk^n mots de longueur nn. Une séquence circulaire de longueur LL possède LL fenêtres de longueur nn, une par position. Si aucune ne se répète :

L≤kn.\boxed{L\le k^n}.

b) Construction. On crée un graphe orienté dont chaque sommet représente un mot de longueur n−1n-1. Chaque mot de longueur nn fournit une arête allant des n−1n-1 premières lettres vers les n−1n-1 dernières lettres.

Exemple k=3,n=3k=3,n=3. L’alphabet est {0,1,2}\{0,1,2\}. Les neuf sommets sont 00,01,02,10,11,12,20,21,2200,01,02,10,11,12,20,21,22. Un mot comme 201201 devient l’arête 20→0120\to01 ; les mots se chevauchent sur deux lettres. Extrait du graphe (trois arêtes parmi les 27) :

L’objectif « utiliser une seule fois chaque mot de longueur nn » revient à « parcourir une seule fois chaque arête » : on cherche un circuit eulérien puisque la séquence est circulaire.

Degrés. Depuis 2020, les mots 200,201,202200,201,202 définissent les arêtes sortantes, et 020,120,220020,120,220 les arêtes entrantes. Chaque sommet possède donc kk arêtes entrantes et kk sortantes : ajouter une lettre à gauche ou à droite offre toujours kk choix.

∀v,d−(v)=d+(v)=k.\boxed{\forall v,\quad d^-(v)=d^+(v)=k}.

Forte connexité. Pour aller d’un sommet-mot uu à un sommet-mot vv, on ajoute successivement les n−1n-1 lettres de vv : après ces décalages, le sommet atteint est vv. C’est vrai pour tout couple ordonné (u,v)(u,v).

Le graphe est fortement connexe, avec degrés entrants et sortants égaux. Il possède donc un circuit eulérien. Il contient exactement knk^n arêtes (une par mot) : le circuit donne une séquence circulaire de longueur knk^n contenant chacun des mots une seule fois.

Lmax⁡=kn.\boxed{L_{\max}=k^n}.

Vérification plus petite : pour k=2,n=2k=2,n=2, la séquence circulaire 00110011 contient 00,01,11,1000,01,11,10 une seule fois chacun.

Réflexe : chaque mot à utiliser exactement une fois →\to une arête ; chevauchement →\to enchaînement des arêtes ; circularité →\to circuit eulérien.

Retour à l’exercice