76
Succinct Representation of Separable Graphs Arash Farzan Max-Planck-Institute for Computer Science Guy E. Blelloch Computer Science Department, Carnegie Mellon University

Succinct Representation of Separable Graphs

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Succinct Representation of Separable Graphs

Succinct Representation of Separable Graphs

Arash FarzanMax-Planck-Institute for

Computer Science

Guy E. BlellochComputer Science Department,

Carnegie Mellon University

Page 2: Succinct Representation of Separable Graphs

Overview• Preliminaries:

- succinctness

- separability

- problem formulation

• Motivation

• Related work

• Succinct representation of separable graphs

• Succinct representation of planar maps

• Conclusion and open problems

Page 3: Succinct Representation of Separable Graphs

Succinct Data Structures

Page 4: Succinct Representation of Separable Graphs

• Highly space-efficient (close to the information-theory minimum):

- compact data structures: O(min)

- implicit data structures: min + O(1)

- succinct data structures: min + o(min)

Succinct Data Structures

Page 5: Succinct Representation of Separable Graphs

• Highly space-efficient (close to the information-theory minimum):

- compact data structures: O(min)

- implicit data structures: min + O(1)

- succinct data structures: min + o(min)

(different model)

Succinct Data Structures

Page 6: Succinct Representation of Separable Graphs

• Highly space-efficient (close to the information-theory minimum):

- compact data structures: O(min)

- implicit data structures: min + O(1)

- succinct data structures: min + o(min)

• Queries: constant time

(different model)

Succinct Data Structures

Page 7: Succinct Representation of Separable Graphs

• Highly space-efficient (close to the information-theory minimum):

- compact data structures: O(min)

- implicit data structures: min + O(1)

- succinct data structures: min + o(min)

• Queries: constant time

• log(n)-word RAM model

(different model)

Succinct Data Structures

Page 8: Succinct Representation of Separable Graphs

Separable Graphs Definition

Page 9: Succinct Representation of Separable Graphs

Separable Graphs Definition

Separator S:

Page 10: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

Page 11: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

• A family of graphs G is defined as separable if:

Page 12: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

• A family of graphs G is defined as separable if:

- it is closed under taking subgraphs (monotone), and

Page 13: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

• A family of graphs G is defined as separable if:

- it is closed under taking subgraphs (monotone), and

- satisfies the nc-separator theorem (for some constant c < 1):

Page 14: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

• A family of graphs G is defined as separable if:

- it is closed under taking subgraphs (monotone), and

- satisfies the nc-separator theorem (for some constant c < 1):

‣ there is a constant α < 1 such that each member graph G∈G with n vertices has a separator S of size |S| =O(nc) which divides the vertices into parts A, B each of which contains at most αn vertices (|A|<αn, |B|<αn).

Page 15: Succinct Representation of Separable Graphs

Separable Graphs Definition

A B

A B

S

G

S S

G1

G2

Separator S:

• A family of graphs G is defined as separable if:

- it is closed under taking subgraphs (monotone), and

- satisfies the nc-separator theorem (for some constant c < 1):

‣ there is a constant α < 1 such that each member graph G∈G with n vertices has a separator S of size |S| =O(nc) which divides the vertices into parts A, B each of which contains at most αn vertices (|A|<αn, |B|<αn).

• A graph is separable if it belongs to a separable family of graphs.

Page 16: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

Page 17: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

• Succinctly represent a given an unlabeled and undirected graph answer in constant time:

Page 18: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

• Succinctly represent a given an unlabeled and undirected graph answer in constant time:

- adjacency queries: is (v, w) an edge? v w?

Page 19: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

• Succinctly represent a given an unlabeled and undirected graph answer in constant time:

- adjacency queries: is (v, w) an edge?

- neighborhood queries: report neighbors of vertex v in constant time per neighbor.

v w

v

?

Page 20: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

• Succinctly represent a given an unlabeled and undirected graph answer in constant time:

- adjacency queries: is (v, w) an edge?

- neighborhood queries: report neighbors of vertex v in constant time per neighbor.

- degree queries: report the degree of a vertex.

v w

v

?

Page 21: Succinct Representation of Separable Graphs

Succinct Graphs:Problem Definition

• Succinctly represent a given an unlabeled and undirected graph answer in constant time:

- adjacency queries: is (v, w) an edge?

- neighborhood queries: report neighbors of vertex v in constant time per neighbor.

- degree queries: report the degree of a vertex.

v w

v

?

• The representation has functionality of both an adjacency matrix and an adjacency list representation.

Page 22: Succinct Representation of Separable Graphs

Motivation

Page 23: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

Page 24: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

Page 25: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

Page 26: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

Page 27: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

Page 28: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

Page 29: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

‣ The Web graph

Page 30: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

‣ The Web graph

• Why such succinct representation?

Page 31: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

‣ The Web graph

• Why such succinct representation?

- Many applications involve representing graphs whose size are increasingly growing.

Page 32: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

‣ The Web graph

• Why such succinct representation?

- Many applications involve representing graphs whose size are increasingly growing.

- Space challenge: maintain a compressed representation while supporting dynamic queries efficiently.

Page 33: Succinct Representation of Separable Graphs

Motivation• Why separable graphs?

- They include many interesting family of graphs:

‣ Bounded-genus and especially planar graphs

‣ Some useful non-planar graphs such as the road networks, and utility-distribution networks are separable.

‣ Most 3-dimensional meshes

‣ Most Nearest neighbor graphs in 3-dimensions

‣ The Web graph

• Why such succinct representation?

- Many applications involve representing graphs whose size are increasingly growing.

- Space challenge: maintain a compressed representation while supporting dynamic queries efficiently.

- Adjacency, neighborhood, and degree queries are natural.

Page 34: Succinct Representation of Separable Graphs

Related Work

Page 35: Succinct Representation of Separable Graphs

Related Work• Unstructured graphs with n vertices and m edges are hardly

compressible as the information theoretic min is

- Blandford et al. [SODA’03] achieve this by a constant factor.

- Raman and Rao [SODA’04] improve the constant factor to two.

- F., Munro [ESA’08] improve it to (1+ϵ) and show this is optimal.

�lg�(n2)

m

��

Page 36: Succinct Representation of Separable Graphs

Related Work• Unstructured graphs with n vertices and m edges are hardly

compressible as the information theoretic min is

- Blandford et al. [SODA’03] achieve this by a constant factor.

- Raman and Rao [SODA’04] improve the constant factor to two.

- F., Munro [ESA’08] improve it to (1+ϵ) and show this is optimal.

• Therefore, structured graphs having a particular combinatorial property is of interest:

- limited arboricity- c-decomposable- planar graphs- separable graphs

�lg�(n2)

m

��

Page 37: Succinct Representation of Separable Graphs

Related Work• Unstructured graphs with n vertices and m edges are hardly

compressible as the information theoretic min is

- Blandford et al. [SODA’03] achieve this by a constant factor.

- Raman and Rao [SODA’04] improve the constant factor to two.

- F., Munro [ESA’08] improve it to (1+ϵ) and show this is optimal.

• Therefore, structured graphs having a particular combinatorial property is of interest:

- limited arboricity- c-decomposable- planar graphs- separable graphs

• For planar and separable graphs, the best representations that support the set of queries in constant time require a constant factor more than the optimal space needed.

�lg�(n2)

m

��

Page 38: Succinct Representation of Separable Graphs

The Succinct Representation

Page 39: Succinct Representation of Separable Graphs

The Succinct RepresentationBased on repeated decomposition of the graph G according to the separator S into smaller subgraphs G1 , G2:

Page 40: Succinct Representation of Separable Graphs

The Succinct RepresentationBased on repeated decomposition of the graph G according to the separator S into smaller subgraphs G1 , G2:

A B

A B

S

G

S S

G1

G2

Page 41: Succinct Representation of Separable Graphs

The Succinct Representation

Page 42: Succinct Representation of Separable Graphs

The Succinct Representation

• Where there are nc-separators, we define and repeat the separator-based decomposition till the subgraphs of size at most : mini-graphs.

δ = 21−c

(lg n)δ

The Original Graph

Mini graph Mini graph Mini graph Mini graph

Micro graphs

Page 43: Succinct Representation of Separable Graphs

The Succinct Representation

• Where there are nc-separators, we define and repeat the separator-based decomposition till the subgraphs of size at most : mini-graphs.

• Each mini-graph is decomposed analogously to obtain subgraphs of size at most : micro-graphs.

δ = 21−c

(lg n)δ

The Original Graph

Mini graph Mini graph Mini graph Mini graph

Micro graphs

lgnlg lgn

Page 44: Succinct Representation of Separable Graphs

The Succinct Representation

Page 45: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

Page 46: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

Page 47: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

• The representation of a micro-graph is a reference to within this table (takes the dominant term of space: linear in n).

Page 48: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

• The representation of a micro-graph is a reference to within this table (takes the dominant term of space: linear in n).

• Separator vertices are duplicated by each decomposition.

Page 49: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

• The representation of a micro-graph is a reference to within this table (takes the dominant term of space: linear in n).

• Separator vertices are duplicated by each decomposition.

• Each repetition of a vertex receives three labels: micro-graph label, mini-graph label, and a graph label.

Page 50: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

• The representation of a micro-graph is a reference to within this table (takes the dominant term of space: linear in n).

• Separator vertices are duplicated by each decomposition.

• Each repetition of a vertex receives three labels: micro-graph label, mini-graph label, and a graph label.

• Sophisticated succinct structures are used to translate between these labels.

4321gfedcba

Non-duplicates Duplicates

Graph labels:

1

16

1gb3 32 ca f1 4 e 21 4d

0

2 15

1

14

1

13

010 0 11 011 1 0 0

12111098765431

Translate:

00 00000 0 10 001 1 0 0Boundaries:

161111:

156

123

144

2:

3:

4:

Duplicates:

123 31 4241Real-name:

1a

b

13

4

2

c d

ef

3

g 4

2

Mini-graphs:

Page 51: Succinct Representation of Separable Graphs

The Succinct Representation• The representation of the graph consists of those of

mini-graphs which in turn consist of those of micro-graphs.

• Micro-graphs are small-enough to be catalogued by a look-up table.

• The representation of a micro-graph is a reference to within this table (takes the dominant term of space: linear in n).

• Separator vertices are duplicated by each decomposition.

• Each repetition of a vertex receives three labels: micro-graph label, mini-graph label, and a graph label.

• Sophisticated succinct structures are used to translate between these labels.

4321gfedcba

Non-duplicates Duplicates

Graph labels:

1

16

1gb3 32 ca f1 4 e 21 4d

0

2 15

1

14

1

13

010 0 11 011 1 0 0

12111098765431

Translate:

00 00000 0 10 001 1 0 0Boundaries:

161111:

156

123

144

2:

3:

4:

Duplicates:

123 31 4241Real-name:

1a

b

13

4

2

c d

ef

3

g 4

2

Mini-graphs:

In the graph, there is a sublinear number of duplicates across mini-graphs and in any mini-graph there is a sublinear number of duplicates across micro-graphs

Technical Lemma:

Page 52: Succinct Representation of Separable Graphs

Query Support

Page 53: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

Page 54: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

Page 55: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

Page 56: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

- If a vertex has duplicates across different mini-graphs we explicitly list its out-neighbors (we do the same across micro-graphs)

Page 57: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

- If a vertex has duplicates across different mini-graphs we explicitly list its out-neighbors (we do the same across micro-graphs)

- To determine whether (u,v) is an edge we first check whether u➝v is an edge (and then analogously check if v➝u is an edge).

Page 58: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

- If a vertex has duplicates across different mini-graphs we explicitly list its out-neighbors (we do the same across micro-graphs)

- To determine whether (u,v) is an edge we first check whether u➝v is an edge (and then analogously check if v➝u is an edge).

- If u is repeated across mini/micro-graphs then its out-neighbors are explicitly listed which we check against v.

Page 59: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

- If a vertex has duplicates across different mini-graphs we explicitly list its out-neighbors (we do the same across micro-graphs)

- To determine whether (u,v) is an edge we first check whether u➝v is an edge (and then analogously check if v➝u is an edge).

- If u is repeated across mini/micro-graphs then its out-neighbors are explicitly listed which we check against v.

- Otherwise, u occurs in a single micro-graph. For u➝v to be an edge, v must also occur in the micro-graph. Using the stored structures, we determine the micro-graph label of the proper duplicate of v.

Page 60: Succinct Representation of Separable Graphs

Query Support• Descriptions of support for degree and neighborhood queries, we skip.

• Adjacency queries:

- Separable graphs can be oriented such that vertices have constant out-degree.

- If a vertex has duplicates across different mini-graphs we explicitly list its out-neighbors (we do the same across micro-graphs)

- To determine whether (u,v) is an edge we first check whether u➝v is an edge (and then analogously check if v➝u is an edge).

- If u is repeated across mini/micro-graphs then its out-neighbors are explicitly listed which we check against v.

- Otherwise, u occurs in a single micro-graph. For u➝v to be an edge, v must also occur in the micro-graph. Using the stored structures, we determine the micro-graph label of the proper duplicate of v.

- We use the look-up table to determine if v➝u is an edge.

Page 61: Succinct Representation of Separable Graphs

Result

Page 62: Succinct Representation of Separable Graphs

Result

Any monotone family of separable graphs with entropy H(n), where n is the number of vertices, can be succinctly encoded in H(n)+o(n) bits such that adjacency, neighborhood, and degree queries are supported in constant time.

Theorem:

Page 63: Succinct Representation of Separable Graphs

Representing Planar Maps

Page 64: Succinct Representation of Separable Graphs

Representing Planar Maps

• We can succinctly represent planar graphs.

Page 65: Succinct Representation of Separable Graphs

Representing Planar Maps

• We can succinctly represent planar graphs.

• Planar maps: planar graph + embedding.

Page 66: Succinct Representation of Separable Graphs

Representing Planar Maps

• We can succinctly represent planar graphs.

• Planar maps: planar graph + embedding.

• We can enhance the representation to also reflect the given embedding..

Page 67: Succinct Representation of Separable Graphs

Representing Planar Maps

• We can succinctly represent planar graphs.

• Planar maps: planar graph + embedding.

• We can enhance the representation to also reflect the given embedding..

• We introduce dummy nodes by subdividing edges.

Page 68: Succinct Representation of Separable Graphs

Representing Planar Maps

• We can succinctly represent planar graphs.

• Planar maps: planar graph + embedding.

• We can enhance the representation to also reflect the given embedding..

• We introduce dummy nodes by subdividing edges.

• We cannot afford to store all dummy nodes: only duplicate dummy nodes are stored.

Page 69: Succinct Representation of Separable Graphs

Result

Page 70: Succinct Representation of Separable Graphs

Result

A planar map G with n vertices can be succinctly encoded in Hp(n)+o(n) bits such that adjacency, degree, and neighborhood queries (according to the combinatorial planar embedding of G) are supported in constant time.

Theorem:

Page 71: Succinct Representation of Separable Graphs

Conclusion

Page 72: Succinct Representation of Separable Graphs

Conclusion• We considered separable graphs that satisfy the nc-

separator theorem.

Page 73: Succinct Representation of Separable Graphs

Conclusion• We considered separable graphs that satisfy the nc-

separator theorem.

• We gave a representation with a storage requirement that is only o(n) bits more that the information theory minimum.

Page 74: Succinct Representation of Separable Graphs

Conclusion• We considered separable graphs that satisfy the nc-

separator theorem.

• We gave a representation with a storage requirement that is only o(n) bits more that the information theory minimum.

• The representation supports adjacency, degree, and neighborhood queries in constant time.

Page 75: Succinct Representation of Separable Graphs

Conclusion• We considered separable graphs that satisfy the nc-

separator theorem.

• We gave a representation with a storage requirement that is only o(n) bits more that the information theory minimum.

• The representation supports adjacency, degree, and neighborhood queries in constant time.

• The representation can be enhanced to represent planar maps. The neighborhood queries follow the order dictated by the combinatorial planar embedding.

Page 76: Succinct Representation of Separable Graphs

Conclusion• We considered separable graphs that satisfy the nc-

separator theorem.

• We gave a representation with a storage requirement that is only o(n) bits more that the information theory minimum.

• The representation supports adjacency, degree, and neighborhood queries in constant time.

• The representation can be enhanced to represent planar maps. The neighborhood queries follow the order dictated by the combinatorial planar embedding.

• Future Work: dynamic separable graphs