ArticleslgStudy

science

Graph homomorphism

Graph homomorphism is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Graph homomorphism rather than just read about it. In short: In the mathematical field of graph theory, a graph homomorphism is a mapping between two graphs that respects their structure. More concretely, it is a function between the vertex sets of two graphs that maps adjacent vertices to adjacent vertices.

Graph homomorphism — main illustration
Graph homomorphism — illustration

Key takeaways

  • Graph homomorphism belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Graph homomorphism to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Graph homomorphism from memory before moving on to harder problems.

Reference excerpt

In the mathematical field of graph theory, a graph homomorphism is a mapping between two graphs that respects their structure. More concretely, it is a function between the vertex sets of two graphs that maps adjacent vertices to adjacent vertices. Homomorphisms generalize various notions of graph colorings and allow the expression of an important class of constraint satisfaction problems, such as certain scheduling or frequency assignment problems. The fact that homomorphisms can be composed leads to rich algebraic structures: a preorder on graphs, a distributive lattice, and a category (one for undirected graphs and one for directed graphs). The computational complexity of finding a homomorphism between given graphs is prohibitive in general, but a lot is known about special cases that are solvable in polynomial time. Boundaries between tractable and intractable cases have been an active area of research.

Definitions In this article, unless stated otherwise, graphs are finite, undirected graphs with loops allowed, but multiple edges (parallel edges) disallowed. A graph homomorphism f from a graph G = ( V ( G ) , E ( G ) ) {\displaystyle G=(V(G),E(G))} to a graph H = ( V ( H ) , E ( H ) ) {\displaystyle H=(V(H),E(H))} , written f : G → H, is a function from V ( G ) {\displaystyle V(G)} to V ( H ) {\displaystyle V(H)} that preserves edges. Formally,

( u , v ) ∈ E ( G ) {\displaystyle (u,v)\in E(G)} implies ( f ( u ) , f ( v ) ) ∈ E ( H ) {\displaystyle (f(u),f(v))\in E(H)} , for all pairs of vertices u , v {\displaystyle u,v} in V ( G ) {\displaystyle V(G)} . If there exists any homomorphism from G to H, then G is said to be homomorphic to H or H-colorable. This is often denoted as just

G → H . The above definition is extended to directed graphs. Then, for a homomorphism f : G → H, (f(u),f(v)) is an arc (directed edge) of H whenever (u,v) is an arc of G. There is an injective homomorphism from G to H (i.e., one that maps distinct vertices in G to distinct vertices in H) if and only if G is isomorphic to a subgraph of H. If a homomorphism f : G → H is a bijection, and its inverse function f −1 is also a graph homomorphism, then f is a graph isomorphism. Covering maps are a special kind of homomorphisms that mirror the definition and many properties of covering maps in topology. They are defined as surjective homomorphisms (i.e., something maps to each vertex) that are also locally bijective, that is, a bijection on the neighbourhood of each vertex. An example is the bipartite double cover, formed from a graph by splitting each vertex v into v0 and v1 and replacing each edge u,v with edges u0,v1 and v0,u1. The function mapping v0 and v1 in the cover to v in the original graph is a homomorphism and a covering map. Graph homeomorphism is a different notion, not related directly to homomorphisms. Roughly speaking, it requires injectivity, but allows mapping edges to paths (not just to edges). Graph minors are a still more relaxed notion.

Cores and retracts

Two graphs G and H are homomorphically equivalent if G → H and H → G. The maps are not necessarily surjective nor injective. For instance, the complete bipartite graphs K2,2 and K3,3 are homomorphically equivalent: each map can be defined as taking the left (resp. right) half of the domain graph and mapping to just one vertex in the left (resp. right) half of the image graph. A retraction is a homomorphism r from a graph G to a subgraph H of G such that r(v) = v for each vertex v of H. In this case the subgraph H is called a retract of G. A core is a graph with no homomorphism to any proper subgraph. Equivalently, a core can be defined as a graph that does not retract to any proper subgraph. Every graph G is homomorphically equivalent to a unique core (up to isomorphism), called the core of G. Notably, this is not true in general for infinite graphs. However, the same definitions apply to directed graphs and a directed graph is also equivalent to a unique core. Every graph and every directed graph contains its core as a retract and as an induced subgraph. For example, all complete graphs Kn and all odd cycles (cycle graphs of odd length) are cores. Every 3-colorable graph G that contains a triangle (that is, has the complete graph K3 as a subgraph) is homomorphically equivalent to K3. This is because, on one hand, a 3-coloring of G is the same as a homomorphism G → K3, as explained below. On the other hand, every subgraph of G trivially admits a homomorphism into G, implying K3 → G. This also means that K3 is the core of any such graph G. Similarly, every bipartite graph that has at least one edge is equivalent to K2.

Connection to colorings A k-coloring, for some integer k, is an assignment of one of k colors to each vertex of a graph G such that the endpoints of each edge get different colors. The k-colorings of G correspond exactly to homomorphisms from G to the complete graph Kk. Indeed, the vertices of Kk correspond to the k colors, and two colors are adjacent as vertices of Kk if and only if they are different. Hence a function defines a homomorphism to Kk if and only if it maps adjacent vertices of G to different colors (i.e., it is a k-coloring). In particular, G is k-colorable if and only if it is Kk-colorable. If there are two homomorphisms G → H and H → Kk, then their composition G → Kk is also a homomorphism. In other words, if a graph H can be colored with k colors, and there is a homomorphism from G to H, then G can also be k-colored. Therefore, G → H implies χ(G) ≤ χ(H), where χ denotes the chromatic number of a graph (the least k for which it is k-colorable).

… excerpt ends here. Continue reading the full article.

Illustrations

Graph homomorphism: A homomorphism from the flower snark J5 into the cycle graph C5.It is also a retraction onto the subgraph on the central five vertices. Thus J5 is in fact homo­mor­phi­cally equivalent to the core C5.
A homomorphism from the flower snark J5 into the cycle graph C5.It is also a retraction onto the subgraph on the central five vertices. Thus J5 is in fact homo­mor­phi­cally equivalent to the core C5.
Graph homomorphism: K7, the complete graph with 7 vertices, is a core.
K7, the complete graph with 7 vertices, is a core.
Graph homomorphism: Graph H of non-consecutive weekdays, isomorphic to the complement graph of C7 and to the circular clique K7/2
Graph H of non-consecutive weekdays, isomorphic to the complement graph of C7 and to the circular clique K7/2
Graph homomorphism: The Grötzsch graph, incomparable to K3
The Grötzsch graph, incomparable to K3

Worked examples

Example 1 — a first encounter with Graph homomorphism

Start with the simplest possible case. Write down what Graph homomorphism claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Graph homomorphism before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Graph homomorphism ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Graph homomorphism

In research
Graph homomorphism appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Graph homomorphism in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Graph homomorphism is common in secondary-school and first-year university syllabi. It links to neighbouring topics Graph theory, Morphisms, NP-complete problems, so understanding it makes those chapters shorter.
In everyday life
Look for Graph homomorphism outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Graph homomorphism” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Graph homomorphism in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Graph homomorphism means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Graph homomorphism out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Graph homomorphism in simple terms?

In the mathematical field of graph theory, a graph homomorphism is a mapping between two graphs that respects their structure. More concretely, it is a function between the vertex sets of two graphs that maps adjacent vertices to adjacent vertices.

Why does Graph homomorphism matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Graph homomorphism?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Graph homomorphism.

Tags

  • Graph theory
  • Morphisms
  • NP-complete problems

Keep exploring