This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Decomposing a graph into subgraphs with small components

Rain Jiang [Uncaptioned image]  Kai Jiang [Uncaptioned image]  Minghui Jiang [Uncaptioned image]
Home School, USA
dr.minghui.jiang at gmail.com
Abstract

The component size of a graph is the maximum number of edges in any connected component of the graph. Given a graph GG and two integers kk and cc, (k,c)(k,c)-Decomposition is the problem of deciding whether GG admits an edge partition into kk subgraphs with component size at most cc. We prove that for any fixed k2k\geq 2 and c2c\geq 2, (k,c)(k,c)-Decomposition is NP-complete in bipartite graphs. Also, when both kk and cc are part of the input, (k,c)(k,c)-Decomposition is NP-complete even in trees. Moreover, (k,c)(k,c)-Decomposition in trees is W[1]-hard with parameter kk, and is FPT with parameter cc. In addition, we present approximation algorithms for decomposing a tree either into the minimum number of subgraphs with component size at most cc, or into kk subgraphs minimizing the maximum component size. En route to these results, we also obtain a fixed-parameter algorithm for Bin Packing with the bin capacity as parameter.

1 Introduction

Edge coloring is the problem of assigning a color to each edge of a graph such that no two adjacent edges have the same color. Any edge coloring of a graph with maximum degree Δ\Delta requires at least Δ\Delta colors. Vizing’s theorem states that Δ+1\Delta+1 colors suffice. The minimum number of colors in any edge coloring of a graph is its chromatic index. Deciding whether the chromatic index of a graph with maximum degree Δ\Delta is Δ\Delta or Δ+1\Delta+1 is generally a hard computational problem, although a constructive proof of Vizing’s theorem [25] implies a polynomial-time approximation algorithm with additive error at most 11. Holyer [15] proved that edge coloring cubic graphs with three colors, where Δ=3\Delta=3, is already NP-complete. Extending this result, Leven and Galil [21] proved that edge coloring Δ\Delta-regular graphs with Δ\Delta colors is NP-complete for any Δ3\Delta\geq 3. Cai and Ellis [3] further proved that edge coloring Δ\Delta-regular line graphs of bipartite graphs with Δ\Delta colors is NP-complete for any odd Δ3\Delta\geq 3. On the other hand, it is known that Δ\Delta colors always suffice for edge coloring bipartite graphs; see [4, Proposition 18.1.3] for a simple proof. Moreover, edge coloring bipartite graphs (or bipartite multigraphs) admits an efficient polynomial-time exact algorithm, even when Δ\Delta is part of the input [6].

Define the component size of a graph as the maximum number of edges in any connected component of the graph. In this paper, we study the following problem that generalizes edge coloring:

Definition 1.

Given a graph GG and two integers k2k\geq 2 and c1c\geq 1, (k,c)(k,c)-Decomposition is the problem of deciding whether GG admits an edge partition into kk subgraphs with component size at most cc.

We show that graph decomposition becomes hard, even in bipartite graphs, when the upper bound on the component size of the resulting subgraphs is relaxed from 11 (as in edge coloring) to any fixed c2c\geq 2:

Theorem 1.

For any fixed k2k\geq 2 and c2c\geq 2, (k,c)(k,c)-Decomposition is NP-complete in bipartite graphs.

The arboricity of a graph is the minimum number of parts in an edge partition of the graph such that each part induces a forest [26]. The trees in the forests may be restricted to various subclasses of trees, leading to several related concepts of arboricity. For example, the linear arboricity (respectively, star arboricity) of a graph is the minimum number of parts in an edge partition of the graph such that each part induces a disjoint union of paths (respectively, stars). While the arboricity of any graph can be computed in polynomial time [11], the arboricities with various restrictions on the trees often turn out to be hard to compute [17]. Our proof of Theorem 1 shows that arboricity and star arboricity with bounded component size are also hard to compute:

Corollary 1.

For any fixed k2k\geq 2 and c2c\geq 2, deciding whether a bipartite graph admits an edge partition into kk forests with component size at most cc is NP-complete.

Corollary 2.

For any fixed k2k\geq 2 and c2c\geq 2, deciding whether a bipartite graph admits an edge partition into kk forests of stars with component size at most cc is NP-complete.

The linear cc-arboricity of a graph is the minimum number of parts in an edge partition of the graph into linear cc-forests, i.e., disjoint unions of paths of length at most cc [1]. Note that linear 11-arboricity is simply chromatic index. Thus the aforementioned results on edge coloring [15, 21, 3] imply that determining the linear 11-arboricity of a graph is hard. Bermond, Fouquet, Habib, and Peroche [1] proved that deciding whether a cubic graph has linear 33-arboricity at most 22 is NP-complete, and conjectured that determining the linear cc-arboricity of a graph is hard for all cc. Since linear 22-arboricity is equivalent to arboricity and star arboricity with component size at most 22, the c=2c=2 case of this conjecture is confirmed by our Corollary 1 and Corollary 2:

Corollary 3.

For any fixed k2k\geq 2, deciding whether a bipartite graph has linear 22-arboricity kk is NP-complete.

For two graphs GG and HH, an HH-decomposition of GG is an edge partition of GG into subgraphs isomorphic to HH. For any fixed graph HH, the problem of deciding whether an input graph GG admits an HH-decomposition is NP-complete when HH has a component of at least three edges [7], and is polynomially solvable when every component of HH has at most two edges [2], in contrast to Corollary 3.


We established in Theorem 1 that (k,c)(k,c)-Decomposition is NP-complete in bipartite graphs. It is natural to ask whether the problem remains hard in simpler graphs. Our next theorem characterizes the complexity of (k,c)(k,c)-Decomposition in trees:

Theorem 2.

When both kk and cc are part of the input, (k,c)(k,c)-Decomposition in trees is NP-complete, is W[1]-hard with parameter kk, and is FPT with parameter cc.

Theorem 2 implies that for any fixed cc, (k,c)(k,c)-Decomposition in trees can be solved in polynomial time. For the related arboricity problem of deciding whether a tree admits an edge partition into kk linear cc-forests, Chang, Chen, Fu, and Huang [5] presented an algorithm that runs in polynomial time when cc is fixed.


The decision problem (k,c)(k,c)-Decomposition may be extended to two different optimization problems:

Definition 2.

Given a graph GG and an integer c1c\geq 1, Minimum-Color Decomposition is the problem of decomposing GG into the minimum number of subgraphs with component size at most cc.

Definition 3.

Given a graph GG and an integer k2k\geq 2, Minimum-Size Decomposition is the problem of decomposing GG into kk subgraphs minimizing the maximum component size.

Theorem 1 implies that Minimum-Color Decomposition for any fixed c2c\geq 2 and Minimum-Size Decomposition for any fixed k2k\geq 2 are APX-hard and inapproximable within a factor of 3/23/2 in bipartite graphs. The previous results on edge coloring [15, 21, 3] imply that Minimum-Color Decomposition for c=1c=1 is APX-hard and inapproximable within a factor of 4/34/3 in general graphs. In the next two theorems, we show that both minimization problems can be approximated very well in trees:

Theorem 3.

There is a linear-time approximation algorithm for Minimum-Color Decomposition in trees that finds an edge partition of any tree TT into at most k+1k^{*}+1 subgraphs with component size at most cc, where kk^{*} is the smallest number such that TT can be decomposed into kk^{*} subgraphs with component size at most cc.

Theorem 4.

There is a polynomial-time approximation scheme for Minimum-Size Decomposition in trees that finds an edge partition of any tree TT into kk subgraphs with component size at most (1+ϵ)c(1+\epsilon)c^{*}, where cc^{*} is the smallest number such that TT can be decomposed into kk subgraphs with component size at most cc^{*}.

Kleinberg, Motwani, Raghavan, and Venkatasubramanian [19] introduced (k,c)(k,c)-Fragmented Coloring, the problem of vertex partitioning a graph into kk induced subgraphs such that the number of vertices in each component of each subgraph is at most cc. Our problem (k,c)(k,c)-Decomposition is equivalent to (k,c)(k,c)-Fragmented Coloring in line graphs, since edge partitioning a graph GG is the same as vertex partitioning the line graph L(G)L(G).

The problem (k,c)(k,c)-Fragmented Coloring in general graphs is easily shown to be NP-hard for any k2k\geq 2 and c2c\geq 2, because the graph property of at most cc vertices in each component is additive and induced-hereditary, while vertex partitioning into fixed additive induced-hereditary properties is NP-hard in general [10], except the special case of bipartite testing, i.e., vertex partitioning into two independent sets. Also, the problem is trivial in bipartite graphs (and hence in trees), since every bipartite graph has a vertex partition into two induced subgraphs in which every component has only one vertex.


Our proofs of Theorem 2, Theorem 3, and Theorem 4 are based on a close relationship between (k,c)(k,c)-Decomposition in trees and the classical problem of Bin Packing:

Definition 4.

Given nn items of integer weights wiw_{i}, 1in1\leq i\leq n, and kk bins of integer capacity cc, Bin Packing is the problem of deciding whether the nn items can be packed into the kk bins, that is, whether the set of nn items can be partitioned into kk subsets, such that the total weight of the items in each subset is at most cc. Unary Bin Packing is the version of Bin Packing where all integers in the problem instance are encoded in unary.

It is well-known that Bin Packing is strongly NP-hard [12], and hence Unary Bin Packing is NP-hard, when both kk and cc are part of the input. In terms of parameterized complexity, Jansen et al. [16] proved that Unary Bin Packing, even with the condition i=1nwi=kc\sum_{i=1}^{n}w_{i}=kc, is already W[1]-hard with parameter kk. In the following theorem, we obtain a fixed-parameter algorithm for Bin Packing with parameter cc:

Theorem 5.

Bin Packing admits an exact algorithm running in 2O(c3/2)NO(1)2^{O(c^{3/2})}N^{O(1)} time, where NN is the size of the problem instance encoded in binary.

Hochbaum and Shmoys [13] introduced the notion of dual approximation algorithms that approximate the feasibility of a problem rather than its optimality. The existence of dual approximation algorithms for Bin Packing, similar to the one in the following theorem, are known [14, Sections 9.3.2.1 and 9.3.2.2]. We obtain a simple alternative via Theorem 5.

Theorem 6.

Bin Packing admits a dual approximation algorithm that, given nn items and kk bins of capacity cc, and given 0<ϵ10<\epsilon\leq 1, either decides that the nn items can be packed into kk enlarged bins of capacity (1+ϵ)c(1+\epsilon)c and returns yes, or decides that the nn items cannot be packed into kk bins of capacity cc and returns no, in 2O(ϵ3)NO(1)2^{O(\epsilon^{-3})}N^{O(1)} time, where NN is the size of the problem instance encoded in binary.

Throughout the paper, the size of a graph is the number of edges in it. We may refer to an edge partition of a graph into kk subgraphs and the corresponding kk-color assignment to the edges interchangeably.

2 Hardness of decomposing bipartite graphs

In this section we prove Theorem 1, Corollary 1, and Corollary 2. Fix any k2k\geq 2 and c2c\geq 2. The problem (k,c)(k,c)-Decomposition and the related arboricity problems are clearly in NP. We prove their NP-hardness in bipartite graphs in the following.

2.1 Building blocks HiH_{i}

The building blocks of our construction are a series of bipartite graphs Hi=Hi(k,c)H_{i}=H_{i}(k,c) for i0i\geq 0. H0H_{0} is the star K1,kcK_{1,kc} with one edge designated as an outlet. For i>0i>0, HiH_{i} has cic^{i} outlets and is constructed recursively as follows. Take k1k-1 disjoint copies of Hi1H_{i-1} and ci1c^{i-1} disjoint copies of K1,cK_{1,c}. Attach a distinct outlet from each copy of Hi1H_{i-1} to the center of each copy of K1,cK_{1,c}. Then designate the edges of all copies of K1,cK_{1,c} in the resulting graph HiH_{i} as its outlets. Refer to Figures 1 and 2 for some examples.

It is easy to verify that HiH_{i} is bipartite. Since it includes (k1)i(k-1)^{i} copies of K1,kcK_{1,kc} and j=1icj1(k1)ij\sum_{j=1}^{i}c^{j-1}(k-1)^{i-j} copies of K1,cK_{1,c}, its size is at most

(k1)ikc+j=1icj(k1)ij(k1)ikc+(c+k)i(c+k)i(kc+1)(c+k)i+2.(k-1)^{i}kc+\sum_{j=1}^{i}c^{j}(k-1)^{i-j}\leq(k-1)^{i}kc+(c+k)^{i}\leq(c+k)^{i}(kc+1)\leq(c+k)^{i+2}. (1)
Refer to caption
Figure 1: H0H_{0}, H1H_{1}, and H2H_{2} for k=2k=2 and c=3c=3.
Refer to caption
Figure 2: H2H_{2} for k=3k=3 and c=2c=2.
Lemma 1.

HiH_{i} admits an edge partition into kk subgraphs with component size at most cc. Moreover, in any edge partition of HiH_{i} into kk subgraphs with component size at most cc, each component must be a star K1,cK_{1,c}, and the cic^{i} outlets must belong to the same subgraph.

Proof.

We prove the lemma by induction on ii. For the base case when i=0i=0, the lemma clearly holds for H0=K1,kcH_{0}=K_{1,kc}. Now let i1i\geq 1 for the inductive step.

We first show that HiH_{i} admits an edge partition into kk subgraphs with component size at most cc. By the induction hypothesis, Hi1H_{i-1} admits an edge partition into kk subgraphs in which each component is a star K1,cK_{1,c}, and the ci1c^{i-1} outlets are in the same subgraph. Consider the kk-color assignment to the edges of Hi1H_{i-1} corresponding to this edge partition. Then by rotation of colors, there is an edge partition of the union of the k1k-1 copies of Hi1H_{i-1} in HiH_{i}, such that the outlets from different copies have different colors. Thus the outlets from the k1k-1 copies of Hi1H_{i-1} have k1k-1 different colors. Assign the remaining color to all edges of the ci1c^{i-1} disjoint copies of K1,cK_{1,c} in HiH_{i}. This color assignment corresponds to an edge partition of HiH_{i} into kk subgraphs in which each component is a star K1,cK_{1,c}, and the cic^{i} outlets are all in the same subgraph.

We next show that in any edge partition of HiH_{i} into kk subgraphs with component size at most cc, each component must be a star K1,cK_{1,c}, and the cic^{i} outlets must be in the same subgraph. Consider an arbitrary edge partition of HiH_{i} into kk subgraphs with at most cc edges in each component, and the corresponding kk-color assignment to the edges of HiH_{i}. Then in the derived edge partition of each copy of Hi1H_{i-1} in HiH_{i}, each component is a star K1,cK_{1,c}, and all ci1c^{i-1} outlets are in the same subgraph, by the induction hypothesis. Moreover, since each component in each copy of Hi1H_{i-1} already has the maximum allowable size cc, the outlets from different copies of Hi1H_{i-1} must have different colors to avoid forming larger components. Then all edges of the ci1c^{i-1} disjoint copies of K1,cK_{1,c} in HiH_{i} must have the only remaining color. ∎

2.2 Reduction for k=2k=2

Our proof for the k=2k=2 case of Theorem 1, Corollary 1, and Corollary 2 is based on a reduction from the NP-complete problem 2-Colorability of 3-Uniform Hypergraphs [23].

A qq-uniform hypergraph consists of a set VV of vertices and a set EE of hyperedges, where each hyperedge in EE is a subset of exactly qq vertices in VV. A hypergraph is kk-colorable if its vertices can be colored with kk colors such that in each hyperedge, not all qq vertices have the same color.

Given a 33-uniform hypergraph GG, we will construct a bipartite graph G2G_{2} with maximum degree 2c2c such that GG is 22-colorable if and only if G2G_{2} admits an edge partition into 22 subgraphs with component size at most cc.

Let Δ\Delta be the maximum degree of GG, that is, the maximum number of hyperedges in which a vertex is contained. Let jj be the smallest integer such that cj(c1)Δc^{j}\geq(c-1)\Delta.

Include in G2G_{2} a distinct copy of HjH_{j} for each vertex in GG, and a distinct copy of K1,c+1K_{1,c+1} for each hyperedge in GG. For each hyperedge in GG, which consists of three vertices, take c+1c+1 distinct outlets from the corresponding three copies of HjH_{j}, with at least one outlet from each copy, then attach the c+1c+1 outlets to the c+1c+1 leaves of the copy of K1,c+1K_{1,c+1} corresponding to the hyperedge, with one outlet to each leaf. This completes the construction of G2G_{2}.

Recall that HjH_{j} has cjc^{j} outlets. Since cj(c1)Δc^{j}\geq(c-1)\Delta, each copy of HjH_{j} can contribute at least c1c-1 distinct outlets to each adjacent copy of K1,c+1K_{1,c+1}. On the other hand, of the three copies of HjH_{j} adjacent to each copy of K1,c+1K_{1,c+1}, each must contribute at least 11 and hence at most c+12=c1c+1-2=c-1 of the c+1c+1 outlets. Thus there are enough outlets from each copy of HjH_{j} to the adjacent copies of K1,c+1K_{1,c+1}.

By our choice of jj, we have cj1<(c1)Δc^{j-1}<(c-1)\Delta and hence cj<c2Δc^{j}<c^{2}\Delta. Recall (1) that the size of HjH_{j} is at most (c+k)j+2(c+k)^{j+2}. Since k=2k=2 and c2c\geq 2, we have

(c+k)j+2(c2)j+2=c4(cj)2<c4(c2Δ)2=c8Δ2.(c+k)^{j+2}\leq(c^{2})^{j+2}=c^{4}(c^{j})^{2}<c^{4}(c^{2}\Delta)^{2}=c^{8}\Delta^{2}.

The reduction is clearly polynomial. The following lemma completes the proof for the k=2k=2 case of Theorem 1, Corollary 1 and Corollary 2:

Lemma 2.

GG is 22-colorable if and only if G2G_{2} admits an edge partition into two subgraphs with component size at most cc, if and only if G2G_{2} admits an edge partition into two forests with component size at most cc, if and only if G2G_{2} admits an edge partition into two forests of stars with component size at most cc.

Proof.

It suffices to prove a cycle of four implications:

  1. 1.

    if GG is 22-colorable, then G2G_{2} admits an edge partition into two forests of stars with component size at most cc,

  2. 2.

    if G2G_{2} admits an edge partition into two forests of stars with component size at most cc, then G2G_{2} admits an edge partition into two forests with component size at most cc,

  3. 3.

    if G2G_{2} admits an edge partition into two forests with component size at most cc, then G2G_{2} admits an edge partition into two subgraphs with component size at most cc,

  4. 4.

    if G2G_{2} admits an edge partition into two subgraphs with component size at most cc, then GG is 22-colorable.

We first prove implication 1. Suppose that there is a 22-coloring of the vertices of GG such that in each hyperedge, not all three vertices have the same color. Color the edges in each copy of HjH_{j} in G2G_{2} with two colors to partition them into two subgraphs as in Lemma 1, such that all cjc^{j} outlets in each copy of HjH_{j} have the same color as the corresponding vertex in GG. Next color the edges in each copy of K1,c+1K_{1,c+1} in G2G_{2} corresponding to a hyperedge in GG, such that each edge of K1,c+1K_{1,c+1} has a color different (note that there are only two colors available) from the adjacent outlet. Since in each hyperedge of GG not all three vertices have the same color, and since the c+1c+1 outlets adjacent to the c+1c+1 edges of K1,c+1K_{1,c+1} include at least one outlet from each of the three copies of HjH_{j}, it follows that not all c+1c+1 edges have the same color. Thus we obtain an edge partition of G2G_{2} into two subgraphs with component size at most cc. Note that the two subgraphs are indeed two forests of stars.

Implications 2 and 3 are trivial.

We next prove implication 4. Suppose that G2G_{2} admits an edge partition into two subgraphs with component size at most cc. Color the edges of G2G_{2} with two colors according to this partition. Then it follows by Lemma 1 that in each copy of HjH_{j} in G2G_{2}, each component is a star with cc edges, and all outlets have the same color. Assign this color to the corresponding vertex in GG. Since each outlet of HjH_{j} is already in a component of the maximum allowable size cc, each edge of K1,c+1K_{1,c+1} must have a color different from its adjacent outlet. In each copy of K1,c+1K_{1,c+1}, not all c+1c+1 edges can have the same color under the constraint of component size at most cc. Correspondingly, in each hyperedge of GG, not all three vertices have the same color either. Thus GG is 22-colorable. ∎

2.3 Reduction for k3k\geq 3

Our proof for the k3k\geq 3 case of Theorem 1, Corollary 1, and Corollary 2 is based on a reduction from the NP-complete problem kk-Colorability, which asks whether a given graph GG admits a vertex coloring with kk colors. Maffray and Preissmann [24] proved that for any k3k\geq 3, kk-Colorability is NP-hard even in triangle-free graphs. Emden-Weinert, Hougardy, and Kreuter [9] proved that for any k3k\geq 3, kk-Colorability is NP-hard in graphs with maximum degree k+k1k+\lceil\sqrt{k}\,\rceil-1. Note that kk-Colorability for k=2k=2 is just bipartite testing which is well-known to be solvable in polynomial time. Thus we had to prove the k=2k=2 case by reduction from a different problem.

Let GG be an input graph for kk-Colorability. Construct GkG_{k} as follows. Let jj be the smallest integer such that cjc^{j} is at least the maximum degree of GG. For each vertex in GG, include in GkG_{k} a distinct copy of HjH_{j}. For each edge in GG, which consists of two vertices, take a distinct outlet from the copy of HjH_{j} for each vertex, then join the two ends of the two outlets into one vertex.

It is easy to verify that GkG_{k} is bipartite, and the reduction is polynomial. Moreover, by a similar argument as in the proof of Lemma 2, GG is kk-colorable if and only if GkG_{k} admits an edge partition into kk subgraphs with component size at most cc, if and only if GkG_{k} admits an edge partition into kk forests with component size at most cc, if and only if GkG_{k} admits an edge partition into kk forests of stars with component size at most cc.


This completes the proof of Theorem 1, Corollary 1, and Corollary 2.

3 Fixed-parameter algorithm for bin packing

In this section we prove Theorem 5 by obtaining a fixed-parameter algorithm for Bin Packing with parameter cc.

Recall Definition 4 that the input to Bin Packing consists of nn items of integer weights wiw_{i}, 1in1\leq i\leq n, and kk bins of integer capacity cc. The problem has a solution only if max{wi1in}c\max\{w_{i}\mid 1\leq i\leq n\}\leq c and i=1nwikc\sum_{i=1}^{n}w_{i}\leq kc, which we assume. Let NN be the size of the problem instance encoded in binary. Then N=Θ(n+i=1nlogwi+logk+logc)N=\Theta(n+\sum_{i=1}^{n}\log w_{i}+\log k+\log c). In particular, we have logkc=O(N)\log kc=O(N).

For 1wc1\leq w\leq c, let awa_{w} be the number of items with weight ww. In NO(1)N^{O(1)} time, we can compute awa_{w} for all ww. Then w=1cwaw=i=1nwikc\sum_{w=1}^{c}w\,a_{w}=\sum_{i=1}^{n}w_{i}\leq kc. With the multiplicities awa_{w} for 1wc1\leq w\leq c, we no longer need wiw_{i} for 1in1\leq i\leq n. Henceforth, we work on the cc integers awa_{w} only. Without loss of generality, we increase a1a_{1} until w=1cwaw=kc\sum_{w=1}^{c}w\,a_{w}=kc. Note that each awa_{w} has magnitude at most kckc, where logkc=O(N)\log kc=O(N). It remains to decide whether the items with multiplicities awa_{w} can be partitioned into kk subsets, each of total weight exactly cc.

Consider the two vectors 𝒘=(1,2,,c)\boldsymbol{w}=(1,2,\ldots,c) and 𝒂=(a1,a2,,ac)\boldsymbol{a}=(a_{1},a_{2},\ldots,a_{c}) in 0c\mathbb{Z}_{\geq 0}^{c}. Then the condition w=1cwaw=kc\sum_{w=1}^{c}w\,a_{w}=kc becomes 𝒘𝒂=kc\boldsymbol{w}\cdot\boldsymbol{a}=kc. For b0b\geq 0, let

𝒫b={𝒙0c𝒘𝒙=b}.\mathcal{P}_{b}=\{\,\boldsymbol{x}\in\mathbb{Z}_{\geq 0}^{c}\mid\boldsymbol{w}\cdot\boldsymbol{x}=b\,\}.

Then 𝒫c\mathcal{P}_{c} is the set of vectors corresponding to all feasible patterns of item multiplicities for a single bin, and we can reformulate the problem as deciding whether there exists a multiset of vectors in 𝒫c\mathcal{P}_{c} whose sum is 𝒂\boldsymbol{a}.

Recall that the partition number p(n)p(n) for n0n\geq 0 is the number of multisets of positive integers summing up to nn. In particular, p(0)=1p(0)=1. Then, by definition, the size of 𝒫c\mathcal{P}_{c} is exactly p(c)p(c). Moreover, the size of 𝒫b\mathcal{P}_{b} is at most p(b)p(b) for all b0b\geq 0.

It is known that p(n)=2O(n)p(n)=2^{O(\sqrt{n})} [22, Theorem 15.7]. Let d(c)0d(c)\geq 0 be the smallest integer such that 2d>h=0dp(hc)2^{d}>\sum_{h=0}^{d}p(hc) for all d>d(c)d>d(c). Since h=0dp(hc)=2O(dc)\sum_{h=0}^{d}p(hc)=2^{O(\sqrt{dc})}, we have d(c)=O(c)d(c)=O(c).

Let 𝒗i\boldsymbol{v}_{i}, 1ip(c)1\leq i\leq p(c), be the vectors in 𝒫c\mathcal{P}_{c}. For any index set I{1,,p(c)}I\subseteq\{1,\ldots,p(c)\}, the vector iIλi𝒗i\sum_{i\in I}\lambda_{i}\boldsymbol{v}_{i}, where λi0\lambda_{i}\in\mathbb{Z}_{\geq 0} for all iIi\in I, is called an integer conical combination of vectors in 𝒫c\mathcal{P}_{c}. Consider the integer conical hull of 𝒫c\mathcal{P}_{c} consisting of all integer conical combinations of vectors in 𝒫c\mathcal{P}_{c}:

int.cone(𝒫c)={i=1p(c)λi𝒗i|λi0 for 1ip(c)}.\mathrm{int.cone}(\mathcal{P}_{c})=\bigg{\{}\,\sum_{i=1}^{p(c)}\lambda_{i}\boldsymbol{v}_{i}\;\Big{|}\;\lambda_{i}\in\mathbb{Z}_{\geq 0}\textrm{ for }1\leq i\leq p(c)\bigg{\}}.

We prove the following lemma using a common technique for Carathéodory bounds; see for example [8, Lemma 3].

Lemma 3.

Every vector in int.cone(𝒫c)\mathrm{int.cone}(\mathcal{P}_{c}) can be represented as the integer conical combination of at most d(c)d(c) distinct vectors in 𝒫c\mathcal{P}_{c}.

Proof.

Let II be any set of dd distinct indices from {1,,p(c)}\{1,\ldots,p(c)\}, where 0dp(c)0\leq d\leq p(c). Then II has 2d2^{d} distinct subsets. Denote by |H||H| the size of a set HH. For each subset HIH\subseteq I, where 0|H|d0\leq|H|\leq d, the vector 𝒙=iH𝒗i\boldsymbol{x}=\sum_{i\in H}\boldsymbol{v}_{i} satisfies

𝒘𝒙=𝒘iH𝒗i=iH𝒘𝒗i=iHc=|H|c,\boldsymbol{w}\cdot\boldsymbol{x}=\boldsymbol{w}\cdot\sum_{i\in H}\boldsymbol{v}_{i}=\sum_{i\in H}\boldsymbol{w}\cdot\boldsymbol{v}_{i}=\sum_{i\in H}c=|H|\,c,

and hence 𝒙𝒫hc\boldsymbol{x}\in\mathcal{P}_{hc} with h=|H|h=|H|. Thus 𝒙\boldsymbol{x} is one of the vectors in h=0d𝒫hc\cup_{h=0}^{d}\mathcal{P}_{hc}.

Consider any vector 𝒖=iIλi𝒗i\boldsymbol{u}=\sum_{i\in I}\lambda_{i}\boldsymbol{v}_{i}, where λi>0\lambda_{i}\in\mathbb{Z}_{>0} for all iIi\in I. Suppose that d>d(c)d>d(c). Then by our choice of d(c)d(c), we have 2d>h=0dp(hc)2^{d}>\sum_{h=0}^{d}p(hc). Note that the number of vectors in h=0d𝒫hc\cup_{h=0}^{d}\mathcal{P}_{hc} is at most h=0dp(hc)\sum_{h=0}^{d}p(hc). Thus the number of distinct subsets of II exceeds the number of vectors in h=0d𝒫hc\cup_{h=0}^{d}\mathcal{P}_{hc}. By the pigeonhole principle, there are two distinct subsets AA and BB of II such that iA𝒗i=iB𝒗i\sum_{i\in A}\boldsymbol{v}_{i}=\sum_{i\in B}\boldsymbol{v}_{i}. Then A=ABA^{\prime}=A\setminus B and B=BAB^{\prime}=B\setminus A are two distinct and disjoint subsets of II such that iA𝒗i=iB𝒗i\sum_{i\in A^{\prime}}\boldsymbol{v}_{i}=\sum_{i\in B^{\prime}}\boldsymbol{v}_{i}. Assume without loss of generality that AA^{\prime}\neq\emptyset.

Let λ=min{λiiA}\lambda=\min\{\,\lambda_{i}\mid i\in A^{\prime}\,\}. We can rewrite 𝒖\boldsymbol{u} as follows:

iIλi𝒗i\displaystyle\sum_{i\in I}\lambda_{i}\boldsymbol{v}_{i} =iI(AB)λi𝒗i+iAλi𝒗i+iBλi𝒗i\displaystyle=\sum_{i\in I\setminus(A^{\prime}\cup B^{\prime})}\lambda_{i}\boldsymbol{v}_{i}+\sum_{i\in A^{\prime}}\lambda_{i}\boldsymbol{v}_{i}+\sum_{i\in B^{\prime}}\lambda_{i}\boldsymbol{v}_{i}
=iI(AB)λi𝒗i+iA(λiλ)𝒗i+iB(λi+λ)𝒗i=iIμi𝒗i,\displaystyle=\sum_{i\in I\setminus(A^{\prime}\cup B^{\prime})}\lambda_{i}\boldsymbol{v}_{i}+\sum_{i\in A^{\prime}}(\lambda_{i}-\lambda)\boldsymbol{v}_{i}+\sum_{i\in B^{\prime}}(\lambda_{i}+\lambda)\boldsymbol{v}_{i}=\sum_{i\in I}\mu_{i}\boldsymbol{v}_{i},

where

μi={λifor iI(AB)λiλfor iAλi+λfor iB.\mu_{i}=\left\{\begin{array}[]{ll}\lambda_{i}&\textrm{for }i\in I\setminus(A^{\prime}\cup B^{\prime})\\ \lambda_{i}-\lambda&\textrm{for }i\in A^{\prime}\\ \lambda_{i}+\lambda&\textrm{for }i\in B^{\prime}.\end{array}\right.

Note that μi0\mu_{i}\in\mathbb{Z}_{\geq 0} for all iIi\in I, and that μi=0\mu_{i}=0 for at least one index iAIi\in A^{\prime}\subseteq I. Thus 𝒖\boldsymbol{u} is expressed as the integer conical combination of at most d1d-1 distinct vectors in 𝒫c\mathcal{P}_{c}.

By repeating the above argument, we can eventually obtain a representation of 𝒖\boldsymbol{u} as the integer conical combination of at most d(c)d(c) distinct vectors in 𝒫c\mathcal{P}_{c}. ∎

If there is a multiset of vectors in 𝒫c\mathcal{P}_{c} summing up to 𝒂\boldsymbol{a}, then 𝒂\boldsymbol{a} is an integer conical combination of vectors in 𝒫c\mathcal{P}_{c}, and hence is included in int.cone(𝒫c)\mathrm{int.cone}(\mathcal{P}_{c}), and hence by Lemma 3 can be represented as an integer conical combination of dd(c)d\leq d(c) distinct vectors in 𝒫c\mathcal{P}_{c}. Thus to decide whether there exists a multiset of vectors in 𝒫c\mathcal{P}_{c} whose sum is 𝒂\boldsymbol{a}, we can enumerate all subsets of {1,,p(c)}\{1,\ldots,p(c)\} of size dd(c)d\leq d(c), then for each subset II, check whether iIλi𝒗i=𝒂\sum_{i\in I}\lambda_{i}\boldsymbol{v}_{i}=\boldsymbol{a} has a solution with λi0\lambda_{i}\in\mathbb{Z}_{\geq 0} for all iIi\in I.

The checking step reduces to an integer linear program, with O(c)O(c) linear constraints on at most d(c)=O(c)d(c)=O(c) variables λi\lambda_{i}, and with integer coefficients at most kckc, where logkc=O(N)\log kc=O(N).

We now analyze the running time of our algorithm. Recall that converting the item weights wiw_{i} to multiplicities awa_{w} takes NO(1)N^{O(1)} time. Finding the p(c)p(c) vectors in 𝒫c\mathcal{P}_{c}, 𝒗i\boldsymbol{v}_{i} for 1ip(c)1\leq i\leq p(c), takes cO(c)c^{O(c)} time. The number of subsets of {1,,p(c)}\{1,\ldots,p(c)\} of size dd(c)d\leq d(c) is at most (p(c))d(c)=(2O(c))O(c)=2O(c3/2)(p(c))^{d(c)}=(2^{O(\sqrt{c})})^{O(c)}=2^{O(c^{3/2})}.

Solving an integer linear program with nn variables and mm constraints and with maximum coefficient Δ\Delta takes nO(n)mO(1)(logΔ)O(1)n^{O(n)}m^{O(1)}(\log\Delta)^{O(1)} time111See discussion at https://cstheory.stackexchange.com/questions/16530 for more refined estimates. [20, 18]. In our setting, this is (O(c))O(c)(O(c))O(1)(O(N))O(1)=cO(c)NO(1)(O(c))^{O(c)}(O(c))^{O(1)}(O(N))^{O(1)}=c^{O(c)}N^{O(1)}.

Thus the total running time is NO(1)+cO(c)+2O(c3/2)cO(c)NO(1)N^{O(1)}+c^{O(c)}+2^{O(c^{3/2})}\cdot c^{O(c)}N^{O(1)}, which simplifies to 2O(c3/2)NO(1)2^{O(c^{3/2})}N^{O(1)}, since cO(c)=2O(clogc)c^{O(c)}=2^{O(c\log c)}. This completes the proof of Theorem 5.

4 Dual approximation algorithm for bin packing

In this section we prove Theorem 6.

Fix any 0<ϵ10<\epsilon\leq 1. Separate the nn items into two groups: small items of weight at most ϵc\epsilon c, and large items of weight greater than ϵc\epsilon c.

Let c=2ϵ2c^{\prime}=\lfloor 2\epsilon^{-2}\rfloor. Note that cϵ2c/2cc^{\prime}\cdot\epsilon^{2}c/2\leq c. For each large item of weight wi>ϵcw_{i}>\epsilon c, let wiw^{\prime}_{i} be the largest integer such that wiϵ2c/2wiw^{\prime}_{i}\cdot\epsilon^{2}c/2\leq w_{i}. Then (wi+1)ϵ2c/2>wi(w^{\prime}_{i}+1)\cdot\epsilon^{2}c/2>w_{i}.

The algorithm works as follows. If the total weight of the nn items exceeds kckc, then clearly the nn items cannot be packed into kk bins of capacity cc, so return no. Otherwise, construct a set of scaled items including one item of weight wiw^{\prime}_{i} for each large item of weight wiw_{i}. Use the fixed-parameter algorithm in Theorem 5 to decide whether the set of at most nn scaled items wiw^{\prime}_{i} can be packed into kk scaled bins of capacity cc^{\prime}, then return the answer accordingly.

Lemma 4.

If the scaled items can be packed into kk scaled bins of capacity cc^{\prime}, then the nn items can be packed into kk enlarged bins of capacity (1+ϵ)c(1+\epsilon)c.

Proof.

For each large item of weight wi>ϵcw_{i}>\epsilon c, the corresponding scaled item has weight

wi>wiϵ2c/21>ϵcϵ2c/21=2ϵ11ϵ1.w^{\prime}_{i}>\frac{w_{i}}{\epsilon^{2}c/2}-1>\frac{\epsilon c}{\epsilon^{2}c/2}-1=2\epsilon^{-1}-1\geq\epsilon^{-1}.

Thus each scaled bin of capacity c=2ϵ2c^{\prime}=\lfloor 2\epsilon^{-2}\rfloor can hold at most 2ϵ2/ϵ12ϵ1\lfloor 2\epsilon^{-2}\rfloor/\epsilon^{-1}\leq 2\epsilon^{-1} scaled items.

For the scaled items in each scaled bin, the sum of their weights wiw^{\prime}_{i} is at most cc^{\prime}, and hence the sum of wiϵ2c/2w^{\prime}_{i}\cdot\epsilon^{2}c/2 is at most cϵ2c/2cc^{\prime}\cdot\epsilon^{2}c/2\leq c. Recall that wiϵ2c/2wi<(wi+1)ϵ2c/2w^{\prime}_{i}\cdot\epsilon^{2}c/2\leq w_{i}<(w^{\prime}_{i}+1)\cdot\epsilon^{2}c/2, and hence wiwiϵ2c/2<ϵ2c/2w_{i}-w^{\prime}_{i}\cdot\epsilon^{2}c/2<\epsilon^{2}c/2. Corresponding to the at most 2ϵ12\epsilon^{-1} scaled items in each scaled bin, the total weight of the large items can exceed cc by at most 2ϵ1ϵ2c/2=ϵc2\epsilon^{-1}\cdot\epsilon^{2}c/2=\epsilon c, and hence is at most (1+ϵ)c(1+\epsilon)c. Thus we can pack all large items into kk enlarged bins of capacity (1+ϵ)c(1+\epsilon)c.

Since the total weight of both large and small items is at most kckc, at least one of the kk enlarged bins is filled to at most cc of its capacity (1+ϵ)c(1+\epsilon)c, and hence can always accommodate one more small item of weight at most ϵc\epsilon c. Thus we can pack all small items into the kk enlarged bins after the large items. ∎

Lemma 5.

If the scaled items cannot be packed into kk scaled bins of capacity cc^{\prime}, then the nn items cannot be packed into kk bins of capacity cc.

Proof.

We prove the contrapositive. Suppose that the nn items of total weight at most kckc can be packed into kk bins of capacity cc. Then by discarding the small items and rounding down the weights wiw_{i} of the large items to integer multiples of ϵ2c/2\epsilon^{2}c/2, the rounded items of weights wiϵ2c/2w^{\prime}_{i}\cdot\epsilon^{2}c/2 can be packed into kk bins of capacity c=2ϵ2ϵ2c/2c=2\epsilon^{-2}\cdot\epsilon^{2}c/2, and hence the scaled items of integer weights wiw^{\prime}_{i} can be packed into kk scaled bins of capacity c=2ϵ2c^{\prime}=\lfloor 2\epsilon^{-2}\rfloor. ∎

With at most nn scaled items and capacity c=O(ϵ2)c^{\prime}=O(\epsilon^{-2}) for the kk scaled bins, it follows by Theorem 5 that the running time of our dual approximation algorithm is 2O(ϵ3)NO(1)2^{O(\epsilon^{-3})}N^{O(1)}, where NN is the size of the problem instance encoded in binary. This completes the proof of Theorem 6.

5 Parameterized complexity of decomposing trees

In this section we prove Theorem 2. The problem (k,c)(k,c)-Decomposition is clearly in NP. In the following, we prove that when both kk and cc are part of the input, (k,c)(k,c)-Decomposition in trees is not only NP-hard but also W[1]-hard with parameter kk, and is FPT with parameter cc.

5.1 NP-hardness and W[1]-hardness with parameter kk

We give a polynomial reduction from Unary Bin Packing with kk bins to (k,c)(k,c)-Decomposition in trees. Recall that Unary Bin Packing is W[1]-hard with parameter kk [16].

Given nn items of weights wiw_{i}, 1in1\leq i\leq n, and kk bins of capacity cc, we construct a tree TT with n(k1)c+i=1nwin(k-1)c+\sum_{i=1}^{n}w_{i} edges as follows. For each item of weight wiw_{i}, make a star with (k1)c+wi(k-1)c+w_{i} edges. Then select an arbitrary leaf from each star, and merge the nn leaves selected from the nn stars into one center vertex, denoted by vv.

We claim that the nn items can be packed into kk bins of capacity cc if and only if the tree TT can be decomposed into kk subgraphs with component size at most cc.

We first prove the direct implication of the claim. Suppose that the nn items can be packed into kk bins of capacity cc. We color the edges of the tree TT with kk colors as follows. First color the nn edges incident to the center vertex vv with kk colors corresponding to the nn items in the kk bins. Then for each star with (k1)c+wi(k-1)c+w_{i} edges, color wi1w_{i}-1 additional edges with the same color as the edge incident to the center vertex vv, and color the remaining (k1)c(k-1)c edges with the other k1k-1 colors, cc edges of each color. Then the edges of each color induce a forest with component size at most cc.

We next prove the reverse implication of the claim. Suppose that the tree TT can be decomposed into kk subgraphs with component size at most cc. Color the edges of TT with kk colors corresponding to the kk subgraphs. Then in the star with (k1)c+wi(k-1)c+w_{i} edges corresponding to the item of weight wiw_{i}, the edge incident to the center vertex vv must have the same color as at least wi1w_{i}-1 other edges, because the other k1k-1 colors can accommodate at most (k1)c(k-1)c edges. Note that for each of the kk colors, the edges of this color that are incident to vv, as well as the other edges of the same color in their respective stars, are all connected, and form one component of size at most cc. Put the nn items into kk bins corresponding to the colors of the nn edges incident to vv. Then the items in each bin must have total weight at most cc too.

5.2 FPT with parameter cc

We present a fixed-parameter algorithm for (k,c)(k,c)-Decomposition in trees with parameter cc. Let TT be a tree with nn vertices and n1n-1 edges, rooted at an arbitrary vertex of degree 11.

For each edge ee between a vertex vv and its parent in TT, denote by TeT_{e} the subtree of TT rooted at vv plus the edge ee, and denote by s(e)s(e) the minimum s1s\geq 1 such that TeT_{e} admits an edge partition into kk subgraphs with component size at most cc, under the constraint that ee is in a component of size at most ss. If no such ss exists, let s(e)=c+1s(e)=c+1. Then TT admits an edge partition into kk subgraphs with component size at most cc if and only if s(e)[1,c]s(e)\in[1,c] for all edges ee.

We can compute s(e)s(e) by dynamic programming, following a post-order traversal of the rooted tree TT. For each edge ee incident to a leaf, we clearly have s(e)=1s(e)=1. For each edge ee between an internal node vv and its parent, and for a candidate size s1s\geq 1, we can check whether s(e)ss(e)\leq s as follows.

Let mvm_{v} be the number of edges incident to vv. Construct mvm_{v} items corresponding to the mvm_{v} edges. Each edge ff between vv and a child corresponds to an item of weight s(f)s(f), which has been computed following the post-order traversal. The edge ee between vv and its parent corresponds to an item of weight cs+1c-s+1, where the surplus of csc-s in addition to 11 for the edge ee accounts for the difference between the desired component size ss for ee and the upper bound cc. Then TeT_{e} admits an edge partition into kk subgraphs with component size at most cc, where ee is in a component of size at most ss, if and only if the mvm_{v} items can be packed into kk bins of capacity cc.

By Theorem 5, there is a fixed-parameter algorithm for Bin Packing that decides whether the mvm_{v} items thus constructed can be packed into kk bins of capacity cc in 2O(c3/2)NvO(1)2^{O(c^{3/2})}N_{v}^{O(1)} time, where Nv=O(mv(1+logkc))N_{v}=O(m_{v}(1+\log kc)) is the encoding size of the Bin Packing instance with mvm_{v} items. By one invocation of this fixed-parameter algorithm with s=cs=c, we either find that s(e)>cs(e)>c and abort the traversal of TT, or find that s(e)cs(e)\leq c. In the latter case, we can then determine the exact value of s(e)s(e) in [1,c][1,c] by a binary search, using the fixed-parameter algorithm as a decision procedure.

The total running time of the algorithm is

nO(1)+v(O(1+logc)2O(c3/2)NvO(1))=2O(c3/2)nO(1).n^{O(1)}+\sum_{v}\big{(}O(1+\log c)\cdot 2^{O(c^{3/2})}N_{v}^{O(1)}\big{)}=2^{O(c^{3/2})}n^{O(1)}.

Thus (k,c)(k,c)-Decomposition in trees is FPT with parameter cc. This completes the proof of Theorem 2.

6 Approximation algorithms for decomposing trees

In this section we prove Theorem 3 and Theorem 4. Let TT be a tree with nn vertices, n1n-1 edges, and maximum degree Δ<n\Delta<n, rooted at an arbitrary vertex of degree 11.

6.1 Approximating Minimum-Color Decomposition

We first present a linear-time approximation algorithm for Minimum-Color Decomposition.

Perform a pre-order traversal of the rooted tree TT. The root is incident to only one edge, which is colored arbitrarily. At each vertex other than the root, color the at most Δ1\Delta-1 edges to its children with at most Δ1c\lceil\frac{\Delta-1}{c}\rceil colors (at most cc edges of each color), all different from the color of the edge from its parent.

It is straightforward to verify that the edges of each color induce a forest with component size at most cc, and moreover each component is a star with at most cc edges.

Let k=Δck^{\prime}=\lceil\frac{\Delta}{c}\rceil and k′′=Δ1c+1k^{\prime\prime}=\lceil\frac{\Delta-1}{c}\rceil+1. The minimum number of subgraphs with component size at most cc into which TT can be decomposed is at least kk^{\prime}. On the other hand, our algorithm colors the edges of TT with k′′k^{\prime\prime} colors, where k′′k+1k^{\prime\prime}\leq k^{\prime}+1. This completes the proof of Theorem 3.

6.2 Approximating Minimum-Size Decomposition

We next present a polynomial-time approximation scheme for Minimum-Size Decomposition.

We first note that our approximation algorithm for Minimum-Color Decomposition can be slightly modified to yield a 22-approximation for Minimum-Size Decomposition as follows. During the pre-order traversal of the rooted tree TT, at each vertex other than the root, color the at most Δ1\Delta-1 edges to its children with at most k1k-1 colors (at most Δ1k1\lceil\frac{\Delta-1}{k-1}\rceil edges of each color), all different from the color of the edge from its parent. Let c=Δkc^{\prime}=\lceil\frac{\Delta}{k}\rceil and c′′=Δ1k1c^{\prime\prime}=\lceil\frac{\Delta-1}{k-1}\rceil. In any edge partition of TT into kk subgraphs, there is a subgraph with component size at least cc^{\prime}. On the other hand, our algorithm colors the edges of TT with kk colors such that the edges of each color induce a forest with component size at most c′′c^{\prime\prime}, where

c′′=Δ1k1=kk1Δ1kkk1Δ1k2Δk=2c.c^{\prime\prime}=\left\lceil\frac{\Delta-1}{k-1}\right\rceil=\left\lceil\frac{k}{k-1}\cdot\frac{\Delta-1}{k}\right\rceil\leq\left\lceil\frac{k}{k-1}\right\rceil\cdot\left\lceil\frac{\Delta-1}{k}\right\rceil\leq 2\left\lceil\frac{\Delta}{k}\right\rceil=2c^{\prime}.

Now fix any 0<ϵ10<\epsilon\leq 1. To obtain a (1+ϵ)(1+\epsilon)-approximation of the optimal component size cc^{*}, it suffices to perform a binary search in the integer range (c1,c′′](c^{\prime}-1,c^{\prime\prime}], using a subroutine that decides either c>cc^{*}>c or c(1+ϵ)cc^{*}\leq(1+\epsilon)c for any candidate component size cc. When the search range is reduced to (l,h](l,h] with hl=1h-l=1, we must have chc^{*}\geq h, and the subroutine with c=hc=h decomposes the tree into kk subgraphs with component size at most (1+ϵ)h(1+\epsilon)\,h.


The subroutine on a candidate component size cc is similar to our fixed-parameter algorithm with parameter cc in Theorem 2. As before, for each edge ee between a vertex vv and its parent in the rooted tree TT, denote by TeT_{e} the subtree of TT rooted at vv plus the edge ee, and denote by s(e)s(e) the minimum s1s\geq 1 such that TeT_{e} admits an edge partition into kk subgraphs with component size at most cc, under the constraint that ee is in a component of size at most ss. If no such ss exists, let s(e)=c+1s(e)=c+1.

By definition, if s(e)cs(e)\leq c, then s(e)s(e) is the unique integer s[1,c]s\in[1,c] that satisfies the following two conditions:

  1. A.

    TeT_{e} admits an edge partition into kk subgraphs with component size at most cc, where ee is in a component of size at most ss.

  2. B.

    TeT_{e} does not admit any edge partition into kk subgraphs with component size at most cc, where ee is in a component of size at most s1s-1.

Instead of computing s(e)s(e) directly, the subroutine tries to find a feasible value s[1,c]s\in[1,c] that satisfies the following two conditions, and records it in s~(e)\tilde{s}(e):

  1. C.

    TeT_{e} admits an edge partition into kk subgraphs with component size at most (1+ϵ)c(1+\epsilon)c, where ee is in a component of size at most ss.

  2. B.

    TeT_{e} does not admit any edge partition into kk subgraphs with component size at most cc, where ee is in a component of size at most s1s-1.

The subroutine computes s~(e)\tilde{s}(e) by dynamic programming, following a post-order traversal of the rooted tree TT. For each edge ee incident to a leaf, set s~(e)1\tilde{s}(e)\leftarrow 1. For each edge ee between an internal node vv and its parent, check whether there exists a feasible value s[1,c]s\in[1,c] for s~(e)\tilde{s}(e) that satisfies conditions C and B, as follows.

Let mvm_{v} be the number of edges incident to vv. Construct mvm_{v} items corresponding to the mvm_{v} edges. Each edge ff between vv and a child corresponds to an item of weight s~(f)\tilde{s}(f). The edge ee between vv and its parent corresponds to an item of weight cs+1c-s+1.

By Theorem 6, there is a dual approximation algorithm for Bin Packing that, given the mvm_{v} items and kk bins of capacity cc, either decides that the mvm_{v} items can be packed into kk enlarged bins of capacity (1+ϵ)c(1+\epsilon)c and returns yes, or decides that the mvm_{v} items cannot be packed into kk bins of capacity cc and returns no.

First call this dual approximation algorithm with s=cs=c. If its answer is no, then abort the traversal of TT, and declare that c>c{\color[rgb]{1,0,0}c^{*}>c}. Otherwise, find a feasible value s[1,c]s\in[1,c] for s~(e)\tilde{s}(e) that satisfies both conditions C and B by a binary search, using the dual approximation algorithm as a decision procedure.

If the traversal of TT finishes successfully, declare that c(1+ϵ)c{\color[rgb]{1,0,0}c^{*}\leq(1+\epsilon)c}.


The correctness of the subroutine can be verified by induction following the post-order traversal. In particular, for all edges ee such that a feasible value s[1,c]s\in[1,c] is found for s~(e)\tilde{s}(e), we have s~(e)s(e)\tilde{s}(e)\leq s(e) because they satisfy the same condition B, while condition C is a relaxation of condition A. Also observe that the answers of the dual approximation algorithm have the following two implications:

  • If the mvm_{v} items can be packed into kk enlarged bins of capacity (1+ϵ)c(1+\epsilon)c, then TeT_{e} admits an edge partition into kk subgraphs with component size at most (1+ϵ)c(1+\epsilon)c, where ee is in a component of size at most ss.

  • If the mvm_{v} items cannot be packed into kk bins of capacity cc, then TeT_{e} does not admit any edge partition into kk subgraphs with component size at most cc, where ee is in a component of size at most ss.

By Theorem 6, the running time of the dual approximation algorithm on the mvm_{v} items is 2O(ϵ3)NvO(1)2^{O(\epsilon^{-3})}N_{v}^{O(1)}, where Nv=O(mv(1+logkc))N_{v}=O(m_{v}(1+\log kc)) is the encoding size of the problem instance. The total running time of the algorithm, including the nested binary searches on c(c1,c′′]c^{*}\in(c^{\prime}-1,c^{\prime\prime}] and on s[1,c]s\in[1,c], is

nO(1)+O(log(Δ/k))(nO(1)+v(O(1+logc)2O(ϵ3)NvO(1)))=2O(ϵ3)nO(1).n^{O(1)}+O(\log(\Delta/k))\Big{(}n^{O(1)}+\sum_{v}\big{(}O(1+\log c)\cdot 2^{O(\epsilon^{-3})}N_{v}^{O(1)}\big{)}\Big{)}=2^{O(\epsilon^{-3})}n^{O(1)}.

Thus we have a polynomial-time approximation scheme for Minimum-Size Decomposition. This completes the proof of Theorem 4.

7 Concluding remark

In our study of graph decomposition problems in this paper, the focus is on bipartite graphs and trees. It may be interesting to investigate the complexities of these problems on other important graph classes too.

References

  • [1] J. C. Bermond, J. L. Fouquet, M. Habib, and B. Peroche. On linear kk-arboricity. Discrete Mathematics, 52:123–132, 1984.
  • [2] K. Bryś and Z. Lonc. Polynomial cases of graph decomposition: a complete solution of Holyer’s problem. Discrete Mathematics, 309:1294–1326, 2009.
  • [3] L. Cai and J. A. Ellis. NP-completeness of edge-colouring some restricted graphs. Discrete Applied Mathematics, 30:15–27, 1991.
  • [4] P. J. Cameron. Combinatorics: Topics, Techniques, Algorithms. Cambridge University Press, 1994.
  • [5] G. J. Chang, B.-L. Chen, H.-L. Fu, and K.-C. Huang. Linear kk-arboricities on trees. Discrete Applied Mathematics, 103:281–287, 2000.
  • [6] R. Cole, K. Ost, and S. Schirra. Edge-coloring bipartite multigraphs in O(ElogD)O(E\log D) time. Combinatorica, 21:5–12, 2001.
  • [7] D. Dor and M. Tarsi. Graph decomposition is NP-complete: a complete proof of Holyer’s conjecture. SIAM Journal on Computing, 26:1166–1187, 1997.
  • [8] F. Eisenbrand and G. Shmonin. Carathéodory bounds for integer cones. Operations Research Letters, 34:564–568, 2006.
  • [9] T. Emden-Weinert, S. Hougardy, and B. Kreuter. Uniquely colourable graphs and the hardness of colouring graphs of large girth. Combinatorics, Probability and Computing, 7:375–386, 1998.
  • [10] A. Farrugia. Vertex-partitioning into fixed additive induced-hereditary properties is NP-hard. The Electronic Journal of Combinatorics, 11:#R46, 2004.
  • [11] H. N. Gabow and H. H. Westermann. Forests, frames, and games: algorithms for matroid sums and applications. Algorithmica, 7:465–497, 1992.
  • [12] M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-completeness. W. H. Freeman and Company, 1979.
  • [13] D. S. Hochbaum and D. B. Shmoys. Using dual approximation algorithms for scheduling problems: theoretical and practical results. Journal of the ACM, 34:144–162, 1987.
  • [14] D. S. Hochbaum (editor). Approximation Algorithms for NP-hard Problems. PWS Publishing Company, 1997.
  • [15] I. Holyer. The NP-completeness of edge-coloring. SIAM Journal on Computing, 10:718-720, 1981.
  • [16] K. Jansen, S. Kratsch, D. Marx, and I. Schlotter. Bin packing with fixed number of bins revisited. Journal of Computer and System Sciences, 79:39–49, 2013.
  • [17] M. Jiang. Trees, paths, stars, caterpillars and spiders. Algorithmica, 80:1964-1982, 2018.
  • [18] R. Kannan. Minkowski’s convex body theorem and integer programming. Mathematics of Operations Research, 12:415–440, 1987.
  • [19] J. Kleinberg, R. Motwani, P. Raghavan, and S. Venkatasubramanian. Storage management for evolving databases. In Proceedings of the 38th Annual Symposium on Foundations of Computer Science (FOCS’97), pages 353–362, 1997.
  • [20] H. W. Lenstra Jr. Integer programming with a fixed number of variables. Mathematics of Operations Research, 8:538–548, 1983.
  • [21] D. Leven and Z. Galil. NP completeness of finding the chromatic index of regular graphs. Journal of Algorithms, 4:35–44, 1983.
  • [22] J. H. van Lint and R. M. Wilson. A Course in Combinatorics. Second Edition. Cambridge University Press, 2001.
  • [23] L. Lovász. Coverings and colorings of hypergraphs. In Proceedings of the 4th Southeastern Conference on Combinatorics, Graph Theory and Computing, pages 3–12, Utilitas Mathematica Publishing, Winnipeg, 1973.
  • [24] F. Maffray and M. Preissmann. On the NP-completeness of the kk-colorability problem for triangle-free graphs. Discrete Mathematics, 162:313–317, 1996.
  • [25] J. Misra and D. Gries. A constructive proof of Vizing’s theorem. Information Processing Letters, 41:131–133, 1992.
  • [26] C. St.J. A. Nash-Williams. Decomposition of finite graphs into forests. Journal of the London Mathematical Society, 39:12, 1964.