In the mathematical field of graph theory, a core is a notion that describes behavior of a graph with respect to graph homomorphisms.

Definition Graph is a core if every homomorphism is an isomorphism, that is it is a bijection of vertices of .

A core of a graph is a graph such that There exists a homomorphism from to , there exists a homomorphism from to , and is minimal with this property.

Two graphs are homomorphically equivalent if and only if they have isomorphic cores.

Examples Any complete graph is a core. A cycle of odd length is a core. A graph is a core if and only if the core of is equal to . Every two cycles of even length, and more generally every two bipartite graphs are hom-equivalent. The core of each of these graphs is the two-vertex complete graph K2. By the Beckman–Quarles theorem, the infinite unit distance graph on all points of the Euclidean plane or of any higher-dimensional Euclidean space is a core.

Properties Every finite graph has a core, which is determined uniquely, up to isomorphism. The core of a graph G is always an induced subgraph of G. If and then the graphs and are necessarily homomorphically equivalent.

Computational complexity It is NP-complete to test whether a graph has a homomorphism to a proper subgraph, and co-NP-complete to test whether a graph is its own core (i.e. whether no such homomorphism exists) .

References Godsil, Chris, and Royle, Gordon. Algebraic Graph Theory. Graduate Texts in Mathematics, Vol. 207. Springer-Verlag, New York, 2001. Chapter 6 section 2. . .