Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les...

50

Transcript of Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les...

Page 1: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Cours dalgorithmique des graphes

du MPRI

Michel HabibReacutedigeacute par Philippe Gambette

23 janvier 2009

Table des matiegraveres

Table des matiegraveres 1

1 Introduction 3

11 Objectifs 312 Deacuteroulement du cours en 20062007 313 Remerciements 4

2 Les bases de theacuteorie des graphes 5

21 Vocabulaire de base 522 Un petit exercice pour sentraicircner agrave manipuler tout ccedila 623 Graphes et structures de donneacutees 7

3 Introduction agrave la deacutecomposition modulaire 8

31 Modules et partitions modulaires 832 Deacutecomposition modulaire 933 Familles partitives 1034 Proprieacuteteacutes des graphes premiers 1135 Les cographes 12

4 Algorithmes de deacutecomposition modulaire 13

41 Lapproche par le module minimal 1342 Lapproche par la sous-modulariteacute 1343 Lapproche par le graphe sandwich 1444 Lapproche par lanage de partitions 1545 Lapproche dEhrenfeucht et al 1746 Lapproche par les permutations factorisantes 17

5 Parcours en largeur lexicographique 18

51 Algorithme LexBFS 1852 Proprieacuteteacutes du parcours 1853 Calcul du diamegravetre dun graphe 1954 Algorithmes de reconnaissance 21

541 Reconnaissance des graphes trianguleacutes 21542 Reconnaissance des graphes dintervalles 23543 Historique des algorithmes 23544 Approche en deux eacutetapes 24545 Approche par la chaicircne des cliques maximales 24546 Approche par les sous-graphes exclus 25

1

6 Largeur arborescente 26

61 Arbre de cliques 2662 k-arbres 2763 Deacutecompositions arboreacutees 2964 Mineurs 31

7 Dualiteacute ordres graphes 33

71 Introduction les ordres dintervalles 3372 Deacutenitions de base sur les ordres 3373 Dimension dun ordre 3574 Graphes de permutation 3575 Graphes trapeacutezoiumldaux 3676 Orientation transitive et deacutecomposition modulaire 36

761 Calcul des Γ-classes 37762 Modules et Γ-classes 37763 Modules connexes 37764 Graphes premiers 37765 Γ-classe unique 38766 Γ-classe globale 38767 Connexiteacute et connexiteacute du compleacutementaire 38768 Deacutecomposition modulaire 38769 Orientations transitives et Γ-classes 397610 Orientations transitives et deacutecomposition modulaire 397611 Calcul des Γ-classes et deacutecomposition modulaire 397612 Reconnaissance des graphes de comparabiliteacute 39

8 Annexe 40

81 Lexique franccedilais-anglais 40

Index 42

Bibliographie 48

2

Chapitre 1

Introduction

Ces notes ont eacuteteacute prises agrave loccasion des cours dalgorithmique des graphes du Master Pari-sien de Recherche en Informatique1 en 20062007 donneacutes par Michel Habib (8 seacuteances de 90minutes)

11 Objectifs

Dans de nombreux domaines tels que la chimie la biologie les reacuteseaux de teacuteleacutecommunica-tions ou encore les reacuteseaux sociaux des modegraveles agrave base de graphes sont utiliseacutes quotidiennementen recherche De mecircme les graphes constituent des outils importants et tregraves utiliseacutes de modeacuteli-sation en informatique Pour sen convaincre il sut de consideacuterer la place faite aux algorithmessur les graphes dans les ouvrages classiques dalgorithmique (cf par exemple lexcellent Algo-rithm Design [KT06])

En eet malgreacute la simpliciteacute apparente de leur deacutenition les graphes capturent une largepart de la complexiteacute algorithmique (ie des classes de complexiteacute algorithmique telles P NP etbien dautres peuvent se deacutenir comme lensemble des problegravemes de graphes exprimables dansun certain fragment logique) Il est donc tregraves important de bien comprendre la structure desgraphes an dutiliser des modeacutelisations pertinentes agrave base de graphes (ie des modeacutelisationssur lesquelles les algorithmes de reacutesolution sont ecaces)

Ce module a deux objectifs principaux le premier concerne la compreacutehension de la com-plexiteacute structurelle des graphes via des deacutecompositions de graphes et les invariants de graphesassocieacutes tandis que le deuxiegraveme est centreacute sur la conception dalgorithmes ecaces sur lesgraphes et leacutetude des outils algorithmiques neacutecessaires

12 Deacuteroulement du cours en 20062007

bull Semaine 1 introduction graphes et logique applications de la theacuteorie des graphes classesde graphes algorithmes robustes

bull Semaine 3 modules (section 31) deacutecomposition modulaire (section 32) familles partitives(section 33) graphes premiers (section 34) cographes (section 35)

bull Semaine 4 algorithmes de deacutecomposition modulaire historique (section 4) approche dumodule minimal (section 41) approche des graphes sandwichs (section 43) permutationfactorisante (section 46)

bull Semaine 5 structures de donneacutees sur les graphes (section 23) deacutecomposition modulaire etanage de partition (section 44) algorithme LexBFS (section 51)

1 httpmprimasteruniv-paris7frC-2-29-1html

3

bull Semaine 6 correction de lexo 1 proprieacuteteacutes de LexBFS (section 52) calcul du diamegravetre(section 53) reconnaissance des graphes trianguleacutes et dintervalles (section 54)

bull Semaine 7 correction de lexo 6 sur les graphes dintervalles arbre de cliques (section 61)k-arbres (section 62) deacutecompositions arborescentes (section 63) mineurs (section 64)

bull Semaine 9 ordres dintervalles (section 71) extensions lineacuteaires (section 72) dimensiondun ordre (section 73) graphe de permutation (section 74) graphe trapeacutezoiumldal (sec-tion 75)

bull Semaine 10 examen

bull Semaine 11 corrigeacute du partiel (Γ-classes deacutecomposition modulaire et graphes de compara-biliteacute section 76)

13 Remerciements

Merci agrave Marc Mezzarobba Jean Daligault Guyslain Naves Geacuteraldine Del Mondo et SylvainRaybaud pour leurs relectures

agrave Vincent Limouzy et Fabien de Montgoler pour leurs chiers BibTeX (le BibTex deHans Bodlaender2 a aussi eacuteteacute abondamment utiliseacute)

agrave Matthieu Muato pour les astuces sur la creacuteation des gures

2 httpwwwcsuunl~hansbgraphs-bibindexhtml

4

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 2: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Table des matiegraveres

Table des matiegraveres 1

1 Introduction 3

11 Objectifs 312 Deacuteroulement du cours en 20062007 313 Remerciements 4

2 Les bases de theacuteorie des graphes 5

21 Vocabulaire de base 522 Un petit exercice pour sentraicircner agrave manipuler tout ccedila 623 Graphes et structures de donneacutees 7

3 Introduction agrave la deacutecomposition modulaire 8

31 Modules et partitions modulaires 832 Deacutecomposition modulaire 933 Familles partitives 1034 Proprieacuteteacutes des graphes premiers 1135 Les cographes 12

4 Algorithmes de deacutecomposition modulaire 13

41 Lapproche par le module minimal 1342 Lapproche par la sous-modulariteacute 1343 Lapproche par le graphe sandwich 1444 Lapproche par lanage de partitions 1545 Lapproche dEhrenfeucht et al 1746 Lapproche par les permutations factorisantes 17

5 Parcours en largeur lexicographique 18

51 Algorithme LexBFS 1852 Proprieacuteteacutes du parcours 1853 Calcul du diamegravetre dun graphe 1954 Algorithmes de reconnaissance 21

541 Reconnaissance des graphes trianguleacutes 21542 Reconnaissance des graphes dintervalles 23543 Historique des algorithmes 23544 Approche en deux eacutetapes 24545 Approche par la chaicircne des cliques maximales 24546 Approche par les sous-graphes exclus 25

1

6 Largeur arborescente 26

61 Arbre de cliques 2662 k-arbres 2763 Deacutecompositions arboreacutees 2964 Mineurs 31

7 Dualiteacute ordres graphes 33

71 Introduction les ordres dintervalles 3372 Deacutenitions de base sur les ordres 3373 Dimension dun ordre 3574 Graphes de permutation 3575 Graphes trapeacutezoiumldaux 3676 Orientation transitive et deacutecomposition modulaire 36

761 Calcul des Γ-classes 37762 Modules et Γ-classes 37763 Modules connexes 37764 Graphes premiers 37765 Γ-classe unique 38766 Γ-classe globale 38767 Connexiteacute et connexiteacute du compleacutementaire 38768 Deacutecomposition modulaire 38769 Orientations transitives et Γ-classes 397610 Orientations transitives et deacutecomposition modulaire 397611 Calcul des Γ-classes et deacutecomposition modulaire 397612 Reconnaissance des graphes de comparabiliteacute 39

8 Annexe 40

81 Lexique franccedilais-anglais 40

Index 42

Bibliographie 48

2

Chapitre 1

Introduction

Ces notes ont eacuteteacute prises agrave loccasion des cours dalgorithmique des graphes du Master Pari-sien de Recherche en Informatique1 en 20062007 donneacutes par Michel Habib (8 seacuteances de 90minutes)

11 Objectifs

Dans de nombreux domaines tels que la chimie la biologie les reacuteseaux de teacuteleacutecommunica-tions ou encore les reacuteseaux sociaux des modegraveles agrave base de graphes sont utiliseacutes quotidiennementen recherche De mecircme les graphes constituent des outils importants et tregraves utiliseacutes de modeacuteli-sation en informatique Pour sen convaincre il sut de consideacuterer la place faite aux algorithmessur les graphes dans les ouvrages classiques dalgorithmique (cf par exemple lexcellent Algo-rithm Design [KT06])

En eet malgreacute la simpliciteacute apparente de leur deacutenition les graphes capturent une largepart de la complexiteacute algorithmique (ie des classes de complexiteacute algorithmique telles P NP etbien dautres peuvent se deacutenir comme lensemble des problegravemes de graphes exprimables dansun certain fragment logique) Il est donc tregraves important de bien comprendre la structure desgraphes an dutiliser des modeacutelisations pertinentes agrave base de graphes (ie des modeacutelisationssur lesquelles les algorithmes de reacutesolution sont ecaces)

Ce module a deux objectifs principaux le premier concerne la compreacutehension de la com-plexiteacute structurelle des graphes via des deacutecompositions de graphes et les invariants de graphesassocieacutes tandis que le deuxiegraveme est centreacute sur la conception dalgorithmes ecaces sur lesgraphes et leacutetude des outils algorithmiques neacutecessaires

12 Deacuteroulement du cours en 20062007

bull Semaine 1 introduction graphes et logique applications de la theacuteorie des graphes classesde graphes algorithmes robustes

bull Semaine 3 modules (section 31) deacutecomposition modulaire (section 32) familles partitives(section 33) graphes premiers (section 34) cographes (section 35)

bull Semaine 4 algorithmes de deacutecomposition modulaire historique (section 4) approche dumodule minimal (section 41) approche des graphes sandwichs (section 43) permutationfactorisante (section 46)

bull Semaine 5 structures de donneacutees sur les graphes (section 23) deacutecomposition modulaire etanage de partition (section 44) algorithme LexBFS (section 51)

1 httpmprimasteruniv-paris7frC-2-29-1html

3

bull Semaine 6 correction de lexo 1 proprieacuteteacutes de LexBFS (section 52) calcul du diamegravetre(section 53) reconnaissance des graphes trianguleacutes et dintervalles (section 54)

bull Semaine 7 correction de lexo 6 sur les graphes dintervalles arbre de cliques (section 61)k-arbres (section 62) deacutecompositions arborescentes (section 63) mineurs (section 64)

bull Semaine 9 ordres dintervalles (section 71) extensions lineacuteaires (section 72) dimensiondun ordre (section 73) graphe de permutation (section 74) graphe trapeacutezoiumldal (sec-tion 75)

bull Semaine 10 examen

bull Semaine 11 corrigeacute du partiel (Γ-classes deacutecomposition modulaire et graphes de compara-biliteacute section 76)

13 Remerciements

Merci agrave Marc Mezzarobba Jean Daligault Guyslain Naves Geacuteraldine Del Mondo et SylvainRaybaud pour leurs relectures

agrave Vincent Limouzy et Fabien de Montgoler pour leurs chiers BibTeX (le BibTex deHans Bodlaender2 a aussi eacuteteacute abondamment utiliseacute)

agrave Matthieu Muato pour les astuces sur la creacuteation des gures

2 httpwwwcsuunl~hansbgraphs-bibindexhtml

4

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 3: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

6 Largeur arborescente 26

61 Arbre de cliques 2662 k-arbres 2763 Deacutecompositions arboreacutees 2964 Mineurs 31

7 Dualiteacute ordres graphes 33

71 Introduction les ordres dintervalles 3372 Deacutenitions de base sur les ordres 3373 Dimension dun ordre 3574 Graphes de permutation 3575 Graphes trapeacutezoiumldaux 3676 Orientation transitive et deacutecomposition modulaire 36

761 Calcul des Γ-classes 37762 Modules et Γ-classes 37763 Modules connexes 37764 Graphes premiers 37765 Γ-classe unique 38766 Γ-classe globale 38767 Connexiteacute et connexiteacute du compleacutementaire 38768 Deacutecomposition modulaire 38769 Orientations transitives et Γ-classes 397610 Orientations transitives et deacutecomposition modulaire 397611 Calcul des Γ-classes et deacutecomposition modulaire 397612 Reconnaissance des graphes de comparabiliteacute 39

8 Annexe 40

81 Lexique franccedilais-anglais 40

Index 42

Bibliographie 48

2

Chapitre 1

Introduction

Ces notes ont eacuteteacute prises agrave loccasion des cours dalgorithmique des graphes du Master Pari-sien de Recherche en Informatique1 en 20062007 donneacutes par Michel Habib (8 seacuteances de 90minutes)

11 Objectifs

Dans de nombreux domaines tels que la chimie la biologie les reacuteseaux de teacuteleacutecommunica-tions ou encore les reacuteseaux sociaux des modegraveles agrave base de graphes sont utiliseacutes quotidiennementen recherche De mecircme les graphes constituent des outils importants et tregraves utiliseacutes de modeacuteli-sation en informatique Pour sen convaincre il sut de consideacuterer la place faite aux algorithmessur les graphes dans les ouvrages classiques dalgorithmique (cf par exemple lexcellent Algo-rithm Design [KT06])

En eet malgreacute la simpliciteacute apparente de leur deacutenition les graphes capturent une largepart de la complexiteacute algorithmique (ie des classes de complexiteacute algorithmique telles P NP etbien dautres peuvent se deacutenir comme lensemble des problegravemes de graphes exprimables dansun certain fragment logique) Il est donc tregraves important de bien comprendre la structure desgraphes an dutiliser des modeacutelisations pertinentes agrave base de graphes (ie des modeacutelisationssur lesquelles les algorithmes de reacutesolution sont ecaces)

Ce module a deux objectifs principaux le premier concerne la compreacutehension de la com-plexiteacute structurelle des graphes via des deacutecompositions de graphes et les invariants de graphesassocieacutes tandis que le deuxiegraveme est centreacute sur la conception dalgorithmes ecaces sur lesgraphes et leacutetude des outils algorithmiques neacutecessaires

12 Deacuteroulement du cours en 20062007

bull Semaine 1 introduction graphes et logique applications de la theacuteorie des graphes classesde graphes algorithmes robustes

bull Semaine 3 modules (section 31) deacutecomposition modulaire (section 32) familles partitives(section 33) graphes premiers (section 34) cographes (section 35)

bull Semaine 4 algorithmes de deacutecomposition modulaire historique (section 4) approche dumodule minimal (section 41) approche des graphes sandwichs (section 43) permutationfactorisante (section 46)

bull Semaine 5 structures de donneacutees sur les graphes (section 23) deacutecomposition modulaire etanage de partition (section 44) algorithme LexBFS (section 51)

1 httpmprimasteruniv-paris7frC-2-29-1html

3

bull Semaine 6 correction de lexo 1 proprieacuteteacutes de LexBFS (section 52) calcul du diamegravetre(section 53) reconnaissance des graphes trianguleacutes et dintervalles (section 54)

bull Semaine 7 correction de lexo 6 sur les graphes dintervalles arbre de cliques (section 61)k-arbres (section 62) deacutecompositions arborescentes (section 63) mineurs (section 64)

bull Semaine 9 ordres dintervalles (section 71) extensions lineacuteaires (section 72) dimensiondun ordre (section 73) graphe de permutation (section 74) graphe trapeacutezoiumldal (sec-tion 75)

bull Semaine 10 examen

bull Semaine 11 corrigeacute du partiel (Γ-classes deacutecomposition modulaire et graphes de compara-biliteacute section 76)

13 Remerciements

Merci agrave Marc Mezzarobba Jean Daligault Guyslain Naves Geacuteraldine Del Mondo et SylvainRaybaud pour leurs relectures

agrave Vincent Limouzy et Fabien de Montgoler pour leurs chiers BibTeX (le BibTex deHans Bodlaender2 a aussi eacuteteacute abondamment utiliseacute)

agrave Matthieu Muato pour les astuces sur la creacuteation des gures

2 httpwwwcsuunl~hansbgraphs-bibindexhtml

4

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 4: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 1

Introduction

Ces notes ont eacuteteacute prises agrave loccasion des cours dalgorithmique des graphes du Master Pari-sien de Recherche en Informatique1 en 20062007 donneacutes par Michel Habib (8 seacuteances de 90minutes)

11 Objectifs

Dans de nombreux domaines tels que la chimie la biologie les reacuteseaux de teacuteleacutecommunica-tions ou encore les reacuteseaux sociaux des modegraveles agrave base de graphes sont utiliseacutes quotidiennementen recherche De mecircme les graphes constituent des outils importants et tregraves utiliseacutes de modeacuteli-sation en informatique Pour sen convaincre il sut de consideacuterer la place faite aux algorithmessur les graphes dans les ouvrages classiques dalgorithmique (cf par exemple lexcellent Algo-rithm Design [KT06])

En eet malgreacute la simpliciteacute apparente de leur deacutenition les graphes capturent une largepart de la complexiteacute algorithmique (ie des classes de complexiteacute algorithmique telles P NP etbien dautres peuvent se deacutenir comme lensemble des problegravemes de graphes exprimables dansun certain fragment logique) Il est donc tregraves important de bien comprendre la structure desgraphes an dutiliser des modeacutelisations pertinentes agrave base de graphes (ie des modeacutelisationssur lesquelles les algorithmes de reacutesolution sont ecaces)

Ce module a deux objectifs principaux le premier concerne la compreacutehension de la com-plexiteacute structurelle des graphes via des deacutecompositions de graphes et les invariants de graphesassocieacutes tandis que le deuxiegraveme est centreacute sur la conception dalgorithmes ecaces sur lesgraphes et leacutetude des outils algorithmiques neacutecessaires

12 Deacuteroulement du cours en 20062007

bull Semaine 1 introduction graphes et logique applications de la theacuteorie des graphes classesde graphes algorithmes robustes

bull Semaine 3 modules (section 31) deacutecomposition modulaire (section 32) familles partitives(section 33) graphes premiers (section 34) cographes (section 35)

bull Semaine 4 algorithmes de deacutecomposition modulaire historique (section 4) approche dumodule minimal (section 41) approche des graphes sandwichs (section 43) permutationfactorisante (section 46)

bull Semaine 5 structures de donneacutees sur les graphes (section 23) deacutecomposition modulaire etanage de partition (section 44) algorithme LexBFS (section 51)

1 httpmprimasteruniv-paris7frC-2-29-1html

3

bull Semaine 6 correction de lexo 1 proprieacuteteacutes de LexBFS (section 52) calcul du diamegravetre(section 53) reconnaissance des graphes trianguleacutes et dintervalles (section 54)

bull Semaine 7 correction de lexo 6 sur les graphes dintervalles arbre de cliques (section 61)k-arbres (section 62) deacutecompositions arborescentes (section 63) mineurs (section 64)

bull Semaine 9 ordres dintervalles (section 71) extensions lineacuteaires (section 72) dimensiondun ordre (section 73) graphe de permutation (section 74) graphe trapeacutezoiumldal (sec-tion 75)

bull Semaine 10 examen

bull Semaine 11 corrigeacute du partiel (Γ-classes deacutecomposition modulaire et graphes de compara-biliteacute section 76)

13 Remerciements

Merci agrave Marc Mezzarobba Jean Daligault Guyslain Naves Geacuteraldine Del Mondo et SylvainRaybaud pour leurs relectures

agrave Vincent Limouzy et Fabien de Montgoler pour leurs chiers BibTeX (le BibTex deHans Bodlaender2 a aussi eacuteteacute abondamment utiliseacute)

agrave Matthieu Muato pour les astuces sur la creacuteation des gures

2 httpwwwcsuunl~hansbgraphs-bibindexhtml

4

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 5: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

bull Semaine 6 correction de lexo 1 proprieacuteteacutes de LexBFS (section 52) calcul du diamegravetre(section 53) reconnaissance des graphes trianguleacutes et dintervalles (section 54)

bull Semaine 7 correction de lexo 6 sur les graphes dintervalles arbre de cliques (section 61)k-arbres (section 62) deacutecompositions arborescentes (section 63) mineurs (section 64)

bull Semaine 9 ordres dintervalles (section 71) extensions lineacuteaires (section 72) dimensiondun ordre (section 73) graphe de permutation (section 74) graphe trapeacutezoiumldal (sec-tion 75)

bull Semaine 10 examen

bull Semaine 11 corrigeacute du partiel (Γ-classes deacutecomposition modulaire et graphes de compara-biliteacute section 76)

13 Remerciements

Merci agrave Marc Mezzarobba Jean Daligault Guyslain Naves Geacuteraldine Del Mondo et SylvainRaybaud pour leurs relectures

agrave Vincent Limouzy et Fabien de Montgoler pour leurs chiers BibTeX (le BibTex deHans Bodlaender2 a aussi eacuteteacute abondamment utiliseacute)

agrave Matthieu Muato pour les astuces sur la creacuteation des gures

2 httpwwwcsuunl~hansbgraphs-bibindexhtml

4

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 6: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 2

Les bases de theacuteorie des graphes

21 Vocabulaire de base

Un graphe orienteacute ou digraphe G = (V E) est deacuteni comme un ensemble V de n som-

mets ou ndivideuds (n est appeleacute lordre du graphe) et un ensemble E sub V 2 de m arcs reliantces sommets Si deux sommets peuvent ecirctre relieacutes par plusieurs arcs on parle demultigrapheUn arc reliant le sommet v au sommet vprime est noteacute (v vprime)

Un graphe ou graphe simple non orienteacute sans boucle est un digraphe sans boucle1

G = (V E) tel que pour tout arc (v vprime) de E larc orienteacute dans lautre sens (vprime v) appartientaussi agrave E On parle alors darecirctes que lon continue agrave noter (v vprime) en consideacuterant que (v vprime) =(vprime v)

Deux sommets relieacutes par une arecircte sont dits adjacents ou voisins Le voisinage ou voisi-nage ouvert dun sommet v soit lensemble de ses sommets adjacents est noteacute N (v) Sa tailleest appeleacutee degreacute du sommet v et noteacutee deg(v) et un sommet de degreacute nul est dit isoleacute Ungraphe nayant que des sommets de degreacute d est appeleacute graphe d-reacutegulier

Le voisinage clos dun sommet v est deacuteni comme N [v] = N (v) cup v Deux sommets v1

et v2 sont dits vrais jumeaux sils ont le mecircme voisinage et sont adjacents cest-agrave-dire quilsont le mecircme voisinage clos N [v1] = N [v2] Ainsi deux sommets v1 et v2 sont faux jumeaux

sils ont le mecircme voisinage mais ne sont pas adjacents soit N (v1) = N (v2) On deacutenit aussi lenon-voisinage de v comme eacutetant N (v) = V N [v]

Fig 21 Le voisinage de v1 est N (v1) = v3 v4 v8 son degreacute est donc 3 Les sommets v5 etv6 sont isoleacutes et les deux sont des faux jumeaux v3 et v4 sont des vrais jumeaux Le graphe atrois composantes connexes v1 v2 v3 v4 v7 v8 v5 et v6

Un graphe est connexe si pour tous sommets x et y on peut atteindre y par une marche

agrave partir de x cest agrave dire une suite de ndivideuds (v0 = x v1 vk+1 = y) telle que vi soitvoisin de vi+1 pour tout i de J0 kK La connexiteacute est une relation deacutequivalence dont les classesdeacutequivalences sont appeleacutees composantes connexes du graphe G (une composante connexeest donc un ensemble maximal de sommets tel quon peut eectuer une marche dun sommetagrave lautre pour toute paire de sommets de cet ensemble sommets quon dit alors connecteacutes)

1 Une boucle est un arc reliant un sommet v agrave lui-mecircme (v v)

5

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 7: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Le compleacutementaire dun graphe non orienteacute G noteacute G est le graphe de sommets V etdarecirctes (v1 v2) isin V 2v1 6= v2E (si deux sommets distincts v et vprime sont adjacents dans Gils ne le seront pas dans G et inversement) Remarquons que v1 et v2 sont faux jumeaux dansG si et seulement si ils sont vrais jumeaux dans G

Le sous-graphe de G induit par un sous-ensemble de sommets S sube V noteacute G[S] est legraphe de sommets S et darecirctes E cap S2 cest-agrave-dire le graphe obtenu en gardant de G sessommets dans S et toutes les arecirctes les reliant Soit Gprime un graphe On dit quun graphe G estsans Gprime si aucun des sous-graphes de G nest isomorphe (identique agrave reacuteeacutetiquetage des ndivideudspregraves) agrave Gprime Un graphe partiel de G = (V E) est un graphe H = (V E prime) tel que E prime sube E (onpeut lobtenir agrave partir de G par des eacements darecirctes)

On note Kn la clique cest-agrave-dire le graphe complet agrave n sommets et n(nminus1)2

arecirctes (oun-clique) forallv 6= vprime isin V (v vprime) isin E Son compleacutementaire (cest-agrave-dire le graphe sans arecirctesagrave n eacuteleacutements) est noteacute Sn et appeleacute le stable agrave n eacuteleacutements On note Pn le chemin ou lachaicircne agrave n sommets cest-agrave-dire le graphe agrave n sommets v1 vn et n minus 1 arecirctes (vi vi+1)pour 1 6 i lt n Si lon ajoute une n-iegraveme arecircte (vn v1) on obtient le cycle agrave n sommetsCn En consideacuterant les arecirctes ci-dessus comme des arcs on obtient la deacutenition dun chemin

orienteacute et dun circuitUn graphe (V E) dont lensemble de sommets V peut ecirctre partitionneacute en V1 cup V2 de telle

sorte que V1 et V2 sont stables est un graphe biparti Si de plus E = V1 times V2 cest-agrave-direque toutes les arecirctes entre V1 et V2 sont dans G alors le graphe est biparti complet et noteacuteK|V1||V2|

(a) (b) (c) (d) (e)

Fig 22 La clique K5 (a) le stable S5 (b) le chemin P5 (c) le cycle C5 (d) le graphe biparticomplet K23 (e)

Une clique maximale dun graphe G est un sous-graphe induit G[V prime] V prime sube V tel queG[V prime] est une clique et forallV primeprime sup V prime G[V primeprime] nest pas une clique Par abus de notation on eacutecriraaussi parfois que lensemble de sommets lui-mecircme V prime est une clique maximale de G Attentionagrave ne pas confondre la clique maximale avec la clique maximum qui deacutesigne usuellement uneclique de taille maximale dun graphe

22 Un petit exercice pour sentraicircner agrave manipuler tout ccedila

Exercice 1 Eacutecrire un algorithme qui veacuterie lexistence dune clique agrave δ + 1 sommets dans ungraphe reacutegulier de degreacute δ Leacutetendre au cas ougrave le graphe nest pas δ-reacutegulier mais seulementde degreacute borneacute par δ

On remarque que dans un graphe δ-reacutegulier une clique agrave δ+1 sommets est une composanteconnexe agrave δ + 1 sommets

Si le graphe nest pas reacutegulier il sut de commencer par ltrer lensemble de deacutepart oninitialise S agrave lensemble des sommets du graphe de degreacute δ Puis tant quil existe a isin S ayantun voisin hors de S eacuteliminer a de S

Cet algorithme est en O(n + m)

6

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 8: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

23 Graphes et structures de donneacutees

Il existe plusieurs faccedilons de repreacutesenter un graphe en meacutemoire Dans tous les articles dal-gorithmique de graphes on fait lhypothegravese quon peut mettre dans un mot meacutemoire (quoncompte en O(1)) le numeacutero dun sommet (qui est donc en fait en log(|V |))

Voici quelques repreacutesentations possibles dun graphe la liste dadjacence O(|V | + |E|) mots en meacutemoire Le test dadjacence se fait en

O(|N (x)|) (on peut travailler avec des listes trieacutees et donc sarrecircter quand on deacutepasse lenumeacutero du sommet rechercheacute)

la matrice dadjacence O(|V |2) mots en meacutemoire Le test dadjacence est en O(1) dautres repreacutesentations personnaliseacutees un pointeur pour chaque arcParfois la matrice dadjacence ne peut ecirctre obtenue mais les listes dadjacences pour chaque

sommet locales peuvent ecirctre connues (typiquement dans le cas du graphe du web)

Exercice 2 Comment allier les avantages des deux repreacutesentations On veut acceacuteder agrave un arcen O(1) construire la repreacutesentation du graphe en O(n + m) en sautorisant un espace enO(n2)

Il est parfois non neacutecessaire de visiter tous les sommets (ou toutes les arecirctes) une seule foispour veacuterier une proprieacuteteacute de graphe (par exemple pour certaines proprieacuteteacutes du compleacutementairedun graphe) Il existe donc tregraves peu de bornes infeacuterieures pour des problegravemes sur les graphes

Il est possible aussi de taguer les matrices dadjacence des graphes orienteacutes avec 2n bitssuppleacutementaires un pour chaque ligne et un pour chaque colonne qui indiquent si la ligne oula colonne a eacuteteacute compleacutementeacutee Lideacutee est de reacuteduire ainsi signicativement le nombre de 1 dansles matrices dadjacence (ou la taille des listes dadjacence) et donc obtenir des algorithmes enO(n+mprime) avec mprime ltlt m sur des graphes orienteacutes [DGM02] Ces repreacutesentations partiellementcompleacutementeacutees de graphes orienteacutes sont illustreacutees en gure 23

1 2 3 41 1 1 1 02 0 0 1 03 1 0 1 14 1 0 0 0

rarr

1 2 3 41 0 1 0 02 1 0 0 03 0 0 0 14 0 0 1 0

Fig 23 Repreacutesentation partiellement compleacutementeacutee dun graphe orienteacute compleacutementer lescolonnes 1 et 3 permet de baisser la taille des listes dadjacence

7

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 9: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 3

Introduction agrave la deacutecomposition

modulaire

31 Modules et partitions modulaires

Les graphes consideacutereacutes dans la suite de ce chapitre sont nis non orienteacutes et sans boucle

Deacutenition 1 Pour un graphe G = (V E) un module est un sous-ensemble M sube V desommets ayant le mecircme voisinage exteacuterieur forallx y isin M N (x)M = N (y)M

Il existe une autre deacutenition eacutequivalente

Deacutenition 2 Un ensemble M de sommets dun graphe G = (V E) est un module ssi lessommets de M sont indistingables par les sommets exteacuterieurs forallv isin V M

soit M sube N (v) (tous les sommets de M sont adjacents agrave v) soit M capN (v) = empty (aucun sommet de M nest adjacent agrave v)

Exemples de modules (illustreacutes en gure 31) empty v pour tout sommet v et V qui sont appeleacutes modules triviaux les composantes connexes dun graphe ou de son compleacutementaire tout sous-ensemble du graphe complet Kn ou du stable Sn

Fig 31 Exemple de modules le sommet v1 les deux composantes connexesv1 v2 v3 v4 v5 v6 et v7 v8 ou encore les ensembles v3 v4 v5 v6 v1 v2 v5 v6

Un graphe est premier sil na que des modules triviaux Aucun graphe agrave trois sommetsnest premier Le plus petit graphe premier est le chemin P4 (son graphe compleacutementaire eacutetantaussi P4)

Linteacuterecirct des modules est de pouvoir contracter tous les sommets qui ont le mecircme compor-tement par rapport agrave lexteacuterieur

Proprieacuteteacute 1 M est un module de G hArr M est un module de G

Deacutenition 3 Le casseur dun ensemble A sube V est un sommet z isin A tel que existx y isin A avecz et x adjacents mais pas z et y comme montreacute en gure 32

8

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 10: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Fig 32 z est un casseur pour lensemble A contenant x et y Pour mettre en relief le fait quez et y ne sont pas adjacents on peut les relier par un trait discontinu

Cette deacutenition est motiveacutee entre autres par le lemme suivant

Lemme 1 Si z est un casseur pour A alors tout module contenant A doit contenir z

Deacutenition 4 Un module fort M est un module qui ne chevauche pas un autre module forallM prime

module MM prime = empty ou M primeM = empty ou M capM prime = emptyExercice 3 Eacutecrire un algorithme lineacuteaire qui calcule le graphe reacuteduit correspondant aux deuxopeacuterations suivantes contracter deux jumeaux eacuteliminer un sommet pendant (de degreacute 1)

Deacutenition 5 Une partition P de lensemble de sommets V dun graphe G est une partitionmodulaire si toute partie est un module de V On introduit donc le graphe quotient GP quicorrespond au graphe G dont les ensembles de sommets de P ont eacuteteacute contracteacutes en un sommetillustreacute en gure 33(b)

En particulier lensemble des singletons sommets est une partition modulaire dun graphe

Proprieacuteteacute 2 ([MR84]) Soit P une partition modulaire de G Lensemble de parties X sube Pest un module de GP ssi

⋃MisinX

M est un module de G

32 Deacutecomposition modulaire

Theacuteoregraveme 1 ([Gal67 MP01 CHM81]) Soit G un graphe ayant plus de 4 sommetsalors soit le graphe est non connexe (cest le cas parallegravele) soit le graphe compleacutementaire est non connexe (cest le cas seacuterie) soit GM(G) est un graphe premier ougrave M(G) est la partition modulaire contenantles modules forts maximaux (non triviaux) de G

On peut construire un algorithme de force brute en O(n3) pour calculer cette deacutecompositionDe plus on peut la repreacutesenter par un arbre de deacutecomposition modulaire tel que

la racine correspond agrave V les feuilles correspondent aux sommets chaque ndivideud correspond agrave un module fort il y a trois types de ndivideuds parallegravele seacuterie et premier un noeud correspondant au module N est ls de celui correspondant au module M ssi Mest le plus petit module fort tel que N ( M

La deacutecomposition modulaire a de nombreuses application structure pour les graphes de comparabiliteacute encodage compact en utilisant la contraction de modules et si on garde dans tout ndivideudpremier la structure du graphe premier

application possible dun paradigme diviser-pour-reacutegner pour reacutesoudre des problegravemesdoptimisation (par exemple pour le problegraveme du stable maximum reacutesolution du stablemaximum sur les ndivideuds premiers de larbre de deacutecomposition puis reacutesolution du stablemaximum pondeacutereacute sur le graphe quotient)

9

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 11: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

(a) (b) (c)

Fig 33 Un graphe (a) sa visualisation sous forme de graphe quotient (b) et son arbre dedeacutecomposition modulaire (c) les ndivideuds seacuteries sont eacutetiqueteacutes s les ndivideuds parallegraveles et lendivideud premiers p

meilleure compreacutehension des algorithmes de graphes et de leurs structures de donneacutees

33 Familles partitives

Proprieacuteteacute 3 Si deux modules M et M prime se chevauchent alors les ensembles suivants sont desmodules

(i) M cupM prime

(ii) M capM prime

(iii) MM prime

(iv) M ∆ M prime1

Deacutemonstration La deacutemonstration est facile par disjonction de cas entre sommets inteacuterieurs(appartenant agrave M cupM prime) ou exteacuterieurs

Ces proprieacuteteacutes nous incitent agrave chercher un cadre plus geacuteneacuteral en deacutenissant des objets quiles veacuterient et geacuteneacuteralisent donc la notion de deacutecomposition modulaire

Deacutenition 6 Soit S sube P(S) une famille de parties de S S est une famille partitive si S isin S empty isin S et forallx isin S x isin S pour toute paire de parties A B isin S qui se chevauchent

(i) A cupB isin S(ii) A capB isin S(iii) AB isin S et BA isin S(iv) A ∆ B isin SSi la condition (iv) nest pas veacuterieacutee on parle de famille faiblement partitive

La partition modulaire dun graphe est donc une famille partitive par le lemme preacuteceacutedent(la partition modulaire dun graphe orienteacute est une famille faiblement partitive) [CHM81]

De mecircme que pour les modules on dit que X isin S est un eacuteleacutement fort de la famille S silne chevauche aucun autre eacuteleacutement de S Lensemble des eacuteleacutements forts dune famille partitiveou faiblement partitive peut alors ecirctre organiseacute en un arbre ougrave lon peut distinguer certainsnoeuds deacutegeacuteneacutereacutes (ou fragiles) cest-agrave-dire que pour tout sous-ensemble des ls de ce noeudlunion des ensembles correspondant agrave ces noeuds appartient aussi agrave S

Theacuteoregraveme 2 ([CHM81]) Les familles partitives admettent un arbre de deacutecompositionavec deux types de ndivideuds deacutegeacuteneacutereacutes ou premiers

1 ∆ eacutetant la dieacuterence symeacutetrique M∆M prime = MM prime cupM primeM

10

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 12: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Theacuteoregraveme 3 ([CHM81]) Les familles faiblement partitives admettent un arbre dedeacutecomposition avec trois types de ndivideuds deacutegeacuteneacutereacutes premiers ou lineacuteaires

34 Proprieacuteteacutes des graphes premiers

Theacuteoregraveme 4 (Caracteacuterisation des graphes premiers) Soit G un graphe premier(|G| gt 4) alors G contient un P4

On a mecircme un theacuteoregraveme plus fort

Theacuteoregraveme 5 ([CI98] p 64-65) Soit G un graphe premier alors il a au plus unsommet non contenu dans un P4

Deacutemonstration Supposons quil existe v isin V qui nappartienne pas agrave un P4 alors le sous-graphe de G induit sur son non-voisinage G[N (v)] est un stable

En eet supposons par labsurde que ce ne soit pas le cas alors G[N (v)] contient unecomposante connexe C Comme G est premier alors C nest pas un module de G donc il existeun casseur α de C On peut donc trouver deux sommets adjacents dans la composante connexev1 et v2 tels que par exemple (lautre cas se traitant par symeacutetrie) v1 adjacent agrave α et que v2

non-adjacent agrave α comme illustreacute en gure 34 Remarquons alors que α est adjacent agrave v (si

Fig 34 Illustration de la preuve quun sommet v nappartenant pas agrave un P4 ne peut avoir unnon-voisinage qui ne soit pas un stable (sinon il est contenu dans le P4 v minus αminus v1 minus v2)

ce neacutetait pas le cas il appartiendrait agrave N (v) et eacutetant adjacent agrave v1 il appartiendrait agrave C etne pourrait donc pas ecirctre casseur de C) Ainsi le sous-graphe induit de G sur lensemble desommets v α v1 v2 est le P4 v minus αminus v1 minus v2 contradiction

Supposons maintenant quil existe deux sommets distincts v et vprime nappartenant pas agrave un P4Sans perte de geacuteneacuteraliteacute on peut consideacuterer que v et vprime sont non-adjacents (sinon on considegraverele graphe compleacutementaire) et donc vprime isin N (v) Comme v vprime nest pas un module de G alorsil existe un casseur β de cet ensemble On considegravere que β est adjacent agrave vprime et pas agrave v (lautrecas se traitant par symeacutetrie) vprime et β sont donc tous deux non-adjacents agrave v or on a montreacuteque G[N (v)] est un stable et donc vprime est nest pas adjacent agrave β contradiction

En fait Cournier et Ille deacutemontrent mecircme que sil existe un tel sommet v alors v est adjacentaux deux sommets inteacuterieurs dun P4 (G contient un sous-graphe agrave 5 sommets appeleacute taureauillustreacute en gure 35 qui est notons-le au passage isomorphe agrave son compleacutementaire)

Fig 35 Un taureau

11

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 13: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Theacuteoregraveme 6 (Schmerl Trotter Ille) Soit G un graphe premier (|G| = n gt 4) alorsG contient un graphe premier agrave nminus1 sommets ou un graphe premier agrave nminus2 sommets

Pour n gt 7 on a une version plus contrainte

Theacuteoregraveme 7 ([ST93a]) Soit G un graphe premier (|G| = n gt 7) alors G contientun graphe premier agrave nminus 2 sommets

35 Les cographes

Deacutenition 7 La classe des cographes est la plus petite classe de graphes contenant le grapheagrave un point et fermeacutee par compositions seacuterie et parallegravele2

Le terme cographe vient de completely reducible graph graphe complegravetement reacuteduc-tible agrave laide des opeacuterations seacuteries et parallegraveles

Theacuteoregraveme 8 Un graphe est un cographe ssi il ne contient pas de P4

Deacutemonstration Cette caracteacuterisation se deacuteduit du theacuteoregraveme sur les graphes premiers vu ensection preacuteceacutedente

On peut en calculer en temps lineacuteaire larbre de deacutecomposition modulaire dun cographequon appelle coarbre (voir chapitre 46) Les ndivideuds parallegraveles sont alors eacutetiqueteacutes par 0 etles ndivideuds seacuteries par 1

Larbre de deacutecomposition modulaire du compleacutementaire dun graphe G est obtenu en in-versant les 0 et 1 de larbre de deacutecomposition modulaire de G Pour savoir si deux ndivideuds dugraphe sont adjacents il sut de veacuterier que leur plus petit ancecirctre commun dans larbre dedeacutecomposition modulaire est un ndivideud seacuterie

Proprieacuteteacute 4 G est un cographe ssi il existe un ordre deacutelimination par sommets jumeaux

deacuteni comme suit σ = x1 xn tel que foralli isin J1 nK existj isin Ji nK tel que xi et xj sont des vraisjumeaux ou des faux jumeaux

Le premier algorithme de reconnaissance en temps lineacuteaire des cographes est ducirc agrave CorneilPearl et Stewart [CPS85] il est increacutemental

2 Soient G1 = (V1 E1) et G2 = (V2 E2) deux graphes La composition parallegravele de G1 et G2

est (V1cupV2 E1cupE2) leur composition seacuterie est (V1cupV2 E1cupE2cup(v1 v2)v1 isin V1 v2 isin V2)

12

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 14: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 4

Algorithmes de deacutecomposition modulaire

Un historique non exhaustif dalgorithmes de deacutecomposition modulaire est preacutesenteacute en -gure 411

Nous preacutesentons dans ce chapitre quelques approches principales utiliseacutees pour la deacutecompo-sition modulaire

On pourra aussi se reporter au meacutemoire dhabilitation de Christophe Paul [Pau06] pourdeacutecouvrir plusieurs approches algorithmiques agrave la deacutecomposition modulaire

41 Lapproche par le module minimal

Proprieacuteteacute 5 (Module minimal contenant un ensemble) Pour tout A sub V il existe un uniquemodule minimal contenant A

Deacutemonstration On considegravere tous les modules contenant A leur intersection contient A et estun module

On en deacuteduit un algorithme de force brute en O(n4) Pour toute paire de sommets (x y)on calcule le module minimal M(x y) contenant x et y de faccedilon increacutementale Initialisonsune variable TempModule avec x y Tant quil existe un casseur de TempModule lajouter agraveTempModule Sil nexiste pas de casseur de TempModule TempModule est bien un module etcest M(x y)

La complexiteacute de cet algorithme est en O(n2(n + m))2 et on peut en deacuteduire un test deprimaliteacute (en veacuteriant que le module minimal pour toute paire de sommets est V )

42 Lapproche par la sous-modulariteacute

Deacutenition 8 Soit V un ensemble ni Une fonction f deacutenie sur tous les sous-ensembles deV est sous-modulaire si forallX Y sub V f(X) + f(Y ) gt f(X cup Y ) + f(X cap Y )

En appelant s(A) le nombre de casseurs dun ensemble A non vide de sommets alors sest une fonction sous-modulaire Cest lideacutee de base de lalgorithme dUno et Yagiura pour ladeacutecomposition modulaire des graphes de permutation en temps lineacuteaire [UY00]

1 Dapregraves httpwwwliafajussieufr~fmHistDMhtml2 Pour arriver agrave cette complexiteacute il faut utiliser une bonne structure de donneacutees pour garder

en meacutemoire en permanence lintersection N des voisinages de tous les sommets de TempModuleAgrave larriveacutee dun candidat-casseur v on veacuterie (en O(|N (v)|)) si son voisinage est eacutegal agrave N sicest en eet un casseur il fait diminuer la taille de N sinon N reste inchangeacute

13

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 15: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Auteurs reacutefeacuterences Complexiteacute Commentaires

James Stanton Cowan [JSC72] O(n4) premier algorithme polynomialMaurer [Mau77] O(n4) graphes orienteacutesBlass [Bla78] O(n3)Habib Maurer [HM79] O(n3)Habib [Hab81] O(n3) graphes orienteacutesCunningham [Cun82] O(n3) graphes orienteacutesSteiner [Ste82] O(n3)Spinrad [Spi82] O(n2)Buer Moumlhring [BM83] O(n3)Corneil Perl Stewart [CPS85] O(n + m) cographesMc Creary [McC87] O(n3)Muller Spinrad [MS89] O(n2) increacutemental

Adhar Peng [AP90] O(log2 n) O(nm) parallegravele cographes CRCW-PRAMprocesseurs

Lin Olariu [LO91] O(log n) O(nm) parallegravele cographes EREW-PRAMprocesseurs

Cournier Habib [CH93] O(n + mα(mn))McConnell Spinrad [MS94 MS97 MS99] O(n + m)Cournier Habib [CH94] O(n + m)Ehrenfeucht Gabow McConnell Sullivan O(n2) 2-structures[EGMS94]Ehrenfeucht Harju Rozenberg [EHR94] O(n2) 2-structures increacutementalHabib Huchard Spinrad [HHS95] O(n + m) graphes dheacuteritageMcConnell [McC95] O(n2) 2-structures increacutementalBonizzoni Della Vedova [BV95 BV99] O(n3kminus5) hypergraphe de dimension kMorvan Viennot [MV96] parallegraveleCapelle Habib [CH97] O(n + m) si permutation factorisante fournieDahlhaus Gustedt McConnell O(n + m)[DGM97 DGM01]Habib Paul Viennot [HPV99] O(n + m log n) calcule une permutation factorisanteUno Yagiura [UY00] O(n) graphes de perm si reacutealisation connueMcConnell Spinrad [MS00] O(n + m log n)Habib Paul [HP01 HP05] O(n + m log n) cographesCapelle Habib Montgoler [CHdM02] O(n + m) graphes orienteacutes si perm fact fournieDahlhaus Gustedt McConnell [DGM02] O(n + m) graphes orienteacutesBretscher Corneil Habib Paul [BCHP03 BCHP08] O(n + m) cographes LexBFSHabib Montgoler Paul [HdMP04] O(n + m) calcule une permutation factorisanteShamir Sharan [SS04] O(n + m) cographes dynamiqueMcConnell Montgoler [MdM05] O(n + m) graphes orienteacutesBergeron Chauve Montgoler Ranot [BCdMR05] O(n) graphes de perm si reacutealisation connueTedder Corneil Habib Paul [TCHP08] O(n + m)

Fig 41 Historique de la deacutecomposition modulaire

43 Lapproche par le graphe sandwich

Deacutenition 9 ([GKS95]) Soient deux graphes G1 = (V E1) et G2 = (V E2) non orienteacutestels que E1 sube E2 et soit π une proprieacuteteacute Un graphe sandwich de G1 et G2 est un grapheGs = (V Es) tel que E1 sube Es sube E2 (les arecirctes de G1 sont obligatoires et celles de G2

sont interdites) Le problegraveme du graphe sandwich consiste agrave deacuteterminer sil existe un graphesandwich de G1 et G2 satisfaisant la proprieacuteteacute π

Toutefois de nombreux problegravemes de graphes sandwichs sont NP-complets en particulierquand la proprieacuteteacute π est

14

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 16: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Gs est un graphe trianguleacute3 Gs est un graphe de comparabiliteacute4On a quand mecircme des cas polynomiaux quand la proprieacuteteacute π est Gs est un cographe [GKS95] Gs admet un module non trivial [CEdFK98 SMTW01 HLP03]Remarquons quon peut geacuteneacuteraliser la notion de casseur aux problegravemes de graphes sand-

wichs

Deacutenition 10 Pour un sous-ensemble A sub V un casseur est un sommet z isin A tel queexistx y isin A avec (z x) isin E1 et (z y) isin E2

Le calcul du module sandwich minimal peut alors ecirctre fait en O(n2(n + m1 + m3)) (avecm1 = |E1| et m3 = |E2|) Il est dicile dobtenir une meilleure complexiteacute avec cette ideacutee

44 Lapproche par lanage de partitions

La technique danage de partition a eacuteteacute introduite dans les anneacutees 70 pour des problegravemesdisomorphismes de graphes [CG70] ou de minimisation dautomates [Hop71 CC82] ou le trides chaicircnes de caractegraveres [PT87] Lalgorithme de tri rapide Quicksort [Hoa61] peut aussi ecirctreconsideacutereacute comme un scheacutema danage de partition

Deacutenition 11 Soient P = X1 Xn et Q = Y1 Ym deux partitions de V On introduit une relation dordre pour deacutenir le treillis des partitions P Q ssi

forallj isin J1 mK existI sube 1 n Yj =⋃iisinI

Xi (chaque partie de Q est une union de parties de P )

A quoi correspondent inf et sup pour cette relation On peut deacutenir linf matheacutematique-ment inf(P Q) = A capBA isin P B isin Q

Notons que A cap B peut ecirctre vide lensemble vide nest en fait pas ajouteacute agrave la partitioninf(P Q)

Exemples soient P = 1 5 7|2 3|6 8|4 et Q = 1 5 6|2 3 4|7|8 alors inf(P Q) =1 5|2 3|4|6|7|8 et sup(P Q) = 1 5 6 7 8|2 3 4

Deacutenition 12 Lanage dune partition P = X1 Xn dun ensemble V par le pivotS sube V se deacutenit de la faccedilon suivante Q = Ane(S P ) = X1capS X1S XncapS XnS

Remarquons agrave nouveau que lensemble vide nest pas ajouteacute agrave Q et que Q P Exemple Ane(5 6 1 5 7|2 3|6 8|4) = 1 7|2 3|4|5|6|8

Proprieacuteteacute 6 Ane(S P ) = P ssi S est une union de parties de P

Proprieacuteteacute 7 (Dualiteacute) Ane(S P ) = Ane(S P )

Un anage peut ecirctre calculeacute en O(|S|) avec une bonne structure de donneacutees (liste double-ment chaicircneacutee geacuteneacuteralisation de la structure utiliseacutee pour reacutesoudre en temps lineacuteaire le problegravemedu drapeau hollandais [Dij76]5) Plus preacuteciseacutement cette structure consiste en un stockage des

3 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (le graphe estsans Ck pour k gt 4) voir section 541

4 Un graphe est un graphe de comparabiliteacute ssi ses arecirctes peuvent ecirctre orienteacutees transi-tivement si le graphe orienteacute reacutesultat contient larecircte a rarr b et b rarr c alors il contient aussilarecircte a rarr c voir aussi section 7

5 On a en entreacutee un tableau avec n bandes de tissu de trois couleurs dieacuterentes (bleu blancrouge) quil faut ranger par couleurs an de reconstituer le drapeau hollandais (dans lordre rouge blanc bleu) Pour cela il sut dutiliser un algorithme glouton et trois pointeurs sur

15

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 17: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

eacuteleacutements de V dans une liste doublement chaicircneacutee tel que tous les eacuteleacutements conseacutecutifs appa-raissent dans la mecircme partie de la partition Comme montreacute en gure 42 chaque eacuteleacutement a unpointeur vers la partie qui le contient et chaque partie a un pointeur vers son premier eacuteleacutementet son dernier eacuteleacutement dans la liste

Exemple la gure 42 illustre en deacutetails lalgorithme permettant deectuer un anagede partition en O(|S|) avec V = x1 x7 P = C1 C2 C3 et S = x3 x4 x5 ougrave C1 =x1 x3 x5 C2 = x2 x7 et C3 = x4 x6

(a)

(b)

(c)

(d)

Fig 42 On traite successivement chaque eacuteleacutement de S tout dabord x3 qui deacutecoupe la partieC1 (b) puis x4 qui deacutecoupe C3 (c) et enn x5 qui reacuteorganise C prime

1 et C primeprime1 (d)

Exercice 4 (Ordre doublement lexicographique) Trouver un algorithme ecace pour ordonnerlexicographiquement les lignes et les colonnes dune matrice

Exemple C1 C2 C3 C4 C5

L1 1 0 1 1 0L2 0 1 0 0 1L3 1 1 1 0 0L4 1 1 0 0 0L5 1 0 0 1 0

minusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusminusrarrtri doublement lexicographique

C3 C5 C2 C4 C1

L5 0 0 0 1 1L4 0 0 1 0 1L2 0 1 1 0 0L1 1 0 0 1 1L3 1 0 1 0 1

Un tel ordre existe toujours et pour les matrices dincidence de graphes non dirigeacutes il donne

un ordre sur les sommets aux proprieacuteteacutes inteacuteressantesLe meilleur algorithme connu [PT87] pour une matrice agrave n lignes m colonnes et e valeurs

non nulles est en O(L log L) ougrave L = n + m + e et il utilise lanage de partition Largument

des cases du tableau la case du bloc rouge la plus agrave droite la premiegravere case non rangeacutee (justeen dessous de la case du bloc blanc la plus agrave droite) et la case du bloc bleu la plus agrave gaucheA tout moment de lalgorithme en notant une case non rangeacutee R W et B une case du blocrespectivement rouge blanc ou bleu le tableau est de la forme R RW W B BAinsi on considegravere la case non encore rangeacutee la plus agrave gauche et selon sa couleur on la rangedans son bloc (agrave droite du rouge agrave droite du blanc ou agrave gauche du bleu) en deacuteplaccedilant la casequi eacutetait agrave sa place et en mettant agrave jour les pointeurs

16

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 18: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

doptimaliteacute de larticle est faux on peut donc encore espeacuterer trouver un algorithme lineacuteaire

Exercice 5 (Les jumeaux)Eacutecrire un algorithme lineacuteaire simple qui calcule toutes les classes de sommets jumeaux dungraphe G fourni en entreacutee

Algorithme 1 (Recherche des jumeaux)Partir avec P = V Pour tout sommet x isin V faire P = Ane

(N (x) P

)

A la n de lalgorithme 1 aucune partie de la partition ne peut ecirctre casseacutee par un sommetLes parties de P sont constitueacutees de faux jumeaux

Pour les obtenir les vrais jumeaux faire la mecircme chose sur le graphe compleacutementaire

45 Lapproche dEhrenfeucht et al

Le principe de lalgorithme dEhrenfeucht et al [EHR94] consiste agrave calculer la partition M(G v) formeacutee dun sommet v et de tous les modules maximauxne contenant pas v

calculer la deacutecomposition modulaire du graphe quotient GM(Gv) pour tout ensemble X isinM(G v) calculer la deacutecomposition modulaire de G[X]Lalgorithme original est en O(n2) mais peut-ecirctre ameacutelioreacute gracircce agrave lanage de partition

pour obtenir du O(n+m log n) [MS00] voire du O(n+mα(n m)) ou encore un temps lineacuteaireavec une impleacutementation plus compliqueacutee [DGM01]

46 Lapproche par les permutations factorisantes

Deacutenition 13 ([CH97]) Une permutation factorisante dun graphe G = (V E) est unepermutation de V telle que tout module fort de G est un facteur de la permutation

Lideacutee est quon peut calculer une permutation factorisante dun graphe en O(n+m log(n)) [HPV99]Elle permet alors de retrouver larbre de deacutecomposition modulaire en temps lineacuteaire [CHdM02]

Pour la premiegravere eacutetape de calcul de la permutation lalgorithme consiste agrave partir de lapartition N (v) vN (v) et agrave laner reacutecursivement en utilisant comme pivot un sommetdu graphe v et son voisinage (cet anage se fait en O(deg(v))) Pour les cographes cetteeacutetape peut se faire en temps lineacuteaire [HP01 Pau06] ce qui donne un algorithme lineacuteaire dereconnaissance des cographes Mentionnons toutefois quil existe un autre algorithme lineacuteairesimple de reconnaissance des cographes fonctionnant en deux parcours LexBFS6 [BCHP03BCHP08]

6 LexBFS voir chapitre suivant

17

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 19: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 5

Parcours en largeur lexicographique

Un rapport de synthegravese sur les applications de lalgorithme LexBFS a eacuteteacute preacutesenteacute par DerekCorneil agrave la confeacuterence WG 2004 [Cor04]

51 Algorithme LexBFS

Algorithme 2 (LexBFS parcours en largeur lexicographique)Donneacutees un graphe G = (V E) et un sommet source sReacutesultat un ordre total σ de V Aecter leacutetiquette empty agrave chaque sommetlabel(s) = nPour i de n agrave 1 faire Choisir un sommet v deacutetiquette lexicographique maximale σ(i) = v Pour chaque sommet non numeacuteroteacute w de N (v) faire label(w) = label(w)cupi Concateacutenation de i agrave la n de leacutetiquette de w

Cet algorithme illustreacute sur un exemple en gure 51 peut ecirctre impleacutementeacute comme le proposeGolumbic avec un tas [Gol80] mais il est plus simple de le consideacuterer comme un anage departition P0 = V (initialement tous les sommets ont une eacutetiquette vide et on va commencer leparcours depuis le sommet x puis le sommet y )P1 = x N (x) N (x)Etiquettes x emptyP2 = x y N (x) capN (y) N (x)minusN (y) N (x) capN (y) NN(x)minusN (y)Etiquettes x y x y empty

52 Proprieacuteteacutes du parcours

Proprieacuteteacute 8 Les proprieacuteteacutes suivantes montrent linteacuterecirct du parcours LexBFS si G est trianguleacute le dernier sommet visiteacute est simplicial1 si G est un cographe le dernier sommet visiteacute est un jumeau si G est un graphe dintervalles2 la derniegravere clique maximale visiteacutee peut ecirctre choisiecomme clique extrecircme dans une chaicircne de cliques maximales

1 Un sommet est simplicial si son voisinage est une clique2 Un graphe dintervalles est un graphe dintersection dintervalles de reacuteels voir section 542

18

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 20: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

(a) (b) (c)

(d) (e) (f)

(g) (h) (i)

Fig 51 Deacuteroulement de lalgorithme LexBFS sur un exemple

si G est un graphe de comparabiliteacute alors le dernier sommet visiteacute par un LexBFS sur Gpeut ecirctre choisi comme source dune orientation transitive de G

Les proprieacuteteacutes du parcours LexBFS sont particuliegraverement inteacuteressantes sur les classes degraphes heacutereacuteditaires (quand on enlegraveve un sommet au graphe il reste dans la classe) De plusles preuves sont aussi instructives car pas naturelles puisque les proprieacuteteacutes ne sont pas desproprieacuteteacutes dinvariant

53 Calcul du diamegravetre dun graphe

Deacutenition 14 Soit G un graphe non orienteacute On appelle distance entre v et vprime quon notedist(v vprime) la longueur du plus court chemin entre v et vprime et on deacutenit les proprieacuteteacutes suivantesde G

lexcentriciteacute dun sommet c de G exc(c) = maxvisinV

dist(c v)

le diamegravetre du graphe diam(G) = maxvisinV

exc(v)

le rayon du graphe rayon(G) = minvisinV

exc(v)

Le diamegravetre dun reacuteseau est lieacute agrave la qualiteacute de service il indique le plus mauvais cas possibleCest un paramegravetre de nombreux algorithmes distribueacutes (par diusion) Il est pourtant dicileagrave calculer il est plus facile den trouver une borne infeacuterieure sur les reacuteseaux en exhibantsimplement deux sommets agrave distance eacutegale agrave cette borne infeacuterieure

Theacuteoregraveme 9 ([Jor69]) Un arbre admet un ou deux centres (suivant la pariteacute dudiamegravetre) sommets par lesquels passent toutes les chaicircnes eacuteleacutementaires de longueurmaximum

En outre pour un arbre T rayon(T ) = ddiam(T )2

e

19

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 21: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Le diamegravetre se calcule en O(n) sur les arbres par un algorithme bottom-up (en proceacutedantpar eacutetapes successives deacement des feuilles)

Lalgorithme naiumlf pour les graphes consiste agrave calculer lexcentriciteacute de chaque sommet parn parcours en largeur ce qui a une complexiteacute en O(mn) Pour ecirctre plus ecace on peutrechercher plutocirct un algorithme qui calcule lensemble des plus courtes distances sur le graphepar une meacutethode agrave base de multiplications de matrices booleacuteennes ou de parcours dans legraphe

Inteacuteressons-nous au problegraveme de certicat du diamegravetre faut-il fournir toute la matrice desdist(v vprime) Si lon fournit seulement une arborescence des plus courtes chaicircnes issues dunsommet v on a seulement un encadrement exc(v) 6 diam(G) 6 2exc(v) (lineacutegaliteacute de droitevenant du fait quon peut passer par v pour aller dun sommet du graphe agrave un autre) En faitun certicat du fait que le diamegravetre de G est k est un graphe partiel H sub G de diamegravetre k (sipossible tel que son diamegravetre se calcule lineacuteairement)

Lalgorithme LexBFS permet de donner de bonnes approximations du diamegravetre sur certainesclasses de graphes

Theacuteoregraveme 10 ([CDHP01]) Deux parcours LexBFS successifs permettent de calculerle diamegravetre des arbres et de lapprocher agrave un pregraves sur les graphes trianguleacutes

Lalgorithme consiste agrave eectuer un premier parcours LexBFS du graphe qui se termine surun sommet u utiliseacute comme source du second parcours LexBFS qui se termine sur un sommetv on a alors diam(G) = dist(u v) ou diam(G) = dist(u v) + 1

Ce systegraveme de reacutepeacutetitions successives de parcours LexBFS constitue une excellente heuris-tique pour trouver une approximation du diamegravetre de grands graphes quelconques

Lideacutee de cette approximation agrave 1 pregraves permet deacutetablir un lien avec un autre problegraveme parmi une famille de parties X1 Xm dun ensemble agrave n eacuteleacutements telle que

sum16j6n

|Xj| = k

trouver deux ensembles Xi et Xj disjoints peut-il se faire en O(n + m + k) La relation avecle problegraveme de diamegravetre est illustreacutee en gure 52

Fig 52 Le graphe ci-dessus est constitueacute dune clique ainsi que trois sommets v1 v2 et v3

non adjacents deux agrave deux et adjacents respectivement agrave des sommets de la clique S1 S2S3 Si on peut trouver deux Si disjoints par exemple S1 cap S3 = empty alors le diamegravetre est 3 lediamegravetre est 2 sinon

Avec un simple parcours en largeur il est aussi possible dapproximer le diamegravetre

Theacuteoregraveme 11 ([CDK03]) Si G ne contient pas de cycle sans corde de longueursupeacuterieure ou eacutegale agrave k alors le parcours en largeur permet de trouver un sommet vtel que ecc(v) gt diam(G)minus bk2c

Deacutemonstration On ne donne pas la preuve mais quelques proprieacuteteacutes du parcours en largeurqui y sont utiles Soit σ isin Sn lordre de visite des sommets dun graphe G agrave n ndivideuds par unparcours en largeur de source s (σ(s) = 1 max σ(v) = n) Le parcours en largeur pouvant ecirctrevu comme un arbre couvrant de G de racine s pour tout sommet v 6= s on appelle p(v) le pegraveredu noeud v dans cet arbre On a alors les proprieacuteteacutes suivantes

20

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 22: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

si dist(s y) = q gt 0 alors dist(s p(y)) = q minus 1 et forallv 6= p(y) isin N (y)dist(s v) = q minus 1σ(v) gt σ(p(y))

si dist(s x) lt dist(s y) alors σ(x) lt σ(y) si dist(s x) = dist(s y) et σ(x) lt σ(y) alors soit σ(p(x)) lt σ(p(y)) soit p(x) = p(y) si dist(s x) = dist(s y) = dist(x z) σ(x) lt σ(y) lt σ(z) et p(x) adjacent de z alors

p(x) = p(y) = p(z) (et en particulier p(x) adjacent de y)

Theacuteoregraveme 12 ([CDK03]) Si v est le dernier sommet dun parcours en largeur dungraphe trianguleacute G alors ecc(v) gt diam(G)minus 1

Theacuteoregraveme 13 ([CDK03 Dra05]) Si v est le dernier sommet dun parcours en largeurdun graphe dintervalles G alors ecc(v) gt diam(G)minus 1 Si le parcours en largeur deG commence par une source s telle que N (s) 6= V alors parmi les noeuds du dernierniveau du parcours en largeur (ceux tels que la distance dist(s v) est maximale) ilen existe un dont lexcentriciteacute est eacutegale au diamegravetre de G

Ainsi on obtient un theacuteoregraveme geacuteneacuteral liant parcours en largeur et diamegravetre sur plusieursclasses de graphes

Theacuteoregraveme 14 ([CDK03]) Deux parcours en largeur successifs susent agrave calculerle diamegravetre des arbres et lapprocher agrave 1 pregraves sur les graphes trianguleacutes les graphessans triplet asteacuteroiumlde

54 Algorithmes de reconnaissance

541 Reconnaissance des graphes trianguleacutes

Rappelons la deacutenition dun graphe trianguleacute avant dintroduire celle dun ensemble seacutepa-rateur en vue dobtenir des caracteacuterisations des graphes trianguleacutes

Deacutenition 15 Un graphe est trianguleacute ssi tout cycle de longueur gt 4 contient une corde (legraphe est sans Ck pour k gt 4)

Deacutenition 16 Le sous-ensemble de sommets S sub V est un seacuteparateur de G sil existe aet b non adjacents dans G et non connecteacutes dans G[V S] On dit alors aussi que cest unab-seacuteparateur (voir gure 53) Si S minimal pour linclusion parmi tous les seacuteparateurs de Gcest un seacuteparateur minimal de G

Fig 53 c d e est un ab-seacuteparateur de G c d ou d e sont des ab-seacuteparateurs minimauxde G

Proprieacuteteacute 9 ([Dir61]) Dans tout graphe trianguleacute G tout seacuteparateur minimal de G est uneclique

21

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 23: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Fig 54 Tout seacuteparateur minimal S dun graphe trianguleacute est une clique sil ny avait pasdarecircte entre x et y le graphe aurait un cycle de longueur supeacuterieure ou eacutegale agrave 4

Deacutemonstration Soit S un seacuteparateur minimal de G alors il existe deux sommets a et b telsque S est un ab-seacuteparateur de G On appelle Ca (respectivement Cb) la composante connexede G[V S] contenant a (respectivement b)

Soient deux sommets x et y dans S supposons par labsurde quils ne sont pas adjacentsConsideacuterons alors le plus petit cycle de G contenant x y au moins un sommet de Ca et au

moins un sommet de Cb Comme S est minimal x est adjacent dun sommet de Ca et dunsommet de Cb De mecircme y est adjacent dun sommet Ca et dun sommet de Cb comme illustreacuteen gure 54 Et aucun sommet de Ca nest adjacent dun sommet de Cb donc un tel cycle existeet a une longueur supeacuterieure ou eacutegale agrave 4 (il doit passer successivement par x Ca y et Cb)

Or G est un graphe trianguleacute donc ce cycle contient une corde larecircte (x y) (par minimaliteacutedu cycle et puisquun sommet de Ca ne peut ecirctre adjacent dun sommet de Cb) contradiction

Cette proprieacuteteacute est utile pour la deacutemonstration des lemmes suivants qui permettent dabou-tir au theacuteoregraveme 15 de caracteacuterisation des graphes trianguleacutes agrave laide du parcours LexBFS

Lemme 2 ([Dir61]) Tout graphe trianguleacute possegravede au moins un sommet simplicial

Deacutemonstration Soit un graphe trianguleacute G = (V E) on procegravede par induction sur n = |V |pour prouver la proprieacuteteacute suivante qui est plus forte que le lemme tout graphe trianguleacutepossegravede au moins un sommet simplicial et si ce nest pas une clique alors il en possegravede aumoins deux non adjacents

Linitialisation eacutetant triviale pour n = 1 supposons que tout graphe trianguleacute agrave moins den sommets en possegravede un simplicial et deacutemontrons que G ayant n sommets en a un aussi

Si G est une clique alors tout sommet est simplicial Si ce nest pas le cas alors il possegravededeux sommets non adjacents a et b Soit S un ab-seacuteparateur minimal de G G[V S] a un certainnombre de composantes connexes (voir gure 55) appelons A (respectivement B) lensembledes sommets de celle qui contient a (respectivement b) Montrons que A contient un sommetsimplicial (on procegravede de mecircme pour B)

Fig 55 Les deux composantes connexes A et B contenant respectivement a et b seacutepareacutees parun ab-seacuteparateur minimal S de G contiennent chacune un sommet simplicial

Soit G[A cup S] est une clique Alors a est simplicial dans G[A cup S] Or tous les voisins dea appartiennent agrave G[A cup S] donc a est simplicial dans G

22

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 24: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Soit G[Acup S] nest pas une clique Comme b nappartient pas agrave Acup S G[Acup S] a moinsde n sommets donc on applique lhypothegravese de reacutecurrence G[A cup S] a deux sommetssimpliciaux non adjacents quon appelle x et y Trois cas se preacutesentent alors soit x isin A alors tous ses voisins sont dans A cup S donc x est aussi simplicial dans G soit y isin A alors de mecircme y est simplicial dans G soit x isin S et y isin S x et y ne sont pas adjacents mais S est un seacuteparateur minimal dungraphe trianguleacute donc ce devrait ecirctre une clique dapregraves la proprieacuteteacute 9 contradiction

Finalement dans tous les cas on a montreacute que A et B contiennent chacun au moins unsommet simplicial pour G ce qui conclut la deacutemonstration

Lemme 3 ([FG69]) Un graphe est trianguleacute ssi il possegravede un ordre deacutelimination simpliciale3

DeacutemonstrationrArr cette implication deacutecoule de lapplication reacutecursive du lemme preacuteceacutedent dans un graphetrianguleacute on trouve un sommet simplicial on le supprime le graphe obtenu reste un graphetrianguleacute lArr si un graphe nest pas trianguleacute alors il possegravede un cycle de plus de 3 sommets sans cordeet aucun sommet de ce cycle ne peut ecirctre eacutelimineacute simplicialement

Theacuteoregraveme 15 (Caracteacuterisation LexBFS [RTL76]) Un graphe G est trianguleacute ssitout ordre LexBFS de G est simplicial

Dautres caracteacuterisations des graphes trianguleacutes sont proposeacutees dans le theacuteoregraveme 17

542 Reconnaissance des graphes dintervalles

543 Historique des algorithmes

On rappelle tout dabord la deacutenition dun graphe dintervalles

Deacutenition 17 Un graphe G = (V = v1 vn E) est un graphe dintervalles sil estgraphe dintersection dun ensemble dintervalles de reacuteels cest agrave dire quil existe un ensembledintervalles Ii sub R 1 6 i 6 n appeleacute reacutealiseur (ou reacutealisation) de G tel que

foralli 6= j isin J1 nK (vi vj) isin E hArr Ii cap Ij 6= empty

Il existe plusieurs caracteacuterisations des graphes dintervalles dont certaines sont preacutesenteacuteesdans le theacuteoregraveme 18

Un historique non exhaustif des algorithmes de reconnaissance des graphes dintervalles estpreacutesenteacute en gure 56

544 Approche en deux eacutetapes

De nombreuses classes de graphes admettent des caracteacuterisations par un ordre sur les som-mets du graphe Lalgorithme de reconnaissance est alors de la forme

calculer un ordre veacuterier lordre trouveacute

3 Lordre total σ sur un graphe G est un ordre deacutelimination simpliciale de G si pourtout i isin J1 nK σ(i) est un sommet simplicial de G[σ(i) σ(i+1) σ(n)] cest agrave dire quonpeut retirer tous les sommets de G progressivement dans lordre σ tel que tout sommet enleveacuteait pour voisinage une clique

23

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 25: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Auteurs reacutefeacuterences Complexiteacute Commentaires

Lekkerkerker Boland [LB62] O(n4) sommets simpliciaux et triplets asteacuteroiumldesFulkerson Gross [FG69] O(n4) 1-conseacutecutifs pour matrice des cliques maxBooth Lueker [BL75 BL76] O(n + m) utilisation de PQ-treesKorte Mohring [KM86 KM89] O(n + m) utilisation de MPQ-trees et LexBFSRamalingam Pandu Rangan [RR90] O(n2) algo seacutequentiel et parallegraveleHsu Ma [HM91 HM99] O(n + m) utilisation de deacutecomposition modulaire et LexBFSSimon [Sim92] O(n + m) 4 LexBFS successifs contrexemple trouveacute par Ma

Hsu [Hsu93] O(n + m) variante de [HM91] pour la deacutec modulaireCorneil Olariu Stewart [COS98] O(n + m) 4 LexBFS successifsHabib Paul McConnell Viennot [HPMV00] O(n + m) LexBFS et anage de partition sur les cliques max

Fig 56 Historique de la reconnaissance des graphes dintervalles

Les deux eacutetapes peuvent avoir une complexiteacute dieacuterenteOn a deacutejagrave vu dans le lemme 3 que pour reconnaicirctre un graphe trianguleacute on peut chercher

un ordre deacutelimination simpliciale de ses sommets De mecircme reconnaicirctre un cographe revientagrave chercher un ordre deacutelimination par sommets jumeaux Pour les graphes de comparabiliteacuteon peut trouver un ordre sur les sommets qui est une extension lineacuteaire4 de lordre associeacute augraphe

On a aussi une caracteacuterisation des graphes de co-comparabiliteacute et des graphes dintervallespar un ordre avec une proprieacuteteacute particuliegravere De plus il existe dans les deux cas un ordreLexBFS satisant cette proprieacuteteacute

Proprieacuteteacute 10 (Caracteacuterisation des graphes de co-comparabiliteacute) G est un graphe de co-comparabiliteacute ssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors(x y) isin E ou (y z) isin E

Proprieacuteteacute 11 (Caracteacuterisation des graphes dintervalles [Ola91]) G est un graphe dintervallesssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z si (x z) isin E alors (x y) isin E(voir gure 57)

Fig 57 x y et z forment une ombrelle pour lordre σ tout graphe dintervalles admet unordre sans ombrelle sur ses sommets par exemple en consideacuterant un reacutealiseur du graphelordre des extreacutemiteacutes gauches en allant de gauche agrave droite

On a une proprieacuteteacute similaire pour les graphes de permutation5

Proprieacuteteacute 12 (Caracteacuterisation des graphes de permutation) G est un graphe de permutationssi il existe un ordre σ sur ses sommets tel que forallx σ y σ z

si (x z) isin E alors (x y) isin E ou (y z) isin E si (x z) isin E alors (x y) isin E ou (y z) isin E

545 Approche par la chaicircne des cliques maximales

Algorithme 3 (Reconnaissance des graphes dintervalles [HPMV00])

4 extension lineacuteaire voir chapitre 725 graphe de permutation voir chapitre 74

24

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 26: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Calcul agrave laide dun parcours LexBFS dun arbre des cliques maximales (il y en a O(m +n)) aux arcs orienteacutes depuis les derniegraveres vers les premiegraveres cliques trouveacutees

Anage de partition en utilisant les seacuteparateurs maximaux et en commenccedilant par laderniegravere clique trouveacutee dans larbre appeleacutee C1 la chaicircne de cliques rechercheacutee est de laforme

(C1 (les cliques qui contiennent les eacuteleacutements du seacuteparateur maximal entre C1 et sa

clique megravere dans larbre des cliques) (les autres cliques))

Veacuterication nale chaque sommet doit se trouver dans des cliques conseacutecutives au seinde la chaicircne de cliques Sinon le graphe nest pas un graphe dintervalles

546 Approche par les sous-graphes exclus

Il existe aussi une caracteacuterisation des graphes dintervalles par sous-graphes exclus quonpeut illustrer par le problegraveme du Duc de Densmore

Exercice 6 (Le problegraveme du Duc de Densmore dapregraves Claude Berge [Ber94])Le Duc de Densmore est retrouveacute mort dans lexplosion dune piegravece de son chacircteau de licircle deWhite Le meurtre a eacuteteacute commis agrave laide dune bombe placeacutee avec preacutecaution dans le labyrinthedu chacircteau ce qui a neacutecessiteacute une longue preacuteparation en cachette dans le labyrinthe Or avantson assassinat le duc avait inviteacute 8 femmes sur licircle celles-ci se rappellent quelles autres femmeselles y ont vu mais ont oublieacute agrave quelle date preacutecise elles y eacutetaient

Ann a vu Betty Cynthia Emily Felicia et Georgia Betty a vu Ann Cynthia et Helen Cynthia a vu Ann Betty Diana Emily et Helen Diana a vu Cynthia et Emily Emily a vu Ann Cynthia Diana et Felicia Felicia a vu Ann et Emily Georgia a vu Ann et Helen Helen a vu Betty Cynthia et Georgia

Le marin qui faisait la navette vers licircle a aussi oublieacute les dates mais il se souvient navoirtransporteacute chacune que pour un seul aller retour Le graphe de la relation a vu repreacutesenteacuteen gure 58 doit donc ecirctre un graphe dintervalles (chaque sommet repreacutesentant lintervallede temps quune inviteacutee a passeacute sur licircle) donc tout sous-graphe induit doit ecirctre un graphedintervalles

Fig 58 Le graphe ci-dessus dont les sommets sont associeacutes aux inviteacutees sur du Duc de Dens-more devrait ecirctre un graphe dintervalles si chaque inviteacutee eacutetait resteacutee pendant un intervallede temps continu sur licircle ce qui laurait empecirccheacute de sabsenter pour preacuteparer lattentat

Or les 3 sous-graphes suivants posent problegraveme G[a b g h] (les intervalles correspondant agrave a et h sont disjoints donc ceux de b et gdoivent se trouver entre les deux pour les intersecter or ils sont aussi disjoints impos-sible)

G[a c g h] (mecircme raisonnement C4 nest pas un graphe dintervalles) G[a b c d e f] (les intervalles correspondant agrave f b et d doivent ecirctre disjoints consideacute-rons les autres cas se traitant de faccedilon analogue quils sont placeacutes dans cet ordre alorscelui correspondant agrave e doit se trouver entre les intervalles de f et d ce qui est impossiblepuisquil nintersecte pas lintervalle de b)

25

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 27: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

On remarque que le noeud a est le seul agrave apparaicirctre dans ces trois sous-graphes interdits Ann est donc certainement la coupable

26

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 28: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 6

Largeur arborescente

Ce concept est agrave lintersection de nombreux domaines (satisfaction de containtes bases dedonneacutees optimisation) On a en particulier des reacutesultats tregraves divers utilisant des proprieacuteteacutes desgraphes agrave largeur arborescente borneacutee

On pourra aussi se reporter agrave la synthegravese de Bodlaender [Bod05] ou agrave sa page web sur lesujet httpwwwcsuunl~hansbtreewidthlib

61 Arbre de cliques

Deacutenition 18 Un arbre de cliques maximales dun graphe trianguleacute G est un arbre Tdont les ndivideuds sont les cliques maximales les arecirctes sont les seacuteparateurs minimaux et surlequel chaque sommet de G correspond agrave un sous-arbre (induit par lensemble des noeuds delarbre eacutetiqueteacutes par une clique max qui contient ce sommet)

(a) (b) (c)

Fig 61 Un graphe trianguleacute G (a) son arbre de cliques maximales (b) et la famille desous-arbres de cet arbre dont G est le graphe dintersection (c) Chaque arecircte de larbre decliques maximales peut ecirctre eacutetiqueteacutee par un seacuteparateur minimal de G lensemble des sommetscommuns aux deux cliques relieacutees par larecircte

Un tel arbre peut ecirctre obtenu par lalgorithme LexBFS [RTL76]

Theacuteoregraveme 16 (Caracteacuterisation des graphes dintervalles [GH64]) Un graphe est ungraphe dintervalles ssi il admet un arbre des cliques qui est une chaicircne

Voir lalgorithme 3

27

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 29: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Theacuteoregraveme 17 (Caracteacuterisation des graphes trianguleacutes [Dir61 FG69 Gav74]) SoitG un graphe Les quatre propositions suivantes sont eacutequivalentes

(i) G trianguleacute

(ii) G admet un scheacutema deacutelimination simpliciale

(iii) G admet un arbre de cliques maximales

(iv) G est le graphe dintersection dune famille de sous-arbres dun arbre

Deacutemonstration (i) hArr (ii) voir lemme 3(iii) rArr (iv) G est le graphe dintersection dune famille (Tv) de sous-arbres de larbre

de cliques maximales chaque sous-arbre Tv recouvrant les ndivideuds de larbre dont leacutetiquettecontient le noeud v comme montreacute en gures 61(b) et (c)

Proprieacuteteacute 13 On peut trouver une clique max dun graphe trianguleacute en temps lineacuteaire parmitous les sommets dans le scheacutema deacutelimination simpliciale on choisit le sommet v qui maximise1 + |N (v)| Lui et son voisinage constituent une clique max

Deacutemonstration Consideacuterons les cliques max et le premier sommet de ces cliques max atteintpar le scheacutema deacutelimination simpliciale Lui mecircme et son voisinage constituent bien la cliquemax qui sera trouveacutee par lalgorithme

Cet algorithme fournit aussi un algorithme de coloration on commence par colorier laclique max puis on eectue un coloriage glouton

On remarque aussi quil y a au plus n cliques maximales dans un graphe trianguleacute (alorsquil y peut y en avoir 2n dans un graphe quelconque) On en deacuteduit que larborescence descliques maximales se calcule en O(n + m)

En revanche le graphe dintersection des cliques maximales se calcule en O(n2)1

Theacuteoregraveme 18 (Caracteacuterisation des graphes dintervalles) Soit G un graphe Lesquatre propositions suivantes sont eacutequivalentes

(i) G graphe dintervalles

(ii) G trianguleacute et G graphe de comparabiliteacute

(iii) G admet une chaicircne de cliques maximales cest-agrave-dire quil existe un ordretotal sur les cliques maximales tel que pour tout v les cliques contenant v sontconseacutecutives

Deacutemonstration (i) rArr (ii) si on connaicirct une reacutealisation de G en traccedilant le graphe de larelation est agrave gauche de pour les intervalles de cette reacutealisation on obtient bien G (on en ade plus une orientation transitive)

62 k-arbres

Deacutenition 19 Un k-arbre se construit par reacutecurrence de la faccedilon suivante une clique agrave k + 1 sommets est un k-arbre si G est un k-arbre en ajoutant un nouveau sommet adjacent agrave exactement lensembledes sommets dune k-clique de G on obtient un k-arbre Gprime

Remarque 1 Les 1-arbres sont les arbres Les 2-arbres (voir un exemple en gure 62) sont desgraphes seacuteries-parallegraveles (voir proprieacuteteacute 17)

1 exemple pour indiquer que ccedila ne peut se calculer en O(n + m)

28

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 30: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Remarque 2 Tout k-arbre est un graphe trianguleacute et toutes ses cliques maximales ont k + 1sommets

Proprieacuteteacute 14 ([Ros74]) Un graphe G est un k-arbre ssi il est connexe quil a une k-clique etpas de k + 2-clique et que tout seacuteparateur minimal est une k-clique

Proprieacuteteacute 15 Un graphe G agrave strictement plus de k sommets est un k-arbre ssi il existe unscheacutema deacutelimination (v1 v2 vn) tel que chaque sommet vi pour i isin J1 nminuskK est adjacentagrave une k-clique dans G[vi vi+1 vn]

Proprieacuteteacute 16 Si G est un k-arbre alors il est trianguleacute et toutes ses cliques maximales ontk + 1 sommets

Deacutenition 20 Un k-arbre partiel est un graphe partiel dun k-arbre (cest-agrave-dire un k-arbreduquel on a enleveacute des arecirctes)

Proprieacuteteacute 17 La classe des graphes seacuteries-parallegraveles2 est exactement celle des 2-arbres par-tiels

Deacutenition 21 La largeur arborescente dun graphe G est le plus petit k tel que G est unk-arbre partiel

Fig 62 Graphe de largeur arborescente 2 en le triangulant cest agrave dire en ajoutant les nesarecirctes grises on obtient un 2-arbre

Lideacutee de cette deacutenition est donc quon va compleacuteter G pour en faire un graphe trianguleacutespeacutecial un k-arbre comme illustreacute en gure 62 On va donc trianguler G ce qui motive ladeacutenition suivante

Deacutenition 22 Une compleacutetion trianguleacutee ou triangulation dun graphe G = (V E) estun graphe H = (V F ) tel que E sube F et H est un graphe trianguleacute

On a une deacutenition similaire pour les graphes dintervalles

Deacutenition 23 Une compleacutetion dintervalles dun graphe G = (V E) est un graphe H =(V F ) tel que E sube F et H graphe est un graphe dintervalles

Ces deacutenitions permettent de deacutenir quatre problegravemes prenant en entreacutee un graphe G 2 un graphe seacuterie-parallegravele se deacutenit par reacutecurrence de la faccedilon suivante une paire de

sommets adjacents est un graphe seacuterie-parallegravele tout comme la composition seacuterie et la com-position parallegravele de deux graphes seacuteries-parallegraveles La composition parallegravele de deux graphesG et Gprime est deacutenie par rapport agrave deux sommets x et y de G et xprime et yprime de Gprime de la faccedilonsuivante on identie les sommets x et xprime dune part y et yprime dautre part puis on fait luniondes arecirctes et des sommets des deux graphes Pour la composition seacuterie on eectue le mecircmeprocessus en identiant non pas les sommets x avec xprime et y avec yprime mais en identiant y et xprimeEn dautres termes on choisit une source et une destination agrave chacun des deux graphes quonconsidegravere comme de simples segments pour soit les recoller en parallegravele soit les recoller lunderriegravere lautre

29

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 31: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Problegraveme 1 (MinimumFill-In ChordalCompletion) Trouver une triangulation H =(V F ) de G = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 19 ([Yan81]) Le problegraveme MinimumFill-In est NP-complet

Problegraveme 2 (Treewidth) Trouver une triangulation H de G ayant une largeur arborescenteminimale cest-agrave-dire une clique maximum de taille minimale

Theacuteoregraveme 20 ([ACP87]) Le problegraveme Treewidth est NP-complet

Problegraveme 3 (IntervalCompletion) Trouver une compleacutetion dintervalles H = (V F ) deG = (V E) minimisant |FE| le nombre darecirctes ajouteacutees

Theacuteoregraveme 21 ([KF79a Yan81] [GJ79] GT35) Le problegraveme IntervalComple-

tion est NP-complet

Problegraveme 4 (Pathwidth) Trouver une compleacutetion dintervalles H de G ayant une cliquemaximum de taille minimale (ce qui correspond agrave une largeur lineacuteaire concept deacuteni dans lasection suivante minimale)

Theacuteoregraveme 22 ([KF79b ACP87]) Le problegraveme Pathwidth est NP-complet

Mecircme si ces problegravemes sont NP-complets et le restent sur des classes de graphes mecircme tregravesrestreintes (les graphes bipartis par exemple [Klo93]) il existe pour les reacutesoudre des algorithmesdapproximation [Bod05]

63 Deacutecompositions arboreacutees

Cette approche correspond agrave celle utiliseacutee par Robertson et Seymour pour introduire lesnotions de largeur arborescente et largeur lineacuteaire [RS83 RS86]

Deacutenition 24 Une deacutecomposition arborescente dun graphe G = (V E) est une paireDT (G) = (S T ) ougrave S = Vii isin I est une collection de sous-ensembles de V et T un arbreaux ndivideuds eacutetiqueteacutes par les eacuteleacutements de S tel que

(i)⋃iisinI

Vi = V

(ii) foralle isin E existi isin I tq e isin E cap V 2i (pour toute arecircte de E un des sous-ensembles Vi contient

les deux sommets joints par cette arecircte)

(iii) forallv isin V les Vi contenant v forment un sous-arbre de T

Deacutenition 25 Une deacutecomposition de chemins dun graphe G = (V E) se deacutenit aussicomme une paire DC(G) = (S T ) avec les mecircmes proprieacuteteacutes mais de plus T est un chemin

En utilisant ces deacutecompositions illustreacutees en gure 63 on peut obtenir une deacutenition eacutequi-valente de la largeur arborescente et de la largeur lineacuteaire

30

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 32: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

(a)

(b)

(c)

Fig 63 Deacutecompositions arboreacutees dun graphe (a) une deacutecomposition arborescente (b) et unedeacutecomposition de chemins (c)

Theacuteoregraveme 23 La largeur arborescente dun graphe G noteacutee tw(G) est le mini-mum parmi toutes les deacutecompositions arborescentes de G de la taille de leur plusgrande eacutetiquette -1

tw(G) = minDT (G)=(ST )

maxViisinS

|Vi| minus 1

La largeur lineacuteaire dun graphe G noteacutee pw(G) est le minimum parmi toutes lesdeacutecompositions de chemins de G de la taille de leur plus grande eacutetiquette -1

pw(G) = minDC(G)=(ST )

maxViisinS

|Vi| minus 1

Deacutemonstration On obtient facilement les ineacutegaliteacutes dans les deux sens

Proprieacuteteacute 18 La largeur arborescente des graphes bipartis complets des grilles et des graphescomplets est connue

(i) tw(Kij) = min(i j)

(ii) tw(Gitimesj) = min(i j) (Gitimesj eacutetant la grille dordre i j)

(iii) tw(Kn) = nminus 1

Deacutemonstration (i) Soit Kij un graphe biparti complet dont lensemble des sommets se parti-tionne en V1 de taille i et V2 de taille j Soient a et b deux sommets de V1 c et d deux sommetsde V2 Dans la triangulation de Kij correspondant agrave un tw(Kij)-arbre supposons que a et bne sont pas adjacents et c et d non plus Alors comme on a c minus a et c minus b et d minus a et d minus balors on a un cycle C4 sans corde absurde Donc soit a et b sont relieacutes soit c et d le sontdonc tw(Kij) gt min i j

Trivialement cette borne est atteinte (on triangularise en reliant deux agrave deux tous les som-mets du plus petit ensemble parmi V1 et V2) donc on a bien leacutegaliteacute voulue

Ces deacutecompositions permettent dappliquer des algorithmes de programmation dynamiquesur larbre de deacutecomposition arborescente enracineacute sur un sommet Lapplication de tels algo-rithmes prendra donc du temps sur les feuilles contenant le plus de sommets ce qui expliquequon preacutefegravere travailler sur des graphes de largeur arborescente borneacutee

De tels graphes apparaissent dans de nombreux domaines le graphe de ux de controcircle de programmes sans instruction GOTO dans un certainnombre de langages impeacuteratifs (comme C Pascal ) a une largeur arborescente borneacuteepar une petite constante [Tho98] Ces reacutesultats expliquent pourquoi les programmes decoloration utiliseacutes pour aecter les registres lors de la compilation fonctionnaient si bien

problegraveme du voyageur de commerce (qui consiste agrave trouver le cycle hamiltonien de poids leplus faible dans un graphe complet aux arecirctes valueacutees) Chvaacutetal propose de calculer cinqcycles hamiltoniens en utilisant cinq heuristiques dieacuterentes de reacutesolution du problegraveme du

31

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 33: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

voyageur de commerce et consideacuterer le graphe formeacute par la superposition de ces cycles quiest un graphe de largeur arborescente borneacutee Il est donc facile de calculer dessus un cyclehamiltonien de poids minimal qui sera une excellente initialisation pour un programmede seacuteparation et eacutevaluation

satisfaction de contraintes [Fre90 DKV02] routage et eacutetiquetage de distance sur les reacuteseaux [BTTvL97] bases de donneacutees hypergraphes acycliques [GLS01]

Theacuteoregraveme 24 (Le voleur et les gendarmes [ST93b]) Soit un graphe G non orienteacuteUn voleur et k gendarmes se trouvent sur des sommets du graphe Le voleur peut agravetout instant courir en utilisant les arecirctes du graphes vers tout autre sommet Il nepeut toutefois passer par un sommet occupeacute par un gendarme Les gendarmes peuventeux passer dun sommet agrave un autre quelconque (sans neacutecessairement utiliser les arecirctesdu graphes disons quils sont sur des heacutelicoptegraveres) ils connaissent agrave tout instant laposition du voleur et cherchent agrave le cerner occuper tous les sommets voisins de saposition Si G a pour largeur arborescente k minus 1 alors k minus 1 gendarmes ne susentpas agrave le cerner mais k susent De plus ils peuvent utiliser une strateacutegie monotonecest agrave dire parcourir progressivement le graphe en assurant que le voleur ne peutretourner dans les parties parcourues

Theacuteoregraveme 25 ([CMR98]) Sur les graphes de largeur arborescente borneacutee tout pro-blegraveme de deacutecision ou doptimisation exprimable en logique monadique du second ordrepeut ecirctre reacutesolu par un algorithme lineacuteaire

Cette bonne nouvelle est tout de mecircme nuanceacutee par le fait que la constante est eacutenorme cest

une tour dexponentielles de la forme

(2222

)k

dont la hauteur deacutepend de la formule du second

ordre et nest pas borneacutee (agrave moins que P=NP) [FG04]

64 Mineurs

En compleacutement de ce chapitre on pourra utiliser une synthegravese de Laacuteszloacute Lovaacutesz sur latheacuteorie des mineurs de graphes [Lov05]

Deacutenition 26 Un graphe H est un mineur de G sil peut ecirctre obtenu par des contractationsdarecirctes dun sous-graphe induit de G ou agrave partir de G en eectuant un nombre quelconquedopeacuterations parmi les suivantes

suppression dune arecircte contraction dune arecircte suppression dun sommet et de toutes les arecirctes adjacentes

On le note H P G (illustreacute en gure 64)

(a) (b) (c)

Fig 64 Un graphe G (a) et son mineur H obtenu par contraction darecircte (b) puis suppressionde sommet (c)

Remarquons que P est une relation dordre sur les graphes

32

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 34: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Theacuteoregraveme 26 (SR1) Soit G une classe de graphes close par mineur alors il existeun ensemble ni dobstructions ob(G) tq G isin G ssi 6 existH isin ob(G) tq H mineur de G

Exemple la classe des graphes planaires eacutetant close par mineur il existe un ensemble dobs-tructions K5 K33 tel quaucune de ces deux obstructions nest mineur dun graphe planaire

Theacuteoregraveme 27 (SR2) Soit un graphe G agrave n sommets Pour tout graphe H il existeun algo en O(n3) qui teste si H est mineur de G

Proprieacuteteacute 19 Si G mineur de H alors tw(G) 6 tw(H)

De plus les graphes de largeur arborescente borneacutee sont caracteacuterisables en terme de mineurs ceux de largeur arborescente infeacuterieure ou eacutegale agrave 2 par exemple sont les graphes nayant pasK4 comme mineur

33

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 35: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 7

Dualiteacute ordres graphes

Les eacuteleacutements de ce chapitre sont aussi abordeacutes dans des notes de cours de Brightwell etTrotter [BT06]

71 Introduction les ordres dintervalles

A tout graphe dintervalles on peut associer un ensemble dintervalles ordonneacutes selon lordredeacuteni comme suit I1 I2 ssi I1 est totalement agrave gauche de I2 Si au contraire I1 et I2 ontune intersection non vide alors ils sont dits incomparables

Ainsi pour un ensemble dintervalles de reacuteels son graphe dintervalles est le compleacutementairedu graphe de comparabiliteacute pour lordre totalement agrave gauche de Plus preacuteciseacutement soit G ungraphe dintervalles et soit P un ordre dintervalles deacuteni sur le mecircme ensemble dintervallesalors P est une orientation transitive sans circuit du compleacutementaire de G On remarque aupassage quil est possible dassocier plusieurs ordres dintervalles agrave un mecircme graphe puisquelorientation transitive nest pas unique

Cette dualiteacute se rencontre aussi pour dautres classes de graphes1 ordres de dimension 2 graphes de permutation ordres seacuteries-parallegraveles cographesOn eacutevoquera notamment dans ce chapitre les classes de la gure 71

72 Deacutenitions de base sur les ordres

Plusieurs deacutenitions des ordres partiels se trouvent dans la litteacuterature Historiquement dansles articles de Dushnik et Miller [DM41] et le livre de Fishburn [Fis85]

Deacutenition 27 Une relation binaire R sur un ensemble S est un sous-ensemble de S2

(remarquons alors que toute relation peut ecirctre trivialement codeacutee par un multigraphe contenanteacuteventuellement des boucles) Pour exprimer que (a b) isin R on peut noter a R b Une relationbinaire P sur un ensemble S est un ordre partiel si elle est irreacuteexive (forallx isin S x 6P x)et transitive (forallx y z isin S x P y et y P z rArr x P z) La paire (S P ) est alors appeleacuteeensemble partiellement ordonneacute Si forallx y isin S soit x P y soit y P x alors P est unordre total

Cette deacutenition est compatible dans notre eacutetude en relation avec les graphes avec celledeacutenissant une relation dordre P comme une relation binaire reacuteexive antisymeacutetrique ettransitive sous reacuteserve de ne pas noter les boucles dans le graphe et de nutiliser quune arecirctenon orienteacutee pour exprimer agrave la fois que x P y et y P x La reacuteexiviteacute pourra de plus ecirctreutile en pratique pour certaines relations dordre (linclusion non stricte par exemple)

1 Site sur les classes de graphes httpwwwteoinformatikuni-rostockdeisgci

34

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 36: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Fig 71 Reacuteduction transitive du graphe dinclusion de classes de graphes un arc de la classeA vers la classe B indique que B sub A et les arcs que lon peut deacuteduire par transitiviteacute onteacuteteacute eaceacutes La classe des graphes dintervalles est eacutegale agrave la classe des graphes sans tripletsasteacuteroiumldes et trianguleacutes Celle des graphes de permutation est eacutegale agrave la classe des graphes decomparabiliteacute et de co-comparabiliteacute (cest-agrave-dire les graphes dont le compleacutementaire est ungraphe de comparabiliteacute)

Deacutenition 28 La couverture dune relation dordre P est noteacutee ≺ et deacutenie comme suit forallx y isin S x ≺P y hArr forallz isin S x P z P y rArr z = x ou z = y (x est le preacutedeacutecesseur immeacutediatde y par la relation )Une antichaicircne est un ensemble de sommets deux agrave deux incomparables (on le note geacute-neacuteralement x ||P y ce qui signie que ni x P y ni y P x) cest donc un ensemble stabledans le graphe de comparabiliteacute Inversement une chaicircne est un ensemble de sommets touscomparables deux agrave deux cest une clique dans le graphe de comparabiliteacuteUne extension lineacuteaire L dun ordre P est un ordre total compatible avec lordre P (forallx y isinS x P y rArr x L y)La fermeture transitive (P )t dune relation binaire P est deacutenie par forallx y isin S x P

y rArr x (P )t y et forallx y z isin S x (P )t y et y (P )t z rArr x (P )t z La fermeture transitive

dun graphe orienteacute (pour un graphe non orienteacute consideacuterer une orientation de ses arecirctes per-met den obtenir une fermeture transitive) est deacutenie de faccedilon similaire (si on peut eectuerune marche dun sommet x agrave un sommet y on ajoute larecircte (x y))Une reacuteduction transitive dun graphe G non orienteacute est un graphe de mecircme clocircture tran-sitive que G ayant un nombre darecirctes minimal Un graphe orienteacute sans circuit a une uniquereacuteduction transitive appeleacutee diagramme de Hasse

On peut donc repreacutesenter un ordre P par divers graphes le graphe de fermeture transitive Gt(P ) (graphe de comparabiliteacute) le graphe de reacuteduction transitive Gr(P ) (diagramme de Hasse graphe de couverture) tout graphe G tel que Gt = Gt(P ) (qui est un graphe sandwich de Gr(P ) et Gt(P ))Remarquons quil est possible davoir un diagramme de Hasse avec O(n) arecirctes corres-

pondant agrave un graphe de comparabiliteacute agrave O(n2) arecirctes (pour lordre total sur n eacuteleacutements parexemple respectivement la chaicircne agrave nminus 1 arecirctes et la clique agrave n(nminus1)

2arecirctes)

La reacuteduction et la fermeture transitive se calculent en en O(mn) (ou en la complexiteacute dumeilleur algorithme de multiplication de matrices) Le faire plus ecacement est un problegravemeouvert

Theacuteoregraveme 28 ([NR87]) Deacuteterminer si un graphe est un graphe non orienteacute decouverture est NP-complet

35

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 37: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Deacutemonstration La preuve originale de Nesup2etdegil et Roumldl [NR87] est buggeacutee reacutepareacutee par sesauteurs [NR93] puis reacuteeacutecrite en deacutetails [NR95] Brightwell proposant une autre preuve plussimple [Bri93]

73 Dimension dun ordre

Le lemme suivant permet dobtenir une extension lineacuteaire de tout ordre partiel (le reacutesultatest dicile agrave deacutemontrer plutocirct pour les ordres innis)

Lemme 4 ([Szp30]) Soit un ensemble partiellement ordonneacute (S P ) et a ||P b isin S alors lordre(P cup (a b)

)t(obtenu en ajoutant la relation a P b et en en prenant la clocircture transitive)

est un ordre partiel

Theacuteoregraveme 29 ([DM41]) Soit un ensemble partiellement ordonneacute (S P ) Alors ilexiste une famille dextensions lineacuteaires de P (Li)iisinJ1kK qui reacutealise P P =

⋂iisinJ1kK

Li

(cest-agrave-dire forallx y isin S x P y hArr foralli isin J1 kK x Liy)

Choisir une telle famille dextensions lineacuteaires de taille minimale permet de deacutenir la di-mension dun ordre

Deacutenition 29 Soit P un ordre partiel la dimension de P est

dim(P ) = min

|Li| tel que Li extensions lineacuteaires de P et P =⋂

iisinJ1|Li|K

Li

Exemple lordre P = (2 1) (4 1) (4 3) est lintersection de deux extensions lineacuteaires

L1 = 4321 et L2 = 2413 et il est de dimension 2 Mais il nest pas lintersection de L2

et L3 = 4231 on a 2 3 dans ces deux extensions lineacuteaires dont lintersection est donc(P cup (2 3)

)t

Theacuteoregraveme 30 ([Yan81]) Deacuteterminer si un ordre est de dimension k pour k gt 3est NP-complet

Deacutemonstration Par reacuteduction de 3-Coloration qui est NP-complet [GJS76 GJ79](GT4)

En revanche on sait reconnaicirctre en temps polynomial les ordres de dimension 1 (les ordrestotaux) et ceux de dimension 2 dont les graphes de comparabiliteacute sont les graphes de permu-tation comme deacutetailleacute

Theacuteoregraveme 31 ([BW91]) Calculer le nombre dextensions lineacuteaires dun ordre estP-complet

74 Graphes de permutation

Soit π =(

1 nπ(1) π(n)

)une permutation de Sn Le graphe formeacute des sommets vi i isin 1 n

relieacutes ssi (iminus j)(πminus1(i)minus πminus1(j)) lt 0 (i et j sont inverseacutes par la permutation) est un graphe

de permutationUn graphe de permutation a diverses repreacutesentations montreacutees en gure 72 pour le graphe

de la permutation(12342413

)

36

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 38: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

(a) (b) (c) (d)

(e) (f)

Fig 72 Un graphe de permutation (a) (dont lordre correspondant est lintersection de 4321et 2413) peut ecirctre repreacutesenteacute en tant que graphe dinclusion de rectangles (b) graphe dinter-section de segments (c) graphe de preacuteceacutedence de segments (d) graphe dinclusion dintervalles(e) et graphe de chevauchement dintervalles (f)

La repreacutesentation en graphe dinclusion de rectangles en particulier fait apparaicirctre quunordre de permutation est un ordre de dimension 2 En eet lordre (2 1) (4 1) (4 3) dontle graphe de comparabiliteacute est repreacutesenteacute en gure 72(a) est de dimension 2 ordre produit deses extensions lineacuteaires L1 = 4321 et L2 = 2413 Plus geacuteneacuteralement tout ordre partiel P est unordre produit quon peut plonger dans Ndim(P )

Theacuteoregraveme 32 ([DM41]) Soit un graphe G On a les eacutequivalences suivantes G est un graphe de permutation G admet une orientation transitive qui correspond agrave un ordre de dimension 2 G et G sont des graphes de comparabiliteacute

Remarquons que le compleacutementaire dun graphe de la permutation π isin Sn correspond agrave lapermutation inverse i 7rarr π(nminus i)

Deacutenition 30 Soient P et Q deux ordres ayant le mecircme graphe de comparabiliteacute et S unensemble On appelle invariant de comparabiliteacute une fonction f ordres rarr S telle que siP et Q ont mecircme graphe de comparabiliteacute alors f(P ) = f(Q)

Par exemple avec S = N le nombre de sommets du graphe de comparabiliteacute et la dimensionsont des invariants de comparabiliteacute

75 Graphes trapeacutezoiumldaux

On peut deacutenir une extension de la classe des graphes de permutation en consideacuterant legraphe dintersection non plus de segments mais de trapegravezes entre deux droites parallegraveles

Pour deacutenir cette classe des graphes trapeacutezoiumldaux consideacuterons deux lignes horizontalesUn trapegraveze entre ces deux lignes est deacuteni comme une paire de segments un sur celle du dessuset lautre sur celle du dessous Un graphe est trapeacutezoiumldal sil existe un ensemble de trapegravezescorrespondant aux sommets du graphe tel que deux sommets sont joints par une arecircte si etseulement si les trapegravezes correspondants sintersectent Les gures 73(a) et (b) illustrent cettedeacutenition

37

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 39: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

(a) (b)

Fig 73 Un ensemble de trapegravezes T = ([0 1] [0 1]) ([2 3] [4 6]) ([5 6] [0 3]) ([8 11] [1 7])([9 10] [8 9]) (a) et le graphe trapeacutezoiumldal associeacute (b)

76 Orientation transitive et deacutecomposition modulaire

Le chapitre suivant qui se fonde sur le livre [Gol80] et les articles [Gal67 HM79] a eacuteteacute donneacuteen partiel

On considegravere un graphe G = (V E) non orienteacute ni simple (ie sans boucle ni arecirctemultiple) On deacutenit la relation Γ sur E comme suit

Pour (a b) (a c) isin E avec b 6= c (a b)Γ(a c) si (b c) isin E On notera Γt la fermeturetransitive de la relation Γ Γt partitionne donc les arecirctes de G en Γ-classes

761 Calcul des Γ-classes

Proposer un algorithme de calcul de ces Γ-classes leacutevaluer en fonction de n = |V | etm = |E|

Une premiegravere ideacutee consiste agrave calculer le graphe Gprime = (E EΓ) de la relation Γ en O(m2)puis sa fermeture transitive par un parcours en profondeur depuis chaque sommet de Gprime cequi se fait donc en O(m3) soit O(n6)

Mais on peut faire beaucoup mieux en remarquant que toutes les arecirctes joignant un sommetv agrave tout sommet dune mecircme composante connexe Cvi de G[N (v)] font partie dune mecircmeΓ-classe

Ainsi on peut calculer les Γ-classes avec lalgorithme suivant On initialise une partition des arecirctes P =

e e isin E

Pour tout v de V faire

calculer les composantes connexes Cv1 Cvkv du sous-graphe G[N (v)] pour toute composante connexe Cvi = v1 v|Cvi| faire pour tout j de 2 agrave |Cvi| fusionner dans P la partie contenant larecircte (v vj) et la partiecontenant (v v1)

En utilisant une structure de donneacutees dUnion-Find pour P on obtient un algorithme enO

(n(n + m)

) soit O(n3) On peut encore ameacuteliorer lalgorithme preacuteceacutedent en utilisant le

voisinage agrave distance 2 de v

762 Modules et Γ-classes

On notera pour une Γ-classe C V (C) lensemble des sommets du graphe adjacents agrave aumoins une arecircte de C Montrer que si une arecircte dune classe C relie deux sommets dun mecircmemodule M alors V (C) sube M

Cela deacutecoule simplement de la deacutenition de Γ

763 Modules connexes

Montrer que tout module connexe de G est une union de V (C)Consideacuterons un module M connexe alors tout sommet de M est relieacute agrave une arecircte qui fait

partie dune certaine classe C et donc M contient V (C) dapregraves la question preacuteceacutedente

38

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 40: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

764 Graphes premiers

En deacuteduire quun graphe premier nadmet quune Γ-classeOn raisonne par reacutecurrence sur le nombre de sommets du grapheInitialisation la proprieacuteteacute est vraie pour le graphe P4Heacutereacutediteacute supposons que la proprieacuteteacute est vraie pour tout graphe premier agrave nminus 1 sommets

ou moins lest-elle pour un graphe premier G = (V E) agrave n sommets Dapregraves le theacuteoregraveme 6 G contient un graphe premier agrave nminus1 sommets ou un graphe premier

agrave nminus 2 sommets Traitons ces deux cas seacutepareacutement Cas 1 Soit V prime sub V |V prime| = nminus 1 tel que G[V prime] premierSoit v isin V V prime Par lhypothegravese de reacutecurrence toutes les arecirctes de V prime2 appartiennent agrave

la mecircme Γ-classe il reste agrave montrer que les arecirctes liant v agrave ses voisins appartiennent agrave cetteclasse

Montrons tout dabord quil existe une telle arecircte qui appartient agrave cette classe Comme V prime

nest pas un module de G il existe z t isin V prime tels que (v z) isin E et (v t) 6isin E G[V prime] eacutetantpremier cest un graphe connexe donc il existe un chemin formeacute de sommets de V prime entre zet t et en particulier deux sommets adjacents sur ce chemin zprime et tprime tels que (v zprime) isin E et(v tprime) 6isin E Ainsi (v zprime) qui appartient agrave E (V prime2) est dans la mecircme Γ-classe que (tprime zprime) cestagrave dire par hypothegravese de reacutecurrence lunique Γ-classe de G[V prime]

Montrons maintenant que toutes les arecirctes de E (V prime2) appartiennent agrave la mecircme Γ-classeSoient (v yprime) et (v yprimeprime) deux arecirctes de E (V prime2) Comme G[V prime] est premier G[V prime] est connexedonc il existe une chaicircne dans G[V prime] de yprime agrave yprimeprime et donc (v yprime) et (v yprimeprime) appartiennent agrave lamecircme Γ-classe

Cas 2 Soit V prime sub V |V prime| = nminus 2 tel que G[V prime] premierSoit x y isin V V prime supposons (x y) isin E Par le mecircme raisonnement que dans le cas 1 on

obtient que toute arecircte entre x et ses voisins dans V prime ainsi quentre y et ses voisins dans V primeappartiennent agrave la mecircme Γ-classe

Il reste agrave veacuterier que (x y) appartient agrave la mecircme Γ-classe Comme x et y ne sont pas dessommets jumeaux alors il existe z isin V x y tq (x z) isin E et (y z) isin E (ou bien (x z) isin Eet (y z) isin E) donc (x y) appartient agrave la mecircme Γ-classe que (x z) (ou bien la mecircme Γ-classeque (y z)) ce qui conclut la deacutemonstration

765 Γ-classe unique

Reacuteciproquement que peut-on dire des modules dun graphe connexe nayant quune Γ-classe Comme le graphe est connexe le cas dun module connexe et de sommets isoleacutes est exclu

Donc les modules eacuteventuels sont des stables

766 Γ-classe globale

Montrer quun graphe admet au plus une Γ-classe C telle que V (C) = V La preuve directe de cette proprieacuteteacute est dicile mais se fait par labsurde

767 Connexiteacute et connexiteacute du compleacutementaire

Montrer quun graphe G connexe et dont le compleacutementaire est connexe admet une Γ-classeC telle que V (C) = V

Dapregraves le theacuteoregraveme de deacutecomposition modulaire larbre de deacutecomposition dun tel grapheadmet un noeud premier agrave la racine Or on a montreacute quun graphe premier na quune R-classe

Le graphe quotient associeacute agrave la racine est premier possegravede un P4 et donc toutes les arecirctesde G (et aussi de G) sont dans une seule R-classe

39

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 41: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

768 Deacutecomposition modulaire

En deacuteduire un algorithme de construction de larbre de deacutecomposition modulaire baseacute sur lesΓ-classes

On peut imaginer lalgorithme suivant Une eacutetape de la reacutecursiviteacute Calcul des composantes connexes de G et G Calcul des R-classes Construction du sous-graphe H engendreacute par lunique R-classe qui couvre tous les som-mets

Les classes de sommets (faux vrais) jumeaux constituent la partition en modules maxi-maux

769 Orientations transitives et Γ-classes

En fait ces classes ont eacuteteacute introduites pour eacutetudier les orientations transitives dun graphede comparabiliteacute Lorsque (a b)Γt(c d) les orientations possibles de ces arecirctes dans une orien-tation transitive du graphe sont lieacutees Comment engendrer les orientations transitives dungraphe de comparabiliteacute agrave laide des Γ-classes

Un graphe de comparabiliteacute premier na que deux orientations transitives Si G nest pas connexe ses composantes connexes sorientent indeacutependammentProduit des orientations possibles des composantes

Si G nest pas connexe on choisit un ordre total sur ces k composantes et cela engendreune orientation transitive de G (k orientations possibles)

Les modules maximaux de la partition modulaire sorientent indeacutependamment

7610 Orientations transitives et deacutecomposition modulaire

Comment engendrer les orientations transitives dun graphe de comparabiliteacute agrave laide delarbre de deacutecomposition modulaire

7611 Calcul des Γ-classes et deacutecomposition modulaire

Peut-on deacuteduire un algorithme de calcul des Γ-classes agrave partir de larbre de deacutecompositionmodulaire Comparer agrave votre reacuteponse de la premiegravere question

Lalgorithme obtenu est en O(n + m) Moraliteacute un theacuteoregraveme de structure peut ameacuteliorerles algorithmes

7612 Reconnaissance des graphes de comparabiliteacute

Ecrire un algorithme de reconnaissance des graphes de comparabiliteacute baseacute sur les Γ-classesTout graphe premier nest pas de comparabiliteacute il sut donc de reconnaicirctre les graphes

premiers

40

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 42: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Chapitre 8

Annexe

81 Lexique franccedilais-anglais

vertex (vertices) sommet (sommets)arecircte edge

graphe compleacutementaire complement graphvoisinage neighbourhoodjumeaux twinsconnexe connected

composante connexe connected componentnon connexe disconnected

sous-graphe induit induced subgraphisomorphe isomorphic

chemin pathbiparti bipartite

chevauchant overlappingmodule fort strong module

uniciteacute uniquenesssymeacutetrie symmetry

diviser pour reacutegner divide and conquersans perte de geacuteneacuteraliteacute without loss of generality (wlog)

taureau bullcasseur splitteraner rene

sous-modulaire submodularanage de partition partition renementtreillis des partitions partition lattice

parcours en largeur lexicographique lexicographic breadth-rst searchexcentriciteacute eccentricity

diamegravetre diameterrayon radius

graphe seacuterie-parallegravele series-parallel graphgraphe trianguleacute triangulated graph chordal graph

ordre sans ombrelles ordering without umbrellaslargeur arborescente treewidth

largeur (arborescente) lineacuteaire pathwidthcompleacutetion trianguleacutee chordal completion

compleacutetion dintervalles interval completion

41

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 43: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

deacutecomposition arborescente tree decompositiondeacutecomposition de chemins path decompositionseacuteparation et eacutevaluation branch and bound

un triplet asteacuteroiumlde an asteroidal triplesans triplet asteacuteroiumlde AT-free

ensemble partiellement ordonneacute posetgraphe de couverture cover graph

42

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 44: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

43

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 45: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

Bibliographie

[ACP87] Stefan Arnborg Derek G Corneil and Andrzej Proskurowski Complexity of nding embeddings in ak-tree SIAM Journal on Algebraic and Discrete Methods 8(2)277284 1987 httpdxdoiorg10

11370608024 29

[AP90] Gur Saran Adhar and Shietung Peng Parallel algorithms for cographs and parity graphs with applicationsJournal of Algorithms 11252284 1990 14

[BCdMR05] Anne Bergeron Ceacutedric Chauve Fabien de Montgoler and Mathieu Ranot Computing common intervalsof k permutations with applications to modular decomposition of graphs In Proceedings of the thirteenthAnnual European Symposium on Algorithms (ESA05) 2005 httpwww-igmuniv-mlvfr~raffinotftpcommon-interval-12-April-05pdfgz 14

[BCHP03] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm In Proceedings of the 29th International Workshop on Graph-TheoreticConcepts in Computer Science (WG03) volume 2880 of Lecture Notes in Computer Science pages119130 2003 httpbooksgooglefrbookshl=framplr=ampid=PuHeuUucopECampoi=fndamppg=PA119ampots=

Y8HsPhrY4Mampsig=HjiXf0LLDMbqElF6ByE60JVryiw httpdxdoiorg101007b93953 14 17

[BCHP08] Anna Bretscher Derek G Corneil Michel Habib and Christophe Paul A simple linear time LexBFScograph recognition algorithm SIAM Journal on Discrete Mathematics 22(4)12771296 2008 http

wwwliafajussieufr~habibDocumentscographps 14 17

[Ber94] Claude Berge Qui a tueacute le duc de Densmore Bibliothegraveque Oulipienne 67 1994 reacuteeacutedition Castor Astral2000 25

[BL75] Kellogg S Booth and George S Lueker Linear algorithms to recognize interval graphs and test for theconsecutive ones property In Proceedings of the seventh Annual ACM Symposium on Theory of Computing(STOC75) pages 255265 1975 httpdxdoiorg101145800116803776 23

[BL76] Kellogg S Booth and George S Lueker Testing for the consecutive ones property interval graphs andgraph planarity using PQ-tree algorithms Journal of Computer and System Science 13335379 1976 23

[Bla78] Andreas Blass Graphs with unique maximal clumpings Journal of Graph Theory 2(1)1924 1978 14

[BM83] Hermann Buer and Rolf H Moumlhring A fast algorithm for the decomposition of graphs and posets Ma-thematics of Operations Research 8170184 1983 14

[Bod05] Hans L Bodlaender Discovering treewidth In Proceedings of the 31st Conference on Current Trendsin Theory and Practice of Computer Science (SOFSEM05) volume 3381 of Lecture Notes in ComputerScience pages 116 Springer-Verlag 2005 httpciteseeristpsuedubodlaender05discovering

html 26 29

[Bri93] Graham Brightwell On the complexity of diagram testing Order 10(4)297303 1993 httpdxdoi

org101007BF01108825 35

[BT06] Graham Brightwell and William T Trotter Great book of posets 2006 book in preparation httpwwwmathgatechedu~trottermath-8823-Fa068823-Fa06-TopPagehtm 33

[BTTvL97] Hans L Bodlaender Richard Tan Dimitrios M Thilikos and Jan van Leeuwen On interval routingschemes and treewidth Information and Computation 13992109 1997 httpciteseeristpsu

edu188284html 31

[BV95] Paola Bonizzoni and Gianluca Della Vedova Modular decomposition of hypergraphs In Proceedings of the21st International Workshop on Graph-Theoretic Concepts in Computer Science (WG95) volume 1017 ofLecture Notes in Computer Science pages 303317 Springer-Verlag 1995 httpdxdoiorg1010073-540-60618-1_84 14

[BV99] Paola Bonizzoni and Gianluca Della Vedova An algorithm to compute the modular decomposition ofhypergraphs Journal of Algorithms 32(2)6586 1999 httpciteseeristpsuedu506177html 14

[BW91] Graham Brightwell and Peter Winkler Counting linear extensions is P-complete In Proceedings ofthe 23rd Annual ACM Symposium on Theory of Computing (STOC91) pages 175181 1991 http

wwwmathdartmouthedu~pwpaperssharpstocps 35

44

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 46: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

[CC82] Alain Cardon and Maxime Crochemore Partitioning a graph in o(|a|log2|v|) Theoretical Computer Science19(1)8598 1982 httpdxdoiorg1010160304-3975(82)90016-0 15

[CDHP01] Derek G Corneil Feodor F Dragan Michel Habib and Christophe Paul Diameter determination onrestricted graph families Discrete Applied Mathematics 113(2-3)143166 2001 httpwwwlirmmfr

~paulBiblioPostscriptDiam-newps 20

[CDK03] Derek G Corneil Feodor F Dragan and Ekkehard Koumlhler On the power of BFS to determine a graphsdiameter Networks 42(4)209222 2003 httpwwwcskentedu~draganLBFS-Powerpdf 20 21

[CEdFK98] Maacutercia R Cerioli Hazel Everett Celina MH de Figueiredo and Sulamita Klein The homogeneous setsandwich problem Information Processing Letters 67(1)3135 1998 httpciteseeristpsuedu

190684html 15

[CG70] Derek G Corneil and Calvin C Gotlieb An ecient algorithm for graph isomorphism Journal of theACM (JACM) 17(1)5164 1970 httpdxdoiorg101145321556321562 15

[CH93] Alain Cournier and Michel Habib An ecient algorithm to recognize prime undirected graphs InProceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science(WG92) volume 657 of Lecture Notes in Computer Science pages 212224 Springer-Verlag 1993httpdxdoiorg1010073-540-56402-0_49 14

[CH94] Alain Cournier and Michel Habib A new linear algorithm for modular decomposition In Proceedings of the19th International Colloquium on Trees in Algebra and Programming (CAAP94) volume 787 of LectureNotes in Computer Science pages 6884 Springer-Verlag 1994 httpdxdoiorg101007BFb001747414

[CH97] Christian Capelle and Michel Habib Graph decompositions and factorizing permutations In Proceedings ofthe fth Israeli Symposium on the Theory of Computing and Systems (ISTCS97) 1997 httpciteseeristpsuedu43689html 14 17

[CHdM02] Christian Capelle Michel Habib and Fabien de Montgoler Graph decomposition and factorizing permu-tations Discrete Mathematics and Theoretical Computer Science 5(1) 2002 httpwwwliafajussieufr~fmpublicationsdmtcsps 14 17

[CHM81] Michel Chein Michel Habib and Marie-Catherine Maurer Partitive hypergraphs Discrete Mathematics373550 1981 9 10

[CI98] Alain Cournier and Pierre Ille Minimal indecomposable graphs Discrete Mathematics 183(1-3)61801998 httpdxdoiorg101016S0012-365X(97)00077-0 11

[CMR98] Bruno Courcelle Johann A Makowsky and Udi Rotics Linear time solvable optimization problems ongraphs of bounded clique width In Proceedings of the 24th International Workshop on Graph-TheoreticConcepts in Computer Science (WG98) volume 1517 of Lecture Notes in Computer Science pages 1161998 httpciteseeristpsueducourcelle99linearhtml 31

[Cor04] Derek G Corneil Lexicographic breadth rst search - a survey In Proceedings of the 30thInternational Workshop on Graph-Theoretic Concepts in Computer Science (WG04) volume 3353of Lecture Notes in Computer Science pages 119 2004 httpbooksgooglefrbookshl=

framplr=ampid=ZPDqRTRxITsCampoi=fndamppg=PA1ampots=OMtnEIG_1yampsig=wuvqtuM50-5bKfYATkZNxHr49gU http

dxdoiorg101007b104584 18

[COS98] Derek G Corneil Stephan Olariu and Lorna K Stewart The ultimate interval graph recognition algo-rithm In Proceedings of the ninth annual ACM-SIAM Symposium on Discrete algorithms (SODA98)pages 175180 1998 httpciteseeristpsuedu314904html 23

[CPS85] Derek G Corneil Yehoshua Perl and Lorna K Stewart A linear recognition algorithm for cographsSIAM Journal on Computing 14(4)926934 1985 httpdxdoiorg1011370214065 12 14

[Cun82] William H Cunningham Decomposition of directed graphs SIAM Journal on Algebraic and DiscreteMethods 3(2)214228 1982 httpdxdoiorg1011370603021 14

[DGM97] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical modular decomposition InProceedings of the eigth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA97) pages 26351997 httpwwwcscolostateedu~rmmDGM97pdf 14

[DGM01] Elias Dahlhaus Jens Gustedt and Ross M McConnell Ecient and practical algorithms for sequentialmodular decomposition Journal of Algorithms 41(2)360387 2001 httpwwwcscolostateedu

~rmmlinearDecompJournalps 14 17

[DGM02] Elias Dahlhaus Jens Gustedt and Ross M McConnell Partially complemented representations of digraphsDiscrete Mathematics and Theoretical Computer Science 5(1)147168 2002 httpwwwemisamsorgjournalsDMTCSvolumesabstractspdfpapersdm050110pdf 7 14

[Dij76] Edsger W Dijkstra A Discipline of Programming Prentice-Hall 1976 15

[Dir61] Gabriel A Dirac On rigid circuit graphs Abhandlungen aus dem Mathematischen Seminar der UniversitaumltHamburg 25 Universitaumlt Hamburg 1961 21 22 27

45

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 47: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

[DKV02] Viacutector Dalmau Phokion G Kolaitis and Moshe Y Vardi Constraint satisfaction bounded treewidthand nite-variable logics In Proceedings of the Eight International Conference on Principles and Practiceof Constraint Programming (CP02) volume 2470 of Lecture Notes in Computer Science pages 310326Springer-Verlag 2002 httpciteseeristpsuedu525259html 31

[DM41] Ben Dushnik and Edwin W Miller Partially ordered sets American Journal of Mathematics 636006101941 httpwwwjstororgview00029327di99427999p0366k0 33 35 36

[Dra05] Feodor F Dragan Estimating all pairs shortest paths in restricted graph families a unied approachJournal of Algorithms 57121 2005 httpwwwcskentedu~draganAPASP-SpGrpdf 21

[EGMS94] Andrzej Ehrenfeucht Harold N Gabow Ross M McConnell and Stephen J Sullivan An O(n2) divide-and-conquer algorithm for the prime tree decomposition of two-structures and modular decomposition ofgraphs Journal of Algorithms 16(2)283294 1994 14

[EHR94] Andrzej Ehrenfeucht Tero Harju and Grzegorz Rozenberg Incremental construction of 2-structuresDiscrete Mathematics 128(1)113141 1994 14 17

[FG69] Delbert R Fulkerson and O A Gross Incidence matrices interval graphs and seriation in archaeology Pa-cic Journal of Mathematics 28565570 1969 httpprojecteuclidorgDienstUI10Summarizeeuclidpjm1102995572 23 27

[FG04] Markus Frick and Martin Grohe The complexity of rst-order and monadic second-order logic revisitedAnnals of Pure and Applied Logic 130(1-3)331 2004 httpwww2informatikhu-berlinde~grohepubmcps 31

[Fis85] Peter C Fishburn Interval Orders and Interval Graphs John Wiley amp Sons 1985 33

[Fre90] Eugene C Freuder Complexity of k-tree structured constraint satisfaction problems In Proceedings of theEighth National Conference on Articial Intelligence (AAAI90) pages 49 1990 31

[Gal67] Tibor Gallai Transitiv orientierbare Graphen Acta Mathematica Academiae Scientiarum Hungaricae18(1-2)2566 1967 httpdxdoiorg101007BF02020961 9 36

[Gav74] F nic Gavril The intersection graphs of subtrees in trees are exactly the chordal graphs Journal ofCombinatorial Theory Series B 164756 1974 httpdxdoiorg1010160095-8956(74)90094-X 27

[GH64] Paul C Gilmore and Alan J Homan A characterization of comparability graphs and of interval graphsCanadian Journal of Mathematics 16539548 1964 26

[GJ79] Michael R Garey and David S Johnson Computers and Intractability A Guide to the Theory of NP-Completeness WH Freeman and Company New York 1979 29 35

[GJS76] Michael R Garey David S Johnson and Larry J Stockmeyer Some simplied NP-complete graphproblems Theoretical Computer Science 1(3)237267 1976 35

[GKS95] Martin C Golumbic Haim Kaplan and Ron Shamir Graph sandwich problems Journal of Algorithms19(3)449473 1995 httpciteseeristpsuedugolumbic94graphhtml 14 15

[GLS01] Georg Gottlob Nicola Leone and Francesco Scarcello Hypertree decompositions a survey In Procee-dings of the 26th International Symposium on Mathematical Foundations of Computer Science (MFCS01)volume 2136 of Lecture Notes in Computer Science pages 3757 Springer-Verlag 2001 httpwww

springerlinkcomindexY8R9EL5KQ21MU73Mpdf 31

[Gol80] Martin C Golumbic Algorithmic Graph Theory and Perfect Graphs Academic Press 1980 18 36

[Hab81] Michel Habib Substitution des structures combinatoires theacuteorie et algorithmes PhD thesis UniversiteacutePierre et Marie Curie 1981 httpcataloguebnffrark12148cb34772090vPUBLIC 14

[HdMP04] Michel Habib Fabien de Montgoler and Christophe Paul A simple linear-time modular decomposi-tion algorithm for graphs using order extension In Ninth Scandinavian Workshop on Algorithm Theory(SWAT04) 2004 httpwwwliafajussieufr~fmpublicationsswat04pdf 14

[HHS95] Michel Habib Marianne Huchard and Jeremy P Spinrad A linear algorithm to decompose inhe-ritance graphs into modules Algorithmica 13573591 1995 httpwwwspringerlinkcomindex

V3384M611187NL12pdf 14

[HLP03] Michel Habib Emmanuelle Lebhar and Christophe Paul A note on nding all homogeneous set sandwichesInformation Processing Letters 87(3)147151 2003 httphal-lirmmccsdcnrsfrlirmm-0009036515

[HM79] Michel Habib and Marie-Catherine Maurer On the X-Join decomposition for undirected graphs DiscreteApplied Mathematics 3201207 1979 14 36

[HM91] Wen-Lian Hsu and Tze-Heng Ma Substitution decomposition on chordal graphs and applications InProceedings of the second International Symposium on Algorithms (ISA91) volume 557 of Lecture Notes inComputer Science pages 5260 Springer-Verlag 1991 httpdxdoiorg1010073-540-54945-5_4923

[HM99] Wen-Lian Hsu and Tze-Heng Ma Fast and simple algorithms for recognizing chordal comparability graphsand interval graphs SIAM Journal on Computing 28(3)10041020 1999 httpdxdoiorg101137S0097539792224814 23

46

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 48: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

[Hoa61] Charles A R Hoare Algorithm 63 Partition algorithm 64 Quicksort algorithm 65 Find Communicationsof the ACM 4(7)321322 1961 httpdxdoiorg101145366622366642 15

[Hop71] John E Hopcroft An n log n algorithm for minimizing states in a nite automaton In Z Kohavi andA Paz editors Theory of machines and computations Proceedings of an International Symposium on theTheory of Machines and Computations pages 189196 Academic Press 1971 15

[HP01] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition http

citeseeristpsueduhabib01simplehtml 2001 14 17

[HP05] Michel Habib and Christophe Paul A simple linear time algorithm for cograph recognition DiscreteApplied Mathematics 145(2)183197 2005 httpdxdoiorg101016jdam200401011 14

[HPMV00] Michel Habib Christophe Paul Ross M McConnell and Laurent Viennot Lex-BFS and partition rene-ment with applications to transitive orientation interval graph recognition and consecutive ones testingTheoretical Computer Science 2345984 2000 httpciteseeristpsuedu179874html 23 24

[HPV99] Michel Habib Christophe Paul and Laurent Viennot Partition renement techniques an interestingalgorithmic toolkit International Journal of Foundations of Computer Science 10(2)147170 1999 httpgyrowebinriafr~viennotpostscriptsijfcs00psgz 14 17

[Hsu93] Wen-Lian Hsu A simple test for interval graphs In Proceedings of the 18th International Workshopon Graph-Theoretic Concepts in Computer Science (WG92) volume 657 of Lecture Notes in ComputerScience pages 1116 Springer-Verlag 1993 httpdxdoiorg1010073-540-56402-0_31 23

[Jor69] Camille Jordan Sur les assemblages de lignes Journal fuumlr die reine und angewandte Mathematik pages185190 1869 httpwwwdigizeitschriftendeindexphpid=loaderamptx_jkDigiTools_pi1[IDDOC]

=510097 19

[JSC72] Lee O James Ralph G Stanton and Donald D Cowan Graph decomposition for undirected graphsIn F Homan editor Proceedings of the third Southeastern International Conference on CombinatoricsGraph Theory and Computing (CGTC72) pages 281290 R B Levow eds 1972 14

[KF79a] T Kashiwabara and T Fujisawa An NP-complete problem on interval graphs In Proceedings of the IEEEInternational Symposium on Circuits and Systems (ISCAS79) pages 8283 1979 29

[KF79b] T Kashiwabara and T Fujisawa NP-completeness of the problem of nding a minimum-clique numberinterval graph containing a given graph as a subgraph In Proceedings of the IEEE International Symposiumon Circuits and Systems (ISCAS79) pages 8283 1979 29

[Klo93] Ton Kloks Treewidth PhD thesis Utrecht University Utrecht The Netherlands 1993 29

[KM86] Norbert Korte and Rolf H Moumlhring A simple linear-time algorithm to recognize interval graphs In Procee-dings of the twelfth International Workshop on Graph-Theoretic Concepts in Computer Science (WG86)volume 246 of Lecture Notes in Computer Science pages 116 1986 dxdoiorg1010073-540-17218-1_45 23

[KM89] Norbert Korte and Rolf H Moumlhring An incremental linear-time algorithm for recognizing interval graphsSIAM Journal on Computing 18(1)6881 1989 httpdxdoiorg1011370218005 23

[KT06] Jon Kleinberg and Eacuteva Tardos Algorithm design Addison-Wesley 2006 3

[LB62] Cornelis G Lekkerkerker and J Ch Boland Representation of a nite graph by a set of intervals onthe real line Fundamenta Mathematicae 514564 1962 httpmatwbnicmeduplksiazkifmfm51fm5115pdf 23

[LO91] Rong Lin and Stephan Olariu An NC recognition algorithm for cographs Journal of Parallel and Distri-buted Computing 13(1)7690 1991 14

[Lov05] Laacuteszloacute Lovaacutesz Graph minor theory Bulletin of the American Mathematical Society 437586 2005httpwwwamsorgbull2006-43-01S0273-0979-05-01088-8 31

[Mau77] Marie-Catherine Maurer Joints et deacutecompositions premiegraveres dans les graphes PhD thesis UniversiteacutePierre et Marie Curie (Paris VI) 1977 14

[McC87] Carolyn McCreary An algorithm for parsing a graph grammar PhD thesis University of Colorado 198714

[McC95] Ross M McConnell An O(n2) incremental algorithm for modular decomposition of graphs and 2-structuresAlgorithmica 14209227 1995 httpwwwcscolostateedu~rmmincralgpdf 14

[MdM05] Ross M McConnell and Fabien de Montgoler Linear-time modular decomposition of directed graphs Dis-crete Applied Mathematics 2(145)189209 2005 httpwwwcscolostateedu~rmmdigraphDecomp

pdf 14

[MP01] Frederic Maray and Myriam Preissmann A translation of Tibor Gallais paper Transitiv orientierbareGraphen In JL Ramirez-Alfonsin and BA Reed editors Perfect graphs pages 2566 J Wiley 2001 9

[MR84] Rolf H Moumlhring and Franz J Radermacher Substitution decomposition for discrete structures and connec-tions with combinatorial optimization Annals of Discrete Mathematics 19257356 1984 9

47

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 49: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

[MS89] John H Muller and Jeremy Spinrad Incremental modular decomposition Journal of the ACM (JACM)36(1)119 1989 httpdxdoiorg1011455856259300 14

[MS94] Ross M McConnell and Jeremy P Spinrad Linear-time modular decomposition and ecient transitiveorientation of comparability graphs In Proceedings of the fth Annual ACM-SIAM Symposium on DiscreteAlgorithms (SODA94) pages 536545 1994 httpwwwcscolostateedu~rmmlinModDecomppdf 14

[MS97] Ross M McConnell and Jeremy P Spinrad Linear-time transitive orientation In Proceedings of the eigthAnnual ACM-SIAM Symposium on Discrete Algorithms (SODA97) 1997 httpwwwcscolostate

edu~rmmlinTOSODApdf 14

[MS99] Ross M McConnell and Jeremy P Spinrad Modular decomposition and transitive orientation DiscreteMathematics 201189241 1999 httpwwwcscolostateedu~rmmlintopdf 14

[MS00] Ross M McConnell and Jeremy P Spinrad Ordered vertex partitioning Discrete Mathematics andTheoretical Computer Science 44560 2000 httpwwwcscolostateedu~rmmdm040104pdf 14 17

[MV96] Michel Morvan and Laurent Viennot Parallel comparability graph recognition and modular decompo-sition In Proceedings of the thirteenth Annual Symposium on Theoretical Aspects of Computer Science(STACS96) volume 1046 of Lecture Notes in Computer Science pages 169180 Springer-Verlag 1996httpwwwliafajussieufrweb9rapportrechrapportsWeb1995stacs96pdf 14

[NR87] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams Order 3321330 1987 34 35

[NR93] Jaroslav Nesup2etdegil and Vojtyench Roumldl Complexity of diagrams errata Order 10393 1993 35

[NR95] Jaroslav Nesup2etdegil and Vojtyench Roumldl More on the complexity of cover graphs Commentationes mathemati-cae Universitatis Carolinae 36(2)271280 1995 httpwwwkarlinmffcuniczcmucpdfcmuc9502nesetrilpdf 35

[Ola91] Stephan Olariu An optimal greedy heuristic to color interval graphs Information Processing Letters37(1)2125 1991 httpdxdoiorg1010160020-0190(91)90245-D 24

[Pau06] Christophe Paul Aspects algorithmiques de la deacutecomposition modulaire Universiteacute Montpellier II 2006Habilitation thesis 13 17

[PT87] Robert Paige and Robert E Tarjan Three partition renement algorithms SIAM Journal on Computing16(6)973989 1987 httpdxdoiorg1011370216062 15 16

[Ros74] Donald J Rose On simple characterizations of k-trees Discrete Mathematics 7317322 1974 28

[RR90] Ganesan Ramalingam and Chandrasekaran Pandu Rangan New sequential and parallel algorithms forinterval graph recognition Information Processing Letters 34(4)215219 1990 httpdxdoiorg1010160020-0190(90)90163-R 23

[RS83] Neil Robertson and Paul D Seymour Graph minors I Excluding a forest Journal of CombinatorialTheory Series B 353961 1983 29

[RS86] Neil Robertson and Paul D Seymour Graph minors II Algorithmic aspects of tree-width Journal ofAlgorithms 7309322 1986 29

[RTL76] Donald J Rose R Endre Tarjan and George S Lueker Algorithmic aspects of vertex elimination ongraphs SIAM Journal on Computing 5(2)266283 1976 httpdxdoiorg1011370205021 23 26

[Sim92] Klaus Simon A new simple linear algorithm to recognize interval graphs In Proceedings of the InternationalWorkshop on Computational Geometry (CG91) volume 553 of Lecture Notes in Computer Science pages289308 Springer-Verlag 1992 httpdxdoiorg1010073-540-54891-2_22 23

[SMTW01] Fu-Long Yeh Shyue-Ming Tang and Yue-Li Wang An ecient algorithm for solving the homogeneousset sandwich problem Information Processing Letters 77(1)1722 2001 httpdxdoiorg101016

S0020-0190(00)00145-9 15

[Spi82] Jeremy P Spinrad Two-dimensional partial orders PhD thesis Princeton University 1982 14

[SS04] Ron Shamir and Roded Sharan A fully-dynamic algorithm for modular decomposition and recognition ofcographs Discrete Applied Mathematics 136(2-3)329340 2004 httpwwwmathtauacil~rshamirpapersdcog_DAMps 14

[ST93a] James H Schmerl and William T Trotter Critically indecomposable partially ordered sets graphs tour-naments and other binary relational structures Discrete Mathematics 113191205 1993 12

[ST93b] Paul D Seymour and Robin Thomas Graph searching and a min-max theorem for tree-width Journalof Combinatorial Theory Series B 582233 1993 31

[Ste82] George Steiner Machine scheduling with precedence constraints PhD thesis Department of Combinatoricsand Optimization University of Waterloo 1982 14

[Szp30] Edward Szpilrajn Sur lextension de lordre partiel Fundamenta Mathematicae 16386389 1930 httpmatwbnicmeduplksiazkifmfm16fm16125pdf 35

[TCHP08] Marc Tedder Derek Corneil Michel Habib and Christophe Paul Simpler linear-time modular decom-position via recursive factorizing permutations In Proceedings of the 35th International Colloquium onAutomata Languages and Programming (ICALP08) volume 5125 of Lecture Notes in Computer Sciencepages 634645 2008 httparxivorgabs07103901 14

48

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie
Page 50: Cours d'algorithmique des graphes du MPRIphilippe.gambette.free.fr/SCOL/Graphes.pdf · sur les graphes dans les ouvrages classiques d'algorithmique (cf. par exemple l'excellent Algo-

[Tho98] Mikkel Thorup Structured programs have small tree-width and good register allocation Informa-tion and Computation 142159181 1998 httpwwwdikudkhjemmesideransattemthorupPAPERSregisterpsgz 30

[UY00] Takeaki Uno and Mutsunori Yagiura Fast algorithms to enumerate all common intervals of two permuta-tions Algorithmica 14209227 2000 httpciteseeristpsueduuno00fasthtml 13 14

[Yan81] Mihalis Yannakakis Computing the minimum ll-in is NP-complete SIAM Journal on Algebraic andDiscrete Methods 2(1)7779 1981 httpdxdoiorg1011370602010 29 35

49

  • Table des matiegraveres
  • Introduction
    • Objectifs
    • Deacuteroulement du cours en 20062007
    • Remerciements
      • Les bases de theacuteorie des graphes
        • Vocabulaire de base
        • Un petit exercice pour sentraicircner agrave manipuler tout ccedila
        • Graphes et structures de donneacutees
          • Introduction agrave la deacutecomposition modulaire
            • Modules et partitions modulaires
            • Deacutecomposition modulaire
            • Familles partitives
            • Proprieacuteteacutes des graphes premiers
            • Les cographes
              • Algorithmes de deacutecomposition modulaire
                • Lapproche par le module minimal
                • Lapproche par la sous-modulariteacute
                • Lapproche par le graphe sandwich
                • Lapproche par laffinage de partitions
                • Lapproche dEhrenfeucht et al
                • Lapproche par les permutations factorisantes
                  • Parcours en largeur lexicographique
                    • Algorithme LexBFS
                    • Proprieacuteteacutes du parcours
                    • Calcul du diamegravetre dun graphe
                    • Algorithmes de reconnaissance
                      • Reconnaissance des graphes trianguleacutes
                      • Reconnaissance des graphes dintervalles
                      • Historique des algorithmes
                      • Approche en deux eacutetapes
                      • Approche par la chaicircne des cliques maximales
                      • Approche par les sous-graphes exclus
                          • Largeur arborescente
                            • Arbre de cliques
                            • k-arbres
                            • Deacutecompositions arboreacutees
                            • Mineurs
                              • Dualiteacute ordres graphes
                                • Introduction les ordres dintervalles
                                • Deacutefinitions de base sur les ordres
                                • Dimension dun ordre
                                • Graphes de permutation
                                • Graphes trapeacutezoiumldaux
                                • Orientation transitive et deacutecomposition modulaire
                                  • Calcul des -classes
                                  • Modules et -classes
                                  • Modules connexes
                                  • Graphes premiers
                                  • -classe unique
                                  • -classe globale
                                  • Connexiteacute et connexiteacute du compleacutementaire
                                  • Deacutecomposition modulaire
                                  • Orientations transitives et -classes
                                  • Orientations transitives et deacutecomposition modulaire
                                  • Calcul des -classes et deacutecomposition modulaire
                                  • Reconnaissance des graphes de comparabiliteacute
                                      • Annexe
                                        • Lexique franccedilais-anglais
                                          • Index
                                          • Bibliographie