116
Algorithms for graph visualization Divide and Conquer - Series-Parallel Graphs WINTER SEMESTER 2013/2014 Tamara Mchedlidze –MARTIN OLLENBURG www.kit.edu KIT – Universit¨ at des Landes Baden-W ¨ urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithms for graph visualizationDivide and Conquer - Series-Parallel Graphs

WINTER SEMESTER 2013/2014

Tamara Mchedlidze – MARTIN NOLLENBURG

www.kit.eduKIT – Universitat des Landes Baden-Wurttemberg und

nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Page 2: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel GraphsGraph G is series-parallel, if

Series composition:Identify t1 and s2,s1 is the source of G, t2 is the sink of G

Parallel composition:Identify s1, s2 and set it to be source of GIdentify t1, t2 and set it to be sink of G

s

t

s1

t1 = s2

t2

s1 = s2

t1 = t2

ss It consists of two series-parallel graphs G1, G2 with sources s1, s2 andsinks t1, t2 which are combined using one of the following rules:

ss It contains a single edge (s, t) (s-source, t-sink)

G1

G2

G1 G2

Page 3: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Tree.

In order to proof this statement we can use a decomposition tree of G,which is a binary tree T with nodes of three types: S,P and Q-type.

LemmaSeries-parallel graphs are acyclic and planar.

Page 4: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Tree.

In order to proof this statement we can use a decomposition tree of G,which is a binary tree T with nodes of three types: S,P and Q-type.

LemmaSeries-parallel graphs are acyclic and planar.

ss If G is a single edge, then the corresponding node is Q-node

Q

Page 5: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Tree.

In order to proof this statement we can use a decomposition tree of G,which is a binary tree T with nodes of three types: S,P and Q-type.

LemmaSeries-parallel graphs are acyclic and planar.

ss If G is a single edge, then the corresponding node is Q-nodess If G is a parallel composition of G1 (with tree T1) and G2 (with tree T2), then theroot of T is P-node and T1 is its left subtree, T2 is its right subtree

Q G1 G2

P

T1 T2

Page 6: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Tree.

In order to proof this statement we can use a decomposition tree of G,which is a binary tree T with nodes of three types: S,P and Q-type.

LemmaSeries-parallel graphs are acyclic and planar.

ss If G is a single edge, then the corresponding node is Q-nodess If G is a parallel composition of G1 (with tree T1) and G2 (with tree T2), then theroot of T is P-node and T1 is its left subtree, T2 is its right subtreess If G is a series composition of G1 (with tree T1) and G2 (with tree T2), then the rootof T is S-node and T1 is its left subtree, T2 is its right subtree

Q G1 G2

P

T1 T2

S

T1 T2G1

G2

Page 7: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

Page 8: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

Page 9: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

Page 10: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

Page 11: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

Q Q

Page 12: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

Q Q

QQ

Page 13: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

S

Q Q

QQ

Q

Page 14: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

S

S

Q Q

QQ

Q

Q

Page 15: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

S

S

P

Q Q

QQ

Q

Q

Page 16: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

S

S

P

SQ Q

QQ

Q

Q

Q Q

Page 17: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Decomposition Example.

P

P

S

S

S

S

P

SSQ Q

QQ

Q

Q

Q Q Q Q

Page 18: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Applications.

Flowcharts PERT-Diagrams(Program Evaluation and Review Technique)

Page 19: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Series-parallel Graphs. Applications.

Flowcharts PERT-Diagrams(Program Evaluation and Review Technique)

Computational Complexity: Linear time algorithms for NP-hard problems(e.g. Maximum Matching, Maximum Independent Set, Hamiltonian Comple-tion)

Page 20: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

Page 21: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

Page 22: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

Page 23: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

Page 24: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

Page 25: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

Page 26: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

change embedding!

Page 27: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

change embedding!

Page 28: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

change embedding!

Page 29: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphs

ss Q-Nodes (Induction base):

s

t

ss S-Nodes (series composition)

s

t

∆(G2)

∆(G1)

ss P-Nodes (parallel composition)

t

s

∆(G1)

∆(G2)

ss Draw graph G inside a right-angled isosceles bounding triangle ∆(G) G

∆(G)

change embedding!

Page 30: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

s

Page 31: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

s

Page 32: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

s

Page 33: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

s

Page 34: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

s

Page 35: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

Page 36: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

does not contain any vertex

Page 37: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

does not contain any vertexss This condition can be preserved during the induction step.

Page 38: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

does not contain any vertexss This condition can be preserved during the induction step.

ss The area of the drawing is?

Page 39: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

does not contain any vertexss This condition can be preserved during the induction step.

ss The area of the drawing is? O(m2),m is the number of edges

Page 40: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Straight-line Drawing of SP-Graphsss What makes parallel composition possible without creating crossings?

t

sπ4

does not contain any vertexss This condition can be preserved during the induction step.

ss The area of the drawing is? O(m2),m is the number of edges

TheoremA series-parallel graph G (with variable embedding) admits an upward straigh-linedrawing with O(n2) area. The isomorphic componencts of G have congruent drawingsup to a translation.

Page 41: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 42: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 43: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 44: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 45: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 46: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 47: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 48: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 49: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

Π

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

Page 50: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

Π

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

ss We have that: Area(Π) > 2 ·Area(Gn)

Page 51: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

ΠΠ

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

ss We have that: Area(Π) > 2 ·Area(Gn)

Page 52: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

ΠΠ

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

ss We have that: Area(Π) > 2 ·Area(Gn)

Page 53: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

ΠΠ

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

ss We have that: Area(Π) > 2 ·Area(Gn)ss Area(Gn+1) ≥ 2 ·Area(Π)

Page 54: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Lower Bound for the Area

Proof:

G0

s0

t0

Gn+1

Gn

sn+1

sn

tn

tn+1

Gn

sn

tn

sn−1

sn+1

tn+1

∆1

∆2

ΠΠ

Theorem [Bertolazzi et al. 94]There exists a 2n-vertex series-parallel graph Gn such that any upward pla-nar drawing of Gn respecting embedding requires area Ω(4n).

ss We have that: Area(Π) > 2 ·Area(Gn)ss Area(Gn+1) ≥ 2 ·Area(Π)ss Area(Gn+1) ≥ 4 ·Area(Gn)

Page 55: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

Page 56: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

Page 57: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

Page 58: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

Page 59: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

a b c d

e

f

g

h

Page 60: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

a b c d

e

f

g

hss Graph G = (a, b, c, d, e, f, g, h,(a, h), (a, e), (b, g), (b, f), (c, g), (c, f), (d, e),(d, h), (e, f), (h, g))

Page 61: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

a b c d

e

f

g

hss Graph G = (a, b, c, d, e, f, g, h,(a, h), (a, e), (b, g), (b, f), (c, g), (c, f), (d, e),(d, h), (e, f), (h, g))

ss Let G′ be G where b→ c→ b, a→ d→ a.

Page 62: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Property of the Algorithm

Algorithm

nicer???

a b c d

e

f

g

hss Graph G = (a, b, c, d, e, f, g, h,(a, h), (a, e), (b, g), (b, f), (c, g), (c, f), (d, e),(d, h), (e, f), (h, g))

ss Let G′ be G where b→ c→ b, a→ d→ a.

ss G and G′ are isomorphic.

Page 63: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Graph AutomorphismDefinition: Automorphism of a digraph

An automorphism of a directed graph G = (V,E) is a permutation of the vertex setwhich preserves adjacency of the vertices and either preserves or reverses all thedirections of the edges:ss (u, v) ∈ E ⇔ (π(u), π(v)) ∈ E, orss (u, v) ∈ E ⇔ (π(v), π(u)) ∈ E

Page 64: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Graph Automorphism

ss The set of all automorphisms (direction preserving and reversing)forms the automorphism group of G.

Definition: Automorphism of a digraphAn automorphism of a directed graph G = (V,E) is a permutation of the vertex setwhich preserves adjacency of the vertices and either preserves or reverses all thedirections of the edges:ss (u, v) ∈ E ⇔ (π(u), π(v)) ∈ E, orss (u, v) ∈ E ⇔ (π(v), π(u)) ∈ E

Page 65: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Graph Automorphism

ss The set of all automorphisms (direction preserving and reversing)forms the automorphism group of G.

Definition: Automorphism of a digraphAn automorphism of a directed graph G = (V,E) is a permutation of the vertex setwhich preserves adjacency of the vertices and either preserves or reverses all thedirections of the edges:ss (u, v) ∈ E ⇔ (π(u), π(v)) ∈ E, orss (u, v) ∈ E ⇔ (π(v), π(u)) ∈ E

ss Finding an automorphism group of a graph is isomorphismcomplete, that is equivalent to testing whether two graphs areisomorphic.

Page 66: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Graph Automorphism

ss The set of all automorphisms (direction preserving and reversing)forms the automorphism group of G.

Definition: Automorphism of a digraphAn automorphism of a directed graph G = (V,E) is a permutation of the vertex setwhich preserves adjacency of the vertices and either preserves or reverses all thedirections of the edges:ss (u, v) ∈ E ⇔ (π(u), π(v)) ∈ E, orss (u, v) ∈ E ⇔ (π(v), π(u)) ∈ E

ss Finding an automorphism group of a graph is isomorphismcomplete, that is equivalent to testing whether two graphs areisomorphic.ss For planar graphs, graphs with bounded degree isomorphismproblem has polynomial-time algorithms.

Page 67: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Geometric Automorphism

12

3 4

1

2 3

4

123

4 5

ss Different types of automorphism:

Page 68: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Geometric Automorphism

Automorphism 1 → 2 → 3 → 4 →1 is geometrically representable, while1 → 2 → 3 → 1 is not.

Automorphism 1 → 2 → 3 →1 is geometrically representable, while1 → 2 → 3 → 4 → 1 is not.

Automorphism 1 → 2 → 3 → 1,4 → 5 → 4 is not geometrically rep-resentable.

12

3 4

1

2 3

4

123

4 5

ss Different types of automorphism:

Page 69: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Geometric Automorphism

ss An automorphism group P of a graph is geometric, if there exists adrawing of G that displays each element of P as a symmetry.ss For general graphs it is NP-hard to find a geometric automorphismof a graph.ss For planar graphs, planar geometric automorphisms can be found inpolynomial time. For outerplanar graphs and trees in linear time.

Automorphism 1 → 2 → 3 → 4 →1 is geometrically representable, while1 → 2 → 3 → 1 is not.

Automorphism 1 → 2 → 3 →1 is geometrically representable, while1 → 2 → 3 → 4 → 1 is not.

Automorphism 1 → 2 → 3 → 1,4 → 5 → 4 is not geometrically rep-resentable.

12

3 4

1

2 3

4

123

4 5

ss Different types of automorphism:

Page 70: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert

u

v

π(u)

π(v)

Page 71: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor

u

v

π(u)

π(v)

u

v

π(u)

π(v)

Page 72: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor πrot

u

v

π(u)

π(v)

u

v

π(u)

π(v)

u

v

π(u)

π(v)

Page 73: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor πrot πvert, πhor, πrot

u

v

π(u)

π(v)

u

v

π(u)

π(v)

u

v

π(u)

π(v)

Page 74: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor πrot πvert, πhor, πrot

u

v

π(u)

π(v)

u

v

π(u)

π(v)

u

v

π(u)

π(v)

ss A geometric automorphism group P of a graph G is upward planar, if there existsan upward planar drawing of G that displays each element of P as a symmetry.

Page 75: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor πrot πvert, πhor, πrot

u

v

π(u)

π(v)

u

v

π(u)

π(v)

u

v

π(u)

π(v)

ss A geometric automorphism group P of a graph G is upward planar, if there existsan upward planar drawing of G that displays each element of P as a symmetry.ss How does a geometric automorphism group for a series-parallel graph look like?

Page 76: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Symmetries in SP-Graphsπvert πhor πrot πvert, πhor, πrot

u

v

π(u)

π(v)

u

v

π(u)

π(v)

u

v

π(u)

π(v)

Theorem (Hong, Eades, Lee ’00)

An upward planar automorphism group of a series-parallel digraph is eitherss idss id, π with π ∈ πvert, πhor, πrotss id, πvert, πhor, πrot.

Page 77: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

P

P

S

S

S

S

P

SSQ Q

QQ

Q

Q

Q Q Q Q

Page 78: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

P

P

S

S

S

S

P

SSQ Q

QQ

Q

Q

Q Q Q Q

Page 79: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

P

P

S

S

S

S

P

SSQ Q

QQ

Q

Q

Q Q Q Q

Page 80: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

Page 81: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

PP

code = 1 code=1code = 2

ss code(G) - two graphs at the samelevel have the same code iff theyare isomorphicss tuple(G) - codes of the children

Page 82: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

PP

code = 1 code=1code = 2

tuple(G) =< 1, 1, 2 >

ss code(G) - two graphs at the samelevel have the same code iff theyare isomorphicss tuple(G) - codes of the children

Page 83: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

PP

code = 1 code=1code = 2

tuple(G) =< 1, 1, 2 >

Why sorted?

ss code(G) - two graphs at the samelevel have the same code iff theyare isomorphicss tuple(G) - codes of the children

Page 84: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

PP

code = 1 code=1code = 2

tuple(G) =< 1, 1, 2 >

Why sorted?

compare :(

ss code(G) - two graphs at the samelevel have the same code iff theyare isomorphicss tuple(G) - codes of the children

1 1 222 3 3 3< > < 3 2 2 1 1 3 3 3 >

Page 85: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

PP

code = 1 code=1code = 2

tuple(G) =< 1, 1, 2 >

Why sorted?

ss code(G) - two graphs at the samelevel have the same code iff theyare isomorphicss tuple(G) - codes of the children

compare :)

Page 86: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismAlgorithm constructing a Canonical Labeling

ss Set tuple(Gi) = 〈0〉 for all Q-nodes Gi of G.ss For each t = max depth(G), . . . , 0ss For each S- or P-node G′ at depth t with children G1, . . . , Gkset tuple(G′) = 〈code(G1), . . . , code(Gk)〉. If G′ is a P-node,sort tuple(G′) in non-decreasing order.ss Sort all the nodes at depth t lexicografically according to tuples.ss For each component G′ at depth t, compute code(G′) as fol-lows. Assign the integer 1 to those components representedby the first distinct tuple, assign 2 to the components with thesecond type of tuple, and etc.

Page 87: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismAlgorithm constructing a Canonical Labeling

ss Set tuple(Gi) = 〈0〉 for all Q-nodes Gi of G.ss For each t = max depth(G), . . . , 0ss For each S- or P-node G′ at depth t with children G1, . . . , Gkset tuple(G′) = 〈code(G1), . . . , code(Gk)〉. If G′ is a P-node,sort tuple(G′) in non-decreasing order.ss Sort all the nodes at depth t lexicografically according to tuples.ss For each component G′ at depth t, compute code(G′) as fol-lows. Assign the integer 1 to those components representedby the first distinct tuple, assign 2 to the components with thesecond type of tuple, and etc.

Page 88: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismAlgorithm constructing a Canonical Labeling

ss Set tuple(Gi) = 〈0〉 for all Q-nodes Gi of G.ss For each t = max depth(G), . . . , 0ss For each S- or P-node G′ at depth t with children G1, . . . , Gkset tuple(G′) = 〈code(G1), . . . , code(Gk)〉. If G′ is a P-node,sort tuple(G′) in non-decreasing order.ss Sort all the nodes at depth t lexicografically according to tuples.ss For each component G′ at depth t, compute code(G′) as fol-lows. Assign the integer 1 to those components representedby the first distinct tuple, assign 2 to the components with thesecond type of tuple, and etc.

Page 89: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismAlgorithm constructing a Canonical Labeling

ss Set tuple(Gi) = 〈0〉 for all Q-nodes Gi of G.ss For each t = max depth(G), . . . , 0ss For each S- or P-node G′ at depth t with children G1, . . . , Gkset tuple(G′) = 〈code(G1), . . . , code(Gk)〉. If G′ is a P-node,sort tuple(G′) in non-decreasing order.ss Sort all the nodes at depth t lexicografically according to tuples.ss For each component G′ at depth t, compute code(G′) as fol-lows. Assign the integer 1 to those components representedby the first distinct tuple, assign 2 to the components with thesecond type of tuple, and etc.

Page 90: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismAlgorithm constructing a Canonical Labeling

ss Set tuple(Gi) = 〈0〉 for all Q-nodes Gi of G.ss For each t = max depth(G), . . . , 0ss For each S- or P-node G′ at depth t with children G1, . . . , Gkset tuple(G′) = 〈code(G1), . . . , code(Gk)〉. If G′ is a P-node,sort tuple(G′) in non-decreasing order.ss Sort all the nodes at depth t lexicografically according to tuples.ss For each component G′ at depth t, compute code(G′) as fol-lows. Assign the integer 1 to those components representedby the first distinct tuple, assign 2 to the components with thesecond type of tuple, and etc.

LemmaTwo nodes u and v at the same depth of the decomposition tree of G repre-sent isomorphic subgraphs of G iff code(u) = code(v).

Page 91: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

Page 92: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 111

Page 93: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

Page 94: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

Page 95: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

〈1, 1〉

Page 96: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

〈1, 1〉

1 111

1 12

Page 97: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

〈1, 1〉

1 111

1 12

〈1, 1〉 〈1, 1〉〈1, 1, 2〉

Page 98: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

〈1, 1〉

1 111

1 12

〈1, 1〉 〈1, 1〉〈1, 1, 2〉

11 2

Page 99: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

〈0〉 〈0〉

〈0〉

〈0〉 〈0〉 〈0〉 〈0〉

〈0〉

〈0〉 〈0〉

1 11

〈1, 1〉 〈1, 1〉

1

11

〈1, 1〉

1 111

1 12

〈1, 1〉 〈1, 1〉〈1, 1, 2〉

11 2

〈1, 1, 2〉 1

Page 100: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

Page 101: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

Lemma (Hong, Eades, Lee ’00)If G is an S-node, then G has a vertical automorphismiff each of G1, . . . , Gk has a vertical automorphism.

Page 102: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

ss Assume G has a vertical automorphism α

Lemma (Hong, Eades, Lee ’00)If G is an S-node, then G has a vertical automorphismiff each of G1, . . . , Gk has a vertical automorphism.

Proof:

Page 103: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

ss Assume G has a vertical automorphism αss Then α “fixes” all the components

Lemma (Hong, Eades, Lee ’00)If G is an S-node, then G has a vertical automorphismiff each of G1, . . . , Gk has a vertical automorphism.

Proof:

Page 104: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

ss Assume G has a vertical automorphism αss Then α “fixes” all the componentsss Therefore each of the series components has avertical automorhism

Lemma (Hong, Eades, Lee ’00)If G is an S-node, then G has a vertical automorphismiff each of G1, . . . , Gk has a vertical automorphism.

Proof:

Page 105: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is an S-node

ss Let G be composed out of G1 . . . Gn through series or parallelcomposition, tuple(G) contains the codes of G1, . . . , Gn.ss How can we use tuple(G) do decide whether G has a verticalautomorphism?

ss Assume G has a vertical automorphism αss Then α “fixes” all the componentsss Therefore each of the series components has avertical automorhismss If each of G1, . . . , Gn has a vertical isomorphism,arrange them as in Figure.

Lemma (Hong, Eades, Lee ’00)If G is an S-node, then G has a vertical automorphismiff each of G1, . . . , Gk has a vertical automorphism.

Proof:

Page 106: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

G is P-node, tuple(G) =< 1 . . . 1︸ ︷︷ ︸even

, 2 . . . 2︸ ︷︷ ︸even

, · · · >

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

ss Arrange components as in Figure.

Proof:

Page 107: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸even

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

Proof:

Page 108: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸even

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

ss Any vertical automorphism “fixes” amember of Cj , therefore it has avertical automorphism.

Proof:

Page 109: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸even

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

ss Any vertical automorphism “fixes” amember of Cj , therefore it has avertical automorphism.ss Conversly, arrange as in figure.

Proof:

Page 110: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸odd

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

Proof:

Page 111: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸odd

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

ss Any vertical automorphism has to“fix” two distinct components.

Proof:

Page 112: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical Automorphism

Lemma (Hong, Eades, Lee ’00)If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤ k, code(Gi) = j,j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a vertical automorphism

iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd ⇒ G does not have a vertical auto-morphism.

tuple(G) =< 1 . . . 1︸ ︷︷ ︸odd

, 2 . . . 2︸ ︷︷ ︸odd

, 3 . . . 3︸ ︷︷ ︸even

, · · · >

ss Any vertical automorphism has to“fix” two distinct components.ss In both components we can find apath on which some vertices arealigned on the axis. Contradictsplanarity.

Proof:

Page 113: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismTheorem (Hong, Eades, Lee ’00)

Given a decomposition tree of a series-parallel graph and its canon-ical labeling. Let G be a component which consists from G1, . . . , Gkthrough series or parallel composition.ss If G is an S-node, then G has a vertical automorphism iff each of

G1, . . . , Gk has a vertical automorphism.ss If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤k, code(Gi) = j, j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a verti-

cal automorphism iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd⇒ G does not havea vertical automorphism.

Page 114: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismTheorem (Hong, Eades, Lee ’00)

Given a decomposition tree of a series-parallel graph and its canon-ical labeling. Let G be a component which consists from G1, . . . , Gkthrough series or parallel composition.ss If G is an S-node, then G has a vertical automorphism iff each of

G1, . . . , Gk has a vertical automorphism.ss If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤k, code(Gi) = j, j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a verti-

cal automorphism iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd⇒ G does not havea vertical automorphism.

Page 115: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismTheorem (Hong, Eades, Lee ’00)

Given a decomposition tree of a series-parallel graph and its canon-ical labeling. Let G be a component which consists from G1, . . . , Gkthrough series or parallel composition.ss If G is an S-node, then G has a vertical automorphism iff each of

G1, . . . , Gk has a vertical automorphism.ss If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤k, code(Gi) = j, j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a verti-

cal automorphism iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd⇒ G does not havea vertical automorphism.

Page 116: Algorithms for graph visualization · Straight-line Drawing of SP-Graphs ss Q-Nodes (Induction base): s t ss S-Nodes (series composition) s t ( G2) ( G1) ss P-Nodes (parallel composition)

Algorithmen zur Visualisierung von Graphen

Tamara Mchedlidze

Institut fur Theoretische Informatik

Lehrstuhl Algorithmik I

Vertical AutomorphismTheorem (Hong, Eades, Lee ’00)

Given a decomposition tree of a series-parallel graph and its canon-ical labeling. Let G be a component which consists from G1, . . . , Gkthrough series or parallel composition.ss If G is an S-node, then G has a vertical automorphism iff each of

G1, . . . , Gk has a vertical automorphism.ss If G is a P-node, consider a partition of Cj = Gi : 1 ≤ i ≤k, code(Gi) = j, j = 1, . . . , k into classes of isomorphic graphs.ss If ∀j , |Cj | are even⇒ has a vertical automorphism.ss If there exists a unique j, such that |Cj | is odd⇒ G has a verti-

cal automorphism iff graphs of Cj have a vertical automorphism.ss If there exists |Ci|, |Cj | with i 6= j, both odd⇒ G does not havea vertical automorphism.