Skip to main content


homomorphism A structure-preserving mapping between algebras. A homomorphism allows the modeling, simulation, or representation of the structure of one algebra within another, possibly in a limited form. Let A and B be algebras and h a function from A to B. Suppose that A contains an n-ary operation fA, while B contains a corresponding operation fB. If h is a homomorphism it must satisfy h(fA(a1,…,ak)) = fB(h(a1),…,h(ak))

for all elements a1,…,ak of A and every “corresponding” pair of operations of A and B.

The idea that fA and fB are “corresponding” operations is made precise by saying that A and B are algebras over the same signature Σ, while f is an operation symbol in Σ with which A and B associate the operations fA and fB respectively. A homomorphism from A to B is any function h from A to B that satisfies the condition given above for each f in Σ. As applications of this idea, the semantic functions involved in denotational semantics can be viewed as homomorphisms from algebras of syntax to algebras of semantic objects. Usually, to define a semantic function by induction on terms is to define a homomorphism on a term algebra. In several important cases, compilers can be designed as homomorphisms between two algebras of programs.

Special cases of this general definition occur when A and B belong to one of the familiar classes of algebraic structures. For example, let A and B be monoids, with binary operationsA and ◦B and identity elements eA and eB. Then, rewriting the general condition above, a homomorphism from A to B satisfies h(xA y) = h(x) ◦B h(y) h(eA) = eB

A further specialization from formal language theory arises with monoids of words, where the binary operation is concatenation and the nullary operation is the empty word. Let S and T be alphabets, and let h be a function from S to T*, i.e. a function that gives a T-word for each symbol in S. Then h can be extended to S-words, by concatenating its values on individual symbols: h(s1,…,sn) = h(s1),…,h(sn)

This extension of h gives a monoid homomorphism from S* to T*. Such an h is said to be Λ-free if it gives a nonempty T-word for each symbol in S.

h can be further extended to a mapping on languages, giving, for any subset L of S*, its homomorphic image h(L): h(L) = {h(w) | w ∈ L}

Similarly the inverse homomorphic image of L T* is h–1(L) = {w | h(w) ∈ L}

These language-mappings are also homomorphisms, between the monoids of languages over S and over T, the binary operation being concatenation of languages.

Cite this article
Pick a style below, and copy the text for your bibliography.

  • MLA
  • Chicago
  • APA

"homomorphism." A Dictionary of Computing. . 16 Jul. 2019 <>.

"homomorphism." A Dictionary of Computing. . (July 16, 2019).

"homomorphism." A Dictionary of Computing. . Retrieved July 16, 2019 from

Learn more about citation styles

Citation styles gives you the ability to cite reference entries and articles according to common styles from the Modern Language Association (MLA), The Chicago Manual of Style, and the American Psychological Association (APA).

Within the “Cite this article” tool, pick a style to see how all available information looks when formatted according to that style. Then, copy and paste the text into your bibliography or works cited list.

Because each style has its own formatting nuances that evolve over time and not all information is available for every reference entry or article, cannot guarantee each citation it generates. Therefore, it’s best to use citations as a starting point before checking the style against your school or publication’s requirements and the most-recent information available at these sites:

Modern Language Association

The Chicago Manual of Style

American Psychological Association

  • Most online reference entries and articles do not have page numbers. Therefore, that information is unavailable for most content. However, the date of retrieval is often important. Refer to each style’s convention regarding the best way to format page numbers and retrieval dates.
  • In addition to the MLA, Chicago, and APA styles, your school, university, publication, or institution may have its own requirements for citations. Therefore, be sure to refer to those guidelines when editing your bibliography or works cited list.