Intuitively, a reduction order R relates two terms s and t if t is properly "simpler" than s in some sense.
For example, simplification of terms may be a part of a computer algebra program, and may be using the rule set { x+0 → x , 0+x → x , x*0 → 0, 0*x → 0, x*1 → x , 1*x → x }. In order to prove impossibility of endless loops when simplifying a term using these rules, the reduction order defined by "sRt if term t is properly shorter than term s" can be used; applying any rule from the set will always properly shorten the term.
In contrast, to establish termination of "distributing-out" using the rule x*(y+z) → x*y+x*z, a more elaborate reduction order will be needed, since this rule may blow up the term size due to duplication of x. The theory of rewrite orders aims at helping to provide an appropriate order in such cases.
Formally, a binary relation (→) on the set of terms is called a rewrite relation if it is closed under contextual embedding and under instantiation; formally: if l→r implies u[lσ]p→u[rσ]p for all terms l, r, u, each path p of u, and each substitution σ. If (→) is also irreflexive and transitive, then it is called a rewrite ordering,1 or rewrite preorder. If the latter (→) is moreover well-founded, it is called a reduction ordering,2 or a reduction preorder. Given a binary relation R, its rewrite closure is the smallest rewrite relation containing R.3 A transitive and reflexive rewrite relation that contains the subterm ordering is called a simplification ordering.4
Nachum Dershowitz; Jean-Pierre Jouannaud (1990). "Rewrite Systems". In Jan van Leeuwen (ed.). Formal Models and Semantics. Handbook of Theoretical Computer Science. Vol. B. Elsevier. pp. 243–320. doi:10.1016/B978-0-444-88074-1.50011-1. ISBN 9780444880741.
Dershowitz, Jouannaud (1990), sect.2.1, p.251 ↩
Dershowitz, Jouannaud (1990), sect.5.1, p.270 ↩
Dershowitz, Jouannaud (1990), sect.2.2, p.252 ↩
Dershowitz, Jouannaud (1990), sect.5.2, p.274 ↩
Parenthesized entries indicate inferred properties which are not part of the definition. For example, an irreflexive relation cannot be reflexive (on a nonempty domain set). ↩
except all xi are equal for all i beyond some n, for a reflexive relation ↩
Since x↩
Dershowitz, Jouannaud (1990), sect.5.1, p.272 ↩
i.e. if li > ri for all i, where (>) is a reduction ordering; the system need not have finitely many rules ↩
Since e.g. a>b implied g(a)>g(b), meaning the second rewrite rule was not decreasing. ↩
Dershowitz, Jouannaud (1990), sect.5.1, p.271 ↩
i.e. a ground-total reduction ordering ↩
Else, t|p > t for some term t and position p, implying an infinite descending chain t > t[t]p > t[t[t]p]p > ...[6][7] ↩
i.e. a simplification ordering ↩
The proof of this property is based on Higman's lemma, or, more generally, Kruskal's tree theorem. /wiki/Higman%27s_lemma ↩
N. Dershowitz (1982). "Orderings for Term-Rewriting Systems" (PDF). Theoret. Comput. Sci. 17 (3): 279–301. doi:10.1016/0304-3975(82)90026-3. S2CID 6070052. Here: p.287; the notions are named slightly different. http://www.cs.tau.ac.il/~nachum/papers/Orderings4TRS.pdf ↩