A polynomial time algorithm for strong edge coloring of partial k-trees

A polynomial time algorithm for strong edge coloring of partial k-trees

Discrete Applied Mathematics 143 (2004) 285 – 291 Notes www.elsevier.com/locate/dam A polynomial time algorithm for strong edge coloring of partial...

228KB Sizes 0 Downloads 21 Views

Discrete Applied Mathematics 143 (2004) 285 – 291

Notes

www.elsevier.com/locate/dam

A polynomial time algorithm for strong edge coloring of partial k-trees Mohammad R. Salavatipour1 Department of Computer Science, University of Toronto, 10 King’s College Rd., Toronto, ON, Canada M5S 3G4 Received 24 July 2002; received in revised form 10 September 2003; accepted 27 March 2004

Abstract A matching M in a graph is called induced if there is no edge in the graph connecting two edges of M . The strong edge coloring problem is to .nd an edge coloring of a given graph with minimum number of colors such that each color class is an induced matching. This problem is known to be NP-complete, even in very restricted cases. Here, we show that it can be solved in polynomial time on graphs with bounded treewidth, i.e partial k-trees. This answers an open question of Mahdian (Discrete Appl. Math. 118 (2002) 239). c 2004 Elsevier B.V. All rights reserved.  Keywords: Edge coloring; Strong matching; Strong edge coloring; Bounded tree-width

1. Introduction For a given graph G = (V; E), an induced matching is a set M ⊆ E such that there is no edge in E connecting two edges of M . That is, the subgraph induced by the vertices of M is precisely M . A strong edge coloring of G is an assignment of colors to the edges of G such that every color class is an induced matching. Obviously, the goal is to use as few colors as possible. Perhaps the most important open question on the strong edge coloring problem is the conjecture of Erd;os and Ne
Supported by Research Assistantship, Department of Computer Science, University of Toronto. E-mail address: [email protected] (M.R. Salavatipour).

c 2004 Elsevier B.V. All rights reserved. 0166-218X/$ - see front matter  doi:10.1016/j.dam.2004.03.001

286

M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

and co-comparability graphs. This was noticed by Mahdian [14]. But the strong edge coloring problem is NP-complete in general, and remains NP-complete even for bipartite graphs with girth at least 4 [14]. Based on the results of [1,5], one can easily .nd a polynomial (and in fact linear) time algorithm for MIM for partial k-trees, since this problem can be expressed in extended monadic second-order logic (EMSOL). For the strong edge coloring problem the situation is more complicated. It is not diAcult to express the strong edge coloring problem in EMSOL as long as the number of colors (and therefore the maximum degree of the graph) is bounded. But no one knows whether this problem can be expressed in EMSOL if the maximum degree of the graph is not bounded, and so we need a diKerent approach for this problem in general case. In this paper, we solve this problem by removing the restriction of having bounded maximum degree. In other words, we show that the strong edge coloring problem can be solved in polynomial time on graphs with bounded treewidth, i.e. partial k-trees. This answers one of the open questions of [14]. 2. Preliminaries and denitions We consider only simple undirected graphs. Let M be an induced matching of a graph G = (V; E). If H ⊆ G is a subgraph of G, by M |H we mean the set of edges of M that are in H . Clearly, M |H is an induced matching of H as well. A strong edge coloring of G = (V; E) is an assignment of integers f : E → N such that for every two edges e = (u; v) and e = (u ; v ), if either (u; v ) ∈ E or (u ; v) ∈ E or one of the end points of e and e are common, then f(e) = f(e ). The minimum number of colors (integers) required in a strong edge coloring of G is called the strong chromatic index of G. The notion of treewidth was introduced by Robertson and Seymour [16–18] in their long and deep series of papers on graph minors. Denition 2.1. A tree-decomposition of a graph G = (V; E) is a pair (X; T ), where T (I; F) is a tree, and X = {Xi |i ∈ I } is a family of subsets of V , one for each node of T , such that:  • i∈I Xi = V . • for each edge (u; v) ∈ E, there exists an i ∈ I such that u; v ∈ Xi . • for all i; j; k ∈ I , if j is on the path from i to k in T , then Xi ∩ Xk ⊆ Xj . The treewidth of a tree-decomposition (X; T ) is maxi∈I |Xi | − 1. The treewidth of a graph G is the minimum treewidth over all possible tree-decompositions of G. A natural generalization of trees is the class of k-trees, which is de.ned recursively as follows: • A complete graph on k vertices is a k-tree. • If G = (V; E) is a k-tree and C ⊆ G is a clique of size k and x ∈ V , then H = (V ∪ {x}; E ∪ {(u; x)|u ∈ C}) is a k-tree. • There are no further k-trees. A graph is called a partial k-tree if it is a subgraph of a k-tree. It can be shown [19] that every graph G has treewidth at most k if and only if it is a partial k-tree. Bodlaender [3] shows that for .xed k, there is a linear time algorithm that determines whether a given graph G is a partial k-tree, and if so, outputs a tree-decomposition of G with treewidth at most k. We say a tree-decomposition (X; T ) of treewidth k is smooth, if T is a binary tree and: • • • •

for all i ∈ I : |Xi | = k + 1, every internal node Xi has two children, and if XL and XR are its children, then either XL = Xi or XR = Xi , for all (i; j) ∈ F: k 6 |Xi ∩ Xj | 6 k + 1, and for each edge (u; v) ∈ E, there is at least one leaf i ∈ I , with u; v ∈ Xi .

It can be shown that any tree-decomposition of a graph G can be transformed into a smooth tree-decomposition of G with the same treewidth and size O(n) in linear time. (see [2,3]). For the purpose of our algorithms, we assume that along with the input graph we are given a smooth tree-decomposition of it. For a given graph G with treewidth at most k, let (X; T ) be a smooth tree-decomposition of it. For each node Xi of T we de.ne Ti to be the subtree of T rooted at i. We de.ne Vi and Ei to be the vertex set and edge set of the graph induced by the vertices that are in some node of Ti . More precisely, if Xi is a leaf then Vi = Xi and Ei = {(u; v) ∈ E|u; v ∈ Xi }; if Xi is an internal node with children XL and XR then Vi = VL ∪ VR and Ei = EL ∪ ER . We denote by Gi the graph with vertex

M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

287

set Vi and edge set Ei . Note that by these de.nitions, the only common vertices of GL = (VL ; EL ) and GR = (VR ; ER ) are in Xi . For the purpose of the algorithm, we need to de.ne another set of edges. We know that for every edge e = (u; v) ∈ E, there is at least one leaf i of tree T such u; v ∈ Xi . We .x one such i as the representative of edge e, and denote it by rep(e). If Xi is a leaf in T then Ei is de.ned to be the set of edges of the graph whose representative is i, and if Xi has children XL and XR then Ei = EL ∪ ER . Equivalently, Ei = {e ∈ E|rep(e) ∈ Ti }. Note that by this de.nition, for every node Xi : Ei ⊆ Ei , and if Xi has two children XL and XR then EL ∩ ER = ∅. We denote the graph on vertex set Vi and edge set Ei by Gi . 3. The strong edge coloring algorithm Here we prove the main result of this paper: Theorem 3.1. For every 6xed integer k, there is a deterministic algorithm that, given a graph G with treewidth k on n 4(k+1)+1 ) whether G has a strong edge coloring using at most s vertices and an integer s, determines in time O(n(s + 1)2 colors or not, and if so 6nds such a strong edge coloring. We give a partial proof of this theorem by describing an algorithm to determine whether a strong edge coloring of G with at most s colors exists or not. This dynamic programming algorithm, which is easier to describe, can be easily modi.ed (by storing some extra information in the tables) so that it .nds a strong edge coloring with s colors, if one exists. Let (X; T ) be a smooth tree-decomposition of G and let C = {1; 2; : : : ; s} be the set of colors. For a node Xi of T , a mapping f : Ei → C is called a partial coloring of Gi . A partial coloring of Gi is proper if it is a strong edge coloring of Gi with respect to the edges in Gi . More precisely, mapping f is proper if for every two edges e; e ∈ Ei , if e and e have a common endpoint or there is an edge e ∈ Ei (and not necessarily in Ei ), then f(e) = f(e ). A proper partial coloring is extendible, if it can be extended to a strong edge coloring of G. Consider a partial coloring f of Gi . For a vertex v ∈ Vi , we de.ne Lf (v) to be the set of colors of the edges in Ei incident with v, and L2f (v) to be the set of colors of the edges in Ei that are incident with vertices that are adjacent to v by edges in Ei . We also de.ne Nf (Xi ; c) ⊆ Xi and Nf2 (Xi ; c) ⊆ Xi as follows: Nf (Xi ; c) = {v ∈ Xi : c ∈ Lf (v)}; Nf2 (Xi ; c) = {v ∈ Xi : c ∈ L2f (v) − Lf (v)}: For each pair A; B ⊆ Xi , we de.ne CLf (A; B) ⊆ C, the color class function of f on Xi , as CLf (A; B) = {c ∈ C : A = Nf (Xi ; c); B = Nf2 (Xi ; c)}: From this de.nition, we immediately have Observation 3.2. Let f be a partial coloring of Gi and let CLf be the color class function of f. Then {CLf (A; B) : A; B ⊆ Xi } is a partitioning of C. Let P(Xi ) be the power set of Xi . A mapping PC : P(Xi ) × P(Xi ) → C is called a pair count of Xi if there exists a partial coloring f of Gi , such that: ∀A; B ∈ P(Xi ) : PC(A; B) = |CLf (A; B)|: In this case, PC is called the pair count of the partial coloring f. By this de.nition and Observation 3.2 it follows that, for a pair count PC of Xi :  PC(A; B) = s: A;B⊆Xi

A pair count PC of Xi is active if it is the pair count of a proper partial coloring. The following lemma shows that the active pair counts can be seen as equivalence classes of proper partial colorings. So, instead of considering all possible proper partial colorings of Gi , it is enough to consider only diKerent active pair counts of node Xi . Lemma 3.3. Let f and g be two proper partial colorings of Gi that have the same pair count. Then f is extendible if and only if g is extendible.

288

M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

Proof. Suppose that f is extendible. Since f and g have the same pair count, there is a relabeling of the colors  : C → C, such that for all e ∈ Ei that are adjacent to a vertex of Xi or to a neighbor of a vertex of Xi : f(e) = (g(e)). This implies that the coloring  ◦ g can be extended to a strong edge coloring h of G: let h(e) = (g(e)) for e ∈ Ei , and h(e) = f(e) otherwise. Therefore, −1 ◦ h is a strong edge coloring of G that extends g. Thus, g is extendible. By symmetry, the same arguments work if we assume that g is extendible. So the only information needed to determine whether a proper partial coloring is extendible or not is its pair count. For each node Xi of T , we compute a table of all active pair counts of that node. Since |Xi | = k + 1 there are at most 2(k+1) active pair counts for Xi , which is polynomial in the input size. We compute the table of an internal node (s + 1)2 after computing the tables of its two children. The tables of the leaves can be computed directly, as they do not have any children. The goal is to compute the table of active pair counts of Xr , the root of T . Since Gr = G and Er = E, a proper partial coloring of Gr is, by de.nition, a strong edge coloring of G. Thus, G has a strong edge coloring with s colors, if and only if the table computed for Xr is not empty. For a leaf Xj , we enumerate all proper partial colorings f : Ej → min(s; |Ej |), and compute the pair count of each and store it in a table, if it is not already in the table. Since |Ej | 6 (k + 1)(k + 2)=2, the number of distinct partial colorings of Ej is O(1), and so is the running time of computing the table of Xj . Now let us see how to compute the table of active pair counts of an internal node Xi , after computing the table of its children. Suppose that XL and XR are the two children of Xi . Recall that T is a smooth tree-decomposition, and therefore, XL ∩ XR = k. Without loss of generality, assume that XL = Xi , and let XL = {v0 ; v1 ; : : : ; vk } and XR = {v1 ; v2 ; : : : ; vk+1 }. If f is a partial coloring of Gi , then by f|GL and f|GR we mean the restriction of f to EL and ER , respectively. We call a mapping QC : P(XL ) × P(XL ) × P(XR ) × P(XR ) → C a quad count on Xi if there exists a partial coloring f of Gi , such that for each quadruple (AL ; BL ; AR ; BR ) with AL ; BL ⊆ XL and AR ; BR ⊆ XR : QC(AL ; BL ; AR ; BR ) = |CLfL (AL ; BL ) ∩ CLfR (AR ; BR )|; where fL = f|GL and fR = f|GR . This quad count is called the quad count of partial coloring f. A quad count QC of Xi is active if it is the quad count of a proper partial coloring. The following lemma shows how to compute the set of all active quad counts of Xi , knowing the set of all active pair counts of XL and XR : Lemma 3.4. A quad count QC of Xi is active if and only if it satis6es conditions (a) and (b) de6ned below: (a) If QC(AL ; BL ; AR ; BR ) ¿ 0 then (a.1) AL ∩ AR = ∅. (a.2) AL ∩ BR = ∅. (a.3) AR ∩ BL = ∅. (a.4) ∀u; v ∈ AL ∪ AR : (u; v) ∈ Ei . (b) There exist active pair counts PCL and PCR of XL and XR , respectively, such that: (b.1) For each pair AL ; BL ⊆ XL :  QC(AL ; BL ; A; B): PCL (AL ; BL ) = A;B⊆XR

(b.2) For each pair AR ; BR ⊆ XR :  QC(A; B; AR ; BR ): PCR (AR ; BR ) = A;B⊆XL

Proof. Necessity: Assume that QC is an active quad count and f is a proper partial coloring whose quad count is QC. Let fL = f|GL and fR = f|GR . It is easy to see that the pair counts of fL and fR are equal to PCL and PCR as de.ned in conditions (b.1) and (b.2), respectively. Therefore, PCL and PCR are active pair counts. Now assume that QC(AL ; BL ; AR ; BR ) ¿ 0, for some AL ; BL ⊆ XL and AR ; BR ⊆ XR . From the de.nition of a quad count, it follows that if v ∈ AL ∩ AR then there are two distinct edges incident with v, one in EL and one in ER , that have the same color in f, contradicting that f is a proper partial coloring. We get similar contradictions if any of conditions (a.2) to (a.4) are violated. Su
M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

289

and ∀AR ; BR ⊆ XR : PCR (AR ; BR ) = PCfR (AR ; BR ): It is not diAcult to see that there exist two relabelings of the colors, L : C → C and R : C → C, such that the color class functions of L ◦ hL and fL are equal, and similarly for R ◦ hR and fR . That is ∀AL ; BL ⊆ XL : CLL ◦hL (AL ; BL ) = CLfL (AL ; BL );

(1)

∀AR ; BR ⊆ XR : CLR ◦hR (AR ; BR ) = CLfR (AR ; BR ): 

: Ei

(2) 

e ∈ EL ,



e ∈ ER .

Now de.ne the coloring f → C as follows: f (e) = L ◦ hL (e), if and f (e) = R ◦ hR (e) if By this de.nition and Eqs. (1) and (2), f has the same quad count as f does, which is QC. We show that f is a proper partial coloring, and therefore, QC is an active quad count. Note that L ◦ hL and R ◦ hR are two proper partial colorings. By way of contradiction, assume that f is not proper. First consider the case that e1 = (u; v) and e2 = (u ; v) are two distinct edges of Ei with f (e1 ) = f (e2 ). Since e1 and e2 cannot be both in EL or ER (because L ◦ hL and R ◦ hR are both proper), without loss of generality, we assume that e1 ∈ EL and e2 ∈ ER . Therefore, v ∈ XL ∩ XR , which implies that there exist subsets AL ; BL ⊆ XL and AR ; BR ⊆ XR , for which v ∈ AL ∩ AR and QC(AL ; BL ; AR ; BR ) ¿ 1 (because of f (e1 )). But this contradicts condition (a.1). The other possibility for f to be an improper partial coloring is when there are three edges e1 = (u1 ; v), e2 = (u2 ; v ), and e3 = (v; v ), where e1 ; e2 ∈ Ei and e3 ∈ Ei , such that f (e1 ) = f (e2 ). Since L ◦ hL is proper, e1 and e2 cannot be both in EL . Otherwise, e3 ∈ EL which implies that v; v ∈ VL , and therefore e1 ; e2 ∈ EL , a contradiction. Similar arguments show that e1 and e2 cannot be both in ER . So let us assume that e1 ∈ EL and e2 ∈ ER . This means that v ∈ VL and v ∈ VR . Using the fact that Ei = EL ∪ ER : e3 ∈ EL or e3 ∈ ER . Consider the case that e3 ∈ ER . This implies that v ∈ VL ∩ VR , i.e. v ∈ XL ∩ XR . Therefore, there exist subsets AL ; BL ⊆ XL and AR ; BR ⊆ XR , for which QC(AL ; BL ; AR ; BR ) ¿ 1 (because of f (e1 )) and, either v ∈ AL ∩ BR or v; v ∈ AL ∪ AR . The case that v ∈ AL ∩ BR contradicts condition (a.2) and the second case, together with the fact that e3 = (v; v ) ∈ Ei , contradicts (a.4). If we consider the case that e3 ∈ EL similar arguments contradict conditions (a.3) or (a.4). Thus, there are no two edges of the same color in f that are either adjacent or connected to an edge from Ei . This completes the proof that f is a proper partial coloring of Gi . To compute the set of all active quad counts of Xi , .rst we consider all (not necessarily active) quad counts of Xi . 4(k+1) quad counts QC on Xi . For each quad count QC, we determine whether QC is active or There are at most (s + 1)2 not by checking conditions (a) and (b) in Lemma 3.4. Checking condition (a) takes constant time, as |AL |, |BL |, |AR |, 2(k+1)+1 ) because there are at most and |BR | are all bounded by k + 1. Condition (b) can be checked in time O((s + 1)2 2(k+1) 4(k+1) )2 pairs of PCL and PCR . Since the number of quad counts on Xi is at most (s + 1)2 , all active quad ((s + 1)2 counts on Xi can be computed in time O((s + 1)2

2(k+1)+1

(s + 1)2

4(k+1)

) = O((s + 1)2

4(k+1)+1

):

We will show how to compute all active pair counts of Xi having all active quad counts of Xi . To do so, we need the following lemma. Lemma 3.5. Assume that f is a partial coloring of Gi , fL = f|GL , and fR = f|GR . Let CLf , CLfL , and CLfR be the color class functions of f, fL , and fR , respectively. Then for all A; B ⊆ Xi :  CLf (A; B) = (CLfL (AL ; BL ) ∩ CLfR (AR ; BR )); (3) where the union is taken over all quadruples (AL ; BL ; AR ; BR ) satisfying: A = AL ∪ AR − {vk+1 };

(4)

B = B ∪ BL ∪ BR − {vk+1 };

(5)

where B = {v ∈ Xi − A : ∃u ∈ AL ∪ AR s:t:(u; v) ∈ Ei }: Proof. First consider some color c ∈ CLf (A; B). We want to show it belongs to the right-hand side of (3). Since CLfL and CLfR are each a partitioning of C, therefore, c belongs to exactly one CLfL (AL ; BL ) and exactly one CLfR (AR ; BR ). By de.nition of fL and fR : AL ⊆ A, (AR − {vk+1 }) ⊆ A, BL ⊆ B, and (BR − {vk+1 }) ⊆ B. To complete the proof of

290

M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

this part we prove that A ⊆ AL ∪ AR − {vk+1 } and B ⊆ B ∪ BL ∪ BR − {vk+1 }. For each vertex v ∈ Xi , which is incident with a colored edge e (i.e. v ∈ A), since Ei = EL ∪ ER : e ∈ EL or e ∈ ER . Therefore, v ∈ AL or v ∈ AR , which implies A ⊆ AL ∪ AR − {vk+1 }. For each vertex v ∈ Xi which is adjacent (by an edge (v; u) ∈ Ei ) to a colored edge e (i.e. v ∈ B), either e ∈ EL or e ∈ ER . If e ∈ EL and (v; u) ∈ EL then clearly v ∈ BL . If e ∈ ER and (v; u) ∈ ER then v ∈ BR . Otherwise, let’s assume e ∈ EL and (v; u) ∈ Ei − EL (a similar argument works for the case that e ∈ ER and (v; u) ∈ Ei − ER ). This means that u ∈ AL and therefore, v ∈ B . So in all cases v ∈ B ∪ BL ∪ BR − {vk+1 }, which implies B ⊆ B ∪ BL ∪ BR − {vk+1 }. Thus, c belongs to the right-hand side of Eq. (3). Now assume that c is a color in the right-hand side of (3). This means that there exists some quadruple (AL ; BL ; AR ; BR ) satisfying Eqs. (4) and (5), such that c ∈ (CLfL (AL ; BL ) ∩ CLfR (AR ; BR )). So the vertices in Xi that are incident with an edge of EL with color c are those in AL , and the vertices of Xi that are incident with an edge of ER with color c are those in AR − {vk+1 }. Therefore, Nf (Xi ; c) = AL ∪ AR − {vk+1 }. Similarly, it is not diAcult to see that the vertices of Xi that are not incident with color c but one of their neighbors is incident with color c, are precisely those that are in B ∪ BL ∪ BR − {vk+1 }, which means that Nf2 (Xi ; c) = B. Thus c ∈ CLf (A; B). Lemma 3.6. A pair count PC of Xi is active if and only if there exists an active quad count QC of Xi such that for each pair A; B ⊆ Xi :  (6) PC(A; B) = QC(AL ; BL ; AR ; BR ); where the summation is taken over all quadruples (AL ; BL ; AR ; BR ) satisfying Eqs. (4) and (5). Proof. Necessity: Assume that PC is an active pair count of Xi and f is a proper partial coloring of Gi whose pair count is PC. Let QC be the quad count of f. Therefore, QC is active. We show that PC and QC satisfy Eq. (6). De.ne fL = f|GL and fR = f|GR , and let CLf be the color class function of f on Xi . Similarly, de.ne CLfL and CLfR . By de.nition of a quad count: QC(AL ; BL ; AR ; BR ) = |CLfL (AL ; BL ) ∩ CLfR (AR ; BR )|:

(7)

An important observation at this point is that {CLfL (AL ; BL ) ∩ CLfR (AR ; BR ) : AL ; BL ⊆ XL

and

A R ; B R ⊆ XR }

is a partition of C. Therefore:      |(CLfL (AL ; BL ) ∩ CLfR (AR ; BR ))|;  (CLfL (AL ; BL ) ∩ CLfR (AR ; BR )) =

(8)

where the union and summation are taken over all quadruples that satisfy (4) and (5). Using (3), (7), (8), and de.nition of an active pair count it follows that PC and QC satisfy (6). Su
 

|(CLfL (AL ; BL ) ∩ CLfR (AR ; BR ))| QC(AL ; BL ; AR ; BR )

= PC(A; B); where the union and summations are taken over all quadruples that satisfy (4) and (5). Therefore, the mapping PC de.ned as in Eq. (6) would be an active pair count. 4(k+1)

Using Lemma 3.6 we compute all active pair counts of Xi from active quad counts of Xi . There are at most (s + 1)2 diKerent quad count QC of Xi , and for each QC we can compute the corresponding pair count satisfying Eq. (6) in O(1). 4(k+1) ). Therefore, having all the active quad counts of Xi , we can compute all the active pair counts of Xi in time O((s +1)2 Overall, since the number of nodes of T is O(n), we can compute all the tables of all the nodes (including the root) of T , in time O(n(s + 1)2

4(k+1)+1

):

This completes the proof of Theorem 3.1.

M.R. Salavatipour / Discrete Applied Mathematics 143 (2004) 285 – 291

291

4. Concluding remarks In this paper, we gave the .rst polynomial time algorithm for the strong edge coloring problem on partial k-trees, for .xed k. We did not describe how to .nd a strong edge coloring using the speci.ed number of colors. But this can be done, by doing slight modi.cations in the algorithm (using extra bookkeeping). We skip the details. Although the running time of the given algorithm is polynomial, it is doubly exponential in k, like many other algorithms for diKerent problems on graphs with bounded treewidth. Hence, it remains an open problem to .nd an algorithm with a better running time. Perhaps the technique used for .nding linear time algorithms for standard edge-coloring [23] and total coloring [12] of partial k-trees might be helpful here. However, it is worth mentioning that, this algorithm can be parallelized, to run in O(log n) time on a CRCW PRAM, using the same techniques as in Bodlaender and Hagerup [4], and Zhou et al. [22]. Acknowledgements The author would like to thank the referees for their helpful comments and suggestions. References [1] S. Arnborg, J. Lagergren, Easy problems for tree-decomposable graphs, J. Algorithms 12 (1991) 308–340. [2] H.L. Bodlaender, Polynomial algorithms for graph isomorphism and chromatic index on partial k-trees, J. Algorithms 11 (1990) 631–643. [3] H.L. Bodlaender, A linear time algorithm for .nding tree-decompositions of small treewidth, SIAM J. Comput. 25 (1996) 1305–1317. [4] H.L. Bodlaender, T. Hagerup, Parallel algorithms with optimal speedup for bounded treewidth’, SIAM J. Comput. 27 (1998) 1725–1746. [5] R.B. Borie, R.G. Parker, C.A. Tovey, Automatic generation of linear-time algorithms from predicate calculus description of problems on recursively constructed graph families, Algorithmica 7 (1992) 555–581. [6] K. Cameron, Induced Matchings, Discrete Appl. Math. 24 (1989) 97–102. [7] R.J. Faudree, A. GyRarfRas, R.H. Schelp, Zs. Tuza, Induced matchings in bipartite graphs, Discrete Math. 78 (1989) 83–87. [8] R.J. Faudree, A. GyRarfRas, R.H. Schelp, Zs. Tuza, The strong chromatic index of graphs, Ars Combinatorica 29B (1990) 205–211. [9] G. Fricke, R. Laskar, Strong Matchings on Trees, Congr. Numer. 89 (1992) 239–243. [10] M.C. Golumbic, R. Laskar, Irredundancy in circular arc graphs, Discrete Appl. Math. 44 (1993) 79–89. [11] M.C. Golumbic, M. Lewenstein, New results on induced matchings, Discrete Appl. Math. 101 (2000) 157–165. [12] S. Isobe, X. Zhou, T. Nishizeki, A linear algorithm for .nding total colorings of partial k-trees, Proceedings of ISAAC’99, Lecture Notes in Computer Science, Vol. 1741, Springer, Berlin, pp. 347–356. [13] C.W. Ko, F.B. Shepherd, Adding an identity to a totally unimodular matrix, London School of Economics Operations Research Working Paper, LSEOR 94.14, July 1994. [14] M. Mahdian, On the computational complexity of strong edge coloring, Discrete Appl. Math. 118 (2002) 239–248. [15] S.T. McCormick, Optimal approximation of sparse Hessians and its equivalence to a graph coloring problem, Math. Programming 26 (1983) 153–171. [16] N. Robertson, P.D. Seymour, Graph minors II: algorithmic aspects of tree-width, J. Algorithms 7 (1986) 309–322. [17] N. Robertson, P.D. Seymour, Graph minors V: excluding a planar graph, J. Comb. Theory Series B 41 (1986) 92–114. [18] N. Robertson, P.D. Seymour, Graph minors IV: tree-width and well quasi-ordering, J. Comb. Theory Series B 48 (1990) 227–254. [19] P. ScheSer, Die Baumweite von Graphen als ein Mab fur die Komplizierthit algorithmischer Probleme, Ph.D. Thesis, Akademie Der Wissenschafte Der DDR, Berlin, 1989. [20] R. Sritharan, Y. Tang, Finding a maximum induced matching in weakly chordal graphs, A Talk Presented by Y. Tang in: Horizons in Combinatorics/16th Shanks Lecture Series, May 21–24, 2001, Vanderbilt University, Nashville, TN, USA. [21] L.J. Stockmeyer, V.V. Vazirani, NP-completeness of some generalizations of the maximum matching problem, Inform. Process Lett. 15 (1) (1982) 14–19. [22] X. Zhou, Y. Kanari, T. Nishizeki, Generalized vertex-colorings of partial k-trees, IEICE Trans. E83-A 4 (2000) 671–677. [23] X. Zhou, S. Nakano, T. Nishizeki, Edge-coloring partial k-trees, J. Algorithms 21 (1996) 598–617.