Composing dynamic programming tree-decomposition-based algorithms

04/29/2019
by   Julien Baste, et al.
0

Given two integers ℓ and p as well as ℓ graph classes H_1,...,H_ℓ, the problems GraphPart(H_1, ..., H_ℓ,p), VertPart(H_1, ..., H_ℓ), and EdgePart(H_1, ..., H_ℓ) ask, given graph G as input, whether V(G), V(G), E(G) respectively can be partitioned into ℓ sets S_1, ..., S_ℓ such that, for each i between 1 and ℓ, G[V_i] ∈H_i, G[V_i] ∈H_i, (V(G),S_i) ∈H_i respectively. Moreover in GraphPart(H_1, ..., H_ℓ,p), we request that the number of edges with endpoints in different sets of the partition is bounded by p. We show that if there exist dynamic programming tree-decomposition-based algorithms for recognizing the graph classes H_i, for each i, then we can constructively create a dynamic programming tree-decomposition-based algorithms for GraphPart(H_1, ..., H_ℓ,p), VertPart(H_1, ..., H_ℓ), and EdgePart(H_1, ..., H_ℓ). We show that, in some known cases, the obtained running times are comparable to those of the best know algorithms.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset