A linear time algorithm for finding a K5-model

A linear time algorithm for
recognizing a K5-minor
Bruce Reed
Zhentao Li
Definitions
K5
K5-model
Connectivity
G2
G1
G3
Wagner’s theorem for K5
A 3-connected graph without a K5-model
or a cut of size 3 which splits it into at least
3 components is either planar or L
L
K5 minor
containment
Construction
of 1-cut, 2-cut,
and (3,3)-cut
decomposition
K5 minor
containment
in “highly”
connected
graphs
K5 minor
containment
Construction
K5 minor
of 1-cut, 2-cut,
containment
and (3,3)-cut
in “highly”
1 and (3,3)-cut Test
Test if the
decomposition
connected
2-cuts decomp planarity
graph is L
graphs
(HT73)
(HT74)
Finding a (3,3)-block tree
Some assumptions
• G is 3-connected
• G has no K5-minor
• |E(G)|<64|V(G)| (RS95)
Properties
• Unique (not K3,3)
(3,3)-cut
• Linear size
(3,3)-block tree
A recursive algorithm
• Use brute force if the graph is small.
• Otherwise, build a smaller graph to
recurse on.
G
>e|V(G)|
vertices
H
Running time:
|V(G)|[1+(1-e)+(1-e)2
+(1-e)3+…]=O(|V(G)|)
Building a smaller graph by:
Removing degree 3 vertices
Common
neighbours
Rest
of the
graph
Common
neighbours
Common
neighbours
Building a smaller graph by:
Contracting a matching
G
•Induced
•Low degree vertices
•Size > e|V(G)|
H
•Resulting graph is
3-connected
Building a smaller graph by:
Contracting a matching
(3,3)-block tree for H
(3,3)-block tree for G
Building a smaller graph by:
Contracting a matching
1
(2,4)
(1,7)
(2,8)
(7,9)
(6,9)
(4,5)
4
(1,6)
1
2
(1,3)
(7,9)
1
2
32
3
5
5
3
4
4
7
5
6
8
6
9
9
9
G
8
8
7
6
7
H