Graphe cordal

Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis Graphes cordaux)
Un cycle, en noir, avec deux cordes, en vert. Si l'on s'en tient à cette partie, le graphe est cordal. Supprimer l'une des arêtes vertes rendrait le graphe non cordal. En effet, l'autre arête verte formerait, avec les trois arêtes noires, un cycle de longueur 4 sans corde.

En théorie des graphes, on dit qu'un graphe est cordal si chacun de ses cycles de quatre sommets ou plus possède une corde, c'est-à-dire une arête reliant deux sommets non adjacents du cycle. Une définition équivalente est que tout cycle sans corde possède au plus trois sommets. Les graphes cordaux, aussi appelés graphes triangulés, sont un sous-ensemble des graphes parfaits.

On parle aussi de graphe triangulé.

Définition[modifier | modifier le code]

Un graphe est cordal s'il ne contient pas de cycle induit de longueur 4 ou plus[1],[2]. Un cycle induit de longueur quatre ou plus est appelé un trou. Le terme «graphe triangulé» est aussi utilisé car chaque cycle doit être un triangle[2].

Caractérisations[modifier | modifier le code]

Élimination parfaite[modifier | modifier le code]

Un ordonnancement d'élimination parfaite d'un graphe est un ordonnancement des sommets du graphe tel que, pour tout sommet , l'ensemble formé par et ses voisins qui se trouvent après lui forment une clique. Un graphe est cordal si et seulement s'il possède un ordonnancement d'élimination parfaite (Fulkerson et Gross 1965).

Graphes d'intersection de sous-arbres[modifier | modifier le code]

Un graphe cordal à huit sommets, représenté comme le graphe d'intersection de huit sous-arbres d'un arbre à six nœuds

Une autre caractérisation des graphes cordaux faite par Gavril 1974, utilise les arbres et leurs sous-arbres.

À partir d'une collection de sous-arbres d'un arbre , il est possible de définir un graphe sous-arbre qui est un graphe d'intersection avec un sommet par sous-arbre. Les arêtes relient les sous-arbres qui ont au moins un nœud en commun dans l'arbre . Comme Gavril l'a montré, les graphes sous-arbre sont exactement les graphes cordaux. Cette représentation forme une décomposition arborescente du graphe, où la hauteur du graphe vaut la taille de la plus grande clique du graphe moins un; la décomposition arborescente de n'importe quel graphe peut être vue de cette manière comme une représentation de comme un sous-graphe d'un graphe cordal.

Séparateurs[modifier | modifier le code]

Les graphes dont tous les séparateurs minimaux sont des cliques sont les graphes cordaux[3].

Relations avec d'autres classes[modifier | modifier le code]

Sous-classes[modifier | modifier le code]

Les graphes d'intervalles sont les graphes d'intersection de sous-arbres de graphes chemin ; ainsi, ils sont une sous-famille des graphes cordaux.

Les graphes scindés (ou « séparés », split graphs en anglais) sont exactement les graphes à la fois cordaux et complémentaires de graphes cordaux. Bender, Richmond et Wormald 1985 ont montré, en notant le nombre de graphes scindés à sommets et le nombre de graphes cordaux à sommets, que tendait vers 1 lorsque tendait vers l'infini.

Les graphes trivialement parfaits sont exactement les graphes qui sont à la fois des graphes cordaux et des cographes.

Sur-classes[modifier | modifier le code]

Les graphes cordaux sont une sous-classe des graphes sans trou pair et des graphes sans trou impair, puisque les graphes cordaux sont par définition les graphes sans trou (un trou étant un cycle de longueur au moins 4).

Aspects algorithmiques[modifier | modifier le code]

Reconnaissance des graphes cordaux[modifier | modifier le code]

Rose, Lueker et Tarjan 1976 (voir aussi Habib et al. 2000) montrent qu'un ordonnancement d'élimination parfaite d'un graphe cordal peut être trouvé de manière efficace en utilisant un algorithme appelée parcours en largeur lexicographique[4]. Cet algorithme maintient une partition des sommets du graphe sous forme d'une séquence d'ensembles. Au début, cette séquence est un seul ensemble avec tous les sommets. L'algorithme va ensuite choisir de manière répétée un sommet de l'ensemble le plus jeune dans la séquence qui contient les sommets pas encore choisis, et sépare chaque ensemble de la séquence en deux sous-ensembles, l'un contenant les voisins de dans et l'autre les sommets non-voisins. Quand cette séparation a été faite pour tous les sommets, la séquence est composée d'ensembles ne contenant qu'un seul sommet. Ces sommets se retrouvent dans l'ordre inverse de l'ordonnancement d'élimination parfaite.

Comme la recherche lexicographique en largeur d'abord et le fait de tester si un ordonnancement est un ordonnancement d'élimination parfaite peuvent être effectués en temps linéaire, il est possible de savoir si un graphe est cordal en temps linéaire.

L'ensemble de tous les ordonnancements d'élimination parfaite d'un graphe cordal peut être modélisé comme les mots de base d'un antimatroïde (en) ; Chandran et al. 2003 ont utilisé cette connexion avec les antimatroïdes dans un algorithme listant efficacement tous les ordonnancements d'élimination parfaite d'un graphe cordal donné.

Cliques maximales et coloration de graphes[modifier | modifier le code]

Une application de l'ordonnancement d'élimination parfaite est la recherche d'une clique maximum d'un graphe cordal en temps polynomial. Le problème similaire, mais pour un graphe quelconque, est NP-complet[5]. De manière générale, le nombre de cliques maximales dans un graphe cordal croît linéairement, tandis que cette croissance peut être exponentielle dans des graphes non cordaux. Pour lister toutes les cliques maximales d'un graphe cordal, il suffit de trouver un ordonnancement d'élimination parfaite, de créer une clique pour chaque sommet avec les voisins de venant après dans l'ordonnancement d'élimination parfaite, et de tester pour chacune des cliques ainsi formées si est maximale.

La plus grande clique maximale est une clique maximum et, comme les graphes cordaux sont des graphes parfaits, la taille de la clique est le nombre chromatique du graphe cordal. Un graphe cordal est parfaitement ordonnable : une coloration optimale peut être obtenue par application d'un algorithme de coloration gloutonne aux sommets dans l'ordre inverse de celui de l'ordonnancement d'élimination parfaite (Maffray 2003).

Bibliographie[modifier | modifier le code]

  • (en) E. A. Bender, L. B. Richmond et N. C. Wormald, « Almost all chordal graphs split », J. Austral. Math. Soc., Series A, vol. 38, no 2,‎ , p. 214–221, lien Math Reviews
  • (en) L. S. Chandran, L. Ibarra, F. Ruskey et J. Sawada, « Enumerating and characterizing the perfect elimination orderings of a chordal graph », Theoretical Computer Science, vol. 307,‎ , p. 303–317 (DOI 10.1016/S0304-3975(03)00221-4, lire en ligne).
  • (en) D. R. Fulkerson et O. A. Gross, « Incidence matrices and interval graphs », Pacific J. Math, vol. 15,‎ , p. 835–855 (lire en ligne)
  • (en) Fănică Gavril, « The intersection graphs of subtrees in trees are exactly the chordal graphs », Journal of Combinatorial Theory, Series B, vol. 16,‎ , p. 47–56 (DOI 10.1016/0095-8956(74)90094-X)
  • (en) Michel Habib, Ross McConnell, Christophe Paul et Laurent Viennot, « Lex-BFS and partition refinement, with applications to transitive orientation, interval graph recognition, and consecutive ones testing », Theoretical Computer Science, vol. 234,‎ , p. 59–84 (DOI 10.1016/S0304-3975(97)00241-7, lire en ligne).
  • (en) Richard M. Karp, « Reducibility Among Combinatorial Problems », dans Raymond E. Miller et James W. Thatcher, Complexity of Computer Computations, Plenum, (ISBN 978-1-4684-2003-6, DOI 10.1007/978-1-4684-2001-2_9, lire en ligne), p. 85-103
  • (en) Frédéric Maffray, « On the coloration of perfect graphs », dans Bruce A. Reed et Cláudia L. Sales, Recent Advances in Algorithms and Combinatorics, Springer-Verlag, coll. « CMS Books in Mathematics, vol. 11 », (DOI 10.1007/0-387-22444-0_3), p. 65–84.
  • (en) D. Rose, George Lueker et Robert E. Tarjan, « Algorithmic aspects of vertex elimination on graphs », SIAM Journal on Computing, vol. 5,‎ , p. 266–283 (DOI 10.1137/0205021).

Notes et références[modifier | modifier le code]

  1. Gena Hahn, « Graphes triangulés », .
  2. a et b Michel Habib, « Graphes triangulés (support de présentation) »,
  3. Gabriel Andrew Dirac, « On rigid circuit graphs », Abhandlungen aus dem Mathematischen Seminar der Universität Hamburg, vol. 25,‎ , p. 71-76 (DOI 10.1007/BF02992776, MR 0130190).
  4. Souvent abrégé en LexBFS
  5. C'est l'un des 21 problèmes NP-complets de Karp (Karp 1972).

Voir aussi[modifier | modifier le code]

Liens externes[modifier | modifier le code]

  • (en) H.N. de Ridder et al. 2001-2012, ISGCI (Information System on Graph Classes and their Inclusions), Graphclass: chordal.