polynomial time algorithms for the subset feedback vertex
play

Polynomial-Time Algorithms for the Subset Feedback Vertex Set - PowerPoint PPT Presentation

Polynomial-Time Algorithms for the Subset Feedback Vertex Set Problem on Interval Graphs and Permutation Graphs Charis Papadopoulos Spyridon Tzimas 21st International Symposium on Fundamentals of Computation Theory - FCT 2017 Bordeaux, France,


  1. Interval Graphs e c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  2. Interval Graphs e c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  3. Interval Graphs e V a c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  4. Interval Graphs e V b c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  5. Interval Graphs e V c c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  6. Interval Graphs e V d c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  7. Interval Graphs e V e c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  8. Interval Graphs e V f c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  9. Interval Graphs e V g = V c b f g a d I : representation of closed intervals interval graphs: V ↔ I such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of an interval graph is a triangle Compute maximal S -forests F S based on I Dynamic programming approach Scan vertices from left-to-right according to their right endpoint We grow appropriately each maximal S -forest C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 8 / 21

  10. Predecessors e c b f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  11. Predecessors e c b f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 Predecessors of an interval i : < i = r - max( V i \ { i } ) the last interval that finishes before i finishes ≪ i = r - max( V i \ ( { i } ∪ { h ∈ V : { h , i } ∈ E } )) the last interval that finishes before i starts C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  12. Predecessors e c b f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 Predecessors of an interval i : < i = r - max( V i \ { i } ) the last interval that finishes before i finishes ≪ i = r - max( V i \ ( { i } ∪ { h ∈ V : { h , i } ∈ E } )) the last interval that finishes before i starts C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  13. Predecessors e V f c b f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 Predecessors of an interval i : < i = r - max( V i \ { i } ) the last interval that finishes before i finishes ≪ i = r - max( V i \ ( { i } ∪ { h ∈ V : { h , i } ∈ E } )) the last interval that finishes before i starts C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  14. Predecessors e < f V f c b f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 Predecessors of an interval i : < i = r - max( V i \ { i } ) the last interval that finishes before i finishes ≪ i = r - max( V i \ ( { i } ∪ { h ∈ V : { h , i } ∈ E } )) the last interval that finishes before i starts C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  15. Predecessors e < f V f c b f ≪ f g a d The left and right endpoints of the intervals define ≤ ℓ and ≤ r : j i ≤ l j ⇐ ⇒ ℓ ( i ) ≤ ℓ ( j ) i i ≤ r j ⇐ ⇒ r ( i ) ≤ r ( j ) ℓ ( i ) ℓ ( j ) r ( i ) r ( j ) 1 Predecessors of an interval i : < i = r - max( V i \ { i } ) the last interval that finishes before i finishes ≪ i = r - max( V i \ ( { i } ∪ { h ∈ V : { h , i } ∈ E } )) the last interval that finishes before i starts C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 9 / 21

  16. Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set x , y ∈ V − V i such that x < ℓ y V i A i = max w { X ⊆ V i : G [ X ] ∈ F S } i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 10 / 21

  17. Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set x , y ∈ V − V i such that x < ℓ y V i A i = max w { X ⊆ V i : G [ X ] ∈ F S } i V i B x x i = max w { X ⊆ V i : G [ X ∪ { x } ] ∈ F S } i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 10 / 21

  18. Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set x , y ∈ V − V i such that x < ℓ y V i A i = max w { X ⊆ V i : G [ X ] ∈ F S } i V i B x x i = max w { X ⊆ V i : G [ X ∪ { x } ] ∈ F S } i y V i C x , y = max w { X ⊆ V i : G [ X ∪ { x , y } ] ∈ F S } x i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 10 / 21

  19. Recursive formulation for A i A-set: A < i , B i � < i ∪ { i } � A i = max w V i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 11 / 21

  20. Recursive formulation for A i A-set: A < i , B i � < i ∪ { i } � A i = max w V < i < i i If i / ∈ A i then i is irrelevant ⇒ A i = A < i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 11 / 21

  21. Recursive formulation for A i A-set: A < i , B i � < i ∪ { i } � A i = max w V < i < i i If i / ∈ A i then i is irrelevant ⇒ A i = A < i If i ∈ A i then B i < i ∪ { i } contains no S -cycle C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 11 / 21

  22. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V i x i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  23. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V i x = x ′ i = y ′ C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  24. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V i x = y ′ i = x ′ C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  25. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V i x i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  26. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V i x i If { i , x } / ∈ E : x is non-adjacent to any vertex of V i ⇒ A i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  27. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V < i < i x i If { i , x } / ∈ E : x is non-adjacent to any vertex of V i ⇒ A i ∈ B x i : i is irrelevant ⇒ B x If { i , x } ∈ E and i / < i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  28. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V < i < i x i If { i , x } / ∈ E : x is non-adjacent to any vertex of V i ⇒ A i ∈ B x i : i is irrelevant ⇒ B x If { i , x } ∈ E and i / < i If { i , x } ∈ E and i ∈ B x i : C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  29. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V ≪ x < i ≪ x x i If { i , x } / ∈ E : x is non-adjacent to any vertex of V i ⇒ A i ∈ B x i : i is irrelevant ⇒ B x If { i , x } ∈ E and i / < i If { i , x } ∈ E and i ∈ B x i : i or x ∈ S : every vertex between ≪ x and i induces an S -triangle ( B i ≪ x ) C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  30. Recursive formulation for B x i Let x ′ = ℓ - min { i , x } and let y ′ = { i , x } \ x ′ : ∈ E , then B x If { i , x } / i = A i  � � < i , B x ′ B x max w ≪ y ′ ∪ { i } , if i or x ∈ S  If { i , x } ∈ E , then B x i = � � < i , C x ′ , y ′ B x max w ∪ { i } , if i , x / ∈ S  < i V < i < i ≪ x x i If { i , x } / ∈ E : x is non-adjacent to any vertex of V i ⇒ A i ∈ B x i : i is irrelevant ⇒ B x If { i , x } ∈ E and i / < i If { i , x } ∈ E and i ∈ B x i : i or x ∈ S : every vertex between ≪ x and i induces an S -triangle ( B i ≪ x ) ∈ S : C i , x i / ∈ S and x / < i contains no S -cycle C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 12 / 21

  31. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V i y x i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  32. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V i y x i ∈ E : y is non-adjacent to any vertex of V i ⇒ B x If { i , y } / i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  33. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V i y x i ∈ E : y is non-adjacent to any vertex of V i ⇒ B x If { i , y } / i If { i , y } ∈ E : ∈ C x , y i ∈ S : < i , x , y > is an S -triangle ⇒ i / i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  34. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V < i < i y x i ∈ E : y is non-adjacent to any vertex of V i ⇒ B x If { i , y } / i If { i , y } ∈ E : ∈ C x , y i ∈ S : < i , x , y > is an S -triangle ⇒ i / i ∈ C x , y : i is irrelevant ⇒ C x , y i / i < i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  35. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V < i < i y x i ∈ E : y is non-adjacent to any vertex of V i ⇒ B x If { i , y } / i If { i , y } ∈ E : ∈ C x , y i ∈ S : < i , x , y > is an S -triangle ⇒ i / i ∈ C x , y : i is irrelevant ⇒ C x , y i / i < i If { i , y } ∈ E and i ∈ C x , y : S ∩ { i , x , y } = ∅ i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  36. Recursive formulation for C x , y i Let x ′ = ℓ - min { i , x , y } and let y ′ = ℓ - min( { i , x , y } \ { x ′ } ): ∈ E , then C x , y = B x If { i , y } / i i C x , y � , if i ∈ S < i If { i , y } ∈ E , then C x , y = � � < i , C x ′ , y ′ C x , y i ∪ { i } ∈ S max w , if i / < i V < i < i y x i ∈ E : y is non-adjacent to any vertex of V i ⇒ B x If { i , y } / i If { i , y } ∈ E : ∈ C x , y i ∈ S : < i , x , y > is an S -triangle ⇒ i / i ∈ C x , y : i is irrelevant ⇒ C x , y i / i < i If { i , y } ∈ E and i ∈ C x , y : S ∩ { i , x , y } = ∅ i C i , x < i ∪ { i } : none of its subset can induce an S -cycle with y C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 13 / 21

  37. Poly-time for SFVS on Interval Graphs Theorem There is a poly-time algorithm that computes SFVS of an interval graph. C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 14 / 21

  38. Poly-time for SFVS on Interval Graphs Theorem There is a poly-time algorithm that computes SFVS of an interval graph. 1 We compute the predecessors < i and ≪ i for each i in linear time C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 14 / 21

  39. Poly-time for SFVS on Interval Graphs Theorem There is a poly-time algorithm that computes SFVS of an interval graph. 1 We compute the predecessors < i and ≪ i for each i in linear time 2 Scan all intervals in an ascending order with respect to < ℓ : Compute first A i i and C x , y Then compute B x for every x , y such that ℓ ( i ) < ℓ ( x ) < ℓ ( y ) i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 14 / 21

  40. Poly-time for SFVS on Interval Graphs Theorem There is a poly-time algorithm that computes SFVS of an interval graph. 1 We compute the predecessors < i and ≪ i for each i in linear time 2 Scan all intervals in an ascending order with respect to < ℓ : Compute first A i i and C x , y Then compute B x for every x , y such that ℓ ( i ) < ℓ ( x ) < ℓ ( y ) i 3 At the end, output A n C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 14 / 21

  41. Poly-time for SFVS on Interval Graphs Theorem There is a poly-time algorithm that computes SFVS of an interval graph. 1 We compute the predecessors < i and ≪ i for each i in linear time 2 Scan all intervals in an ascending order with respect to < ℓ : Compute first A i i and C x , y Then compute B x for every x , y such that ℓ ( i ) < ℓ ( x ) < ℓ ( y ) i 3 At the end, output A n The total running time of the algorithm is O ( n 3 ). C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 14 / 21

  42. Permutation Graphs g a c e b d f h t b g c a e b h f d D : permutation diagram with S egments between two parallel lines permutation graphs: V ↔ S such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of a permutation graph is a triangle or a square g a d e c b h f C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 15 / 21 ✶

  43. Permutation Graphs g a c e b d f h t b g c a e b h f d D : permutation diagram with S egments between two parallel lines permutation graphs: V ↔ S such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of a permutation graph is a triangle or a square Compute maximal S -forests F S based on D Dynamic programming approach C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 15 / 21

  44. Permutation Graphs g a c e b d f h t b g c a e b h f d D : permutation diagram with S egments between two parallel lines permutation graphs: V ↔ S such that ( u , v ) ∈ E iff u and v intersect Every induced cycle of a permutation graph is a triangle or a square Compute maximal S -forests F S based on D Dynamic programming approach based on crossing pairs C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 15 / 21

  45. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  46. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  47. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j j j i i t t b b j j i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  48. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j j j i i t t b b j j i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  49. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j g j j i h i t t b b g j j h i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  50. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j gh ≤ r ij ⇔ g ≤ b i and h ≤ t j g j j i h i t t b b g j j h i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  51. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j gh ≤ r ij ⇔ g ≤ b i and h ≤ t j g j j i h i t t b b g j j h i i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  52. Crossing Pairs g a c e b d f h t b g c a e b h f d X : ij with i ≤ t j and j ≤ b i Given gh , ij ∈ X , we define ≤ ℓ and ≤ r : gh ≤ ℓ ij ⇔ g ≤ t i and h ≤ b j gh ≤ r ij ⇔ g ≤ b i and h ≤ t j g g j j i h i h t t b b g g j j h i h i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 16 / 21

  53. Predecessors of Crossing Pairs g a c e b d f h t b g c a e b h f d C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  54. Predecessors of Crossing Pairs g a c e b d f h t V eg b g c a e b h f d C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  55. Predecessors of Crossing Pairs g a c e b d f h t V eg b g c a e b h f d � ij = r - max X [ V ij \ { j } ] the iy with y the rightmost top C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  56. Predecessors of Crossing Pairs g a c e b d f h t V eg b g c a e b h f d � ij = r - max X [ V ij \ { j } ] the iy with y the rightmost top � ij = r - max X [ V ij \ { i } ] the xj with x the rightmost bottom C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  57. Predecessors of Crossing Pairs g a c e b d f h t V eg b g c a e b h f d � ij = r - max X [ V ij \ { j } ] the iy with y the rightmost top � ij = r - max X [ V ij \ { i } ] the xj with x the rightmost bottom < ij = r - max X [ V ij \ { i , j } ] the xy with x and y the rightmost bottom and top C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  58. Predecessors of Crossing Pairs g a c e b d f h t V eg b g c a e b h f d � ij = r - max X [ V ij \ { j } ] the iy with y the rightmost top � ij = r - max X [ V ij \ { i } ] the xj with x the rightmost bottom < ij = r - max X [ V ij \ { i , j } ] the xy with x and y the rightmost bottom and top ≪ ij = r - max X [ V ij \ ( { i , j } ∪ { h ∈ V : { h , i } ∈ E or { h , j } ∈ E } )] non-adjacent xy with x and y the rightmost bottom and top C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 17 / 21

  59. ✶ Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set xy , zw ∈ V − V ij such that xy < ℓ zw and { x , w } , { y , z } ∈ E w { X ⊆ V ij : G [ X ] ∈ F S } A ij = max j i t V ij b j i ✶ C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 18 / 21

  60. ✶ Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set xy , zw ∈ V − V ij such that xy < ℓ zw and { x , w } , { y , z } ∈ E w { X ⊆ V ij : G [ X ] ∈ F S } A ij = max B xy = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } ij y x j i t V ij b y j x i ✶ C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 18 / 21

  61. Basic sets: A , B , C Sets used by our dynamic programming algorithm A : corresponds to a maximum S -forest B and C : choose a solution only from a predescribed set xy , zw ∈ V − V ij such that xy < ℓ zw and { x , w } , { y , z } ∈ E w { X ⊆ V ij : G [ X ] ∈ F S } A ij = max B xy = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } ij C xy , zw = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij y x z j w i t V ij b y j w x z i ✶ C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 18 / 21

  62. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t V ij b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  63. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t V � ij A � ij b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  64. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t V � ij A � ij b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  65. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t B ij V < ij < ij b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  66. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t V ≪ ij A ≪ ij b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  67. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t B ii V ≪ jj ≪ jj b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  68. Recursive formulations for A , B , C i j t V ij A ij = max w { X ⊆ V ij : G [ X ] ∈ F S } b j i ✶ x y i j t B xy V ij ij = max w { X ⊆ V ij : G [ X ∪ { x , y } ] ∈ F S } b j y x i ✶ x z j y w i t C xy , zw V ij = max w { X ⊆ V ij : G [ X ∪ { x , y , z , w } ] ∈ F S } ij b j y w x z i ✶ The basic idea: we support any big S -cycle with a smaller S -cycle ⇒ j i t B jj V ≪ ii ≪ ii b j i C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 19 / 21

  69. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  70. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. 1 X : there are n + m crossing pairs C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  71. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. 1 X : there are n + m crossing pairs 2 For each ij ∈ X , we compute its { � , � , <, ≪} ⇒ O ( n 2 m ) C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  72. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. 1 X : there are n + m crossing pairs 2 For each ij ∈ X , we compute its { � , � , <, ≪} ⇒ O ( n 2 m ) 3 Scan all crossing pairs in an ascending order with respect to < r : First compute A ij Then compute B xy for every xy ∈ V − V ij ij And for each xy we compute C xy , zw for every zw ∈ V − V xy ij C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  73. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. 1 X : there are n + m crossing pairs 2 For each ij ∈ X , we compute its { � , � , <, ≪} ⇒ O ( n 2 m ) 3 Scan all crossing pairs in an ascending order with respect to < r : First compute A ij Then compute B xy for every xy ∈ V − V ij ij And for each xy we compute C xy , zw for every zw ∈ V − V xy ij 4 At the end, output A π ( n ) n C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  74. Poly-time for SFVS on Permutation Graphs Theorem There is a poly-time algorithm that computes SFVS of a permutation graph. 1 X : there are n + m crossing pairs 2 For each ij ∈ X , we compute its { � , � , <, ≪} ⇒ O ( n 2 m ) 3 Scan all crossing pairs in an ascending order with respect to < r : First compute A ij Then compute B xy for every xy ∈ V − V ij ij And for each xy we compute C xy , zw for every zw ∈ V − V xy ij 4 At the end, output A π ( n ) n The total running time of the algorithm is O ( n + m 3 ). C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 20 / 21

  75. Conclusion - Future work AT-free SFVS: ? chordal SFVS: NP-c FVS: P ⊂ ⊃ ⊂ ⊃ ⊃ permutation co-bipartite interval split SFVS: NP-c SFVS: P SFVS: P SFVS: P 1 Complexity on other graph classes: ⊲ AT-free graphs ⊃ co-comparability graphs, I 3 -free graphs ⊲ strongly chordal graphs, circular-arc graphs C. Papadopoulos (UoI) SFVS on Interval and Permutation Bordeaux, FCT 2017 21 / 21

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend