Split Decomposition and Circle Graph Recognition in Quasi-Linear Time
Christophe Paul
CNRS - LIRMM - Universit´e Montpellier II, France
March 25, 2009
Joint work with D. Corneil(U. of Toronto),E. Gioan(CNRS LIRMM) andM. Tedder(U. of Toronto)
Graph-labeled tree (GLT)
I a pair (T,F) withT a tree andF a set of graphs
I each nodev of degreek ofT is labelled by a graphGv ∈ F
I a bijectionρv from the tree-edges incident tov toV(Gv)
8 2
3
4
5 6
1
7
Accessiblity graph of a GLT
Given a GLT (T,F), define the graphG(T,F) with
I vertex set of G(T,F) = set of leaves ofT
I xy is an edge iffρv(uv)ρv(vw)∈E(Gv) for all tree-edgesuv, vw on thex,y-path inT
6 2
3
4
5 6
1
7
8 4
3
1 2
8
7
5
A split in a graph
G= (V
,E) is a bipartition (A,
B) ofVst.
I |A|>2,|B|>2 and
I forx∈A, y∈B,xy∈E iffx ∈N(B) andy ∈N(A)
2
3
4
5 6
1
7
8 4
3
1 2
8
7
5 6
Every edgeof a GLT defines asplit
N(q) N(r)
1
2 3
4 5
split
join 1 q
2
5 r
3
4
Theorem [Cunnigham’82 reformulated]
For any connected graphG, there exists a unique graph-labelled tree ST(G) = (T,F) with a minumun number of nodes such that
I G =G(T,F),
I any graph ofF is primeordegenerate.
Prime Degenerate
Vertex incremental characterization
A vertexx is added to a graph G = (V,E) with neighborsS ⊆V. (S is represented inred)
I How to compute the split treeST(G+ (x,S)) fromST(G) ?
States of marker vertices
Letqbe marker vertex (or a leaf)
LetL(q) be the set of leavesl such that the path betweenl andq contains the edge of the tree associated withq
I q isemptyifL(q)∩S =∅
I q isperfectif every leaf inL(q)∩S is accessible fromq
I q ismixedotherwise
q
States of marker vertices
Letqbe marker vertex (or a leaf)
LetL(q) be the set of leavesl such that the path betweenl andq contains the edge of the tree associated withq
I q isemptyifL(q)∩S =∅
I q isperfectif every leaf inL(q)∩S is accessible fromq
I q ismixedotherwise
E
E
E E E
E
States of marker vertices
Letqbe marker vertex (or a leaf)
LetL(q) be the set of leavesl such that the path betweenl andq contains the edge of the tree associated withq
I q isemptyifL(q)∩S =∅
I q isperfectif every leaf inL(q)∩S is accessible fromq
I q ismixedotherwise
P E
E
E E
E E
P P
P
P P
States of marker vertices
Letqbe marker vertex (or a leaf)
LetL(q) be the set of leavesl such that the path betweenl andq contains the edge of the tree associated withq
I q isemptyifL(q)∩S =∅
I q isperfectif every leaf inL(q)∩S is accessible fromq
I q ismixedotherwise
M E E
P P
P P
P
E E
E E
P M
M M
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
P P
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
P P
x
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
I 2 -T has an edgee, one extremity of which is perfect and the other empty
P E
x
I 3 - T has afully-mixednodeu
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu
every marker vertex adjacent to the nodeuis mixed
M M
M
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu(the set of fully-mixed nodes is a subtree ofT)
Make a join
E E
M
P P M M
M
M M
M M
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu(the set of fully-mixed nodes is a subtree ofT)
E E
P P
Vertex Incremental Characterization
The split tree ofG+ (x,S) is obtained from ST(G) by 3 cases:
I 1 - T has an edgeewhose extremities are perfect
I 2 -T has an edgee, one extremity of which is perfect and the other empty
I 3 - T has afully-mixednodeu(the set of fully-mixed nodes is a subtree ofT)
Prime node unless x has a twin x
E E
P P
Theorem: the incremental split decomposition algorithm runs in
O((n +
m)α(n,m))Ingredients for the complexity analysis
I
the vertex insertion ordering has to be a
LexBFSordering
I
a carefully amortizing analysing based on
discharging techniquesPrevious results
I
[Cunningham 1982]
O(nm)
I
[Ma, Spinrad 1994]
O(n2)
I
[Dahlhaus 2000]
O(n+
m) (tough !)I
[Charbit, De Montgolfier, Raffinot 2009]
O(n+
m) (today)Application to circle graphs recognition
I Acircle graph is the intersection graph of chords in a circle.
I A graph is circleiff all the prime nodes of its split tree are circle graphs
I A circle graph is prime for the split decomposition iff it has a unique (up to mirror) realizer
Application to circle graphs recognition
I Acircle graph is the intersection graph of chords in a circle.
I A graph is circleiff all the prime nodes of its split tree are circle graphs
2
3
4
5 6
1
7 8
5 6
1
7 8 2
3
4
I A circle graph is prime for the split decomposition iff it has a unique (up to mirror) realizer
Application to circle graphs recognition
I Acircle graph is the intersection graph of chords in a circle.
I A graph is circleiff all the prime nodes of its split tree are circle graphs
I A circle graph is prime for the split decomposition iff it has a unique (up to mirror) realizer
Application to circle graphs recognition
I Acircle graph is the intersection graph of chords in a circle.
I A graph is circleiff all the prime nodes of its split tree are circle graphs
I A circle graph is prime for the split decomposition iff it has a unique (up to mirror) realizer
Extreme chord - vertex
A vertexx is extremeif its chordc(x) cut the realizer in a way that the chords of all the non-neighors ofx are either all on the right or all on the left ofc(x).
First LexBFS Lemma
LetG be a circle graph andσbe a LexBFS ordering ofG ending atx.
Then there exists a realizer ofG in which the chordc(x) is extreme.
1 1
3 4
5
2 7
6
8
7
6 8 5
4 2 3
First LexBFS Lemma
LetG be a circle graph andσbe a LexBFS ordering ofG ending atx.
Then there exists a realizer ofG in which the chordc(x) is extreme.
1 1
3 4
5
2 7
6
8
7
6 8 5
4 2 3
I Consequence: we know in constant time where to insertx in a given realizer of G.
I Butmany realizers unless prime
A second LexBFS Lemma
Letσbe a LexBFS ordering ofG =GS(T,F). The”induced”ordering σu of the marker vertices ofGu is a LexBFS ordering.
8 1
3 4
5
2 7
6
8
1
3 4
2 5
7 8
6 2
6
5 7
A second LexBFS Lemma
Letσbe a LexBFS ordering ofG =GS(T,F). The”induced”ordering σu of the marker vertices ofGu is a LexBFS ordering.
8 1
3 4
5
2 7
6
8
1
3 4
2 5
7 8
6 2
6
5 7
I consequence: we can apply the first LexBFS lemma on each node of the split tree.
I what remains to do ?
handle the merging of the fully-mixed nodes before insertion.
A second LexBFS Lemma
Letσbe a LexBFS ordering ofG =GS(T,F). The”induced”ordering σu of the marker vertices ofGu is a LexBFS ordering.
8 1
3 4
5
2 7
6
8
1
3 4
2 5
7 8
6 2
6
5 7
I consequence: we can apply the first LexBFS lemma on each node of the split tree.
I what remains to do ?
handle the merging of the fully-mixed nodes before insertion.
Circle graph recognition - ingredients
1. Insert vertices with respect to a LexBFS ordering.
2. Maintain the split tree in which each prime node are represented by its realizer.
3. Proceed the merging step on the realizers of the fully-mixed nodes according to the LexBFS Lemmas.
⇒need some small tricks for realizer representation
Circle graph recognition - ingredients
1. Insert vertices with respect to a LexBFS ordering.
2. Maintain the split tree in which each prime node are represented by its realizer.
3. Proceed the merging step on the realizers of the fully-mixed nodes according to the LexBFS Lemmas.
⇒need some small tricks for realizer representation
Theorem: The circle graph recognition problem can be solved in time O((n+m)α(n,m))
→Previous complexity: O(n2) [Spinrad, J. of Alg. (16), 1994]
Thank you...
I Int. Workshop on Graph Theoretical Concepts in Computer Science WG 2009
Montpellier, June 24-26th http://www.lirmm.fr/wg2009/
I Spring School on Fixed Parameter and Exact Algorithms AGAPE 2009
May 25-29, Lozari, Corsica
http://www-sop.inria.fr/mascotte/seminaires/AGAPE/