Skip to main content
Article thumbnail
Location of Repository

Comparing universal covers in polynomial time.

By J. Fiala and Daniel Paulusma


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

Topics: Graph homomorphism, Universal cover, Computational complexity, Degree matrix.
Publisher: Springer
Year: 2010
DOI identifier: 10.1007/s00224-009-9200-z
OAI identifier:

Suggested articles


  1. (1980). Local and global properties in networks of processors.
  2. (1991). On the complexity and combinatorics of covering finite complexes.

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.