Nombre d'intersection

From Wikipedia, the free encyclopedia

Un graphe avec un nombre d'intersection de quatre. Les quatre zones grisées indiquent quatre cliques qui recouvrent toutes les arêtes du graphe. Dans une représentation par intersection, chaque sommet peut être représenté par le sous-ensemble des cliques auquel il appartient.

En théorie des graphes, le nombre d'intersection d'un graphe est le nombre minimal d'éléments nécessaires pour représenter sous forme de graphe d'intersection d'ensembles finis. Dans cette représentation, chaque sommet correspond à un ensemble et deux sommets sont reliés par une arête dès que leurs ensembles ont un élément commun. Le nombre d'intersection est aussi égal au nombre minimal de cliques (sous-graphes dont les arêtes relient toutes les paires de sommets) nécessaires pour recouvrir toutes les arêtes du graphe [1],[2]. Ce nombre, et le problème associé consistant à le calculer, ont été étudiés sous de nombreux noms alternatifs.

Les applications du nombre d'intersection comprennent l'ordonnancement des opérations sur des ordinateurs à très longs mots d'instruction (Very long instruction word), l'allocation de bande passante dans les réseaux à fibres optiques, la visualisation de données à l'aide d'écrans à lettres compacts, l'analyse des réseaux trophiques en biologie et l'inférence des complexes protéiques à partir des réseaux d'interaction protéine-protéine.

Un graphe avec sommets et arêtes a un nombre d'intersection majoré par . Calculer ou approximer le nombre d'intersection est un problème NP-difficile, mais traitable avec un paramètre fixe.

Les deux formulations équivalentes du nombre d'intersection, en termes de graphes d'intersection ou en termes de cliques qui recouvrent toutes les arêtes, ont été à l'origine de multiples noms pour ce concept et pour le problème informatique de la recherche d'un graphe d'intersection ou d'une couverture par cliques.

Un ensemble de cliques recouvrant toutes les arêtes d'un graphe est appelé Couverture d'arêtes par cliques [3] ou simplement Couverture par cliques, bien que ce dernier terme soit ambigu : une couverture de cliques peut également désigner un ensemble de cliques recouvrant tous les sommets du graphe [4]. Parfois, le terme « recouvrement » est utilisé à la place de « couverture » [5]. Le nombre d'intersection est aussi parfois appelé Nombre de couverture d'arêtes par cliques [6] ou Nombre de couverture de cliques [7].

Le problème du calcul du nombre d'intersection a été appelé le problème du nombre d'intersection[8], le problème de la base du graphe d'intersection [9], la couverture par cliques[9], le problème de la couverture d'arêtes par des cliques [8], et (en raison de l'une de ses premières applications) le problème du conflit de mots clés[2].

Définitions

Graphes d'intersection

Soit être une famille d'ensembles. Le graphe d'intersection de est un graphe non orienté qui possède un sommet pour chaque ensemble de et une arête entre chaque paire d'ensembles ayant une intersection non vide. Tout graphe peut être représenté comme un graphe d'intersection de cette manière[10].

Le nombre d'intersection d'un graphe est le plus petit nombre telle qu'il existe une représentation de ce type pour laquelle l'union des ensembles dans a éléments[9].

Couverture d'arêtes par cliques

Le nombre d'intersection d'un graphe est aussi défini comme le plus petit nombre de cliques dans ( sous-graphes complets de ) qui recouvrent toutes les arêtes de [1],[11]. Un ensemble de cliques possédant cette propriété est appelé « couverture d'arêtes par cliques » et pour cette raison, le nombre d'intersection est aussi parfois appelé « nombre de couverture d'arêtes par cliques »[6].

Équivalence

L'égalité du nombre d'intersections et du nombre de couvertures d'arêtes par cliques admet une démonstration concise.

D'une part, supposons que soit le graphe d'intersection d'une famille d'ensembles dont l'union a éléments. Pour chaque élément , les ensembles dans qui contiennent forment une clique dans , car ces ensembles possède (deux à deux) une intersection non vide contenant . De plus, les cliques ainsi formées recouvrent chaque arête dans  : si deux ensembles dans ont une intersection non vide alors il existe une arête entre ces deux ensembles et cette arête est contenue dans la clique pour chaque élément qui appartient à leur intersection. Par conséquent, les arêtes de peut être couvert par cliques, une par élément de [11].

Réciproquement, si les arêtes du graphe peuvent être couvertes par cliques, alors chaque sommet de peut être représenté par l'ensemble des cliques de cette couverture qui contiennent . Deux de ces ensembles de cliques, pour deux sommets et , ont une intersection non vide si et seulement s'il existe une clique dans la couverture qui contient à la fois et . Si cette clique contenant et existe, alors elle contient également l'arête , qui est une arête de . Inversement, si est une arête dans , alors elle est couverte par une clique ; cette clique contient à la fois et , elle appartient donc à l'intersection des ensembles de cliques qui représentent et . Par conséquent, une couverture par des cliques conduit à une représentation d'intersection avec éléments[11].

Applications

La représentation abstraite d'un graphe comme un graphe d'intersection d'ensembles peut être utilisée pour construire des représentations géométriques d'intersection plus concrètes de ce même graphe. En particulier, si un graphe possède un nombre d'intersection , il peut être représenté comme un graphe d'intersection de hypersphères unitaires de dimension n. La dimension minimale des hypersphères dans une telle représentation est appelée sphéricité d'un graphe, de sorte que la sphéricité est inférieure ou égale au nombre d'intersection[6].

Un recouvrement par cliques peut servir de schéma d'étiquetage d'adjacence pour un graphe. Chaque sommet est étiqueté par une valeur binaire, permettant de tester rapidement l'existence d'une arête entre deux sommets en comparant leurs valeurs. Ces étiquettes comportent un bit par clique : zéro si le sommet n'appartient pas à la clique, un s'il y appartient. Avec ce schéma, deux sommets sont adjacents si et seulement si la valeur binaire de leurs étiquettes est non nulle. La longueur des étiquettes correspond au nombre d'intersection du graphe. Lorsque cette longueur est faible, une représentation informatique du graphe utilisant uniquement ces étiquettes consomme moins de mémoire que les méthodes explicites telles que les listes d'adjacence et permet des tests d'adjacence plus rapides. Cette méthode a été utilisée par E. Kellerman d'IBM dans une des premières applications des nombres d'intersection, pour étiqueter un ensemble de mots-clés et détecter rapidement les conflits. C’est pourquoi le problème du calcul des nombres d’intersection est également appelé problème de conflit de mots-clés[12],[13]. De même, en géométrie algorithmique, les représentations basées sur le nombre d’intersection ont été considérées comme une représentation compacte pour les graphes de visibilité, bien qu’il existe des entrées géométriques pour lesquelles cette représentation nécessite un nombre de cliques quasi quadratique[14].

Bornes supérieures

Complexité

Références

Related Articles

Wikiwand AI