Adjacency labeling schemes and induced-universal graphs How to save - - PowerPoint PPT Presentation

adjacency labeling schemes and induced universal graphs
SMART_READER_LITE
LIVE PREVIEW

Adjacency labeling schemes and induced-universal graphs How to save - - PowerPoint PPT Presentation

Adjacency labeling schemes and induced-universal graphs How to save lg n bits Stephen Alstrup Univ. of Copenhagen Haim Kaplan Tel Aviv Univ. Mikkel Thorup Univ. of Copenhagen Uri Zwick Tel Aviv Univ. Adjacency labeling


slide-1
SLIDE 1

Stephen Alstrup – Univ. of Copenhagen Haim Kaplan – Tel Aviv Univ. Mikkel Thorup – Univ. of Copenhagen Uri Zwick – Tel Aviv Univ.

Adjacency labeling schemes and induced-universal graphs

“How to save lg n bits’’

slide-2
SLIDE 2

Adjacency labeling schemes

An L-bit adjacency labeling scheme for a family F of n-vertex graphs is a pair of functions: Label: receives a graph G from F and assigns each of its vertices an L-bit label Edge: receives two L-bit labels and decides whether the corresponding vertices are adjacent Note that Edge only sees labels. It does not know the graph G, nor the identity of the vertices

slide-3
SLIDE 3

Adjacency labeling schemes

Family Lower bound Upper bound Reference

Directed graphs n n + lg n

folklore

Undirected graphs n/2 n/2 + lg n

Moon (1966)

Bipartite graphs n/4 n/4 + 2 lg n

Lozin-Rudolf (2007)

We improve the first three upper bounds to n+O(1), n/2+O(1) and n/4+O(1), respectively

Planar graphs lg n 2 lg n + O(lglg n)

Gavoille-Labourel (2007)

Trees lg n lg n + O(lg*n)

Alstrup-Rauhe (2002)

Trees of depth d lg n lg n + 3 lg d + O(1)

Fraigniaud-Korman (2010)

Max deg d (even) (d/2) lg n (d/2) lg n + O(1)

Butler (2009)

Max deg d (odd) (d/2) lg n (d/2) lg n + O(1)

Alon-Capalbo (????)

slide-4
SLIDE 4

Induced-universal graphs

A graph G is an induced-universal graph for a family F iff every graph from F is an induced-subgraph of G Theorem: [Kannan-Naor-Rudich (1992)] F has an L-bit adjacency labeling scheme iff it has an induced-universal graph on at most 2L vertices Proof: Easy! Each possible L-bit label is a vertex of the universal graph Edge determines the edges in the induced-universal graph

slide-5
SLIDE 5

Theorem: [Moon (1966)] Any adjacency labeling scheme for a family F of graphs on V={1,2,…,n} must have L > (lg |F|)/n Proof: Again easy! The labels assigned to all vertices determine the graph Number of possible label assignments to vertices is 2nL

Trivial lower bound

Hence |F| ≤ 2nL Exercise: Prove a strict inequality

slide-6
SLIDE 6

⇒ L ≥ n

Trivial lower bound

There are 2n(n-1)/2 undirected graphs on n vertices Essentially all lower bounds follow from this theorem Theorem: [Moon (1966)] Any adjacency labeling scheme for a family F of n-vertex graphs must have L > (lg |F|)/n There are 2n(n-1) directed graphs on n vertices ⇒ L ≥ n/2

slide-7
SLIDE 7

Induced-universal graphs

for undirected graphs

Size Reference O(n2n/2) Moon (1966) O(n22n/2) Bollobás-Thomasen (1981) O(2n/2) here

slide-8
SLIDE 8

An n-vertex directed graph corresponds to an n by n Boolean matrix (known as its adjacency matrix)

Trivial upper bound for directed graphs

Let the tag of a vertex be its row in the adjacency matrix Given the tags of two vertices, we can determine whether there is an edge from the first to the second Not really! Tags are not enough, we also need the indices of the vertices. label = ( index , tag ) The trivial upper bound is thus, L = n + lg n − 1 We improve this to L = n + O(1)

slide-9
SLIDE 9

Arrange the n vertices of the undirected graph in a cycle

Upper bound for undirected graphs [Moon (1965)]

The tag of a vertex is its adjacencies to the n/2 vertices following it on the cycle

slide-10
SLIDE 10

5 4 3 2 1 6 tag(0) = 101011 7 8 9 10 11

Upper bound for undirected graphs [Moon (1965)]

slide-11
SLIDE 11

5 4 3 2 1 6 tag(0) = 101011 7 8 9 10 11 tag(1) = 001101 …

Upper bound for undirected graphs [Moon (1965)]

slide-12
SLIDE 12

Given the tags and indices of two vertices, we can determine whether they are adjacent

label = ( index , tag )

Moon’s upper bound is thus, L = n/2 + lg n We improve this to L = n/2 + 4 Arrange the n vertices of the undirected graph in a circle

Upper bound for undirected graphs [Moon (1965)]

Let the tag of a vertex is its adjacencies to the n/2 vertices following it on the cycle

slide-13
SLIDE 13

Trick 1: Run length encoding Representing unbalanced bipartite graphs

k < lg n n

Main idea: Reorder the columns so that rows, and especially

the first ones, are composed of a small number of runs

Note: The n vertices are still given indices, but we

use the freedom to choose these indices

slide-14
SLIDE 14

Sort the columns!

The i-th row composed of at most 2i runs Number of bits needed to represent the i-th row is

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

n k < lg n

slide-15
SLIDE 15

Slightly better: Use Gray code!

The i-th row now composed of at most 2i−1+1 runs Number of bits needed to represent the i-th row is

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0

n k < lg n

Saves a bit…

slide-16
SLIDE 16

First improvement over Moon. Still some slack…

n/2+(lg n)/2+O(1) for undirected graphs

A B

k = lg n − c n − k

Use Trick 1 to represent A×B This assigns indices to vertices of B Use Moon to represent edges within A and within B

slide-17
SLIDE 17

Trick 2: Spreading

Unbalanced representation of bipartite graphs

A B We can split the bits of A×B in any fixed manner, not depending on the graph itself

slide-18
SLIDE 18

A B We can let the vertices of A have all the bits

Trick 2: Spreading

Unbalanced representation of bipartite graphs

slide-19
SLIDE 19

A B

Trick 2: Spreading

Unbalanced representation of bipartite graphs

We can let the vertices of B have all the bits

slide-20
SLIDE 20

A B

We can split the bits as evenly as possible

Trick 2: Spreading

Unbalanced representation of bipartite graphs

In particular, if |A|=|B|=n/2, we get a labeling scheme for balanced bipartite graphs with L = n/4 + lg n

slide-21
SLIDE 21

A B

Trick 2: Spreading

Unbalanced representation of bipartite graphs

slide-22
SLIDE 22

Use Trick 2, with bi = li + k, to represent B×A

n + O(1) for directed graphs

A B

Use Trick 1 to represent A×B This assigns indices to vertices of B

Et voilà !

(Cannot use Trick 1 again to represent B×A)

slide-23
SLIDE 23

n/2 + O(1) for undirected graphs

A0 B0 A1 B1

slide-24
SLIDE 24

Concluding remarks

Small additive gaps remain Improved lower bounds? All our schemes still assign vertices unique indices Not clear whether this is needed Optimal labeling schemes for other families? (E.g., graphs excluding a fixed minor, planar graphs,

  • uterplanar graphs, bounded tree width, trees, etc.)

More work needed for bipartite graphs, when the size of the sides is not fixed in advance Using a few more tricks we get down to n+3 for directed graphs, and ⎣n/2⎦+4 for undirected graphs Our essentially optimal adjacency labeling schemes yield essentially optimal induced-universal graphs