Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

Théorie des graphes

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuisGraphe (mathématiques))
Page d’aide sur l’homonymie

Pour la notion mathématique utilisée en théorie des ensembles, voirGraphe d'une fonction.

Untracé de graphe.

Lathéorie des graphes est la disciplinemathématique etinformatique qui étudie lesgraphes, lesquels sont des modèles abstraits de dessins de réseaux reliant des objets[1]. Ces modèles sont constitués par la donnée desommets (aussi appelésnœuds oupoints, en référence auxpolyèdres), et d'arêtes (aussi appeléesliens oulignes) entre ces sommets ; ces arêtes sont parfois non symétriques (les graphes sont alors ditsorientés) et sont alors appelées desflèches ou desarcs.

Lesalgorithmes élaborés pour résoudre des problèmes concernant lesobjets de cette théorie ont de nombreuses applications dans tous les domaines liés à la notion de réseau (réseau social,réseau informatique,télécommunications, etc.) et dans bien d'autres domaines (par exemplegénétique) tant le concept de graphe, à peu près équivalent à celui derelation binaire (à ne pas confondre donc avecgraphe d'une fonction), est général. De grands théorèmes difficiles, comme lethéorème des quatre couleurs, lethéorème des graphes parfaits, ou encore lethéorème de Robertson-Seymour, ont contribué à asseoir cette matière auprès des mathématiciens, et les questions qu'elle laisse ouvertes, comme laconjecture de Hadwiger, en font une branche vivace desmathématiques discrètes.

Définitions

[modifier |modifier le code]
Articles détaillés :Glossaire de la théorie des graphes etGraphe (mathématiques discrètes).
Un graphe orienté avec trois sommets et quatre arcs.

Un graphe est uncoupleG=(S,A){\displaystyle G=(S,A)} comprenant deuxensembles :

Il y a plusieurs principaux types de graphes :

  • Dans ungraphe non orienté, les arêtes n'ont pas d'orientation et sont donc associées à une paire{u,v}{\displaystyle \{u,v\}}. Dans ungraphe orienté, les arêtes sont appelées arcs et ont une orientation deu{\displaystyle u} versv{\displaystyle v} ; elles sont ainsi associées au couple(u,v){\displaystyle (u,v)}. Un graphe mixte comporte à la fois des arêtes et des arcs, on le définit alors plutôt comme le tripletG=(S,A,A){\displaystyle G=(S,A,A')}.
  • Ungraphe simple est un graphe ne comportant niboucles ni multi-arêtes, c'est-à-dire qu'aucun sommet n'est connecté à lui-même, et entre deux sommets il n'existe qu'une seule arête.
  • Dans un graphe pondéré (ou valué), à chaque arête est associé un nombre (son poids), représentant par exemple une distance, un coût ou une capacité.

Deux sommets reliés par une arête sont dits voisins ou adjacents.

Topologies

[modifier |modifier le code]
Article détaillé :Théorie topologique des graphes.
Principales topologies typiques de graphes.
Topologie typique d'un réseau multipolaire.

Il existe trois grandes familles de graphes et cinq catégories au total :

  • structurés : il est alors possible de définir quatre identités topologiques remarquables :
    • homogènes (1) : les sommets et les arêtes reproduisent un schéma régulier. Le schéma le plus commun est une architecture de typematriciel aussi appelée « en filet de poisson » (mesh) ;
    • hiérarchiques (2) : structure typique des graphes où les sommets s'arrangent en couches hiérarchisées et pyramidales ;
    • cycliques (3) : on peut identifier des cycles dans le graphe. L'exemple le plus parlant est le graphe circulaire ;
    • centralisés ou polaires (4) : c'est une architecture où tous les sommets sont rattachés à un seul sommet, le pôle ;
  • quelconques (5) : aucune propriété topologique ne semble émerger ;
  • multipolaires : c'est une architecture mixte entre les graphes centralisés et décentralisés. Les réseaux multipolaires sont très étudiés en raison de leur proximité avec de nombreux cas concrets, notamment Internet ou lesréseaux de neurones. Les graphes multipolaires sont caractérisés par deux types d'arêtes : celles qui forment les liens émanant du pôle : les liens forts ; et les liens réunissant deux pôles entre eux : les liens faibles. Les pôles peuvent par ailleurs prendre une architecture structurée (souvent centralisée) ou quelconque.

Origines

[modifier |modifier le code]

Un article du mathématicien suisseLeonhard Euler, présenté à l'Académie deSaint-Pétersbourg en 1735 puis publié en 1741, traitait duproblème des sept ponts de Königsberg[O 1], ainsi que schématisé ci-dessous. Le problème consistait à trouver une promenade à partir d'un point donné qui fasse revenir à ce point en passant une fois et une seule par chacun des sept ponts de la ville de Königsberg. Un chemin passant par toute arête exactement une fois fut nomméchemin eulérien, ou circuit eulérien s'il finit là où il a commencé. Par extension, un graphe admettant un circuit eulérien est ditgraphe eulérien, ce qui constitue donc le premier cas de propriété d'un graphe. Euler avait formulé[2] qu'un graphe n'est eulérien que si chaque sommet a un nombre pair d'arêtes. L'usage est de s'y référer commethéorème d'Euler, bien que la preuve n'en ait été apportée que 130 ans plus tard par le mathématicien allemandCarl Hierholzer[O 2]. Un problème similaire consiste à passer par chaque sommet exactement une fois, et fut d'abord résolu avec le cas particulier d'uncavalier devant visiter chaque case d'un échiquier par le théoricien d'échecs arabeAl-Adli dans son ouvrageKitab ash-shatranj paru vers 840 et perdu depuis[O 3]. Ce problème du cavalier fut étudié plus en détail auXVIIIe siècle par les mathématiciens françaisAlexandre-Théophile Vandermonde[O 4],Pierre Rémond de Montmort etAbraham de Moivre ; le mathématicienbritanniqueThomas Kirkman étudia le problème plus général du parcours où on ne peut passer par un sommet qu'une fois, mais un tel parcours prit finalement le nom de chemin hamiltonien d'après le mathématicienirlandaisWilliam Rowan Hamilton, et bien que ce dernier n'en ait étudié qu'un cas particulier[O 5]. On accorde donc à Euler l'origine de la théorie des graphes parce qu'il fut le premier à proposer un traitement mathématique de la question, suivi par Vandermonde.


Liste desarbres à 2, 3 et 4 sommets.

Au milieu duXIXe siècle, le mathématicien britanniqueArthur Cayley s'intéressa auxarbres, qui sont un type particulier de graphe n'ayant pas de cycle,i.e. dans lequel il est impossible de revenir à un point de départ sans faire le chemin inverse. En particulier, il étudia le nombre d'arbres àn{\displaystyle n} sommets[O 6] etmontra qu'il en existenn2{\displaystyle n^{n-2}}. Ceci constitua « une des plus belles formules encombinatoire énumérative »[O 7], domaine consistant à compter le nombre d'éléments dans unensemble fini, et ouvrit aussi la voie à l'énumération de graphes ayant certaines propriétés. Ce champ de recherche fut véritablement initié par le mathématicien hongroisGeorge Pólya, qui publia en 1937le théorème de dénombrement qui porte son nom, et le mathématicien néerlandaisNicolaas Govert de Bruijn. Les travaux de Cayley, tout comme ceux de Polya, présentaient des applications à la chimie et le mathématicien anglaisJames Joseph Sylvester, coauteur de Cayley, introduisit en 1878 le terme de « graphe » basé sur la chimie :

« Il peut ne pas être entièrement sans intérêt pour les lecteurs de Nature d'être au courant d'une analogie qui m'a récemment fortement impressionné entre des branches de la connaissance humaine apparemment aussi dissemblables que la chimie et l'algèbre moderne. […] Chaque invariant et covariant devient donc exprimable par un graphe précisément identique à un diagramme Kékuléan ou chemicographe[O 8]. »

Équivalence entre les régions d'une carte et un graphe pour lethéorème des quatre couleurs.

Un des problèmes les plus connus de théorie des graphes vient de lacoloration de graphe, où le but est de déterminer combien de couleurs différentes suffisent pour colorer entièrement un graphe de telle façon qu'aucun sommet n'ait la même couleur que ses voisins. En 1852, le mathématicien sud-africainFrancis Guthrie énonça leproblème des quatre couleurs lors d'une discussion avec son frère qui demandera à son professeurAuguste De Morgan si toute carte peut être coloriée avec quatre couleurs de façon que des pays voisins aient des couleurs différentes. De Morgan envoya d'abord une lettre au mathématicien irlandaisWilliam Rowan Hamilton, qui n'était pas intéressé, puis le mathématicien anglaisAlfred Kempe publia une preuve erronée[O 9] dans l’American Journal of Mathematics, qui venait d'être fondé par Sylvester. L'étude de ce problème entraîna de nombreux développements en théorie des graphes parPeter Guthrie Tait,Percy John Heawood,Frank Ramsey etHugo Hadwiger.

Les problèmes defactorisation de graphe émergèrent ainsi à la fin duXIXe siècle en s'intéressant aux sous-graphes couvrants, c'est-à-dire aux graphes contenant tous les sommets mais seulement une partie des arêtes. Un sous-graphe couvrant est appelé unk{\displaystyle k}-facteur si chacun de ses sommets ak{\displaystyle k} arêtes et les premiers théorèmes furent donnés parJulius Petersen[O 10] ; par exemple, il montra qu'un graphe peut être séparé en 2-facteurs si et seulement si tous les sommets ont un nombre pair d'arêtes (mais il fallut attendre 50 ans pour que Bäbler traite le cas impair[O 11]). Les travaux de Ramsey sur la coloration, et en particulier les résultats du mathématicien hongroisPal Turan, permirent le développement de lathéorie des graphes extrémaux s'intéressant aux graphes atteignant le maximum d'une quantité particulière (par exemple le nombre d'arêtes) avec des contraintes données[O 12], telles que l'absence de certains sous-graphes.

Dans la seconde moitié duXXe siècle, le mathématicien françaisClaude Berge contribue au développement de la théorie des graphes par ses contributions sur lesgraphes parfaits[O 13] et l'introduction du terme d’hypergraphe (à la suite de la remarque de Jean-Marie Pla l'ayant utilisé dans un séminaire) avec une monographie[O 14] sur le sujet. Son ouvrage d'introduction à la théorie des graphes[O 15] proposa également une alternative originale, consistant plus en une promenade personnelle qu'une description complète. Il marquera également la recherche française en ce domaine, par la création conjointe avecMarcel-Paul Schützenberger d'un séminaire hebdomadaire à l'InstitutHenri Poincaré, des réunions le lundi à laMaison des Sciences de l'Homme, et la direction de l'équipe Combinatoire de Paris.

Flots dans les réseaux

[modifier |modifier le code]
Représentation du flot dans un graphe, indiquant pour chaque arête le flota qui la traverse et sa capacité maximaleb, sous la formea/b.
Coupe dans un graphe, avec la sources et le puitst.
Exemple d'application des flots réseaux pour lemouvement d'un fluide dans un réseauhydraulique.

Les AllemandsFranz Ernst Neumann etJacobi, respectivementphysicien et mathématicien, fondèrent en 1834 une série de séminaires. Le physicien allemandGustav Kirchhoff était un des étudiants participant au séminaire entre 1843 et 1846, et il étendit le travail deGeorg Ohm pour établir en 1845 leslois de Kirchhoff exprimant laconservation de l'énergie et de la charge dans uncircuit électrique. En particulier, sa loi des nœuds stipule que la somme des intensités des courants entrant dans un nœud est égale à celle qui en sort. Un circuit électrique peut se voir comme un graphe, dans lequel les sommets sont les nœuds du circuit, et les arêtes correspondent aux connexions physiques entre ces nœuds. Pour modéliser les courants traversant le circuit, on considère que chaque arête peut être traversée par unflot. Ceci offre de nombreuses analogies, par exemple à l'écoulement d'un liquide comme l'eau à travers un réseau de canaux[Flot 1], ou la circulation dans un réseau routier. Comme stipulé par la loi des nœuds, le flot à un sommet est conservé, ou identique à l'entrée comme à la sortie ; par exemple, l'eau qui entre dans un canal ne disparaît pas et le canal n'en fabrique pas, donc il y a autant d'eau en sortie qu'en entrée. De plus, une arête a une limite de capacité, tout comme un canal peut transporter une certaine quantité maximale d'eau. Si l'on ajoute que le flot démarre à un certain sommet (lasource) et qu'il se termine à un autre (lepuits), on obtient alors les principes fondamentaux de l'étude des flots dans un graphe.

Si on considère que la source est unchamp pétrolifère et que le puits est la raffinerie où on l'écoule, alors on souhaite régler les vannes de façon à avoir le meilleur débit possible de la source vers le puits. En d'autres termes, on cherche à avoir une utilisation aussi efficace que possible de la capacité de chacune des arêtes, ce qui est leproblème de flot maximum. Supposons que l'on « coupe » le graphe en deux parties, telles que la source est dans l'une et le puits est dans l'autre. Chaque flot doit passer entre les deux parties, et est donc limité par la capacité maximale qu'une partie peut envoyer à l'autre. Trouver lacoupe avec la plus petite capacité indique donc l'endroit où le réseau est le plus limité, ce qui revient à établir le flot maximal qui peut le traverser[Flot 2]. Ce théorème est appeléflot-max/coupe-min et fut établi en 1956.

L’étude des flots réseaux se généralise de plusieurs façons. La recherche d'un maximum, ici dans le cas du flot, est un problème d'optimisation, qui est la branche des mathématiques consistant à optimiser (i.e. trouver un minimum ou maximum) une fonction sous certaines contraintes. Un flot réseau est soumis à trois contraintes[Flot 3] : la limite de capacité sur chaque arête, la création d'un flot non nul entre la source et le puits (i.e. la source crée un flot), et l'égalité du flot en entrée/sortie pour tout sommet autre que la source et les puits (i.e. ils ne consomment ni ne génèrent une partie du flot). Ces contraintes étantlinéaires, le problème d'un flot réseau fait partie de l'optimisation linéaire. Il est également possible de rajouter d'autres variables au problème pour prendre en compte davantage de situations : on peut ainsi avoirplusieurs sources et puits, unecapacité minimale (en) sur chaque arête, uncoût lorsqu'on utilise une arête, ou uneamplification du flot (en) passant par une arête.

Introduction de probabilités

[modifier |modifier le code]
Schéma d'une transition de phase, ayant l'allure typique rencontrée dans le cas d'un graphe aléatoire.

Jusqu'au milieu duXXe siècle, l'algorithme construisant un graphe n'avait rien d'aléatoire : tant que les paramètres fournis à l'algorithme ne changeaient pas, alors le graphe qu'il construisait était toujours le même. Une certaine dose d'aléatoire fut alors introduite, et les algorithmes devinrent ainsiprobabilistes. Le mathématicien d'origine russeAnatol Rapoport eut d'abord cette idée en 1957[Proba 1] mais elle fut proposée indépendamment deux ans après, de façon plus formelle, par les mathématiciens hongroisPaul Erdős etAlfréd Rényi[Proba 2]. Ceux-ci se demandèrent à quoi ressemble un graphe « typique » avecn{\displaystyle n} sommets etm{\displaystyle m} arêtes. Ils souhaitaient ainsi savoir quelles propriétés pouvaient être trouvées avecn{\displaystyle n} sommets, etm{\displaystyle m} arêtes créées au hasard. Une quantité fixem{\displaystyle m} n'étant pas pratique pour répondre à cette question[Proba 3], il fut décidé que chaque arête existerait avec une probabilitép{\displaystyle p}. Ceci fut le début de lathéorie desgraphes aléatoires, où l'on considère un nombre de sommetsn{\displaystyle n} assez grand, et l'on s'intéresse à la probabilitép{\displaystyle p} suffisante pour que le graphe ait une certaine propriété.

Abstraction d'une pierre par une grille de 50 x 50. Seuls les canaux sont représentés.
Exemples de graphes aléatoires
20 sommets et probabilité 0,1.
20 sommets et probabilité 0,1.
20 sommets et probabilité 0,1.
Play Pause Stop Précédent Suivant Select
 
Ladistribution du degré donne la quantité de sommets par nombre de connexions (par exemple, il y a 30 sommets ayant 25 voisins, où30 est en ordonnée et25 en abscisse). Le graphe aléatoire d'Erdős et Rényi engendre unedistribution normale.

Erdős et Rényi découvrirent que le graphe n'évoluait pas de façon linéaire mais qu'il y avait au contraire une probabilité critiquep après laquelle il changeait de façon radicale. Ce comportement est bien connu en physique : si l'on observe un verre d'eau que l'on met dans uncongélateur, il ne se change pas progressivement en glace mais plutôt brutalement lorsque la température passe en dessous de0 °C. L'eau avait deux phases (liquide et glace) et passe de l'une à l'autre par un phénomène nommétransition de phase, la transition étant rapide autour d'unpoint critique qui est dans ce cas la température de0 °C. Pour nombre de propriétés observées, les graphes aléatoires fonctionnent de la même manière[Proba 4] : il existe une probabilité critiquepc{\displaystyle p_{c}} en dessous de laquelle ils se trouvent dans une phase sous-critique, et au-dessus de laquelle ils passent en phase sur-critique. Dans le cas d'un graphe aléatoire, la probabilité que l'on observe la propriété nous intéressant est faible en phase sous-critique mais devient très forte (i. e. quasi-certitude) en phase sur-critique ; le tracé de la probabilité d'avoir la propriété en fonction dep{\displaystyle p} a donc une allure bien particulière, simplifiée dans le schéma à droite.

Au-delà du vocabulaire commun des phases, la théorie des graphes aléatoires se retrouve enphysique statistique sous la forme de lathéorie de la percolation[Proba 5]. Cette dernière visait à l'origine à étudier l'écoulement d'un fluide à travers un matériauporeux. Par exemple, si l'on immerge unepierre ponce dans un seau rempli d'eau[Proba 6], on s'intéresse à la façon dont l'eau va s'écouler dans la pierre. Pour modéliser ce problème, on se concentre sur les paramètres importants : l'âge ou la couleur de la pierre n'importe pas, tandis que les ouvertures ou 'canaux' dans lesquels peut circuler l'eau sont primordiaux. L'abstraction la plus simple est de voir une pierre comme une grille, où chaque canal existe avec une probabilitép{\displaystyle p}. On retrouve ainsi le modèle du graphe aléatoire, mais avec une contraintespatiale : une arête ne peut exister entre deux sommets que s'ils sont voisins dans la grille. Cependant, cette contrainte peut être levée pour établir une équivalence entre la théorie des graphes et celle de la percolation. Tout d'abord, un graphe den{\displaystyle n} sommets peut être représenté par une grille avecn dimensions ; puisqu'on s'intéresse au cas oùn{\displaystyle n} est assez grand, c'est-à-diren{\displaystyle n\rightarrow \infty }, ceci établit une équivalence avec la percolation en dimension infinie. De plus, il existe une dimension critiquedc{\displaystyle d_{c}} telle que le résultat ne dépend plus de la dimension dès que celle-ci atteintdc{\displaystyle d_{c}} ; on pense que cette dimension critique est 6, mais elle n'a pu être prouvée[Proba 7] que pour 19.

De nombreux modèles ont été proposés depuis le début des années 2000 pour retrouver des phénomènes observés dans des graphes tels que celui représentant les connexions entre des acteurs de Hollywood (obtenu parIMDb) ou des parties duWeb. En 1999,Albert-László Barabási etRéka Albert expliquèrent qu'un de ces phénomènes « est une conséquence de deux mécanismes : le réseau grandit continuellement avec l'ajout de nouveaux sommets, et les nouveaux sommets s'attachent avec certaines préférences à d'autres qui sont déjà bien en place »[Proba 8]. Une certaine confusion s'installa autour de leur modèle : s'il permet effectivement d'obtenir le phénomène souhaité, il n'est pas le seul modèle arrivant à ce résultat et on ne peut donc pas conclure en voyant le phénomène qu'il résulte d'un processus d'attachement préférentiel. Les phénomènes depetit monde et deliberté d'échelle, pour lesquels de très nombreux modèles ont été proposés, peuvent être réalisés simplement par des graphes aléatoires[Proba 9] : la technique de Michael Molloy etBruce Reed[Proba 10] permet d'obtenir l'effet de libre d'échelle, tandis que celle de Li, Leonard et Loguinov conduit au petit-monde[Proba 11].

Représentations et invariants

[modifier |modifier le code]

Étiquetage et morphismes

[modifier |modifier le code]

Formellement un graphe estétiqueté : chaque sommet ou arête appartient à un ensemble, donc porte uneétiquette. Typiquement, les graphes sont étiquetés par des nombres entiers, mais une étiquette peut en fait appartenir à n'importe quel ensemble : ensemble de couleurs, ensemble de mots, ensemble des réels. Les exemples ci-contre montrent des graphes étiquetés par des entiers et par des lettres. L'étiquetage d'un graphe peut être conçu de façon à donner des informations utiles pour des problèmes comme leroutage : partant d'un sommetu{\displaystyle u}, on veut arriver à un sommetv{\displaystyle v}, c'est-à-dire que l'on souhaite acheminer une information deu{\displaystyle u} àv{\displaystyle v}. Selon la façon dont les sommets sont étiquetés, les étiquettes que portentu{\displaystyle u} etv{\displaystyle v} peuvent nous permettre de trouver facilement un chemin. Par exemple, dans legraphe de Kautz (en) où la distance maximale entre deux sommets estD{\displaystyle D}, imaginons que l'on soit à un sommet étiqueté(x1,x2,...,xD){\displaystyle (x_{1},x_{2},...,x_{D})} et que l'on souhaite aller à(y1,y2,...,yD){\displaystyle (y_{1},y_{2},...,y_{D})} : il suffit de décaler l'étiquette en introduisant la destination[R 1], ce qui donne le chemin

(x1,x2,...,xD)(x2,...,xD,y1)(x3,...,xD,y1,y2)...(xD,...,yD2,yD1)(y1,...,yD).{\displaystyle (x_{1},x_{2},...,x_{D})\to (x_{2},...,x_{D},y_{1})\to (x_{3},...,x_{D},y_{1},y_{2})\to ...\to (x_{D},...,y_{D-2},y_{D-1})\to (y_{1},...,y_{D}).}

Ce chemin se lit de la façon suivante : si on se trouve au sommet étiqueté(x1,x2,...,xD){\displaystyle (x_{1},x_{2},...,x_{D})} alors on va vers le voisin portant l'étiquette(x2,...,xD,y1){\displaystyle (x_{2},...,x_{D},y_{1})}, et ainsi de suite.

On se retrouve cependant face à un problème : si on regarde plus haut l'illustration de la liste des arbres à 2, 3 et 4 sommets, beaucoup d'entre eux ont exactement la mêmestructure mais un étiquetage différent (donné ici par des couleurs). Pour étudier uniquement la structure, il faut donc un outil permettant d'ignorer l'étiquetage, c'est-à-dire de donner une équivalence structurelle. Pour cela, on introduit la notion de morphisme. Unmorphisme de graphes[R 2], ouhomomorphisme de graphes, est uneapplication entre deux graphes qui respecte la structure des graphes. Autrement dit l'image du grapheG{\displaystyle G} dansH{\displaystyle H} doit respecter les relations d'adjacences présentes dansG{\displaystyle G}. Plus précisément, siG=(SG,AG){\displaystyle G=(S_{G},A_{G})} etH=(SH,AH){\displaystyle H=(S_{H},A_{H})} sont deux graphes, une applicationf:GH{\displaystyle f:G\to H} est un morphisme de graphes sif=(fS,fA){\displaystyle f=(f_{S},f_{A})}fS:SGSH{\displaystyle f_{S}:S_{G}\to S_{H}} transforme les sommets deG{\displaystyle G} en ceux deH{\displaystyle H}, etfA:AGAH{\displaystyle f_{A}:A_{G}\to A_{H}} les arêtes deG{\displaystyle G} en celles deH{\displaystyle H} en respectant la contrainte suivante :s'il existe une arête(uv)AG{\displaystyle (u\rightarrow v)\in A_{G}} entre deux sommets deG{\displaystyle G} alors il doit y avoir une arête(fS(u)fS(v))AH{\displaystyle (f_{S}(u)\rightarrow f_{S}(v))\in A_{H}} entre les deux sommets correspondants deH{\displaystyle H}. On dit de l'homomorphismef{\displaystyle f} qu'il est uneinjection (respectivementsurjection) si ses deux fonctionsfS{\displaystyle f_{S}} etfA{\displaystyle f_{A}} sont injectives (respectivement surjectives); si elles sont à la fois injectives et surjectives, c'est-à-direbijectives, alorsf{\displaystyle f} est unisomorphisme de graphes. Si deux graphes sont isomorphes, alors ils ont la même structure : peu importe la façon dont ils sont dessinés ou étiquetés, il est possible de déplacer les sommets ou de changer les étiquettes pour que l'un soit la copie conforme de l'autre, ainsi qu'illustré ci-dessous. On désigne alors par graphenon étiqueté laclasse d'équivalence d'un graphe pour la relation d'isomorphisme. Deux graphes isomorphes seront alors considérés comme égaux si on les considère en tant que graphes non étiquetés.

Graphe GGraphe HIsomorphisme
entre G et H
f(a)=1{\displaystyle f(a)=1}
f(b)=6{\displaystyle f(b)=6}
f(c)=8{\displaystyle f(c)=8}
f(d)=3{\displaystyle f(d)=3}
f(g)=5{\displaystyle f(g)=5}
f(h)=2{\displaystyle f(h)=2}
f(i)=4{\displaystyle f(i)=4}
f(j)=7{\displaystyle f(j)=7}

Le mot graphe peut désigner, selon les contextes, un graphe étiqueté ou non étiqueté. Quand on parle du graphe du web, les étiquettes sont des URL et ont un sens. Le mot est utilisé pour désigner un graphe étiqueté. À l'opposé legraphe de Petersen est toujours considéréà isomorphisme près, donc non étiqueté, seules ses propriétés structurelles étant intéressantes.

Graphes etalgèbre linéaire

[modifier |modifier le code]

Tout grapheG=(S,A){\displaystyle G=(S,A)} peut être représenté par unematrice.Les relations entre arêtes et sommets, appelées les relations d'incidence, sont toutes représentées par lamatrice d'incidence du graphe.Les relations d'adjacences (si deux sommets sont reliés par une arête ils sont adjacents) sont représentés par samatrice d'adjacence. Elle est définie par

aij={1si (vi,vj)A0sinon.{\displaystyle a_{ij}=\left\{{\begin{array}{rl}1&{\mbox{si }}(v_{i},v_{j})\in A\\0&{\mbox{sinon.}}\end{array}}\right.}
GrapheReprésentation par unematrice d'adjacenceReprésentation par unematrice laplacienne (non normalisée)
(010010101010010100001011110100000100){\displaystyle {\begin{pmatrix}0&1&0&0&1&0\\1&0&1&0&1&0\\0&1&0&1&0&0\\0&0&1&0&1&1\\1&1&0&1&0&0\\0&0&0&1&0&0\\\end{pmatrix}}}(210010131010012100001311110130000101){\displaystyle {\begin{pmatrix}2&-1&0&0&-1&0\\-1&3&-1&0&-1&0\\0&-1&2&-1&0&0\\0&0&-1&3&-1&-1\\-1&-1&0&-1&3&0\\0&0&0&-1&0&1\\\end{pmatrix}}}

De nombreuses informations d'un graphe peuvent être représentées par une matrice. Par exemple, lamatrice des degrésD{\displaystyle D} est unematrice diagonale où les élémentsDii{\displaystyle D_{ii}} correspondent au nombre de connexions du sommeti{\displaystyle i}, c'est-à-dire à sondegré. En utilisant cette matrice et la précédente, on peut également définir lamatrice laplacienneL=DA{\displaystyle L=D-A} ; on obtient sa forme normaliséeL{\displaystyle L'} parL=D1/2LD1/2=ID1/2AD1/2{\displaystyle L'=D^{-1/2}LD^{-1/2}=I-D^{-1/2}AD^{-1/2}}, oùI{\displaystyle I} dénote lamatrice identité, ou on peut aussi l'obtenir directement par chacun de ses éléments :

i,j:={1si i=j et deg(vi)01deg(vi)deg(vj)si ij et vi est adjacent a vj0sinon.{\displaystyle \ell _{i,j}:={\begin{cases}1&{\mbox{si}}\ i=j\ {\mbox{et}}\ \deg(v_{i})\neq 0\\-{\frac {1}{\sqrt {\deg(v_{i})\deg(v_{j})}}}&{\mbox{si}}\ i\neq j\ {\mbox{et}}\ v_{i}{\text{ est adjacent a }}v_{j}\\0&{\text{sinon}}.\end{cases}}}

Ces représentations dépendent de la façon dont les sommets du graphe sont étiquetés. Imaginons que l'on garde la même structure que dans l'exemple ci-dessus et que l'on inverse les étiquettes1 et6 : on inverse alors les colonnes1 et6 de la matrice d'adjacence. Il existe en revanche des quantités qui ne dépendent pas de la façon dont on étiquette les sommets, tels que le degré minimal/maximal/moyen du graphe. Ces quantités sont desinvariants du graphe : elles ne changent pas selon la numérotation. Tandis qu'une matrice d'adjacence ou laplacienne varie, sonspectre, c'est-à-dire l'ensemble de sesvaleurs propresλ0λ1λn1{\displaystyle \lambda _{0}\leq \lambda _{1}\leq \cdots \leq \lambda _{n-1}}, est un invariant. L'étude du rapport entre les spectres et les propriétés d'un graphe est le sujet de lathéorie spectrale des graphes[R 3] ; parmi les rapports intéressants, le spectre donne des renseignements sur lenombre chromatique, le nombre de composantes connexes et les cycles du graphe.

Décompositions arborescentes et en branches

[modifier |modifier le code]
Article détaillé :Décomposition arborescente.
Décomposition arborescente à 6 sommets d'un graphe à 8 sommets. Chaque nœud de la décomposition contient au plus trois sommets du graphe original, et la profondeur de cette décomposition est donc 2.

Les graphes permettant de représenter de nombreuses situations, il existe de nombreux algorithmes (i.e. programmes) les utilisant. Lacomplexité d'un algorithme consiste essentiellement à savoir, pour un problème donné, combien de temps est nécessaire pour le résoudre et quel est l'espace machine que cela va utiliser. Certaines représentations de graphes permettent d'obtenir de meilleures performances, c'est-à-dire que le problème est résolu plus rapidement ou en occupant moins d'espace. Dans certains cas, un problèmeNP-complet (classe la plus ardue) sur une représentation d'un graphe peut être résolu en temps polynomial (classe simple) avec une autre représentation ; l'idée n'est pas qu'il suffit de regarder le graphe différemment pour résoudre le problème plus vite, mais que l'on « paye » pour le transformer et que l'on « économise » alors pour résoudre le problème. Une telle transformation est ladécomposition arborescente proposée par les mathématiciensRobertson etSeymour dans leur sérieGraph Minors[R 4]. Intuitivement, une décomposition arborescente représente le graphe d'origineG{\displaystyle G} par un arbre, où chaque sommet correspond à un sous-ensemble des sommets deG{\displaystyle G}, avec quelques contraintes. Formellement, pour un graphe donnéG=(S,A){\displaystyle G=(S,A)}, sa décomposition arborescente est(f,T){\displaystyle (f,T)}T{\displaystyle T} est un arbre contenant les sommetsST{\displaystyle S_{T}} etf{\displaystyle f} une fonction associant à chaque sommetpT{\displaystyle p\in T} un ensemble de sommetsf(p)S{\displaystyle f(p)\subset S}. Trois contraintes doivent être satisfaites :

Lalargeur arborescentetw(G){\displaystyle tw(G)} d'une décomposition(f,T){\displaystyle (f,T)} d'un grapheG{\displaystyle G} estmaxpST|f(p)|1{\displaystyle \max _{p\in S_{T}}|f(p)|-1}, c'est-à-dire la taille du plus grand ensemble représenté par un sommet moins 1 ; on peut la voir comme l'abstraction maximale : pour un sommet de l'arbre, jusqu'à combien de sommets du graphe représente-t-on ? Construire la décomposition arborescente d'un graphe quelconque avec la plus petite largeur arborescente est un problème NP-dur[R 5]. Cependant, cela peut être fait rapidement pour certains graphes[R 6], ou approximée[R 7] pour d'autres tels les graphes planaires (i. e. pouvant être dessinés sans croiser deux arêtes).

Exemple d'un arbre, ayant1 comme racine,{2,4,5,7} comme nœuds internes et{3,6,8,9,10,11,12} comme feuilles.

Robertson et Seymour développèrent également le concept dedécomposition en branches. Pour la comprendre, il faut introduire davantage de vocabulaire sur un arbre. Dans les graphes, un arbre est dessiné « à l'envers » : on démarre de la racine en haut, et on descend jusqu'à atteindre les feuilles en bas ; tout sommet n'étant pas une feuille est appelé un « nœud interne ». La décomposition en branches résulte en un arbre dans lequel tout nœud interne a exactement trois voisins (comme sur l'exemple ci-contre), et où chaque feuille représente une arête du graphe d'origine. La profondeur minimale de la décomposition d'un grapheG{\displaystyle G} est notéebw(G){\displaystyle bw(G)}, et on a la relationbw(G)tw(G)+13×bw(G)2{\displaystyle bw(G)\leq tw(G)+1\leq \left\lfloor {\frac {3\times bw(G)}{2}}\right\rfloor }. De même que pour la décomposition arborescente, il est NP-dur de construire une décomposition en branches avecbw(G){\displaystyle bw(G)} minimal pour un graphe quelconque ; dans ce cas, cette construction est réalisable pour ungraphe planaire[R 8].

Ces représentations sont utilisées sur des problèmes NP-complets par des techniques deprogrammation dynamique, qui prennent généralement un temps exponentiel enbw(G){\displaystyle bw(G)} outw(G){\displaystyle tw(G)}. Un tel problème est par exemple l'ensemble dominant : on veut savoir s'il y a un sous-ensembleD{\displaystyle D} de sommets de taille au plusk{\displaystyle k} tel qu'un sommet n'étant pas dansD{\displaystyle D} y soit relié par une arête. Si le graphe est planaire, cette technique permet de résoudre le problème[R 9] en tempsO(23×log4(3l(H))×E|H|+n3){\displaystyle {\mathcal {O}}(2^{3\times \log _{4}(3l(H))}\times E|H|+n^{3})}.

Aspect algorithmique

[modifier |modifier le code]

Structures de données

[modifier |modifier le code]

La façon dont le graphe est représenté en tant qu'objet mathématique a été exposée dans la section précédente. Dans l'aspectalgorithmique de la théorie des graphes, on cherche à concevoir un processus efficace pour traiter un problème faisant intervenir un graphe. Les principaux critères d'efficacité d'un processus sont le temps nécessaire avant d'obtenir la réponse, et l'espace que le processus consomme dans son travail. La façon dont on représente le graphe influence la performance en temps et en espace : par exemple, si l'on veut connaître l'existence d'une arête entre deux sommets, la matrice d'adjacence permettra d'obtenir un résultat immédiatement, ce que l'on appelle enΘ(1){\displaystyle \Theta (1)}. En revanche, une opération de base telle que trouver le voisin d'un sommet est enO(n){\displaystyle {\mathcal {O}}(n)} sur une matrice d'adjacence : dans le pire des cas, il faudra scanner la totalité de la colonne pour s'apercevoir qu'il n'y a pas de voisin. Une autrestructure de données est laliste d'adjacence, consistant en un tableau dont l'entréei{\displaystyle i} donne la liste des voisins du sommeti{\displaystyle i} : sur une telle structure, trouver un voisin se fait enΘ(1){\displaystyle \Theta (1)} tandis que l'existence d'une arête est enO(n){\displaystyle {\mathcal {O}}(n)}. Ainsi, au niveau du temps, le choix de la structure dépend des opérations de base que l'on souhaite optimiser.

Un graphe étiqueté et sa représentation par liste d'adjacence ci-contre
Représentation par liste d'adjacence du graphe ci-contre:
0adjacent à0,1,2,3
1adjacent à0
2adjacent à0,3,4
3adjacent à0,2
4adjacent à2

De même, l'espace qu'une structure consomme dépend du type de graphe considéré : un raccourci abusif consiste à dire qu'une liste d'adjacences consomme moins d'espace qu'une matrice car celle-ci seracreuse, mais cela prend par exemple plus d'espace pour stocker un graphe aléatoire avec les listes qu'avec une matrice ; dans le cas général, une matrice utilise un espaceΘ(n2){\displaystyle \Theta (n^{2})} et les listes utilisentΘ(mlogn){\displaystyle \Theta (m\log n)} doncsi le graphe estdense alorsm{\displaystyle m} peut être suffisamment grand pour qu'une matrice consomme moins d'espace, etsi le graphe est peu dense alors les listes consommeront moins d'espace. Des modifications simples d'une structure de données peuvent permettre d'avoir un gain appréciable : par exemple, dans une représentationpartiellement complémentée d'une liste, un bit spécial indique si la liste est celle des voisins présentsou manquants ; cette technique permet d'avoir des algorithmes linéaires sur le complément d'un graphe[Algo 1].

Tandis que ces structures sont locales, il existe aussi des structures de donnéesdistribuées. Le principe de ces structures est de concevoir unschéma d'étiquetage tel que, pour deux sommetsx{\displaystyle x} ety{\displaystyle y}, on puisse répondre à une question comme « quelle est la distance entrex{\displaystyle x} ety{\displaystyle y} »uniquement en utilisant les étiquettes de ces nœuds ; une telle utilisation des étiquettes a été vue en section « Étiquetage et morphismes » avec le graphe de Kautz où l'on peut déduire le chemin entre deux sommets uniquement grâce à leur étiquette, et la longueur de ce chemin nous donne la distance. Un étiquetage estefficace s'il permet de répondre à une question donnée uniquement en utilisant deux étiquettes, tout en minimisant le nombre maximum de bits d'une étiquette[Algo 2]. Outre la distance, une question type peut être de tester l'adjacence, c'est-à-dire de savoir si deux sommets sont voisins ; notons que cela se ramène également au cas particulier d'une distance 1. Le premier exemple d'étiquetage efficace pour tester l'adjacence fut proposé dans le cas des arbres, et chaque étiquette est constituée de deux parties delogn{\displaystyle \log n} bits : la première partie identifie le sommet, et un nombre allant jusqu'àn{\displaystyle n} nécessitelogn{\displaystyle \log n} bits pour êtrecodé, tandis que la seconde partie identifie le parent de ce sommet ; pour tester l'adjacence, on utilise le fait que deux sommets sont voisins dans un arbre si et seulement si l'un est le parent de l'autre[Algo 3].

Sous-graphes utiles : séparateurs, spanners et arbres de Steiner

[modifier |modifier le code]
Cette section est vide, insuffisamment détaillée ou incomplète.Votre aide est la bienvenue !Comment faire ?

L'efficacité d'un schéma d'étiquetage est lié à la taille des séparateurs du graphe.

Définition — unséparateurS{\displaystyle S'} est un sous-ensemble de sommet qui « sépare » les sommets du graphe en deux composantsC1{\displaystyle C_{1}} etC2{\displaystyle C_{2}} tel queC1C2S=S{\displaystyle C_{1}\uplus C_{2}\uplus S'=S} et il n'y a pas d'arêtes entre des sommets deC1{\displaystyle C_{1}} etC2{\displaystyle C_{2}}.

Illustration d'un séparateur
Étant donné un graphe avec un ensemble de sommetsV{\displaystyle V}, ...
un séparateur est un ensemble de sommetsSV{\displaystyle S\subset V} tel que...
lorsqu'on le retire alors on sépare le graphe en deux composantesA1{\displaystyle A_{1}} etA2{\displaystyle A_{2}}.
Play Pause Stop Précédent Suivant Select
 

Si un graphe a des séparateurs de tailler(n){\displaystyle r(n)}, alors on peut par exemple concevoir des étiquettes deO(r(n)log2n){\displaystyle O(r(n)\log ^{2}n)} bits pour la distance ; ceci permet directement d'en déduire l'étiquetage pour des graphes dont on connaît la taille des séparateurs, tels un graphe planaire où le séparateur est de tailler(n)=n{\displaystyle r(n)={\sqrt {n}}}[Algo 4]. Enfin, il ne faut pas considérer que la taille de l'étiquetage mais également le temps nécessaire, étant donnés deux étiquettes, pour effectuer ledécodage répondant à la question (i.e. quelle est la distance ? sont-ils voisins ?).

Réduction de données

[modifier |modifier le code]
Cette section est vide, insuffisamment détaillée ou incomplète.Votre aide est la bienvenue !Comment faire ?

De nombreux problèmes sur les graphes sontNP-complets, c'est-à-dire difficiles à résoudre. Cependant, cette difficulté est inégale :certaines parties du problème peuvent être particulièrement difficiles, et en constituent ainsi le cœur, tandis que d'autres sont assez faciles à gérer. Ainsi, avant d'exécuter un algorithme sur un problème qui peut être difficile, il est préférable de passer du temps à réduire ce problème pour ne plus avoir à considérer que son cœur.

Notions connexes

[modifier |modifier le code]

Notes

[modifier |modifier le code]
  1. Il existe d'autres objets mathématiques portant le même nom, par exemple lesgraphes de fonctions, mais ceux-ci n'ont que peu de rapports avec les graphes étudiés ici.
  2. Au regard des mathématiques modernes, la formulation d'Euler est uneconjecture puisque le résultat est énoncé sans preuve. Cependant, les mathématiques en son temps ne présentaient pas la même rigueur : tandis que conjecturer un résultat signifie maintenant que l'on renonce à le démontrer, pour Euler l'absence d'une preuve peut signifier que celle-ci n'était pas considérée utile.

Références

[modifier |modifier le code]

Origines

[modifier |modifier le code]
  1. (la)Leonhard Euler -Solutio problematis ad geometriam situs pertinentis,Commentarii academiae scientiarum Petropolitanae 8, 1741, pages 128-140.
  2. (de) Carl Hierholzer, « Über die Möglichkeit, einen Linienzug ohne Wiederholung und ohne Unterbrechung zu umfahren », dansMathematische Annalen, vol. 6, 1873,p. 30–32
  3. (en) Martin G. -The arab role in the development of Chess, Al Shindagah 45, Mars-Avril 2002
  4. Alexandre-Théophile Vandermonde, « Remarques sur des problèmes de situation », dansMémoires de l’Académie Royale des Sciences, 1771,p. 566-574. Références par(ru)LJ.Rossia.org
  5. (en)William Tutte - Graph theory as I have known it,Oxford Science Publications, Clarendon Press, 1998,(ISBN 978-0-19-850251-7). Chapitre 2 :Knight Errant.
  6. (en)Arthur Cayley, « On the Theory of the Analytical Forms called Trees », dansPhil. Mag., 1857,p. 172-176
  7. Martin Aigner et Günter M. Ziegler, « La formule de Cayley pour le nombre d’arbres », dansRaisonnements divins,2e éd., 2006
  8. (en)James Joseph Sylvester, « Chemistry and algebra », dansNature,no 17, 7 février 1878, p. 284
  9. (en) Alfred Bray Kempe, « On the Geographical Problem of the Four Colours », dansAmerican Journal of Mathematics, vol. 2,no 3, septembre 1879,p. 193-200
  10. (de) Julius Petersen, « Die Theorie der regulären Graphen », dansActa Mathematica, vol. 15, 1891,p. 193-220
  11. (de) F. Bäbler, « Über die Zerlegung regulärer Streckencomplexe ungerader Ordnung », dansComment. Math. Helv., vol. 10, 1938,p. 275–287
  12. (en) Bela Bollobas, Extremal Graph Theory, Dover, 2004
  13. (en)Claude Berge, « Some classes of perfect graphs », dans « Six papers on Graph Theory »,Indian. Statistical Institute, Calcutta, 1969,p. 1-21
  14. Claude Berge,Graphes et hypergraphes, Dunod, 1970
  15. Claude Berge,Théorie des graphes et ses applications, Dunod, 1958

Flots

[modifier |modifier le code]
  1. (en) V.V. Ostapenko et A. P. Yakovleva, « Mathematical questions of modeling and control in water distribution problems », dansControl Cybern., vol. 20,no 4, 1991,p. 99-111
  2. (en) Kevin Wayne,Diaporama présentant l'équivalence entre la coupe minimale et le flot maximal. Support d'étude pour le livreAlgorithm Design de Jon Kleinberg et Éva Tardos, Addison Wesley, 2005.
  3. (en) John W. Chinneck,Practical optimization: a gentle introduction, 2001, chap. 10

Probabilités

[modifier |modifier le code]
  1. (en) Anatol Rapoport, « Contribution to the theory of random and biased nets », dansBulletin of Mathematical Biology, vol. 19,no 4, 1957
  2. (en) Paul Erdős et Alfréd Rényi, « On random graphs », dansPublicationes Mathematicae, vol. 6, 1959. Voir également des mêmes auteurs : « On the evolution ofrandom graphs », dansPublications of the Mathematical Institute of the Hungarian Academy of Sciences, vol. 5, 1960.
  3. (en) Rick Durrett,Random Graph Dynamics, Cambridge Series in Statistical and Probabilistic Mathematics, 2006, chap. 1
  4. (en) A. V. Lapshin, « The property of phase transitions in random graphs », dansProbabilistic Methods in Discrete Mathematics: Proceedings of the Third International Petrozavodsk Conference, Petrozavodsk, Russia, May 12-15, 1992
  5. (en) Bela Bollobas et Oliver Riordan,Percolation, Cambridge University Press, 2006. Cet ouvrage présente la théorie de la percolation avec une approche inspirée de la théorie des graphes.
  6. (en) Harry Kesten, « What is percolation? », dansNotices Amer. Math. Soc., vol. 53,no 5, 2006
  7. (en) Takashi Hara etGordon Slade, « Mean-field critical behaviour for percolation in high dimensions », dansCommun. Math. Phys., vol. 128, 1990
  8. (en) Albert-László Barabási et Reka Albert, « Emergence of scaling in random networks », dansScience,no 286, 1999
  9. (en) Philippe Giabbanelli,Self-improving immunization policies for epidemics over complex networks, thèse de master,Université Simon Fraser, 2009, sous la direction de Joseph G. Peters
  10. (en) Michael Molloy et Bruce A. Reed, « A critical point for random graphs with a given degree sequence », dansRandom Struct. Algorithms, vol. 6,no 2/3, 1995,p. 161–180
  11. (en) Xiafeng Li, Derek Leonard et Dmitri Loguinov, « On Reshaping of Clustering Coefficients in Degree-Based Topology Generators », dansAlgorithms and Models for the Web-Graph, Berlin, Springer, 2004,p. 68-79

Représentations

[modifier |modifier le code]
  1. J-C. Bermondet al.,Communications dans les réseaux de processeurs, Masson, 1994(ISBN 978-2-225-84410-2). Paru sous le pseudonymeJean de Rumeur.
  2. (en)Pavol Hell et Jaroslav Nesetril,Graphs and Homomorphisms, Oxford University Press, 2004(ISBN 978-0-19-852817-3)
  3. (en) Fan R. K. Chung,Spectral Graph Theory, coll. Regional Conference Series in Mathematics,no 92,AMS, 1997.
  4. (en)Neil Robertson etPaul D. Seymour, « Graph Minors II Algorithmic Aspects of Tree-Width », dansJournal of Algorithms, vol. 7,no 3, 1983
  5. (en) S. Arnborg, D.G. Corneil et A. Proskurowski, « Complexity of finding embedding in a k-tree », dansSIAM Journal on Discrete Mathematics, vol. 8, 1987,p. 277-284
  6. (en) Hans L. Bodlaender, « A linear time algorithm for finding tree-decomposition of small treewidth », dansSIAM journal on Computing, vol. 25, 1996,p. 1305-1317
  7. (en) Paul D. Seymour et R. Thomas, « Call routing and the ratcatcher », dansCombinatorica, vol. 14,no 2, 1994,p. 217-241
  8. (en) Q.P. Gu et H. Tamaki, « Optimal branch decomposition of planar graphs inO(n3){\displaystyle O(n^{3})} time », dansProceedings of the 32nd International Colloquium on Automata, Languages, and Programming, LNCS 3580, Springer-Verlag, 2005,p. 373-384
  9. Pour les notations et techniques, voir(en) Qianping Gu,« Tree/Branch Decompositions and Their Applications »(Archive.orgWikiwixArchive.isGoogleQue faire ?), notes de cours à l'Université Simon Fraser.

Aspect algorithmique

[modifier |modifier le code]
  1. [PDF](en) Elias Dahlhaus, Jens Gustedt et Ross M. McConnell, « Partially complemented representations of digraphs », dansDiscrete Mathematics and Theoretical Computer Science, vol. 5,no 1, 2002,p. 147-168
  2. (en) Stephen Alstrup et Theis Rauhe, « Small Induced-Universal Graphs and Compact Implicit Graph Representations », dansProceedings of the 43rd annual IEEE Symposium on Foundations of Computer Science, 2002,p. 53-62
  3. (en) Sampath Kannan,Moni Naor, et Steven Rudich, « Implicit Representation of Graphs », dansSIAM J. on Discrete Math., vol. 5, 1992,p. 596-603
  4. (en) Cyril Gavoille, David Peleg, Stéphane Pérennes et Ran Razb, « Distance labeling in graphs », dansJournal of Algorithms, vol. 53, 2004,p. 85-112

Bibliographie

[modifier |modifier le code]

Voir aussi

[modifier |modifier le code]

Articles connexes

[modifier |modifier le code]

Sur les autres projets Wikimedia :

Liens externes

[modifier |modifier le code]
v ·m
Codage
Modèles de calcul
Algorithmique
Syntaxe
Sémantique
Logique mathématique
Mathématiques discrètes
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Théorie_des_graphes&oldid=229472051 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2025 Movatter.jp