A unifier of two terms s and t is a substitution sigma such that ssigma=tsigma and for first-order terms there exists a most general unifier sigma in the sense that any other unifier delta can be composed from sigma with some substitution lambda, i.e. delta=sigmacirclambda. This notion can be generalised to E-unificationwhere E is an equational theory, =_{E} is equality under E andsigmaa is an E-unifier if ssigma =_{E}tsigma. Depending on the equational theory E, the set of most general unifiers is always a singleton (as above), or it may have more than one, either finitely or infinitely many unifiers and for some theories it may not even exist, in which case we call the theory of type nullary. String unification (or Löb\u27s problem, Marko...