Presentation is loading. Please wait.

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

Presentation on theme: "1 Succinct Representation of Labeled Graphs Jérémy Barbay, Luca Castelli Aleardi, Meng He, J. Ian Munro."— Presentation transcript:

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

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

4 Planar Triangulations  Planar Triangulations: A planar graph whose faces are all triangles  Applications: computer graphics, computational geometry

5 An Example: Terrain and Triangulations Geometric Modeling and Computer Graphics Research Groups, University of Genova

6 Planar Triangulations and Realizers  Planar Triangulation T  Number of vertices: n; number of edges: m  External face: (v 0, v 1, v n-1 )  Realizer (Schnyder 1990)  A partition of the set of internal edges into three set of directed edges T 0, T 1, T 2  the edges incident to any internal vertex v in ccw order are: one outgoing edge in T 0, zero or more incoming edges in T 2, one outgoing edges in T 1, zero or more incoming edges in T 0, one outgoing edge in T 2 and zero or more incoming edges in T 1

7  Property  T 0 is a spanning tree of T / {v 1, v n-1 }  T 1 is a spanning tree of T / {v 0, v n-1 }  T 2 is a spanning tree of T / {v 0, v 1 }  Canonical spanning tree T 0  T 0 with edges (v 0, v 1 ) and (v 0, v n-1 )  Canonical Ordering Planar Triangulations and Realizers (Continued)

8 Realizer: An Example T0T0 T1T1 T2T2

9 Three Traversal Orders on a Planar Triangulations T0T0 T1T1 T2T2 π0π0 π1π1 π2π2 01 2 3 45 6 7 8 9 10 11 0 4 3 26 5 10 9 8 7 1 7 9 18 2 6 5 4 3 0

Operations on Unlabeled Planar Triangulations  Old operations  adjacency  Degree  New operations  select_neighbor_ccw(x, y, r): the r th 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

11 Succinct Representation of Unlabeled Planar Triangulations  Observation  For any node x, its children in T 1 (or T 2 ), listed in ccw (or cw) order, have consecutive numbers in π 1 or π 2  Approach  Represent T 0, T 1 and T 2 using different types of parentheses in orders π 0, π 1 and π 2, respectively  Combine the three sequences into a multiple parenthesis sequence  Results  Space: 2m log 2 6 + o(m) bits  Time: O(1)

12 Succinct Unlabeled Planar Triangulations: An Example ( ( [ [ [ [ ) ( ] ( ] ( ] { [ [ ) { ) ( } ] { ) ( } ] { [ [ [ [ ) … 0 1 1 2 3 4 4 3 5 5 6 6 … T0T0 π0π0 T2T2 π1π1 01 2 3 45 6 7 8 9 10 11 T1T1 adjacency(4,6)=true degree(6)=8 rank_neighbor_ccw(4, 5, 1) =3

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): r th 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

14 Vertex Labeled Planar Triangulations: An Example 01 2 3 45 6 7 8 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

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

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 σ) 2 lglg σ)

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 α

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

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)

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

21 Thank you!

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

Similar presentations

Ads by Google