Although theoretically it is very powerful, the semantic path ordering (SPO) is not so udeful in practice, since its monotonicity has to be proved by hand for each concrete term rewrite system (TRS). In this paper we present a monotonic variation of SPO, called MSPO. It characterizes termination, i.e. a TRS is terminating if and ...»»»»
Although theoretically it is very powerful, the semantic path ordering (SPO) is not so udeful in practice, since its monotonicity has to be proved by hand for each concrete term rewrite system (TRS). In this paper we present a monotonic variation of SPO, called MSPO. It characterizes termination, i.e. a TRS is terminating if and only if ist rules are included in some MSPO. Hence MSPO is a complete termination method. On the practical side, it can be easily automated using as ingredients standard interpretations and general-purpose ordering like RPO. This is shown to be a sufficiently powerful way to handeke several non-trivial examples and to obtain methods like dummy elimination or dependency pairs (without the dependency graph refinement) as particular cases.
Finally, we obtain some positive modularity results for termination based on MSPO.^^^^