• No results found

A unified FPT Algorithm for Width of Partition Functions

N/A
N/A
Protected

Academic year: 2021

Share "A unified FPT Algorithm for Width of Partition Functions"

Copied!
40
0
0

Loading.... (view fulltext now)

Full text

(1)

Functions

Pascal Berthom´

e, Nicolas Nisse

To cite this version:

Pascal Berthom´

e, Nicolas Nisse. A unified FPT Algorithm for Width of Partition Functions.

[Research Report] RR-6646, INRIA. 2008, pp.36.

<

inria-00321766

>

HAL Id: inria-00321766

https://hal.inria.fr/inria-00321766

Submitted on 15 Sep 2008

HAL

is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not.

The documents may come from

L’archive ouverte pluridisciplinaire

HAL, est

destin´

ee au d´

epˆ

ot et `

a la diffusion de documents

scientifiques de niveau recherche, publi´

es ou non,

´

emanant des ´

etablissements d’enseignement et de

(2)

a p p o r t

d e r e c h e r c h e

-6 3 9 9 IS R N IN R IA /R R --6 6 4 6 --F R + E N G Thème COM

A unified FPT Algorithm for Width of Partition

Functions

Pascal Berthomé — Nicolas Nisse

N° 6646

(3)
(4)

Functions

Pascal Berthom´e

, Nicolas Nisse

Th`eme COM — Syst`emes communicants Projets Mascotte

Rapport de recherche n°6646 — September 2008 — 36 pages

Abstract: During the last decades, several polynomial-time algorithms have been designed that decide if a graph has treewidth (resp., pathwidth, branchwidth, etc.) at mostk, where

kis a fixed parameter. Aminiet al. (to appear in SIAM J. Discrete Maths.) use the notions of partitioning-trees and partition functions as a generalized view of classical decompositions of graphs, namely tree-decomposition, path-decomposition, branch-decomposition, etc. In this paper, we propose a set of simple sufficient conditions on a partition function Φ, that ensures the existence of a linear-time explicit algorithm deciding if a setAhas Φ-width at most k (k fixed). In particular, the algorithm we propose unifies the existing algorithms for treewidth, pathwidth, linearwidth, branchwidth, carvingwidth and cutwidth. It also provides the first Fixed Parameter Tractable linear-time algorithm deciding if theq-branched treewidth, defined by Fominet al. (Algorithmica 2007), of a graph is at mostk(kandqare fixed). Our decision algorithm can be turned into a constructive one by following the ideas of Bodlaender and Kloks (J. of Alg. 1996).

Key-words: Tree-decomposition, FPT-algorithm, width-parameters, characteristics.

This work was partially funded by the support of CONICYT via Anillo en Redes ACT08, and of the European projects 1ST FET AEOLUS and COST 293 GRAAL.

LIFO, ENSI-Bourges, Universit´e d’Orl´eans, Bourges, France.{[email protected]@sophia.inria.frMASCOTTE, INRIA, I3S, CNRS, UNS, Sophia Antipolis, France. {

(5)

partition

R´esum´e : Depuis une vingtaine d’annes, de nombreux algorithmes polynomiaux ont ´et´e con¸cu pour les probl`emes consistant `a d´ecider si la largeur arborescente (resp., largeur lin´eaire, largeur en branche, etc.) d’un graphe est au plus k, o`u k est un param`etre fix´e. Amini et al. (`a paraˆıtre dans SIAM J. Discrete Maths.) utilisent les notions d’arbre de partition et de fonctions de partition pour g´en´eraliser les d´ecompositions “classiques” des graphes, comme par exemple la d´ecomposition arborescente, la d´ecomposition lin´eaire, la d´ecomposition en branches, etc. Dans ce papier, nous proposons des conditions simples et suffisantes qui, si elles sont satisfaites par une fonction de partition Φ, suffisent `a assurer l’existence d’un algorithme lin´eaire qui d´ecide si un ensemble A poss`ede une Φ-largeur au plusk (k´etant fix´e). En particulier, l’algorithme que nous proposons unifie les algorithmes existants pour la largeur arborescente, la largeur lin´eaire, la largeur en branche, etc. Notre algorithme est ´egalement le premier algorithme FPT d´ecidant en temps lin´eaire si la largeur arborescente q-branch´ee, d´efinie par Fomin et al. (`a paraˆıtre dans Algorithmica), d’un graphe est au plusk (k etq´etant fix´es). Notre algorithme de d´ecision peut ˆetre modifi´e en un algorithme constructif en utilisant les id´ees de Bodlaender and Kloks (J. of Alg. 1996). Mots-cl´es : D´ecomposition arborescente, algorithme FPT, largeurs de graphes, car-act´eristique.

(6)

1

Introduction

The notion oftreewidthis central in the theory of the Graph Minors developed by Robertson and Seymour [RS86]. Roughly, the treewidth of a graph measures how close a graph is to a tree. More formally, atree-decomposition(T,X) of a graphG= (V, E) is a treeT together with a familyX = (Xt)t∈V(T)of subsets of V, such that: (1)St∈V(T)Xt=V, (2) for any edgee={u, v} ∈E, there ist∈V(T) such thatu, v∈Xt, and (3) for anyv∈V, the set oft such that v ∈Xtinduces a subtree of T. The width of (T,X) is the maximum size of

Xtminus 1,t∈V(T), and the treewidth tw(G) of a graphGis the minimum width among its tree-decompositions. If T is restricted to be a path, we get a path-decomposition ofG, and thepathwidthpw(G) ofGis the minimum width among its path-decompositions.

Both pathwidth and treewidth have a nice theoretical-game interpretation (see [Bie91, FT08] for surveys). Pathwidth can be described as a graph searching game where a team of searchers aims at capturing an invisible and arbitrary fast fugitive hidden on the vertices of the graph, whereas treewidth deals with the capture of a visible fugitive. In [FFN07], Fomin

et al. introduce a variant of these games, called non-deterministic graph searching, that establishes a link between pathwidth and treewidth. Loosely speaking, in non-deterministic graph searching, the fugitive is invisible, but the searchers are allowed to query an oracle that possesses complete information about the position of the fugitive. However, the number of times the searchers can query the oracle is limited. Theq-limited search numberof a graph

G, denoted by sq(G), is the smallest number of searchers required to capture an invisible fugitive inG, performing at mostq≥0 queries to the oracle. Fominet al. give the following interpretation of non-deterministic graph searching in terms of graph decomposition. A tree-decomposition (T,X) isq-branchedifT can be rooted in such a way that any path from the root to a leaf contains at most q≥0 vertices with at least two children. q ≥0 being fixed, the q-branched treewidth twq(G) of a graph Gis the minimum width among its q -branched tree-decompositions (tw∞(G) =tw(G) andtw0(G) =pw(G)). For anyq≥0 and any graphG,sq(G) =twq(G) + 1 [FFN07, MN08]. Fominet al. prove that decidingsq(G) is NP-complete for anyq≥0, and design an algorithm that decides whethersq(G)≤kin time

O(nk+1) for anyn-node graphG[FFN07]. Prior to this work, no explicitFixed Parameter

Tractable(FPT) algorithm for this problem was known.

The notion of treewidth also plays an important role in the domain of algorithmic com-putational complexity. Indeed, many graph theoretical problems that are NP-complete in general are tractable when input graphs have bounded treewidth. Thus, an impor-tant challenge consists in computing optimal tree-decompositions of graphs. Much re-search has been done on the problem of finding an optimal tree-decomposition. This prob-lem is NP-complete [ACP87] and special interest has been directed toward special graph classes [Bod93, BM93, BKK95]. The case of the class of graphs with bounded treewidth has been widely studied in the literature [ACP87, Ree92].

In their seminal work on Graph Minors [RS94, RS04], Robertson and Seymour give a non-constructive proof of the existence of a O(n2) decision algorithm for the problems of deciding whether a graph belongs to some minor-closed class of graphs. Given that, for any

(7)

k, the class of graphs of treewidth at mostkis minor-closed, an immediate consequence is the existence of a polynomial-time algorithm deciding whether a graph has treewidth at mostk, wherekis a fixed parameter. In [BK96], Bodlaender and Kloks design a linear time algorithm for solving this problem. More precisely,kandk′ being fixed, given an-node graphGand a

tree-decomposition of width at mostk′ ofG, the Bodlaender and Kloks’ algorithm decides

iftw(G)≤kin timeO(n). The big-oh hides a constant more than exponential inkandk′.

In the last decades, analogous algorithms have been designed for other width parameters of graphs like pathwidth [BK96], branchwidth [BT97], linearwidth [BT04], carvingwidth and cutwidth [TSB00]. These algorithms are mainly based on the notion of characteristic

(see Section 4). This paper aims at unifying and generalizing these FPT algorithms. As a particular application, our algorithm decides in linear time if theq-limited search number of a graphGis at mostk,q≥0 andk≥1 fixed.

In order to generalize the algorithm of [BK96], we use the notions of partition function and partitioning-tree defined in [AMNT07]. Given a finite setA, a partition function Φ is a function from the set of partitions ofAinto the integers. A partitioning-tree ofAis a tree

T together with a one-to-one mapping between A and the leaves of T. The Φ-width of T

is the maximum Φ(P), for any partition P of A defined by the internal vertices ofT, and the Φ-width ofA is the minimum Φ-width of its partitioning-trees. Partition functions are a unified view for a large class of width parameters like treewidth, pathwidth, branchwidth, etc. In [AMNT07] is given a simple sufficient property that a partition function overAmust satisfy to ensure that eitherA admits a partitioning-tree of width at mostk≥1, or there exists ak-bramble(a dual structure).

In this paper, we extend the definition of Φ-width to the one ofq-branched Φ-width of a setA. Then, we use the framework of [BK96] applied to the notions of partition functions and partitioning-tree in order to design a unified linear-time algorithm that decides if a finite set hasq-branched Φ-width at mostk. Again,q≥0 andk≥1 are fixed parameters. Our results: We propose a simple set of sufficient properties and an algorithm such that, for anykandqfixed parameters, and any partition function Φ satisfying the properties, our algorithm decides in timeO(|A|) if a finite setAhasq-branched Φ-width at mostk (Theo-rem 1). Since treewidth, pathwidth, branchwidth, cutwidth, linearwidth, and carvingwidth can be defined in terms of Φ-width for some particular partition functions Φ that satisfy our properties (Theorem 2), our algorithm unifies the works in [BK96, BT97, TSB00, BT04]. Moreover, our algorithm generalizes the previous algorithms since it is not restricted to width-parameters of graphs but works as well for any partition function (not restricted to graphs) satisfying some simple properties. Finally, it provides the first explicit linear-time algorithm that decides if a graphGcan be searched in a non-deterministic way byksearchers performing at mostqqueries, for any k≥1, q ≥0 fixed. Due to lack of space, most of the proofs are omitted and can be found in the Appendices.

(8)

2

Main theorem.

2.1

Partition function and partitioning-tree.

LetAbe a finite set. LetP ={A1,· · · , Ar} andQ={B1,· · · , Bp} be two partitions ofA. For any subsetA′A, therestrictionP ∩AofP toAis the partition{A

1∩A′,· · ·, Ar∩A′} ofA′ (where the empty parts have been removed). Qis asubdivisionofP if, for anyj p,

there existsi≤r withBj⊆Ai.

A partition function ΦA over A is a function from the set of partitions of A into the

integers. ΦA ismonotoneif, for any subdivisionQof a partitionP ofA, ΦA(P)≤ΦA(Q).

A (monotone) partition function Φ is a function that associates a (monotone) partition function ΦAoverAto any finite setA. A partition function Φ isclosed under taking subset

if, for anyA′Aand any partitionP ofA, Φ

A′(P ∩A′)≤ΦA(P).

Apartitioning-tree(T, σ) ofAis a treeT together with a one-to-one mappingσbetween

Aand the leaves ofT. IfTis rooted inr∈V(T), the partitioning-tree is denoted by (T, r, σ). Any internal vertexv∈V(T) corresponds to a partitionTvofA, defined by the sets of leaves of the connected components ofT \v. Similarly, any edge e∈E(T) defines a bi-partition

TeofA. The ΦA-widthof (T, σ) is the maximum of ΦA(Tv) over the internal (i.e., non leaf)

vertices v of T. The Φ-width of A is the minimum ΦA-width of its partitioning-trees (cf.

Figure 1 in Appendix A).

Abranching nodeof a rooted tree (T, r) is either the root or a vertex ofT with at least two children. A tree T is q-branched if there exists a root r ∈ V(T) such that any path from r to a leaf contains at mostq ≥0 branching nodes. For instance,T is 0-branched if and only ifT is a path. Thecorpsecp(T) of a treeT denotes the rooted tree obtained from

T by removing all its leaves. A partitioning tree (T, σ) is q-branched if the corpse cp(T) of T is q-branched. For instance, a partitioning-tree (T, σ) is 0-branched if and only if T

is a caterpillar. Theq-branched Φ-width of A is the minimum ΦA-width of its q-branched

partitioning-trees.

2.2

Sufficient conditions for a linear time algorithm.

Anice decomposition(D,X) of a finite set Ais aO(|A|)-node rooted treeD, together with a famillyX = (Xt)t∈V(D)of subsets ofAsuch that,∪t∈V(D)Xt=A, and for anyv∈V(D): (a) start node: v is a leaf, or (b) introduce-node: v has a unique child u, Xu ⊂ Xv and

|Xv|=|Xu|+ 1, or (c)forget-node: v has a unique childu,Xv ⊂Xu and|Xu|=|Xv|+ 1, or (d)join-node: v has exactly 2 childrenuandw, andXv=Xu=Xw.

For anyv∈V(D), letDv denote the subtree ofD rooted inv, andAv=∪t∈V(Dv)Xt. Let Φ be a partition function. Anice decomposition(D,X) forAiscompatiblewith Φ if

ˆ it exists a functionFΦthat associates an integerFΦ(x,P, e) to any integerx, partition

P of some subset of A and element e of A, such that, F is strictly increasing in its first coordinate, and, for any introduce node v∈V(D) with childu, any partitionP

ofAv,

(9)

ˆ it exists a function HΦ that associates an integer HΦ(x, y,P) to any pair of integers

x, y, and partitionP of some subset ofA, such that,F is strictly increasing in its first and second coordinates, and, for any join nodev∈V(D) with children uandw, any partitionP ofAv,

ΦAv(P) =HΦ(ΦAu(P ∩Au),ΦAw(P ∩Aw),P ∩Xv).

Intuitively, the existence ofFΦandHΦmeans that it is possible to compute the Φ-width of some partitionsP without knowing explicitlyP, but only knowing a restriction ofP and the Φ-width of some restrictions ofP, these restriction being defined by the decomposition (D,X).

Theorem 1. Let Φbe a monotone partition function that is closed under taking subgraph. Letk, k′ 1andq0 be three fixed integers (qmay be). There exists an algorithm that

solves the following problem in time linear in the size of the input set:

input: a finite setA, and a nice decomposition(D,X)forAthat is compatible withΦ, and

maxt∈V(D)|Xt| ≤k′,output: decide if theq-branched Φ-width ofA is at mostk. Guideline of the algorithm.

In the following, we define the notion ofcharacteristic,Char((T, r, σ), X), of a partitioning-tree (T, r, σ) ofA restricted to X ⊆A (Section 4). Roughly, characteristics are a compact data structure encoding the information necessary to build partitioning-trees. Following the framework in [BK96], we prove that the number of characteristics ofq-branched partitioning-trees with Φ-width at mostk, restricted toX, is bounded by a function ofq, kand|X|(this function does not depend onq whenq=∞). Then, we prove that the size of such charac-teristics is also bounded (Lemma 6). Finally, we define an ordering¹on the characteristics that allows us to consider only some specific characteristics. More precisely, givenv∈V(D), a set of characteristics Set(v) is a set of characteristics ofq-branched partitioning-trees of

Av with Φ-width at most k, restricted toXv. This set is said full if, roughly, all minimal such characteristics belong to it (see Section 4). By definition, there is a non empty full set of characteristicsF ullSet(v) if and only if theq-branched Φ-width ofAv is at mostk.

The algorithm proceeds by performing a dynamic programming. First, it computes a full set of characteristicsF ullSet(v) for any start node (i.e., leaf)v∈V(D). Then, for any

v ∈ V(D), a full set of characteristics F ullSet(v) is computed in constant time, starting from the full sets of characteristics of the children of v. This is the role of Procedures

IntroduceN ode (Section 5.1.2), F orgetN ode (Section 5.2) and JoinN ode (Section 5.3). Therefore, in time |V(D)| = O(|A|), our algorithm computes a full set of characteristics

F ullSet(rD) of the root of D. SinceArD =A, the q-branched Φ-width of Av is at mostk if and only ifF ullSet(rD)6=∅.

In Sections 4 and 5, we present the main tools used in the design of our algorithm. First, in the next section, we present an important application of this theorem to the graphs.

(10)

3

Tractability of width-parameters of graphs.

This section is devoted to present an application of Theorem 1 in terms of graph’s pa-rameters. We first recall the definition of some graph’s parameters, and establish their relationship with partition functions [AMNT07].

LetG= (V, E) be a connected graph. Let ∆ be the function that assigns, to any partition

X ={E1,· · · , Er}ofE, the set of the vertices ofGthat are incident to edges inEi andEj, withi6=j. Letδbe the partition function that assigns|∆(X)|to any partitionX ofE. Treewidth [RS86]: The treewidth ofGis at mostk≥1 if and only if there is a partitioning-tree ofE with δ-width at mostk+ 1. Indeed, let (T, σ) be a partitioning-tree ofE, then (cp(T),(Xt)t∈V(cp(T))), with Xt = ∆(Tt), is a tree-decomposition of G. Conversely, let (T,X) be a tree-decomposition ofGwith width at mostk. Then, for any edge{x, y} ∈E, let us choose an arbitrary bag Xt that contains both x and y, add a leaf f adjacent to

t in T, and let σ(f) = {x, y}. Finally, let S be the minimal subtree spanning all such leaves. The resulting tree (S, σ) is a partitioning-tree of E withδ-width at mostk+ 1 and

T =cp(S) [AMNT07].

Pathwidth [RS83]: The pathwidth of G is at most k ≥ 1 if and only if there is a partitioning-tree (T, σ) ofEwithδ-width at mostk+ 1 and such that (T, σ) is 0-branched. q-branched treewidth [FFN07]: More generally, the q-branched treewidth of G is at mostk≥1 if and only if there is aq-branched partitioning-tree (T, σ) ofE withδ-width at mostk+ 1. Recall that a partitioning-tree (T, σ) isq-branched ifcp(T) isq-branched.

Other partition functions defining branchwidth (br), linearwidth (lw), carvingwidth (carw), and cutwidth (cw) are described in Appendix F. The remaining part of this section is devoted to prove the Theorem 2 that is an important interpretation of Theorem 1 when width-parameters of graphs are concerned. We first need some lemmata. The following lemma is straightforward and its proof is thus omitted.

Lemma 1. Aforementioned partition functions are monotone and closed under taking sub-set.

Lemma 2. Let G be a graph with maximum degree deg. Given a nice tree-decomposition

(T,Y) of G with width at most k′ 1, a nice decomposition (D,X) of E, compatible with

the partition functions corresponding to treewidth (resp., branchwidth), q ≥ 0, and with

maxt∈V(D)|Xt| ≤k′·degcan be computed in linear time.

Proof. Due to lack of space, we only prove the lemma for the partition function corresponding to treewidth. First, it is easy to obtain a nice decomposition (D,X) ofE from (T,Y). For anyv∈V(T), letTv denote the subtree ofT rooted inv, andAv=∪t∈V(Tv)Yt, and letEv be the set of edges belonging to the subgraph induced by the vertices contained inAv that are incident to a vertex inYv. Any start node, resp., join node,Ytof (T,Y) corresponds to a start node, resp., join node,Etof (D,X). For any introduce nodeYt of (T,Y), letx∈V

be the vertex such thatYt=Yt′∪ {x}, wheret′ is the single child of tin T. Lete1,· · · , er be the edges that are incident toxand to some vertex inYt′. Then,Yt is modified into a

(11)

path of introduce nodesE(G[Yt′])∪{e1}, E(G[Yt′])∪{e1, e2},· · · , E(G[Yt′])∪{e1, e2,· · ·, er} in (D,X). Finally, any forget node Yt of (T,Y) is modified into a path of forget nodes

E(G[Yt′])\ {e1}, E(G[Yt′])\ {e1, e2},· · ·, E(G[Yt′])\ {e1, e2,· · ·, er} in (D,X), where t′ is

the unique child of t in T, and e1,· · · , er are the edges that are incident to x =Yt′ \Yt

and to no other vertex in Yt. The obtained decomposition of E is a nice decomposition and its width (i.e., the maximum number of edges in each bag) is at most the width of the tree-decomposition (T,Y) times the maximum degree ofG.

It remains to prove that (D,X) is compatible withδ. LetFδ be defined as follows. Definition 1. Letxbe an integer,P be a partition of a subsetE′ of Eand an edgeeE.

Then,Fδ(x,P, e) =x+|{v∈e| v∈∆(P)\∆(P ∩(E′\ {e}))}|.

That is,Fδ adds toxthe number of vertices incident toethat contribute to the border of the partition P because they are incident to e. Fδ is obviously strictly increasing in its first coordinate. Moreover, it can be computed in constant time when|E′|is bounded by a

constant.

For anyv∈V(D), letDv denote the subtree ofD rooted inv, andAv=∪t∈V(Dv)Xt. Let v ∈V(D) be an introduce node with child u, and let {e} =Xv\Xu. LetP be a partition ofAv. We need to prove thatδAv(P) =Fδ(δAu(P ∩Au),P ∩Xv, e). In other words, let us prove thatδAv(P) =δAu(P ∩Au) +|{v∈e|v∈∆(P ∩Xv)\∆(P ∩Xv∩(Xv\ {e}))}|.

δAv(P) is the number of vertices in the subgraph induced by the set of edgesAv, that are incident to edges in different parts ofP. This set of vertices can be divided into two disjoint sets: (1) the setS1of vertices that are incident to two edgesf andhthat are different from

eand that belong to different parts ofP, and (2) the setS2 of verticesxincident toeand such that all other edges (different frome) incident toxbelong to the same part ofP that is not the part of e. S1 is exactly the set of vertices belonging to ∆Au(P ∩Au), therefore

|S1|=δAu(P ∩Au).

By definition of (D,X) (because it has been built from a tree-decomposition), any edge ofAu=Av\ {e}that has a common end withebelongs toXv. Therefore, any vertex inS2 belongs to ∆(P ∩Xv). It is easy to conclude that|S2|=|{v∈e|v ∈∆(P ∩Xv)\∆(P ∩

Xv∩(Xv\ {e}))}|.

Therefore, the functionFδ satisfies the desired properties. LetHδ be defined as follows. Definition 2. Let x and y be two integers, and let P be a partition of a subset E′ of E.

Then,Hδ(x, y,P) =x+y−δ(P).

Hδ is obviously strictly increasing in its first and second coordinates. Moreover, it can be computed in constant time when|E′|is bounded by a constant.

Letv∈V(D) be a join node with childrenuandw, and letP be a partition ofAv, we must prove thatδAv(P) =Hδ(δAu(P ∩Au), δAw(P ∩Aw),P ∩Xv). That is, we prove that

δAv(P) =δAu(P ∩Au) +δAw(P ∩Aw)−δXv(P ∩Xv).

First, note that ∆Au(P ∩Au)∪∆Aw(P ∩Aw)⊆∆Av(P). Moreover, by definition of the nice decomposition (D,X), an edge ofAu\Xv and an edge ofAw\Xv cannot be incident.

(12)

Indeed,Xv has been built by taking all edges incident to a vertex in a bag Y of the tree-decomposition (T,Y). By the connectivity property of a tree-decomposition, if a vertex x

would have been incident to an edge in Au\Aw and to an edge in Aw\Au, then x∈ Y

which would have implied that both these edges belong toXv =Au∩Aw, a contradiction. Therefore, ∆Av(P)⊆∆Au(P ∩Au)∪∆Aw(P ∩Aw). To conclude, it is sufficient to observe that ∆Au(P ∩Au)∩∆Aw(P ∩Aw) = ∆Xv(P ∩Xv).

Due to lack of space the proof of the following lemma is omitted and can be found in Appendix F.2.

Lemma 3. Any nice tree-decomposition (T,Y) of G is a nice decomposition of V that is compatible with the partition functions corresponding to carwingwidth (resp., cutwidth).

Bodlaender designs a linear-time algorithm that decides if the treewidth of a graphGis at mostk, and, iftw(G)≤kreturns a tree-decomposition of width at mostO(k) [Bod96]. Moreover, a nice tree-decomposition of G can be computed in linear time from any tree-decomposition ofG, and without increasing its width [BK96]. Finally, for any graphGand any q ≥0, tw(G)≤ twq(G)≤pw(G) (By definition), tw(G)≤ 3

2bw(G) [RS91], pw(G)≤

cw(G) [TSB00],tw(G)≤3carw(G) [TSB00] andpw(G)≤lw(G) [BT04]. Therefore, as an application of Theorem 1, Lemmata 1,2 and 3 lead to:

Theorem 2. Letkandq be two fixed parameters. There exists an algorithm that solves the following problem in time linear in the size of the input.

input: A graphGwith degree bounded as a function of q andk,output: Decide if Ghas

q-branched treewidth, resp., branchwidth, linearwidth, carvingwidth or cutwidth at most k.

4

Characteristics of partitioning-trees.

This section is devoted to define the characteristicof any rooted partitioning-tree of some finite setAwhen we “restrict” it to a subsetB ⊆A. Let Φ be a monotone partition function.

4.1

Contraction of labeled path

One of the main tool that we use is the contraction of labeled paths. A labeled path is a path the vertices and edges of which are labeled by integers. In the following, any path of a partitioning tree of A will be considered as a labeled path, the vertices and edges being labeled by the ΦA-width of the partition they correspond to. Note that, because Φ is

monotone, the label of any edge is at most the minimum label of its ends.

LetP ={v0, v1,· · ·, vn} be a path where any vertexvi is labeled with an integerℓ(vi), and any edgeei={vi−1, vi}with an integerℓ(ei). To define the contraction ofP, we revisit the notion oftypical sequenceof a sequence of integers [BK96] (see Appendix B.1). Roughly, the goal of the following operation is to contract some edges and vertices ofP that are not “necessary” to remember the variations of the sequence (ℓ(v0), ℓ(e1), ℓ(v1),· · · , ℓ(en), ℓ(vn)).

(13)

ThecontractionContr(P) is the path obtained fromP, with same ends, by contracting some edges and vertices obtained by the following procedure. Start with one integral variable

m= 1. While m6=n, do the following. Let i, m≤i≤n−1, be the greatest index such that, for any m ≤j ≤i, ℓ(em)≤ℓ(ej))≤ ℓ(vi) andℓ(em)≤ℓ(vj)) ≤ℓ(vi). Contract all vertices and edges betweene andvi. Then, set m to the greatest index such that, for any

i < j≤m,ℓ(vi)≥ℓ(ej)≥ℓ(em) andℓ(vi)≥ℓ(vj)≥ℓ(em). Contract all vertices and edges betweenvi andem. Edges and vertices ofContr(P) keep their initial label (cf. Figure 2 in Appendix A).

The crucial property ofContr(P) ={v0=v′0, v1′,· · ·, vp′−1, vp′ =vn}is that the sequence S′ = ((e

1), ℓ(v1′),· · · , ℓ(e′p−1), ℓ(vp′−1), ℓ(e′p)) (where e′i = {vi′−1, vi′}) is “almost” the

typi-cal sequence of the sequence S = (ℓ(e1), ℓ(v1),· · ·, ℓ(en)). More precisely, if ℓ(e′1)6=ℓ(v1′), then S′ = τ(S), otherwise ((v

1), ℓ(e′2),· · ·, ℓ(vp′−1), ℓ(e′p)) = τ(S) (τ(S) denotes the

typ-ical sequence of S). Moreover, it is important to note that any v ∈ V(Contr(P)) (e ∈ E(Contr(P)))representsa uniquev∗V(P) (eE(P)).

We define max(P) as the maximum integer labeling an edge or a vertex of a labeled pathP. Similarly, we define min(P). The following lemma is straightforward when using the fact that the number of different typical sequences of integers in{0,1,· · · , k}is at most

8

32

2k [BK96].

Lemma 4. LetP be a labeled path.

1. min(Contr(P)) = min(P)andmax(Contr(P)) = max(P).

2. The number of contractions of pathsP withmax(P)≤k is bounded by a function of k.

In the following, we need to order the labeled paths. An extensionof a labeled pathP

is any path obtained by subdividing some edges ofP an arbitrary number of times. Both edges and the vertex resulting from the subdivision of an edgeeare labeled withℓ(e). Given two labeled pathsP and Q, we say thatP ¹Q if there is an extensionP∗ ={p

1,· · · , pr} ofP and an extensionQ∗={q

1,· · ·, qr}ofQwith same length, and such thatℓ(pi)≤ℓ(qi) andℓ({pi, pi+1})≤ℓ({qi, qi+1}) for anyi≤r.

4.2

Restriction of a partitioning-tree

Let (T, r, σ) be a partitioning-tree of A. Any internal vertexv∈V(T) is labeled byℓ(v) = ΦA(Tv) and any edge e ∈ E(T) is labeled by ℓ(e) = ΦA(Te). To avoid technicality, we

assume that T is not restricted to an edge, and ris not a leaf of T. Therefore, the corpse

cp(T) (T without its leaves) can be rooted inr. TherestrictionChar((T, r, σ), B) of (T, r, σ) to B is a rooted partitioning-tree (T∗, r, σ) ofB, together with a labeling function : V(cp(T∗))E(T) N, an integer dist, a subset Kof vertices of Tsuch that any v ∈K∗ has extra label (out(v), branch(v))N× {0,1}. Char((T, r, σ), B) is computed

as follows.

1. LetT∗ be the smallest subtree spanning the leaves ofT that map elements of B. Letr

be the vertex ofT∗ that is closest torinT. From now on,Tis rooted inr. For any leaf f ofT∗, letσ(f) =σ(f).

(14)

2. dist∗ is set to the number of branching nodes, in cp(T), on the path between rand r

(includingr, and excludingr∗).

3. LetK∗ be the set of vertices ofTthat are either a leaf ofT, or the parent of a leaf of T∗, or a branching node of (T, r), or a branching node ofcp(T) inV(T) (rooted inr).

4. For any vertex v of K∗, branch(v) = 1 if v is a branching node of cp(T), and branch∗(v) = 0 otherwise. out(v) is set to the maximum number of branching nodes

on any path betweenv and a leaf in A\B all internal vertices of which are different from

r∗ and inT\T.

5. Any internal vertexv∈V(T∗) (resp., any edgeeE(T)) keeps the same label than in T: ℓ∗(v) = Φ

A(Tv) (resp.,ℓ∗(e) = ΦA(Te)).

6. Then, for any two verticesv, winK∗such that no internal vertices of the pathPbetween v andware inK∗, replaceP byContr(P).

An example is illustrated in Figure 3 in Appendix A.

The key point for the understanding of the relationship between the partitioning-tree (T, r, σ) of A and its restriction ((T∗, r, σ), ℓ, K, dist, out, branch) toB is based on

the following. Any vertex of K∗ represents a specific vertex of T that is either a leaf of T that maps an element of B, or the parent of such a leaf in T, or a branching node of

cp(T) or a vertex of T that defines a partition of B with at least three part. Any path

P between two vertices v, w in K∗ such that no internal vertices of P between v and w

are inK∗, represents a pathP(v, w) in T the internal vertices of which have degree two in T. Moreover, by definition of the operationP =Contr(P(v, w)), any vertex (resp., edge) of P represents a specific vertex (resp., edge) of T. Beside, by Lemma 4, the maximum (minimum) label over the vertices and edges of T∗ is the maximum (minimum) label over

the vertices and edges ofT. In particular, ℓ∗(v)k and(e)kfor any v V(T) and e∈E(T∗) if and only if (T, r, σ) has Φ-width at mostk.

Finally, the labels out and branchare sufficient to remember if (T, r, σ) isq-branched. Indeed, let the br-height of v, denoted by brheight(v), in cp(T) be the maximum number of branching nodes in a path from v to a leaf of the subtree of cp(T) rooted in v. With this definition, (T, r, σ) is q-branched if and only if the br-height ofr is at most q. If v is a leaf ofT∗, it is a leaf ofT, then brheight(v) = 0. Otherwise, the br-height ofv can be

computed recursively by max{out(v), height}+branch(v), whereheightis the maximum of the br-height among the children ofv. In particular, if (T, r, σ) is qbranched,out∗(v)q

for anyv∈K∗. Finally, the br-height ofrequals the br-height ofrplusdist.

4.3

Characteristic of

A

restricted to

B

Let ((T∗, r, σ), ℓ, K, dist, out, branch) be such that (T, r, σ) is a rooted

partitioning-tree of B ⊆ A, ℓ∗ : V(cp(T))E(T) N, K V(T) that contains at least all

leaves, parents of leaves, the root and vertices with degree at least three of T∗, distN, out∗ : KN, branch:K→ {0,1}, and for any v, w Ksuch that no internal

ver-tices of the pathP between v and ware in K∗, P =Contr(Q) (i.e., P results from some

(15)

Definition 3. ((T∗, r, σ), ℓ, K, dist, out, branch)is a characteristic ofArestricted to Bif it exists a partitioning-tree(T, r, σ)ofA, such that((T∗, r, σ), ℓ, K, dist, out, branch) = Charac((T, r, σ), B). ((T∗, r, σ), ℓ, K, dist, out, branch)is a(k, q)-characteristic ofA

restricted toB if, moreover,ℓ∗:V(T)E(T)[0, k], anddist+brheight(r)q. Note

that the latter assumption implies that out∗:K[0, q].

Lemma 5. ((T∗, r, σ), ℓ, K, dist, out, branch)is a(k, q)-characteristic ofArestricted

toB if and only it exists a q-branched partitioning-tree (T, r, σ)of A with Φ-width at most

k, such that ((T∗, r, σ), ℓ, K, dist, out, branch) =Charac((T, r, σ), B).

Lemma 6. The number of(k, q)-characteristic ofArestricted toBis bounded byf(k, q,|B|). Proof. Let ((T∗, r, σ), ℓ, K, dist, out, branch) be a (k, q)-characteristic ofArestricted

toB. T∗ is a tree with|B|leaves,|K| ≤kq+ 2k, any path between two vertices inKhas

length at most 2k+ 1 (Lemma 4 and [BK96]),dist∗q, and for any vertexvV(cp(T))

and edgee∈E(T∗),(v)k,(e)k, andout(v)q.

Case q = ∞. Note that, if q is unbounded, the number of characteristics of (k,∞ )-characteristic ofB is bounded by a functionkand|B|. Indeed, ifqis unbounded, we don’t need to take the variablesdist∗, outand branchinto account. More precisely, the items

2 and 4 of the previous procedure can be removed andK∗must be the set of vertices ofT

that are either a leaf ofT∗, or a branching node of (T, r).

TheskeletonSk(C) ofC= ((T∗, r, σ), ℓ, K, dist, out, branch) is the tree obtained

fromT∗by contracting all vertices that are not inK(these vertices have degree two, thus

the notion of contraction is well defined). Therefore,V(Sk(C)) =K∗. Two

partitioning-trees (T, r, σ) and (T′, r, σ) are isomorphic if there is an one-to-one function ϕ: V(T) V(T′) preserving the edges, such thatϕ(r) =r, and moreover,σ(ϕ(f)) =σ(f) for any leaf f ofT.

Definition 4. Given two characteristicsC∗= ((T, r, σ), ℓ, K, dist, out, branch)and C = ((T, r, σ), ℓ, K, dist, out, branch) of A restricted to B, C∗ ¹ C if Sk(C) and Sk(C)

are isomorphic, dist∗ dist, for any v, w K= K, out(v) out(v), branch(v) branch(v),ℓ∗(v)¹(v), and P(v, w)¹P(v, w)where P(v, w) is the path between v and win T∗, andP(v, w)is the path betweenv andw inT.

Definition 5. A set F of (k, q)-characteristics of A restricted to B is full if for any q -branched partitioning-tree (T, r, σ) of A with Φ-width at most k, there is a q-branched partitioning-tree (S, u, µ) of A, such that Char((S, u, µ), B) ¹ Charac((T, r, σ), B) and

Char((S, u, µ), B)∈F.

5

Decision algorithm.

This section is devoted to the presentation of Procedures used in our main algorithm. No-tations are those defined in Section 2 for Theorem 1. Let (D,X) be a nice decomposition

(16)

forA that is compatible with Φ a monotone partition function, and maxt∈V(D)|Xt| ≤ k′. This section presents procedures that compute a full setF SC(t) of (k, q)-characteristics of

Atrestricted toXt, for anyt∈V(T). recall that, our algorithm proceeds by dynamic pro-gramming from the leaves ofD to its root. Due to lack of space, the proofs of Lemmata 7,8, and 9 are omitted and can be found in Appendix C,D and E.

If v is a leaf, i.e., a start node of D, Av =Xv, and |Xv| ≤k′. F SC(v) consists of all

(k, q)-characteristics ofXv. By Lemma 6,|F SC(v)|is bounded by a function ofk′, kandq.

It can be computed in constant time.

5.1

Case of an introduce node.

We first explain how any labeled partitioning-tree (T, r, σ) of A can be turned into a partitioning-tree ofA∪ {a}, a /∈A. The following procedure (cf. Figure 4 in Appendix A) will be useful for a better understanding of ProcedureIntroduceN ode, and will be used in the proof of its correctness.

5.1.1 Insertion of a new element in a partitioning-tree.

1. Let us choose either an internal vertex v ∈ V(T) (Case 1) or an edge e ∈ E(T) (Case 2) . In Case 1, we add a new leaf f adjacent to v, f mapping a and set

ℓ({f, v}) = Φ(A,{a}). In Case 2, let us subdivide e into two edges, both new edges and the new vertex w receive label ℓ(e). Then, add a new leaff adjacent to w, f

mapping aand setℓ({f, w}) = Φ(A,{a}). Let (T∗, r, σ) be the partitioning-tree of A∪ {a} obtained in this way.

2. For any internal vertexv∈V(T∗), letT

vbe the partition ofA∪ {a}defined byv. At

this step, note thatℓ(v) = Φ(Tv∩A). We modify this label toℓ(v) = Φ(Tv).

Similarly, for any edgee∈ E(T∗) but the edge incident to f,(e) = Φ(TeA). We

modify this label toℓ(v) = Φ(Te).

3. In Case 1, cp(T) = cp(T∗), therefore, the branching nodes and the br-height of the

vertices of cp(T) do not change. In Case 2, let e = {x, y} be the chosen edge, and

x the parent of y. Obviously, all branching nodes of cp(T) are branching nodes of

cp(T∗). Moreover,xis the single vertex of cp(T) that may be a branching node of cp(T∗) while it was not a branching node ofcp(T). This occurs iff y is a leaf and x

has exactly one non-leaf child inT. 5.1.2 Procedure IntroduceN ode.

Let v be an introduce node of D, u its child, and {a} = Xv \Xu. Let F SC(u) a full set of (k, q)-characteristics of Au restricted to Xu. For any characteristic C = ((T, r, σ), ℓ, K, dist, out, branch)∈F SC(u), ProcedureIntroduceN odeproceeds as follows, repeating the five steps below, for any possible execution of Step 1. Roughly, it tries all possible ways to insertainC.

(17)

1. Update of T:

There are two ways of insertingainC. Either choose an internal vertexvattofV(T), add a leaf vleaf adjacent to vatt (Case 1), or choose an edge f = {vtop, vbottom}

(with vtop closer to the root than vbottom), subdivide it into etop = {vtop, vatt} and

ebottom = {vatt, vbottom} and add a new leaf vleaf adjacent to vatt (Case 2). In both cases, set σ(vleaf) = a and let K ← K∪ {vatt, vleaf}. Note that, now, T is a partitioning-tree ofXv.

2. Labels of the new vertex (vertices) and edge(s):

First,enew={vleaf, vatt}receives labelℓ(enew) = ΦAv({Au,{a}}).

In Case 2,ℓ(vatt) =ℓ(etop) =ℓ(ebottom) =ℓ(f), andout(vatt) =branch(vatt) = 0. 3. Update of labelsℓ(e) and ℓ(v):

∀e∈E(T),e6=enew, letTebe the partition ofXvdefined bye. ℓ(e)←FΦ(ℓ(e),Te, a).

∀t∈V(T), letTt be the partition ofXv defined byt. ℓ(t)←FΦ(ℓ(t),Tt, a).

∀x, y ∈ K with no internal vertices of the path P betweenx and y are in K, P ← Contr(P).

4. Creation of a new branching node:

The variabledistand the variablesout(v) andbranch(v) (v∈K) are not modified. If initially vbottom is a leaf of T, branch(vtop) = 0 andvtop has a childx6=vbottom in

T such that xis not a leaf of T. Then, branch(vtop) = 1. (this condition must be understood in contrast with the last item of the procedure of insertion of an element in a partitioning-tree).

5. Update of FSC(v): Let height be the br-height of r (computable thanks to the variables outand branch). If dist+height ≤q and ℓ(v)≤k for any internal vertex

v∈V(T), andℓ(e)≤kfor any edgee∈E(T), thenF SC(v)←F SC(v)∪ {C}. Lemma 7. IntroduceN ode computes a full set of (k, q)-characteristics of Av restricted to

Xv.

5.2

Procedure

F orgetN ode

Letv be a forget node ofD,uits child andF SC(u) a full set of (k, q)-characteristics ofAu

restricted to Xu. For any characteristic C = ((T, r, σ), ℓ, K, dist, out, branch) ∈ F SC(u), ProcedureF orgetN odeproceeds as follows. Roughly, it restrictsC toXv =Xu\ {a}.

1. Let vleaf be the leaf ofT that maps {a}, let vatt be the vertex of T with degree at least three that is closest tovleaf (if no such a vertex exists, T is a path and vatt is set to the other leaf). Let wbe the neighbour ofvattin the path between vleaf and

vatt, and letheight(w) be the br-height ofw. Letpbe the number of vertexv∈V(T) withbranch(v) = 1 in the path betweenvattandr(excludingvatt).

(18)

2. Remove the path betweenvleaf andvatt(but the vertexvatt) fromT andK.

If r 6= vatt and r is belongs to the path P between vleaf and vatt, r ← vatt and

dist ← dist+p. Otherwise, i.e., r = vatt or r does not belong to P, out(vatt) ←

max{out(vatt), height(w)}.

3. Ifvatthas degree 2 (after the removal), andvattis not the parent of a leaf neither the root in the current tree, andbranch(vatt) = 0, thenK←K\ {vatt}. Letw1, w2∈K be such that no internal vertices of the path P between w1 and w2 are in K and

vatt∈V(P). Then,P ←Contr(P). 4. AddC toF SC(v).

Lemma 8. F orgetN odecomputes a full set of (k, q)-characteristics ofAv restricted toXv.

5.3

Case of an join node.

We first explain how a labeled partitioning-tree (T, r, σ) ofA∪Band a labeled partitioning-tree (S, rS, σS) ofA∪Ccan be turned into a partitioning-tree ofA∪B∪C,A, BandCbeing three pairwise disjoint sets. The procedure merging two partitioning-trees (cf. Figure 5 in Appendix A) will be useful for a better understanding of ProcedureJoinN ode, and will be used in the proof of its correctness.

5.3.1 Merging of two labeled paths.

First, we present an operation that merges two labeled paths P = {v1,· · ·, vn} and

Q={w1, w2,· · ·, wm} with common ends, i.e.,v1=w1 andwm=vn, and vertex-disjoint otherwise. For anyi < n, ei ={vi, vi+1}, and for any i < m, fi ={wi, wi+1}. LetF :N×

N→N. LetP={p1,· · · , ph}be an extension ofP andQ∗={q1,· · · , qh}be an extension of Q with same length. A merging of P and Q using F is the labeled path {r1,· · ·, rh}, whereriis labeled byF(ℓ(pi), ℓ(qi)) and{ri, ri+1}is labeled byF(ℓ({pi, pi+1}), ℓ({qi, qi+1})) (cf. Figure 2 in Appendix A).

5.3.2 Merging of two partitioning-trees.

The key point in the operation of merging is that T and S must have some structure in common. More precisely, let (T′, r, σ) (resp., (S, r

S, σ′S)) be the partitioning-tree of A

obtained by taking the smallest subtree spanning the leaves of T (resp., S) that map the elements ofAand contracting all vertices of which with degree two and different from the root (T′, resp., S, is rooted in its vertex that is closest to r, resp., rS). We impose that

(T′, r, σ) and (S, r

S, σ′S) are isomorphic and thatr′S =rS.

Any (T∗, r, σ) built by the following procedure is a merging of (T, r, σ) and (S, rS, σS)

inA. (T∗, r, σ) is built as follows. Start with a copy of (T, r, σ) and a copy of (S, rS, σS).

For any vertexv ∈V(T′) =V(S), letv

1 be the corresponding vertex inT, andv2 be the corresponding vertex inS. Identifyv1 andv2, that is, replace both these vertices by a new onev∗ V(T) adjacent to the neighbours ofv

1andv2. For any{v, w} ∈E(T′), letv∗and

w∗ be the vertices built as above. Currently inT, there are two pathsPT (initially a path

(19)

v∗ and w. Compute a merging of PT and PS. Any vertex, resp., edge , of the resulting

path defines a partitionP ofA∪B∪C, label it with ΦA∪B∪C(P). Letr∗be the vertex that

results fromr′. Note that, a vertex vV(T) is a branching node in cp(T) if and only if v has been obtained from a branching node ofcp(T) orcp(S), or vhas been obtained from a vertex ofT with one non-leaf child and from a vertex ofS with one non-leaf child. 5.3.3 Procedure JoinN ode.

Letvbe a join node ofD, letu, wbe its children, letF SC(u) be a full set of characteristics ofAu restricted toXu, andF SC(w) a full set of characteristics ofAw restricted toXw.

ThestructureStruct(C) of a treeCis the tree obtained fromSk(C) by contracting all its

vertices with degree two, different fromr∗. For any characteristicC= ((T, r, σ), ℓ, K, dist, out, branch) F SC(u) and CS = ((S, rS, σS), ℓS, KS, distS, outS, branchS) ∈ F SC(w), with isomorphic

structures anddistS = 0, Procedure JoinN odeproceeds as follows. Roughly, it mergesC

andCS to obtainC∗= ((T, r, σ), ℓ, K, dist, out, branch).

1 Identifying the structures: For any vertex t∈V(Struct(T)) =V(Struct(S)), let

t1be the corresponding vertex inT, andt2be the corresponding vertex inS. Identify

t1 and t2, let t∗ be the resulting vertex. Note thatr andrS are identified, let r∗ be the resulting vertex. Letdist∗=dist.

2 Merging the paths: For any{x, y} ∈E(Struct(T)), let x∗ and ybe the vertices

built as above. Currently inT∗, there are two pathsPT (initially a path ofT) andPS

(initially a path of S) between x∗ and yand that are vertex-disjoint but in xand y∗. Any internal vertex, resp., edge , of both these paths defines the same partitionP

ofA. Compute a merging of PT andPS using the functionF : (i, j)→HΦ(i, j,P). 3 Updating ofK∗:Any vertexxinTresults fromx

1∈V(T) andx2∈V(S). LetK∗ be the set of vertices that result fromx1∈V(T) andx2∈V(S) with, eitherx1∈Kor

x2∈KS. For any x∗ ∈K∗,branch∗(x∗) =branch(x1)or branchS(x2)or(out(x1)> 0 &outS(x2)>0) andout∗(x∗) = max{out(x1), outS(x2)}.

4 Contracting the paths: ∀x, y∈K∗ with no internal vertices of the pathP between xandy are inK∗,P Contr(P).

5 Update of FSC(v): Letheight be the br-height of r∗ (computable thanks to the

variablesout∗andbranch). Ifdist+heightqand(v)kfor any internal vertex v∈V(T), andℓ∗(e)k for any edgeeE(T), thenF SC(v)F SC(v)∪ {C}.

Lemma 9. F SC(v)is a full set of(k, q)-characteristics ofAv=Au∪Aw restricted toXv.

References

[ACP87] Stefan Arnborg, Derek G. Corneil, and Andrzej Proskurowski. Complexity of finding

(20)

[AMNT07] Omid Amini, Fr´ed´eric Mazoit, Nicolas Nisse, and St´ephan Thomass´e. Submodular partition functions. Accepted in SIAM J. discrete Maths. Tech. Report, LABRI RR-1427-07, Univ. Bordeaux, Apr., 2007.

[Bie91] Daniel Bienstock. Graph searching, path-width, tree-width and related problems (a

survey). DIMACS Ser. in Discrete Mathematics and Theoretical Computer Science,

5:33–49, 1991.

[BK96] Hans L. Bodlaender and Ton Kloks. Efficient and constructive algorithms for the

path-width and treepath-width of graphs. J. Algorithms, 21(2):358–402, 1996.

[BKK95] Hans L. Bodlaender, Ton Kloks, and Dieter Kratsch. Treewidth and pathwidth of

permutation graphs. SIAM J. Discrete Math., 8(4):606–616, 1995.

[BM93] Hans L. Bodlaender and Rolf H. M¨ohring. The pathwidth and treewidth of cographs.

SIAM J. Discrete Math., 6(2):181–188, 1993.

[Bod93] Hans L. Bodlaender. A linear time algorithm for finding tree-decompositions of small

treewidth. InSTOC, pages 226–234, 1993.

[Bod96] Hans L. Bodlaender. A linear-time algorithm for finding tree-decompositions of small

treewidth. SIAM J. Comput., 25(6):1305–1317, 1996.

[BT97] Hans L. Bodlaender and Dimitrios M. Thilikos. Constructive linear time algorithms for

branchwidth. InICALP, pages 627–637, 1997.

[BT04] Hans L. Bodlaender and Dimitrios M. Thilikos. Computing small search numbers in

linear time. InIWPEC, pages 37–48, 2004.

[FFN07] Fedor V. Fomin, Pierre Fraigniaud, and Nicolas Nisse.

Nondeterminis-tic graph searching: From pathwidth to treewidth. Algorithmica, 2007.

http://dx.doi.org/10.1007/s00453-007-9041-6.

[FT08] Fedor V. Fomin and Dimitrios M. Thilikos. An annotated bibliography on guaranteed

graph searching. Theor. Comput. Sci., 399(3):236–245, 2008.

[MN08] Fr´ed´eric Mazoit and Nicolas Nisse. Monotonicity of non-deterministic graph searching.

Theoretical Computer Science, 399(3):169–178, 2008.

[Ree92] Bruce A. Reed. Finding approximate separators and computing tree width quickly. In

STOC, pages 221–228. ACM, 1992.

[RS83] Neil Robertson and Paul D. Seymour. Graph minors. i. excluding a forest. J. Comb.

Theory, Ser. B, 35(1):39–61, 1983.

[RS86] Neil Robertson and Paul D. Seymour. Graph minors. ii. algorithmic aspects of

tree-width. J. Algorithms, 7(3):309–322, 1986.

[RS91] Neil Robertson and Paul D. Seymour. Graph minors. x. obstructions to

tree-decomposition. J. Comb. Theory, Ser. B, 52(2):153–190, 1991.

[RS94] Neil Robertson and Paul D. Seymour. Graph minors. xi. circuits on a surface.J. Comb.

Theory, Ser. B, 60(1):72–106, 1994.

[RS04] Neil Robertson and Paul D. Seymour. Graph minors. xx. wagner’s conjecture.J. Comb.

Theory, Ser. B, 92(2):325–357, 2004.

[ST94] P. D. Seymour and R. Thomas. Call routing and the ratcatcher. Combinatorica,

(21)

[TSB00] Dimitrios M. Thilikos, Maria J. Serna, and Hans L. Bodlaender. Constructive linear

(22)

APPENDIX

A

Figures

ˆ In Figure 1, a 2-branched partitioning-tree (T, R, σ) of the set{a, b,· · ·, k, l}is

repre-sented. The vertexV ∈V(T) defines the partitionTV ={abf ghijkl, c, de},R∈V(T) defines TR = {abcde, f g, hijkl}, and the edge E ∈ E(T) defines the bi-partition

TE ={ab, cdef ghijkl}. The black vertices are the branching nodes ofcp(T).

E V R b a E c d V e f R g j i h k l

Figure 1: Partitioning-tree of{a, b,· · · , k, l}(left) and its corpse (right).

ˆ In Figure 2, we illustrate two labeled paths P and Q. The black vertices and bold

edges of P and Q are those that are represented in Contr(P) and Contr(Q). The vertices ofContr(P) andContr(Q) are named as the vertices they represent inP and

Q. We also illustrate an extension P∗ of P and an extension Qof Q. The black

vertices and bold edges ofP∗ andQare those inInit(P) andInit(Q). Finally, we

represent a merging ofP andQusing the functionF: (x, y)→x+y. When merging

P andQ, we assume they have same ends, i.e., a=a′ andh=e. The black vertices

and bold edges the mergingRare those inM atching(R).

ˆ In Figure 3, we illustrate the building of the restriction of a partitioning-tree (T, R, σ)

of A ={abcdef ghijkl} to B ={bcf}. T is represented to the left of Figure 3. The black vertices are the branching nodes of cp(T). We omit the labels of edges for a better readability.

The top-right figure represents the smallest subtree spanning the leaves ofT that map elements ofB(Step 1 of the building ofChar((T, R, σ), B)). At Step 2,dist∗= 1. The

vertices represented by a square are the vertices ofK∗ (Step 3). During Step 4, we set branch∗(Y) = branch(Z) = 1 and branch(R) =branch(X) =branch(W) = 0,

andout∗(Z) = 1 and out(R) =out(Y) =out(X) =out(W) = 0.

Finally, during Step 6, any pathP between two vertices in K∗, and with no internal

vertex in K∗ is replaced by Contr(P). The bottom-right figure represents the final

(23)

an extension of P an extension of Q (c,b’) (e,c’) f d’ (h,e’) b d g (a,a’) a merging of P and Q using function a b 3 2 1 h 3 g 5 f 5 4 e 0 1 0 d 1 1 c 1 1 1 1 1 4 4 Q 2 0 5 b’ c’ e’ a’ 2 2 2 2 2 2 2 2 0 0 2 5 5 d’ 6 2 2 a b c d e f g h 5 5 1 1 3 1 2 1 1 0 0 4 3 P Contr(P) a b 3 2 0 Contr(Q) a’ b’ c’ d’ e’ 0 6 2 2 2 2 5 a’ b’ 0 2 2 d’ e’ 6 5 f 5 3 h 5 3 1 4 3 3 3 3 3 1 0 3 2 7 6 10 9 10 8

+

Figure 2: Labeled paths: contraction, extension and merging.

b c f R* b a c f g k l j i h R b c f R* e d E Y J Z W X 2 3 1 5 3 2 5 5 3 3 2 2 2 2 3 5 3 1 X I Y J K Z W 2

Figure 3: Partitioning-tree (T, R, σ) of {abcdef ghijkl} (left) and Char((T, R, σ), B), its characteristic restricted to{bcf}(bottom-right).

ˆ Figure 4 (left) illustrates the procedure of insertion that turns the partitioning-tree

(T, R, σ) (Figure 3 left) into a partitioning-tree (S, RS, σS) of A∪ {m}. We choose to illustrate the case when the insertion is performed by subdividing an edge E =

{x, y} ∈E(T) (xis the parent ofy). The bold edges are the new edges. Moreover, we are in the case wheny is a leaf andxhas exactly one non-leaf child inT. Therefore,

xbecomes a branching node ofcp(S) in the new partitioning-tree.

Figure 4 (right) illustrates the same operation inChar((T, R, σ), B) (Figure 3 bottom-right). That is, Figure 4 (right) illustrates ProcedureIntroduceN odeexecuted on an introduce node v of a nice decomposition D, such that, v has one child u, Xv =

(24)

b a f g k l i h R e d j c m b R* f c m x Y J Z W X

Figure 4: Insertion of {m} in (T, R, σ) by subdividing E (left). Same operation in

Char((T, R, σ), B) (right).

ˆ Figure 5 represents the merging of a partitioning-tree (T, R, σ) ofA∪B={abcdef ghijkl}

(top-left) and a partitioning-tree (S, RS, σS) ofA∪C={bcf gmnopqrst} (top-right), with A = {bcf g}. The bold edges are the edges of the smallest subtrees T′ and S

(of T and S) spanning the leaves that map elements of A. The black vertices are the vertices of thecommonstructure StructofT andS obtained by contracting all degree-2 vertices ofT′ andS. Recall we also impose thatRS V(T).

The graph in the middle results of the identifying of the vertices in this common structure. Now, any edge inStructcorresponds to two paths in the current graph. We compute a merging of these paths. A possible result is illustrated Figure 5 (bottom).

B

On labeled paths.

Let Φ be a monotone partition function. Any partitioning-tree (T, σ) can be viewed as a labeled graph, where anyv∈V(T) is labeled with Φ(Tv) and anye∈E(T) is labeled with Φ(Te). Because Φ is monotone, the label of an edge is at most the label of its ends. In

this section, we detail operations over labeled paths, that will serve as subroutine in the forthcoming sections.

B.1

Labeled paths.

A labeled path P is a path{v0, v1,· · ·, vn} where any vertex vi is labeled with an integer

ℓ(vi), and any edgeei={vi−1, vi}with an integerℓ(ei). We assume moreover that the label of any edge is at most the minimum label of its ends.

A vertexvi∈V(P) or an edge{vi, vi+1} is smallest thanvj ∈V(P) ifi < j. Similarly

vi (resp.,{vi, vi+1}) is smallest than{vj, vj+1}ifi < j. We define max(P) as the maximum integer labeling an edge or a vertex of P. Similarly, we define min(P). Anextension of a labeled pathP is any path obtained by subdividing some edges ofP an arbitrary number of times. Both edges and the vertex resulting from the subdivision of an edgeeare labeled with

(25)

a c f g b c f g b k l j i h e d b f g c k l j i h e d a b f g c e d a k l j i h m n R’ o p t s r q R n p o m t s r q m t s r q n p o R’

Figure 5: Merging of a partitioning-tree (T, R, σ) of A∪ C = {abcdef ghijkl} and a partitioning-tree (S, RS, σS) ofB∪C={bcf gmnopqrst}, withC={bcf g}.

the vertices ofP∗ that do not result from the subdivision of an edge inP, and the edges of P∗the smallest end of which are inInit(P). Given two labeled pathsP andQ, we say that P ¹Qif there is an extensionP∗={p

1,· · ·, pr} ofP and an extensionQ∗ ={q1,· · · , qr} ofQwith same length, and such thatℓ(pi)≤ℓ(qi) andℓ({pi, pi+1})≤ℓ({qi, qi+1}) for any

i≤r. For any function F :NN, letF(P) denote the path{v0, v1,· · · , vn, vn+1} where any labelℓ has been replaced byF(ℓ). IfP ={v1,· · · , vn}and Q={w1,· · · , wm} are two labeled paths with a common endvn =w1and vertex disjoint otherwise, theirconcatenation

(26)

B.2

Contraction of a labeled path.

In this section, we define an operation on labeled paths that will be widely used in the next sections. For this purpose, we revisit the notion oftypical sequence of a sequence of integers [BK96]. Roughly, the goal of the following operation is to contract some edges and vertices of P that are not “necessary” to remember the variations of the sequence (ℓ(v0), ℓ(e1), ℓ(v1),· · ·, ℓ(en), ℓ(vn)).

First, let us recall the definition of the typical sequence of a sequence of integers [BK96]. Let S = (si)i≤2n−1 be a sequence of integers. Its typical sequence τ(S) is obtained by iterating the following operations while it is possible: (1) if there is i < |S| such that

si = si+1, remove si+1 from S, and (2) if there are i < j−1 <|S|, and either, for any

i ≤k ≤ j, si ≤sk ≤ sj, or, for any i ≤k ≤ j, si ≥sk ≥ sj, remove sk from S for any

i < k < j. Note that the order in which the operations are executed is not relevant, therefore

τ(S) is uniquely defined.

ThecontractionContr(P) is the path obtained fromP, with same ends, by contracting some edges and vertices obtained by the following procedure. Start with one integral variable

m= 1. While m6=n, do the following. Let i, m≤i≤n−1, be the greatest index such that, for any m ≤j ≤i, ℓ(em)≤ℓ(ej))≤ ℓ(vi) andℓ(em)≤ℓ(vj)) ≤ℓ(vi). Contract all vertices and edges betweene andvi. Then, set m to the greatest index such that, for any

i < j≤m,ℓ(vi)≥ℓ(ej)≥ℓ(em) andℓ(vi)≥ℓ(vj)≥ℓ(em). Contract all vertices and edges betweenvi andem. Edges and vertices ofContr(P) keep their initial label (cf. Figure 2 in Appendix A).

The crucial property ofContr(P) ={v0=v′0, v1′,· · ·, vp′−1, vp′ =vn}is that the sequence S′ = ((e

1), ℓ(v1′),· · · , ℓ(e′p−1), ℓ(vp′−1), ℓ(e′p)) (where e′i = {vi′−1, vi′}) is “almost” the

typi-cal sequence of the sequence S = (ℓ(e1), ℓ(v1),· · ·, ℓ(en)). More precisely, if ℓ(e′1)6=ℓ(v1′), then S′ = τ(S), otherwise ((v

1), ℓ(e′2),· · ·, ℓ(vp′−1), ℓ(e′p)) = τ(S) (τ(S) denotes the

typ-ical sequence of S). Moreover, it is important to note that any v ∈ V(Contr(P)) (e ∈ E(Contr(P)))representsa uniquev∗V(P) (eE(P)).

Lemma 1. LetP andQ be two labeled paths. LetP∗ be an extension ofP.

1. Contr(P∗) =Contr(P) =Contr(Contr(P)).

2. LetF :NNbe any strictly increasing function. Contr(F(Contr(P))) =Contr(F(P)).

3. If P¹Q, thenContr(P)¹Contr(Q).

4. Contr(P⊙Q) =Contr(Contr(P)⊙Contr(Q))

Lemma 2. Let P = {v0,· · ·, vn} be a labeled path and Contr(P) = {w0,· · · , wp}. Let

i≤p. LetContr′(P) ={w

0,· · ·, wi, x, wi+1,· · ·, wp}be the extension ofContr(P)obtained

by subdividing onceei ={wi, wi+1}. Let ei∗={vj, vj+1} be the edge ofP represented by ei,

andP′={v

0,· · · , vj, y, vj+1,· · · , vn}be the extension ofP obtained by subdividing oncee∗i.

Let Q1={w0,· · ·, x},Q2={x,· · ·, wp},P1′ ={v0,· · ·, y} andP2′ ={y,· · ·, vn}.

ThenContr(P′

References

Related documents

The threshold into the stadium is through a series of layers which delaminate from the geometry of the field to the geometry of the city and creates zones of separation,

• Follow up with your employer each reporting period to ensure your hours are reported on a regular basis?. • Discuss your progress with

On the other hand, many social work educators have considered issues of international field placements and student supervision in depth, and as education abroad offices place

4.1 The Select Committee is asked to consider the proposed development of the Customer Service Function, the recommended service delivery option and the investment required8. It

On top of the described test of universality and the extraction of TMD distributions, in this work we perform many additional studies of the TMD approach, some of which should be

information to reap an unfair benefit. Many of these donations were made at a time when it would have been illegal to make a sale of the same securities due to their access to this

This result is partially a consequence of lower confidence when rating the friend and canonical individual as well as smaller mean absolute distances between those two individuals

Moghaddam, Narges Shayesteh; Saedi, Soheil; Amerinatanzi, Amirhesam; Saghaian, Ehsan; Jahadakbar, Ahmadreza; Karaca, Haluk E.; and Elahinia, Mohammad, &#34;Selective Laser Melting