width-optimal visibility representations of plane graphs · width-optimal visibility...

Post on 28-Jun-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Width-Optimal Visibility Representations ofPlane Graphs

Speaker: Chun-Cheng Lin

Coauthors: Jia-Hao Fan Hsueh-I Lu Hsu-Chun Yen

National Taiwan University, Taipei, Taiwan

(Presented at the 18th International Symposium onAlgorithms and Computation (ISAAC 2007))

1/19

Outline

1 Introduction

2 Preliminaries

3 Our Width-Optimal Drawing Algorithm

4 Analysis

5 Conclusion

2/19

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation

Node segment

Edge segment

Measuring the drawing area in a grid

59

1

3 2

7

6

4

8

5

9

1

3

2

7

6

4

8

3/19

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation

Node segment

Edge segment

Measuring the drawing area in a grid

59

1

3 2

7

6

4

8

5

9

1

3

2

7

6

4

8

3/19

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation

Node segment

Edge segment

Measuring the drawing area in a grid

59

1

3 2

7

6

4

8

5

9

1

3

2

7

6

4

8

3/19

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation

Node segment

Edge segment

Measuring the drawing area in a grid

59

1

3 2

7

6

4

8

5

9

1

3

2

7

6

4

8

3/19

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)first known algorithm for visibility drawings;no bound for the compactness of the output.

worst-case upper boundrequired height required width

n−1 (Rosenstiehl & Tarjan, 1986; 2n−5 (Rosenstiehl & Tarjan,1986;

Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

b 15n16 c (Zhang & He, 2003) Nummenmaa, 1992)

b 5n6 c (Zhang & He, 2005) b 22n−42

15 c (Lin, Lu, and Sun, 2004)

b 4n−15 c (Zhang & He, 2006) b 13n−24

9 c (Zhang & He, 2005)2n3 +2d

√n/2e (He & Zhang, 2006) 4n

3 +2d√

ne (He & Zhang, 2006)

lower boundThe size of the required area is at least b 2n

3 c× (b 4n3 c−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...no wider than 4n

3 +O(1).

4/19

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)first known algorithm for visibility drawings;no bound for the compactness of the output.

worst-case upper boundrequired height required width

n−1 (Rosenstiehl & Tarjan, 1986; 2n−5 (Rosenstiehl & Tarjan,1986;

Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

b 15n16 c (Zhang & He, 2003) Nummenmaa, 1992)

b 5n6 c (Zhang & He, 2005) b 22n−42

15 c (Lin, Lu, and Sun, 2004)

b 4n−15 c (Zhang & He, 2006) b 13n−24

9 c (Zhang & He, 2005)2n3 +2d

√n/2e (He & Zhang, 2006) 4n

3 +2d√

ne (He & Zhang, 2006)

lower boundThe size of the required area is at least b 2n

3 c× (b 4n3 c−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...no wider than 4n

3 +O(1).

4/19

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)first known algorithm for visibility drawings;no bound for the compactness of the output.

worst-case upper boundrequired height required width

n−1 (Rosenstiehl & Tarjan, 1986; 2n−5 (Rosenstiehl & Tarjan,1986;

Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

b 15n16 c (Zhang & He, 2003) Nummenmaa, 1992)

b 5n6 c (Zhang & He, 2005) b 22n−42

15 c (Lin, Lu, and Sun, 2004)

b 4n−15 c (Zhang & He, 2006) b 13n−24

9 c (Zhang & He, 2005)2n3 +2d

√n/2e (He & Zhang, 2006) 4n

3 +2d√

ne (He & Zhang, 2006)

lower boundThe size of the required area is at least b 2n

3 c× (b 4n3 c−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...no wider than 4n

3 +O(1).

4/19

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)first known algorithm for visibility drawings;no bound for the compactness of the output.

worst-case upper boundrequired height required width

n−1 (Rosenstiehl & Tarjan, 1986; 2n−5 (Rosenstiehl & Tarjan,1986;

Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

b 15n16 c (Zhang & He, 2003) Nummenmaa, 1992)

b 5n6 c (Zhang & He, 2005) b 22n−42

15 c (Lin, Lu, and Sun, 2004)

b 4n−15 c (Zhang & He, 2006) b 13n−24

9 c (Zhang & He, 2005)2n3 +2d

√n/2e (He & Zhang, 2006) 4n

3 +2d√

ne (He & Zhang, 2006)

lower boundThe size of the required area is at least b 2n

3 c× (b 4n3 c−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...no wider than 4n

3 +O(1).

4/19

Introduction

Our Main Result

Theorem

Given an n-node plane triangulation G, a visibility drawing of G with itswidth bounded by b4n

3 c−2 can be obtained in time O(n).

Our bound is the optimalbecause our bound differs the previously known lower bound4n3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004]about whether any visibility drawing no wider than 4n

3 +O(1) canbe obtained in polynomial time.

Rather than conventionally using canonical ordering,st-numbering, or Schnyder’s realizer as the initial input, ouralgorithm applies a new kind of ordering, called constructiveordering , of G to constructing the visibility drawing.

5/19

Introduction

Our Main Result

Theorem

Given an n-node plane triangulation G, a visibility drawing of G with itswidth bounded by b4n

3 c−2 can be obtained in time O(n).

Our bound is the optimalbecause our bound differs the previously known lower bound4n3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004]about whether any visibility drawing no wider than 4n

3 +O(1) canbe obtained in polynomial time.

Rather than conventionally using canonical ordering,st-numbering, or Schnyder’s realizer as the initial input, ouralgorithm applies a new kind of ordering, called constructiveordering , of G to constructing the visibility drawing.

5/19

Introduction

Our Main Result

Theorem

Given an n-node plane triangulation G, a visibility drawing of G with itswidth bounded by b4n

3 c−2 can be obtained in time O(n).

Our bound is the optimalbecause our bound differs the previously known lower bound4n3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004]about whether any visibility drawing no wider than 4n

3 +O(1) canbe obtained in polynomial time.

Rather than conventionally using canonical ordering,st-numbering, or Schnyder’s realizer as the initial input, ouralgorithm applies a new kind of ordering, called constructiveordering , of G to constructing the visibility drawing.

5/19

Introduction

Our Main Result

Theorem

Given an n-node plane triangulation G, a visibility drawing of G with itswidth bounded by b4n

3 c−2 can be obtained in time O(n).

Our bound is the optimalbecause our bound differs the previously known lower bound4n3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004]about whether any visibility drawing no wider than 4n

3 +O(1) canbe obtained in polynomial time.

Rather than conventionally using canonical ordering,st-numbering, or Schnyder’s realizer as the initial input, ouralgorithm applies a new kind of ordering, called constructiveordering , of G to constructing the visibility drawing.

5/19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1

1

vr

vp = u

vq

vk+1Fk,1

vr

vp = u

vq

in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2

2

vr

vp = u

vs

vqFk,2 Fk,1

vr

vp = u

vs

vq

vk+1

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3

3

vr

vp = u

vt vqFk,2

Fk,1Fk,3

vs

vk+1

vr

vp = u

vt vq

vs

When deg(vk+1) = 5,

α3(vk+1,u) = coalescing two nodes vk+1 and u

≡ detaching two faces

β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

≡ attaching two new faces≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1

1

vr

vp = u

vq

vk+1Fk,1

vr

vp = u

vq

in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2

2

vr

vp = u

vs

vqFk,2 Fk,1

vr

vp = u

vs

vq

vk+1

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3

3

vr

vp = u

vt vqFk,2

Fk,1Fk,3

vs

vk+1

vr

vp = u

vt vq

vs

When deg(vk+1) = 5,

α3(vk+1,u) = coalescing two nodes vk+1 and u

≡ detaching two faces

β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

≡ attaching two new faces≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1

1

vr

vp = u

vq

vk+1Fk,1

vr

vp = u

vq

in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2

2

vr

vp = u

vs

vqFk,2 Fk,1

vr

vp = u

vs

vq

vk+1

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3

3

vr

vp = u

vt vqFk,2

Fk,1Fk,3

vs

vk+1

vr

vp = u

vt vq

vs

When deg(vk+1) = 5,

α3(vk+1,u) = coalescing two nodes vk+1 and u

≡ detaching two faces

β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

≡ attaching two new faces≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1

1

vr

vp = u

vq

vk+1Fk,1

vr

vp = u

vq

in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2

2

vr

vp = u

vs

vqFk,2 Fk,1

vr

vp = u

vs

vq

vk+1

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3

3

vr

vp = u

vt vqFk,2

Fk,1Fk,3

vs

vk+1

vr

vp = u

vt vq

vs

When deg(vk+1) = 5,

α3(vk+1,u) = coalescing two nodes vk+1 and u≡ detaching two faces

β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

≡ attaching two new faces

≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1

1

vr

vp = u

vq

vk+1Fk,1

vr

vp = u

vq

in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2

2

vr

vp = u

vs

vqFk,2 Fk,1

vr

vp = u

vs

vq

vk+1

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3

3

vr

vp = u

vt vqFk,2

Fk,1Fk,3

vs

vk+1

vr

vp = u

vt vq

vs

When deg(vk+1) = 5,

α3(vk+1,u) = coalescing two nodes vk+1 and u≡ detaching two faces

β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

≡ attaching two new faces≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

G51

3 25

4 53

3 G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

G41

3 2

4

2

2 G51

3 25

4 53

3 G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

1

3 2

G3

1

1 G41

3 2

4

2

2 G51

3 25

4 53

3 G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition

Gk involves the k nodes v1,v2, ...,vk. We call π = (v1,v2, ...,vn) a constructive orderingof a plane triangulation G if the following conditions hold for each k, 3≤ k≤ n:

1 Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;2 if 3≤ k≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node

vk+1 is three, four, or five in Gk+1.

1

3 2

G3

1

1 G41

3 2

4

2

2 G51

3 25

4 53

3 G6 = G1

3 25

4

6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

Lemma

Every n-node plane triangulation G has a constructive ordering, which can be found inO(n) time.

7/19

Our Width-Optimal Drawing Algorithm

L-Shape and the β1 Operation

L-shape

Regular L-shape Degenerated L-shape

right L-shape

left L-shape

The β1 operation (the degree-three splitting operation)

1

Fk,1

vp

vq

vr

wb = 1wb + 2

vk+1

vp

vq

vr

(ii) For L-shapes with wb = 1

wb + 1

vk+1

vp

vq

vr

1

Fk,1

vp

vq

vr

wb

(i) For L-sahpes with wb >1

Fk,1

vp

vq

vr

wb

or

8/19

Our Width-Optimal Drawing Algorithm

L-Shape and the β1 Operation

L-shape

Regular L-shape Degenerated L-shape

right L-shape

left L-shape

The β1 operation (the degree-three splitting operation)

1

Fk,1

vp

vq

vr

wb = 1wb + 2

vk+1

vp

vq

vr

(ii) For L-shapes with wb = 1

wb + 1

vk+1

vp

vq

vr

1

Fk,1

vp

vq

vr

wb

(i) For L-sahpes with wb >1

Fk,1

vp

vq

vr

wb

or

8/19

Our Width-Optimal Drawing Algorithm

The β2 Operation acting at two narrowest L-shapes

The β2 operation (the degree-four splitting operation)

(1-iii) lr: This case does not exist.

(1-iv) ll: This case is a reflectional symmetry of case (1-i).

(1-i) rr (1-ii) rl (2-i) rr (2-ii) rl

(y(vs) and y(vq) may notnecessarily be the same.)

(2-iv) ll: This case is a reflectional symmetry of case (2-i).

(a) The two input L-shapes do not share the same bottom node segment.

(b) The two input L-shapes share the same bottom node segment.

vk+1

vs

vp

vr

vq vq

vp

vs

vr

vk+1

vp

vq

vr

vs

vk+1

f1’f2’

f1f2

vp

vq

vr

vs

vk+1

f1’f2’

f1f2

vk+1

vq

vr

vs

vp

f1’f2’

f1f2

vq

vp

vs

vrFk,1

Fk,2

vr

vs

vp

vq

Fk,1 Fk,2

vp

vq

vr

vs

Fk,2 Fk,1

vp

vq

vr

vs

Fk,2 Fk,1

vp

vq

vr

vsFk,2 Fk,1

2 2 2 2 2

(2-iii) lr

9/19

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (1/3)

The degree-five splitting operation (1/3)

(2v-ii) rl: This case has the above two possible subcases.

(2v-i) rr: This case has the above two possible subcases.

(2v-iii) lr: This case is a reflectional symmetry of the case (2v-ii).

(2v-iv) ll: This case is a reflectional symmetry of the case (2v-i).

vr

vs

vt

vq

Fk,2Fk,3

Fk,1

vp

vr

vs

vt

vqFk,2

Fk,3

Fk,1

vp

vk+1

vr

vs

vt

vq

vp

vr

vs

vt

vq

vp

vk+1

vr

vs

vt

vqFk,2

Fk,3

Fk,1

vp

vr

vs

vt

vq

vp

vk+1

vr

vs

vt

vq

vpFk,2

Fk,3

Fk,1

vr

vs

vt

vq

vp

vk+1

(2v-i-a) (2v-i-b) (2v-ii-a) (2v-ii-b)

3 3 3 3

(3-vi) lrl(3-ii) rrl (3-v) lrr(3-i) rrr

(3-iii) rlr: This case is a reflectional symmetry of the case (3-vi).

(3-iv) rll: This case is a reflectional symmetry of the case (3-ii).

(3-vii) llr: This case is a reflectional symmetry of the case (3-v).

(3-viii) lll: This case is a reflectional symmetry of the case (3-i).

vk+1

vq

vr

vt

vs

vp

vk+1

vqvs

vt

vp

vr

vp

vqvs

vt

vk+1

vr

vp

vq

vrvt

vk+1

vs

vp

vqvs

vt

Fk,2Fk,1

Fk,3 vr

vp

vq

vr

vt

Fk,2Fk,1

Fk,3

vs

vp

vq

vrvt

Fk,2Fk,1

Fk,3

vs

vp

vqvs

vtFk,2

Fk,1Fk,3

vr

3 3 3 3

(a) Only two input L-shapes are visible from the down side.

(b) All of the three input L-shapes share the same bottom node segment.

10/19

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (2/3)

The degree-five splitting operation (2/3)

(c) Two of the three input L-shapes share the same bottom node segment.

(2-viii) lll: This case is a reflectional symmetry of the case (2-i).

(2-iv) rll: This case is a reflectional symmetry of the case (2-ii).

(2-v) lrr

(2-vii) llr: This case is a reflectional symmetry of the case (2-v).

3

(2-iii) rlr: This case is a reflectional symmetry of the case (2-vi).

vt

vp

vqvs

Fk,2 Fk,1Fk,3vr

vt

vp

vq

vs

Fk,1Fk,3 Fk,2

vr

vp

vq

vs

vtFk,2

Fk,1

Fk,3vr

vk+1

vq

vs

vt

vp

vr

vr

vs

vt

vq

Fk,2Fk,3Fk,1

vp

vk+1

vt

vq

vs

vr

vr

vs

vtvq

Fk,2

Fk,3Fk,1

vp

vr

vs

vtvq

vp

vk+1

vt

vk+1

vqvs

vp

vr

vr

vs

vtvq

Fk,2Fk,3

Fk,1

vp

vr

vs

vp

vqFk,2

Fk,3

Fk,1

vt

vr

vs

vk+1

vq

vt

vp

vr

vs

vtvq

vp

vk+1

(2-i-a) (2-i-b) (2-ii-a) (2-ii-b)

vp

vq

vr

vt

Fk,2

Fk,1

Fk,3

vs

vp

vq

vr

vt

vp

vs

(2-ii-c) (2-vi-a) (2-vi-b)vr

vs

vt

vq

vk+1

vp

3 3 3 3 3 3 3

11/19

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (3/3)

The degree-five splitting operation (3/3)

(d) None of the three input L-shapes shares the same bottom node segment.

(1-vi) lrl: This case does not exist.

(1-viii) lll: This case is a reflectional symmetry of case (1-i).

(1-iv) rll: This case is a reflectional symmetry of case (1-ii).

(1-vii) llr: This case does not exist.

(1-i) rrr

(1-iii) rlr: This case does not exist.

(1-v) lrr: This case does not exist.

vr

vs

vt

vq

vp

vk+1

vr

vs

vt

vq

Fk,2

Fk,3

Fk,1

vp

vp

vq

vr

vt

Fk,2

Fk,1Fk,3

vs

vr

vs

vt

vq

vk+1

vp

vk+1

vq

vr

vt

vs

vp

(1-ii-a) rrl (1-ii-b) rrl

vr

vs

vt

vq

Fk,2Fk,3

Fk,1

vp

3 3 3

Observation

If every inner face in Gk is drawn as an L-shape, then we consider all the possiblecases of the β1, β2, and β3 operations.Furthermore, the bottom node segment of any L-shape rather than input L-shapes isnot modified in executing the operation.

12/19

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (3/3)

The degree-five splitting operation (3/3)

(d) None of the three input L-shapes shares the same bottom node segment.

(1-vi) lrl: This case does not exist.

(1-viii) lll: This case is a reflectional symmetry of case (1-i).

(1-iv) rll: This case is a reflectional symmetry of case (1-ii).

(1-vii) llr: This case does not exist.

(1-i) rrr

(1-iii) rlr: This case does not exist.

(1-v) lrr: This case does not exist.

vr

vs

vt

vq

vp

vk+1

vr

vs

vt

vq

Fk,2

Fk,3

Fk,1

vp

vp

vq

vr

vt

Fk,2

Fk,1Fk,3

vs

vr

vs

vt

vq

vk+1

vp

vk+1

vq

vr

vt

vs

vp

(1-ii-a) rrl (1-ii-b) rrl

vr

vs

vt

vq

Fk,2Fk,3

Fk,1

vp

3 3 3

Observation

If every inner face in Gk is drawn as an L-shape, then we consider all the possiblecases of the β1, β2, and β3 operations.Furthermore, the bottom node segment of any L-shape rather than input L-shapes isnot modified in executing the operation.

12/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.

3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 Find a constructive ordering of G.

1

3 2G3

1

1

1

3 2

4

G4

2

2

1

3 25

4 5

G5

3

3

1

3 25

4

6

G6 = G

2 Initially, generate all the (six) possible visibility drawings of G3.3 For each insertion, use our splitting operations to maintain 6 drawings of Gk;

appropriately adjust the drawings of the other faces.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

4 Compress the width of every of the six drawings of Gn as much as possible.Output the drawing with the narrowest width.

13/19

Analysis

Six Drawings =⇒ Three Pairs

Observation

The six drawings of every face F can be classified into three pairs,where each node of F serves as a bottom node segment in each pair.Furthermore, the input L-shapes of every splitting operation can be classified into threepairs.

1st pair

1

2D1

3 2

1

3D2

2nd pair

2

13

D4

2

31

D3

3rd pair

3

12

D5

3

21

D6

1

32

4

2

13

4

3

21

4

1

32

4

2

13

4

3

21

4

1st pair

3rd pair

2nd pair1

1

32

45

2

13

54

3

21

45

1

32

45

2

13

54

3

21

45

1st pair

2nd pair

3rd pair

2

3

21

45

6

2

13

54

6

1

32

45

6

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

3

Note that the two drawings in a pair are almost the same except for the positionsof the topmost two node segments, so it suffices to concern one of the twodrawings.

14/19

Analysis

Six Drawings =⇒ Three Pairs

Observation

The six drawings of every face F can be classified into three pairs,where each node of F serves as a bottom node segment in each pair.Furthermore, the input L-shapes of every splitting operation can be classified into threepairs.

1

32

45

2

13

54

3

21

45

3

21

45

6

2

13

54

6

1

32

45

6

1

32

45

2

13

54

3

21

45

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

1st pair

2nd pair

3rd pair

3

1

3 2

45

1

3 2

4

6

5

Gk+1Gk

3

Note that the two drawings in a pair are almost the same except for the positionsof the topmost two node segments, so it suffices to concern one of the twodrawings.

14/19

Analysis

Six Drawings =⇒ Three Pairs

Observation

The six drawings of every face F can be classified into three pairs,where each node of F serves as a bottom node segment in each pair.Furthermore, the input L-shapes of every splitting operation can be classified into threepairs.

1

32

45

2

13

54

3

21

45

3

21

45

6

2

13

54

6

1

32

45

6

1

32

45

2

13

54

3

21

45

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

1st pair

2nd pair

3rd pair

3

1

3 2

45

1

3 2

4

6

5

Gk+1Gk

3

Note that the two drawings in a pair are almost the same except for the positionsof the topmost two node segments, so it suffices to concern one of the twodrawings.

14/19

Analysis

Six Drawings =⇒ Three Pairs

Observation

The six drawings of every face F can be classified into three pairs,where each node of F serves as a bottom node segment in each pair.Furthermore, the input L-shapes of every splitting operation can be classified into threepairs.

1

32

45

2

13

54

3

21

45

3

21

45

6

2

13

54

6

1

32

45

6

1

32

45

2

13

54

3

21

45

3

21

45

6

1

32

45

6

2

13

54

6

1st pair

2nd pair

3rd pair

1st pair

2nd pair

3rd pair

3

1

3 2

45

1

3 2

4

6

5

Gk+1Gk

3

Note that the two drawings in a pair are almost the same except for the positionsof the topmost two node segments, so it suffices to concern one of the twodrawings.

14/19

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3

a1

ai+2 a2

ai+1

...

...

Fk,1Fk,i

in Gk

in Gk+1

a2

a1

ai+2 a1

ai+1 ...ai+3

f1’f2’

i

(a)

a1

......

x

y ai+3...

a1

...

x

y ai+3

i i...

i

a1

a2

a3

Fk,1Fk,i

ai+2

...ai+1

...

a1

a2

a3

ai+2

ai+3

...ai+1

...

f1’f2’

All configurations of i adjacentL-shapes with the same bottomnode segment exist. Here illust-rates only the configuration rr...r.

No two L-shapes share the same bottom node segment;otherwise, it violates Observation 2. Thus, there existonly four possible configurations rr...r, rr...rl, ll...l, rll...l.Here illustrate configurations rr...r, rr...rl.

a1

.........

a1

...

or

(width + 2) (width + 1) (width + 1)

=⇒ The sum of widths of six drawings is increased by 2× (+2+1+1) = +8 units.

Observation

There exists a U-shaped constructive ordering for the drawingsproduced by our algorithm.

5

9

1

3

2

7

6

4

8

15/19

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3

a1

ai+2 a2

ai+1

...

...

Fk,1Fk,i

in Gk

in Gk+1

a2

a1

ai+2 a1

ai+1 ...ai+3

f1’f2’

i

(a)

a1

......

x

y ai+3...

a1

...

x

y ai+3

i i...

i

a1

a2

a3

Fk,1Fk,i

ai+2

...ai+1

...

a1

a2

a3

ai+2

ai+3

...ai+1

...

f1’f2’

All configurations of i adjacentL-shapes with the same bottomnode segment exist. Here illust-rates only the configuration rr...r.

No two L-shapes share the same bottom node segment;otherwise, it violates Observation 2. Thus, there existonly four possible configurations rr...r, rr...rl, ll...l, rll...l.Here illustrate configurations rr...r, rr...rl.

a1

.........

a1

...

or

(width + 2) (width + 1) (width + 1)

=⇒ The sum of widths of six drawings is increased by 2× (+2+1+1) = +8 units.

Observation

There exists a U-shaped constructive ordering for the drawingsproduced by our algorithm.

5

9

1

3

2

7

6

4

8

15/19

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3

a1

ai+2 a2

ai+1

...

...

Fk,1Fk,i

in Gk

in Gk+1

a2

a1

ai+2 a1

ai+1 ...ai+3

f1’f2’

i

(a)

a1

......

x

y ai+3...

a1

...

x

y ai+3

i i...

i

a1

a2

a3

Fk,1Fk,i

ai+2

...ai+1

...

a1

a2

a3

ai+2

ai+3

...ai+1

...

f1’f2’

All configurations of i adjacentL-shapes with the same bottomnode segment exist. Here illust-rates only the configuration rr...r.

No two L-shapes share the same bottom node segment;otherwise, it violates Observation 2. Thus, there existonly four possible configurations rr...r, rr...rl, ll...l, rll...l.Here illustrate configurations rr...r, rr...rl.

a1

.........

a1

...

or

(width + 2) (width + 1) (width + 1)

=⇒ The sum of widths of six drawings is increased by 2× (+2+1+1) = +8 units.

Observation

There exists a U-shaped constructive ordering for the drawingsproduced by our algorithm.

5

9

1

3

2

7

6

4

8

15/19

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3

a1

ai+2 a2

ai+1

...

...

Fk,1Fk,i

in Gk

in Gk+1

a2

a1

ai+2 a1

ai+1 ...ai+3

f1’f2’

i

(a)

a1

......

x

y ai+3...

a1

...

x

y ai+3

i i...

i

a1

a2

a3

Fk,1Fk,i

ai+2

...ai+1

...

a1

a2

a3

ai+2

ai+3

...ai+1

...

f1’f2’

All configurations of i adjacentL-shapes with the same bottomnode segment exist. Here illust-rates only the configuration rr...r.

No two L-shapes share the same bottom node segment;otherwise, it violates Observation 2. Thus, there existonly four possible configurations rr...r, rr...rl, ll...l, rll...l.Here illustrate configurations rr...r, rr...rl.

a1

.........

a1

...

or

(width + 2) (width + 1) (width + 1)

=⇒ The sum of widths of six drawings is increased by 2× (+2+1+1) = +8 units.

Observation

There exists a U-shaped constructive ordering for the drawingsproduced by our algorithm.

5

9

1

3

2

7

6

4

8

15/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12

+8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8

+8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8

+8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8

= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Example

There exists a certainU-shaped construct. order.of the final six drawingssuch thatwe rebuild visibility drawingsaccording to the ordering inwhich the final drawing withthe same visibility drawingembedding of our outputhas the minimum width.

Hence, the drawing with theminimum width must be nowider than the average of8n−12, i.e.,b 8n−12

6 c= b 4n3 c−2.

So our output must be nowider than b 4n

3 c−2.

1

23

2

31

3

12

deg-3U-detach

1

32

5

2

13

5

3

21

5

deg-3U-detach

1

32

45

2

13

54

3

21

45

deg-5U-detach

3

21

45

6

2

13

54

6

1

32

45

6

our output

1

32

45

61

32

45

1

32

5

1

23

2

13

54

3

21

45

3

21

45

6

2

13

54

6

2

13

5

3

21

5

2

31

3

12

+1

+2

+1

+2

+1

+1

+2

+1

+1

min. among all

12 +8 +8 +8= 12+(n−3)×8 = 8n−12

16/19

Analysis

Main Problem: Consecutive Degree-3 U-Shaped Insertions

1

Fk,1

vp

vq

vr

wb = 1wb + 2

vk+1

vp

vq

vr

(ii) For L-shapes with wb = 1

wb + 1

vk+1

vp

vq

vr

1

Fk,1

vp

vq

vr

wb

(i) For L-sahpes with wb >1

Fk,1

vp

vq

vr

wb

or

(width + 1) (width + 2)

For example, if we insert a degree-3 node into the following purple drawings ...

v4

v3

v1

v2

v5

v5

v1

v2

v3

v4

v4

v2

v3

v1

v5

(width +1)

(width +2)

(width +2)

1

The sum of the widths of the 6 drawings is increased by at least 2× (+1+2+2) = +10

units.

17/19

Analysis

Main Problem: Consecutive Degree-3 U-Shaped Insertions

1

Fk,1

vp

vq

vr

wb = 1wb + 2

vk+1

vp

vq

vr

(ii) For L-shapes with wb = 1

wb + 1

vk+1

vp

vq

vr

1

Fk,1

vp

vq

vr

wb

(i) For L-sahpes with wb >1

Fk,1

vp

vq

vr

wb

or

(width + 1) (width + 2)

For example, if we insert a degree-3 node into the following purple drawings ...

v4

v3

v1

v2

v5

v5

v1

v2

v3

v4

v4

v2

v3

v1

v5

(width +1)

(width +2)

(width +2)

1

The sum of the widths of the 6 drawings is increased by at least 2× (+1+2+2) = +10

units. 17/19

Analysis

Borrowing and Returning Widths

in the 2nd pair

in the 1st pair

v4

v3

v1

v2

v5

in the 3rd pair

v5

v1

v2

v3

v4

borrowa unit

from v2v3v4.

v4

v2

v3

v1

v5

v4

v2

v3

v1

v5

A unit is

retrunedto v2v3v4.

v5

v1

v2

v3

v4

v6

v4

v3

v1

v2

v5

v6

v4

v3

v1

v2

v5

v6

v4

v2

v3

v1

v5v6

1

(width + 1)

(width + 1)

(width + 2)

18/19

Analysis

Borrowing and Returning Widths

in the 2nd pair

in the 1st pair

v4

v3

v1

v2

v5

in the 3rd pair

v5

v1

v2

v3

v4

borrowa unit

from v2v3v4.

v4

v2

v3

v1

v5

v4

v2

v3

v1

v5

A unit is

retrunedto v2v3v4.

v5

v1

v2

v3

v4

v6

v4

v3

v1

v2

v5

v6

v4

v3

v1

v2

v5

v6

v4

v2

v3

v1

v5v6

1

(width + 1)

(width + 1)

(width + 2)

18/19

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a planetriangulation no wider than b4n

3 c−2 has been proposed in thiswork.

Our result improves upon the previously known upper bound4n3 +2d

√ne, providing a positive answer to a conjecture about

whether an upper bound 4n3 +O(1) on the required width can be

achieved for an arbitrary plane graph.

Our result achieves optimality in the upper bound of widthbecause the bound differs from the previously known lowerbound b4n

3 c−3 only by one unit.

A line of future work is to try to use our technique to find theheight-optimal visibility drawing.

19/19

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a planetriangulation no wider than b4n

3 c−2 has been proposed in thiswork.

Our result improves upon the previously known upper bound4n3 +2d

√ne, providing a positive answer to a conjecture about

whether an upper bound 4n3 +O(1) on the required width can be

achieved for an arbitrary plane graph.

Our result achieves optimality in the upper bound of widthbecause the bound differs from the previously known lowerbound b4n

3 c−3 only by one unit.

A line of future work is to try to use our technique to find theheight-optimal visibility drawing.

19/19

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a planetriangulation no wider than b4n

3 c−2 has been proposed in thiswork.

Our result improves upon the previously known upper bound4n3 +2d

√ne, providing a positive answer to a conjecture about

whether an upper bound 4n3 +O(1) on the required width can be

achieved for an arbitrary plane graph.

Our result achieves optimality in the upper bound of widthbecause the bound differs from the previously known lowerbound b4n

3 c−3 only by one unit.

A line of future work is to try to use our technique to find theheight-optimal visibility drawing.

19/19

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a planetriangulation no wider than b4n

3 c−2 has been proposed in thiswork.

Our result improves upon the previously known upper bound4n3 +2d

√ne, providing a positive answer to a conjecture about

whether an upper bound 4n3 +O(1) on the required width can be

achieved for an arbitrary plane graph.

Our result achieves optimality in the upper bound of widthbecause the bound differs from the previously known lowerbound b4n

3 c−3 only by one unit.

A line of future work is to try to use our technique to find theheight-optimal visibility drawing.

19/19

top related