Implicit Representation of Graphs Paper by Sampath Kannan, Moni Naor, Steven Rudich
2 Introduction Def.: A vertex induced subgraph or simply an induced subgraph G` of G is a vertex set together with the edge set Def.: K-labeling scheme F family of finite graphs A graph G in F of n vertices Each vertex label no more than k logn bits Deciding adjacency in polynomial time of label length
3 Introduction Def.: Vertex Induced Universal Graph S a finite set of graphs G is vertex induced universal for S if every graph in S is a vertex induced subgraph of G Def.: F a family of graphs has universal graphs of size g(n) For every n there is a universal graph of size less than or equal g(n) for all graphs in F with n or fewer vertices
4 Labelable Families Proposition: A family of graphs that contains more than n-vertex graphs cannot be labeled O(nlogn) bits to represent n-vertex graph At most can be represented
5 Labelable Families (cont.) Finite trees( and finite forests) 2-labeling scheme Arbitrarily prelabel the vertices from 1 to n For each vertex label concatenate It’s own prelabel and its parent’s prelabel (2logn bits) Adjacency: check the first half of one label with the second half of the other
6 Labelable Families (cont.) Transitive Closure of Trees: Ancestorhood relation 2-labeling scheme Let T a tree and T` the transitive closure of T Traverse T in post-order For each vertex assign the interval between its smallest numbered descendant and its largest one Ancestorhood: u ancestor of v iff u’s interval contains v’s interval T T`
7 Labelable Families (cont.) Sparse Graphs or Graphs with Bounded Arboricity: the minimum number of forests into which its edges can be partitioned the minimum number of spanning trees needed to cover all the edges of the graph the subgraphs of any graph cannot have arboricity larger than the graph itself, or equivalently the arboricity of a graph must be at least the maximum arboricity of any of its subgraph H induced subgraph of G
8 Labelable Families (cont.) Graphs with Bounded Arboricity K+1 labeling scheme for graphs of arboricity k Prelabel the vertices arbitrarily Decompose the graph into K forests Concatenate to each vertex label the label of its parent in each of the k forests Adjacency: check if one vertex is the parent of the other in any of the forests
9 Labelable Families (cont.) Graphs of bounded degree d have arboricity bounded by Planar graphs have arboricity of 3 4-labeling scheme
10 Labelable Families Intersection Graph: A graph where vertices represent sets Edge exist if two sets intersect Interval graph Path graph: Each vertex represent a path in a tree Two vertices adjacent iff the paths representing them intersect
11 Labelable Families (cont.) Path Graphs: Label the transitive closure T` of the tree T containing all paths Label of each vertex in the path graph consists of : Label of the beginning vertex in T` Label of the apex vertex in T` Label of the end vertex in T` Adjacency: test if the apex of one path vertex is sandwiched between the apex and an end of the other path
12 c-Decomposable Graphs A graph G is c-decomposable if for all subgraphs H with no more than c vertices there exist c vertices s.t. their removal causes H to be disconnected with no component of size 2|H|/3 Construct T a tree decomposition of G Chose a c-separator as the root of T Each component will be a subtree of root Each vertex v of G occurs in a vertex t(v) in T Each vertex of T is assigned at most c vertices The depth of T is at most
13 c-Decomposable Graphs (cont.) The label of each vertex v in G consists of: the path in T from the root to t(v) The rank of v in t(v) For each vertex s of the tree along the path from root to t(v), a c-bit vector giving adj. info. between v and those of s Adjacency: To test adj. between u and v in G Check if t(u) is ancestor of t(v) or vice versa Determine the depth of i of the ancestor say u Check the i’th c-vector of v at the position of u’s rank
14 Labeling Schemes and Universal Graphs Thm: If a family F has k-labeling scheme, then it has universal graphs of size n k constructible in polynomial time. Proof: Form Graph U with vertices labeled 1 to n k place an edge between two vertices if their adjacency test produces true E.g: universal graph for tree n 2 vertices of U Label vertices of U as (i,j) where 1<= i,j <= n Add edge between two vertices u(i,j) and v=(i`,j`) if i=j` or j= i`
15 References S. Kannan, M. Naor, S. Rudich, Implicit representation of graphs, Proceedings of the twentieth annual ACM symposium on Theory of Computing, Pages: (1988). Wikipedia: for figures