1 succinct representation of labeled graphs jérémy barbay, luca castelli aleardi, meng he, j. ian...

21
1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

Upload: hamza-love

Post on 31-Mar-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

1

Succinct Representation of Labeled Graphs

Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

Page 2: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

2

Background: Succinct Data Structures What are succinct data structures

Representing data structures using ideally information-theoretic minimum space

Supporting efficient navigational operations Jacobson 1989

Why succinct data structures Large data sets in modern applications:

textual, genomic, spatial or geometric An implementation: Delpratt et al. 2006

Page 3: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

3

Motivations and Objectives Initial Problem: representing unlabeled

graphs succinctly Connectivity information: degree,

neighbors, adjacency Jacobson 89, Munro and Raman 97, Chuang

et al. 98, Chiang et al. 01, Castelli Aleardi et al. 05 & 06

New Problem: representing labeled graphs succinctly Properties of an object is often modeled as

labels on vertices or edges Label-based queries

Page 4: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

4

Planar Triangulations

Planar Triangulations: A planar graph whose faces are all triangles

Applications: computer graphics, computational geometry

Page 5: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

5

An Example: Terrain and Triangulations

Geometric Modeling and Computer Graphics Research Groups, University of Genova

Page 6: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

6

Planar Triangulations and Realizers Planar Triangulation T

Number of vertices: n; number of edges: m External face: (v0, v1, vn-1)

Realizer (Schnyder 1990) A partition of the set of internal edges into

three set of directed edges T0, T1, T2 the edges incident to any internal vertex v in

ccw order are: one outgoing edge in T0, zero or more incoming edges in T2, one outgoing edges in T1, zero or more incoming edges in T0, one outgoing edge in T2 and zero or more incoming edges in T1

Page 7: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

7

Property T0 is a spanning tree of T / {v1, vn-1} T1 is a spanning tree of T / {v0, vn-1} T2 is a spanning tree of T / {v0, v1}

Canonical spanning tree T0

T0 with edges (v0, v1) and (v0, vn-1) Canonical Ordering

Planar Triangulations and Realizers (Continued)

Page 8: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

8

Realizer: An Example

T0 T1

T2

Page 9: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

9

Three Traversal Orders on a Planar Triangulations

T0 T1

T2

π0 π1

π2

0 1

23

45

6

78

9

10

11

0

43

26

5

109

8

7

1

79

18

2

65

4

3

0

Page 10: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

10

Operations on Unlabeled Planar Triangulations Old operations

adjacency Degree

New operations select_neighbor_ccw(x, y, r): the rth neighbor

of x staring from y in ccw order if x and y are adjacent

rank_neighbor_ccw(x, y, z): the number of neighbors of vertex x between y and z in ccw order if y and z are neighbors of x

Conversions between the numbers of vertices under π0, π1 and π2

Page 11: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

11

Succinct Representation of Unlabeled Planar Triangulations Observation

For any node x, its children in T1 (or T2), listed in ccw (or cw) order, have consecutive numbers in π1 or π2

Approach Represent T0, T1 and T2 using different types of

parentheses in orders π0, π1 and π2, respectively Combine the three sequences into a multiple

parenthesis sequence Results

Space: 2m log26 + o(m) bits Time: O(1)

Page 12: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

12

Succinct Unlabeled Planar Triangulations: An Example

( ( [ [ [ [ ) ( ] ( ] ( ] { [ [ ) { ) ( } ] { ) ( } ] { [ [ [ [ ) …0 1 1 2 3 4 4 3 5 5 6 6 …

T0

π0

T2

π1

0 1

23

45

6

78

9

10

11

T1

adjacency(4,6) =true

degree(6) =8

rank_neighbor_ccw(4, 5, 1)

=3

Page 13: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

13

Vertex Labeled Planar Triangulations Notion

Number of labels: σ Number of vertex-label pairs: t

Operations lab_degree(α,x): number of neighbors of

vertex x associated with label α lab_select_ccw(α,x,y,r): rth vertex labeled α

among neighbors of vertex x after vertex y in ccw order if y is a neighbor of x

lab_rank_ccw(α,x,y,z) : number of neighbors of vertex x labeled α between vertices y and z in ccw order if y and z are neighbors of x

Page 14: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

14

Vertex Labeled Planar Triangulations: An Example

0 1

23

45

6

78

9

10

11

{a,b,c} {c}

{b,c}

{a,b}

{a}

{b}

{a,b}

{a,c}{c}

{b}

{a,b}

{b}

lab_degree(a,5) =3

lab_select_ccw(c,6,4,2) =5

lab_rank_ccw(b,6,10,5) =4

Page 15: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

15

Succinct Index for Vertex Labeled Triangulations

ADT node_label: f(n, σ, t) time

Succinct Index Space: t∙o(lg σ) bits Time: O((lg lg lg σ)2(f(n, σ, t)+lglg σ)

time for lab_degree, lab_select_ccw and lab_rank_ccw

Page 16: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

16

Succinct Representation of vertex labeled planar triangulations

Space: t lg σ+t∙o(lg σ) bits

Time: node_label : O(1) lab_degree, lab_select_ccw and

lab_rank_ccw : O((lg lg lg σ)2lglg σ)

Page 17: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

17

Edge Labeled k-Page Graphs Notion

Number of labels: σ Number of edge-label pairs: t

Operations lab_adjacency(α,x,y): whether there is an

edge labeled α between vertices x and y lab_degree_edge(α,x): the number of edges

of vertex x that are labeled α lab_edges(α,x): the edges of vertex x that

are labeled α

Page 18: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

18

Edge Labeled k-Page Graphs

Results Space: kn + t(lg σ + o(lg σ)) bits

Time: lab_adjacency and lab_degree_edge:

O(k lglg σ(lg lg lg σ)2) lab_edges: O(d lglg σ lg lg lg σ+k) , where d

is the number of such edges

Page 19: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

19

More Results

Succinct representation of unlabeled k-page graphs for large k

Succinct representation of edge Labeled k-page graphs for large k

The results on edge labeled k-page graphs also apply to edge labeled planar graphs (k = 4)

Page 20: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

20

Conclusions

Summary First succinct representations of labeled

graphs Two preliminary results on succinct

representations of unlabeled graphs Subsequent Work and Open Problems

Edge labeled planar triangulations (done) Vertex labeled k-page graphs

Page 21: 1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro

21

Thank you!