If a set of equations E ∪ Ax is such that E is confluent, terminating, and coherent modulo Ax, narrowing with E modulo Ax provides a complete E ∪ Ax-unification algorithm. However, except for the hopelessly inefficient case of full narrowing, nothing seems to be known about
effective narrowing strategies in the general modulo case beyond the quite depressing observation that basic narrowing is
incomplete modulo AC. In this work we propose an effective strategy based on the idea of the E ∪ Ax-variants of a term that we call folding variant narrowing. This strategy is complete, both for computing E ∪ Ax-unifiers and for computing a minimal complete set of variants for any input term. And it is optimally variant terminating in the sense of terminating for an input term t iff t has a finite, complete set of variants. The applications of folding variant narrowing go beyond providing a complete E ∪ Ax-unification algorithm: computing the E ∪ Ax-variants of a term may be just as important as computing E ∪ Ax-unifiers in recent applications of folding variant narrowing such as termination methods modulo axioms, and checking confluence
and coherence of rules modulo axioms.
S. Escobar has been partially supported by the EU (FEDER) and the Spanish MEC/MICINN under grant TIN 2007-68093-C02-02. J.
Meseguer and R. Sasse have been partially supported by NSF Grants CNS 07-16638, CNS 08-31064, and CNS 09-04749.