A polynomial time algorithm for
bounded directed pathwidth
Hisao Tamaki
Meiji University
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Undirected
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
*π’, π£+
some π
---------- edge (π’, π£) there is a pair π β€ π such
2. for each directed
that π’, π£ β ππ π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
1. for each π£ β π(πΊ) , πΌπ£ = π π£ β ππ + is a single nonempty interval
2. for each directed edge (π’, π£) there is a pair π β€ π such
that π’ β ππ and π£ β ππ
Directed pathwidth/decomposition
A directed path-decomposition of
πΊ
f
π1
π2
π3
π4
π5
f
c
e
d
a
g
g
g
g
b
πΊ
b
e
c
a
g
d
ππ©π°(πΊ) = 1
width = 1
The width of a directed path-decomposition is
πππ₯π |ππ | - 1.
The directed pathwidth of πΊ is the minimum π€ such that
there is a directed path-decomposition of πΊ of width π€.
Observation 1
The problem of deciding the directed-pathwidth is a
generalization of that of deciding the pathwidth.
πΊ: undirected graph
πΊβ: digraph with a pair of anti-parallel edges for each edge of πΊ
πΊ
ππ
π’
πΊβ
πβ€π
ππ
πβ€π
π£
The condition for a path-decomposition of πΊ
= the condition for a directed path-decomposition of πΊβ²
Observation 2
A directed path decomposition represents a linear system
of dicuts.
ππ
ππ+1
π
Observation 2
A directed path-decomposition represents a linear system
of dicuts of size at most the width.
π>π
πβ€π
π£
ππ
ππ+1
π
π’
Some facts on directed pathwidth
Introduced by Reed, Seymour, and Thomas in mid 90βs.
Relates to directed treewidth [Johnson, Robertson, Seymour
and Thomas 01], D-width [Safari 05], Dag-width
[ Berwanger, Dawar, Hunter & Kreutzer 05, Obdrzalek 06],
and Kelly-width[Hunter & Kreutzer 07] as pathwidth relates
to treewidth.
For digraphs of directed pathwidth π€, some problems including
directed Hamiltonian cycle can be solved in ππ(π€) time
[JRST01] .
Used in a heuristic algorithm for enumerating attractors of
boolean networks [Tamaki 10].
Complexity
Input: positive integer k and graph (digraph) G
Question: Is the (directed) pathwidth of G at most k ?
NP-complete for the undirected case [Kashiwabara & Fujisawa
79] and hence for the directed case.
Undirected pathwidth is fixed parameter tractable:
π π ππ(1) time: graph minor theorem
π π3
2
π time: [Bodlaender 96, Bodlaender & Kloks 96]
Directed pathwidth is open for FPT
Even for k = 2, no polynomial time was previously known.
Result
An π πππ+1 time algorithm for deciding if the
directed pathwidth is β€ π (and constructing the
associated decomposition) for a digraph of π
vertices and π edges.
Note This algorithm is extremely simple, easy to
implement, and useful even for undirected
pathwidth/-decomposition
(the linear time algorithm of Bodlaender depends
exponentially on k 3)
Notation
πΊ : digraph, fixed
π = π πΊ
π = πΈ πΊ
β
π π = π’ β π π’, π£ β πΈ πΊ , π£ β π +
: set of in-neighbors of π οπ(πΊ)
β
β
π (π) = |π (π)| : in-degree of π οπ(πΊ)
Ξ£(πΊ ): the set of all non-duplicating sequences of
vertices of πΊ
π (Ο) : the set of vertices appearing in Ο οS(G )
Directed vertex separation number
A vertex sequence π β Ξ£ πΊ is π-feasible if
πβ π Ο
β€ π for every prefix Ο of Ο.
The directed vertex separation number of G :
dvsn(G )
= min π π β Ξ£ πΊ : π π = π(πΊ)and Ο is π-feasible+
Fact: dvsn(G ) = dpw(G )
The conversion from a vertex separation sequence to a
directed path-decomposition is straightforward.
Search tree for k-feasible sequences
πΊ
{} 0
π=2
b
d
c
{a} 2 {b} 1 {c} 2 {d} 2 {e} 2
a
e
{a,b} 2 {a,c} 4 {a,d} 3 {a,e} 3
{d,e} 2
{a,b,c} 3 {a,b,c} 3 {a,b,d} 3 {a,b,e} 3 {c,d,e} 1
Vertex sets in the search
tree are feasible.
Those leading to a solution
are strongly feasible.
{b,c,d,e} 0
{a,b,c,d,e} 0
Commitment: a special case
ππ
Adding π£ does not increase the indegree.
πβͺ π£
β€π
Is it safe to commit to this child?
In other words, is it true that
if π is strongly feasible then π βͺ π£ is?
Commitment: a special case
ππ
Adding π£ does not increase the in-degree.
πβͺ π£
β€π
Is it safe to commit to this child?
In other words, is it true that
if π is strongly feasible then π βͺ π£ is?
YES, in a more genral form
Commitment in general form
ππ
πβ²
>π
π
β€π
First decsendant with the same or smaller
in-degree.
Commitment lemma
Let π β π both feasible and suppose:
1. π β π β€ π β π ,
2. π β πβ² > π β π for every feasible proper
superset π β² of π strictly smaller than π, and
3. π is strongly feasible.
Then π is strongly feasible.
Search tree pruning based on commitment
When a node has a descendant to which it can commit,
all other descendants are removed from the tree.
Effectively, branching occurs only when the in-degree
increases.
The pruned tree behaves like a depth π tree in a
fuzzy sense.
Can show, with some technicality, that the size of the
pruned tree is at most ππ+1 .
Proof of the commitment lemma
Fact:
β
The in-degree function π is submodular:
for every pair of subsets π, π β π (πΊ ),
β
β
β
β
π π + π π β₯ π (π β© π ) + π (π βͺ π )
Proof of the commitment lemma
Step 1:
Let π and π as in the lemma. Then, π
β
β
π β€ π (π)
holds for every π such that π ο π ο π. (Even if π is not
feasible.)
Step 2:
Using the condition established in Step 1, derive the
strong feasibility of π from that of π.
Step 2 of the proof
Assumptions:
π β π,
π is strongly feasible, π is feasible, and
β
β
π π β€ π (π) for every π such that π ο π ο π.
Goal: π is also strongly feasible
π
π
Step 2 of the proof
Assumptions:
π is strongly feasible, π is feasible, and
β
β
π π β€ π (π) for every π such that π ο π ο π.
Goal: π is also strongly feasible
π
π
π : π-feasible
Step 2 of the proof
Assumptions:
π is feasible, and
β
β
π π β€ π (π) for every π such that π ο π ο π.
Goal: πΌ is π-feasible
π
π
π : π-feasible
πΌ
Step 2 of the proof
Assumptions:
π is feasible, and
β
β
π π β€ π (π) for every π such that π ο π ο π.
Goal: πΌ is π-feasible
π
π
π : π-feasible
π-feasible
πΌ
Step 2 of the proof
β
β
π π β€ π (π) for every π such that π ο π ο π.
β
Goal:π π΄ β€ π for each superset π΄ of π that is the vertex
set of some prefix of πΌ
π
π
π : π-feasible
π΄
πΌ
Step 2 of the proof
β
β
π π β€ π (π) for every π such that π ο π ο π.
β
Goal: π π΄ β€ π
π΅: the vertex set of the minimal prefix ofπ such that
π΅βπ =π΄βπ
π΅
π : π-feasible
π΄
πΌ
Step 2 of the proof
β
β
π π β€ π (π) for every π such that π ο π ο π.
β
Goal: π π΄ β€ π
By submodularity:
β
β
β
π
β
π΄
π π + π π΅ β₯ π (π β© π΅) + π (π βͺ π΅)
π΅
π : π-feasible
π΄
πΌ
Step 2 of the proof
β
β
π π β€ π (π) for every π such that π ο π ο π.
β
Goal: π π΄ β€ π
By submodularity:
β
β
β
π
β
π΄
π π + π π΅ β₯ π (π β© π΅) + π (π βͺ π΅)
β
β€π
β₯π π
π΅
π : π-feasible
π΄
πΌ
Step 2 of the proof
β
Goal: π π΄ β€ π : established
β πΌ is π-feasible β π is strongly feasible
By submodularity:
β
β
β
π
β
π΄
π π + π π΅ β₯ π (π β© π΅) + π (π βͺ π΅)
β
β€π
β₯π π
π΅
π : π-feasible
π΄
πΌ
Open problems
Is directed-pathwidth FPT, i.e., has an π π ππ(1) time
algorithm?
Are directed-treewidth, D-width, Dag-width, and
Kelly-width in XP, i.e., has an ππ π time algorithm?
More applications?
© Copyright 2025 Paperzz