Matrix partitions of perfect graphs
ABSTRACT Given a symmetric m by m matrix M over 0,1,*, the M-partition problem asks whether or not an input graph G can be partitioned into m parts corresponding to the rows (and columns) of M so that two distinct vertices from parts i and j (possibly with i=j) are non-adjacent if M(i,j)=0, and adjacent if M(i,j)=1. These matrix partition problems generalize graph colourings and homomorphisms, and arise frequently in the study of perfect graphs; example problems include split graphs, clique and skew cutsets, homogeneous sets, and joins.In this paper we study M-partitions restricted to perfect graphs. We identify a natural class of ‘normal’ matrices M for which M-partitionability of perfect graphs can be characterized by a finite family of forbidden induced subgraphs (and hence admits polynomial time algorithms for perfect graphs). We further classify normal matrices into two classes: for the first class, the size of the forbidden subgraphs is linear in the size of M; for the second class we only prove exponential bounds on the size of forbidden subgraphs. (We exhibit normal matrices of the second class for which linear bounds do not hold.)We present evidence that matrices M which are not normal yield badly behaved M-partition problems: there are polynomial time solvable M-partition problems that do not have finite forbidden subgraph characterizations for perfect graphs. There are M-partition problems that are NP-complete for perfect graphs. There are classes of matrices M for which even proving ‘dichotomy’ of the corresponding M-partition problems for perfect graphs—i.e., proving that these problems are all polynomial or NP-complete—is likely to be difficult.
-
Citations (0)
- Cited In (1)
-
Conference Proceeding: Two Fixed-Parameter Algorithms for the Cocoloring Problem.
Algorithms and Computation - 22nd International Symposium, ISAAC 2011, Yokohama, Japan, December 5-8, 2011. Proceedings; 01/2011
Page 1
Matrix Partitions of Perfect Graphs
Tom´ as Feder
268 Waverley St., Palo Alto, CA 94301, USA
tomas@theory.stanford.edu,
and
Pavol Hell
School of Computing Science
Simon Fraser University
Burnaby, B.C., Canada V5A 1S6
pavol@cs.sfu.ca
Abstract
Given a symmetric m by m matrix M over 0,1,∗, the M-partition
problem asks whether or not an input graph G can be partitioned into
m parts corresponding to the rows (and columns) of M so that two
distinct vertices from parts i and j (possibly with i = j) are non-
adjacent if M(i,j) = 0, and adjacent if M(i,j) = 1. These matrix
partition problems generalize graph colourings and homomorphisms,
and arise frequently in the study of perfect graphs; example problems
include split graphs, clique and skew cutsets, homogeneous sets, and
joins.
In this paper we study M-partitions restricted to perfect graphs,
and focus on a natural class of simple matrices M with 0,1 diagonal.
For this class of matrices M, all M-partition problems restricted to
perfect graphs can be solved in polynomial time, and characterized by
a finite set of forbidden induced subgraphs. We identify two distinct
patterns of such matrices: For the first pattern we are able to char-
acterize partitionability by small forbidden subgraphs. For the second
pattern, we can only guarantee a finite set of forbidden subgraphs
(which can be quite large). We also discuss matrices for which parti-
tionability of perfect graphs can not be characterized by finite sets of
forbidden subgraphs.
1
Page 2
1Introduction
The M-partition problem was introduced in [12]: Let M be a fixed symmetric
m × m matrix with entries Mi,j∈ {0,1,∗}. An M-partition of a graph G
is a partition of the vertices of G into m parts, indexed by the rows (and
columns) of the matrix M, such that for distinct vertices x and y of the
graph G, placed in parts i and j (possibly with i = j) respectively, we have
the following:
• if M(i,j) = 0, then xy is not an edge of G;
• if M(i,j) = 1, then xy is an edge of G.
(If M(i,j) = ∗, then xy may or may not be an edge in G.)
An instance of the M-partition problem is a graph G, and a solution to the
instance is an M-partition of G.
Suppose H is a graph with m vertices and M is obtained from the
adjacency matrix of H by replacing each 1 by ∗. Then each homomorphism
(edge-preserving vertex mapping) f of G to H corresponds to an M-partition
of G, where the parts are f−1(h),h ∈ V (H). In particular, when H = Km,
the matrix M is the matrix with all diagonal entries 0 and all off-diagonal
entries ∗, and an M-partition of G is simply an m-colouring of G.
With this in mind, we may define a trigraph [15] H to consists of a set
of vertices, any two of which may either form a non-edge, a weak edge, or
a strong edge. The adjacency matrix of a trigraph H with m vertices is
the symmetric m × m matrix M, with rows (and columns) indexed by the
vertices of H, which has M(i,j) = 0 if ij is not an edge, M(i,j) = ∗ if ij is
a weak edge, and M(i,j) = 1 if ij is a strong edge. A homomorphism of a
graph G to a trigraph H is a mapping f of the vertices of G to the vertices
of H such that the partition formed by parts f−1(h), over all vertices h of
H, is an M-partition of G. This point of view is further explored in [15].
Matrix partitions not only generalize colourings and homomorphisms,
but also unify many partition problems arising in the study of perfect graphs.
Often these problems are not stated in terms of partitions, but are in fact
equivalent to partition problems. For instance, it is evident that G is a split
graph (admits a partition into a stable set and a clique [16]), if and only if
it admits an M-partition where M is the matrix
?
0
∗
∗
1
?
2
Page 3
.
Less obviously, a graph G has a clique cutset [20, 23], if it admits an M-
partition, into non-empty parts, where M is the matrix
1
∗
∗
∗
∗
0
∗
0
∗
.
A similar approach allows us to model by M-partitions problems such
as having an independent cutset [21], a skew cutset [7, 8], a homogeneous
set [18], or being a join of various kinds [6]. These connections are explored
in more detail in [12], where it is in particular explained how to model
restrictions on the size of the parts (for instance requiring parts to be non-
empty) by introducing lists.
In [12] we gave polynomial time algorithms for many list M-partition
problems, and quasi-polynomial (nO(logn)) time algorithms for certain oth-
ers. In [10] we have shown that all list M-partition problems are solvable in
quasi-polynomial time, or are NP-complete. Many of our quasi-polynomial
time algorithms from [12] were improved to polynomial time algorithms in
[5, 8], but it is not known whether all the quasi-polynomial time list M-
partition problems are polynomial time solvable (even for matrices of size
four [5]).
In this paper, we consider the restriction of M-partition problems to
perfect graphs. A graph G is perfect [1] if it and all of its induced subgraphs
have chromatic number equal to its maximum clique size. This also implies
that G and all of its induced subgraphs have the chromatic number of their
complement equal to maximum size of their independent set.
We shall focus on matrices M without ∗’s on the diagonal. Thus we may
consider M to consist of two diagonal block matrices A,B, where A is a k
by k matrix with zero diagonal, B is an ℓ by ℓ matrix with a diagonal of
ones, and a k by ℓ off-diagonal metrix C (and its transpose). (Note that
m = k + ℓ.)
We have shown in [14] that there exist matrices M of this type which
yield NP-complete M-partition problems, even when restricted to split (and
hence also to perfect) graphs. The matrices constructed in [14] have all
off-diagonal entries of A equal to zero, all off-diagonal entries of B equal
to ∗, and have and all entries of C different from 1. For these matrices M
we do not expect polynomial time algorithms, and expect that there exist
infinitely many minimal forbidden induced subgraphs (something that can
sometimes be directly proved.) On the other hand, it follows from [12, 3]
3
Page 4
that when M is the matrix
0
1
∗
1
0
∗
∗
∗
0
the M-partition problem can be solved in polynomial time, yet there are
infinitely many minimal forbidden induced perfect subgraphs: Let Gt be
the path with vertices 0,1,...,2t with the additional edges 0i for i =
2,3,...,2t − 1.Then each Gt is chordal (and hence perfect), and each
is easily verified to be a minimal forbidden subgraph.
These examples suggest that we restrict our attention to matrices M in
which all off-diagonal entries of A are the same, say a, all off-diagonal entries
of B are the same, say b, and all entries of C are the same, say c. Note that
we may assume a ?= 0 and b ?= 1, otherwise we may replace M by a matrix
with k = 1 or ℓ = 1 respectively. We shall also consider somewhat more
general matrices, where the off-diagonal entries of A or B (or all entries of
C) are restricted to be either all ∗, or all not ∗.
In all these situations, we give polynomial time M-partition algorithms
and forbidden subgraph characterizations. Nevertheless, there is a distinc-
tion we observe: If c ?= ∗, we give characterizations with forbidden subgraphs
all having at most (k + 1)(ℓ + 1) vertices. If c = ∗, we can only prove an
exponential upper bound on the size of the minimal forbidden subgraphs.
Let Rk,ℓdenote the disjoint union of ℓ + 1 cliques of size k + 1. The
result of [17] states that when a = b = c = ∗, i.e., for partitions into k
cliques and ℓ independent sets (first investigated in [4]), a chordal graph is
non-partitionable if and only if it contains an induced Rk,ℓ. Thus we have
situations in which forbidden subgraphs of size (k +1)(ℓ +1) are necessary.
It is interesting to observe that for perfect graphs, in the case a = b = c = ∗
we must admit minimal forbidden subgraphs with more than (k + 1)(ℓ + 1)
vertices: For instance, the (bipartite, hence perfect) graph H, obtained
from the three-dimensional cube by deleting one vertex, has seven vertices
and is a minimal forbidden subgraph for partitions into two cliques and an
independent set. (Here k = 2, ℓ = 1, and a = b = c = ∗.) In fact, if c = ∗,
in the particular case when k = 1 and b = 0, the largest minimal forbidden
perfect subgraphs have on the order of ℓ2vertices [13].
In [13] we shall consider similar problems in the context of chordal
graphs. The bounds are generally lower, and the algorithms are more effi-
cient.
4
Page 5
2Small Obstructions
We phrase our results in terms of minimal obstructions. Given a matrix
M, a graph G is a minimal obstruction for M-partitionability, if G has no
M-partition, but each induced subgraph of G has an M-partition. If we
show, for a matrix M, that all minimal obstructions that are perfect have at
most a certain number f(M) of vertices, then M-partitionability of perfect
graphs can be characterized by a finite set of forbidden induced subgraphs.
Recall that we consider matrices M with diagonal blocks A and B with
all diagonal entries of A equal to 0, all off-diagonal entries of A equal to a,
all diagonal entries of B equal to 1, all off-diagonal entries of B equal to b,
and all other entries of M equal to c. Recall also that A is a k by k matrix
and B is an ℓ by ℓ matrix, and that we may assume that a ?= 0 and b ?= 1
because these cases are covered by k = 1 and ℓ = 1.
In other words, we shall discuss partitions of input graphs G into k inde-
pendent sets A1,A2,...,Akand ℓ cliques B1,B2,...,Bℓ, with the following
restrictions:
1. If a = 1 the k independent sets A1,A2,...,Akinduce a complete k-
partite subgraph.
2. If b = 0 the ℓ cliques B1,B2,...,Bℓare independent (have no edges
joining them).
3. If c = 0 there is no edge joining a vertex in any Aito a vertex in any
Bj.
4. If c = 1 there are edges joining each vertex of every Aito each vertex
of every Bj.
For each such partition of a graph G we denote by GA the subgraph
induced by the union of the k independent sets Ai, and by GBthe subgraph
induced by the union of the ℓ cliques Bj. Note that GAis k-colourable, and
that the complement of GBis ℓ-colourable.
When a = b = c = ∗, there are no restrictions, and we are talking
about partitions into k independent sets and ℓ cliques; this is the problem
first studied in [4], and solved for chordal graphs in [17], where it is shown
that for chordal graphs there is a unique minimal obstruction R(k,ℓ) with
(k + 1)(ℓ + 1) vertices. As we have observed earlier, in this case there are
minimal obstructions which are perfect and have more than (k + 1)(ℓ + 1)
vertices. However, when c ?= ∗, we can prove that no minimal obstruction
which is perfect has more than (k + 1)(ℓ + 1) vertices:
5
Page 6
Theorem 2.1 If c ?= ∗, then every perfect graph which is a minimal ob-
struction has at most (k + 1)(ℓ + 1) vertices.
We have already remarked that this bound does not apply when c = ∗,
not even for inputs G that are trees, cf. the last section.
A careful reading of the proofs below will show that the bound applies
more generally. Instead of perfectness of the minimal obstruction G, we
only need to assume, if a = ∗, that every induced subgraph of G which does
not have a clique on k + 1 vertices is k-colourable, and, if b = ∗, that every
induced subgraph of G which does not have an independent set on ℓ + 1
vertices has a complement which is ℓ-colourable. (Thus if neither a nor b is
∗, no restriction is needed.)
¿From the proof of the theorem, we can extract polynomial time algo-
rithms for the corresponding M-partition problems on perfect graphs. All
our algorithms are certifying algorithms, in that they identify either a parti-
tion or an obstruction, in the stated time. Our algorithms actually proceed
by detecting the existence of obstructions, along the lines of the proofs. The
most computationally expensive part of the algorithms consists of finding
cliques of size k + 1 in the cases with a = ∗, and independent sets of size
ℓ + 1 in the cases with b = ∗. Thus if c ?= ∗, the M-partition problem for
perfect graphs can be solved in time nmax(k,ℓ)+O(1), where the dependence
of the exponent on k is onle needed if a = ∗, and the dependence on ℓ is
only needed if b = ∗. The complexity can be improved to O(m+n) for fixed
k,ℓ in the case of chordal graphs or complements of chordal graphs, since
for these graphs cliques and independent sets of a given size
Recall that a ∈ {1,∗}, b ∈ {0,∗}. We may also assume that c = 0; the
case c = 1 is equivalent to the matrix M′obtained by exchanging 0 and 1
everywhere in M, by complementation of the input graph. There are thus
four cases, which are covered by the following four Lemmas.
Lemma 2.2 Assume that a = b = ∗ and c = 0.
Every perfect graph which is a minimal obstruction is either isomorphic
to Rk,ℓor has strictly fewer than (k + 1)(ℓ + 1) vertices.
The M-partition problem for perfect graphs can in this case be solved by
an algorithm of time complexity nmax(k,ℓ)+O(1)by identifying obstructions.
Proof.
colourable induced subgraph GAand an induced subgraph GBwhose com-
plement is ℓ-colourable, with no edges joining GAand GB. Thus each com-
ponent of G must be included entirely either in GAor in GB. All components
Let G be a perfect graph.We want to partition G into a k-
6
Page 7
C of G that contain a clique of size k + 1 must be included in GB. Let D
be the union of all components C of G that contain a clique of size k + 1.
Then G is partitionable if and only if D does not have an independent set of
size ℓ + 1. Indeed, if D has ℓ + 1 independent vertices that its components
cannot all be contained in GB. On the other hand, if D does not have ℓ+1
independent vertices then its complement can be ℓ-coloured, since G is per-
fect. The subgraph G−D can be k-coloured for the same reason; thus G is
partitionable.
Consider now a perfect minimal obstruction G, and its subgraph D de-
fined as above to be the union of all components C of G which contain a
clique of size k + 1. Let ℓCdenote the independence number of C. Since G
is minimal, we know that?
of D has at most 2ℓC+ k − 1 vertices, and hence G has at most
CℓC= ℓ+1. We claim that each component C
?
C
(2ℓC+k−1) = 2(ℓ+1)+
?
C
(k−1) ≤ 2(ℓ+1)+(k−1)(ℓ+1) = (k+1)(ℓ+1),
with equality only in the case where all ℓC= 1, corresponding to G = Rk,ℓ.
To prove the claim, let K be a clique with k + 1 vertices in C, and let
L be an independent set with ℓC vertices in C. Note that K and L have
at most one vertex in common. The block-cutpoint tree T of C [22] has
as its vertices all the cut-vertices and all the blocks (maximal subgraphs
without cut-vertices) of C, with each cut-vertex adjacent to all the blocks
that contain it. We view T as being rooted at the block containing K, and
consider, for each vertex x of C, the minimum distance d(x) in T of any
block containing x to the root. (A cut-vertex belongs to several blocks and
its distance is determined in its parent block; all other vertices belong to
unique blocks.) It is clear that each leaf of T must be a block; we call such
a block a leaf block of T.
Let S denote the set of all the remaining vertices of C, i.e., S = C−K−L.
Observe that each x ∈ S is a cut-vertex of C, since otherwise G − x would
also not be M-partitionable. (The only role of the component C is to contain
a clique of k + 1 vertices, and an independent set of ℓCvertices.) Thus the
tree T contains all vertices of S. Moreover, all the leaf blocks of T contain
a vertex of L, for the same reason. Some vertices of L may also be cut-
vertices of T. We may assume that L has been chosen (from all independent
sets of C with ℓCvertices) so that?
particular, that L contains a vertex of K, if possible, and that we may not
replace in L any vertex x by a vertex in its parent block.
x∈Ld(x) is minimized. This means, in
7
Page 8
We shall now define an injection f of S to L. We shall arrange f to take
each x ∈ S to an f(x) ∈ L belonging to a block B which is a descendant of
x in T.
Suppose first that all children of x ∈ S in T are leaf blocks. Then each
of these blocks B must contain a vertex y ∈ L, and we may define f(x) = y
for any such vertex y.
In general, for a cut-vertex x in T, and a block child B of x, we denote by
C(B) the union of all the blocks that are descendants of B in T (including
B itself). We also denote by C(x) the union of all C(B) over all children B
of x in T.
We shall recursively prove the following statement for a cut-vertex x in
T:
There exists an injective mapping fx: S ∩C(x) → L∩C(x) which takes
any y ∈ S ∩ C(x) to fx(y) ∈ C(y) − {y}; moreover, if x ∈ S and B is any
child block of x in T then fxcan be chosen so that fx(x) ∈ C(B), and if B
contains vertices of L, then fxcan be chosen so that fx(x) is any vertex of
L ∩ B.
As noted above, this statement holds if all child blocks of x are leafs.
Thus let x be a cut-vertex in T and suppose that the statment holds
for all other cut-vertices y in T which are descendants of x; in particular,
consider the injective mappings fy for all y which are grandchildren of x.
Since the domains of these mappings fyare disjoint, we may define fxby
taking the union of all these mappings fy. This is sufficient if x ∈ L; if
x ∈ S, we also have to find an image fx(x).
Thus suppose that x ∈ S, and let B be a child block of x. If B contains
vertices of L, then any such vertex is free to be used as fx(x), since it was
not used by any of the injections fy (as B is above y in T). Otherwise,
B is not a leaf block, and any child y of B in T, belongs to S (since it
is a vertex of B). If y has two distinct child blocks D,D′, then by our
assumption there are two injections fy,f′
fy(y) = b ∈ C(D),f′
combining fywith f(x) = b′and all injections fzfor the other grandchildren
z ?= y of x. On the other hand, if y has only one child block D but D contains
at least two vertices of L, then at most one of these can be used as fy(y)
and hence one is free to be used as fx(x). The remaining case has y with
only one child block D, where D contains at most one vertex d ∈ L. In C,
the vertex y lies only in the blocks B and D, and in B ∪ D only d belongs
to L. This contradicts the minimality of L, since d could be replaced by y.
A similar argument applies if D ∩ L = ∅, by letting d be any vertex of L in
C(D). (Recall that each leaf block must contain an element of L.)
yof S ∩ C(y) to L ∩ C(y), with
We define an injection fx by
y(y) = b′∈ C(D′).
8
Page 9
This completes the definition of an injection f : S → L. It follows that
|S| ≤ |L| and so C has at most |K| + 2|L| = 2ℓC+ k + 1 vertices. To lower
the bound to 2ℓC+ k − 1 we proceed as follows:
Let B be the root block of T, containing the clique K. If B contains at
least two elements of L, then these two elements are not in f(S), and hence
|S| ≤ |L|−2, proving that C has at most 2ℓC+k−1 vertices. If K contains
a vertex in L then |S| ≤ |L| − 1 and at the same time K only contributes k
vertices not counted in S∪L; thus we again have C with at most 2ℓC+k−1
vertices.
When B contains exactly one vertex t in L, then we may assume that
this vertex is not adjacent to all the vertices of K, otherwise we could replace
K by another clique of size k + 1 which contains t, and the previous case
would apply. We may thus choose x in K not adjacent to t, and are left
with the case where x is not adjacent to any vertex of L in the block B.
We may now argue for x as we did before. If x has at least two child
blocks, or if x has exactly one child block but the block has two vertices of
L, then there exist two vertices t and t′in L that could have been chosen as
f(x), and so there are at most |L|−2 vertices in S, giving again the bound
|L| + (|L| − 2) + (k + 1) = 2ℓC+ k − 1. If x has exactly one child block D
and D has at most one vertex in L, then some vertex in L from C(D) could
have been replaced by x, contrary to our choice of L. In the last case x is
not a cut-vertex of C. Since x has no neighbour in L in B, so any vertex in
L could have been replaced by x, contrary to our assumption on L.
Lemma 2.3 If a = ∗ and b = c = 0, then every perfect graph which is a
minimal obstruction is either Rk,ℓor has at most k +2 vertices if k ≥ 1 (or
3 vertices if k = 0).
The M-partition problem for perfect graphs can be solved in this case
in time nk+O(1)by identifying obstructions.
Proof.
is k-colourable or a clique. If there are more than ℓ components that are
cliques and are not k-colourable, then we have the minimal obstruction Rk,ℓ.
Otherwise, there is a component C that is neither a clique, nor k-colourable.
For perfect graphs that means that C contains a clique of size k + 1 and is
not complete. If k ≥ 1, consider a maximum clique K in C, with at least
k+1 vertices. There is a vertex x adjacent to some but not all vertices of K;
let y be a neighbour and z a non-neighbour of x in K. Choosing x,y,z, and
k − 1 other vertices in K gives an obstruction with k + 2 vertices. Thus all
In this case, a graph is partitionable only if every component
9
Page 10
other minimal obstructions which are perfect consist of a clique qith k + 1
vertices together with an additional vertex adjacent to some but not all of
its vertices. If k = 0 the only additional minimal obstruction is a path with
two edges.
In the last section, we provide a finite bound for perfect graphs that are
minimal obstructions even for the more general matrices M with a = ∗,c =
0, where B has arbitrary off-diagonal entries, all different from ∗.
Lemma 2.4 If a = 1,b = ∗, and c = 0, then every perfect graph which is a
minimal obstruction has at most (k + 1)(ℓ + 1) vertices.
The M-partition problem for perfect graphs can again be solved in time
nℓ+O(1)by identifying obstructions.
Proof. Here the goal is to partition the input graph G into a complete k-
partite subgraph GA, and a subgraph GBwhose complement is ℓ-colourable.
At most one non-trivial component of G can be placed in GA, and that
component must be complete k-partite. Alternately, all single-vertex com-
ponents of G can be placed in GA. In either case, all other components of G
must be placed in GB, and hence contain altogether at most ℓ independent
vertices.
Consider now a perfect graph G that is a minimal obstruction. We shall
bound the size of G by arguing that each component C of G is only required
to contribute enough independent vertices.
Indeed, the fact that G is an obstruction means that
• the graph G′, obtained from G by deleting all single-vertex compo-
nents, has independence number greater than ℓ, and
• the graph G′′, obtained from G by deleting any complete k-partite
component, has independence number greater than ℓ.
It is now clear that the fact that G is a minimal obstruction implies
that both G′and G′′have independence number ℓ + 1. Moreover, those
components of G that can be placed in GAmay be assumed to be stars, or
single-vertex components, since these contribute the same number of inde-
pendent vertices as more general complete multipartite graphs.
We consider next those components C of G that cannot be placed in GA.
The complement of such a C contains a minimal obstruction to partition-
ability into k cliques, identified in the previous proof as the path with two
edges, or the graph consisting of k + 1 isolated vertices. Thus C contains a
10
Page 11
clique with k + 1 vertices, or the three-vertex graph x,y,z with the single
edge xy. In the latter case, consider a shortest path in C from z to xy.
It is clear that C must contain (up to isomorphism) one of the following
two induced subgraphs on four vertices x,y,z,t: The graph R1has edges
zt,tx,xy, or the graph R2has edges zt,tx,ty,xy.
Let U1denote the union of all components of G containing a clique with
k +1 vertices, and assume that the independence number of U1is u1. Then
U1is a perfect graph which cannot be partitioned into a k-colourable graph
and the complement of a (u1−1)-colourable graph. By Lemma 2.2, and the
minimality of U1, we know that U1has at most (k + 1)u1vertices.
Let U2denote the union of all components of G containing induced R1or
R2, and assume that the independence number of U2is u2. By an argument
similar to the proof of Lemma 2.2, we can conclude that U2has at most 3u2
vertices: There are two independent vertices amongst x,y,z,t, and for each
ℓC≥ 3 the proof shows at most 2ℓC+ 1 < 3ℓCvertices are needed.
Indeed, in that case, we have several possibilities. If no vertex in the Riis
chosen, then at least three independent vertices in L were not used as images
fxof the injective mapping, because if there are only two such independent
vertices adjacent to vertices in Ri, then two independent vertices in Ricould
have been included in L instead: this gives at most (2ℓC−3) +4 = 2ℓC+ 1
vertices. If a single vertex in the Riis chosen, then at least two independent
vertices in L outside Riwere not used as images fxof the injective mapping,
because if there is only one such independent vertex adjacent to vertices in
Ri, then again two independent vertices in Ricould have been included in
L instead: This gives at most (2ℓC−3)+3 = 2ℓCvertices. If two vertices in
the Riare chosen then we have at most (2ℓC−2)+2 = 2ℓCvertices. We do
not need to have just a single independent vertex from a component having
R1or R2because in that case just the 3 vertices x,y,z will give the needed
independent vertex.
Since the cases k = 0,1 are included in Lemma 2.2, we now assume that
k ≥ 2. Therefore U2has at most (k + 1)u2vertices.
The graphs U1and U2contain all the components of G that cannot be
placed in GA. Recall that the components of G that can be placed in GA
are either single-vertex components or stars. Let U3 denote the union of
all single-vertex components of G, and let U4denote the union of all star
components of G. Thus G is the union of U1,U2,U3, and U4. We again
denote by ui,i = 3,4, the independence number of Ui. Note that u3is the
number of single-vertex components of G, and u4 is equal to the number
of vertices in U4minus the number x of stars in U4. Finally, we also let r
denote the independence number of the largest star in U4.
11
Page 12
Recall that we denote by G′the graph obtained from G by deleting
U3, and G′′the graph obtained from G by deleting the largest star from
U4. Since G is a minimal obstruction, the minimum of the independence
numbers of G′and G′′is ℓ+1. The independence number of G′is u1+u2+u4,
the independence number of G′′is u1+ u2+ u3+ (u4− r); we let s =
min(u4,u3+ u4− r). Thus ℓ + 1 = u1+ u2+ s.
We now claim that U3∪U4has at most 3s ≤ (k +1)s vertices. This will
conclude the proof, since it implies that G has at most (k+1)(u1+u2+s) =
(k + 1)(ℓ + 1) vertices.
To prove the claim, we proceed as follows: The number of vertices of
U3∪U4is u3+u4+x. If u4= u3+u4−r, i.e., if r = u3, then u3< u4, and
since x ≤ u4also, we have u3+u4+x < 3u4= 3s. Note that minimality of G
implies that we cannot have u4< u3+u4−r, since removing a single-vertex
component of G would result in the same quantity s, and hence still be an
obstruction. In the case u4 > u3+ u4− r, a similar contradiction arises
unless there are two equal size largest stars in U4, or unless U4consists of
one single star with two vertices. Indeed, in all other cases, we can remove
from G a leaf in its largest star component, resulting in the same quantity
s, (both r and u4are reduced by one while u3is unchanged) and hence we
would still have an obstruction.
Suppose the two largest stars in U4have the same number of vertices.
Then U4has u4independent leaves and at most u4−2(r−1) other vertices,
hence U3∪ U4has at most u3+ 2u4− 2r + 2 vertices. If this number is at
most 3s = 3u3+ 3u4− 3r, our claim is proved. For this to hold, it suffices
that
• u4≥ r + 2 (because in this case 2u4− 2r + 2 ≤ 3u4− 3r), or
• u4= r + 1 and u3> 0 (for a similar reason).
If r ≥ 2, or if r = 1 but there are at least three largest stars, the first
case occurs; if r = 1 and u3> 0, the second case occurs. Thus it remains to
consider the case when U4consists of two stars with r = 1 and U3is empty.
In this case G is not a minimal obstruction, as we can delete one of these
four vertices and still have an obstruction. A similar contradiction applies
when U4consists of a single star with two vertices. (In this case we must
have u3= 0 since we are considering the case when u4> u3+ u4− r, i.e.,
1 = r > u3.)
In the last section, we provide a finite upper bound on the size of perfect
graphs that are minimal obstructions in the more general case of matrices
12
Page 13
M with b = ∗,c = 0, where A has arbitrary off-diagonal entries, all different
from ∗.
The last case requires no assumption on the graph G:
Lemma 2.5 If a = 1 and b = c = 0, then every minimal obstruction has at
most (k + 1)(ℓ + 1) vertices.
The M-partition problem can in this case be solved in time nO(1)with
the exponent independent of k and ℓ.
Proof. A graph G admits a partition of this kind if and only if it consists
of one component that is complete t-partite, with t ≤ k, forming GA, and
of at most ℓ other components that are cliques, forming GB.
Note that we may now assume that both k and ℓ are at least two, as all
other cases are covered under previous lemmas.
We begin by making a list of minimal obstructions:
• Rk,ℓis a minimal obstruction.
• R1and R2from the previous proof are minimal obstructions.
• The graph P consisting of two paths with three vertices each minimal
obstruction.
• The graph K consisting of a clique with k + 1 vertices and an addi-
tional vertex adjacent to all but one of these vertices, is a minimal
obstruction.
• The graph Q, consisting of ℓ + 2 isolated vertices, and the graph Q′,
consisting of ℓ + 1 isolated vertices and a path of length three are
minimal obstructions.
It is easy to check the above claims, For instance R1and R2are (mini-
mal) obstructions since they cannot be placed in GA(they are not complete
multipartite), nor in GB(they are connected and not complete). Similarly,
P contains two components that are not cliques and hence is a minimal
obstruction. The graph K is a minimal obstruction, since it is connected,
not a clique, and not k-colourable. Since k and ℓ are at least two, these
obstructions all have at most (k + 1)(ℓ + 1) vertices.
Consider now a graph G which does not contain an induced Rk,ℓ, R1,R2,
P,K, Q, or Q′. Then G has at most one component C which is not complete
(else G contains an induced P). If G does have such a C then C is complete
13
Page 14
t-partite (else G contains an induced R1or R2), and t is at most equal to k
(else G contains K). Thus C can only be placed in GA. Moreover, all the
other components of G (which are cliques) can be placed in GB (since G
does not contain Q′). If G only contains clique components, then it has at
most ℓ+1 of them (else G contains Q), and at at most ℓ of them have more
than k vertices (else G contains Rk,ℓ). Therefore G is partitionable.
A generalization of this case (to arbitrary matrices without ∗) is also
considered in the next section.
This completes the proof of the four lemmas and the main theorem. The
cases of matrices with c = ∗ will be dealt with (in a more general context)
in the next section.
3 Large Obstructions
In this section, we consider somewhat more general matrices M: We still
asume that the diagonal of M has no ∗’s, and view M as consisting of a k by
k block matrix A with zero diagonal, an ℓ by ℓ block matrix B with ones on
the diagonal, and an off-diagonal matrix C. We still let a,b,c stand for the
entries of A,B,C respectively; however, we allow each of a,b,c to denote
a set of values. Thus, for instance, a = {0,1}, means that the off-diagonal
entries of A are 0’s and 1’s, in arbitrary positions.
We begin with a situation that generalizes that in Lemma 2.5:
Theorem 3.1 Let a = b = c = {0,1}. (In other words, M has no ∗’s.)
Then every minimal obstruction has at most f(k,ℓ) = (k+ℓ+1)(max(k,ℓ)+
1) vertices.
A corresponding certifying algorithm solves the M-partition problem for
general graphs in time O((m + n + f(k,ℓ)k+ℓ)(k + ℓ)).
Proof.
S1,S2,...,Sr so that two vertices x,y are in the same Si if and only if
x and y have the same neighbors in G, other than x and y.
If r ≥ k+ℓ+1, then G has no M-partition, since vertices that are placed
in the same part in M must have the same neighbors. In that case, choose
k + ℓ + 1 vertices that pairwise do not have the same neighbors, and for
every pair x,y, of two such vertices, choose a vertex z that is a neighbor of
exactly one of x,y. This gives an obstruction with k + ℓ + 1 +?k+ℓ+1
(k + ℓ + 1)(max(k,ℓ) + 1) vertices.
Given an instance G, partition the vertices of G into r sets
2
?≤
14
Page 15
Otherwise r ≤ k +ℓ+1, and r = k′+ℓ′, where there are k′independent
sets Siand ℓ′of the sets Siare cliques. If G has an M-partition in which
at least one vertex in an independent set Si is placed in GA, i.e., to an
independent part p of the M-partition), then all vertices in Sican be placed
to the part p. One can guarantee that some vertex in Simust be placed
in an independent part p if |Si| ≥ ℓ + 1, so if G does not have an M-
partition, then there is still no M-partition when we remove vertices from
Siuntil |Si| ≤ ℓ+1. Similarly, we may remove vertices from a clique Sjuntil
|Sj| ≤ k + 1 and still not have an M-partition . The number of vertices in
the resulting obstruction is at most k′(ℓ+1)+ℓ′(k+1) ≤ r(max(k,ℓ)+1) ≤
(k + ℓ + 1)(max(k,ℓ) + 1).
The algorithm takes time O((m + n)(k + ℓ)) to identify up to k +
ℓ + 1 sets Siand other vertices that pairwise differentiate them, and time
O(f(k,ℓ)k+ℓ(k+ℓ)) once the number of vertices has been reduced to f(k,ℓ)
to test the possible assignments of these vertices to the k + ℓ parts.
We now deal with a situation that generalizes the context of Lemma 2.3:
Theorem 3.2 Let a = ∗,b = {0,1},c = 0.
Then each minimal obstruction which is perfect has at most (ℓ + 1)2(k+
2ℓ) vertices.
The M-partition problem for perfect graphs can be solved in time nk+O(1).
On chordal graphs and complements of chordal graphs, time O((m + n +
(ℓ + 1)2ℓ)(ℓ + 1)) is sufficient.
Proof. Each connected component that does not have a clique of size k+1
can be placed in GA. The remaining components, which must be placed in
GB, have an obstruction for GBfrom Theorem 3.1 of size at most (ℓ + 1)2.
These vertices are each joined to a clique K of size k+1 by a path P, and P
can be taken of length at most 2ℓ − 1, otherwise P gives ℓ + 1 independent
vertices with length 2ℓ and thus an obstruction of size k + 1 + 2ℓ. We thus
have at most k + 2ℓ vertices per vertex in the obstruction for GB, giving at
most (ℓ + 1)2(k +2ℓ) vertices in the final obstruction. The running time on
chordal graphs and complements of chordal graphs follows from being able
to find the largest cliques in linear time [16], and the bound in Theorem 3.1
for k = 0. An additional nk+O(1)time to find large cliques is used on perfect
graphs.
Finally, here is the context generalizing that of Lemma 2.4:
15
View other sources
Hide other sources
-
Available from Pavol Hell · 31 Dec 2012
-
Available from citeseerx.ist.psu.edu