Plus petit cycle d’homologie, coupe minimale et graphes plongés dans des surfaces FMIN307 - Complexité avancée Boris Albar Reference : Minimum Cuts And Shortest Homologous Cycle E. W. Chambers, J. Erickson, A. Nayyeri 26 novembre 2010 Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 1 / 20 Introduction Topologie algorithmique Arbre de plus court chemin (sources multiples) : g 2 nlog n Plus petit cycle non-contractile : g O(g ) n4/3 . Flot maximum : g O(g ) n3/2 Shortest Splitting Cycle : g O(g ) n2 log n Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 2 / 20 Rappels Rappels (ou pas !) de topologie algébrique Definition Une surface (ou 2-variété) est un espace topologique séparé à base dénombrable tel que tout point admette un voisinage ouvert homéomorphe à un ouvert de R2 ou à R × R+ . On considère ici uniquement les surfaces orientables, compactes, connexes. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 3 / 20 Rappels Rappels (ou pas !) de topologie algébrique Definition Une surface (ou 2-variété) est un espace topologique séparé à base dénombrable tel que tout point admette un voisinage ouvert homéomorphe à un ouvert de R2 ou à R × R+ . On considère ici uniquement les surfaces orientables, compactes, connexes. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 3 / 20 Rappels Genre d’une surface Definition On appelle genre de la surface Σ, le nombre maximal g de courbes fermées simples γi (pas de recoupements) incluses dans la surface telles ! S que le complémentaire Σ\ γi soit connexe. i<g Cela correspond au nombre de ”trous” de la surfaces. Figure: Surface de genre 2 sans composantes de bord Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 4 / 20 Chemins et boucles Chemins et boucles Definition Un cycle est une application continue p : S 1 → Σ où S 1 est le cercle unité. Un cycle est dit contractile si il est homotope à un point. Un cycle γ est dit séparant si Σ\γ n’est pas connexe Figure: Cycle contractile, séparant et non-séparant Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 5 / 20 Surfaces combinatoires Surfaces combinatoires Definition Une surface combinatoire est la donnée d’une surface Σ, d’un graphe pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un disque (plongement cellulaire). On a des sommets, des arêtes et des faces, complexité de la surface n = |V | + |E | + |F | Notion du dualité du graphe G plongé dans une surface sans bords ⇒ plongement de G ∗ dans Σ. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 6 / 20 Surfaces combinatoires Surfaces combinatoires Definition Une surface combinatoire est la donnée d’une surface Σ, d’un graphe pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un disque (plongement cellulaire). On a des sommets, des arêtes et des faces, complexité de la surface n = |V | + |E | + |F | Notion du dualité du graphe G plongé dans une surface sans bords ⇒ plongement de G ∗ dans Σ. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 6 / 20 Surfaces combinatoires Surfaces combinatoires Definition Une surface combinatoire est la donnée d’une surface Σ, d’un graphe pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un disque (plongement cellulaire). On a des sommets, des arêtes et des faces, complexité de la surface n = |V | + |E | + |F | Notion du dualité du graphe G plongé dans une surface sans bords ⇒ plongement de G ∗ dans Σ. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 6 / 20 Surfaces combinatoires Surfaces combinatoires (2) Figure: Surface combinatoire Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 7 / 20 Caractéristique d’Euler-Poincaré Caractéristique d’Euler-Poincaré Soit G = (V , E ) un graphe et un plongement cellulaire de G dans une surface Σ. Definition La caractéristique d’Euler de la surface Σ est définie par : χ(Σ) = |V | − |E | + |F | où |F | est le nombre de faces. Ne dépend pas du plongement cellulaire ! ⇒ Invariant topologique Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 8 / 20 Caractéristique d’Euler-Poincaré Caractéristique d’Euler-Poincaré Soit G = (V , E ) un graphe et un plongement cellulaire de G dans une surface Σ. Definition La caractéristique d’Euler de la surface Σ est définie par : χ(Σ) = |V | − |E | + |F | où |F | est le nombre de faces. Ne dépend pas du plongement cellulaire ! ⇒ Invariant topologique Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 8 / 20 Homologie et graphes Homologie et graphes Soit G = (V , E ) un graphe et un plongement cellulaire de ce graphe dans une surface Σ. L’ensemble des arcs à une structure naturelle de Z2 = Z/2Z espace |E | vectoriel isomorphe à Z2 pour les opérations de différence symétrique et multiplication. Definition Les cycles sont les sous-graphe de G tel que tous les sommets soient de degré pair (”even graphs” = graphes 2k-réguliers). Les bords sont les sous-graphe de G formés par la différence symétrique des ”frontières” d’un sous-ensemble des faces. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés A. 26 Nayyeri) novembre dans des 2010 surfaces 9 / 20 Homologie et graphes Homologie et graphes (2) Definition L’espace des cycles Z (G ) est l’espace vectoriel engendré par les cycles |E |−|V |+1 de G , Z (G ) ' Z2 . L’espace des bords B(G ) le sous-espace vectoriel engendré par les |F | |F |−1 bords de G , B(G ) ' Z2 (où Z2 pour une surface sans bords (topologique !)) L’espace d’homologie H(G ) = Z (G )/B(G ). dim H(G ) = β1 = 2g − max{0, b − 1}. H cycle ⇔ H ∗ cocycle, H bord ⇔ H ∗ coupe ou cobord Deux sous-graphes pairs sont dit homologues si leur différence symétrique est un bord. Un cycle est séparant si sa classe homotopique est l’élément neutre. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces10 / 20 Homologie et graphes Homologie et graphes (2) Definition L’espace des cycles Z (G ) est l’espace vectoriel engendré par les cycles |E |−|V |+1 de G , Z (G ) ' Z2 . L’espace des bords B(G ) le sous-espace vectoriel engendré par les |F | |F |−1 bords de G , B(G ) ' Z2 (où Z2 pour une surface sans bords (topologique !)) L’espace d’homologie H(G ) = Z (G )/B(G ). dim H(G ) = β1 = 2g − max{0, b − 1}. H cycle ⇔ H ∗ cocycle, H bord ⇔ H ∗ coupe ou cobord Deux sous-graphes pairs sont dit homologues si leur différence symétrique est un bord. Un cycle est séparant si sa classe homotopique est l’élément neutre. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces10 / 20 Coupe minimale Coupe de poids minimum Proposition On considère S = (Σ, G ) une surface combinatoire où G = (V , E ) est un graphe pondéré et Σ une surface sans bords. Soit s et t deux sommet de G et X la (s, t)-coupe de poids minimum de G , alors X ∗ est le sous-graphe pair de poids minimal homologue au bord s ∗ dans la surface Σ\{s ∗ ∪ t ∗ }. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces11 / 20 NP-Difficulté NP-Difficulté et FPT Théorème Étant donné un sous-graphe 2k-régulier H (i.e. une classe d’homologie), trouver le sous-graphe 2k-régulier de poids minimal dans la classe de H est un problème NP-difficile. Théorème Soit G un graphe pondéré (positivement) plongé dans une surface de genre g et avec b composantes de bords. Soit H un sous-graphe 2k-régulier de G . On peut calculer le sous-graphe 2k-régulier de poids minimal homologue à H en temps (g + b)O(g +b) nlog n. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces12 / 20 NP-Difficulté NP-Difficulté et FPT Théorème Étant donné un sous-graphe 2k-régulier H (i.e. une classe d’homologie), trouver le sous-graphe 2k-régulier de poids minimal dans la classe de H est un problème NP-difficile. Théorème Soit G un graphe pondéré (positivement) plongé dans une surface de genre g et avec b composantes de bords. Soit H un sous-graphe 2k-régulier de G . On peut calculer le sous-graphe 2k-régulier de poids minimal homologue à H en temps (g + b)O(g +b) nlog n. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces12 / 20 Algorithme (Etape 1) Calcul d’un système de boucles (Σ, G ) une surface combinatoire avec Σ de genre g et b composantes de bords. H un sous-graphe 2k-régulier de G . Calcul d’un système fondamental de boucles : Soit L un ensemble de boucles. L est un système fondamental de boucles si Σ\L est homéomorphe à un disque (cas sans bords). Étape 1 : Calculer une plus petite base d’homotopie/homologie. Algorithme Glouton en O(nlog n + (b + g )n). On note P = {p1 , . . . , pβ1 } les chemins générés. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces13 / 20 Borne des croisements Borne des croisements Lemme Tout sous-graphe H 2k-régulier admet une décomposition en cycles, i.e un ensemble de cycles arêtes-disjoints ne se recoupant pas deux à deux (à l’intérieur d’une arête) et tels que l’union soit égal à H. Attention : Il n’y a pas unicité de la décomposition Lemme Soit G un graphe pondéré plongé dans une surface de genre g et avec b composantes de bords. Soit H un sous-graphe de G de poids minimal dans sa classe d’homologie et soit γ1 , . . . γr la décomposition en cycles de H. Le nombre total de croisements entre un plus court chemin dans G et les cycles γ1 , . . . , γr est au plus 6g + 2b − 3. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces14 / 20 Borne des croisements Borne des croisements Lemme Tout sous-graphe H 2k-régulier admet une décomposition en cycles, i.e un ensemble de cycles arêtes-disjoints ne se recoupant pas deux à deux (à l’intérieur d’une arête) et tels que l’union soit égal à H. Attention : Il n’y a pas unicité de la décomposition Lemme Soit G un graphe pondéré plongé dans une surface de genre g et avec b composantes de bords. Soit H un sous-graphe de G de poids minimal dans sa classe d’homologie et soit γ1 , . . . γr la décomposition en cycles de H. Le nombre total de croisements entre un plus court chemin dans G et les cycles γ1 , . . . , γr est au plus 6g + 2b − 3. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces14 / 20 Énumeration des cycles Énumeration des cycles Vecteur de croisements : V (γ) = (x1 (γ), . . . , xβ (γ)) où xi (γ) le nombre de croisements de γ avec pi . P V = Vi 0≤i≤β1 Vecteur de parité : Ṽ (H) = (x̃1 , x̃2 , . . . , x̃β1 ) le vecteur réduit modulo 2. Ṽ (H) est indépendant de la décomposition en cycles de H. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces15 / 20 Énumeration des cycles Énumeration des cycles (2) Lemme Deux sous-graphe 2k-réguliers sont homologues si et seulement si leur vecteur de parités sont égaux. On peut calculer le vecteur de parité d’un sous-graphe H en temps O(gn). Etape 2 : On énumère tous les vecteur ”valide” i.e. de la forme x = (x1 , x2 , . . . , xβ1 ) avec xi ≤ 12g + 4b − 6 (cf. borne des croisements) et (x1 mod 2, x2 mod 2, . . . , xβ1 mod 2) = x̃(H). ⇒ (g + b)O(g +b) vecteurs enumérés par bruteforce. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces16 / 20 Triangulations Triangulations On considère le 2β1 -gone associé au système de boucles L (rappel : Σ\L homéo à D 2 ). Pour tout vecteur de croisement, considère l’ensemble des triangulations pondérés possibles du 2β1 -gone. Figure: Construction d’une triangulation Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces17 / 20 Triangulations Triangulations (2) Bijection entre les triangulations pondérés du 2β1 -gone et les ensemble de cycles ne se recoupant pas. Les poids de la triangulation sont majorés par O(g + b) (cf. borne des croisements). ⇒ (g + b)O(g +b) triangulations pondérés associés à un vecteur de croisement. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces18 / 20 Conclusion Conclusion Étape 3 : Pour chaque triangulation pondéré, on calcule l’ensemble de cycles associés (bruteforce O((g + b)2 )) et une séquence de croisement avec les pi pour chacun des cycles. Étant donné un cycle c et sa séquence de croisements de taille x, on calcule le plus petit cycle homotope à c (O(xnlog n)). Pour chaque triangulation pondérée, on a le plus petit ensemble de cycles en temps O((g + b)2 nlog n. On a (g + b)O(g +b) triangulations pondérés pour chacun des (g + b)O(g +b) vecteurs de croisements. Complexité totale : (g + b)O(g +b) nlog n Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces19 / 20 Conclusion Conclusion (2) Corollaire Soit (Σ, G ) une surface combinatoire et Σ une surface de genre g sans bords. Soit s, t ∈ G , on peut calculer la (s, t)-coupe de poids minimale en temps g O(g ) nlog n. Boris Albar (Reference : Minimum Cuts And Plus Shortest petitHomologous cycle d’homologie, Cycle E.coupe W. Chambers, minimale et J. graphes Erickson,plongés 26 A.novembre Nayyeri) dans des 2010 surfaces20 / 20