Download presentation

Presentation is loading. Please wait.

Published byHamza Love Modified over 4 years ago

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

2
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
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
4 Planar Triangulations Planar Triangulations: A planar graph whose faces are all triangles Applications: computer graphics, computational geometry

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

6
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
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
8 Realizer: An Example T0T0 T1T1 T2T2

9
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

10
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
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
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
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
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
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
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
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
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
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
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
21 Thank you!

Similar presentations

Presentation is loading. Please wait....

OK

Epp, section 10.? CS 202 Aaron Bloomfield

Epp, section 10.? CS 202 Aaron Bloomfield

© 2018 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google