Comparing Universal Covers in Polynomial Time

  • Authors:
  • Jiří Fiala;Daniël Paulusma

  • Affiliations:
  • Charles University, Faculty of Mathematics and Physics, DIMATIA and Institute for Theoretical Computer Science (ITI), Malostranské nám. 2/25, 118 00, Prague, Czech Republic;Durham University, Science Laboratories, Department of Computer Science, South Road, DH1 3EY, Durham, England

  • Venue:
  • Theory of Computing Systems - Special Issue: Symposium on Computer Science; Guest Editors: Sergei Artemov, Volker Diekert and Alexander Razborov
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

The universal cover T G of a connected graph G is the unique (possibly infinite) tree covering G, i.e., that allows a locally bijective homomorphism from T G to G. It is well-known that if a graph G covers a graph H, then their universal covers are isomorphic, and that the latter can be tested in polynomial time by checking if G and H share the same degree refinement matrix. We extend this result to locally injective and locally surjective homomorphisms by following a very different approach. Using linear programming techniques we design two polynomial time algorithms that check if there exists a locally injective or a locally surjective homomorphism, respectively, from a universal cover T G to a universal cover T H (both given by their degree matrices). This way we obtain two heuristics for testing the corresponding locally constrained graph homomorphisms. Our algorithm can also be used for testing (subgraph) isomorphism between universal covers, and for checking if there exists a locally injective or locally surjective homomorphism (role assignment) from a given tree to an arbitrary graph H.