Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Slides

174 views

Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Slides

  1. 1. On the complexity of turning a graph into the analogue of a clique Julien Bensmail 1 Romaric Duvignau 1 Sergey Kirgizov 2 1Combinatoire et Algorithmique ⊂ LaBRI ⊂ (Université de Bordeaux × CNRS) 2Complex Networks ⊂ LIP6 ⊂ (UPMC × CNRS) 30 June – 4 July 2014
  2. 2. G orientation −−−−−−−→ −→ G
  3. 3. Sometimes −→ G is o-clique
  4. 4. Does such orientation exist for a given graph?
  5. 5. How difficult is it to find the answer?
  6. 6. Outline 1 Some definitions 2 Can a given graph be turned into o-clique? 3 Family of related problems 4 Open question 3
  7. 7. Definitions: orientations, o-cliques, oriented distances and diameters, Klostermeyer-MacGillivray lemma
  8. 8. Orientation G orientation −−−−−−→ −→ G is an assignment of a direction to each edge from undirected graph. •• • • •• • • •• • • o1 o2 4
  9. 9. Oriented chromatic number χo( −→ G ) is the minimal number of colors such that: 1 Colors of adjacent vertices are different • • 2 All arcs between two colors have the same direction • • • • • • 5
  10. 10. O-clique oriented analogue of usual clique Undirected G is clique ⇐⇒ χ(G) = n • • •• Oriented −→ G is o-clique ⇐⇒ χo( −→ G ) = n • • •• • • • 6
  11. 11. Oriented distances and diameters Strong dists = max dist(u, v) dist(v, u) diams = max u,v∈ −→ G dists(u, v) Weak distw = min dist(u, v) dist(v, u) diamw = max u,v∈ −→ G distw (u, v) 7
  12. 12. O-cliques & weak diameter −→ G is o-clique χo( −→ G ) = n diamw ( −→ G ) ≤ 2 [Klostermeyer, MacGillivray, 2004] 8
  13. 13. Decision problem: Does G admit a 2-weak orientation?
  14. 14. Does G admit a 2-weak orientation? An orientation G → −→ G is called 2-weak when diamw ( −→ G ) ≤ 2 • • • ? 9
  15. 15. Does G admit a 2-weak orientation? An orientation G → −→ G is called 2-weak when diamw ( −→ G ) ≤ 2 • • • • • • 9
  16. 16. Does G admit a 2-weak orientation? An orientation G → −→ G is called 2-weak when diamw ( −→ G ) ≤ 2 • • • •• • • • • • ? 9
  17. 17. Does G admit a 2-weak orientation? An orientation G → −→ G is called 2-weak when diamw ( −→ G ) ≤ 2 • • • •• • • • • • •• • • •• • • •• • • •• • • 9
  18. 18. Does G admit a 2-weak orientation? An orientation G → −→ G is called 2-weak when diamw ( −→ G ) ≤ 2 • • • •• • • • • • •• • • •• • • •• • • •• • • diamw = ∞ for any orientation of a claw 9
  19. 19. 2-weak orientation is NP-complete 2-weak orientation is in NP We just run BFS from all vertices to check whether diamw ( −→ G ) ≤ 2 or not. 2-weak orientation is NP-hard We prove this by reduction from the monotone version of Not-All-Equal 3SAT 10
  20. 20. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Monotone Not-All-Equal 3SAT F is 3CNF formula without negations. Example: (x1 ∨ x2 ∨ x3) ∧ (x3 ∨ x3 ∨ x4) ∧ . . . Is F satisfiable in such way that no clause have all literals set to same value? 11
  21. 21. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Monotone Not-All-Equal 3SAT F is 3CNF formula without negations. Example: (x1 ∨ x2 ∨ x3) ∧ (x3 ∨ x3 ∨ x4) ∧ . . . Is F satisfiable in such way that no clause have all literals set to same value? NP-complete even when in every clause all variables are different 11
  22. 22. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Reduction overview: F G 2 this diagram commutes F = nae-3-formulae G = graphs 2 = {good, bad} 12
  23. 23. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G F → G F is nae-satisfiable ⇐⇒ ∃ −→ G : diamw ( −→ G ) ≤ 2 (•, • ) is a representative pair from G (•, • ) is a non-representative pair from G ∃ −→ G : distw (•, • ) ≤ 2 ⇐⇒ F is nae-satisfiable ∃ −→ G : distw (•, • ) ≤ 2 by construction of G 13
  24. 24. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Variable gadget: xi −−→ • vi • vi xi = TRUE −−→ • vi • vi xi = FALSE −−→ • vi • vi 14
  25. 25. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  26. 26. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  27. 27. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  28. 28. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  29. 29. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  30. 30. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  31. 31. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  32. 32. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  33. 33. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  34. 34. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  35. 35. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Gadget for clause: Ct = xi ∨ xj ∨ xk −−→ • vi • vi • vi,t • vj • vj • vj,t • vk • vk • vk,t • wt • wt Ct is nae-satisfiable ⇐⇒ ∃ −→ G : distw (•, • ) ≤ 2 Using wt we can make distw (•, • ) ≤ 2 when it is needed 15
  36. 36. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G GF is a union of clause gadgets. G = GF + smth. For any pair of vertices (u, v) from GF we add the following: • u • • • • • v distw (u, •) ≤ 2 distw (v, •) ≤ 2 Here distw (u, v) = 3, so we don’t break our reduction by adding blue vertices. 16
  37. 37. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Also, for any non-representative pair of vertices (u,v) from GF we add the following: • u • • • • • v • distw (u, •) = 1 distw (v, •) = 1 Here distw (u, v) = 2, so we ensure that the distance between non-representative vertices is ≤ 2 17
  38. 38. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Next, in order to ensure that ∀y ∈ GF : distw (y, •) ≤ 2 we add the following: • u • • • • • v • • • y — any other vertex from GF • distw (y, •) = 2 18
  39. 39. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G Finally, turn all brown and blue vertices into one big clique, by adding all possible edges between them. 19
  40. 40. 2-weak orientation is NP-complete (xi ∨ xj ∨ xk) ∧ . . . ∧ (xi ∨ xk ∨ xl ) → G ∃ −→ G : distw (•, • ) ≤ 2 ⇐⇒ F is nae-satisfiable ∃ −→ G : distw (•, • ) ≤ 2 ∃ −→ G : distw (•, • ) ≤ 2 ∃ −→ G : distw (•, • ) ≤ 2 ∃ −→ G : distw (•, • ) ≤ 2 ∃ −→ G : distw (•, • ) ≤ 2 ∃ −→ G : distw (•, • ) ≤ 2    by construction of G F is nae-satisfiable ⇐⇒ ∃ −→ G : diamw ( −→ G ) ≤ 2 20
  41. 41. Family of related problems: Does G admit an orientation G → −→ G such that prop( −→ G )?
  42. 42. Family of o-problems Does G admit an orientation G → −→ G such that prop( −→ G )? Strong orientation: diams( −→ G ) < ∞ ⇐⇒ G is bridgeless [Robbins, 1939] Linear time using Tarjan’s bridge-finding algorithm [1974] k-strong orientation: diams( −→ G ) ≤ k NP-complete for k = 2 [Chvátal, Thomassen, 1978] 21
  43. 43. Family of o-problems Does G admit an orientation G → −→ G such that prop( −→ G )? Weak orientation: diamw ( −→ G ) < ∞ ⇐⇒ B-contraction(G) is claw-free. B-contraction means “replace all bridgeless subgraphs by vertices” Linear time [Bensmail, Duvignau, Kirgizov 2013] 22
  44. 44. Family of o-problems Does G admit an orientation G → −→ G such that prop( −→ G )? k-weak orientation: diamw ( −→ G ) ≤ k NP-complete for k ≥ 2 [Bensmail, Duvignau, Kirgizov, 2013] Gk is a k-edge-coloured graph (e.g. 2-edge coloured graphs are just signified graphs) ∃ −→ G : diamw ( −→ G ) ≤ k ⇐⇒ ∃Gk : χk(Gk) = n 23
  45. 45. Open question: Complexity of k-strong orientation when k > 2 Thank you for your attention kirgizov.complexnetworks.fr/some-problems/orientation.html

×