Graphs and Combinatorics (2010) 26:243–257
DOI 10.1007/s00373-010-0906-0
ORIGINAL PAPER
Induced Graph Packing Problems
Zoltán Király · Jácint Szabó
Received: 1 October 2008 / Revised: 10 October 2009 / Published online: 27 February 2010
© Springer 2010
Abstract Let H be a set of undirected graphs. The induced H-packing problem
in an input graph G is to find a subgraph Q of G of maximum size such that each
connected component of Q is an induced subgraph of G and is isomorphic to some
member of H. In this paper we focus on the case when H consists of factor-critical
graphs and a certain family of ‘propellers’. Clarifying the methods developed in the
related theory of non-induced graph packings, we show a Gallai–Edmonds type structure theorem and a Berge–Tutte type minimax formula. We also give an Edmonds
type alternating forest algorithm for the case when H consists of a sequential set of
stars and factor-critical graphs. This simplifies the related result of Egawa, Kano and
Kelmans.
Keywords
Matching · Graph packing · Gallai–Edmonds structure theorem
1 Introduction
If H is a set of undirected graphs then a subgraph Q of an undirected graph G is called
an induced H-packing if every connected component of Q is an induced subgraph
Z. Király research was supported by EGRES group (MTA-ELTE) and OTKA grants CNK 77780, K
60802 and NK 67867. J. Szabó research was supported by OTKA grants K60802, TS049788 and by
European MCRTN Adonet, Contract Grant No. 504438.
Z. Király (B)
Department of Computer Science and CNL, Eötvös University,
Pázmány P. s. 1/C, Budapest 1117, Hungary
e-mail: kiraly@cs.elte.hu
J. Szabó
MTA-ELTE Egerváry Research Group (EGRES), Department of Operations Research,
Eötvös University, Pázmány P. s. 1/C, Budapest 1117, Hungary
e-mail: jacint@elte.hu
123
244
Graphs and Combinatorics (2010) 26:243–257
of G and is isomorphic to some member of H. An induced H-packing is maximum
if it covers a maximum number of vertices of G, and it is an induced H-factor
if it is spanning. The induced H-packing problem is to find a maximum induced
H-packing in the input graph G. Observe that if H = {K 2 } then we get the classical
matching problem. For i ≥ 1 the i-star Si is a connected graph with a specified vertex,
the center c, such that Si − c is the union of i isolated vertices, called leaves. Beyond
the matching problem, induced graph packing problems were investigated only by a
few authors. First, Saito and Watanabe [19] characterized those graphs which have
an induced star factor (that is H = {S1 , S2 , . . .}). The induced {S1 , . . . , Sk }-packing
problem was first studied by Egawa, Kano and Kelmans [6,10] who gave a polynomial
algorithm, a Gallai–Edmonds type structure theorem and a Tutte type theorem.
Induced packings originate in the family of non-induced graph packing problems.
These are relaxation of the induced version, where we do not require the components of
Q to be induced subgraphs of G. Apart from matchings, the first studied non-induced
graph packing problem was the {K 2 , C3 , C5 , . . .}-packing problem. By a tricky reduction to bipartite matchings Tutte [22] proved that a graph G has a {K 2 , C3 , C5 , . . .}factor if and only if for every X ⊆ V (G) the number of isolated vertices in G − X does
not exceed |X |. Then Las Vergnas [13] investigated the ≤ k-star packing problem, that
is the case H = {S1 , . . . , Sk }, by reducing it to the theory on ( f, g)-factors, developed
by Lovász [17]. For the next important result, we need to define local graph packings:
here instead of a global family H, along with the input graph G, a set H of subgraphs
of G is given—the subgraphs allowed to form a component of the packing. Cornuéjols,
Hartvigsen and Pulleyblank [1,2] gave a polynomial algorithm and a Gallai–Edmonds
type structure theorem to the non-induced local packing problem where H is restricted
to consist of all K 2 -subgraphs of G and a set of factor-critical subgraphs of G of size
polynomial in |V (G)|. Recall that a connected graph is factor-critical if the deletion
of any vertex leaves a graph with a perfect matching. Loebl and Poljak [15] call a nonsingleton connected graph a propeller if it has a specified vertex c, the center, such
that after deleting c, each connected component is factor-critical. These components
are called blades. Loebl and Poljak [14,16] gave a Berge–Tutte type theorem and a
polynomial algorithm for the non-induced local closed propeller packing problem,
that is if H consists of a set of factor-critical subgraphs of G of polynomial size, and
a certain ‘closed family of propellers’ (see Definition 4).
Let k be a positive integer and F1 , F2 , . . . , Fk be arbitrary non-empty families of
factor-critical graphs such that F1 = {K 1 }. Let P consist of all propellers arising in
the following way. For an integer 1 ≤ l ≤ k choose l distinct families Fi and choose
Bi ∈ Fi . Add the center and connect it to an arbitrary non-empty subset of vertices of
each Bi . P is called an admissible propeller family. A family H of graphs is called
admissible if H = P ∪ F, where P is an admissible propeller family and F is a set of
factor-critical graphs. Note that F1 = {K 1 } ensures that an admissible family always
contains K 2 , moreover, if k = 1 then P = {K 2 }.
In this paper we are concerned with the induced H-packing problem in the case
when H is an admissible family. In Sect. 2 we present a Gallai–Edmonds type structure
theorem (Theorem 2) and a Berge–Tutte type minimax formula (Theorem 5). We also
prove that the vertex sets coverable by induced H-packings form the independent sets
of a matroid. The proofs of our theorems are mostly based on the method of Loebl and
123
Graphs and Combinatorics (2010) 26:243–257
245
Poljak [14,16] developed for the non-induced closed propeller packing problem, but
we further simplify their methods and generalize their results. Though in the present
formulation admissible families do not embrace the local closed families of propellers
by Loebl and Poljak, we will indicate in Sect. 2.2 that it is possible to extend it to do
so. Thus our results generalize the above mentioned results on non-induced packings.
If k = 1 then the induced H-packing problem for an admissible family H clearly
reduces to the non-induced K 2 and factor-critical graph packing problem of Cornuéjols, Hartvigsen and Pulleyblank [1,2]. In Sect. 3 we consider k ≥ 2 in the special
case if P consists of only stars. We give a polynomial Edmonds type alternating forest algorithm, which is simpler than the classical algorithm of Edmonds in the sense
that we do not need shrinks. The treatment of Sect. 3 simplifies to a great extent the
approach of Kelmans to the induced {S1 , . . . , Sk }-packing problem [10].
The following facts serve as explanations why it is worth to investigate induced
graph packings. First, for admissible families the induced packing problems include
the non-induced versions, as we show in Sect. 2.1. Second, in the undirected case, a
natural common generalization of the global ≤ k-star packing problem of Las Vergnas
[13] and the global version of the K 2 and factor-critical graph packing problem of
Cornuéjols, Hartvigsen and Pulleyblank [1,2] would be the global non-induced Hpacking problem where H consists of the stars with at most k edges and a set of
factor-critical graphs. However, as every non-trivial factor-critical graph has a noninduced {S1 , S2 }-factor, this problem is equivalent to the k = 1 special case, that
is, the K 2 and factor-critical graph packing problem. On the contrary, we will see in
Sect. 3 that the induced version of packing stars with at most k edges and a set of
factor-critical graphs leads to interesting questions.
We remark that the induced global {H }-packing problem is NP-complete if H is
connected and |V (H )| ≥ 3, mentioned by Kirkpatrick and Hell [12].
Throughout the paper all graphs are simple and undirected, and ŴG (X ) denotes the
set of vertices in V (G) − X adjacent in graph G to X ⊆ V (G).
A preliminary version of this paper appeared in [11].
2 Generalizations of the Basic Theorems on Matchings
In this section we prove Gallai–Edmonds and Berge–Tutte type theorems on the
induced H-packing problem if H is an admissible family. We also show that the vertex sets which are coverable by an induced H-packing form the independent sets of a
matroid. The non-induced variants of the results of this section in the case P = {K 2 }
(in other words, if k = 1) are due to Cornuéjols, Hartvigsen and Pulleyblank [1,2].
Except the Gallai–Edmonds type Theorem 2, the non-induced variants of these results,
on closed propeller packings, were proved by Loebl and Poljak [14–16]. The present
treatment is based on [2,14,16], but we further simplify the methods and extend the
results of these papers. In Sect. 2.1 we show that induced packing problems include
the non-induced ones for admissible families. Finally, in Sect. 2.2 we mention that our
results can be extended to embrace the induced (and also the non-induced) closed propeller packings of Loebl and Poljak [14,16]. In this section H denotes an admissible
family.
123
246
Graphs and Combinatorics (2010) 26:243–257
Definition 1 A connected graph F is called H-critical if it has no induced H-factor,
but deleting any vertex the resulting graph has. If G is a graph then let def H (G) denote
the number of vertices missed by a maximum induced H-packing of G.
The following claim is straightforward since K 2 ∈ H.
Claim A factor-critical graph is H-critical if and only if it has no induced H-factor.
The proof method of Lemma 1 is due to Cornuéjols, Hartvigsen and Pulleyblank
[2], while that of Lemma 3 is due to Loebl and Poljak [14] who presented it for the
case of a closed propeller packing. Our proofs are more compact so we include them.
If we delete some, but not all, blades of a propeller P then we call the resulting graph
a sub-propeller of P. Graph K 2 is called a trivial propeller.
Definition 2 A subgraph Q of the graph G is called nice if G − V (Q) has a perfect
matching.
Lemma 1 Let F be a factor-critical graph and Q be a spanning subgraph of F with
only factor-critical and propeller components. Then either one of the factor-critical components is nice or a two-bladed sub-propeller of a propeller component is
nice in F.
Proof In this proof the words ‘blade’ and ‘center’ will refer to only blades and centers
of non-trivial propellers. We call the factor-critical components of Q and the blades
of propeller components of Q altogether critical parts. The proof goes by induction
on the number of critical parts. If Q has a non-trivial propeller with one blade then we
can replace this component by a perfect matching—and we are done by induction. So
we may suppose that every non-trivial propeller has at least two blades. If the number
of critical parts is at most 2 then Q has either a factor-critical or a two-bladed propeller
component such that all other components are K 2 ’s. So assume that this number is
at least 3. Let M1 denote the matching consisting of the trivial propellers. Let x be
any vertex in a critical part F ′ and consider a perfect matching M2 of F − x. Now
M1 △M2 consists of alternating paths and cycles. Every center is an endpoint of one
such path and every critical part, except F ′ , has an odd number of outgoing paths. As
the number of critical parts is at least 3 and the number of blades is at least twice the
number of centers, there must be an alternating path connecting two critical parts. If
these two critical parts are not the blades of a two-bladed propeller then we can replace
the union of the two critical parts and the alternating path connecting them by a perfect
matching, decreasing the number of critical parts. If the alternating path connects the
blades of a two-bladed propeller P then we can replace the union of P and the path
by one factor-critical component F0 . The number of critical parts decreased by 1, and
observe, that if the nice subgraph given by the induction hypothesis is F0 then P is
also nice.
⊔
⊓
Lemma 2 A factor-critical but not H-critical graph has an induced H-factor which
contains one non-K 2 component that is either factor-critical or a two-bladed propeller.
Proof By the Claim given above, this graph has an induced H-factor Q. Applying
⊔
⊓
Lemma 1 we get the statement.
123
Graphs and Combinatorics (2010) 26:243–257
247
Definition 3 For Y ⊆ V (G) and a set C of connected components of G − Y define
the bipartite graph BY,C as follows. The two color classes of BY,C are C and kY , where
kY = Y 1 ∪ · · · ∪ Y k , a union of k disjoint copies of Y . Moreover, y i K ∈ E(BY,C ) for
y ∈ Y, K ∈ C, 1 ≤ i ≤ k if and only if there exists a graph F ∈ Fi such that K has
a nice induced F-subgraph adjacent to y in G. Define cap(Y, C) = |Ŵ BY,C (C)|.
Lemma 3 Let Y ⊆ V (G) and C be a subset of the set of those connected components
of G −Y which are both H-critical and factor-critical. Let Q be an induced H-packing
of G and let C ′ ⊆ C denote the set of components completely covered by Q. Then there
is a matching in BY,C covering C ′ .
Proof First take a perfect matching in the one-bladed propellers of Q. Then repeat
the following procedure until possible. Suppose there exists a subgraph F of Q such
that V (F) ∩ Y = ∅ and F is either a factor-critical component of Q or a blade of a
non-trivial propeller component P of Q. Replace F by a perfect matching of F − y
for some y ∈ V (F) ∩ Y . Moreover, if F was a blade of propeller P then replace P in
Q by P − V (F) ∈ P (if P − V (F) is a one-bladed propeller, we further replace it by
a perfect matching). This procedure ends up with an induced H-packing Q ′ covering
all components of C ′ , with the property that all factor-critical components and blades
of non-trivial propeller components of Q ′ are disjoint from Y .
We define a matching M in BY,C covering C ′ . Let K ∈ C ′ . Each component of
′
K := Q ′ [V (K )] is either a graph from H, or a blade of a propeller (here if P is a
component of Q ′ isomorphic to K 2 such that |V (P) ∩ Y | = 1, then we regard P as a
trivial propeller with the vertex in V (P) ∩ Y as its center) and hence factor-critical.
K is factor-critical so by Lemma 1 there is a nice factor-critical or sub-propeller component of K ′ . But, as K is H-critical, this must be a blade B ∈ Fi of a propeller P
with center y ∈ Y . Now add y i K to M.
⊔
⊓
The next statement was proved first by Hoffman and Kuhn [9] and Mendelsohn and
Dulmage [18]. Note that the proof is easy using alternating paths.
Lemma 4 [9,18] Let B be a bipartite graph with color classes U and V . If M1 is a
matching covering U1 ⊆ U and M2 is a matching covering V2 ⊆ V then B has a
matching covering U1 ∪ V2 .
Next we extend the classical Gallai–Edmonds Theorem 1 to induced H-packings
(Theorem 2).
Theorem 1 (Gallai, Edmonds)[4,7,8] Let G be an undirected graph. Define D ⊆
V (G) to consist of those vertices which are missed by some maximum matching of G.
Let A = ŴG (D) and C = V (G) − (D ∪ A). Denote the set of components of G[D]
by D. Then
(a) every component in D is factor-critical,
(b) a maximum matching of G misses |D| − |A| vertices,
(c) for all ∅ = A′ ⊆ A the number of those components of D which are adjacent to
A′ is at least |A′ | + 1,
(d) G[C] has a perfect matching.
123
248
Graphs and Combinatorics (2010) 26:243–257
Theorem 2 Assume G is an undirected graph and H is an admissible family. Let
DH ⊆ V (G) consist of those vertices of G which are missed by some maximum
induced H-packing of G. Let AH = ŴG (DH ) and CH = V (G) − (DH ∪ AH ).
Denote the set of components of G[DH ] by DH . Then
(a) every component in DH is H-critical,
(b) def H (G) = |DH | − cap(AH , DH ).
(e) DH ⊆ D,
Proof As K 2 ∈ H, if G has a perfect matching then the statement is clear, so assume
otherwise.
c
Denote the subset
components
in D by D ⊆ D. Let B = B A,D
′ of H-critical
′
′
c
and d = max |D | − |Ŵ B (D )| : D ⊆ D . |Ŵ B (·)| is submodular so there is an
inclusion-wise minimal D0 ⊆ Dc such that
d = |D0 | − |Ŵ B (D0 )| = |D0 | − cap(A, D0 ).
(1)
We prove that D0 = DH . First assume that d > 0, in which case D0 = ∅. Let
v ∈ V (K ) for some K ∈ D0 . As D0 is minimal, by Ore’s theorem there is a matching M1 in B − K covering all but d − 1 vertices in Dc − K . By Theorem 1(c),
A can be matched into D in G. Since F1 = {K 1 }, this is tantamount to that there is
a matching M2 in B covering A1 . By Lemma 4 there is a matching M in B covering simultaneously A1 and all but d − 1 vertices in Dc − K . Note that K cannot be
covered by M by the definition of d. For a vertex y ∈ A the edges of M incident to
any of y 1 , y 2 , . . . , y k define a propeller P ∈ P with center y having blades as nice
subgraphs of different components of D. In these components take a perfect matching
of the vertices missed by that blade. In the components of D − Dc missed by M take
an induced H-factor; take a matching missing one vertex in the components of Dc
missed by M (take care that v ∈ V (K ) is missed) and finally take a perfect matching
of G[C] (guaranteed by Theorem 1(d)). We constructed an induced H-packing that
misses d vertices, including v. Thus def H (G) ≤ d. If d = 0 then we can similarly
show that G has an H-factor.
A, C = D0 yields that
On the other hand, applying Lemma 3 with the choice Y =
every induced H-packing of G misses at least d vertices in {V (K ) : K ∈ D0 }.
Hence d = def H (G) and D0 = DH . From these considerations, (e) and (a) are
immediate, and (b) follows from (1).
⊔
⊓
Theorem 2 easily implies the next two theorems, for which only quite involved
proofs were known in the non-induced case [2,14,16].
Theorem 3 Every H-critical graph G is factor-critical.
Proof Since every graph in H is connected, G itself is also connected. By the notation
of Theorem 2, we have DH = V (G). As every component of G[DH ] = G is also a
⊔
⊓
component of G[D] by Theorem 2(e), G is factor-critical by Theorem 1(a).
It is well known that in a graph the vertex sets which can be covered by a matching
form the independent sets of a matroid [5]. Using Lemma 3 and the proof of Theorem 2
this can be proved to remain true. We use the notations of the proof of Theorem 2.
123
Graphs and Combinatorics (2010) 26:243–257
249
Theorem 4 {U ⊆ V (G) : there exists an induced H-packing of G covering U } is
the collection of independent sets of a matroid.
Proof We prove that the matroid M in question is as follows. First take the matching
matroid of B = B A,D , restricted to Dc . Then take a series extension
of each element
K ∈ Dc on the set V (K ), finally, add the vertices of V (G) − {V (K ) : K ∈ Dc }
as coloops. Now Lemma 3 with the choice Y = A, C = Dc implies that V (Q) is
independent in M for every induced H-packing Q of G. On the other hand, let J be
a base of M. There exists a matching M1 of B covering every K ∈ Dc for which
V (K ) ⊆ J . By Theorem 1(c), there is a matching M2 in B covering A1 . Lemma 4
yields a matching M in B covering A1 and every K ∈ Dc for which V (K ) ⊆ J . Now
from M we can construct an induced H-packing Q with V (Q) = J exactly as in the
proof of Theorem 2.
⊔
⊓
A Berge–Tutte and then a Tutte type theorem for the induced H-packing problem
follows from our Gallai–Edmonds type Theorem 2 (Theorems 5, 6, respectively).
Theorem 5 If H is an admissible family then
def H (G) = max{|C| − cap(Y, C)},
where the maximum runs on Y ⊆ V (G) and a set C of H-critical components of G −Y .
Proof Every H-critical graph is factor-critical by Theorem 3, so we can apply Lemma 3.
Now ≥ follows since a matching in BY,C has size at most cap(Y, C), thus for every
H-packing Q, at least |C| − cap(Y, C) components of C are not completely covered
⊔
⊓
by Q. Theorem 2(b) implies that equality is achieved by Y = AH , C = DH .
Theorem 6 If H is an admissible family then G has an induced H-factor if and only
if |C| ≤ cap(Y, C) for every Y ⊆ V (G) and a set C of H-critical components of G − Y .
Now we review the algorithmic consequence of the above results.
Theorem 7 There is a polynomial time algorithm finding a maximum induced
H-packing of the input graph G if the following values are finite: k, |F| and |Fi |
for all i.
Proof First assume that G is factor-critical. Let c′ denote the maximum number of
vertices in any factor-critical graph in F ∪ F1 ∪ F2 ∪ · · · ∪ Fk and let c = 2c′ + 1. A
factor-critical graph or a two-bladed propeller of H can have at most c vertices, so we
can examine all induced subgraphs of G with at most c vertices in time O(|V (G)|c ),
check whether it is in F or it is a two-bladed propeller in P, and, using Edmonds’
matching algorithm, whether it is nice. If we find a subgraph satisfying these criteria then we have an induced H-factor of G. Otherwise G is H-critical by Lemma 2,
hence every maximum matching of G is a maximum induced H-packing, so Edmonds’
matching algorithm does the job.
For a general input graph G we use the proof of Theorem 2. First, using Edmonds’
matching algorithm we get the Gallai–Edmonds decomposition. By the above bruteforce method we can determine Dc and construct the bipartite graph B A,D at the same
123
250
Graphs and Combinatorics (2010) 26:243–257
time. Constructing M1 , M2 , and finding M is an easy task, as well as constructing the
propellers centered in A. For the components of D − Dc with no blade in them use the
previous paragraph to construct an induced H-factor. For the remaining part construct
a maximum matching by Edmonds’ algorithm.
⊔
⊓
2.1 The Induced H-Packing Problems Include the Non-Induced Ones
We show that if H = P ∪ F is an admissible family then there exists another admissible family H′ such that the non-induced H-packing problem is equivalent to the
induced H′ -packing problem. Call G ∗ a supergraph of a graph G if V (G ∗ ) = V (G)
and E(G ∗ ) ⊇ E(G). If G is a set of graphs then let G ∗ consist of all supergraphs of all
graphs in G. The non-induced H-packing problem is clearly equivalent to the induced
H∗ -packing problem, but H∗ is not an admissible family even if H is. So let P ′ consist
of those supergraphs of propellers in P which contain no edge between two blades.
Now P ′ is an admissible propeller family defined by F1∗ , F2∗ , . . . , Fk∗ . Moreover, let
P2 consist of those supergraphs of the two-bladed propellers P ∈ P which contain at
least 1 edge between the two blades of P. Note that P2 ∪ F ∗ is a set of factor-critical
graphs. Finally, define H′ = P ′ ∪ (P2 ∪ F ∗ ) and observe that every graph in H∗ has
an induced H′ -factor.
The reverse implication is not true, as shown by the induced {K 2 , C5 }-packing
problem.
2.2 The Closed Family of Propellers of Loebl and Poljak
A closed family of propellers, introduced by Loebl and Poljak [15], is defined as
follows.
Definition 4 ([15]) A family P of propeller subgraphs of G is a closed family of
propellers, if each propeller in P has a specified one vertex blade, called the root.
Every vertex of G appears as a center in some propeller in P. Moreover, the following
properties are satisfied for all P, P ′ ∈ P centered at the same vertex c ∈ V (G) with
roots r, r ′ , respectively.
– If F is a non-root blade of P then P − V (F) ∈ P.
– If r ∗ ∈ V (G) − V (P) and r ∗ c ∈ E(G) then P − r + r ∗ c ∈ P with root r ∗ .
– If r = r ′ and P ′ is not a sub-propeller of P then for each blade F of P which is
vertex disjoint from P ′ , there exists a blade F ′ of P ′ which is not a blade of P,
such that the following propeller is in P: take P ′ − V (F ′ ) and F, and each edge
of G between c and F.
We outline that it is possible to extend the results of this section to generalize the
theory of Loebl and Poljak [14,16] on the non-induced closed propeller packing problem, that is if H consists of a set of factor-critical subgraphs of G of size polynomial
in |V (G)|, and a closed family of propellers.
We will have a non-induced, local form. F consists of some factor-critical subgraphs of G, and P should consist of propeller subgraphs constructed as follows. For
123
Graphs and Combinatorics (2010) 26:243–257
251
each v ∈ V (G) a function rv is defined on the set of factor-critical subgraphs of G − v
with the following properties. First, if C is a set of disjoint factor-critical subgraphs of
G − v, which are adjacent to v in G, then rv is the rank function of a matroid Mv,C on
C. Second, no singleton is a loop in such a matroid. Now P consists of those propeller
subgraphs of G for which the set B of blades is non-empty and independent in Mv,B
where v is the center. The results of this section can be extended to this setting (the
algorithm of Theorem 7 works if we only have an oracle deciding if a factor-critical
graph contains certain nice subgraphs). In this way one can obtain a Gallai–Edmonds
type theorem to the closed propeller packing problem of Loebl and Poljak, which is a
new result. For more details, see [21].
3 The Induced Star Packing Problem
If k = 1 then P = {K 2 } for an admissible family H = P ∪ F, and thus the induced
H-packing problem is equivalent to the non-induced {K 2 } ∪ F ∗ -problem, which is
well-solved by Cornuéjols, Hartvigsen and Pulleyblank [1,2]. This section considers
the case k ≥ 2, with the restriction that Fi = {K 1 } for all 1 ≤ i ≤ k. This means that
P = {S1 , . . . , Sk }. Observe that Theorem 5 specializes in the following way.
def H (G) = max{crit(G − Y ) − k|Y | : Y ⊆ V (G)},
where crit(G) counts the H-critical components of G. In this section we determine
the class of H-critical graphs, and we give an Edmonds type alternating forest algorithm finding a maximum induced H-packing in a graph. This algorithm also implies
Theorems 2 and 5 for this special case.
Induced graph packing problems were first investigated by Saito and Watanabe
[19], who characterized those graphs which have an induced {Si : i ≥ 1}-factor (see
Theorem 9). The induced ≤ k-star packing problem (H = {Si : 1 ≤ i ≤ k}) was introduced by Egawa, Kano and Kelmans [6,10]. Kelmans [10] gave complicated proofs
for Gallai–Edmonds, Berge–Tutte and Tutte type theorems. He also gave a certain
Edmonds type algorithm, which is simplified to a large extent by our algorithm given
under Sect. 3.1, and we even allow F = ∅. Independently, Egawa, Kano and Kelmans
[6] gave a simpler inductive proof to this Tutte type theorem. These results will follow
from our approach. The present treatment of the induced ≤ k-star packing problem is
much more compact than in [6,10].
Definition 5 A block of an undirected graph G is a maximum subgraph H of G with
the property that H is connected and H − v is connected for all v ∈ V (H ).
Note that a block is either 2-connected or isomorphic to K 1 or K 2 .
Definition 6 [19] A connected graph is an oct (odd clique tree) if all of its blocks are
cliques of odd size. Let oct(G) denote the number of oct components of G.
Note that an oct is factor-critical.
123
252
Graphs and Combinatorics (2010) 26:243–257
Lemma 5 If a factor-critical graph F is not an oct then it has an induced {S1 , S2 }factor. Moreover, if an odd ear decomposition of F is given, then it is possible to
present such a factor of F in O(|V (F)|3 ) time.
Proof We will use the next lemma.
Lemma 6 If C is a nice odd circuit of F then it either induces an odd clique in F or
we can find a nice induced 2-star in F in O(|V (C)|2 ) time.
Proof Let V (C) = {c1 , . . . , cl } in this order, the indices are meant mod l. Assume
that ci ci+ j ∈ E(F) for all i and 1 ≤ j ≤ h. This clearly holds for h = 1. Now either
ci ci+h+1 ∈ E(F) for all i, or some ci , ci+h , ci+h+1 induces a 2-star in F. That this
2-star is nice is trivial if h = 1 and is also clear if h ≥ 2. This implies the statement. ⊓
⊔
Denote the ith ear in the odd ear decomposition of F by Pi and the subgraph formed
by the first i ears by Fi . Here F0 is a singleton {v}. We describe a process, the ith step
of which starts with an oct subgraph Oi−1 of F with vertex set V (Fi−1 ) (we define
O0 = {v}). After adding Pi we either construct an induced {S1 , S2 }-factor of F or
find an oct subgraph Oi of F with vertex set V (Fi ). F is not an oct, so at some step
we stop with an induced {S1 , S2 }-factor.
If Pi is a closed ear then observe that it is nice in F. So by Lemma 6 with the choice
C = Pi , we either find a nice induced 2-star of F or we can choose Oi to consist of
Oi−1 plus a new block with vertex set V (Pi ). If Pi is open with end vertices u and v
then find a longest u − v path P in oct Oi−1 . As P is maximum, it has even length, and
it is nice in Oi−1 . Lemma 6 with the choice C = Pi + P gives either a nice induced
2-star of F or a new oct with a big new block consisting of Pi and the blocks of Oi
which have an edge met by P.
⊔
⊓
It is easy to check that an oct has no induced star factor. So by Lemma 5, the
{S1 , . . . , Sk }-critical graphs are the oct’s for every k ≥ 2. Hence by Theorem 5 we
obtain:
Theorem 8 (Egawa, Kano, Kelmans [6,10]) If k ≥ 2 then a maximum induced ≤ kstar packing of G misses max{oct (G − Y ) − k|Y | : Y ⊆ V (G)} vertices.
Taking k = |V (G)| we get the theorem of Saito and Watanabe [19].
Theorem 9 (Saito and Watanabe [19]) A connected graph has an induced
{S1 , S2 , . . .}-factor if and only if it is not an oct.
Now we consider the general case, that is if F = ∅.
Definition 7 If F is a family of factor-critical graphs then an oct O is called an F-oct
if O does not have an induced subgraph isomorphic to a member of F. Let octF (G)
denote the number of F-oct components of G.
Theorem 10 Let H = P ∪ F be an admissible family. If P = {S1 , . . . , Sk }, k ≥ 2,
then the H-critical graphs are the F-oct’s.
123
Graphs and Combinatorics (2010) 26:243–257
253
Proof Every induced H-factor of an oct contains an induced factor-critical graph,
because an oct has no induced star factor. Thus every F-oct is H-critical. On the other
hand, suppose that oct O has an induced subgraph F ∈ F. First observe that every
block of a factor-critical graph has an odd number of vertices, therefore F contains
either zero or an odd number of vertices from every block of O. We claim that every
connected subgraph L with this property is nice in O. We prove this by induction
on the number of vertices of O not covered by L. If this is zero then we are done.
Otherwise there is a block B of O met, but not covered by L. As L has an odd number
of vertices in B, let u, v be two vertices in B not covered by L. As B is a clique,
L ′ := O[V (L) ∪ {u, v}] is connected and satisfies the conditions. From the inductive
hypothesis we know that O − V (L ′ ) has a perfect matching. This perfect matching
together with the edge uv shows that L is nice. Thus O has an induced H-factor. By
Lemma 5, we get the statement.
⊔
⊓
We obtained a Berge–Tutte type characterization.
Theorem 11 Let H = P ∪ F be an admissible family. If P = {S1 , . . . , Sk }, k ≥ 2,
then a maximum induced H-packing of the graph G misses max{octF (G −Y )−k|Y | :
Y ⊆ V (G)} vertices of G.
H-critical graphs can be oct’s even in the case k = 1. One such example is the next
theorem, where the case k ≥ 2 follows from Theorem 11, and k = 1 was proved by
Cornuéjols and Pulleyblank [3] in the non-induced setting.
Definition 8 The graph C is called a △-cactus if C = K 1 or every block of C is a
triangle. Let F H denote the set of factor-critical graphs on at least 5 vertices with a
Hamiltonian circuit.
Theorem 12 If k ≥ 1 then G has an induced {Si : i ≤ k} ∪ F H -factor if and only if
for all Y ⊆ V (G) the graph G − Y has at most k|Y | △-cactus components.
3.1 Algorithmic Issues
Lemma 7 Given an oct O and a factor-critical graph F we can decide if O contains
F as an induced subgraph in time O(|V (O)|3 |V (F)|2 ).
Proof We assume that every block of F is a clique since the induced subgraphs of
O share this property. F is factor-critical so these cliques have odd size. We call a
connected graph a B-oct if each block of it is a clique, and each has odd size—except
possibly the block B. We prove that given a Bi -oct Oi for i = 1, 2, we can decide in
O(n 21 n 22 ) time (here n i = |V (Oi )|), whether O1 contains O2 as an induced subgraph
such that V (B2 ) ⊆ V (B1 ). If it does, we say that (O2 , B2 ) fits into (O1 , B1 ). This
would prove the statement since a fixed block B2 of F = O2 can be contained in any
block B1 of O = O1 .
j
j
For i = 1, 2, denote the components of Oi − Bi by Ci , j ∈ Ji , and the block of Ci
j
j
j
j
j
adjacent to Bi by Bi . Ci is clearly a Bi -oct. Let n i = |V (Ci )|, ci = |Ji |, bi = |V (Bi )|
j
j
and ri = n i −bi . Let G = (J1 , J2 ; { j h : j ∈ J1 , h ∈ J2 , (C2h , B2h ) fits into (C1 , B1 )})
123
254
Graphs and Combinatorics (2010) 26:243–257
j 2 h 2
=
be a bipartite graph. By induction, we can build G in time O
j,h (n 1 ) (n 2 )
j 2
h 2
O
h (n 2 ) . We use that if G is a bipartite graph with color classes U1 , U2
j (n 1 )
of size k1 , k2 , then we can decide in time O((k1 k2 )5/4 ) whether U2 can be matched
into U1 in G (see Schrijver [20], Theorem 16.5). For u ∈ V (Bi ), i = 1, 2, let Jiu =
j
{ j ∈ Ji : Ci is adjacent to u in Oi }. For every pair u i ∈ V (Bi ), i = 1, 2, decide if J2u 2
can be matched into J1u 1 in G. If yes then we say that u 2 fits into u 1 . This altogether
takes O((c1 c2 )5/4 ) time. Now let G ′ = (V (B1 ), V (B2 ); {u 1 u 2 : u 2 fits into u 1 }) be a
bipartite graph. We can decide in time O((b1 b2 )5/4 ) whether V (B2 ) can be matched
into V (B1 ) in G ′ . It is easy to see that the answer is yes if and only if (O2 , B2 ) fits
into (O1 , B1 ).
Summarizing, this altogether takes at most
⎛
C ·⎝
⎞
j
(n 1 )2
j
h
(n 2h )2 + (c1 c2 )5/4 + (b1 b2 )5/4 ⎠
j 2
h 2
5/4 ≤
time with an appropriate constant C. Now
h (n 2 ) + (c1 c2 )
j (n 1 )
j
j 2
h 2
2
2
j (n 1 ) + c1 ·
j∈Ji n i =
h (n 2 ) + c2 . Focusing on one i, and using that
j
ri and n i ≥ 2 (and hence that |Ji | = ci ≤ ri /2), easy calculation shows that
j 2
(n i ) + ci2 ≤ 1 · (ri − 2(ci − 1))2 + (ci − 1) · 22 + ci2 ≤ ri2 + 1. Summing
up, we get that
j
(n 1 )2
j
(n 2h )2 + (c1 c2 )5/4 + (b1 b2 )5/4 ≤ (r12 + 1)(r22 + 1) + (b1 b2 )5/4
h
≤ r12 r22 + b12 r22 + b22 r12 + b12 b22 ≤ n 21 n 22 ,
using that n i = ri + bi and bi ≥ 2.
⊔
⊓
Hence, by Theorem 10 we can decide in O(|F| · |V (O)|5 ) time whether O is
H-critical.
Now we present an Edmonds type alternating forest algorithm which solves the
induced H-packing problem if P = {S1 , . . . , Sk } for k ≥ 2 and F is finite. Given
a simple, connected graph G, the algorithm outputs an H-packing Q of G and a set
Y ⊆ V (G) such that |V (G)| − |V (Q)| = octF (G − Y ) − k|Y |. This implies that Q is
maximum by Theorem 11. In every step the algorithm maintains a special subgraph
of G.
Definition 9 (S, Y ) is called an alternating forest if S is a subgraph of G, Y ⊆ V (S)
and the following properties are satisfied. Let B be a connected component of S and
let Y B = Y ∩ V (B). Then Y B is a possibly empty set such that B − Y B is the union of
k|Y B | + 1 F-oct’s, B has no edge between the vertices of Y B , and deg B (y) = k + 1
holds for all y ∈ Y B (see the Fig. 1).
123
Graphs and Combinatorics (2010) 26:243–257
255
Fig. 1 A component of the alternating forest
The algorithm maintains an alternating forest (S, Y ) and an induced H-factor Q 0
of G − V (S). For every component B of S it will hold that G[V (B) − Y B ] = B −
Y B . This property implies that for all F-oct components O of B − Y B , the graph
G[V (B) − V (O)] has an induced H-factor with only S1 and Sk components. Hence
G[V (B) − u] has an induced H-factor Q ′ for every u ∈ V (B) − Y B . Blowing up
B − u means deleting B from S and adding this Q ′ to Q 0 .
Let c(S) denote the number of components of S. In every step either the algorithm decreases c(S) (augmentation), or increases |V (S)| keeping c(S) (growing).
When terminating, it will hold that the components of S − Y are components in
G − Y , too. In this case let Q be the induced H-packing of G we get after blowing up B − u for each component B of S and some u ∈ V (B) − Y B . Note that
|V (G)| − |V (Q)| = c(S) = octF (G − Y ) − k|Y |. Thus Q is a maximum induced
H-packing of G by Theorem 11.
Start Let Q 0 be any induced H-packing of G (e.g. Q 0 = ∅) and let S = (V (G) −
V (Q 0 ) , ∅), Y = ∅. Go to step 1.
Step 1 Let uv ∈
/ E(S) be an edge such that u ∈ V (B) − Y B for some component B of
S, and v ∈
/ Y . If v is contained in a component Bv = B of S then blow up B − u and
Bv − v and add uv to Q 0 . Otherwise v is contained in some component L of Q 0 and
go to step 2. If no such edge uv exists then the components of S − Y are components
in G − Y , too, hence we can stop by the above observation.
Step 2
Case 1 L is factor-critical. Now we augment: blow up B − u, delete L from Q 0 and
add the edge uv and a perfect matching of L − v to Q 0 . Go to step 1.
Case 2 L is an l-star with 2 ≤ l and v is a leaf of L. Blow up B − u, delete L from
Q 0 and add the edge uv, and the induced l − 1-star L − v to Q 0 . Go to step 1.
123
256
Graphs and Combinatorics (2010) 26:243–257
Case 3 L is an l-star with 2 ≤ l and v is the center of L. If some u ′ ∈ V (B) − Y B
is adjacent to some leaf v ′ of L then go rather to Case 2. Otherwise there is no edge
between V (B) − Y B and the leaves of L. There are two cases.
1. If l ≤ k − 1 then blow up B − u, delete L from Q 0 and add the induced l + 1-star
G[V (L) + u] to Q 0 . Go to step 1.
2. If l = k then grow: delete L from Q 0 , and update V (S) ← V (S)∪V (L), E(S) ←
E(S) ∪ {uv} ∪ E(L) and Y ← Y + v. Note that the new alternating forest satisfies
the conditions. Go to step 1.
Case 4 L is a K 2 -component with vertices v, v2 . If some vertex u 2 ∈ V (B) − Y B
is adjacent to exactly one of v and v2 then K = G[u 2 , v, v2 ] is an induced 2-star so
delete L from Q 0 , blow up B − u 2 and add K to Q 0 . Go to step 1.
So we assume that every vertex in V (B) − Y B is adjacent either to both or to none
of v and v2 . Assume that L is adjacent to some vertex u 2 ∈ V (B) − Y B contained in
the F-oct component O2 = O. It is easy to see that G[V (B) − V (O) − V (O2 )] has
an induced H-factor Q ′ (this is the only place in the algorithm we use that k > 1).
Now augment: delete L from Q 0 , delete B from S, and add Q ′ together with perfect
matchings of O − u, O2 − u 2 and the edges uv, u 2 v2 to Q 0 . Go to step 1.
So we can assume that V (B) − Y B − V (O) is not adjacent to L in G. O ∗ :=
G[V (O) ∪ V (L)] is clearly factor-critical, and an odd ear decomposition of it is easy
to produce. By Lemma 5 we can find an induced {S1 , S2 }-factor Q of O ∗ in case O ∗
is not an oct. In this case augment: delete L from Q 0 , delete B from S and add an
induced H-factor of G[V (B) − V (O)] together with Q to Q 0 . If O ∗ is an oct then,
since F is finite, by Lemma 7 we can decide if O ∗ is an F-oct. If not then O ∗ has an
induced H-factor so we can augment as before. Otherwise grow: delete L from Q 0
and replace O by O ∗ in S. Go to step 1.
End of the algorithm.
Let n = |V (G)|. Let those steps belong to the same phase when c(S) is the same.
The number of the phases is at most n and in a phase we increase |V (S)| at most
n times. The running times of the cases of step 2 are dominated by Case 4., where
we need O(|F| · n 5 ) time by the remark after Lemma 7. So the running time of the
algorithm can be bounded by O(|F| · n 7 ).
It is easy to see, that on account of the validity of the algorithm, we have another
proof for Theorem 11, and also for Theorem 2 in the case P = {S1 , . . . , Sk }, k ≥ 2.
Indeed, DH is just V (S) − Y , and AH = Y with the alternating forest (S, Y ) at
termination. We remark without proof that we could append one more property to
Theorem 2, namely, G[CH ] has an induced H-factor.
The above algorithm is simpler than the classical Edmonds’ matching algorithm
in the sense that we need not shrink odd cycles due to the condition that k ≥ 2. This
is related to the fact that an oct has an odd ear decomposition where all ears have at
most two vertices. We mention that with straightforward modification of the above
algorithm it is possible to solve the following induced packing problem of a local
form: given a bound u : V (G) → N \ {0} and a finite set F consisting of induced
factor-critical subgraphs of G, decide if G has a spanning subgraph each component
of which is either a factor-critical graph in F or an induced i-star with center c such
123
Graphs and Combinatorics (2010) 26:243–257
257
that 1 ≤ i ≤ u(c). Now the critical graphs cannot be described explicitly. This is
related to the fact that this modified algorithm needs to shrink, unless u ≥ 2.
We mention that it is possible to modify the above algorithm to give a direct alternating forest algorithm to the general induced H-packing problem for an admissible
family H, see [21].
References
1. Cornuéjols, G., Hartvigsen, D.: An extension of matching theory. J. Combin. Theory Ser. B 40,
285–296 (1986)
2. Cornuéjols, G., Hartvigsen, D., Pulleyblank, W.: Packing subgraphs in a graph. Oper. Res. Lett. 1,
139–143 (1981/82)
3. Cornuéjols, G., Pulleyblank, W.: Perfect triangle-free 2-matchings. Math. Prog. Study 13, 1–7 (1980)
4. Edmonds, J.: Paths, trees, and flowers. Can. J. Math. 17, 449–467 (1965)
5. Edmonds, J., Fulkerson, D.R.: Transversals and matroid partition. J. Res. Nat. Bur. Stand. Sect.
B 69, 147–153 (1965)
6. Egawa, Y., Kano, M., Kelmans, A.K.: Star partitions of graphs. J. Graph Theory 25, 185–190 (1997)
7. Gallai, T.: Kritische Graphen II. A Magy. Tud. Akad. Mat. Kut. Int. Közl. 8, 135–139 (1963)
8. Gallai, T.: Maximale Systeme unabhängiger Kanten. A Magy. Tud. Akad. Mat. Kut. Int. Közl. 9,
401–413 (1964)
9. Hoffman, A.J., Kuhn, H.W.: Systems of distinct representatives and linear programming. Am. Math.
Mon. 63, 455–460 (1956)
10. Kelmans, A.K.: Optimal packing of induced stars in a graph. Discrete Math. 173, 97–127 (1997)
11. Király, Z., Szabó, J.: Generalized induced factor problems. Technical Report TR-2002-07. Egerváry
Research Group, Budapest. http://www.cs.elte.hu/egres (2002)
12. Kirkpatrick, D.G., Hell, P.: On the complexity of general graph factor problems. SIAM J.
Comput. 12, 601–609 (1983)
13. Las Vergnas, M.: An extension of Tutte’s 1-factor theorem. Discrete Math. 23, 241–255 (1978)
14. Loebl M., Poljak S.: Efficient subgraph packing. KAM-DIMATIA Series 1987-50
15. Loebl, M., Poljak, S.: On matroids induced by packing subgraphs. J. Combin. Theory Ser. B 44,
338–354 (1988)
16. Loebl, M., Poljak, S.: Efficient subgraph packing. J. Combin. Theory Ser. B 59, 106–121 (1993)
17. Lovász, L.: Subgraphs with prescribed valencies. J. Combin. Theory 8, 391–416 (1970)
18. Mendelsohn, N.S., Dulmage, A.L.: Some generalizations of the problem of distinct representatives. Can. J. Math. 10, 230–241 (1958)
19. Saito, A., Watanabe, M.: Partitioning graphs into induced stars. Ars Combin. 36, 3–6 (1993)
20. Schrijver, A.: Combinatorial Optimization. Polyhedra and Efficiency Algorithms and Combinatorics,
vol. 24. Springer, Berlin (2003)
21. Szabó, J.: Graph packings and the degree prescribed factor problem. PhD thesis, Eötvös University,
Budapest. http://www.cs.elte.hu/~jacint (2006)
22. Tutte, W.T.: The factors of graphs. Can. J. Math. 4, 314–328 (1952)
123